gameworld.keyPressed(getGameAction(keycode)); //引用 GameWorld 类的按键响应
}
public void run() { //游戏主循环
while (!slepping) { //判断动画循环是否停止
repaint(); //绘制画布
try {
Thread.sleep(frameDelay); //线程停顿 330ms 即每秒 3 帧。
}
catch (InterruptedException ie) {}
}
}
public void paint(Graphics g){
g.setColor(0x00000000); //设置背景颜色为黑色
g.fillRect(0, 0, getWidth(), getHeight()); //清除显示屏
gameworld.draw(g) ; //引用 GameWorld 类的 draw()方法
}
}
――――――――――――――――――――――――――――――――――
这个类主要是判断该点是否为服务器下
第三个类:class 类
public class Chess {
public boolean isServer; //判断是否为服务器
public Chess() { }
public Chess(boolean isServer) {
this.isServer = isServer; //外部应用函数传递是非值给该类的服务器判断值
}
}
――――――――――――――――――――――――――――――――――
这个类主要整合了棋盘、棋子以及接收棋子位置信息的构架和按键响应事件的方法:
第四个类:GameWorld 类
import javax.microedition.lcdui.*;
public class GameWorld {
private Control control;
private Chess[][] chess; //棋子数组
private MyCanvas mycanvas;
private int chessMapGrid, chessGridLength; //棋盘一边格子数,每格宽度
private int chessLength; //棋子的直径
private int chessMapX, chessMapY; //棋盘左上角 x,y 坐标
public static boolean myMove;
public boolean isServer;
private int selectedX, selectedY; //选择框在棋盘格局上的 x,y 位置
public GameWorld() {
try {
init(); //调用初始化 init()方法