求j2me小游戏源代码

问题描述

本人急需一个j2me小游戏源代码,希望可以共享一下

解决方案

解决方案二:
importjava.util.*;importjavax.microedition.lcdui.*;/***贪吃蛇游戏*/publicclassSnakeCanvasextendsCanvasimplementsRunnable{/**存储贪吃蛇节点坐标,其中第二维下标为0的代表x坐标,第二维下标是1的代表y坐标*/int[][]snake=newint[200][2];/**已经使用的节点数量*/intsnakeNum;/**贪吃蛇运动方向,0代表向上,1代表向下,2代表向左,3代表向右*/intdirection;/*移动方向*//**向上*/privatefinalintDIRECTION_UP=0;/**向下*/privatefinalintDIRECTION_DOWN=1;/**向左*/privatefinalintDIRECTION_LEFT=2;/**向右*/privatefinalintDIRECTION_RIGHT=3;/**游戏区域宽度*/intwidth;/**游戏区域高度*/intheight;/**蛇身单元宽度*/privatefinalbyteSNAKEWIDTH=15;/**是否处于暂停状态,true代表暂停*/booleanisPaused=false;/**是否处于运行状态,true代表运行*/booleanisRun=true;/**时间间隔*/privatefinalintSLEEP_TIME=300;/**食物的X坐标*/intfoodX;/**食物的Y坐标*/intfoodY;/**食物的闪烁控制*/booleanb=true;/**Random对象*/Randomrandom=newRandom();publicSnakeCanvas(){//初始化init();width=this.getWidth();height=this.getHeight();//启动线程newThread(this).start();}/***初始化开始数据*/privatevoidinit(){//初始化节点数量snakeNum=7;//初始化节点数据for(inti=0;i<snakeNum;i++){snake[i][0]=100-SNAKEWIDTH*i;snake[i][1]=40;}//初始化移动方向direction=DIRECTION_RIGHT;//初始化食物坐标foodX=100;foodY=100;}protectedvoidpaint(Graphicsg){//清屏g.setColor(0xffffff);g.fillRect(0,0,width,height);g.setColor(0);//绘制蛇身for(inti=0;i<snakeNum;i++){g.fillRect(snake[i][0],snake[i][1],SNAKEWIDTH,SNAKEWIDTH);}//绘制食物if(b){g.fillRect(foodX,foodY,SNAKEWIDTH,SNAKEWIDTH);}}privatevoidmove(intdirection){//蛇身移动for(inti=snakeNum-1;i>0;i--){snake[i][0]=snake[i-1][0];snake[i][1]=snake[i-1][1];}//第一个单元格移动switch(direction){caseDIRECTION_UP:snake[0][1]=snake[0][1]-SNAKEWIDTH;break;caseDIRECTION_DOWN:snake[0][1]=snake[0][1]+SNAKEWIDTH;break;caseDIRECTION_LEFT:snake[0][0]=snake[0][0]-SNAKEWIDTH;break;caseDIRECTION_RIGHT:snake[0][0]=snake[0][0]+SNAKEWIDTH;break;}}/***吃掉食物,自身增长*/privatevoideatFood(){//判别蛇头是否和食物重叠if(snake[0][0]==foodX&&snake[0][1]==foodY){snakeNum++;generateFood();}}/***产生食物*说明:食物的坐标必须位于屏幕内,且不能和蛇身重合*/privatevoidgenerateFood(){while(true){foodX=Math.abs(random.nextInt()%(width-SNAKEWIDTH+1))/SNAKEWIDTH*SNAKEWIDTH;foodY=Math.abs(random.nextInt()%(height-SNAKEWIDTH+1))/SNAKEWIDTH*SNAKEWIDTH;booleanb=true;for(inti=0;i<snakeNum;i++){if(foodX==snake[i][0]&&snake[i][1]==foodY){b=false;break;}}if(b){break;}}}/***判断游戏是否结束*结束条件:*1、蛇头超出边界*2、蛇头碰到自身*/privatebooleanisGameOver(){//边界判别if(snake[0][0]<0||snake[0][0]>(width-SNAKEWIDTH)||snake[0][1]<0||snake[0][1]>(height-SNAKEWIDTH)){returntrue;}//碰到自身for(inti=4;i<snakeNum;i++){if(snake[0][0]==snake[i][0]&&snake[0][1]==snake[i][1]){returntrue;}}returnfalse;}/***事件处理*/publicvoidkeyPressed(intkeyCode){intaction=this.getGameAction(keyCode);//改变方向switch(action){caseUP:if(direction!=DIRECTION_DOWN){direction=DIRECTION_UP;}break;caseDOWN:if(direction!=DIRECTION_UP){direction=DIRECTION_DOWN;}break;caseLEFT:if(direction!=DIRECTION_RIGHT){direction=DIRECTION_LEFT;}break;caseRIGHT:if(direction!=DIRECTION_LEFT){direction=DIRECTION_RIGHT;}break;caseFIRE://暂停和继续isPaused=!isPaused;break;}}/***线程方法*使用精确延时*/publicvoidrun(){try{while(isRun){//开始时间longstart=System.currentTimeMillis();if(!isPaused){//吃食物eatFood();//移动move(direction);//结束游戏if(isGameOver()){break;}//控制闪烁b=!b;}//重新绘制repaint();longend=System.currentTimeMillis();//延时if(end-start<SLEEP_TIME){Thread.sleep(SLEEP_TIME-(end-start));}}}catch(Exceptione){}}}

importjava.util.Random;importjavax.microedition.lcdui.Canvas;importjavax.microedition.lcdui.Display;importjavax.microedition.lcdui.Graphics;importjavax.microedition.midlet.MIDlet;publicclassSnakeMidletextendsMIDlet{//SnakeCanvasdisplayable=newSnakeCanvas();SnakeCanvasdisplayable=newSnakeCanvas();publicSnakeMidlet(){Display.getDisplay(this).setCurrent(displayable);}publicvoidstartApp(){}publicvoidpauseApp(){}publicvoiddestroyApp(booleanunconditional){}}

碰撞有点小错,自己改吧
解决方案三:
就在csdn下吧
解决方案四:
好多的,自己搜一下啊
解决方案五:
re引用3楼tiewantn的回复:

好多的,自己搜一下啊

解决方案六:
额!资源好少啊、、、、、、、、
解决方案七:
自己写一个,不是很难的用vector如果怕vector效率低,自己写一个容器就可以了
解决方案八:
假如运行,打包后再上传,我觉得会好些!
解决方案九:
vector在JDK现在的版本好像不经常用的,用collection怎么实现呢?
解决方案十:
2楼的游戏很经典。
解决方案十一:
在下,小白,请问下载了代码要怎么用阿,求大虾指点~

时间: 2024-09-16 06:30:58

求j2me小游戏源代码的相关文章

求j2me 棋牌游戏-斗地主 的算法?

问题描述 求j2me棋牌游戏-斗地主的算法? 解决方案 解决方案二:算法解决方案三:代码例子解决方案四:首先是,判断牌的大小然后,电脑AI,出牌,跟牌,再,出牌的AI,放下家?正常出牌,按照手上牌优先出的顺序出跟牌的AI,有的比他大的,判断是否要打,还是不打解决方案五:要源代码例子解决方案六:竹木一瓜;看过你的回复,首先谢谢.如果.你能贴出点,实现方法的代码更好.解决方案七:这玩意儿要收费的解决方案八:/***规则判断**@authorzg.shi*/publicinterfaceRule{pu

java-如题比如我下了一个JAVA小游戏源代码照着写就能运行了吗

问题描述 如题比如我下了一个JAVA小游戏源代码照着写就能运行了吗 比如说俄罗斯方块,五子棋 等我该注意什么问题呢,大神们我知道我的问题对你们来说都是小问题,新手求科普 解决方案 看来你还没有做过游戏方面的东西吧.一般而言,游戏不止有代码,同样的还必须有图片资源,你想一下不然游戏的美工不就只有喝西北风了!!当然也有例外,比如你完全只是调用一些简单的几何图形函数就不会用到图片资源.但是这种游戏几乎没有!所以你要看代码中调用图片资源没有,如果有,还要找到图片资源,同时还要看用到其他的库没有,如果用到

求一个小项目源代码,最好struts+jdbc+mysql+jsp 最好有增删改等功能! 谢谢各位啦!lql20121201@163.com 急用!谢啦~

问题描述 求一个小项目源代码,最好struts+jdbc+mysql+jsp最好有增删改等功能!谢谢各位啦!lql20121201@163.com急用!谢啦~

J2ME小游戏-fly

1.FlyMidlet.java package fly; import javax.microedition.midlet.*;import javax.microedition.lcdui.*;import java.util.*; /** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2004</p> * <p>Compan

Java太阳系小游戏分析和源码详解_java

最近看了面向对象的一些知识,然后跟着老师的讲解做了一个太阳系各行星绕太阳转的小游戏,来练习巩固一下最近学的知识: 用到知识点:类的继承.方法的重载与重写.多态.封装等 分析: 1.需要加载图片.画图 2.建一个面板,主页面 3.行星类 效果图: 先看一下源码结构图: 现在逐步分析各个类的功能: 1)工具类-----util包中     --Constant类   封装了游戏中用到的常量     --GameUtil类  封装了游戏的图片加载功能     --MyFrame类  封装了游戏面板的构

音频-我用java写了一个小游戏,想插入背景音乐但不太会,求指教

问题描述 我用java写了一个小游戏,想插入背景音乐但不太会,求指教 package text; import java.io.*; import javax.sound.sampled.*; public class text { public static void main(String[] args) { // TODO Auto-generated method stub //创建一个实例 AePlayWave apw = new AePlayWave("G:\照片\Sleep Awa

J2ME 2D小游戏入门之旅(七) 不足多多,你认为呢?

七.不足多多,你认为呢? 游戏已经成型了,冲杯咖啡犒劳一下自己吧.呵呵还是算了,咖啡因对下一代不好. 当你看完以上的所有,你有什么想法呢?不要说没有.你一定是像我一样揣着一份完成clone作品的兴奋和无数的疑问吧.关于游戏性.游戏引擎等种种的问题接踵而来,甚至你可能还会想到这么个游戏有没有市场?让我们在睡前一起苦恼一下吧. 系统构架方面 我们将来的游戏不会像现在这样直来直去,需要有欢迎界面,loading等待,帮助,画面切换等等,那时候我们的Navigate就不是现在这副空架子了. 顺便再谈一个

编译码 vhdl源程序-用VHDL语言编写打砖块小游戏,求程序啊!

问题描述 用VHDL语言编写打砖块小游戏,求程序啊! 界面下面有一个挡板,用来反弹小球,打掉的砖块会消掉,有背景音乐,求程序 解决方案 http://www.pudn.com/downloads575/sourcecode/game/detail2362465.html

骰子小游戏,网格编程和多线程的应用,报很多错求帮助,又空指针又链接出错的!!!!

问题描述 骰子小游戏,网格编程和多线程的应用,报很多错求帮助,又空指针又链接出错的!!!! package com.zhouqy.client; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.net