java中国象棋联网对战源码


实训java中国象棋源码,分为客户端和服务端,不懂问我
资源截图
代码片段和文件信息
package cn.lym77.chess.game;

import java.awt.Point;
import java.util.Timer;
import java.util.TimerTask;

import javax.swing.JOptionPane;

import cn.lym77.msg.Msg;
import cn.lym77.msg.MsgIo;
import cn.lym77.msg.MsgIo.MsgListener;

public class Game extends GameView implements MsgListener {
public interface GameListener {
public void onEat();

public void onGameOver(boolean isWin);

public void onPeace();

public void onUpdateTime(int self int other);

public void qurryPeace();
}

private GameListener gameListener;
// 存点,起点,终点
private Point saveP startP aimP;
private int color;
private int step;
private MsgIo msgIo;
private int selfTime otherTime;
private boolean isStart;

/**
 * 
 * 构造方法
 * 
 * @param color
 *            己方颜色,0表示红色,1表示黑色
 * @param ip
 *            对方ip
 * @param selfPort
 *            己方端口
 * @param otherPort
 *            对方端口
 */
public Game(int color MsgIo msgIo GameListener gameListener) {
super(null);
this.color = color;
this.gameListener = gameListener;
this.msgIo = msgIo;
this.setEnabled(false);
this.setMap(new int[90]);
msgIo.addListener(this);
new Timer().schedule(new TimerTask() {
@Override
public void run() {
Game.this.msgIo.sendLove();
updateTime();
}
} 1000 1000);
startGame();
}

/**
 * 游戏结束
 * 
 * @param msg
 */
public void end(String msg) {
isStart = false;
if (gameListener != null) {
if (msg.contains(“赢“)) {
gameListener.onGameOver(true);
startGame();
} else if (msg.contains(“输“)) {
gameListener.onGameOver(false);
startGame();
} else if (msg.contains(“和棋“)) {
gameListener.onPeace();
startGame();
} else if (msg.contains(“求和“)) {
gameListener.qurryPeace();
} else if (msg.contains(“开始“)) {
initGame();
}
}
}

/**
 * 初始化游戏
 */
public void initGame() {
this.step = 0;
this.saveP = null;
this.aimP = null;
this.startP = null;
this.selfTime = 20*60;
this.otherTime =20*60;
this.isStart = true;
this.setEnabled(true);
if (color == 0) {
setMap(Rule.getDefaultMap());
} else {
setMap(Rule.rotateMap(Rule.getDefaultMap()));
}
}

/**
 * 判断棋子是否是自己的
 * 
 * @param code
 * @return 如果是返回true
 */
private boolean isSelfChess(int code) {
if (code % 100 == 0) {
return false;
}
return ((code % 100) / 10 - 1) != color;
}

@Override
public void loginFailed() {
// TODO Auto-generated method stub

}

@Override
public void loginSuccess() {

}

public void looser() {
sendMsg(“恭喜你赢了!“);
end(“很遗憾你输了!“);
}

/**
 * 布局转换为字符串
 */
public String mapToString() {
String map = step + “:“;
for (int i = 0; i < getMap().length; i++) {
map = map + getMap()[i] + ““;
}
return map;
}

/**
 * 点击某个点
 */
public void onclick(int x int y) {
Point p = new Point(x y);
// saveP = p;
// upda

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2016-01-05 14:40  中国象棋2.1
     目录           0  2016-01-05 14:40  中国象棋2.1客户端
     文件     1132917  2016-01-05 12:42  中国象棋2.1客户端中国象棋2.1.jar
     目录           0  2016-01-05 12:42  中国象棋2.1客户端源码
     目录           0  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChess
     文件         512  2006-04-09 16:25  中国象棋2.1客户端源码ChinaChess.classpath
     文件         386  2016-01-03 09:05  中国象棋2.1客户端源码ChinaChess.project
     目录           0  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChess.settings
     文件         598  2015-12-27 18:26  中国象棋2.1客户端源码ChinaChess.settingsorg.eclipse.jdt.core.prefs
     文件         137  2016-01-03 17:03  中国象棋2.1客户端源码ChinaChess.settingsorg.eclipse.ltk.core.refactoring.prefs
     目录           0  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChessin
     目录           0  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChessincn
     目录           0  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChessincnlym77
     目录           0  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChessincnlym77chess
     目录           0  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChessincnlym77chessgame
     文件         835  2016-01-05 12:33  中国象棋2.1客户端源码ChinaChessincnlym77chessgameGame$1.class
     文件         318  2016-01-05 12:33  中国象棋2.1客户端源码ChinaChessincnlym77chessgameGame$GameListener.class
     文件        6485  2016-01-05 12:33  中国象棋2.1客户端源码ChinaChessincnlym77chessgameGame.class
     文件         907  2016-01-05 12:33  中国象棋2.1客户端源码ChinaChessincnlym77chessgameGameView$1.class
     文件        3237  2016-01-05 12:33  中国象棋2.1客户端源码ChinaChessincnlym77chessgameGameView.class
     文件        3581  2016-01-05 12:33  中国象棋2.1客户端源码ChinaChessincnlym77chessgameRule.class
     目录           0  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChessincnlym77chessmain
     文件         919  2016-01-05 12:39  中国象棋2.1客户端源码ChinaChessincnlym77chessmainMain$1$1.class
     文件         921  2016-01-05 12:39  中国象棋2.1客户端源码ChinaChessincnlym77chessmainMain$1$2.class
     文件        1296  2016-01-05 12:39  中国象棋2.1客户端源码ChinaChessincnlym77chessmainMain$1.class
     文件        3937  2016-01-05 12:39  中国象棋2.1客户端源码ChinaChessincnlym77chessmainMain.class
     文件        4856  2016-01-05 12:35  中国象棋2.1客户端源码ChinaChessincnlym77chessmainMainView.class
     目录           0  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChessincnlym77chessui
     文件         848  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChessincnlym77chessuiLoginDlg$1.class
     文件        1219  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChessincnlym77chessuiLoginDlg$2.class
     文件         791  2016-01-05 12:42  中国象棋2.1客户端源码ChinaChessincnlym77chessuiLoginDlg$3.class
............此处省略226个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)