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

📄 eventsprite.java

📁 利用J2ME复刻FC经典RPG游戏<<重装机兵>>,基本实现了 该游戏的所有功能,如碰撞探测,地图转换,NPC对话,商店处理, 事件处理,横版回合制战斗系统,随机遇敌,并根
💻 JAVA
字号:
/**********************************************************
  
 File name:EventSprite.java
 
 Author:夏文涛
 
 Version:Beta1.0
 
 Data:2007/10/16
  
 Description:
 
    事件精灵,用于记录事件位置,以及所触发的事件类型.
    事件编号在1到100之间的暂定为地图切换.
    事件编号在100以上的暂定为呼叫商店.
    
 Function List:
 
    1.getEvent()     获取事件编号.

  
 *********************************************************/

package com.Izual.MetalMax;

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

public class EventSprite extends Sprite implements IData {

	private int mapID;   /*地图编号*/
	
	private int eventID; /*事件编号*/
	
	/*构造函数,输入事件图片,精灵大小(长宽)值,地图编号,事件精灵编号编号*/
	public EventSprite(Image img,int w,int h,int mapID,int eventID) {
		// TODO 自动生成构造函数存根
		
		/*继承Sprite的构造函数,输入图片,精灵大小(长宽)值*/
		super(img,w,h);
		
		/*初始赋值*/
		this.mapID = mapID;
		this.eventID = eventID;
		
		/*根据地图编号设置事件精灵触发位置*/
		switch(mapID){
		
		case WORLD_MAP:
				
			switch(eventID){
			
			case 0:
		
		    	setPosition(5*16,1*16); /*地图切换到拉多镇*/
				
				break;
				
			case 1:
			
	 			setPosition(6*16,1*16); /*地图切换到拉多镇*/
				
				break;
				
			case 2:
				
				setPosition(12*16,13*16); /*地图切换到Tank1_1f*/
				
				break;
				
			case 3:
				
				setPosition(13*16,13*16); /*地图切换到Tank1_1f*/
				
				break;
				
			case 4:
				
				break;

			case 5:
				
				break;				

			case 6:
				
				break;
				
			}
			break;
			
		case LADUO_MAP:		

			switch(eventID){
			
			case 0:
		
				setPosition(9*16,12*16); /*地图切换到主角家1F*/
				
				break;
				
			case 1:
			
				setPosition(4*16,11*16); /*地图切换到赏金猎人商店*/
				
				break;
				
			case 2:
				
				setPosition(4*16,8*16); /*地图切换到人类工具店*/
				
				break;
				
			case 3:
				
				setPosition(8*16,6*16); /*地图切换到酒馆*/
				
				break;
				
			case 4:
				
				setPosition(14*16,4*16); /*地图切换到旅店*/
				
				break;
				
			case 5:
				
				setPosition(17*16,4*16); /*地图切换到传送*/
				
				break;
				
			case 6:
				
				setPosition(20*16,4*16); /*地图切换到明齐博士*/
				
				break;

			default:
				
				break;
			}
			break;
		
		case ZHUJUE_1F_MAP:		

			switch(eventID){
			
			case 0:
		
				setPosition(7*16,15*16); /*地图切换到拉多镇*/
				
				break;
				
			case 1:
			
				setPosition(3*16,10*16); /*地图切换到主角家2F*/
				
				break;
				
			case 2:
				
				setPosition(6*16,6*16); /*商店-物品寄存*/
				
				break;
				
			case 3:
				
				setPosition(8*16,6*16); /*商店-战车补给*/
				
				break;
				

			case 4:
				
				break;

			case 5:
				
				break;				

			case 6:
				
				break;
				
			default:
				
				break;
			}
			break;
			
		case ZHUJUE_2F_MAP:		

			switch(eventID){
			
			case 0:
		
				setPosition(1*16,9*16); /*地图切换到主角家1F*/
				
				break;

			case 5:
				
				setPosition(7*16,7*16 - 8);/*门*/
				
				break;
				
			case 6:
				
				setPosition(3*16,7*16 - 8);/*门*/
				
				break;
			
			default:
				
				break;
			}
			break;

		case LADUO_SHANGJIN_MAP:

			switch(eventID){
			
			case 0:
		
				setPosition(7*16,14*16); /*地图切换到拉多镇*/
				
				break;
				
			case 1:
				
				setPosition(5*16, 4*16); /*商店-赏金猎人*/

			case 6:
				
				setPosition(7*16, 7*16 - 8);/*门*/
				
				break;
				
			default:
				
				break;
			}
			
			break;
			
		case LADUO_HEROITEM_MAP:

			switch(eventID){
			
			case 0:
		
				setPosition(6*16,12*16); /*地图切换到拉多镇*/
				
				break;
				
			case 1:
				
				setPosition(5*16,5*16); /*商店-人类武器*/
				
				break;
				
			case 2:
				
				setPosition(7*16,5*16); /*商店-人类工具*/
				
				break;

			default:
				
				break;
			}
			
			break;
			
		case LADUO_BAR_MAP:

			switch(eventID){
			
			case 0:
		
				setPosition(8*16,12*16); /*地图切换到拉多镇*/
				
				break;

			default:
				
				break;
			}
			
			break;
			
		case LADUO_INN_MAP:

			switch(eventID){
			
			case 0:
		
				setPosition(8*16,17*16); /*地图切换到拉多镇*/
				
				break;

			case 5:
				
				setPosition(5*16,7*16 - 8);
				
				break;
				
			case 6:
				
				setPosition(9*16,7*16 - 8);
				
				break;
			default:
				
				break;
			}
			
			break;
			
		case LADUO_CHUANSONG_MAP:

			switch(eventID){
			
			case 0:
		
				setPosition(4*16,12*16); /*地图切换到拉多镇*/
				
				break;

			default:
				
				break;
			}
			
			break;
			
		case LADUO_MINGQI_MAP:

			switch(eventID){
			
			case 0:
		
				setPosition(8*16,20*16); /*地图切换到拉多镇*/
				
				break;

			case 6:
				
				setPosition(8*16,14*16 - 8);
				
				break;
				
			default:
				
				break;
			}
			
			break;
			
		case TANK1_1F_MAP:
			
			switch(eventID){
			
			case 0:
		
				setPosition(10*16,3*16); /*地图切换到世界地图*/
				
				break;
				
			case 1:
				
				setPosition(14*16,9*16); /*地图切换到TANK1_2F*/
				
				break;
				
			case 2:
				
				setPosition(14*16,10*16); /*地图切换到TANK1_2F*/
				
				break;

			default:
				
				break;
			}
			
			break;
			

		case TANK1_2F_MAP:
			
			switch(eventID){
			
			case 0:
		
				setPosition(34*16,21*16); /*地图切换到TANK1_1F*/
				
				break;
				
			case 1:
				
				setPosition(34*16,22*16); /*地图切换到TANK1_1F*/

			case 2:
				
				setPosition(6*16,28*16); /*地图切换到TANK1_3F*/
				
				break;
				
			case 3:
				
				setPosition(6*16,29*16); /*地图切换到TANK1_3F*/
				
				break;
				
			default:
				
				break;
			}
			
			break;
			

		case TANK1_3F_MAP:
		
			switch(eventID){
			
			case 0:
		
				setPosition(6*16,24*16); /*地图切换到TANK1_2F*/
				
				break;

			case 1:
				
				setPosition(6*16,25*16); /*地图切换到TANK1_2F*/
				
				break;
			default:
				
				break;
			}
			
			break;
			
		default:
			
			break;
		}
	}
	
	/*根据地图编号获取事件编号*/
	public int getEvent(){
		
		switch(mapID){
		
		case WORLD_MAP:
				
			switch(eventID){
			
			case 0:
		
				return 1;
				
			case 1:
			
				return 1;
				
			case 2:
				
				return 2;
				
			case 3:
				
				return 2;
			

			default:
				
				break;
			}
			break;
			
		case LADUO_MAP:		

			switch(eventID){
			
			case 0:
		
				return 1;
				
			case 1:
			
				return 3;
				
			case 2:
				
				return 4;
				
			case 3:
		
				return 5;
				
			case 4:

				return 6;
				
			case 5:
				
				return 7;
				
			case 6:
				
				return 8;

			default:
				
				break;
				
			}
			break;
			
		case ZHUJUE_1F_MAP:		

			switch(eventID){
			
			case 0:
		
				return 1;
				
			case 1:
			
				return 2;
				
			case 2:
				
				return 101;
						
			case 3:
		
				return 102;

			default:
				
				break;
			}
			break;
			
		case ZHUJUE_2F_MAP:		

			switch(eventID){
			
			case 0:
		
				return 1;
				
			case 1:
			
				break;
				
			case 2:
				
				
				break;
				
			case 3:
		
				
				break;	
				
			case 5:
				
				return 110;

			case 6:
				
				return 110;
				
			default:
				
				break;
			}
			break;
			
		case LADUO_SHANGJIN_MAP:
			
			switch(eventID){
			
			case 0:
				
				return 1;
				
			case 1:
				
				return 105;
				
			case 6:
				
				return 110;
				
			default:
				
				break;
			}
			break;
			
		case LADUO_HEROITEM_MAP:
			

			switch(eventID){
			
			case 0:
				
				return 1;
				
			case 1:
				
				return 103;
				
			case 2:
				
				return 104;
				
			default:
				
				break;
			}

			break;
			
		case LADUO_BAR_MAP:

			switch(eventID){
			
			case 0:
				
				return 1;
				
			default:
				
				break;
			}

			break;
			
		case LADUO_INN_MAP:
			
			switch(eventID){
			
			case 0:
				
				return 1;
			
			case 5:
				
				return 110;
				
			case 6:
				
				return 110;
			default:
				
				break;
			}

			break;
			
		case LADUO_CHUANSONG_MAP:

			switch(eventID){
			
			case 0:
				
				return 1;
				
			default:
				
				break;
			}

			break;
			
		case LADUO_MINGQI_MAP:

			switch(eventID){
			
			case 0:
				
				return 1;
				
			case 6:
				
				return 110;
			default:
				
				break;
			}

			break;
			
		case TANK1_1F_MAP:

			switch(eventID){
			
			case 0:
				
				return 1;
				
			case 1:
				
				return 2;
				
			case 2:
				
				return 2;
				
			default:
				
				break;
			}

			break;
		
		case TANK1_2F_MAP:

			switch(eventID){
			
			case 0:
				
				return 1;
				
			case 1:
				
				return 1;
				
			case 2:
				
				return 2;
				
			case 3:
				
				return 2;
				
			default:
				
				break;
			}

			break;
			
		case TANK1_3F_MAP:

			switch(eventID){
			
			case 0:
				
				return 1;
				
			case 1:
				
				return 1;
				
			default:
				
				break;
			}

			break;
		default:
			
			break;
		}
		
		return 0;
	}
	                    	
}

⌨️ 快捷键说明

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