資源簡介
五子棋程序源碼 加 報告
五子棋程序源碼 加 報告
五子棋程序源碼 加 報告

代碼片段和文件信息
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個文件信息
評論
共有 條評論