📄 rabit.java
字号:
import javax.microedition.lcdui.game.*;
import javax.microedition.lcdui.*;
import java.util.Random;
/**
*
* @author TOM
*/
public class Rabit {
private Hunt_Canvas manCanvas; //游戏画面
private int[] Locus;
private Sprite rabit; // 图象
private Random rnd; // 随机种子
private int SWidth, SHeight; // 设备屏幕的宽度与高度
private int rabitHeight,rabitWidth;
public Rabit(Hunt_Canvas manCanvas, Image img, int SWidth, int SHeight) {
this.manCanvas = manCanvas;
rabit = new Sprite(img, img.getWidth(), img.getHeight());
rabitHeight=img.getHeight();
rabitWidth=img.getWidth();
rabit.setFrame(0);
Locus = new int[3];
rnd = new Random();
this.SWidth = SWidth;
this.SHeight = SHeight;
}
// 初始化运行轨迹随机数组
public void InitRabitLocus() {
Locus[0] = (rnd.nextInt() & 0x7fffffff) % SWidth-rabitWidth; //初始X坐标值
Locus[1] = SHeight; //初始的Y坐标值
Locus[2] = -1; //y的增量
rabit.setTransform(Sprite.TRANS_NONE);
}
// 显示
public void paint(Graphics g) {
rabit.setPosition(Locus[0], Locus[1]);
rabit.paint(g);
UpdataRabitLocus(); // 更新运行轨迹数组
}
// 更新运行轨迹数组
private void UpdataRabitLocus() {
Locus[1] += Locus[2];
//超出边界的处理
if (Locus[1] <= SHeight-rabitHeight*1.2+5) {
Locus[2] = 1;
}
if(Locus[1]>SHeight+5){
InitRabitLocus();
}
}
public Sprite getRabit(){
return rabit;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -