资源简介
五子棋程序源码 加 报告
五子棋程序源码 加 报告
五子棋程序源码 加 报告

代码片段和文件信息
package dao;
import iniset.PropertySet;
import iniset.finals.SetDatas;
import java.awt.Cursor;
import java.awt.GridLayout;
import java.awt.Point;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.linkedList;
import javax.swing.JLabel;
import dao.popinf.PopInf;
import view.CreatWindow;
import vo.ChessPoint;
import vo.CursorsAndImg;
import vo.Enums;
import vo.sounds.Sound;
/**
* 棋盘类,继承自JLabel实现MouseListener接口是本游戏的核心部分,负责事件处理 判断
*
* @author B.Lee
* @version 2008.05.10
*/
public class Battel extends JLabel implements MouseListener {
public int dirBeginX[];
public int dirBeginY[];
public int lineBeginX[];
public int lineBeginY[];
public int offsetX[];
public int offsetY[];
public int scoreBlack[] = { 0 10 50 500 10000 };
public int scoreWhite[] = { 0 10 50 500 10000 };
private int i0 j0;
private PropertySet propertySet = null;
CreatWindow creatWindow = null;
/**
* 用于存放悔棋路径
*/
public linkedList path = new linkedList();
/**
* 是否已经分出胜负的变量
*/
boolean end;
/**
* 用来实现棋盘的按钮
*/
private ChessPoint[][] chPoint = new ChessPoint[15][15];
private Enums.chessState nowPlayer;
/**
* 构造函数
*/
public Battel(CreatWindow window) {
this.creatWindow = window;
this.setIcon(CursorsAndImg.BACK);
this.setSize(540 540);
this.setVisible(true);
GridLayout gridLayout = new GridLayout();
gridLayout.setRows(15);
gridLayout.setColumns(15);
gridLayout.setHgap(0);
gridLayout.setVgap(0);
this.setLayout(gridLayout);
for (int row = 0; row < 15; row++)
for (int col = 0; col < 15; col++) {
chPoint[row][col] = new ChessPoint(Enums.chessState.NONE new Point(
row col));
chPoint[row][col].addMouseListener(this);
this.add(chPoint[row][col]);
}
dirBeginX = new int[] { 0 0 0 1 0 14 };
dirBeginY = new int[] { 0 0 0 0 0 1 };
lineBeginX = new int[] { 0 1 0 1 1 0 };
lineBeginY = new int[] { 1 0 1 0 0 1 };
offsetX = new int[] { 1 0 1 1 -1 -1 };
offsetY = new int[] { 0 1 1 1 1 1 };
propertySet = PropertySet.getPropertySet();
// 初始化当前玩家
nowPlayer = propertySet.getFirst() == SetDatas.BLACK_FIRST ? Enums.chessState.BLACK
: Enums.chessState.WHITE;
}
// 以下为该类的其它非设置获取参数的函数
/**
* 电脑选择一个点下棋
*/
private void chosePoint() {
resetScore();
evaluate();
getMax();
}
/**
* 重新设置各点的分值
*/
private void resetScore() { // 重设分值
for (int row = 0; row < 15; row++)
for (int col = 0; col < 15; col++) {
if (getchessPoint(new Point(row col)).getState() == Enums.chessState.NONE) {
getchessPoint(new Point(row col)).setScore(0);
}
}
}
/**
* 判断并为各点打分
*/
private void evaluate() {
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 236 2008-06-27 23:08 fivegame\.classpath
文件 384 2008-06-27 23:08 fivegame\.project
文件 8020 2008-06-29 23:20 fivegame\classes\dao\Battel.class
文件 699 2008-06-29 08:54 fivegame\classes\dao\popinf\PopInf.class
文件 1801 2008-06-30 00:26 fivegame\classes\dilog\SysDilog$1.class
文件 810 2008-06-30 00:26 fivegame\classes\dilog\SysDilog$2.class
文件 782 2008-06-30 00:26 fivegame\classes\dilog\SysDilog$3.class
文件 5359 2008-06-30 00:26 fivegame\classes\dilog\SysDilog.class
文件 446 2008-06-29 08:54 fivegame\classes\iniset\finals\SetDatas.class
文件 3649 2008-06-29 22:17 fivegame\classes\iniset\PropertySet.class
文件 695 2008-06-30 02:13 fivegame\classes\view\CreatWindow$1.class
文件 1129 2008-06-30 02:13 fivegame\classes\view\CreatWindow$2.class
文件 941 2008-06-30 02:13 fivegame\classes\view\CreatWindow$3.class
文件 4461 2008-06-30 02:13 fivegame\classes\view\CreatWindow$4.class
文件 4178 2008-06-30 02:13 fivegame\classes\view\CreatWindow$5.class
文件 7179 2008-06-30 02:13 fivegame\classes\view\CreatWindow.class
文件 1330 2008-06-29 08:54 fivegame\classes\vo\ChessPoint.class
文件 1898 2008-06-30 02:14 fivegame\classes\vo\CursorsAndImg.class
文件 1056 2008-06-29 08:54 fivegame\classes\vo\Enums$chessState.class
文件 315 2008-06-29 08:54 fivegame\classes\vo\Enums.class
文件 3384 2008-06-30 00:18 fivegame\classes\vo\sounds\Music.class
文件 2746 2008-06-29 23:10 fivegame\classes\vo\sounds\Sound.class
文件 112 2008-06-30 02:19 fivegame\five.property
文件 1465 2008-06-30 01:27 fivegame\help.property
文件 3092 2008-04-25 10:40 fivegame\icon\ask.png
文件 168278 2008-05-10 09:03 fivegame\icon\back.gif
文件 1235 2008-05-10 09:16 fivegame\icon\black.gif
文件 23151 2008-05-10 16:27 fivegame\icon\boot.gif
文件 341 2008-06-13 21:14 fivegame\icon\cancel.gif
文件 145 2008-05-10 14:07 fivegame\icon\cannot.gif
............此处省略53个文件信息
相关资源
- 数学建模实验报告(八个全)
- 高频电子线路课程设计报告收音机
- 数据库课设:图书管理系统报告
- 基于web的毕业设计开题报告
- 端口扫描课程设计详细的报告
- 数字逻辑与数字系统实验报告
- 多媒体综合设计报告(附作品)
- ubuntu9.10 可加载内核模块和字符设备驱
- 编译原理课程设计:词法语法编译器
- 操作系统 LRU算法 实验报告 及 程序代
- 武汉理工大学 单片机课程设计 16*16点
- 五子棋C 源代码
- 一个测试报告的模板,有点用
- HDU 1010-2500解题报告
- 迈克尔逊干涉仪的调整与使用实验报
- 华北科技学院计算机系认识实习报告
- 学籍管理信息系统系统需求分析报告
- 五子棋游戏实现悔棋功能
- 软件工程文档模板1可行性研究报告
- MFC绘图小软件源代码(可当VC大作业用
- 利用启发式搜索解决八数码难题程序
- 留言板课程设计 报告加设计
- 数据库课程设计报告(关于房地产销
- 比较两个字符串大小汇编语言源代码
- 数据结构课程设计 公园导游图
- 购物网站开发 开题报告
- 基于Web的高校教务管理系统的设计与
- linux实验报告及心得体会
- 数据结构实验-魔王语言-源码加实验报
- 2FSK2PSK信号产生器实验实验报告
评论
共有 条评论