来自:http://blog.csdn.net/dawanganban/article/details/17754235

上一篇我们创建了敌人的坦克和自己的坦克,接下来就应该让坦克发子弹了,我们下面来看一下如何让我们的坦克发出子弹。

前面我们用面向对象的思想对Tank进行了封装,又利用对象冒充实现了我们的坦克和敌人的坦克,仿照这种方式我们是不是也应该封装一个Bullet,答案是肯定的。好吧,那么我们再想想这个Bullet"类“都应该封装什么东西呢?位置应该有吧、子弹飞行的方向应该有吧、飞行的速度也应该有吧、自己飞出去的动作应该有吧。好啦,大概就这些,封装后的Bulle”t类“如下:

  1. //子弹类
  2. function Bullet(x,y,direct,speed){
  3. this.x=x;
  4. this.y=y;
  5. this.speed=speed;
  6. this.direct=direct;
  7. this.timer=null;
  8. this.run=function(){
  9. switch(this.direct){
  10. case 0:
  11. this.y-=this.speed;
  12. break;
  13. case 1:
  14. this.x+=this.speed;
  15. break;
  16. case 2:
  17. this.y+=this.speed;
  18. break;
  19. case 3:
  20. this.x-=this.speed;
  21. break;
  22. }
  23. }
  24. }

;i<3;i++){

  • drawTank(enemyTanks[i]);
  • }
  • }