作业七:团队项目——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.getX()) < 55 && (me.getX()-play.getX()) > 0){
//当前记录添加到集合(用于悔棋)
Var.add(String.valueOf(play.isVisible()));
Var.add(String.valueOf(play.getX()));
Var.add(String.valueOf(play.getY()));
Var.add(String.valueOf(Man));
play.setBounds(play.getX(),play.getY()+57,55,55);
}
//向右移动、得到终点的坐标模糊成合法的坐标、必须过河
else if (play.getY() > 284 && (me.getX() - play.getX()) >= 57 && (me.getX() - play.getX()) <= 112){
play.setBounds(play.getX()+57,play.getY(),55,55);
}
//向左移动、得到终点的坐标模糊成合法的坐标、必须过河
else if (play.getY() > 284 && (play.getX() - me.getX()) >= 2 && (play.getX() - me.getX()) <=58){
//模糊坐标
play.setBounds(play.getX()-57,play.getY(),55,55);
}
}
//红卒向上
else{
//当前记录添加到集合(用于悔棋)
Var.add(String.valueOf(play.isVisible()));
Var.add(String.valueOf(play.getX()));
Var.add(String.valueOf(play.getY()));
Var.add(String.valueOf(Man));
//向上移动、得到终点的坐标模糊成合法的坐标
if ((me.getX()-play.getX()) >= 0 && (me.getX()-play.getX()) <= 55 && (play.getY()-me.getY()) >27 && play.getY()-me.getY() < 86){
play.setBounds(play.getX(),play.getY()-57,55,55);
}
//向右移动、得到终点的坐标模糊成合法的坐标、必须过河
else if (play.getY() <= 341 && (me.getX() - play.getX()) >= 57 && (me.getX() - play.getX()) <= 112){
play.setBounds(play.getX()+57,play.getY(),55,55);
}
//向左移动、得到终点的坐标模糊成合法的坐标、必须过河
else if (play.getY() <= 341 && (play.getX() - me.getX()) >= 3 && (play.getX() - me.getX()) <=58){
play.setBounds(play.getX()-57,play.getY(),55,55);
}
}
}//卒移动结束
/**卒吃棋规则*/
public void armsRule(JLabel play1,JLabel play2){
//向右走
if ((play2.getX() - play1.getX()) <= 112 && (play2.getX() - play1.getX()) >= 57 && (play1.getY() - play2.getY()) < 22 && (play1.getY() - play2.getY()) > -22 && play2.isVisible() && play1.getName().charAt(1)!=play2.getName().charAt(1)){
//黑棋要过河才能右吃棋
if (play1.getName().charAt(1) == '1' && play1.getY() > 284 && play1.getName().charAt(1) != play2.getName().charAt(1)){
play2.setVisible(false);
//把对方的位置给自己
play1.setBounds(play2.getX(),play2.getY(),55,55);
}
//红棋要过河才左能吃棋
else if (play1.getName().charAt(1) == '2' && play1.getY() < 341 && play1.getName().charAt(1) != play2.getName().charAt(1)){
play2.setVisible(false);
//把对方的位置给自己
play1.setBounds(play2.getX(),play2.getY(),55,55);
}
}
//向左走
else if ((play1.getX() - play2.getX()) <= 112 && (play1.getX() - play2.getX()) >= 57 && (play1.getY() - play2.getY()) < 22 && (play1.getY() - play2.getY()) > -22 && play2.isVisible() && play1.getName().charAt(1)!=play2.getName().charAt(1)){
//黑棋要过河才能左吃棋
if (play1.getName().charAt(1) == '1' && play1.getY() > 284 && play1.getName().charAt(1) != play2.getName().charAt(1)){
play2.setVisible(false);
//把对方的位置给自己
play1.setBounds(play2.getX(),play2.getY(),55,55);
}
//红棋要过河才能右吃棋
else if (play1.getName().charAt(1) == '2' && play1.getY() < 341 && play1.getName().charAt(1) != play2.getName().charAt(1)){
play2.setVisible(false);
//把对方的位置给自己
play1.setBounds(play2.getX(),play2.getY(),55,55);
}
}
//向上走
else if (play1.getX() - play2.getX() >= -22 && play1.getX() - play2.getX() <= 22 && play1.getY() - play2.getY() >= -112 && play1.getY() - play2.getY() <= 112){
//黑棋不能向上吃棋
if (play1.getName().charAt(1) == '1' && play1.getY() < play2.getY() && play1.getName().charAt(1) != play2.getName().charAt(1)){
play2.setVisible(false);
//把对方的位置给自己
play1.setBounds(play2.getX(),play2.getY(),55,55);
}
//红棋不能向下吃棋
else if (play1.getName().charAt(1) == '2' && play1.getY() > play2.getY() && play1.getName().charAt(1) != play2.getName().charAt(1)){
play2.setVisible(false);
//把对方的位置给自己
play1.setBounds(play2.getX(),play2.getY(),55,55);
}
}
//当前记录添加到集合(用于悔棋)
Var.add(String.valueOf(play1.isVisible()));
Var.add(String.valueOf(play1.getX()));
Var.add(String.valueOf(play1.getY()));
Var.add(String.valueOf(Man));
//当前记录添加到集合(用于悔棋)
Var.add(String.valueOf(play2.isVisible()));
Var.add(String.valueOf(play2.getX()));
Var.add(String.valueOf(play2.getY()));
Var.add(String.valueOf(i));
}//卒吃结束0
作业七:团队项目——Alpha版本冲刺阶段-12的更多相关文章
- 作业七:团队项目——Alpha版本冲刺阶段
本次作业为期三周时间,要求各组结合所选项目并阅读教材<构建之法>第六章内容,完成项目的Alpha版本.本阶段的主要内容如下:(20分) 1. 每天组织一次站立会议,讨论每个成员的昨天进 ...
- 作业七:团队项目——Alpha版本冲刺阶段002
今日进展:我们终于安装好了软件,今天开始进行作业设计. 今日安排:今天开始我们要开始我们的框架的设计.
- 作业七:团队项目——Alpha版本冲刺阶段-13
对项目最后进行了完善. 代码如下: public void chapRule(int Man ,JLabel play,JLabel playTake,JLabel playQ[]){ //当前状态 ...
- 作业七:团队项目——Alpha版本冲刺阶段010
今日安排:组内成员讨论 今日进程:组内成员讨论结束,并有明确的解决办法,每个人准备实践
- 作业七:团队项目——Alpha版本冲刺阶段009
今日安排:组内成员讨论 今日进度:组内成员讨论分工细节以及可能遇到的问题,并提出解决方案
- 作业七:团队项目——Alpha版本冲刺阶段008
今日进度:组内成员讨论 今日安排:组内成员分工
- 作业七:团队项目——Alpha版本冲刺阶段007
今日进展:完善游戏主体代码. 今日安排:让游戏能运行起来.
- 作业七:团队项目——Alpha版本冲刺阶段006
今日进展:完成主体代码. 今日安排:对程序主体进行编写.
- 作业七:团队项目——Alpha版本冲刺阶段005
今日进展:编写代码. 今日安排:完成开始部分代码.
随机推荐
- .net stream
流的抽象基类Stream:Stream 是所有流的抽象基类.流是字节序列的抽象概念,例如文件.输入/输出设备.内部进程通信管道或者 TCP/IP 套接字.Stream 类及其派生类提供这些不同类型的输 ...
- fool
from PIL import Imageimg = Image.open("D:\\pic2\\CZA3302.png")(w,h) = img.sizeim=img.conve ...
- 未定义标识符string
“未定义标识符string” 解决方法: 头文件加上 #include <iostream>using namespace std; string是标准库的,要加std::string, ...
- SQL查询符合条件的记录的总数
1. select count(*) from table; //统计元组个数 2. select count(列名) from table; //统计一列中值的个数 3. select co ...
- MMS源码中异步处理简析
1,信息数据的查询,删除使用AsycnQueryHandler处理 AsycnQueryHandler继承了Handler public abstract class AsyncQueryHandle ...
- 结合阿里云服务器,设置家中jetson tk1随时远程登陆
前提条件: 1.路由配置dmz主机为tk1的ip ,设置路由器中ssh 端口22的访问权限 2.有一台远程服务器,服务器安装了php可以运行php文件(我使用的是阿里云) 家中tk1配置: 脚本pyt ...
- Nodejs 高并发长链接TCP链接的服务器设计问题
最近有个项目比较棘手,nodejs的tcp服务,目前的服务器支持3W左右的客户端连接,但是客户希望能够支持30W左右,原先的模型是让客户端请求一个地址分发服务器,然后再tcp链接到不同的地址上实现高并 ...
- 遇到的sql关键字
select count(1) 相当于 select count(*) 网上有比较差别的 菜鸟不用管
- C语言打印最长字符串
编程在一个已知的字符串中找最长单词,假定字符串中只含字母和空格,空格用来分隔不同单词. ]; printf("请输入字符串:"); fgets(p, , stdin); ; ; ; ...
- hdoj 1016 Prime Ring Problem
Problem Description A ring is compose of n circles as shown in diagram. Put natural number 1, 2, ... ...