📄 deck.java
字号:
import javax.microedition.lcdui.Graphics;
public class Deck {
static byte curStatus; /*的状态表示,如同程序基本状态一样*/
static final byte STATE1=0;//闪烁
static final byte STATE2=1;//消失
int frameIndex;
int actionIndex;
public Deck(){
setStatus(STATE1);
}
public void drawDeck(Graphics g,int x,int y){
Tools.drawNpcItemData(g,1,actionIndex,frameIndex,x,y,false);
}
public void setStatus(byte status){
if(curStatus == status){
return;
}
aniIndex = 0;
frameIndex = 0;
switch (status){
case STATE1:
actionIndex=0;
break;
case STATE2:
actionIndex=1;
break;
}
}
public void DeckLogic(){
switch (curStatus){
case STATE1:
changeRoleFrameIndex(-1);
break;
case STATE2:
break;
}
}
/**
* nextState > 0 切换状态
* nextState = -1 循环播放
* nextState < -1 停留在最后一帧
* @param nextState byte
*/
private int aniIndex; //切换帧使用到的中间过渡变量
private final void changeRoleFrameIndex(int nextState)
{
if (aniIndex >= Data.frameItemIndex[1][actionIndex].length)
{
if (nextState >= 0)
{
aniIndex = 0;
frameIndex = Data.frameItemIndex[1][actionIndex][aniIndex];
setStatus((byte)nextState);
return;
}
else if (nextState == -1)
{
aniIndex = 0;
}
else
{
return;
}
}
frameIndex = Data.frameItemIndex[1][actionIndex][aniIndex];
aniIndex++;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -