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

📄 zhuangtaikuang.java

📁 RPG游戏
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
			}
		}
		if(duihuajixu==4){
			if(NPC.jinqian-jiage[namex][namey]>=0){
				for(int i=0;i<8;i++){
					if(i==7&&NPC.daojulan[i]!=""){canvas.duihuajixu=6;}
					if(NPC.daojulan[i]==""){
						NPC.daojulan[i]=name[namex][namey];
						NPC.jinqian-=jiage[namex][namey];
						canvas.duihuajixu=5;
						canvas.biaox=144+10;
						canvas.biaoy=48+15;
						break;
					}
				}
			}
			else{
				canvas.duihuajixu=7;
			}
		}
		if(duihuajixu==2){
			daojux=21;
			for(int i=0;i<8;i++){
				if(i==0){
					if(NPC.daojulan[i]==""){canvas.duihuajixu=10;break;}
				}
				if(biaoy==daojux){
					for(int x=0;x<5;x++){
						for(int y=0;y<5;y++){
							if(NPC.daojulan[i]==name[x][y]){
								NPC.daojulan[8]=NPC.daojulan[i];
								namex=x;
								namey=y;
							}							
						}
					}
				}
				daojux+=15;
			}
		}
		if(duihuajixu==8){
			daojux=21;
			for(int i=0;i<8;i++){
				if(biaoyy==daojux){
					for(int j=i;j<8;j++){
						if(j==7){
							NPC.daojulan[j]="";NPC.jinqian+=jiage[namex][namey]/2;break;
						}
						NPC.daojulan[j]=NPC.daojulan[j+1];
					}
				}
				daojux+=15;
			}
		}		
	} 
	//道具栏工具
	protected void wupin(int biaox,int biaoy,int biaoxx,int biaoyy){
		boolean tiaochu=false;
		int daojux=21;
		//道具使用后的效果
		if(biaoy==118){
			for(int i=0;i<8;i++){
				if(biaoyy==daojux){
					for(int x=0;x<5;x++){
						if(tiaochu){break;}
							for(int y=0;y<5;y++){
								if(NPC.daojulan[i]==name[0][y]){
									NPC.daojulan[8]=NPC.daojulan[i];
									if(y==0||y==1){
										if(NPC.maxhp-NPC.hp>xiaoguo[0][y]){jishuqi=xiaoguo[0][y];NPC.hp+=jishuqi;}
										else{jishuqi=NPC.maxhp-NPC.hp;NPC.hp+=jishuqi;}
										canvas.duihuajixu=3;
									}
									if(y==2||y==3){
										if(NPC.maxmp-NPC.mp>xiaoguo[0][y]){jishuqi=xiaoguo[0][y];NPC.mp+=jishuqi;}
										else{jishuqi=NPC.maxmp-NPC.mp;NPC.mp+=jishuqi;}
										canvas.duihuajixu=4;
									}
									for(int j=i;j<8;j++){
										if(j==7){NPC.daojulan[j]="";break;}
										NPC.daojulan[j]=NPC.daojulan[j+1];
									}	
									tiaochu=true;
									break;
								}
								if(x!=0){
									NPC.daojulan[8]=NPC.daojulan[i];
									canvas.duihuajixu=2;
									tiaochu=true;
									break;
								}
							}
					}
				}
				daojux+=15;
			}
		}
		//道具装备后的效果
		if(biaoy==138){
			for(int i=0;i<8;i++){
				if(biaoyy==daojux){
					for(int x=0;x<5;x++){
						if(tiaochu){break;}
							for(int y=0;y<5;y++){
								if(NPC.daojulan[i]==name[0][y]){
									NPC.daojulan[8]=NPC.daojulan[i];
									canvas.duihuajixu=5;
									tiaochu=true;	
									break;
								}
								if(NPC.daojulan[i]==name[x][y]){
									NPC.zhuangbeilan[x-1]=NPC.daojulan[i];
									if(x==1){NPC.wuqi=xiaoguo[x][y];canvas.duihuajixu=6;}
									if(x==2){NPC.yifu=xiaoguo[x][y];canvas.duihuajixu=7;}
									if(x==3){NPC.dun=xiaoguo[x][y];canvas.duihuajixu=7;}
									if(x==4){NPC.xiezi=xiaoguo[x][y];canvas.duihuajixu=7;}
									namex=x;
									namey=y;
									tiaochu=true;
									break;
								}
							}
					}

				}
				daojux+=15;
			}
		}
		//道具丢弃后的效果
		if(biaoy==158){
			for(int i=0;i<8;i++){
				if(biaoyy==daojux){	
					NPC.daojulan[8]=NPC.daojulan[i];
					for(int j=i;j<8;j++){
						if(j==7){NPC.daojulan[j]="";canvas.duihuajixu=8;break;}
						NPC.daojulan[j]=NPC.daojulan[j+1];
					}					
				}
				daojux+=15;
			}
		}
	}
	//绘制光标
	protected void guangbiao(Graphics g,int biaox,int biaoy){
		huan++;
		if(huan%5<=2){
			g.setFont(Font.getFont(Font.FACE_MONOSPACE,Font.STYLE_PLAIN,Font.SIZE_MEDIUM));
			g.drawString("→",biaox,biaoy,Graphics.TOP|Graphics.LEFT);
		}
		if(huan==100){huan=0;}
	}
	//绘制三角光标
	protected void sanjiaoguangbiao(Graphics g,int biaox,int biaoy){
		huan++;
		if(huan%5<=2){
			g.setFont(Font.getFont(Font.FACE_MONOSPACE,Font.STYLE_PLAIN,Font.SIZE_SMALL));
			g.drawString("▲",biaox,biaoy,Graphics.TOP|Graphics.LEFT);
		}
		if(huan==100){huan=0;}
	}
	//对话框的绘制
	protected void kuang(Graphics g,int kuangx,int kuangy,int kuangxx,int kuangyy){
		g.setClip(kuangx,kuangy,kuangxx,kuangyy);
		g.setColor(0,0,0);
		g.fillRect(kuangx,kuangy,kuangxx,kuangyy);
		set_Color(g, over);
		g.fillRect(kuangx+2,kuangy+2,kuangxx-4,kuangyy-4);
		g.setColor(0,0,0);
		g.fillRect(kuangx+5,kuangy+5,kuangxx-10,kuangyy-10);
		set_Color(g, over);
		g.setFont(Font.getFont(Font.FACE_MONOSPACE,Font.STYLE_PLAIN,Font.SIZE_MEDIUM));
	}
	protected void set_Color(Graphics g, int huan){
		if(huan == 0){
			g.setColor(255,255,255);
		}
		else{
			g.setColor(255,0,0);
		}
	}
	//对话框判断
	protected int  xuanze(int x,int y){
		int huan=0;
		if(x==30&&y==14){
			huan=1;
		}
		if(x==78&&y==14){
			huan=2;
		}
		if(x==30&&y==39){
			huan=3;
		}
		if(x==78&&y==39){
			huan=4;
		}
		if(x==30&&y==64){
			huan=5;
		}
		if(x==78&&y==64){
			huan=6;
		}
		return huan;
	}
	
	 /**
	 *~~~~~~~~~~~~~~~~~~~~~~~~~~对战场面的绘制以及判断~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     */
	//主角属性栏
	protected void duizhan_shuxinglan(Graphics g,int kuangx,int kuangy,int kuangxx,int kuangyy){
		kuang(g,kuangx,kuangy,kuangxx,kuangyy);
		g.drawString("HP  "+NPC.hp,kuangx+15,kuangy+5,Graphics.TOP|Graphics.LEFT);
		g.drawString("MP  "+NPC.mp,kuangx+15,kuangy+25,Graphics.TOP|Graphics.LEFT);
		g.drawString("LV:  "+NPC.dengji,kuangx+15,kuangy+45,Graphics.TOP|Graphics.LEFT);
		
	}
	//主角控制栏
	protected void duizhan_kongzhilan(Graphics g,int kuangx,int kuangy,int kuangxx,int kuangyy,int biaox,int biaoy){
		kuang(g,kuangx,kuangy,kuangxx,kuangyy);
		g.drawString("攻击",kuangx+30,kuangy+7,Graphics.TOP|Graphics.LEFT);
		g.drawString("咒文",kuangx+30,kuangy+27,Graphics.TOP|Graphics.LEFT);
		g.drawString("防御",kuangx+30,kuangy+47,Graphics.TOP|Graphics.LEFT);
		g.drawString("逃跑",kuangx+30,kuangy+67,Graphics.TOP|Graphics.LEFT);
		guangbiao(g,biaox,biaoy);
	}
	//怪物名称栏
	protected void duizhan_mingchenglan(Graphics g,int kuangx,int kuangy,int kuangxx,int kuangyy,int biaox,int biaoy){
		kuang(g,kuangx,kuangy,kuangxx,kuangyy);
		if(guai==1){
			g.drawString(npc.guainame[guai-1],kuangx+30,kuangy+8,Graphics.TOP|Graphics.LEFT);
		}
		else{
			g.drawString(npc.guainame[guai-2],kuangx+30,kuangy+8,Graphics.TOP|Graphics.LEFT);
		}
		g.drawString("1只",kuangx+90,kuangy+8,Graphics.TOP|Graphics.LEFT);
		guangbiao(g,biaox,biaoy);
		
	} 
	//遇敌变换	
	protected int getGao(){
		return gaoyy=canvas.gao;
	}
	//从游戏画面切换到对战画面
	protected int duizhan_yudibianhuan(Graphics g,int gao,int kuan){
		if(yudipanduan==1){
			gaoy=0;
			gaoyy=canvas.gao;
			yudipanduan=2;
		}
		if(yudipanduan==2||yudipanduan==3){
			g.setColor(0,0,0);
			g.setClip(0,0,kuan,gao/2);
			g.fillRect(0,0,kuan,gaoy);
			g.setClip(0,gao/2,kuan,gao);
			g.fillRect(0,gaoyy,kuan,gao);
			if(yudipanduan==2){
				gaoy+=5;
				gaoyy-=5;
			}
			else{
				gaoy-=5;
				gaoyy+=5;
			}
		}
		if(gaoy>=gao/2){yudipanduan=3;}
		if(gaoy<=0){yudipanduan=1;suijipanduan=true;}
		return yudipanduan;
	}
	//随机取得怪物
	protected void duizhan_guai(Graphics g,Image sheguai,Image daoguai,Image shilaimu){
		if(suijipanduan){
			guai=npc.rowNPC(100);
			suijipanduan=false;
		}
		if(guai<=2){
			g.drawImage(shilaimu,100,120,Graphics.TOP|Graphics.LEFT);
			guainamex=0;
		}
		if(guai==3){
			g.drawImage(daoguai,100,120,Graphics.TOP|Graphics.LEFT);
			guainamex=1;
		}
		if(guai==4){
			g.drawImage(sheguai,100,120,Graphics.TOP|Graphics.LEFT);
			guainamex=2;
		}	
	}
	//计算对战数值_主角
	protected void jisuanshuzhi_zhujue(){
		System.out.println(NPC.fangyuli);
		ren_hp = npc.guaigong[guainamex] - NPC.fangyuli;
		if(ren_hp < 0){
			ren_hp=0;
		}
		NPC.hp -= ren_hp;
		if(NPC.hp <= 0){
			NPC.hp = 0;
		}
		System.out.println(NPC.fangyuli);
	}
	//计算对战数值_怪物
	protected void jisuanshuzhi_guaiwu(){
		Getjinqian=npc.guaijingqian[guainamex];
		Getjingyan=npc.guaijingyan[guainamex];
		guai_hp=NPC.gongjili-npc.guaifang[guainamex];
		if(guai_hp<0){guai_hp=0;}
		npc.guaihp[guainamex]-=guai_hp;
		if(npc.guaihp[guainamex]<=0){
			canvas.zhandoujixu=2;
			npc.guaihp[guainamex] = npc.guaimaxhp[guainamex];
			NPC.jinqian+=Getjinqian;
			NPC.jingyan+=Getjingyan;
			if(NPC.jingyan>=npc.shengjijingyan[NPC.dengji-1]){
				shengji();
				canvas.zhandoujixu=3;
			}
		}
	}
	protected void shengji(){
			NPC.dengji+=1;
			NPC.liliang+=5;
			NPC.fangyu+=5;
			NPC.zhili+=2;
			NPC.minjie+=1;
			NPC.maxhp+=20;
			NPC.maxmp+=10;
	}
	protected void fangyu(int duihuajixu){
		if(duihuajixu==6){
			Getfangyuli = NPC.fangyuli;
			NPC.fangyuli*=2;
		}
		if(duihuajixu==4){
			NPC.fangyuli = Getfangyuli;	
		}
	}
	
}

⌨️ 快捷键说明

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