diff --git a/game.js b/game.js index edf717e..e15f257 100644 --- a/game.js +++ b/game.js @@ -58,7 +58,7 @@ function Game(id,options){ }); }); } - _events[eventType]['s'+this.stage.index+'i'+this.index] = callback; + _events[eventType]['s'+this.stage.index+'i'+this.index] = callback.bind(this); //绑定作用域 }; //布景对象构造器 var Stage = function(options){ @@ -128,7 +128,7 @@ function Game(id,options){ } }); } - _events[eventType]['s'+this.index] = callback; + _events[eventType]['s'+this.index] = callback.bind(this); //绑定事件作用域 }; //事件坐标 this.getPosition = function(e){ diff --git a/index.js b/index.js index 18ee432..24c5f19 100644 --- a/index.js +++ b/index.js @@ -9,8 +9,6 @@ case 13: case 32: game.nextStage(); - // stage.status = 2; - // console.log(this); break; } }); @@ -67,8 +65,38 @@ //游戏主程序 (function(){ var stage = game.createStage(); - stage.bind('keydown',function(){ - console.log('没东西啦……还按!'); + stage.bind('keydown',function(e){ + switch(e.keyCode){ + case 13: + case 32: + this.status = this.status==2?1:2; + break; + } + }); + //logo + stage.createItem({ + x:game.width/2, + y:game.height*.45, + width:100, + height:100, + speed:10, + draw:function(context){ + context.fillStyle = '#FC3'; + context.beginPath(); + if(this.frames%2){ + context.arc(this.x,this.y,this.width/2,.20*Math.PI,1.80*Math.PI,false); + }else{ + context.arc(this.x,this.y,this.width/2,.01*Math.PI,1.99*Math.PI,false); + } + context.lineTo(this.x,this.y); + context.closePath(); + context.fill(); + context.fillStyle = '#000'; + context.beginPath(); + context.arc(this.x+5,this.y-27,7,0,2*Math.PI,false); + context.closePath(); + context.fill(); + } }); })(); game.init();