WEB开发网
开发学院软件开发Java 创建一个 Eclipse 游戏插件,第 3 部分: 启动游戏... 阅读

创建一个 Eclipse 游戏插件,第 3 部分: 启动游戏

 2009-12-14 00:00:00 来源:WEB开发网   
核心提示: 游戏游戏的各部分已经就位,可以编写代码了,创建一个 Eclipse 游戏插件,第 3 部分: 启动游戏(3),先从放在一条线上的 BB 枪和虫子开始,枪是射击一方,为了避免每秒发射数百次,我们将限制枪的发射速率,应当能够上下左右移动 BB 枪,并射出 BB 弹

游戏

游戏的各部分已经就位,可以编写代码了。先从放在一条线上的 BB 枪和虫子开始,枪是射击一方。应当能够上下左右移动 BB 枪,并射出 BB 弹,就像我们在第 2 部分中用空格键所做的那样。但是这次,子弹不仅仅是穿过虫子,我们要编写代码,让子弹触发 “打爆” 虫子功能,并显示文本 “POW”。在半秒之后,虫子和 “POW” 文本消失。

移动 BB 枪

每个游戏都允许玩家移动他控制的部件 —— 在这个示例中就是 BB 枪。在添加这个功能之前,需要为我们创建和初始化的每个对象创建 3 维坐标。这一节介绍这个功能,这个功能允许玩家四处移动枪。

添加正确的坐标:虫子

在这份教程后面,当添加碰撞检测时,需要知道游戏中每个部件的正确坐标。请把坐标添加到 Bug 类中,如清单 1 所示。

清单 1. 挂上虫子的坐标

... 
   private float ox, oy, oz; 
   public Bug(float[] color, float ox, float oy, float oz) { 
     this.ox = ox; 
     this.oy = oy; 
     this.oz = oz; 
... 

现在有了当前虫子的 x、y 和 z 坐标。需要重载 Bug 类的 draw 方法,如清单 2 所示。

清单 2. draw 方法

    public void draw(){ 
      GL.glTranslatef(ox, oy, oz); 
      super.draw(); 
      GL.glTranslatef(-ox, -oy, -oz); 
    } 

现在我们要把原点转到绘制虫子的位置,绘制虫子,然后换回原点。

添加正确的坐标:子弹

除了向 Bullet 类添加 3 维坐标之外,还必须添加其他一些东西。例如,为了避免每秒发射数百次,我们将限制枪的发射速率。请参阅清单 3。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:创建 一个 Eclipse

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接