?? tanksprite.java
字號(hào):
/**********************************************************
File name:TankSprite.java
Author:夏文濤
Version:Beta1.0
Data:2007/10/16
Description:
坦克精靈處理,包括坦克的能力數(shù)據(jù)處理,移動(dòng)動(dòng)畫處理,移動(dòng)
物品的裝備與刪除
*********************************************************/
package com.Izual.MetalMax;
import java.io.IOException;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.Sprite;
public class TankSprite extends Sprite implements IData {
private static String tankName = "Tank01"; /*坦克名稱*/
private static int nw = 0; /*坦克現(xiàn)有重量*/
private static int max = 0; /*坦克最大載重量*/
private static int di = 0; /*坦克剩余載重量*/
private int tankItem[] = { 1, 2, 3, 4, 5, 6, 7, 8 }; /*坦克現(xiàn)有的工具物品*/
private int tankEquItem[] = { 1, 2, 3, 4, 5, 6, 7, 8 };/*坦克現(xiàn)有的裝備物品*/
private int tankEqu[] = { 0, 0, 0, 0, 0, 0 }; /*坦克已裝備的物品*/
private int mDir = -1; /*坦克的方向*/
private int mSpeed = 2; /*坦克移動(dòng)速度*/
private int screenWidth = MapManager.screenWidth, /*屏幕大小*/
screenHeight = MapManager.screenHeight;
public static boolean mapChanged = false; /*地圖是否切換*/
private static int maxSp = 0; /*坦克最大裝甲量*/
private static int sp = 0; /*坦克現(xiàn)有裝甲量*/
/*坦克四方向移動(dòng)時(shí)的動(dòng)畫數(shù)組*/
int nowdown[] = { 0, 0, 1, 1, 2, 2, 3, 3 };
int nowleft[] = { 4, 4, 5, 5, 6, 6, 7, 7 };
int nowright[] = { 8, 8, 9, 9, 10, 10, 11, 11 };
int nowup[] = { 12, 12, 13, 13, 14, 14, 15, 15 };
/*坦克主炮的數(shù)據(jù)*/
private static int mainAt = 0;
private static int mainDf = 0;
private static int mainWei = 0;
private static int mainNum = 0;
private static int mainMaxNum = 0;
private static String mainName = "";
private static int mainState = 0;
/*坦克副炮的數(shù)據(jù)*/
private static int viceAt = 0;
private static int viceDf = 0;
private static int viceWei = 0;
// private static int viceNum = 0;
private static String viceName = "";
private static int viceState = 0;
/*坦克SE的數(shù)據(jù)*/
private static int seAt = 0;
private static int seDf = 0;
private static int seWei = 0;
private static int seNum = 0;
private static int seMaxNum = 0;
private static String seName = "";
private static int seState = 0;
/*坦克C裝置的數(shù)據(jù)*/
private static int cmDf = 0;
private static int cmWei = 0;
private static String cmName = "";
private static int cmState = 0;
/*坦克發(fā)動(dòng)機(jī)的數(shù)據(jù)*/
private static int motCa = 0;
private static int motDf = 0;
private static int motWei = 0;
private static String motName = "";
private static int motState = 0;
/*坦克地盤的數(shù)據(jù)*/
private static int bedNum = 0;
private static int bedMaxNum = 0;
private static int bedrockDf = 0;
private static int bedrockWei = 0;
private static String bedrockName = "";
private static int bedrockState = 0;
private static int tankState = 0; /*坦克狀態(tài)*/
public int pX = 80, pY = 48; /*坦克坐標(biāo)*/
/*構(gòu)造函數(shù),初始化裝甲數(shù)據(jù)*/
public TankSprite(Image img, int w, int h) {
super(img, w, h);
setPosition(pX, pY);
max = getMotCa(); /*坦克最大載重量等于發(fā)動(dòng)機(jī)的載重量*/
nw = getMainWei() + getViceWei() + getSeWei() + getMotWei()
+ getCmWei() + getBedRockWei(); /*坦克現(xiàn)在的重量,各個(gè)裝備重量之和*/
di = max - nw; /*坦克剩余載重量*/
maxSp = di; /*最大裝甲數(shù)等于坦克剩余載重量*/
}
/*-------------------以下為set類---------------------------*/
/*更新坦克主炮攻擊力*/
public static void setMainAt(int newMainAt) {
mainAt = newMainAt;
}
/*更新坦克主炮防御力*/
public static void setMainDf(int newMainDf) {
mainDf = newMainDf;
}
/*更新坦克主炮現(xiàn)有彈藥數(shù)*/
public static void setMainNum(int newMainNum) {
mainNum = newMainNum;
}
/*更新坦克主炮最大彈藥數(shù)*/
public static void setMainMaxNum(int newMainMaxNum) {
mainMaxNum = newMainMaxNum;
}
/*更新坦克主要重量*/
public static void setMainWei(int newMainWei) {
mainWei = newMainWei;
}
/*更新坦克主炮名稱*/
public static void setMainName(String newMainName) {
mainName = newMainName;
}
/*更新坦克主炮狀態(tài)*/
public static void setMainState(int newMainState) {
mainState = newMainState;
}
/*更新坦克副炮攻擊力*/
public static void setViceAt(int newViceAt) {
viceAt = newViceAt;
}
/*更新坦克副炮防御力*/
public static void setViceDf(int newViceDf) {
viceDf = newViceDf;
}
/*更新坦克副炮的彈藥數(shù),副炮彈藥一般都為無(wú)限多,省略
public static void setViceNum(int newViceNum){
viceNum = newViceNum;
}*/
/*更新坦克副炮重量*/
public static void setViceWei(int newViceWei) {
viceWei = newViceWei;
}
/*更新坦克副炮名稱*/
public static void setViceName(String newViceName) {
viceName = newViceName;
}
/*更新坦克副炮狀態(tài)*/
public static void setViceState(int newViceState) {
viceState = newViceState;
}
/*更新坦克SE攻擊力*/
public static void setSeAt(int newSeAt) {
seAt = newSeAt;
}
/*更新坦克SE防御力*/
public static void setSeDf(int newSeDf) {
seDf = newSeDf;
}
/*更新坦克SE的現(xiàn)有彈藥數(shù)*/
public static void setSeNum(int newSeNum) {
seNum = newSeNum;
}
/*更新坦克SE的最大彈藥數(shù)*/
public static void setSeMaxNum(int newSeMaxNum) {
seMaxNum = newSeMaxNum;
}
/*更新坦克SE的重量*/
public static void setSeWei(int newSeWei) {
seWei = newSeWei;
}
/*更新坦克SE的名稱*/
public static void setSeName(String newSeName) {
seName = newSeName;
}
/*更新坦克SE的狀態(tài)*/
public static void setSeState(int newSeState) {
seState = newSeState;
}
/*更新坦克C裝置的防御力*/
public static void setCmDf(int newCmDf) {
cmDf = newCmDf;
}
/*更新坦克C裝置的狀態(tài)*/
public static void setCmWei(int newCmWei) {
cmWei = newCmWei;
}
/*更新坦克C裝置的名稱*/
public static void setCmName(String newCmName) {
cmName = newCmName;
}
/*更新坦克C裝置的狀態(tài)*/
public static void setCmState(int newCmState) {
cmState = newCmState;
}
/*更新坦克發(fā)動(dòng)機(jī)的防御力*/
public static void setMotDf(int newMotDf) {
motDf = newMotDf;
}
/*更新坦克發(fā)動(dòng)機(jī)的重量*/
public static void setMotWei(int newMotWei) {
motWei = newMotWei;
}
/*更新坦克發(fā)動(dòng)機(jī)的名稱*/
public static void setMotName(String newMotName) {
motName = newMotName;
}
/*更新坦克發(fā)動(dòng)機(jī)的載重量*/
public static void setMotCa(int newMotCa) {
motCa = newMotCa;
}
/*更新坦克發(fā)動(dòng)機(jī)的狀態(tài)*/
public static void setMotState(int newMotState) {
motState = newMotState;
}
/*更新坦克地盤的防御力*/
public static void setBedRockDf(int newBedRockDf) {
bedrockDf = newBedRockDf;
}
/*更新坦克地盤的現(xiàn)有彈藥數(shù)(指特殊炮彈)*/
public static void setBedRockNum(int newBedRockNum) {
bedNum = newBedRockNum;
}
/*更新坦克地盤的最大彈藥數(shù)(指特殊炮彈)*/
public static void setBedRockMaxNum(int newBedRockMaxNum) {
bedMaxNum = newBedRockMaxNum;
}
/*更新坦克地盤的重量*/
public static void setBedRockWei(int newBedRockWei) {
bedrockWei = newBedRockWei;
}
/*更新坦克地盤的名稱*/
public static void setBedRockName(String newBedRockName) {
bedrockName = newBedRockName;
}
/*更新坦克地盤的狀態(tài)*/
public static void setBedRockState(int newBedRockState) {
bedrockState = newBedRockState;
}
/*更新坦克的現(xiàn)有裝甲量*/
public static void setTankSp(int newTankSp) {
TankSprite.sp = Math.min(newTankSp, maxSp);
}
/*更新坦克的最大裝甲量*/
public static void setTankMaxSp(int newMaxSp) {
maxSp = newMaxSp;
}
/*更新坦克的現(xiàn)有重量*/
public static void setTankNw(int newNw) {
nw = newNw;
}
/*更新坦克的最大承載量*/
public static void setTankMax(int newMax) {
max = newMax;
}
/*更新坦克的狀態(tài)*/
public static void setTankState(int newTankState) {
tankState = newTankState;
}
/*--------------------以下get類----------------------------------*/
/*獲取坦克主炮的攻擊力*/
public static int getMainAt() {
return mainAt;
}
/*獲取坦克主炮的防御力*/
public static int getMainDf() {
return mainDf;
}
/*獲取坦克主炮的現(xiàn)有彈藥數(shù)*/
public static int getMainNum() {
return mainNum;
}
/*獲取坦克主炮的最大彈藥數(shù)*/
public static int getMainMaxNum() {
return mainMaxNum;
}
/*獲取坦克主炮的重量*/
public static int getMainWei() {
return mainWei;
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -