📄 rpg_demo.java
字号:
vec.removeAllElements();
state_Map=MAP_STATE_DIED;
}
if(Hero.px==150&&Hero.py==296)
{
duibai_pd++;
g.setColor(0x00ffffff);
g.drawRect(0,getHeight()-40,getWidth(),40);
g.setColor(0x00f3ddaa);
g.fillRect(1,getHeight()-39,getWidth()-1,39);
g.setColor(0x000000);
g.setFont(medium);
g.drawString("我,加伊。定能成为勇敢的骑士。",3,getHeight()-37,20);
}
if(Hero.px>480&&Hero.px<512&&Hero.py>32&&Hero.py<64&&mapindex==MAP_CUNZI)
{
System.out.println("run h!!!");
To_mapindex=MAP_YANSHI;
state_Child=CHILD_STATE_CHANGEMAP;
}else if(Hero.px>16*14&&Hero.px<16*17&&Hero.py>16*30&&Hero.py<16*32&&mapindex==MAP_CUNZI)
{
To_mapindex=MAP_SENLIN;
state_Child=CHILD_STATE_CHANGEMAP;
}else if(Hero.px>464&&Hero.px<496&&Hero.py>0&&Hero.py<32&&mapindex==MAP_YANSHI)
{
To_mapindex=MAP_SHAMO;
state_Child=CHILD_STATE_CHANGEMAP;
}else if(Hero.px>0&&Hero.px<32&&Hero.py>0&&Hero.py<32&&mapindex==MAP_YANSHI)
{
To_mapindex=MAP_CUNZI;
state_Child=CHILD_STATE_CHANGEMAP;
}else if(Hero.px>240&&Hero.px<272&&Hero.py>0&&Hero.py<16&&mapindex==MAP_SENLIN)
{
To_mapindex=MAP_CUNZI;
state_Child=CHILD_STATE_CHANGEMAP;
}else if(Hero.px>0&&Hero.px<16&&Hero.py>0&&Hero.py<32&&mapindex==MAP_SHAMO)
{
To_mapindex=MAP_YANSHI;
state_Child=CHILD_STATE_CHANGEMAP;
}
}
public void npc_Judge()
{
}
public void guai_Judge()
{
for(int i=0;i<vec.size();i++)
{
((Enemy)(vec.elementAt(i))).Enemy_display(guai_up, guai_down, guai_left, guai_right, guai_hurt_up,guai_hurt_down,
guai_hurt_left, guai_hurt_right, guai_walk, Hero.getX(), Hero.getY(), Hero.attack);
if(((Enemy)(vec.elementAt(i))).hp<=0)
{
Hero.exp+=((Enemy)(vec.elementAt(i))).hp_max/2;
Hero.money+=((Enemy)(vec.elementAt(i))).hp_max/2;
lm.remove(((Enemy)(vec.elementAt(i))));
vec.removeElementAt(i);
}
}
}
public void DrawDead()
{
}
public void DrawManssage()
{
g.setColor(0x00ffffff);
g.drawRect(0,0,getWidth(),getHeight());
g.setColor(0x00ff0000);
g.fillRect(0,0,getWidth(),getHeight());
g.drawImage(shuxing_Image,0,0,20);
//设置信息字体颜色
g.setColor(0x00141414);
g.fillRect(0,0,getWidth(),getHeight());
g.drawImage(shuxing_Image,0,0,20);
g.drawString(buffer.append(Hero.lev).toString(),67,25,20);
buffer.delete(0, buffer.length());
g.drawString(buffer.append(Hero.money).append("金").toString(),109,25,20);
buffer.delete(0, buffer.length());
g.drawString(buffer.append(Hero.hp).toString(),57,45,20);
buffer.delete(0, buffer.length());
g.drawString(buffer.append(Hero.mp).toString(),119,45,20);
buffer.delete(0, buffer.length());
g.drawString(buffer.append(Hero.attack).toString(),57,65,20);
buffer.delete(0, buffer.length());
g.drawString(buffer.append(Hero.fy).toString(),119,65,20);
buffer.delete(0, buffer.length());
g.drawString("没到10级,未领取任务。",30,100,20);
}
public void stop()
{
if_pause=true;
}
public void chang_Map(int form,int to)
{
try {
lm.remove(tl_BG);
lm.remove(tl_PZ);
lm.remove(npc_king);
lm.remove(npc_tiejiang);
lm.remove(npc_shangdian);
for(int i=0;i<vec.size();i++)
lm.remove((Enemy)vec.elementAt(i));
//npc_king=null;
tl_BG=null;
tl_PZ=null;
vec.removeAllElements();
switch(form)
{
case MAP_CUNZI:
if(guaiwu_qiulin_Image!=null)
guaiwu_qiulin_Image=null;
if(guaiwu_yanshi_Image!=null)
guaiwu_yanshi_Image=null;
if(guaiwu_senlin_Image!=null)
guaiwu_senlin_Image=null;
if(npc_king_Image!=null)
npc_king_Image=null;
if(npc_shangdian_Image!=null)
npc_shangdian_Image=null;
if(npc_tiejiang_Image!=null)
npc_tiejiang_Image=null;
break;
case MAP_YANSHI:
if(guaiwu_qiulin_Image!=null)
guaiwu_qiulin_Image=null;
if(guaiwu_yanshi_Image!=null)
guaiwu_yanshi_Image=null;
if(guaiwu_senlin_Image!=null)
guaiwu_senlin_Image=null;
if(npc_king_Image!=null)
npc_king_Image=null;
if(npc_shangdian_Image!=null)
npc_shangdian_Image=null;
if(npc_tiejiang_Image!=null)
npc_tiejiang_Image=null;
break;
case MAP_SHAMO:
if(guaiwu_qiulin_Image!=null)
guaiwu_qiulin_Image=null;
if(guaiwu_yanshi_Image!=null)
guaiwu_yanshi_Image=null;
if(guaiwu_senlin_Image!=null)
guaiwu_senlin_Image=null;
if(npc_king_Image!=null)
npc_king_Image=null;
if(npc_shangdian_Image!=null)
npc_shangdian_Image=null;
if(npc_tiejiang_Image!=null)
npc_tiejiang_Image=null;
if(boss_Image!=null)
boss_Image=null;
break;
case MAP_SENLIN:
if(guaiwu_qiulin_Image!=null)
guaiwu_qiulin_Image=null;
if(guaiwu_yanshi_Image!=null)
guaiwu_yanshi_Image=null;
if(guaiwu_senlin_Image!=null)
guaiwu_senlin_Image=null;
if(npc_king_Image!=null)
npc_king_Image=null;
if(npc_shangdian_Image!=null)
npc_shangdian_Image=null;
if(npc_tiejiang_Image!=null)
npc_tiejiang_Image=null;
break;
}
System.gc();
switch(to)
{
case MAP_CUNZI:
Hero.px=496;
Hero.py=32;
viewWindowX=Hero.px-SCREEN_WIDTH;
viewWindowY=Hero.py-32;
try {
guaiwu_yanshi_Image=Image.createImage("/yanshi.png");
//guaiwu_qiulin_Image=Image.createImage("/qiulin.png");
//boss_Image=Image.createImage("/boss.png");
} catch (IOException e1) {
// TODO 自动生成 catch 块
e1.printStackTrace();
}
try
{
player.stop();
player.close();
is=getClass().getResourceAsStream("/map1.mid");
player=Manager.createPlayer(is,"audio/midi");
player.realize();
player.setLoopCount(-1);
player.start();
}
catch (MediaException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
cunzi=new Map_cuizi();
bg=cunzi.BG_cell;
pz=cunzi.PZ_cell;
cunzi=null;
mapindex=MAP_CUNZI;
vec.addElement(new Enemy(guaiwu_yanshi_Image,32,32,1,5,0,50,Hero.spend_Move-1,368,128,"丘陵怪"));
vec.addElement(new Enemy(guaiwu_yanshi_Image,32,32,1,5,0,50,Hero.spend_Move-1,400,240,"丘陵怪"));
vec.addElement(new Enemy(guaiwu_yanshi_Image,32,32,1,5,0,50,Hero.spend_Move-1,192,112,"丘陵怪"));
vec.addElement(new Enemy(guaiwu_yanshi_Image,32,32,1,5,0,50,Hero.spend_Move-1,112,16,"丘陵怪"));
vec.addElement(new Enemy(guaiwu_yanshi_Image,32,32,1,5,0,50,Hero.spend_Move-1,320,16,"丘陵怪"));
vec.addElement(new Enemy(guaiwu_yanshi_Image,32,32,1,5,0,50,Hero.spend_Move-1,476,272,"丘陵怪"));
vec.addElement(new Enemy(guaiwu_yanshi_Image,32,32,1,5,0,50,Hero.spend_Move-1,80,80,"丘陵怪"));
vec.addElement(new Enemy(guaiwu_yanshi_Image,32,32,1,5,0,50,Hero.spend_Move-1,208,16,"丘陵怪"));
vec.addElement(new Enemy(guaiwu_yanshi_Image,32,32,1,5,0,50,Hero.spend_Move-1,416,80,"丘陵怪"));
for(int i=0;i<vec.size();i++)
lm.insert((Enemy)vec.elementAt(i), 1);
tl_BG=new TiledLayer(32,32,map_cunzi_Image,16,16);
tl_PZ=new TiledLayer(32,32,map_cunzi_Image,16,16);
Hero.setPosition(480,32);
break;
case MAP_SHAMO:
//lm.setViewWindow(Hero.getX(),Hero.getY(),SCREEN_WIDTH,SCREEN_HEIGHT);
Hero.px=16;
Hero.py=32;
viewWindowX=Hero.px-16;
viewWindowY=Hero.py-32;
try {
guaiwu_yanshi_Image=Image.createImage("/yanshi.png");
guaiwu_qiulin_Image=Image.createImage("/qiulin.png");
boss_Image=Image.createImage("/boss.png");
} catch (IOException e1) {
// TODO 自动生成 catch 块
e1.printStackTrace();
}
try
{
player.stop();
player.close();
is=getClass().getResourceAsStream("/menu.mid");
player=Manager.createPlayer(is,"audio/midi");
player.realize();
player.setLoopCount(-1);
player.start();
}
catch (MediaException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
shamo=new Map_shamo();
bg=shamo.BG_cell;
pz=shamo.PZ_cell;
shamo=null;
mapindex=MAP_SHAMO;
vec.addElement(new Enemy(boss_Image,32,32,2,20,5,250,Hero.spend_Move-1,208,192,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,2,7,0,50,Hero.spend_Move-1,32,208,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,2,7,0,50,Hero.spend_Move-1,0,144,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,2,7,0,50,Hero.spend_Move-1,48,96,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,2,7,0,50,Hero.spend_Move-1,96,32,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,2,7,0,50,Hero.spend_Move-1,224,48,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,2,7,0,50,Hero.spend_Move-1,160,128,"岩石怪"));
for(int i=0;i<vec.size();i++)
lm.insert((Enemy)vec.elementAt(i), 1);
tl_BG=new TiledLayer(15,15,map_cunzi_Image,16,16);
tl_PZ=new TiledLayer(15,15,map_cunzi_Image,16,16);
Hero.setPosition(16,16);
//System.out.println(" "+Hero.getX());
//System.out.println(Hero.getY());
/*
//System.out.println(Hero.getFrameSequenceLength());
Hero.setFrameSequence(moveright);
Hero.setFrame(3);*/
break;
case MAP_YANSHI:
Hero.px=16;
Hero.py=32;
viewWindowX=Hero.px-16;
viewWindowY=Hero.py-32;
System.out.println("++++"+Hero.px);
System.out.println("----"+Hero.py);
try {
guaiwu_yanshi_Image=Image.createImage("/yanshi.png");
guaiwu_qiulin_Image=Image.createImage("/qiulin.png");
} catch (IOException e1) {
// TODO 自动生成 catch 块
e1.printStackTrace();
}
try
{
player.stop();
player.close();
is=getClass().getResourceAsStream("/map3.mid");
player=Manager.createPlayer(is,"audio/midi");
player.realize();
player.setLoopCount(-1);
player.start();
}
catch (MediaException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
// if(npc_king!=null)
// npc_king=null;
yanshi=new Map_yanshi();
bg=yanshi.BG_cell;
pz=yanshi.PZ_cell;
yanshi=null;
npc_Name_king="";
npc_Name_tiejiang="";
npc_Name_shangdian="";
mapindex=MAP_YANSHI;
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,1,5,0,50,Hero.spend_Move-1,128,32,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,1,5,0,50,Hero.spend_Move-1,224,64,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,1,5,0,50,Hero.spend_Move-1,320,16,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,1,5,0,50,Hero.spend_Move-1,416,32,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,1,5,0,50,Hero.spend_Move-1,368,96,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,1,5,0,50,Hero.spend_Move-1,304,208,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,1,5,0,50,Hero.spend_Move-1,480,128,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,1,5,0,50,Hero.spend_Move-1,432,256,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,1,5,0,50,Hero.spend_Move-1,288,288,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,1,5,0,50,Hero.spend_Move-1,143,304,"岩石怪"));
vec.addElement(new Enemy(guaiwu_qiulin_Image,32,32,1,5,0,50,Hero.spend_Move-1,128,432,"岩石怪"));
for(int i=0;i<vec.size();i++)
lm.insert((Enemy)vec.elementAt(i), 1);
tl_BG=new TiledLayer(32,32,map_cunzi_Image,16,16);
tl_PZ=new TiledLayer(32,32,map_cunzi_Image,16,16);
//System.out.println(" "+Hero.getX());
//System.out.println(Hero.getY());
Hero.setPosition(16,32);
/*Hero.setPosition(16,32);
//System.out.println(Hero.getFrameSequenceLength());
Hero.setFrameSequence(moveright);
Hero.setFrame(3);*/
break;
case MAP_SENLIN:
Hero.px=242;
Hero.py=32;
viewWindowX=Hero.px-16;
viewWindowY=Hero.py-32;
try {
guaiwu_qiulin_Image=Image.createImage("/qiulin.png");
guaiwu_senlin_Image=Image.createImage("/senlin.png");
} catch (IOException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
try
{
player.stop();
player.close();
is=getClass().getResourceAsStream("/map2.mid");
player=Manager.createPlayer(is,"audio/midi");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -