當前正在製作HTML5 Canvas Spaceship遊戲。但我有一個巨大的問題: 我爲我的飛船創建了一個類,我想用箭頭鍵移動它。但由於某種原因,它不會移動。在畫布上移動對象
Chrome Inspector不會顯示任何錯誤,但飛船仍然不會移動。
我不完全確定,但是在類中的對象中可能存在問題嗎?
你可以找到我的Git項目數據:https://github.com/nemoxdelight/First_Game/
此外,對不起我的英語不好,我只是一個德國誰需要幫助;)
而且這裏是我認爲部分這個問題可能是:(在main.js)
function o_move_paddle(p_event) {
if(p_event.keyCode == KEY_RIGHT) {
held1.rechtsTaste = true;
p_event.preventDefault();
}
if(p_event.keyCode == KEY_LEFT) {
held1.linksTaste = true;
p_event.preventDefault();
}
if(p_event.keyCode == KEY_UP) {
held1.hochTaste = true;
p_event.preventDefault();
}
if(p_event.keyCode == KEY_DOWN) {
held1.runterTaste = true;
p_event.preventDefault();
}
}
而且在我的Heroclass創建held.js,它應該移動對象:
Held.prototype.tasteCheck = function() {
if(this.hochTaste) {
this.held_y -= this.speed;
}
if(this.rechtsTaste) {
this.held_x += this.speed;
}
if(this.linksTaste) {
this.held_x -= this.speed;
}
if(this.runterTaste) {
this.held_y += this.speed;
}
};
謝謝@Pirokiko真的幫了我很多。但是我改變代碼後問題仍然存在。我可以用'held1.held_x + = 20;'通過控制檯移動我的飛船;'有什麼我失蹤?我也更新了我的Git。 – user1478242 2012-07-15 14:01:22
你的控制檯還應該說一些關於無法找到Held類的內容 在constant.js裏面,你現在使用'Held()'它還不知道,所以在你的index.html中包含constant.js之前的held.js 同樣在'move_held'的main.js中,你移動了保持而不是將rechtsTaste設置爲'true' – Pirokiko 2012-07-15 14:20:53
非常感謝,它終於爲我效勞了!我現在有一個值來檢查循環是否已經運行,如果是,它不會再繪製它。難道我更喜歡解決方案:) – user1478242 2012-07-15 14:27:05