?? bullet.java
字號(hào):
package planegame;
import javax.microedition.lcdui.*;
import java.util.Vector;
import java.util.*;
/**************************************************
類功能介紹:控制子彈,將所有子彈的狀態(tài)放入記錄集當(dāng)需要刷新
或更新時(shí)再取出
**************************************************/
public class bullet
{
private Vector rs=new Vector(); //存放所有子彈的記錄集
private int width,height; //屏幕的寬度高度
private Graphics g; //畫布
private Timer timer=new Timer();
private cortrol ctrl=null;
public bullet(cortrol ctrl,int width,int height)
{
this.ctrl=ctrl;
this.g=ctrl.bg;
this.width=width;
this.height=height;
timer.schedule(new createBullet(),300,300);
timer.schedule(new setBullet(),5,5);
}
public void refreshBullet(int x)
{
int row[]=null;
g.setColor(0xffffff);
for (int i=0;i<rs.size() ;i++ )
{
row=(int [])rs.elementAt(i);
g.drawLine(row[0],row[1],row[0],row[1]-10);
}
}
/**************************************************
*功能介紹:新增一顆子彈
*輸入?yún)?shù):無
*返回參數(shù):無
**************************************************/
public void addNew()
{
int x=plane.getX(); //取得飛機(jī)當(dāng)前的x軸,發(fā)射子彈時(shí)用些位置
int row[]={x,height -50}; //取得子彈發(fā)射時(shí)的高度
rs.addElement(row); //存信記錄集中
}
/**************************************************
*功能介紹:刪除一顆生命令周期已結(jié)束的子彈
*輸入?yún)?shù):記錄集的索引號(hào)
*返回參數(shù):無
**************************************************/
public void delete(int index)
{
rs.removeElementAt(index);
}
/**************************************************
類功能介紹:訂時(shí)生出子彈
**************************************************/
class createBullet extends TimerTask
{
public void run()
{
addNew();
}
};
/**************************************************
類功能介紹:設(shè)置子彈狀態(tài)
**************************************************/
class setBullet extends TimerTask
{
private int row[]=null;
public void run()
{
for (int i=0;i<rs.size() ;i++ )
{
row=(int [])rs.elementAt(i);
row[1]=row[1]-3;
if (row[1] <= 0) //如果子彈已超出屏幕視線則將它刪除
{
delete(i); //刪除子彈
}
else
{
rs.setElementAt(row,i); //把子彈往上移
}
ctrl.showCanvas(g);
}
}
};
};
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -