中国象棋人人对战(6)

2018-12-19 20:53

//帅

in = new ImageIcon(\红将.GIF\

play[31] = new JLabel(in); play[31].setBounds(252,569,55,55);

play[31].setName(\帅2\

} /**

** 线程方法控制棋子闪烁 */

public void run(){ while (true){ //单击棋子第一下开始闪烁 if (chessManClick){

play[Man].setVisible(false);

//时间控制 try{ tmain.sleep(200);

}

catch(Exception e){ }

play[Man].setVisible(true);

}

//闪烁当前提示信息 以免用户看不见 else {

text.setVisible(false);

26

//时间控制 try{ tmain.sleep(250);

}

catch(Exception e){ }

text.setVisible(true);

}

try{ tmain.sleep(350);

}

catch (Exception e){ }

}

} /**

** 单击棋子方法 */

public void mouseClicked(MouseEvent me){ System.out.println(\

//当前坐标 int Ex=0,Ey=0;

//启动线程

if (tmain == null){

27

tmain = new Thread(this); tmain.start();

}

//单击棋盘(移动棋子)

if (me.getSource().equals(image)){ //该红棋走棋的时候

if (chessPlayClick == 2 && play[Man].getName().charAt(1) == '2'){ Ex = play[Man].getX(); Ey = play[Man].getY(); //移动卒、兵

if (Man > 15 && Man < 26){ rule.armsRule(Man,play[Man],me); }

//移动炮

else if (Man > 25 && Man < 30){

rule.cannonRule(play[Man],play,me);

} //移动车

else if (Man >=0 && Man < 4){ rule.cannonRule(play[Man],play,me);

} //移动马

else if (Man > 3 && Man < 8){ rule.horseRule(play[Man],play,me);

}

28

//移动相、象

else if (Man > 7 && Man < 12){ }

//移动仕、士

else if (Man > 11 && Man < 16){ }

//移动将、帅

else if (Man == 30 || Man == 31){ }

//是否走棋错误(是否在原地没有动)

if (Ex == play[Man].getX() && Ey == play[Man].getY()){ } else { }

text.setText(\ 黑棋走棋\chessPlayClick=1;

text.setText(\ 红棋走棋\chessPlayClick=2;

rule.chapRule(Man,play[Man],play,me); rule.elephantRule(Man,play[Man],play,me);

rule.willRule(Man,play[Man],play,me);

}//if

//该黑棋走棋的时候

else if (chessPlayClick == 1 && play[Man].getName().charAt(1) ==

29

Ex = play[Man].getX(); Ey = play[Man].getY();

//移动卒、兵

if (Man > 15 && Man < 26){ rule.armsRule(Man,play[Man],me);

} //移动炮

else if (Man > 25 && Man < 30){ rule.cannonRule(play[Man],play,me); } //移动车

else if (Man >=0 && Man < 4){ rule.cannonRule(play[Man],play,me); } //移动马

else if (Man > 3 && Man < 8){ rule.horseRule(play[Man],play,me); }

//移动相、象

else if (Man > 7 && Man < 12){ rule.elephantRule(Man,play[Man],play,me); }

30

'1'){


中国象棋人人对战(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:第六章 收益和风险 习题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: