首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> J2ME

NetBeans 平台開發 J2ME 遊戲實戰(二):華容道核心類別實作

     編輯:J2ME

承接上篇環境建置,實作《華容道》核心模組:資源常量類、繪圖工具類、地圖載入類與主邏輯控制類。

Images.java - 資源常量集中管理

  • 定義格子大小、繪圖原點、地圖寬高、角色標記(曹操 'a'、馬超 'b'…)、圖片物件引用。
  • init() 統一載入所有圖片(MIDP 2.0 可用 Image.createImage(src, x, y, w, h, transform) 從大圖切片;MIDP 1.0 需預先切好小圖)。

Draw.java - 靜態繪圖工具

  • paint(Graphics g, byte img, int x, int y):依角色標記繪製對應圖片至螢幕座標(LEFT + x*UNIT, TOP + y*UNIT)。
  • 光標以 drawRect 顯示。

Map.java - 地圖資料載入與繪製

  • 二維陣列 Grid[HEIGHT][WIDTH] 存儲關卡資料。
  • read_map(level):從 /levels/level{level} 讀取位元組流,解析角色標記,記錄光標初始位置並轉為空白。
  • draw_map(Graphics g):雙重迴圈委託 Draw.paint 繪製全圖。

ControlLogic.java - 主遊戲邏輯

  • 繼承 Canvas 實作 CommandListener。
  • 狀態變量:光標位置 loc、選取區域 SelectArea、目標區域 MoveArea、選取旗標 selected、當前關卡 level。
  • Init_game():讀圖、初始化選取/目標區域。
  • paint(Graphics g):繪製背景框架、地圖、高亮選取區域。
  • 鍵盤事件處理(移動光標、確認選取/移動、檢查勝利條件)於 keyPressed 實作(代碼省略)。

模組化設計降低耦合,便於擴充關卡編輯器、AI 提示等功能。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved