📄 secondstage.java
字号:
import javax.microedition.lcdui.game.Sprite;
import javax.microedition.lcdui.game.TiledLayer;
/*
* SecondStage.java
*
* Created on 2007年12月2日, 上午10:38
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
/**
*
* @author liang
*/
public class SecondStage extends Stage{
/** Creates a new instance of SecondStage */
// private Sprite box;
// private Sprite exit;
// private TiledLayer backgroundLayer;
private int ScreenWid;
private int ScreenHigt;
private AchieveCanvas canvas;
public SecondStage(AchieveCanvas canvas) {
this.canvas = canvas;
ScreenWid = canvas.getWidth();
ScreenHigt = canvas.getHeight();
box = new Sprite(ImageTools.createImage("/box.png"));
exit = new Sprite(ImageTools.createImage("/exit.png"));
backgroundLayer = new TiledLayer(12, 9, ImageTools.createImage("/brick.png"), 15, 15);
}
public void init() {
int[][] map1 = {
{ 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
{ 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0 },
{ 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0 },
{ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0 },
{ 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 },
{ 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 }
};
for(int i = 0; i < 9; i++){
for(int j=0;j< 12;j++)
backgroundLayer.setCell(j, i, map1[i][j]);
}
backgroundLayer.setPosition( (ScreenWid - backgroundLayer.getWidth() )/2, (ScreenHigt - backgroundLayer.getHeight())/2 );
int initX2 = backgroundLayer.getX() + 105;
int initY2 = backgroundLayer.getY() + 60;
box.setPosition(initX2, initY2);
int exitX2 = backgroundLayer.getX() + 165;
int exitY2 = backgroundLayer.getY() + 45;
exit.setPosition(exitX2, exitY2);
}
public void checkCollision(int keypressed) {
switch(keypressed){
case UPMOVE:
do{
if(box.collidesWith(exit, true)){
canvas.doStagepassing();
break;
}
canvas.repaint();
canvas.threadSleep();
box.move(0, -MOVE);
} while(!box.collidesWith(backgroundLayer,true) && !canvas.CheckOutOfEdge());
box.move(0, MOVE);
break;
case DOWNMOVE:
do{
if(box.collidesWith(exit, true)){
canvas.doStagepassing();
break;
}
canvas.repaint();
canvas.threadSleep();
box.move(0, MOVE);
}while(!box.collidesWith(backgroundLayer,true) && !canvas.CheckOutOfEdge());
box.move(0, -MOVE);
break;
case LEFTMOVE:
do{
if(box.collidesWith(exit, true)){
canvas.doStagepassing();
break;
}
canvas.repaint();
canvas.threadSleep();
box.move(-MOVE, 0);
}while(!box.collidesWith(backgroundLayer,true) && !canvas.CheckOutOfEdge());
box.move( MOVE,0 );
break;
case RIGHTMOVE:
do{
if(box.collidesWith(exit, true)){
canvas.doStagepassing();
break;
}
canvas.repaint();
canvas.threadSleep();
box.move(MOVE, 0);
} while(!box.collidesWith(backgroundLayer,true) && !canvas.CheckOutOfEdge());
box.move(-MOVE, 0);
break;
default:
break;
}
}
// public Sprite getBox(){
// return box;
// }
//
// public TiledLayer getbackgroundLayer(){
// return backgroundLayer;
// }
//
// public Sprite getExit() {
// return exit;
// }
public int getNumOfBombs() {
return 0;
}
public boolean getFlag(int n) {
return false;
}
public int getTime(int n) {
return 0;
}
public void setTime(int n) {
}
public int[] getCoordinate(int n) {
return new int[2];
}
public void setFlag(int i, boolean b) {
}
public void setLeftOfBombs() {
}
public int getLeftOfBombs() {
return -1;
}
public Sprite getPipe(int index) {
return null;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -