📄 explosion.java
字号:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;
public class explosion
{
private int[][] Objects;//爆炸状态数组
//Objects[][0] -----x
//Objects[][1] -----y
//Objects[][2] -----是否存活
//Objects[][3] -----桢指示
//Objects[][4] -----sprite索引
public Sprite[] sprite;//内置的Sprite
public int currentnum;//当前活动的爆炸
public explosion()
{
Image img=null;
sprite=new Sprite[2];
try
{
img = Image.createImage("/explosion.png");
}
catch (Exception ex)
{}
sprite[0]=new Sprite(img,32,32);
Objects=new int[20][5];
currentnum=-1;
}
public void initObject(int x,int y,int imageindex)//初始化一个爆炸
{
int i;
for(i=0;i<=currentnum;i++)
{
if (Objects[i][2]==0) break;
}
if (i>currentnum)
{
currentnum++;//增加一个
Objects[currentnum][2] = 1;
Objects[currentnum][0]=x;
Objects[currentnum][1]=y;
Objects[currentnum][3]=4;
Objects[currentnum][4]=imageindex;
}
else
{
Objects[i][2] = 1;
Objects[i][0]=x;
Objects[i][1]=y;
Objects[i][3]=4;
Objects[i][4]=imageindex;
}
}
public void update()
{
int i;
for(i=0;i<=currentnum;i++)
{
if (Objects[i][2]==0)
continue;
Objects[i][3]--;
if (Objects[i][3]<0) Objects[i][2]=0;
}
}
public void paint(Graphics g)
{
for(int i=0;i<=currentnum;i++)
{
if (Objects[i][2]==0)
continue;
sprite[Objects[i][4]].setPosition(Objects[i][0],Objects[i][1]);
sprite[Objects[i][4]].setFrame(Objects[i][3]);
sprite[Objects[i][4]].paint(g);
}
}
public void reset()
{
currentnum=-1;
for(int i=0;i<Objects.length;i++)
{
Objects[i][2]=0;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -