📄 gobangcontrol.java
字号:
package com.tianxia.qipai.control.game.gobang;
import java.util.Timer;
import javax.microedition.lcdui.Display;
import com.tianxia.qipai.event.*;
import com.tianxia.qipai.control.MainControl;
import com.tianxia.qipai.control.universal.BeginControl;
import com.tianxia.qipai.event.MainGameEvent;
import com.tianxia.qipai.event.UniGameEvent;
import com.tianxia.qipai.model.game.gobang.GobangTimer;
import com.tianxia.qipai.model.util.CommStructNode;
import com.tianxia.qipai.model.util.GameEventDeal;
import com.tianxia.qipai.view.game.gobang.*;
public class GobangControl implements GameEventDeal {
private Display display; //屏幕
private CommStructNode commstructnode; //各控制模块之间数据字段data的通信结构节点
private MainControl maincontrol; //主控制模块,通过调用它的handEvent方法来与主控制模块通信
private static GobangControl instance; //自身的实例
private MainGameEvent maingameevent; //本模块要用的事件事例
private RoomList roomlist;
private GameEventDeal begameeventdeal; //正在处理的用户界面
private GobangHallCanvas gobanghallcanvas;
private GobangCanvas gobangcanvas;
public Runtime rt = Runtime.getRuntime();
public GobangControl() {
super();
// TODO 自动生成构造函数存根
}
public void init(MainControl maincontrol){
this.maincontrol = maincontrol;
display = maincontrol.getDisplay();
}
public static GobangControl getInstance(){
if(instance == null){
instance = new GobangControl();
}
return instance;
}
public Display getDisplay(){
return this.display;
}
public MainGameEvent getMainGameEvent(){
return this.maingameevent;
}
public void handleEvent(int eventID, MainGameEvent e) {
// TODO 自动生成方法存根
this.maingameevent = e;
switch(eventID){
case GobangEvent.MAINGAMEPAUSE:
break;
case UniGameEvent.DATAMODIFYREQ:
maincontrol.handleEvent(UniGameEvent.DATAMODIFYREQ,maingameevent);
break;
case UniGameEvent.MODIFYSUCCESSFUL:
begameeventdeal.handleEvent(UniGameEvent.MODIFYSUCCESSFUL,maingameevent);
break;
case GobangEvent.GOBANGMODELSTART:
maingameevent.getCommNode().setGameType("001");
roomlist = RoomList.getInstance();
roomlist.init(this);
begameeventdeal = roomlist;
//roomlist.BeginThead();
break;
case GobangEvent.GOBANGEXIT:
setNull();
maincontrol.handleEvent(GobangEvent.SUBMODELEXIT,maingameevent);
break;
case GobangEvent.USERCOUNTRECEIVE: //获取大厅信息
// System.out.println("freeMoryroomlist0: "+String.valueOf(rt.freeMemory()));
gobanghallcanvas = GobangHallCanvas.getInstance();
//System.out.println("freeMoryroomlist1: "+String.valueOf(rt.freeMemory()));
gobanghallcanvas.init(this);
begameeventdeal = gobanghallcanvas;
break;
case GobangEvent.EXITROOMRESPOND:
begameeventdeal = roomlist;
roomlist.setListFlag(true);
roomlist.handleEvent(GobangEvent.EXITROOMRESPOND,maingameevent);
break;
case GobangEvent.SITRESPOND:
gobangcanvas = GobangCanvas.getInstance();
gobangcanvas.init(this);
begameeventdeal = gobangcanvas;
break;
case GobangEvent.MAINGAMEEXIT:
maincontrol.handleEvent(MainEvent.MAINGAMEEXIT,maingameevent);
break;
case GobangEvent.USERSTANDUP:
gobanghallcanvas = GobangHallCanvas.getInstance();
gobanghallcanvas.init(this);
begameeventdeal = gobanghallcanvas;
break;
default:
break;
}
}
public void setNull(){
if(gobangcanvas != null){
gobangcanvas.setNull();
}
if(gobanghallcanvas != null){
gobanghallcanvas.setNull();
}
if(roomlist != null){
roomlist.setNull();
}
begameeventdeal = null;
display=null;
instance=null; //自身的实例
instance = null;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -