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

📄 gamechar.java

📁 智益类游戏
💻 JAVA
字号:
import java.io.IOException;

import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.Sprite;


public class gameChar extends Sprite 
{
	public static final int GAME_STATUS_NORM=0;
	public static final int GAME_STATUS_CONF=1;
	public static final int GAME_STATUS_SPEEDUP=2;
	private int gameStatus=GAME_STATUS_NORM;
	private int state=0;
	int x,y;
	private int[] stand={0};
	private int[] left={1,1,2,2,3,3,4,4};
	private int[] right={5,5,6,6,7,7,8,8};
	private int[] jump={9,9,10,10,11,11,12,12};
	private int jump_distance=0;
	private int gameCharLife=3;
	private int statustime=0;
	static Image img=null;

	static
	{
		try 
		{
			img=Image.createImage("/res/char.png");
		}
		catch (IOException e)
		{
			// TODO 自动生成 catch 块
			e.printStackTrace();
		} 
	}
	public gameChar(int X,int Y) 
	{
		super(img,16,17);
		this.x=X;
		this.y=Y-17;
		this.setPosition(x, y);
		this.setFrameSequence(stand);
		this.defineCollisionRectangle(1, 16, 15, 1); 
	}
	public void setCharLife(boolean b)
	{
		if(b)
		{
			if(gameCharLife<3)
				gameCharLife++;
		}
		else
			gameCharLife--;
	}
	public int getCharLife(){return gameCharLife;}
	public void statusTimeGo(){
		if(statustime>0)
		statustime--;
		else
			{statustime=0;
			gameStatus=GAME_STATUS_NORM;
			}
		
	}
	public void setGameStatus(int st){
		switch(st){
		case GAME_STATUS_NORM:
			gameStatus=st;
			break;
		case GAME_STATUS_CONF:
			gameStatus=st;
			statustime=150;
			break;
		case GAME_STATUS_SPEEDUP:
			gameStatus=st;
			statustime=150;
			break;
		}
	}
	public int getGameStatus(){return gameStatus;}
	
	public void Up(int Y)
	{
		y=Y-17;
		this.setPosition(x,y);
	}
	public void Left()
	{   //left
		switch(gameStatus)
		{
			case GAME_STATUS_NORM:
				x-=2;
				break;
			case GAME_STATUS_CONF:
				x+=2;
				break;
			case GAME_STATUS_SPEEDUP:
				x-=4;
				break;
		}
		if(x<8)x=8;
		if(x>148)x=148;
		 this.setPosition(x,y);
	}
	public void Right()
	{  //right
		switch(gameStatus)
		{
			case GAME_STATUS_NORM:
				x+=2;
				break;
			case GAME_STATUS_CONF:
				x-=2;
				break;
			case GAME_STATUS_SPEEDUP:
				x+=4;
				break;
		}
		if(x<8)x=8;
		if(x>148)x=148;
		this.setPosition(x,y);
	}
	public void roll(boolean b)
	{  
		if(b)
			x--;
		else
			x++;
		this.setPosition(x,y);
	}
	//down
	public void down()
	{    //掉落
		if(jump_distance<8)
		{
			jump_distance++;
			y-=3;
		}
		else 
		{
			y+=3;
		}
		
		this.setPosition(x,y);
	}
	public void jump()
	{   
		//跳起
		jump_distance=0;
		y-=5;
		this.setPosition(x,y);
	}
	public boolean isDead()
	{
		if(y<35||y>180||gameCharLife<1)
			return true;
		else
			return false;
	}
	//设置人物的动画
	 public void setAct(int i,boolean isOnFlat)
	   {
		   switch(i)
		   {
		   case 0:
		   if(state!=i)
		   {
			   this.setFrameSequence(left);
			   state=i;
		   }
		   break;
		   case 1:
			   if(state!=i)
			   {
				   this.setFrameSequence(right);
				   state=i;
			   }
			   break;
		   case 2:
		     if(isOnFlat)
			   this.setFrameSequence(stand);
		     else
			   {
		    	 if(state!=i)
				   this.setFrameSequence(jump);
			   }
				   
				   state=i;
				  
			   
			   break;
		   }
	   }

}

⌨️ 快捷键说明

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