ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:18.75KB ,
资源ID:21766155      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21766155.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(连连看J2ME源代码Word格式文档下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

连连看J2ME源代码Word格式文档下载.docx

1、* 清屏方法* param g 画笔private void clearScreen(Graphics g)g.setColor(0xffffff);g.fillRect(0, 0, width, height);g.setColor(0);public void keyPressed(int keyCode)int action = getGameAction(keyCode);switch(action)case UP:engine.moveUP();break;case DOWN:engine.moveDown();case LEFT:engine.moveLeft();case RIG

2、HT:engine.moveRight();case FIRE:engine.fire(); /选择块public void run() trywhile(true)/延时Thread.sleep(100);/每次判断逻辑engine.action();repaint();catch(Exception e)e.printStackTrace();/逻辑类源代码import java.util.*;import javax.microedition.lcdui.*;* 游戏数据和逻辑类public class GameEngine /*选中块的个数*/private int selectTil

3、eNum = 0;/第一个选择块的行号和列号/*行号*/private int firstRow;/*列号*/private int firstCol;/第二个选择块的行号和列号private int secondRow;private int secondCol;/当前选择框,默认在左上角/*当前选择框的行号*/private int cRow;/*当前选择框的列号*/private int cCol;/*最大行数*/private final int MAX_ROW = 10;/*最大列数*/private final int MAX_COL = 10;/*地图数据,0代表空,数据1-10

4、分别代表十种不同的结构*/private int map = new intMAX_ROWMAX_COL;/*随机数对象*/private Random ran = new Random();/地图区域左上角的坐标private final int LEFTX = 20;private final int LEFTY = 50;/*每个单元格的宽度*/private final int TILE_WIDTH = 20;/*每个单元格的高度*/private final int TILE_HEIGHT = 20;/*连线类型*/private int linkType;/*无法连线*/priva

5、te final int NO_LINK = 0;/*水平连线*/private final int H_LINK = 1;/*垂直联系*/private final int V_LINK = 2;/*一个拐点,先移动x*/private final int ONE_CORNER_FIRSTX = 3;/*一个拐点,先移动y*/private final int ONE_CORNER_FIRSTY = 4;/*两个拐点,待完善*/private final int TWO_CORNER = 5;* 两次拐弯的行号和列号* 数据格式为:* 第一个拐点的行号,第一个拐点的列号,第二个拐点的行号,第

6、二个拐点的列号int p = new int4;public GameEngine()/初始化地图数据initMap();* 初始化地图数据private void initMap()for(int row = 0; row map.length; row+)for(int col = 0; col maprow.length; col+)maprowcol = row + 1;/循环打乱10次int tempRow;int tempCol;int temp;for(int i = 0; i 0)cCol-;* 向右移动选择框public void moveRight()if(cCol cRo

7、w-;* 向下移动选择框public void moveDown()if(cRow c2) /第一块位于右侧for(int col = c1 - 1; col c2; col-)/如果有非空块if(mapr1col != 0)else /第一块位于左侧for(int col = c2 - 1; c1;return true;* 判断块(r1,c1)和块(r2,c2)之间是否是空列private boolean isEmptyCol(int r1,int c1,int r2,int c2)/判断是否位于同一列if(c1 != c2)if(r2 r1)/第一个块在上方for(int row = r

8、1 + 1; r2;if(maprowc1 !else/第二个块在上方for(int row = r2 + 1; r1;* 判断一个块是否为空* param r 块的行号* param c 块的列号* return true代表为空,false代表不空private boolean isEmptyCell(int r,int c)return maprc = 0;* 是否是一次转弯实现连线* return NO_LINK代表没有连线,其他值代表对应的连线类型private int isOneCornerLink(int r1,int c1,int r2,int c2)/先移动行,再移动列if(

9、isEmptyCell(r1,c2) /转折点为空if(isEmptyRow(r1,c1,r1,c2) & isEmptyCol(r1,c2,r2,c2)return ONE_CORNER_FIRSTX;/先移动列,再移动行if(isEmptyCell(r2,c1)/转折点为空if(isEmptyCol(r1,c1,r2,c1) & isEmptyRow(r2,c1,r2,c2) return ONE_CORNER_FIRSTY;/无连接return NO_LINK;* 是否经过2次转折实现连接* return true代表可以连接,false代表不能private boolean isTwo

10、CornerLink(int r1,int c1,int r2,int c2)int result;/正常情况,划分成4个方向/块1向上for(int row = r1 -1; row = 0; row-)/如果有数据不为空,则直接结束该方向的尝试/存储第一个拐点的坐标p0 = row;p1 = c1;/每次都尝试转折,则变成一个转点的操作result = isOneCornerLink(row,c1,r2,c2);/如果可以连接if(result != NO_LINK)/存储第二个拐点的位置switch(result)p2 = row;p3 = c2;p2 = r2;p3 = c1;/块1向下 MAX_ROW;/块1向左for(int col = c1 -1;p0 =

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1