⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 enemysprite.java

📁 J2ME编程的50个例子,适合掌上系统的编程
💻 JAVA
字号:
package demo;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.Sprite;


public class EnemySprite extends Sprite{
	private int m_nSpeedX;						//X方向运动的速度
	private int m_nLastMovX;					//X方向上次移动的距离
	private boolean m_bTran;					//控制移动动画
	EnemySprite(Image image, int frameWidth, int frameHeight) {
		super(image, frameWidth, frameHeight);
		defineReferencePixel( frameWidth / 2, frameHeight / 2 );
		setFrame(1);
		setVisible(false);
	}
	//开起敌人
	//参数nX、nY分别是敌人位置的横纵坐标
	//nSpeedX是X方向的速度
	public void Start( int nX, int nY, int nSpeedX ){
		setRefPixelPosition( nX, nY );
		m_nSpeedX 	= nSpeedX;
		m_nLastMovX	= 0;
		setVisible(true);
	}
	//反弹
	public void Rebound( ){
		m_nSpeedX = - m_nSpeedX;		
	}
	//逻辑操作,产生运动动画
	public void Logic(){
		if( !isVisible() )
			return;
		//沿速度方向前移动
		int x = getRefPixelX();
		int y = getRefPixelY();
		setRefPixelPosition(x+m_nSpeedX, y);
		m_nLastMovX = m_nSpeedX;
		if( m_bTran )
			setTransform(Sprite.TRANS_MIRROR);
		else
			setTransform(Sprite.TRANS_NONE);
		m_bTran = !m_bTran;
	}
	//向后移动
	public void MoveBack(){
		int x = getRefPixelX();
		int y = getRefPixelY();
		setRefPixelPosition(x-m_nLastMovX, y);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -