📄 mjclienteventhandler.java
字号:
package com.newpalm.game.mj.client;
import java.util.Observable;
import com.newpalm.game.framework.ClientEventHandler;
import com.newpalm.game.mj.share.MJModuleProxy;
import com.newpalm.game.mj.share.MJEventObject;
/**
* @author liyamin
*/
abstract public class MJClientEventHandler implements ClientEventHandler {
protected MJClient theClient;
protected MJModuleProxy theMod;
protected int myNo;
public MJClientEventHandler(MJClient client) {
this.theClient = client;
}
/* Dispatch events
* @see java.util.Observer#update(java.util.Observable, java.lang.Object)
*/
public void update(Observable o, Object arg) {
if (arg == null)
return;
if (!(arg instanceof MJEventObject))
return;
MJEventObject evt = (MJEventObject)arg;
theMod = theClient.getMJLocalModule();
myNo = theMod.getClientPlayerNo(theClient);
if (evt.getEventId() == MJEventObject.NEW_CLIENT_JOINED) {
} else if (evt.getEventId() == MJEventObject.NEW_ROUND_STARTED) {
onNewRound(evt);
} else if (evt.getEventId() == MJEventObject.WAIT_PLAY) {
if (theMod.getCurrentPlayerNo() == myNo) {
onTurnToPlay(evt);
} else {
onWaitingOthersPlay(evt);
}
} else if (evt.getEventId() == MJEventObject.WAIT_PASS) {
onWaitPass(evt);
} else if (evt.getEventId() == MJEventObject.HU) {
onHu(evt);
}
}
public void onWaitingOthersPlay(MJEventObject event) {}
public void onNewRound(MJEventObject event) {}
public void onHu(MJEventObject event) {}
// 必须回复的事件
abstract public void onTurnToPlay(MJEventObject event);
abstract public void onWaitPass(MJEventObject event);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -