消消乐A2版,包含查找消除、消除动画、产生新块、下落的过程。地图生成,初始化生成没有“连续三块”的地图,有两种不同的编码方法。带演示视频,简单介绍了状态机的技术。
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 232 2017-09-10 06:00 消消乐A2版源码和演示视频xxlA2.classpath
文件 381 2018-08-22 05:12 消消乐A2版源码和演示视频xxlA2.project
文件 3187 2018-08-22 11:56 消消乐A2版源码和演示视频xxlA2incomexampleaniClearAni.class
文件 1202 2018-08-22 11:15 消消乐A2版源码和演示视频xxlA2incomexampleaniClearPoint.class
文件 2103 2018-08-22 10:18 消消乐A2版源码和演示视频xxlA2incomexampleaniInitMap.class
文件 2166 2018-08-22 11:30 消消乐A2版源码和演示视频xxlA2incomexampleaniInitMap2.class
文件 2457 2018-08-22 11:54 消消乐A2版源码和演示视频xxlA2incomexampleaniMoveAni.class
文件 1498 2018-08-22 07:12 消消乐A2版源码和演示视频xxlA2incomexampleaniMovePoint.class
文件 538 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexampleaniPoint.class
文件 857 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexampleaniRect.class
文件 1088 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexampleappex3Game.class
文件 2005 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexampleappex3GameManage.class
文件 1986 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexampleappex3GamePanel.class
文件 1632 2018-08-22 11:49 消消乐A2版源码和演示视频xxlA2incomexampleappex3GameTool.class
文件 1560 2018-08-22 11:15 消消乐A2版源码和演示视频xxlA2incomexampleappex3R.class
文件 1226 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexamplegameGameInfo.class
文件 1815 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexamplegameGameMenu.class
文件 4632 2018-08-22 11:53 消消乐A2版源码和演示视频xxlA2incomexamplegameGamePlay.class
文件 1427 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexamplegameGameResult.class
文件 1471 2018-08-22 11:41 消消乐A2版源码和演示视频xxlA2incomexamplegameXXLtouch.class
文件 2998 2017-09-10 06:03 消消乐A2版源码和演示视频xxlA2imganiclearani1.png
文件 3043 2017-09-10 06:03 消消乐A2版源码和演示视频xxlA2imganiclearani2.png
文件 9847 2018-08-22 11:04 消消乐A2版源码和演示视频xxlA2imganiclearani2design.png
文件 3043 2017-09-10 06:03 消消乐A2版源码和演示视频xxlA2imganiclearani3.png
文件 3043 2017-09-10 06:03 消消乐A2版源码和演示视频xxlA2imganiclearani4.png
文件 2994 2017-09-10 06:03 消消乐A2版源码和演示视频xxlA2imganiclearani5.png
文件 3945 2018-08-22 11:08 消消乐A2版源码和演示视频xxlA2imgclearani1.png
文件 4373 2018-08-22 11:08 消消乐A2版源码和演示视频xxlA2imgclearani2.png
文件 4497 2018-08-22 11:08 消消乐A2版源码和演示视频xxlA2imgclearani3.png
文件 4386 2018-08-22 11:14 消消乐A2版源码和演示视频xxlA2imgclearani4.png
............此处省略53个文件信息
package com.example.ani;
import java.awt.Image;
import java.util.ArrayList;
import java.util.List;
import com.example.appex3.GameTool;
//public static int GAME_SET_PLAY=1;
//public static int GAME_SET_CLEAR_START=2;
//public static int GAME_SET_CLEAR=3;
//public static int GAME_SET_MOVE_START=4;
//public static int GAME_SET_MOVE=5;
public class ClearAni {
public List clearlist = new ArrayList();
// ////////// 消除次数
public int cleartry;
public void startclear(int[][] item_ar) {
//
cleartry++;
// 如果消除了50次,不再消除
if (cleartry > 50) {
GameTool.gamestate_set = GameTool.GAME_SET_PLAY;
return;
}
clearlist.clear();
// 找消除块,找连续三块
findClear(item_ar);
findVClear(item_ar);
// 找到“连续三块”,开始消除动画
if (clearlist.size() > 0) {
GameTool.gamestate_set = GameTool.GAME_SET_CLEAR;
} else {
// 没有找到“连续三块”,返回继续游戏
GameTool.gamestate_set = GameTool.GAME_SET_PLAY;
//统计步数
GameTool.countstep();
}
}
public void addone(int x int y) {
ClearPoint cp = new ClearPoint();
cp.setxy(x y);
cp.setMaxframe(12);
cp.setState(GameTool.ANI_PALY);
clearlist.add(cp);
}
// ///////////////
// /////////////
public int count_hclear(int[][] item_ar int x int y) {
int i j;
int num = 1;// 相同个数,从1数起
i = y;
j = x;
if (x < 0 || x > 8 || y < 0 || y > 8)
return num;
//
if (item_ar[i][j] == -1)
return num;
// 求横行某个方块向右的相同个数
while (j <= 7) {
if (item_ar[i][j] == item_ar[i][j + 1]) {
num++;
j++;
} else
break;
}
return num;
}
public int count_vclear(int[][] item_ar int x int y) {
int i j;
int num = 1;// 相同个数,从1数起
i = y;
j = x;
if (x < 0 || x > 8 || y < 0 || y > 8)
return num;
//
if (item_ar[i][j] == -1)
return num;
// 求竖行某个方块向右的相同个数
while (i <= 7) {
if (item_ar[i][j] == item_ar[i + 1][j]) {
num++;
i++;
} else
break;
}
return num;
}
public void findClear(int[][] item_ar) {
int i j;
int num = 0;
for (i = 0; i < 9; i++) {
j = 0;
// 0 - 6: 前7列
while (j <= 6) {
num = count_hclear(item_ar j i);
if (num >= 3) {
// System.out.println(“clear h num “ + num);
// 保存消除方块
for (int k = 0; k < num; k++) {
addone(j + k i);
}
}
j += num;// 跳过连续的相同方块
}
}
}
public void findVClear(int[][] item_ar) {
int i j;
int num = 0;
for (j = 0; j < 9; j++) {
i = 0;
while (i < 9) {
num = count_vclear(item_ar j i);
if (num >= 3) {
// 保存消除方块
for (int k = 0; k < num; k++) {
addone(j i + k);
}
}
i += num;// 跳过连续的相同方块
}
}
}
public void anidraw( ) {
for (int i = 0; i < clearlist.size(); i++) {
ClearPoint cp = clearlist.get(i);
if (cp.state == GameTool.ANI_PALY) {
cp.paint();
}
}
}
public void updatedata(int[][] item_ar)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 232 2017-09-10 06:00 消消乐A2版源码和演示视频xxlA2.classpath
文件 381 2018-08-22 05:12 消消乐A2版源码和演示视频xxlA2.project
文件 3187 2018-08-22 11:56 消消乐A2版源码和演示视频xxlA2incomexampleaniClearAni.class
文件 1202 2018-08-22 11:15 消消乐A2版源码和演示视频xxlA2incomexampleaniClearPoint.class
文件 2103 2018-08-22 10:18 消消乐A2版源码和演示视频xxlA2incomexampleaniInitMap.class
文件 2166 2018-08-22 11:30 消消乐A2版源码和演示视频xxlA2incomexampleaniInitMap2.class
文件 2457 2018-08-22 11:54 消消乐A2版源码和演示视频xxlA2incomexampleaniMoveAni.class
文件 1498 2018-08-22 07:12 消消乐A2版源码和演示视频xxlA2incomexampleaniMovePoint.class
文件 538 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexampleaniPoint.class
文件 857 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexampleaniRect.class
文件 1088 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexampleappex3Game.class
文件 2005 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexampleappex3GameManage.class
文件 1986 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexampleappex3GamePanel.class
文件 1632 2018-08-22 11:49 消消乐A2版源码和演示视频xxlA2incomexampleappex3GameTool.class
文件 1560 2018-08-22 11:15 消消乐A2版源码和演示视频xxlA2incomexampleappex3R.class
文件 1226 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexamplegameGameInfo.class
文件 1815 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexamplegameGameMenu.class
文件 4632 2018-08-22 11:53 消消乐A2版源码和演示视频xxlA2incomexamplegameGamePlay.class
文件 1427 2018-08-22 05:13 消消乐A2版源码和演示视频xxlA2incomexamplegameGameResult.class
文件 1471 2018-08-22 11:41 消消乐A2版源码和演示视频xxlA2incomexamplegameXXLtouch.class
文件 2998 2017-09-10 06:03 消消乐A2版源码和演示视频xxlA2imganiclearani1.png
文件 3043 2017-09-10 06:03 消消乐A2版源码和演示视频xxlA2imganiclearani2.png
文件 9847 2018-08-22 11:04 消消乐A2版源码和演示视频xxlA2imganiclearani2design.png
文件 3043 2017-09-10 06:03 消消乐A2版源码和演示视频xxlA2imganiclearani3.png
文件 3043 2017-09-10 06:03 消消乐A2版源码和演示视频xxlA2imganiclearani4.png
文件 2994 2017-09-10 06:03 消消乐A2版源码和演示视频xxlA2imganiclearani5.png
文件 3945 2018-08-22 11:08 消消乐A2版源码和演示视频xxlA2imgclearani1.png
文件 4373 2018-08-22 11:08 消消乐A2版源码和演示视频xxlA2imgclearani2.png
文件 4497 2018-08-22 11:08 消消乐A2版源码和演示视频xxlA2imgclearani3.png
文件 4386 2018-08-22 11:14 消消乐A2版源码和演示视频xxlA2imgclearani4.png
............此处省略53个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)