参考にしたのがこちら。enchant.js でプログラム組む方法が良くわかる。
「enchant.js」でゲームを作ろう! HTML5とJavaScriptによるアクションゲーム制作入門
別に熊とかを動かしたいわけではなく、キーボードの入力だけを処理させたかったので、
そういうことをやってみます。
『キーボードの入力のためだけにenchant.js 使う必要なくない?』と言われそうですが、
まぁ、ものは試し。男は度胸。何でもためしてみるのさ。
最初に書いたのがこんな感じ。
なんとなく jQuery も使っています。
enchant();
$(document).ready(function(){
var game = new Game(320,320);
game.onload = function(){
this.addEventListener("enterframe",function(){
if(this.input.left) {alert("left") ;}
if(this.input.right){alert("right");}
if(this.input.up) {alert("up") ;}
if(this.input.down) {alert("down") ;}
});
};
game.start();
});
$(document).ready(function(){
var game = new Game(320,320);
game.onload = function(){
this.addEventListener("enterframe",function(){
if(this.input.left) {alert("left") ;}
if(this.input.right){alert("right");}
if(this.input.up) {alert("up") ;}
if(this.input.down) {alert("down") ;}
});
};
game.start();
});
MACやスマホはわかりませんが、Windowsでキーボードの矢印キーを押すと、
アラートが出ました。
そこまではよかったものの、
アラートが出続ける…あらら。こまったので、F5キーを連打しました(笑)
で、書き直したのがこんな感じ。
enchant();
$(document).ready(function(){
var game = new Game(320,320);
game.onload = function(){
this.addEventListener("enterframe",function(){
if(this.input.left) {alert("left") ;this.input.left = false;}
if(this.input.right){alert("right");this.input.right = false;}
if(this.input.up) {alert("up") ;this.input.up = false;}
if(this.input.down) {alert("down") ;this.input.down = false;}
});
};
game.start();
});
$(document).ready(function(){
var game = new Game(320,320);
game.onload = function(){
this.addEventListener("enterframe",function(){
if(this.input.left) {alert("left") ;this.input.left = false;}
if(this.input.right){alert("right");this.input.right = false;}
if(this.input.up) {alert("up") ;this.input.up = false;}
if(this.input.down) {alert("down") ;this.input.down = false;}
});
};
game.start();
});
いちいち それぞれのフラグを false にしてやるわけですね。
これでアラート連発が無くなりました。
まぁ、ただそれだけです。
0 件のコメント:
コメントを投稿