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

📄 zhuangtaikuang.java

📁 RPG游戏
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
import javax.microedition.lcdui.Font;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;

/*
 * Created on 2006-6-29
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */

/**
 * @author 陈利昌
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public class Zhuangtaikuang {
	protected jCanvas canvas;
	protected daoju wupin;
	NPC npc;
	boolean heipin = false;										//计算是否进行对话黑屏
	protected int panduan=0;
	protected int huan;
	protected int kuangx=1*24,kuangy=8*24;						//对话框X,Y
	protected int kuangxx=8*24,kuangyy=4*24;					//对话框X,Y
	protected int jishuqi;										//计数器
	protected int lvdianjishu=0;								//旅店计数器
	protected int daojushu;										//判断道具数量
	protected int zhuangbeicol=1;								//判断装备数量
	protected int zhuangbei;									//装备
	//大地图遇敌判断
	protected int guainamex=0;
	protected int guai=0;
	protected int gaoy,gaoyy; 
	protected int yudipanduan=1;	
	protected int Getjinqian;
	protected int Getjingyan;
	protected int guai_hp;
	protected int ren_hp;
	protected int Getfangyuli = NPC.fangyuli;
	
	protected boolean suijipanduan=true; 
	
	protected int xiaoguo[][]=daoju.xiaoguo;
	protected int jiage[][]=daoju.jiage;
	protected int namex=0;
	protected int namey=0;
	protected String name[][]=daoju.name;
	protected String chushou[]=daoju.chushou;
	protected String kongge="     ";
	protected String huanzhuangbei[]={"","","","","","","","",""};
	protected String Stringshengyin [] = {"关", "小", "中","大"};
	protected int setshengyin = 3;
	protected int over = 0;
		
	int heix = kuangx + 15;
	int heix1 = kuangx + 15;
	int heix2 = kuangx + 15;
	int heix3 = kuangx + 15;
	int logoy = 120;
	int heipinIndex = 0;										//计算对话黑屏的时间的索引
	int heipinjishu = 0; 										//计算对话黑屏的时间				
	
	int juli = 15; //字幕与框的距离

	public Zhuangtaikuang(jCanvas canvas){
		this.canvas=canvas;
		wupin=new daoju();
		npc = new NPC("/images/shiwei.png");
	}
	protected void setshengyin(Graphics g, int biaox, int biaoy){
		g.setColor(255, 255, 255);
		g.setFont(Font.getFont(Font.FACE_MONOSPACE,Font.STYLE_PLAIN,Font.SIZE_MEDIUM));
		g.drawString("设置声音   "+Stringshengyin[setshengyin], 80, 50, Graphics.TOP|Graphics.LEFT );
		g.drawString("返回菜单", 80, 80, Graphics.TOP|Graphics.LEFT );
		guangbiao(g, biaox, biaoy);
	}
	protected void bangzhu(Graphics g){
		g.setColor(255, 0, 255);
		g.setFont(Font.getFont(Font.FACE_MONOSPACE,Font.STYLE_PLAIN,Font.SIZE_MEDIUM));
		g.drawString("联系Email:", 0, 0, Graphics.TOP|Graphics.LEFT);
		g.drawString("batjhjj@163.com", 0, 20, Graphics.TOP|Graphics.LEFT);
		g.drawString("游戏键盘控制:", 0, 60, Graphics.TOP|Graphics.LEFT);
		g.drawString("玩家可通过控制方向键命令主", 0, 80, Graphics.TOP|Graphics.LEFT);
		g.drawString("角往四个方向行走。", 0, 100, Graphics.TOP|Graphics.LEFT);
		g.drawString("点击确定键会出现游戏选择框。", 0, 120, Graphics.TOP|Graphics.LEFT);
		
		g.drawString("如果主角在与怪物的战斗中阵", 0, 160, Graphics.TOP|Graphics.LEFT);
		g.drawString("亡游戏将结束,玩家必须重新", 0, 180, Graphics.TOP|Graphics.LEFT);
		g.drawString("读取进度。主角在与怪物的战", 0, 200, Graphics.TOP|Graphics.LEFT);
		g.drawString("斗中会获取金钱以及经验值,", 0, 220, Graphics.TOP|Graphics.LEFT);
		g.drawString("当主角的经验值积累到一定程", 0, 240, Graphics.TOP|Graphics.LEFT);
		g.drawString("度可获得等级提升,每次提升", 0, 260, Graphics.TOP|Graphics.LEFT);
		g.drawString("等级都可增加相应的力量、防", 0, 280, Graphics.TOP|Graphics.LEFT);
		g.drawString("御、体力值。", 0, 300, Graphics.TOP|Graphics.LEFT);
	}
	protected void logo(Graphics g, Image logo, int gao, int kuan){
		g.setColor(255, 255, 255);
		g.setFont(Font.getFont(Font.FACE_MONOSPACE,Font.STYLE_PLAIN,Font.SIZE_MEDIUM));
		g.drawString("随着魔王艾利克的复活,魔族",10,logoy,Graphics.TOP|Graphics.LEFT);
		g.drawString("再度复兴。",10,logoy+20,Graphics.TOP|Graphics.LEFT);
		g.drawString("一天,奥多尔城的国王收到戈",10,logoy+40,Graphics.TOP|Graphics.LEFT);
		g.drawString("尔多城国王送来的一封求救信",10,logoy+60,Graphics.TOP|Graphics.LEFT);
		g.drawString(",信中讲述魔族正在大举围攻",10,logoy+80,Graphics.TOP|Graphics.LEFT);
		g.drawString("戈尔多城,戈尔多城的战士们",10,logoy+100,Graphics.TOP|Graphics.LEFT);
		g.drawString("已经伤亡惨重。第二天,奥多",10,logoy+120,Graphics.TOP|Graphics.LEFT);
		g.drawString("尔城国王召集了全城的战士,",10,logoy+140,Graphics.TOP|Graphics.LEFT);
		g.drawString("说道:现在情势严峻,如果魔",10,logoy+160,Graphics.TOP|Graphics.LEFT);
		g.drawString("族攻下了戈尔多城,下一个就",10,logoy+180,Graphics.TOP|Graphics.LEFT);
		g.drawString("将会是奥尔多,所以无论为了",10,logoy+200,Graphics.TOP|Graphics.LEFT);
		g.drawString("哪一个国家,请勇士们去消灭",10,logoy+220,Graphics.TOP|Graphics.LEFT);
		g.drawString("魔族。于是,全国的勇士们为",10,logoy+240,Graphics.TOP|Graphics.LEFT);
		g.drawString("了世界的和平与安宁往戈尔多",10,logoy+260,Graphics.TOP|Graphics.LEFT);
		g.drawString("城前进了………。",10,logoy+280,Graphics.TOP|Graphics.LEFT);
		g.drawString("勇者安利也是其中一位!",10,logoy+300,Graphics.TOP|Graphics.LEFT);
		g.setColor(0, 0, 0);
		g.fillRect(10, 120, kuan, gao);		
		g.setColor(0, 0, 255);
		g.setClip(100, 100, gao, kuan);
		g.drawRect(110 - 2, 280, 120, 18);
		g.drawString("点击确定键跳过", 110, 280, Graphics.TOP|Graphics.LEFT);

	}
	//对话框
	protected void duihuakuang(Graphics g,int kuangx,int kuangy,int kuangxx,int kuangyy,int biaox,int biaoy){
		kuang(g,kuangx,kuangy,kuangxx,kuangyy);
		g.drawString("对话",kuangx+25,kuangy+8,Graphics.TOP|Graphics.LEFT);
		g.drawString("状态",kuangx+73,kuangy+8,Graphics.TOP|Graphics.LEFT);
		g.drawString("道具",kuangx+25,kuangy+33,Graphics.TOP|Graphics.LEFT);
		g.drawString("调查",kuangx+73,kuangy+33,Graphics.TOP|Graphics.LEFT);
		g.drawString("系统",kuangx+25,kuangy+58,Graphics.TOP|Graphics.LEFT);
		g.drawString("取消",kuangx+73,kuangy+58,Graphics.TOP|Graphics.LEFT);
		guangbiao(g,biaox,biaoy);
	}
	//主角金钱
	protected void jinqian(Graphics g,int kuangx,int kuangy,int kuangxx,int kuangyy,int biaox,int biaoy){
		kuang(g,kuangx,kuangy,kuangxx,kuangyy);
		g.drawString("G  "+npc.getjinqian(),kuangx+15,kuangy+15,Graphics.TOP|Graphics.LEFT);
		
	}
	//与商店对话时的判断框
	protected void panduankuang(Graphics g,int kuangx,int kuangy,int kuangxx,int kuangyy,int biaox,int biaoy,int huan){
		kuang(g,kuangx,kuangy,kuangxx,kuangyy);
		if(huan==1){
			g.drawString("是",kuangx+30,kuangy+15,Graphics.TOP|Graphics.LEFT);
			g.drawString("否",kuangx+30,kuangy+40,Graphics.TOP|Graphics.LEFT);
			g.drawString("",kuangx+30,kuangy+6,Graphics.TOP|Graphics.LEFT);
			guangbiao(g,biaox,biaoy);
		}
		else{			
			g.drawString("买",kuangx+30,kuangy+5,Graphics.TOP|Graphics.LEFT);
			g.drawString("卖",kuangx+30,kuangy+25,Graphics.TOP|Graphics.LEFT);
			g.drawString("结束",kuangx+30,kuangy+45,Graphics.TOP|Graphics.LEFT);
			guangbiao(g,biaox,biaoy);
		}		
	}	
	//所有与NPC的对话
	protected void shiwei(Graphics g,int huan,int duihuajixu){
		heipinIndex = huan;
		kuang(g,kuangx,kuangy,kuangxx,kuangyy);
		switch(huan){	
			case 0:
				g.drawString(" 前方没有任何人!",kuangx+15,kuangy+8,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 1;
				break;
			case 1:	
				g.drawString("安利,不能和你们一起",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("作战真是遗憾啊!",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 2;
				break;
			case 2:
				g.drawString("大家都已经出发了,你",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("怎么还在这里啊?",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 2;
				break;
			case 3:
				g.drawString("这里是奥尔多城皇宫,",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("听说魔族现在正在围攻",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				g.drawString("戈尔多城呢!",kuangx+juli,kuangy+48,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 3;
				break;
			case 4:
				g.drawString("安利吗?求求你快去戈",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("尔多城吧,我的丈夫正",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				g.drawString("在那里经商啊,拜托了!",kuangx+juli,kuangy+48,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 3;
				break;
			case 5:
				g.drawString("勇者,为了世界快去消",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("灭魔族吧,我等待着你",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				g.drawString("们带好消息回来!",kuangx+juli,kuangy+48,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 2;
				break;
			case 6:
				g.drawString("全城的勇士都已经出发",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("去支援戈尔多城了。",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 2;
				break;
			case 7:
				g.drawString("黑暗的力量再次笼罩着",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("这个世界,太可怕了。",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 2;
				break;
			case 8:
				g.drawString("听说北方的加达村有着",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("某种神圣的力量,连魔",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				g.drawString("族都不敢入侵。",kuangx+juli,kuangy+48,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 3;
				break;
			case 9:
				if(duihuajixu==0){
					g.drawString("欢迎光临,这里是旅馆。",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
					g.drawString("休息一晚需要5金,请",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
					g.drawString("问现在是否需要休息?",kuangx+juli,kuangy+48,Graphics.TOP|Graphics.LEFT);	
					heipinjishu = 3;
				}
				if(duihuajixu==1){					
					g.drawString("祝您睡个好觉,",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
					g.drawString("晚安!",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
					heipinjishu = 2;
				}
				if(duihuajixu==2){
					g.drawString("再见,旅客。",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
					g.drawString("下次欢迎再来!",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
					heipinjishu = 2;
				}
				break;
			case 10:
				if(duihuajixu==0){
					g.drawString("欢迎光临,这里是道具",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
					g.drawString("店。请问您是要购买物",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
					g.drawString("品还是出售物品?",kuangx+juli,kuangy+48,Graphics.TOP|Graphics.LEFT);
					heipinjishu = 3;
				}
				if(duihuajixu==1){
					g.drawString("本店品种齐全,",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
					g.drawString("请问您要购买什么物品?",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);					
					heipinjishu = 2;
				}
				shangdianduihua(g,duihuajixu);
				break;
			case 11:
				if(duihuajixu==0){
					g.drawString("欢迎光临,这里是武器",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
					g.drawString("店。这里武器齐全,您",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
					g.drawString("需要什么?",kuangx+juli,kuangy+48,Graphics.TOP|Graphics.LEFT);
					heipinjishu = 3;
				}
				if(duihuajixu==1){
					g.drawString("本店价格公道,请问您",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
					g.drawString("需要购买什么武器?",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
					heipinjishu = 2;
				}
				shangdianduihua(g,duihuajixu);
				break;
			case 12:
				if(duihuajixu==0){
					g.drawString("欢迎光临,这里是防具",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
					g.drawString("店。这里装备齐全,请",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
					g.drawString("问我有什么可以为您服",kuangx+juli,kuangy+48,Graphics.TOP|Graphics.LEFT);
					g.drawString("务的吗?",kuangx+juli,kuangy+68,Graphics.TOP|Graphics.LEFT);
					heipinjishu = 4;
				}		
				if(duihuajixu==1){
					g.drawString("本店价格公道,请问您",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
					g.drawString("需要购买什么防具?",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
					heipinjishu = 2;
				}
				shangdianduihua(g,duihuajixu);
				break;
			case 13:
				if(duihuajixu==0){
					g.drawString("没带钥匙。",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
					heipinjishu = 1;
				}
				if(duihuajixu==1){
					g.drawString("这里没门。",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
					heipinjishu = 1;
				}
				break;
			case 14:
				g.drawString("安利调查,",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("眼前的情况,",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				g.drawString("但什么也没发现!",kuangx+juli,kuangy+48,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 3;
				break;
			case 15:
				g.drawString("安利没有携带物品。",kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 1;
				break;
			case 16:
				g.drawString("安利使用了 "+NPC.daojulan[8],kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("但什么也没有发生。",kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 2;
				break;
			case 17:
				g.drawString("安利使用了 "+NPC.daojulan[8],kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("HP增加了 "+jishuqi,kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);				
				heipinjishu = 2;
				break;
			case 18:
				g.drawString("安利使用了 "+NPC.daojulan[8],kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("MP增加了 "+jishuqi,kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 2;
				break;
			case 19:
				g.drawString("不能装备 "+NPC.daojulan[8],kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 1;
				break;
			case 20:
				g.drawString("安利装备了 "+NPC.zhuangbeilan[namex-1],kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("安利的攻击力成为 "+npc.getgongjili(),kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 2;
				break;
			case 21:
				g.drawString("安利装备了 "+NPC.zhuangbeilan[namex-1],kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				g.drawString("安利的防御力成为 "+npc.getfangyuli(),kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 2;
				break;
			case 22:
				g.drawString("安利丢弃了 "+NPC.daojulan[8],kuangx+juli,kuangy+8,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 1;
				break;
			case 23:
				g.drawString(npc.guainame[guainamex]+" 出现",kuangx+40,kuangy+8,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 1;
				break;
			case 24:
				g.drawString("安利发起攻击",kuangx+10,kuangy+8,Graphics.TOP|Graphics.LEFT);
				heipinjishu = 2;
				if(duihuajixu==1){
					g.drawString(npc.guainame[guainamex]+" 损失了 "+guai_hp,kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				}
				if(duihuajixu==2){
					g.drawString("安利击中了 "+npc.guainame[guainamex],kuangx+juli,kuangy+28,Graphics.TOP|Graphics.LEFT);
				}
				break;
			case 25:
				heipinjishu = 2;

⌨️ 快捷键说明

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