程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2ME >> 游戲入門之二 雷電 Hero(自己飛機)模型的創建

游戲入門之二 雷電 Hero(自己飛機)模型的創建

編輯:J2ME
這裡我將要講述我游戲的主角,Hero。這裡的游戲的主角相對比較簡單。 只需實現,飛機的移動以及創建。
唯一的兩點是飛機移動的時候,不能把飛機都給移動到屏幕外面去了。只有的話,那我們這些設計游戲的人就太不專業了。呵呵。
         至於發射子彈,本來我也想把Ball跟發射子彈的創建以及管理都放在此的,後來想想,還是分開點好。這些就是高手們常常說的。要解耦啊,每個類應該盡量簡單啊。不應該負責額外的工作啊。
       我聽這些都煩惱死了。不過煩惱歸煩。高手的話還是要聽的。^_^
     同理可以實現Foe, Ball等角色類,以及創建FoeManager, BallManager等.這裡就不詳細闡述他們了
Java 代碼  
  1. /******************************************************************** 
  2.  * 項目名稱             :J2ME學習          
     
  3.  *  
  4.  * Copyright 2005-2006 Wuhua. All rights reserved 
  5.  ********************************************************************/  
  6. package org.wuhua.battleplan;  
  7.   
  8. import org.wuhua.game.model.Fairy;  
  9. import org.wuhua.game.util.Log;  
  10.   
  11. /** 
  12.  * 類名:Hero.Java 
      
  13.  * 編寫日期: 2006-11-30 
     
  14.  * 程序功能描述:玩家飛機控制類 
     
  15.  * Demo: 
     
  16.  * Bug: 
     
  17.  *  
  18.  * 程序變更日期 :
      
  19.  * 變更作者 :
      
  20.  * 變更說明 :
     
  21.  *  
  22.  * @author wuhua 
      
  23.  */  
  24. public class Hero extends Fairy {  
  25.       
  26.   
  27.     static Log log = Log.getLog("Hero");  
  28.     static Hero hero;  
  29.     private Hero(int x, int y){  
  30.         super(Resources.FLY, x, y);  
  31.     }  
  32.     /** 
  33.      * 在選中的位置的位置創建一個Hero 
  34.      */  
  35.     public final static Hero createHero(int x, int y){  
  36.         if(hero == null){  
  37.    hero = new Hero(x,y);  
  38.         }  
  39.         return hero;  
  40.     }  
  41.       
  42.       
  43.       
  44.       
  45.     public final void moveLeft(){  
  46.         if(this.getX()>=16)  
  47.             this.move(-8, 0);  
  48.     }  
  49.       
  50.     public final void moveRight(){  
  51.         if(this.getX()<=Platform.WIDTH-16)  
  52.             this.move(8, 0);  
  53.     }  
  54.       
  55.     public final void moveUp(){  
  56.         if(this.getY()>=8)  
  57.             this.move(0, -8);  
  58.     }  
  59.     public final void moveDown(){  
  60.         if(this.getY()<=Platform.HEIGHT-38)  
  61.             this.move(0, 8);  
  62.     }  
  63. }  
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved