资源简介

自己动手制作的对对碰完整源码及素材,游戏符合对对碰游戏规则,游戏开始后在规定时间内消去图案可加分,时间条读完游戏结束,具备历史记录的读取及更新功能;

资源截图

代码片段和文件信息

package 对对碰;

import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.JPanel;

public class GamePanel extends JPanel implements ActionListener MouseListenerKeyListener{

MapUtil mapUtil;
int[][] map;
Image[] pics;
int leftX=100leftY=40;
int nscore=0;
int clickXclickY;
boolean isClick = false;
public static final int EMPTY = -1W = 50;

public GamePanel(int n){
this.n = n;
mapUtil = new MapUtil(n);
mapUtil.initMap();
map = mapUtil.getMap();
pics = new Image[n-1];//一共n-1种图案
setSize(600 600);
this.setVisible(true);
this.setFocusable(true);
getPics();
while(globalSearach(1)){
globalSearach(2);
downAnimal();
updateAnimal();
}
score = 0;
HelpPanel.score.setText(0+““);
repaint();
}

private void getPics() {

for(int i=0;i pics[i] = Toolkit.getDefaultToolkit().getImage(“D://Game//SupperzzleGame//pic“+i+“.png“);
}

}

public void paint(Graphics g){

g.clearRect(0 0 700 600);

for(int i=0;i for(int j=0;j if(map[i][j]!=EMPTY){
g.drawImage(pics[map[i][j]]leftX+W*jleftY+W*iWWthis);
}else{
g.clearRect(leftX+W*jleftY+W*iW W);
}
}
}

}


public void startGame(){
this.requestFocus();
isClick = false;
while(globalSearach(1)){
globalSearach(2);
downAnimal();
updateAnimal();
repaint();
}
score = 0;
}

public void resetMap(){
isClick = false;
map = mapUtil.getResetMap();
repaint();
while(globalSearach(1)){
globalSearach(2);
downAnimal();
updateAnimal();
repaint();
}
}

@Override
public void mousePressed(MouseEvent e) {

int x = e.getX()-leftX;
int y = e.getY()-leftY;
if(x<0||y<0||x>=50*n||y>=50*n){
return ;
}
int tempX = y/W;
int tempY = x/W;


if(isClick){//第二次点击
if((tempX==clickX&&(tempY==clickY+1||tempY==clickY-1))||(tempY==clickY&&(tempX==clickX+1||tempX==clickX-1))){//如果两次点击的图案相邻

//交换
int help = map[tempX][tempY];
map[tempX][tempY] = map[clickX][clickY];
map[clickX][clickY] = help;
repaint();
if(isThreelinked(tempXtempY)||isThreelinked(clickXclickY)){//判断是否存在可消去的方块
// System.out.println(“可以消去“);
if(isThreelinked(tempXtempY)){
removeThreelinked(tempXtempY);
}
if(isThreelinked(clickXclickY)){
removeThreelinked(clickXclickY);
}
downAnimal();
updateAnimal();
repaint();
while(globalSearach(1)){
globalSearach(2);
downAnimal();
updateAnimal();
repaint();
}
}else{

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件          70  2018-12-17 22:40  使用说明.txt
     目录           0  2018-12-17 22:39  对对碰\
     文件         301  2018-12-17 10:29  对对碰\.classpath
     文件         385  2018-12-17 10:29  对对碰\.project
     目录           0  2018-12-17 22:39  对对碰\.settings\
     文件         598  2018-12-17 10:29  对对碰\.settings\org.eclipse.jdt.core.prefs
     目录           0  2018-12-17 22:39  对对碰\bin\
     目录           0  2018-12-17 22:39  对对碰\bin\对对碰\
     文件        7624  2018-12-17 22:22  对对碰\bin\对对碰\GamePanel.class
     文件        4204  2018-12-17 20:11  对对碰\bin\对对碰\HelpPanel.class
     文件        2108  2018-12-17 21:44  对对碰\bin\对对碰\MapUtil.class
     文件        2338  2018-12-17 22:29  对对碰\bin\对对碰\Myframe$1$1.class
     文件        1509  2018-12-17 22:29  对对碰\bin\对对碰\Myframe$1.class
     文件        1693  2018-12-17 22:29  对对碰\bin\对对碰\Myframe.class
     目录           0  2018-12-17 22:39  对对碰\src\
     目录           0  2018-12-17 22:39  对对碰\src\对对碰\
     文件        8051  2018-12-17 22:22  对对碰\src\对对碰\GamePanel.java
     文件        3113  2018-12-17 20:11  对对碰\src\对对碰\HelpPanel.java
     文件        1366  2018-12-17 21:44  对对碰\src\对对碰\MapUtil.java
     文件        2539  2018-12-17 22:29  对对碰\src\对对碰\Myframe.java
     目录           0  2018-12-17 22:40  素材\
     文件        4665  2018-12-17 17:16  素材\pic0.png
     文件        4008  2018-12-17 17:15  素材\pic1.png
     文件        4142  2018-12-17 17:14  素材\pic2.png
     文件        3922  2018-12-17 17:14  素材\pic3.png
     文件        4103  2018-12-17 17:14  素材\pic4.png
     文件        4209  2018-12-17 17:14  素材\pic5.png
     文件        5119  2018-12-17 17:15  素材\pic6.png
     文件        4106  2018-12-17 17:15  素材\pic7.png
     文件        4505  2018-12-17 17:14  素材\pic8.png
     文件        3952  2018-12-17 17:13  素材\pic9.png
............此处省略0个文件信息

评论

共有 条评论