作业七:团队项目——Alpha版本冲刺阶段-10

部分代码:

  1 public void run(){
  2         while (true){
  3             //单击棋子第一下开始闪烁
  4             if (chessManClick){
  5                 play[Man].setVisible(false);
  6
  7                 //时间控制
  8                 try{
  9                     tmain.sleep(100);
 10                 }
 11                 catch(Exception e){
 12                 }
 13
 14                 play[Man].setVisible(true);
 15             }
 16
 17             //闪烁当前提示信息 以免用户看不见
 18             else {
 19                 text.setVisible(false);
 20                 //时间控制
 21                 try{
 22                     tmain.sleep(250);
 23                 }
 24                 catch(Exception e){
 25                 }
 26
 27                 text.setVisible(true);
 28             }
 29
 30             try{
 31                 tmain.sleep(350);
 32             }
 33             catch (Exception e){
 34             }
 35         }
 36     }
 37
 38     //单击棋子方法
 39     public void mouseClicked(MouseEvent me){
 40         System.out.println("Mouse");
 41
 42         //当前坐标
 43         int Ex=0,Ey=0;
 44
 45         //启动线程
 46         if (tmain == null){
 47             tmain = new Thread(this);
 48             tmain.start();
 49         }
 50
 51         //单击棋盘(移动棋子)
 52         if (me.getSource().equals(image)){
 53             //该红棋走棋的时候
 54             if (chessPlayClick == 2 && play[Man].getName().charAt(1) == ‘2‘){
 55                 Ex = play[Man].getX();
 56                 Ey = play[Man].getY();
 57                 //移动卒、兵
 58                 if (Man > 15 && Man < 26){
 59                     rule.armsRule(Man,play[Man],me);
 60                 }
 61
 62                 //移动炮
 63                 else if (Man > 25 && Man < 30){
 64                     rule.cannonRule(play[Man],play,me);
 65                 }
 66
 67                 //移动车
 68                 else if (Man >=0 && Man < 4){
 69                     rule.cannonRule(play[Man],play,me);
 70                 }
 71
 72                 //移动马
 73                 else if (Man > 3 && Man < 8){
 74                     rule.horseRule(play[Man],play,me);
 75                 }
 76
 77                 //移动相、象
 78                 else if (Man > 7 && Man < 12){
 79                     rule.elephantRule(Man,play[Man],play,me);
 80                 }
 81
 82                 //移动仕、士
 83                 else if (Man > 11 && Man < 16){
 84                     rule.chapRule(Man,play[Man],play,me);
 85                 }
 86
 87                 //移动将、帅
 88                 else if (Man == 30 || Man == 31){
 89                     rule.willRule(Man,play[Man],play,me);
 90                 }
 91
 92                 //是否走棋错误(是否在原地没有动)
 93                 if (Ex == play[Man].getX() && Ey == play[Man].getY()){
 94                     text.setText("               红棋走棋");
 95                     chessPlayClick=2;
 96                 }
 97
 98                 else {
 99                     text.setText("               黑棋走棋");
100                     chessPlayClick=1;
101                 }
102
103             }//if
104
105             //该黑棋走棋的时候
106             else if (chessPlayClick == 1 && play[Man].getName().charAt(1) == ‘1‘){
107                 Ex = play[Man].getX();
108                 Ey = play[Man].getY();
109
110                 //移动卒、兵
111                 if (Man > 15 && Man < 26){
112                     rule.armsRule(Man,play[Man],me);
113                 }
114
115                 //移动炮
116                 else if (Man > 25 && Man < 30){
117                     rule.cannonRule(play[Man],play,me);
118                 }
119
120                 //移动车
121                 else if (Man >=0 && Man < 4){
122                     rule.cannonRule(play[Man],play,me);
123                 }
124
125                 //移动马
126                 else if (Man > 3 && Man < 8){
127                     rule.horseRule(play[Man],play,me);
128                 }
129
130                 //移动相、象
131                 else if (Man > 7 && Man < 12){
132                     rule.elephantRule(Man,play[Man],play,me);
133                 }
134
135                 //移动仕、士
136                 else if (Man > 11 && Man < 16){
137                     rule.chapRule(Man,play[Man],play,me);
138                 }
139
140                 //移动将、帅
141                 else if (Man == 30 || Man == 31){
142                     rule.willRule(Man,play[Man],play,me);
143                 }
144
145                 //是否走棋错误(是否在原地没有动)
146                 if (Ex == play[Man].getX() && Ey == play[Man].getY()){
147                     text.setText("               黑棋走棋");
148                     chessPlayClick=1;
149                 }
150
151                 else {
152                     text.setText("               红棋走棋");
153                     chessPlayClick=2;
154                 }
155
156
157             }//else if
158
159             //当前没有操作(停止闪烁)
160             chessManClick=false;
161
162         }//if
163
164         //单击棋子
165         else{
166             //第一次单击棋子(闪烁棋子)
167             if (!chessManClick){
168                 for (int i=0;i<32;i++){
169                     //被单击的棋子
170                     if (me.getSource().equals(play[i])){
171                         //告诉线程让该棋子闪烁
172                         Man=i;
173                         //开始闪烁
174                         chessManClick=true;
175                         break;
176                     }
177                 }//for
178             }//if
179
180             //第二次单击棋子(吃棋子)
181             else if (chessManClick){
182                 //当前没有操作(停止闪烁)
183                 chessManClick=false;
184
185                 for (i=0;i<32;i++){
186                     //找到被吃的棋子
187                     if (me.getSource().equals(play[i])){
188                         //该红棋吃棋的时候
189                         if (chessPlayClick == 2 && play[Man].getName().charAt(1) == ‘2‘){
190                             Ex = play[Man].getX();
191                             Ey = play[Man].getY();
192
193                             //卒、兵吃规则
194                             if (Man > 15 && Man < 26){
195                                 rule.armsRule(play[Man],play[i]);
196                             }
197
198                             //炮吃规则
199                             else if (Man > 25 && Man < 30){
200                                 rule.cannonRule(0,play[Man],play[i],play,me);
201                             }
202
203                             //车吃规则
204                             else if (Man >=0 && Man < 4){
205                                 rule.cannonRule(1,play[Man],play[i],play,me);
206                             }
207
208                             //马吃规则
209                             else if (Man > 3 && Man < 8){
210                                 rule.horseRule(play[Man],play[i],play,me);
211                             }
212
213                             //相、象吃规则
214                             else if (Man > 7 && Man < 12){
215                                 rule.elephantRule(play[Man],play[i],play);
216                             }
217
218                             //士、仕吃棋规则
219                             else if (Man > 11 && Man < 16){
220                                 rule.chapRule(Man,play[Man],play[i],play);
221                             }
222
223                             //将、帅吃棋规则
224                             else if (Man == 30 || Man == 31){
225                                 rule.willRule(Man,play[Man],play[i],play);
226                                 play[Man].setVisible(true);
227                             }
228
229                             //是否走棋错误(是否在原地没有动)
230                             if (Ex == play[Man].getX() && Ey == play[Man].getY()){
231                                 text.setText("               红棋走棋");
232                                 chessPlayClick=2;
233                                 break;
234                             }
235
236                             else{
237                                 text.setText("               黑棋走棋");
238                                 chessPlayClick=1;
239                                 break;
240                             }
241
242                         }//if
243
244                         //该黑棋吃棋的时候
245                         else if (chessPlayClick == 1 && play[Man].getName().charAt(1) == ‘1‘){
246                             Ex = play[Man].getX();
247                             Ey = play[Man].getY();
248
249                             //卒吃规则
250                             if (Man > 15 && Man < 26){
251                                 rule.armsRule(play[Man],play[i]);
252                             }
253
254                             //炮吃规则
255                             else if (Man > 25 && Man < 30){
256                                 rule.cannonRule(0,play[Man],play[i],play,me);
257                             }
258
259                             //车吃规则
260                             else if (Man >=0 && Man < 4){
261                                 rule.cannonRule(1,play[Man],play[i],play,me);
262                             }
263
264                             //马吃规则
265                             else if (Man > 3 && Man < 8){
266                                 rule.horseRule(play[Man],play[i],play,me);
267                             }
268
269                             //相、象吃规则
270                             else if (Man > 7 && Man < 12){
271                                 rule.elephantRule(play[Man],play[i],play);
272                             }
273
274                             //士、仕吃棋规则
275                             else if (Man > 11 && Man < 16){
276                                 rule.chapRule(Man,play[Man],play[i],play);
277                             }
278
279                             //将、帅吃棋规则
280                             else if (Man == 30 || Man == 31){
281                                 rule.willRule(Man,play[Man],play[i],play);
282                                 play[Man].setVisible(true);
283                             }
284
285                             //是否走棋错误(是否在原地没有动)
286                             if (Ex == play[Man].getX() && Ey == play[Man].getY()){
287                                 text.setText("               黑棋走棋");
288                                 chessPlayClick=1;
289                                 break;
290                             }
291
292                             else {
293                                 text.setText("               红棋走棋");
294                                 chessPlayClick=2;
295                                 break;
296                             }
297
298                         }//else if
299
300                     }//if
301
302                 }//for
303
304
305                 //是否胜利
306                 if (!play[31].isVisible()){
307                     JOptionPane.showConfirmDialog(
308                         this,"黑棋胜利","玩家一胜利",
309                         JOptionPane.DEFAULT_OPTION,JOptionPane.WARNING_MESSAGE);
310                     //双方都不可以在走棋了
311                     chessPlayClick=3;
312                     text.setText("  黑棋胜利");
313
314                 }//if
315
316                 else if (!play[30].isVisible()){
317                     JOptionPane.showConfirmDialog(
318                         this,"红棋胜利","玩家二胜利",
319                         JOptionPane.DEFAULT_OPTION,JOptionPane.WARNING_MESSAGE);
320                     chessPlayClick=3;
321                     text.setText("  红棋胜利");
322                 }//else if
323
324             }//else
325
326         }//else
327
328     }
时间: 2024-11-05 15:55:13

作业七:团队项目——Alpha版本冲刺阶段-10的相关文章

作业七:团队项目——Alpha版本冲刺阶段-13

对项目最后进行了完善. 代码如下: public void chapRule(int Man ,JLabel play,JLabel playTake,JLabel playQ[]){ //当前状态 boolean Chap = false; //上.右 if (playTake.getX() - play.getX() >= 20 && playTake.getX() - play.getX() <= 114 && play.getY() - playTake

作业七:团队项目——Alpha版本冲刺阶段-02

昨天进展:框架设计以及菜单设计. 今天安排:完善界面设计以及象棋图片的绘制. 小组一共三人,陈芝航因家里有事,与我们进行了QQ视屏会议.

作业七:团队项目——Alpha版本冲刺阶段-12

今日编写代码如下: class ChessRule { /**卒子的移动规则*/ public void armsRule(int Man,JLabel play,MouseEvent me){ //黑卒向下 if (Man < 21){ //向下移动.得到终点的坐标模糊成合法的坐标 if ((me.getY()-play.getY()) > 27 && (me.getY()-play.getY()) < 86 && (me.getX()-play.get

作业七:团队项目——Alpha版本冲刺阶段-03

昨天进展:完善界面设计以及象棋图片的绘制 存在问题:人力不足,任务量大. 今天安排:象棋图片的绘制

作业七:团队项目——Alpha版本冲刺阶段010

今日安排:组内成员讨论 今日进程:组内成员讨论结束,并有明确的解决办法,每个人准备实践

作业七:团队项目——Alpha版本冲刺阶段-11

部分功能实现: 1 public void actionPerformed(ActionEvent ae) { 2 //重新开始按钮 3 if (ae.getSource().equals(anew)){ 4 int i,k; 5 //重新排列每个棋子的位置 6 //黑色棋子 7 8 //车 9 for (i=0,k=24;i<2;i++,k+=456){ 10 play[i].setBounds(k,56,55,55); 11 } 12 13 //马 14 for (i=4,k=81;i<6

实验七 团队作业3—团队项目的原型设计与开发

实验七 团队作业3-团队项目的原型设计与开发 实验时间 2018-5-3(5/4) Deadline: 2018-5-9 10:00,以团队随笔博文提交至班级博客的时间为准. 评分标准: l  按时交 – 根据实验七评分细则打分(满分15分,团队博文与原型设计成果) l  本实验为团队任务,团队成员成绩以团队博文成绩为准 l  晚交 - 0分 l  抄袭 - 倒扣本次作业分数 l  如对作业分数有意见,可有一次向评分助教申诉机会 关于软件原型方法 原型方法就是快速地建立可运行的.概略的系统,之后

团队项目Alpha阶段心得感悟

软工课进行了这么久,团队项目也开展了快一个月了.这一个月以来,伴随着各种各样的考试,我们前端小组的项目开展的也磕磕绊绊.因为这周五周六连续两天有考试,我甚至忘了要写心得体会. 但是我早就想写一下这一阶段的感受了,因为这个月,可谓是雪上加霜.首先是其他各门主课的各种考试和deadline,然后是团队项目老师的步步紧逼,每天都是到很晚才睡觉.我们前端小组这个月把A版本的界面大致都做了出来,过程有点痛苦.首先是我们对于BBS界面的不熟悉,而且我们也没有设计,所以从设计到写代码都是我们自己来.我们参考了

团队作业四-团队项目汇总

一.Daily Scrum Meeting[Alpha] 团队作业4--第一次项目冲刺(Alpha版本)预备工作 团队作业4--第一次项目冲刺(Alpha版本)第一天 and 第二天 团队作业4--第一次项目冲刺(Alpha版本)第三天 团队作业4--第一次项目冲刺(Alpha版本)第四天 团队作业4--第一次项目冲刺(Alpha版本)第五天 团队作业4--第一次项目冲刺(Alpha版本)第六天and第七天 二.Daily Scrum Meeting[Beta] 三.git git地址: htt