2013-11-02 4 views
0

나는 복수의 키를 동시에 추적해야하는 멀티 플레이어 게임을 만들고 있습니다. Processing에서 추적하고자하는 키에 대한 부울을 생성 한 다음 keyPressed 및 keyReleased 함수를 사용하여 부울을 변경했습니다.Processing.js : p.keyReleased가 function/simulating key가 아닙니다 .Release

문제는 처리 파일을 웹 페이지 (processingjs 사용)로 이식하려고 할 때 keyPressed 만 인식하고 keyReleased를 사용하려고해도 제목에 오류가 발생한다는 것입니다.

내 질문은 keyReleased 함수를 processingjs에서 작동하게하는 방법이 있습니까? 아니면 keyReleased를 시뮬레이트 할 수있는 해결 방법이 있습니까? 나는 완벽하게 잘 작동하는 처리의 자바 스크립트 포트에서의 keyReleased 함수가 보인다

답변

0

을 사용하고 7 개 키에 대한

void keyPressed() { 
    if (keyCode == UP) { 
    up = true; 
    } 
if (keyCode == DOWN) { 
    down = true; 
    } 
} 

void keyReleased() { 
    if (keyCode == UP) { 
    up = false; 
    } 
if (keyCode == DOWN) { 
    down = false; 
    } 
} 

등 : 여기

처리에 나를 위해 일하고 코드입니다 나를. HTML 또는 자바 스크립트에서 실수로 실수를 했습니까?

Processing이 정상적으로 작동하는 방법에 대한 지식은 없지만 HTML/Javascript의이 코드는 나를 위해 UP 및 DOWN 키를 눌렀다가 놓음을 감지하고 그 아래의 레이블을 업데이트합니다 (캔버스를 클릭해야 함). 먼저 초점을 맞 춥니 다.)

<html> 
<script src="http://cloud.github.com/downloads/processing-js/processing-js/processing-1.4.1.js"></script> 
<body> 
<script type="application/processing"> 
var labelUp = document.getElementById("up"); 
var labelDown = document.getElementById("down"); 

void setup() 
{ 
    size(200, 200); 
} 

void keyPressed() 
{ 
    if (keyCode==UP) 
     labelUp.innerHTML="UP: true"; 
    else if (keyCode==DOWN) 
     labelDown.innerHTML="DOWN: true"; 
} 

void keyReleased() 
{ 
    if (keyCode==UP) 
     labelUp.innerHTML="UP: false"; 
    else if (keyCode==DOWN) 
     labelDown.innerHTML="DOWN: false"; 
} 
</script> 

<canvas width="200" height="200"></canvas><br /> 

<span id="up">UP: false</span><br /> 
<span id="down">DOWN: false</span> 

</body> 
</html>