📄 j2meai.java
字号:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.util.Random;
public class j2meAI extends MIDlet
{
Display display;
canvasAI canvasai;
public j2meAI()
{
canvasai=new canvasAI();
display=Display.getDisplay(this);
}
public void startApp()
{
display.setCurrent(canvasai);
}
public void pauseApp(){}
public void destroyApp(boolean unconditional){}
class canvasAI extends Canvas
{
int i;
int j;
int viewAI;
int picture;
int goX;
int goY;
int judgeGO;
int randNum;
boolean gameOver;
Random gameRand;
runMouse runmouse;
finalRoad finalroad;
Image[] AIImage=new Image[6];
int[][] gomap={{0,1,0,1,1,0,0,0,0,0},{0,1,0,0,1,1,1,0,1,0},{0,1,1,0,1,0,0,0,1,1},
{0,0,0,0,1,0,1,0,0,0},{0,1,0,1,1,0,1,1,1,0},{0,1,0,0,0,0,1,0,1,0},
{1,1,0,1,0,1,1,0,1,0},{0,0,0,1,0,0,0,0,0,1},{0,1,1,1,0,1,1,1,0,1},
{0,0,0,1,0,0,0,1,0,100}
};
public canvasAI()
{
gameRand=new Random();
try{
AIImage[0]=Image.createImage("/wall.png");
AIImage[1]=Image.createImage("/mouse1.png");
AIImage[2]=Image.createImage("/mouse2.png");
AIImage[3]=Image.createImage("/mouse3.png");
AIImage[4]=Image.createImage("/mouse4.png");
AIImage[5]=Image.createImage("/exit.png");
}catch(Exception ex){}
init();
}
public void keyPressed(int keyCode)
{
int gameKey=getGameAction(keyCode);
if(viewAI==0)
switch(gameKey)
{
case FIRE: // '5'
runmouse=new runMouse();
runmouse.start();
runmouse=null;
break;
}
else if(viewAI==10)
switch(gameKey)
{
case FIRE: // '5'
viewAI=0;
init();
finalroad=new finalRoad();
finalroad.start();
finalroad=null;
break;
}
}
public void paint(Graphics g)
{
g.setColor(0xffffff);
g.fillRect(0,0,getWidth(),getHeight());
g.setColor(0xff0000);
g.drawRect(4,3,170,170);
for(i=0;i<10;i++)
for(j=0;j<10;j++)
if(gomap[i][j]==1)
g.drawImage(AIImage[0], 4+j*17, 3+i*17, Graphics.LEFT | Graphics.TOP);
else if(gomap[i][j]==99){
g.setColor(0x00ff00);
g.fillRect(4+17*j,3+17*i,17,17);
}
g.drawImage(AIImage[5], 4+9*17, 3+9*17, Graphics.LEFT | Graphics.TOP);
if(viewAI==0){
g.drawImage(AIImage[picture], 4+goX*17, 3+goY*17, Graphics.LEFT | Graphics.TOP);
}
else if(viewAI==10){
g.drawImage(AIImage[picture], 157, 156, Graphics.LEFT | Graphics.TOP);
g.setColor(0x0000ff);
g.fillRect(40,50,100,50);
g.setColor(0xff0000);
g.drawString("再看老鼠行径", 60, 60, Graphics.LEFT | Graphics.TOP);
}
}
private void init()
{
gomap[0][0]=2;
goX=goY=0;
picture=1;
judgeGO=2;
}
private void checkRoad()
{
if(goY+1<=9 && goY-1>=0 && goX+1<=9 && gomap[goY+1][goX]==0 && gomap[goY-1][goX]==0 && gomap[goY][goX+1]==0)
{
randNum=(int)Math.abs(gameRand.nextInt()%3);
judgeGO++;
if(randNum==0)
{
gomap[goY+1][goX]=judgeGO;
picture=1;
goY++;
}
else if(randNum==1){
gomap[goY-1][goX]=judgeGO;
picture=2;
goY--;
}
else{
gomap[goY][goX+1]=judgeGO;
picture=4;
goX++;
}
}
else if(goY+1<=9 && goX-1>=0 && goX+1<=9 && gomap[goY+1][goX]==0 && gomap[goY][goX-1]==0 && gomap[goY][goX+1]==0){
randNum=(int)Math.abs(gameRand.nextInt()%3);
judgeGO++;
if(randNum==0)
{
gomap[goY+1][goX]=judgeGO;
picture=1;
goY++;
}
else if(randNum==1){
gomap[goY][goX-1]=judgeGO;
picture=3;
goX--;
}
else{
gomap[goY][goX+1]=judgeGO;
picture=4;
goX++;
}
}
else if(goY+1<=9 && goY-1>=0 && goX-1>=0 && gomap[goY-1][goX]==0 && gomap[goY+1][goX]==0 && gomap[goY][goX-1]==0){
randNum=(int)Math.abs(gameRand.nextInt()%3);
judgeGO++;
if(randNum==0)
{
gomap[goY-1][goX]=judgeGO;
picture=2;
goY--;
}
else if(randNum==1){
gomap[goY+1][goX]=judgeGO;
picture=1;
goY++;
}
else{
gomap[goY][goX-1]=judgeGO;
picture=3;
goX--;
}
}
else if(goY-1>=0 && goX+1<=9 && goX-1>=0 && gomap[goY-1][goX]==0 && gomap[goY][goX+1]==0 && gomap[goY][goX-1]==0){
randNum=(int)Math.abs(gameRand.nextInt()%3);
judgeGO++;
if(randNum==0)
{
gomap[goY-1][goX]=judgeGO;
picture=2;
goY--;
}
else if(randNum==1){
gomap[goY][goX+1]=judgeGO;
picture=4;
goX++;
}
else{
gomap[goY][goX-1]=judgeGO;
picture=3;
goX--;
}
}
else if(goY+1<=9 && goX+1<=9 && gomap[goY+1][goX]==0 && gomap[goY][goX+1]==0){ //
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -