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

📄 alien.java

📁 小蜜蜂打飞机的游戏 很老的游戏了
💻 JAVA
字号:
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.Sprite;
import java.util.Vector;

public class Alien extends Sprite
{
  protected static final int RAW_FRAMES=2;
  protected static final int START_FRAME=0;
  protected static final int END_FRAME=1;
  protected int xPos=0;
  protected int yPos=0;
  protected static int currentAlien=0;
  
  protected static int rows=2;
  protected static int cols=3;
  
  protected static int colOffset=3;
  protected static int rowOffset=3;
  protected static int yOffset=0;
  protected static VaderCanvas gameCanvas;
  protected static VaderManager layerManager;

  protected static boolean direction=true;
  protected static boolean isEnd=true;

 
  public Alien(Image image, int width, int height, int xPos, int yPos)
  {
    super (image,width,height);
    gameCanvas=layerManager.getGameCanvas();
    defineCollisionRectangle(getWidth()/10, getHeight()/10,getWidth()-(getWidth()/10), getHeight()-(getHeight()/10));
    setPosition(xPos, yPos);
  }
  
  public static void setDirection(boolean dir)					{direction=dir;} 
  public static void setEnd(boolean end)						{isEnd=end;}  
  public static int getRows()									{return rows;}
  public static int getCols()									{return cols;}
  public static void setCols(int c)								{cols=c;}
  public static void setRows(int r)								{rows=r;}
  public static void setLayerManager(VaderManager manager)		{layerManager=manager;}
  public void setY(int y)										{setPosition(getX(), getY()+y);}
	
  public void backwards()
  {
    prevFrame();
    move(-2, 0);        
  }
  public void forwards()
  {
    nextFrame();
    move(2, 0);
    
  }
  private void setDirection()
  {  		
	if((getX()+getWidth())>=gameCanvas.getWidth())
	{
		setEnd(false);
		//setYOffset();		
	}
	else if(getX()<0)
	{
		setEnd(true);
		//setYOffset();
	}  	
  }
  private void setYOffset()
  {
  	yOffset+=3;
  	//setPosition(getX(), getY()+yOffset);
  	//move(0,yOffset);	  	
  }
  public void move()
  {  	
  	if(direction)
  	{
  		forwards();
  	}
  	else
  	{
  		backwards();
  	}  	

  }
  public void tick()
  {      
	currentAlien++;
	move();	  
	
	int aCount=layerManager.vtrAliens.size();
	if(currentAlien>=aCount)
	{		
		currentAlien=0;
		setDirection(isEnd);
		//setYOffset();
	}
	
	int bCount=layerManager.vtrBullets.size();
    Bullet bullet; 
            
	for (int b=0;b<bCount;b++)
	{
		bullet=(Bullet)layerManager.vtrBullets.elementAt(b);
		if(collidesWith(bullet,false))
		{	
			layerManager.removeLayer(this);
			layerManager.removeLayer(bullet);						
			layerManager.setScore(layerManager.getScore()+10);
			if(--bCount<=0)
			{
				break;
			}
		}
	}	
	setDirection();
  }
}

⌨️ 快捷键说明

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