📄 mousesprite.java
字号:
package demo;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.Sprite;
public class MouseSprite extends Sprite{
public static final int MOUSE_SHOW = 0; //地鼠出现
public static final int MOUSE_HIDE = 1; //地鼠隐藏
public static final int MOUSE_INJURE = 2; //地鼠被打
public static final int MOUSE_STATE_NUM = 3; //状态总数
private int m_nState = MOUSE_HIDE;
private int m_nTime = 0; //控制各种状态的保持时间
public MouseSprite( Image image, int frameWidth, int frameHeight){
super(image, frameWidth, frameHeight);
defineReferencePixel(frameWidth / 2, frameHeight / 2);
setVisible(false);
}
//获取当前的地鼠状态
public int getState(){
return m_nState;
}
//设置当前的地鼠状态
public void setState( int state ){
switch( state ){
case MOUSE_SHOW:
setFrame( 2 );
m_nTime = 10;
break;
case MOUSE_HIDE:
setFrame( 1 );
break;
case MOUSE_INJURE:
setFrame( 3 );
m_nTime = 5;
break;
default:
return;
}
setVisible(true);
m_nState = state;
}
//逻辑操作,产生并控制地鼠各种状态的动画
public void Logic(){
int n = getFrame();
switch( m_nState ){
case MOUSE_SHOW:
if( n > 0 )
setFrame( n - 1 );
m_nTime --;
if( m_nTime < 0 )
setState( MOUSE_HIDE );
break;
case MOUSE_HIDE:
if( n < 2 )
setFrame( n + 1 );
else
setVisible(false);
break;
case MOUSE_INJURE:
m_nTime --;
if( m_nTime < 0 )
setState( MOUSE_HIDE );
break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -