-3

Я делаю игру, где при нажатии пробела игрок перемещается слева направо. и снова на clciking пробел игрок будет двигаться справа налево. Я сделал кодирование с помощью keyevents, но не работал.Javascript keyevents не работает?

game.prototype.start_handling = function() 
{ 
var that = this; 

$(document).on('keydown.game' , function(e) 
{ 
    that.key_down(e); 
    return false; 
}); 

$(document).on('keyup.game' ,function(e) 
{ 
    that.key_up(e); 
    return false; 
}); 
} 
game.prototype.key_down = function(e) 
{ 
var code = e.keyCode; 
var f1 = true; 
var f2 = false; 
if(code == 32 && f1 == true) 
{ 
    this.player.jump(); 
    this.player.do_move_right = true; 
    f1 = false; 
    f2 = true; 
} 
if(code == 32 && f2 == true) 
{ 
    this.player.jump(); 
    this.player.do_move_left = true; 
    this.player.do_move_right = true; 
    f1 = true; 
    f2 = false; 
} 
} 
game.prototype.key_up = function(e) 
{ 
var code = e.keyCode; 
var f1 = true; 
var f2 = false; 
if(code == 32 && f1 == true) 
{ 
    this.player.jump(); 
    this.player.do_move_right = true; 
    f1 = false; 
    f2 = true; 
} 
if(code == 32 && f2 == true) 
{ 
    this.player.jump(); 
    this.player.do_move_left = true; 
    this.player.do_move_right = true; 
    f1 = true; 
    f2 = false; 
} 
} 

Ребята, я изменил его и применил ... но все еще его не работает. я хочу, чтобы игрок переместился слева направо, щелкнув пробел, а затем остановившись, а затем снова щелкнув по экрану, игрок переместится справа налево.

+0

Где твоя EventListener? – fzzle

+0

Я добавил слушателя событий. – Agoswami

ответ

0

Вы проверяете на таком же состоянии дважды ..

var code = e.keyCode; 
if (code == 32) { 
    if(!this.player.do_move_right) { 
     this.player.jump(); 
     this.player.do_move_right = true; 
    } else { 
     this.player.jump(); 
     this.player.do_move_right = false; 
    } 
} 
+0

Я реализовал это в своем коде, но его все еще не работает. – Agoswami

-1

Вы добавить слушателя как этот < тела OnKeyUp = "MyFunction()">

function myfunction(){ 
    var code = window.event.keyCode; 
    // your code 
} 
+0

да, я добавил слушателя. – Agoswami

+0

$ (документ) .on ('keydown.game', функция (е) \t { \t \t that.key_down (е); \t \t возвращение ложным; \t}); \t \t $ (документ) .on ('keyup.game', функция (е) \t { \t \t that.key_up (е); \t \t возвращение ложным; \t}); я сделал это таким образом. – Agoswami