![見出し画像](https://assets.st-note.com/production/uploads/images/84283162/rectangle_large_type_2_1e31775d374813f2c706c2d2ebd41d9a.png?width=1200)
キャラクター移動キー処理
document.addEventListener('keydown', function(e){ game.key[e.key]=1 });
document.addEventListener('keyup', function(e){ game.key[e.key]=0 });
var game={
frame: 30,
k:'wsda',
key:{},
process: {
'w': function(){ console.log('forward')},
's': function(){ console.log('back')},
'd': function(){ console.log('right')},
'a': function(){ console.log('left')},
},
loop: function(){
for (var i=0,l=game.k.length; i<l; i++){
var k=game.k.charAt(i);
if ( game.key[k] ) game.process[k]();
}
}
}
setInterval(game.loop, 1000/game.frame);
addEventListener: キーイベントバインド(フラグのオンオフ)
game.key: 入力キーフラグ(オン=1、オフ=0)
game.k: キー入力処理順序(w->s->d->a)
game.process: キーごとの処理
game.loop: ゲームのループ処理(キー入力フラグがオンなら対応する処理を実行する)
この記事が気に入ったらサポートをしてみませんか?