中国象棋----人人对战设计
学号:
系别:
姓名:
班级:
成员:
中国象棋--人人对战设计
1 、问题定义
中国象棋在单击游戏可执行文件进入游戏,游戏系统初始化游戏界面,进入游戏系统后,用户可能单击棋子,再点击相应棋子坐标或棋子,实现棋子移动、吃棋子功能。实现人机对弈。用户在对弈中,可以实现、新游戏、退出游戏功能。系统的用例图如下所示:
玩家
系统
初始化游戏界面
添加棋子
重来
悔棋
退出
移动棋子
吃棋子
图1系统用例图
2 、可行性研究
用户进入系统,进入游戏,把自己的电脑设为主机实现人机对弈。从功能上基本能满足用户的需求。性能稳定可靠。
3、需求分析
(1) 中国象棋是双方在有着9调竖线和10条横线的棋盘上对弈,竖线和横线的交叉称为棋点或对弈点,每个棋子都是在棋点上行走,而不是在方格中行走。
(2) 河界将棋盘分成两等份,每一边都有一块有9个点组成的九宫,棋子“将”,“帅”和“士”只能在九宫内移动,并且“将”和“帅”每一步只可以水平或垂直移动一个棋点;
“士”只能在九宫内移动,并且它每一步只可以沿着对角线移动一个棋点;“象”必须一次沿着对角线方向走两个棋点,但它不能过河也不能跳过或穿越障碍,即“象”不能别眼,“马”没一步只可以水平或垂直移动两个棋点,但必须按对角线向左或向右移动。中国象棋的“马”不能跳过障碍,即马不能别腿。“车”可以水平或垂直方向移动入一个无障碍的点。“炮”移动起来和车类似,但它必须跳过一个棋子来吃掉对方的一个棋子。“兵”每步只能向前移动一个棋子过河以后,它便增加了向左右移动的能力,并不允许向后移动。
系统数据流图
(1)0层数据流图
玩家
象棋单机游戏
系统
图2 0层数据流图
(2)1层数据流图
1 .象棋主框架
图3 1层数据流图
(3)2层数据流图
钮事件
图4 2层数据流图
编号
名称
内部名
输入数据流
输出数据流
备注
W01
玩家
W02
系统
编号
数据流名
内部名
组成
备注
D01
按钮信息
ae
E01||E02||E03
D02
标签信息
me
E04||E05
D03
重来按钮
anew
E01
D04
梅棋按钮
E02+E06+E07+E08
D05
退出按钮
exit
E03
D06
棋盘信息
E04+E06+E07+E08+E10
D07
单击棋子信息
E05+E06+E07+E08+E09+E10
D08
棋子信息
E05+E06+E07+E08+E10
D09
初始化信息
E01+E02+E03+E04+E05
编号
数据元素名
内部名
类型
备注
E01
重新开始
anew
JButton
E02
悔棋
repeat
JButton
E03
退出
exit
JButton
E04
棋盘
image
JLabel
E05
棋子
play
JLabel
E06
索引号
man
int(2)
E07
横坐标
Ex
int(2)
E08
纵坐标
Ey
int(2)
E09
单击棋子
chessmanclik
boolean
E10
控制玩家走棋
chessmanclick
int(2)
编号
名称
内部名
输入数据
输出数据
加工逻辑
判断按钮事件
actionperformed
D01
D03、D04、D05
重来
restart
D03
悔棋
back
D04
退出
over
D05
判断鼠标事件
mouseclicked
D02
D06、D07
闪烁
run
D07
初始化界面
chessmainframe
D09
D08
添加棋子
drawchessman
D08
棋子移动规则
D06
吃棋子规则
D07、D08
下图图5 状
中国象棋人人对战 来自淘豆网m.daumloan.com转载请标明出处.