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

📄 e070f72a48cf001216b0addf11818cf9

📁 一些手机游戏的例子
💻
📖 第 1 页 / 共 5 页
字号:
				am=false;
				if(t)
				{
					t=!t;
					spi[0].p=130;
				}
			}
			break;
			case 1://落星
			if(m>=10*s[1])
			{
				atw=new TI(this,5);
				m-=10*s[1];
				am=false;
				if(t)
				{
					t=!t;
					spi[0].p=130;
				}
			}
			break;
			case 2://风残
			if(m>=20*s[2]&&l>=4*s[2]*lm/100)
			{
				atw=new TI(this,6);
				m-=20*s[2];
				l-=4*s[2]*lm/100;
				spi[0].l=l;
				am=false;
				if(t)
				{
					t=!t;
					spi[0].p=130;
				}
			}
			break;
			case 3://召狼
			if(m>=(20*s[3]))
			{
				spi[1]=new SP(8*s[3]*s[3]+40,4*s[3]*s[3]+10);
				spi[1].p=120;
				spi[1].x=16;
				spi[1].y=112;
				m-=20*s[3];
				am=false;
				an=4;
				repaint();
			}
			break;
			case 4://召熊
			if(m>=(30*s[4]))
			{
				spi[2]=new SP(20*s[4]*s[4]+60,s[4]*s[4]+7);
				spi[2].p=100;
				spi[2].x=16;
				spi[2].y=64;
				m-=30*s[4];
				am=false;
				an=4;
				repaint();
			}
			break;
			case 5://召龙
			if(m>=30*s[5])
			{
				spi[3]=new SP(10*s[5]*s[5]+40,0);
				spi[3].p=110;
				spi[3].x=16;
				spi[3].y=32;
				m-=30*s[5];
				am=false;
				an=4;
				repaint();
			}
			break;
			case 6://隐身
			if(m>=5*s[6])
			{
				spi[0].p=140;
				if(tran)
				{
					tran=!tran;
					lm=le*le+10*le+60;
					l=l-l*10*s[8]/(100+10*s[8])>lm?lm:(l-l*10*s[8]/(100+10*s[8]));
					spi[0].l=l;
					d=5*le+2;
					D=d+addPd+addPdP*d/100;
					spi[0].d=D;
				}					
				t=true;
				m-=5*s[6];
				count=0;
				am=false;
				an=4;
				repaint();
			}
			break;
			case 7://遁走
			if(m>=10*s[7]*s[7])
			{
				m-=10*s[7]*s[7];
				if(rR(100)<20*s[7])
				{
					atm=false;
					repaint();
					atc.cancel();
					atc=null;
					for(int ii=0;ii<8;ii++)
					spi[ii]=null;
					if(tran)
					{
						tran=!tran;
						lm=20*le+60;
						l=l-l*10*s[8]/(100+10*s[8])>lm?lm:(l-l*10*s[8]/(100+10*s[8]));
						d=3*le+2;
						D=d+d*addPdP/100+addPd;
					}			
					repaint();
				}
				else
				{
					am=false;
					an=4;
					repaint();
				}
			}
			break;
			case 8://附身
			if(m>=30+3*s[8]*s[8]&&!tran)
			{
				m-=30+3*s[8]*s[8];
				tran=true;
				if(t)
				t=!t;
				spi[0].p=150;
				lm+=lm*10*s[8]/100;
				l+=l*10*s[8]/100;
				spi[0].l=l;
				d+=d*20*s[8]/100;
				D=d+addPdP*d/100+addPd;
				spi[0].d=D;
				count=0;
				am=false;
				an=4;
				repaint();
			}
			break;
			case 9://回血
			if(m>=3*s[9]*s[9])
			{
				m-=3*s[9]*s[9];
				atw=new TI(this,10);				
				am=false;
			}
			break;
			case 10://回气
			if(gold>=20*s[10]*mm/100)
			{
				gold-=20*s[10]*mm/100;
				atw=new TI(this,11);
				am=false;
			}
			break;
			case 11://普通攻击
			atw=new TI(this,0);
			if(t)
			t=!t;
			am=false;
			an=0;
			break;
			case 12://敌人攻击
			atw=new TI(this,9);
			atw.j=an;
			break;
			case 22://熊攻击
			atw=new TI(this,2);
			break;
			case 21://狼攻击
			atw=new TI(this,1);
			break;
		}
		if(atw!=null)
		{
			if(atw.type==4)
			ti.schedule(atw,0,200);
			else
			ti.schedule(atw,0,250);
		}
	}
	/*判断怪物掉出的宝是否角色已经拥有*/
	boolean hasWeapon(int s)
	{
		boolean temp=false;
		for(int ii=0;ii<6;ii++)
		{
			if(weapon[ii]==s)
			{
				temp=true;
				break;
			}
		}
		return(temp);
	}
	/*战斗场景控制*/
	public void fi(int n,int lvl)
	{
		/*spi为8位数组,spi[0]为主角, spi[1]为狼,spi[2]为熊,spi[3]为龙, 其余的为敌人*/
		if(n!=0)
		{
			removeCommand(gmenu);
			addCommand(choose);
			for(int i=0;i<n;i++)
			{
				spi[i+4]=new SP(lvl);
				spi[i+4].x=128;
				spi[i+4].y=i*32+((lvl-1)/3==1?15:0)+32;
				if(lvl!=15)
				spi[i+4].p=(lvl-1)*10;
				else
				spi[i+4].p=160;
			}
			spi[0]=new SP(l,D);
			spi[0].x=16;
			spi[0].y=128;
			spi[0].p=130;
			curEl=lvl;//将当前战斗的怪的等级设为给定等级
			atm=true;
			am=true;
			sn=0;
			nn=0;
			atc=new TI(this,8);
			ti.schedule(atc,0,100);
			repaint();
		}
	}
	/*将数据转成字符串*/
	String ts(int s)
	{
		return(String.valueOf(s));
	}
	public void paint(Graphics g)
	{
		System.gc();
		g.setColor(0,0,0);
		g.fillRect(0,0,w,183);
		if(!change)//当没有进行场景切换的时候绘制下面的场景
		{
			if(changeMap!=null)
			{
				changeMap.cancel();
				changeMap=null;
			}
			int u,v,o;
			if(atm)//绘制战斗中的场景
			{		
				int iii=sc[(y+31)/16*W[sl]+(x+15)/16]%100;
				for(int p=0;p<11;p++)
				for(int q=0;q<13;q++)
				{
					if(q<2||q>10)
					g.drawImage(screen[1],p*16,q*16,0);
					else
					g.drawImage(screen[iii<=16?iii:(iii-screenStart[sl]+16)],p*16,q*16,0);//用主角触发战斗前所在的Tile的图片铺成战斗场景
				}
				for(int i=0;i<8;i++)
				{
					if(spi[i]!=null)
					{				
						if(i>3)
						{
							if(spi[i].lv<4||spi[i].lv>6)
							{
								if(spi[i].lv!=15)
								{
									g.setClip(spi[i].x,spi[i].y,16,32);
									g.drawImage(atpic,spi[i].x-spi[i].p%10*16,spi[i].y-spi[i].p/10*32,0);
								}
								else
								{
									g.setClip(spi[i].x,spi[i].y,32,32);
									g.drawImage(atpic,spi[i].x,spi[i].y-spi[i].p/10*32-spi[i].p%10*32,0);
								}
							}
							else
							{
								g.setClip(spi[i].x,spi[i].y,32,16);
								g.drawImage(atpic,spi[i].x,spi[i].y-spi[i].p/10*32-spi[i].p%10*16,0);
							}
						}
						else
						if(i==1)
						{
							g.setClip(spi[1].x,spi[1].y,32,16);
							g.drawImage(atpic,spi[1].x,spi[1].y-spi[1].p/10*32-spi[1].p%10*16,0);
						}
						else
						{
							g.setClip(spi[i].x,spi[i].y,16,32);
							g.drawImage(atpic,spi[i].x-spi[i].p%10*16,spi[i].y-spi[i].p/10*32,0);
						}
						g.setClip(0,0,w,h);
						g.setColor(0,0,0);
						if(i<4)
						g.drawRect(6,(3-i)*32+15+32,5,16);
						else
						g.drawRect(152,(i-4)*32+15+32,5,16);
						g.drawRect(0,143,5,16);
						g.setColor(255,0,0);
						if(i>=4)
						g.fillRect(153,(i-3)*32-16*spi[i].l/(spi[i].lv*spi[i].lv*15+10)+32,4,16*spi[i].l/(spi[i].lv*spi[i].lv*15+10)-1);
						else
						switch(i)
						{
							case 0://主角
							g.fillRect(7,128-16*l/lm+32,4,16*l/lm-1);
							break;
							case 1://狼
							g.fillRect(7,96-16*spi[1].l/(8*s[3]*s[3]+40)+32,4,16*spi[1].l/(8*s[3]*s[3]+40)-1);
							break;
							case 2://熊
							g.fillRect(7,64-16*spi[2].l/(20*s[4]*s[4]+60)+32,4,16*spi[2].l/(20*s[4]*s[4]+60)-1);
							break;
							case 3://龙
							g.fillRect(7,32-16*spi[3].l/(10*s[5]*s[5]+40)+32,4,16*spi[3].l/(10*s[5]*s[5]+40)-1);
							break;
						}
						g.setColor(0,0,255);
						g.fillRect(1,160-16*m/mm,4,16*m/mm-1);
					}
				}
				if(spic0!=null)
				g.drawImage(spic0,sx,sy,0);
				if(atw!=null)
				{
					if(atw.type==5)//落星效果
					{
						switch(atw.s)
						{
							case 2:
							for(int ii=0;ii<5;ii++)
							{
								g.drawImage(spic[1],rR(60)+112,0,0);
								g.drawImage(spic[1],rR(60)+112,32,0);
							}
							break;
							case 3:
							for(int ii=0;ii<5;ii++)
							{
								g.drawImage(spic[1],rR(60)+112,0,0);
								g.drawImage(spic[1],rR(60)+112,32,0);
								g.drawImage(spic[1],rR(60)+112,64,0);
								g.drawImage(spic[1],rR(60)+112,96,0);
							}
							break;
							case 4:	
							for(int ii=0;ii<5;ii++)
							{
								g.drawImage(spic[1],rR(60)+112,0,0);
								g.drawImage(spic[1],rR(60)+112,32,0);
								g.drawImage(spic[1],rR(60)+112,64,0);
								g.drawImage(spic[1],rR(60)+112,96,0);
								g.drawImage(spic[1],rR(60)+112,128,0);
								g.drawImage(spic[1],rR(60)+112,160,0);
							}
							break;
							case 5:
							for(int ii=0;ii<5;ii++)
							{
								g.drawImage(spic[1],rR(60)+112,0,0);
								g.drawImage(spic[1],rR(60)+112,32,0);
								g.drawImage(spic[1],rR(60)+112,64,0);
								g.drawImage(spic[1],rR(60)+112,96,0);
								g.drawImage(spic[1],rR(60)+112,128,0);
								g.drawImage(spic[1],rR(60)+112,160,0);
								g.drawImage(spic[1],rR(60)+112,192,0);
							}
							for(int i=0;i<4;i++)
							{
								if(spi[i+4]!=null)
								{
									if(spi[i+4].lv!=15)
									spi[i+4].l-=(2*s[1]*s[1]+10)*(100+addMd)/100;
								}
							}					
							break;
							case 6:
							for(int i=0;i<4;i++)
							{
								if(spi[i+4]!=null)
								{
									if(spi[i+4].l<=0)
									{
										sn+=100*spi[i+4].lv*spi[i+4].lv/le;
										nn+=4*spi[i+4].lv*spi[i+4].lv;					
										spi[i+4]=null;
									}
								}
							}
							break;
							case 7:
							an=4;
							cancelATW();
							repaint();
							break;
							default:
							break;
						}
					}
					else														
					if(atw.type==6)//风残效果
					{
						switch(atw.s)
						{
							case 2:
							for(int ii=0;ii<6;ii++)
							{
								g.drawImage(spic[2],0,rR(128),0);
								g.drawImage(spic[2],32,rR(128),0);
							}
							break;
							case 3:
							for(int ii=0;ii<6;ii++)
							{
								g.drawImage(spic[2],0,rR(128),0);
								g.drawImage(spic[2],32,rR(128),0);
								g.drawImage(spic[2],64,rR(128),0);
								g.drawImage(spic[2],96,rR(128),0);
							}
							break;
							case 4:
							for(int ii=0;ii<6;ii++)
							{
								g.drawImage(spic[2],0,rR(128),0);
								g.drawImage(spic[2],32,rR(128),0);
								g.drawImage(spic[2],64,rR(128),0);
								g.drawImage(spic[2],96,rR(128),0);
								g.drawImage(spic[2],128,rR(128),0);
							}
							break;
							case 5:
							for(int ii=0;ii<6;ii++)
							{
								g.drawImage(spic[2],0,rR(128),0);
								g.drawImage(spic[2],32,rR(128),0);
								g.drawImage(spic[2],64,rR(128),0);
								g.drawImage(spic[2],96,rR(128),0);
								g.drawImage(spic[2],128,rR(128),0);
								g.drawImage(spic[2],160,rR(128),0);
							}
							for(int i=0;i<4;i++)
							{
								if(spi[i+4]!=null)
								{
									if(spi[i+4].lv!=15)
									spi[i+4].l-=3*s[2]*lm/100*(100+addMd)/100;
								}
							}				
							break;
							case 6:
							for(int i=0;i<4;i++)
							{
								if(spi[i+4]!=null)
								{
									if(spi[i+4].l<=0)
									{
										sn+=100*spi[i+4].lv*spi[i+4].lv/le;
										nn+=4*spi[i+4].lv*spi[i+4].lv;					
										spi[i+4]=null;
									}
								}
							}
							break;
							case 7:
							an=4;
							cancelATW();
							repaint();
							break;
							default:
							break;
						}
					}
				}	
			}
			/*战斗菜单绘制*/
			if(am)
			{
				System.out.println("tmd3");
				g.setFont(Loading.myfont);
				g.setColor(0,255,0);
				g.fillRect(29,47,140,75);
				g.setColor(0,0,255);
				g.drawRect(29,47,140,75);
				g.drawString("火球",31,49,0);
				g.drawString("落星",65,49,0);
				g.drawString("风残",99,49,0);
				g.drawString("召狼",133,49,0);
				g.drawString("召熊",31,71,0);
				g.drawString("召龙",65,71,0);
				g.drawString("隐身",99,71,0);
				g.drawString("遁走",133,71,0);
				g.drawString("附身",31,93,0);
				g.drawString("回血",65,93,0);
				g.drawString("回气",99,93,0);
				g.drawString("攻击",133,93,0);
				if(i<11)
				{
					if(s[i]==0)
					g.setColor(255,0,0);
					else
					g.setColor(0,0,255);
				}
				else
				g.setColor(0,0,255);
				g.drawRect(i%4*34+30,i/4*22+48,34,18);
			}		
			/*属性菜单绘制*/	
			if(pm)
			{
				g.setFont(Loading.myfont);
				g.setColor(104,135,196);
				g.fillRect(0,0,160,128);
				g.setColor(0,0,0);
				g.drawRect(0,0,40,127);
				g.drawRect(40,0,119,127);
				g.drawString("属性",5,10,0);
				g.drawString("技能",5,37,0);
				g.drawString("任务",5,64,0);
				g.drawString("装备",5,91,0);
				switch(i)
				{
					case 0://属性显示
					g.drawString("血:"+ts(l)+"/"+ts(lm),41,5,0);
					g.drawString("气:"+ts(m)+"/"+ts(mm),41,25,0);
					g.drawString("经验值: ",41,45,0);
					g.drawString(ts(ex)+"/"+ts(m(le+1)),41,65,0);
					g.drawString("攻击:"+ts(d)+"+"+ts(addPd+d*addPdP/100),41,85,0);
					g.drawString("当前等级:"+ts(le),41,105,0);
					break;
					case 1://技能显示
					if(j<4)
					{
						g.drawString("火球:"+(s[0]>0?"等级"+ts(s[0]):"未修炼"),41,5,0);
						g.drawString("落星:"+(s[1]>0?"等级"+ts(s[1]):"未修炼"),41,27,0);
						g.drawString("风残:"+(s[2]>0?"等级"+ts(s[2]):"未修炼"),41,49,0);
						g.drawString("召狼:"+(s[3]>0?"等级"+ts(s[3]):"未修炼"),41,71,0);
					}
					else
					if(j<8)
					{
						g.drawString("召熊:"+(s[4]>0?"等级"+ts(s[4]):"未修炼"),41,5,0);  
						g.drawString("召龙:"+(s[5]>0?"等级"+ts(s[5]):"未修炼"),41,27,0); 
						g.drawString("隐身:"+(s[6]>0?"等级"+ts(s[6]):"未修炼"),41,49,0); 
						g.drawString("遁走:"+(s[7]>0?"等级"+ts(s[7]):"未修炼"),41,71,0); 
					}	
					else
					{
						g.drawString("附身:"+(s[8]>0?"等级"+ts(s[8]):"未修炼"),41,5,0);
						g.drawString("治疗:"+(s[9]>0?"等级"+ts(s[9]):"未修炼"),41,27,0);
						g.drawString("回气:"+(s[10]>0?"等级"+ts(s[10]):"未修炼"),41,49,0);
					}									
					g.drawString("技能点:"+ts(sp),41,98,0);
					g.setColor(255,0,255);
					g.drawRect(40,4+j%4*22,100,20);
					break;
					case 2://任务显示
					if(task)
					{
						g.drawString("收集物品",50,5,0);
						g.drawString("鹤灵草:"+(tn[0]==10?"完成":ts(tn[0])),41,25,0);
						g.drawString("狼牙:"+(tn[1]==5?"完成":ts(tn[1])),41,45,0);
						g.drawString("米云香:"+(tn[2]==10?"完成":ts(tn[2])),41,65,0);
						g.drawString("雪岩:"+(tn[3]==5?"完成":ts(tn[3])),41,85,0);
						if(task2)
						g.drawString("虎皮: "+(tn[4]==20?"完成":ts(tn[4])),41,105,0);
					}
					break;
					case 3://装备显示
					String temp=new String();
					for(int ii=0;ii<6;ii++)
					{
						switch(weapon[ii])
						{
							case 0:
							temp="短剑";
							break;
							case 1:
							temp="铁剑";
							break;
							case 2:
							temp="守护剑";
							break;
							case 3:
							temp="青剑";
							break;
							case 4:

⌨️ 快捷键说明

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