AnimateCC及CreateJS:打飞机的4版本V1、V2、V3、V4
版本1:
this.btnGun.addEventListener("click", shootBomb);
var _this = this;
var bomb = new lib.bomblink();
bomb.alpha = 0;
bomb.rotation = 45;
bomb.scaleX = 0.2;
bomb.scaleY = 0.2;
_this.txtObj.text=""
stage.addChild(bomb);
createjs.Tween.get(this.planeObj, {loop: true
}).to({x: 700,y: 20
}, 1600);
createjs.Ticker.addEventListener("tick", handleTick);
function shootBomb() {_this.txtObj.text="发射!";bomb.x = 620;bomb.y = 420;bomb.alpha = 1;createjs.Tween.get(bomb, {loop: false}).to({x: 0,y: -400}, 900).call(finished);stage.update();
}
function finished() {bomb.alpha = 0;_this.txtObj.text="发射完毕!";
}
function handleTick() {var pt = bomb.localToLocal(0, 0,_this.planeObj);if (_this.planeObj.hitTest(pt.x, pt.y)==true&&bomb.alpha==1) { _this.txtObj.text="命中!"stage.update();}
}
stage.update();
版本2:
this.btnGun.addEventListener("click", shootBomb);
var _this = this;
var bomb = new lib.bomblink();
bomb.alpha = 0;
bomb.rotation = 45;
bomb.scaleX = 0.2;
bomb.scaleY = 0.2;
_this.txtObj.text=""
stage.addChild(bomb);
var blast = new lib.blastlink();
stage.addChild(blast);
blast.gotoAndStop(0);
createjs.Tween.get(this.planeObj, {loop: true
}).to({x: 700,y: 20
}, 1600);
createjs.Ticker.addEventListener("tick", handleTick);
function shootBomb() {_this.txtObj.text="发射!";bomb.x = 620;bomb.y = 420; bomb.alpha=1;createjs.Tween.get(bomb, {loop: false}).to({x: 0,y: -400}, 900).call(finished);stage.update();
}
function finished() {bomb.alpha = 0; _this.txtObj.text="发射完毕!";
}
function handleTick() {var pt = bomb.localToLocal(0, 0,_this.planeObj); if (_this.planeObj.hitTest(pt.x, pt.y)==true&&bomb.alpha==1) { _this.txtObj.text="命中!"blast.x=bomb.x;blast.y=bomb.y; blast.gotoAndPlay(1);stage.update();}
}
stage.update();
版本3:
this.btnGun.addEventListener("click", shootBomb);
var _this = this;
var bomb = new lib.bomblink();
bomb.alpha = 0;
bomb.rotation = 45;
bomb.scaleX = 0.2;
bomb.scaleY = 0.2;
_this.txtObj.text = ""
stage.addChild(bomb);
var blast = new lib.blastlink();
stage.addChild(blast);
blast.gotoAndStop(0);_this.planeObj.rotation=0;_this.planeObj.alpha=1;_this.planeObj.x=-240;_this.planeObj.y=96
createjs.Tween.get(this.planeObj, {loop: true
}).to({x: 700,y: 20
}, 1600);
createjs.Ticker.addEventListener("tick", handleTick);
function shootBomb() {_this.txtObj.text = "发射!";bomb.x = 620;bomb.y = 420;bomb.alpha = 1;createjs.Tween.get(bomb, {loop: false}).to({x: 0,y: -400}, 900).call(finished);stage.update();
}
function finished() {bomb.alpha = 0; _this.txtObj.text = "发射完毕!";
}
function downed() { _this.planeObj.rotation=0;_this.planeObj.alpha=1;_this.planeObj.x=-240;_this.planeObj.y=96createjs.Tween.get(_this.planeObj, {loop: true
}).to({x: 700,y: 20
}, 1600);
}
function handleTick() {var pt = bomb.localToLocal(0, 0, _this.planeObj);if (_this.planeObj.hitTest(pt.x, pt.y) == true && bomb.alpha == 1) {_this.txtObj.text = "命中!";blast.x = bomb.x;blast.y = bomb.y;blast.gotoAndPlay(1);planeDown();stage.update();}
}
function planeDown() {_this.planeObj.rotation=30;createjs.Tween.get(_this.planeObj, {loop: false}).to({y: 800}, 1000).call(downed);
}
stage.update();
版本:4:
加相关的音效效果,待写......
设计界面:
源码下载:
https://download.csdn.net/download/vinglemar/91009540