资源简介
JAVA写的界面相对华丽的扫雷游戏,冗余代码较多,主要是不少想实现的功能最终还是没那个耐性去写了,目前包含简单的道具功能,所有图片资源都是原创的,所以界面也只是相对不那么灰暗而已……
代码片段和文件信息
import java.util.Random;
import java.util.Timer;
public class Consts{
public int gColumn = 30; //column count of game
public int gRow = 16; //row count of game
public int mineCnt = 99; //mine count
public int gFlag; //count of flags
public int[][] grid; //grid status
public int[] mineDs; //queue of mines
public Timer tmMain;
public int timeCnt = 0;
public int actyCnt = 0;
public int defaultTimeCnt = 500;
public boolean winning = false;
public boolean losing =false;
public boolean gaming = false;
public boolean cmode = false;
public PropVar Prop; //Prop Variables
public Consts(){
Prop = new PropVar();
}
public void reset(){
Prop.reset();
this.gaming = false;
this.winning = false;
this.losing = false;
this.tmMain = new Timer();
this.tmMain.schedule(new gameTime() 1000 1000);
if(cmode)
this.timeCnt = defaultTimeCnt;
else
this.timeCnt = 0;
this.actyCnt = 0;
this.grid = new int[this.gRow][this.gColumn];
this.mineDs = new int[this.mineCnt];
this.gFlag = 0;
for(int i = 0; i < this.mineCnt; i++){
int j = new Random().nextInt(this.gColumn*this.gRow);
while(this.isMine(j)){
j = new Random().nextInt(this.gColumn*this.gRow);
}
this.mineDs[i] = j;
}
for(int i = 0; i < this.gRow; i++)
for(int j = 0; j < this.gColumn; j++){
this.grid[i][j] = 0;
}
}
public boolean isMine(int g){
for(int i = 0; i < this.mineCnt; i ++){
if(this.mineDs[i] == g)
return true;
}
return false;
}
public boolean isMine(int x int y){
if(!(exist(x y)))
return false;
return isMine(y*gColumn+x);
}
public void dieMine(int g){
for(int i = 0; i < this.mineCnt; i ++){
if(this.mineDs[i] == g)
this.mineDs[i] = -1;
}
}
public void dieMine(int x int y){
dieMine(y*gColumn+x);
}
public int countLeft(){
int left = 0;
for(int i = 0; i < gRow; i ++)
for(int j = 0; j < gColumn; j ++)
if(this.grid[i][j] == 0 || this.grid[i][j] == -5 || this.grid[i][j] == -3)
left ++;
return left;
}
public int handleGrid(int curX int curY){
int curV = 0;
if(this.grid[curY][curX] > 0 || this.grid[curY][curX] == -1)
return this.grid[curY][curX];
if(this.isMine(curY*this.gColumn+curX)){
if(this.grid[curY][curX] == -3){
this.grid[curY][curX] = -4;
}
else{
this.grid[curY][curX] = -2;
}
}else{
curV = minesArround(curX curY);
if(curV > 0){
this.grid[curY][curX] = curV;
}
else{
this.grid[curY][curX] = -1;
markArround(curX curY);
}
}
return this.grid[curY][curX];
}
public int minesArround(int curX int curY){
int curV = 0;
if(isMine(curX-1 curY-1))
curV++;
if(isMine(curX curY-1))
curV++;
if(isMine(curX+1 curY-1))
curV++;
if(isMine(curX-1 curY))
curV++;
if(isMine(curX+1 curY))
curV++;
if(isMine(curX-1 curY+1))
curV++;
if(isMine(curX curY+1))
curV++;
if(isMine(cur
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 361032 2011-11-17 20:51 MineSweeper.jar
文件 301 2011-09-29 08:54 MineSweeper\.classpath
文件 387 2011-09-27 11:07 MineSweeper\.project
文件 629 2011-09-27 11:07 MineSweeper\.settings\org.eclipse.jdt.core.prefs
文件 609 2011-11-07 21:33 MineSweeper\bin\Consts$gameTime.class
文件 938 2011-11-07 21:33 MineSweeper\bin\Consts$PropVar.class
文件 6465 2011-11-07 21:33 MineSweeper\bin\Consts.class
文件 1336 2011-11-07 21:33 MineSweeper\bin\GameWindow$1.class
文件 6459 2011-11-07 21:33 MineSweeper\bin\GameWindow$GamePanel.class
文件 649 2011-11-07 21:33 MineSweeper\bin\GameWindow$gameTime.class
文件 2820 2011-11-07 21:33 MineSweeper\bin\GameWindow$HeadPanel.class
文件 2076 2011-11-07 21:33 MineSweeper\bin\GameWindow.class
文件 370 2011-09-30 18:48 MineSweeper\bin\img\border_l.png
文件 486 2011-09-30 19:04 MineSweeper\bin\img\border_m.png
文件 347 2011-09-30 18:50 MineSweeper\bin\img\border_r.png
文件 6538 2011-10-01 15:31 MineSweeper\bin\img\btnExit.png
文件 7682 2011-10-01 15:31 MineSweeper\bin\img\btnExitH.png
文件 7003 2011-10-01 15:29 MineSweeper\bin\img\btnStart.png
文件 8185 2011-10-01 15:30 MineSweeper\bin\img\btnStartHover.png
文件 654 2011-09-30 14:42 MineSweeper\bin\img\cur_p.png
文件 103424 2011-10-01 09:58 MineSweeper\bin\img\index.png
文件 107057 2011-10-01 09:59 MineSweeper\bin\img\indexH.png
文件 3281 2011-09-29 13:05 MineSweeper\bin\img\lbcol.png
文件 3149 2011-09-29 13:06 MineSweeper\bin\img\lblapm.png
文件 203 2011-09-29 14:46 MineSweeper\bin\img\lblbg.png
文件 2804 2011-09-29 13:05 MineSweeper\bin\img\lblclk.png
文件 3816 2011-09-30 20:00 MineSweeper\bin\img\lbldj.png
文件 3510 2011-09-29 13:06 MineSweeper\bin\img\lblm.png
文件 3342 2011-09-29 13:05 MineSweeper\bin\img\lblrow.png
文件 3414 2011-09-29 13:05 MineSweeper\bin\img\lbltime.png
............此处省略152个文件信息
相关资源
- Java 魔板游戏
- JAVA实现求矩阵表示的无向图的欧拉通
- java读取写入txt文件
- OutOfMemoryError_8种典型案例分享
- JAVA经典算法90题
- mysql-connector-java-5.1.30-bin.jar
- 采用java操作neo4j数据库源码
- java操作考勤机完整版代码
- OATH标准OTP算法
- Java打飞机游戏源码+论文
- 图书管理系统java课程设计报告.
- java 图形界面 排序小应用
- JAVA—comm.jar串口通信包
- 尚硅谷java核心技术教程.txt
- 精心搜集android 12个游戏开发视频教程
- java实现基于SMO算法的SVM分类器
- java实现基于ID3算法的决策树分类器
- JAVA操作注册表的JNI库和JAR包jRegistry
- 相似图片搜索原理 Java实现源码
- Java实现的借贷管理源代码
- Java图形用户界面通讯录
- 小小工具箱-备忘录,日历,倒计时
- Android Socket源码实现与PC通讯
- Android手机版Java五子棋源代码
- java从入门到精通第三版光盘明日科技
- Java 课程表管理系统
- jsp上传头像
- 传智播客20套java项目高清视频完整源
- 房屋租赁系统
- 根据GoogleMapApi给出地名获取经纬度,
评论
共有 条评论