我正在寫一個小小的JavaScript遊戲,並試圖使它與遊戲手柄一起工作。遊戲手柄運行(至少在Linux上)。我寫了這個代碼:遊戲手柄javascript創建事件記錄器
var gamePad;
var checkForGamepad;
function startPolling() {
checkForGamepad= setInterval(function() {
gamePad= navigator.webkitGetGamepads && navigator.webkitGetGamepads()[0]
},20)}
function stopPolling(){
clearInterval(checkForGamepad);
checkForGamepad=null;
}
這是開始檢查是否有連接gamecontroller,我也可以阻止它(因爲當我在例如菜單是)。但現在我想寫一個事件記錄器。我已經爲鍵盤寫了一個,但這很容易,因爲你有一個'鍵入'事件。有沒有人有一個想法,如何寫一個遊戲手柄的事件記錄器?
我的事件記錄我的鍵盤看起來是這樣的:
function gameNavigationKey(evt){
switch (evt.keyCode){
case 32: // spacebar was pressed
//change the gravity
// do some other stuff
break;
.
.
.
}
而在當我開始我gameloop()的代碼,我也呼籲window.addEventListener( 'KEYUP',gameNavigationKey,真)
所以我想用我的遊戲手柄爲我的事件記錄器基本上相同的樣式。 我知道我可以使用gamePad.buttons讀取在遊戲板上按下的鍵的值。[0]當按下時沒有按下1時返回0。所以我認爲我需要記住我的鑰匙以前的狀態,但仍然不知道如何開始。 有人可以幫我創建這個事件記錄器嗎? 在此先感謝
你得到'keyup'和'keydown'事件的手柄按鍵?如果是這樣,只需保留所有遊戲手柄按鍵的列表以及是否按下。然後有一個單獨的循環輪詢列表來查看要採取的操作。 – Halcyon
我試過了,但沒有成功:s – Bosiwow