社区
windows网络管理与配置
帖子详情
请高手指点帮忙!!!!!!在线等待~~~
cs00cai
2004-06-22 07:41:23
我的一个朋友装了ADSL后和两个邻居共享上网,宽带猫和用户之间加了一个路由。
昨天忽然不能上网,但去掉路由,我朋友自己可以上网。路由经测试工作正常,在其他地方能正常上网。俺对局域网组建无经验,都什么原因有可能出现这种情况呀?
要怎么处理呢?
在线等啊!!!!!!!!!!
谢谢~
...全文
55
3
打赏
收藏
请高手指点帮忙!!!!!!在线等待~~~
我的一个朋友装了ADSL后和两个邻居共享上网,宽带猫和用户之间加了一个路由。 昨天忽然不能上网,但去掉路由,我朋友自己可以上网。路由经测试工作正常,在其他地方能正常上网。俺对局域网组建无经验,都什么原因有可能出现这种情况呀? 要怎么处理呢? 在线等啊!!!!!!!!!! 谢谢~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tokyfeng
2004-06-23
打赏
举报
回复
希望得到拥有两块网卡的PC的 每个网卡的IP及相关配置,另外一台PC的配置以及网络TOP。
给的详细点,我相信问题很好解决
一事無成
2004-06-23
打赏
举报
回复
你先查查,你能不能ping通你朋友的電腦,然後ping 下路由器的IP,看能不能ping通,網關有沒有設成路由器的ip,如果這些都正常的話,那就沒什麼理由拉
cs00cai
2004-06-22
打赏
举报
回复
对了,系统是WIN2000
j2me手机游戏代码
import javax.microedition.lcdui.*; import java.io.*; import java.lang.*; import java.util.Timer; import popup.*; import java.util.Random; import java.util.Vector; import javax.microedition.media.*; public class SwordCanvas extends Canvas implements PopupListener { static int life,energy,skillpoint,x,y,maxlife,maxenergy; static int level; static int experience; static int gold; static int direction; static int basicPower; int totalPower; int[] skillArray,tn; int addMagic,addPower; int stealB; int addPdP; int curNPC; int speed=4; int count; int[] weapon; int curKey; boolean isUpdated; static int[] startX,startY; int curweapon; int curEl; boolean isTask,isTask2; boolean hasBoat; boolean isHiding; boolean isGameOver; boolean tran; boolean isWalking; boolean[] dlg; String[] dlgMenu; boolean isWin,isDie; String strTip; String strDlg; String strPro; String[] attackMenu=new String[]{ "落日","乱电", "残风", "召狼", "召熊", "召龙", "隐身","遁走", "附身", "回血", "补气", "攻击"}; int offY,offX; int dlgn; int dlgMenuChoose; static Image imgHero; static int w,h; static int x0,y0,sl=0,i,j; int killCount; static int[] W,H; int[] mapArray; int[] spriteNum; static int[] screenStart=new int[]{16,29,33,47,68,77,83}; int sx,sy; int sn; Sprite[] SPI; Sprite[] NPC; int attackNumber; int nn; boolean isProMenu,isAttMenu,isTranMenu; boolean isFighting; boolean isTalking; boolean isChange; boolean isGameMenu; int step; static boolean running; String[] dlgM; static Image screenPic; static Image imgNPC; static Image imgProBG,imgState; InputStream is; Vector winString=new Vector(0,1); //static Image[] p; static Image[] screen; static Image[] spic; static Image atpic,imgAttackBG; static Image spic0; Image imgDlg; static Image[] sword; String[] mapName=new String[]{"牛家村","冰火岛 ","大智岛","襄阳城","蓬莱岛","竞技场"}; boolean updateMan; static Graphics g1; Random rand; Player mapPlayer,attPlayer; boolean isWeather; int offsetY=36; Timer timer; int[][] snow=new int[30][30]; TimerTask moveTask,attackTask,attackControlTask,changeMapTask,weatherTask; protected Popup popup; protected String helpStr = "游戏背景:"+ "\n\n" + "
高手
是寂寞的;而磨砺自身成为
高手
的过程,则是孤独的。"+ "\n\n" + "操作方法:"+ "\n\n" + "游戏中用方向键和2、4、6、8键控制主角移动以及进行菜单选择,5键或OK键选定,3键调出/关闭属性菜单,左软键调出操作菜单,可查看帮助信息,保存游戏或回到主菜单。"+ "\n\n" + "关键提示:"+ "\n\n" + "玩家每次升级将得到一点技能属性用来学习技能,每项技能所能修炼的最高等级受主角等级限制,技能等级越高,效果越显著。使用“召狼”等技能时,召唤出的宠物将被优先攻击。使用技能会消耗主角的“气力”,“回气”技能将耗费一定数量的金钱。主角战死会损失一定比例的经验及金钱。"+ "\n\n" + "在战斗过程中菜单选项将不会响应。"+ "\n\n" + "招式详解:"+ "\n\n" + "落日:用内力聚成一个落日,对单个敌人造成极大伤害。"+ "\n\n" + "乱电:在天空中形成流星般的巨石,砸向全部敌人。"+ "\n\n" + "残风:耗费自身的血和气来形成一股飓风,对全部敌人造成较大伤害。"+ "\n\n" + "召狼:召唤精灵狼来辅助战斗,生命力较弱但攻击力很强。"+ "\n\n" + "召熊:召唤精灵熊来辅助战斗,攻击力很弱但生命力较强,可以用作战斗中的护盾。"+ "\n\n" + "召龙:召唤神龙来辅助战斗,可以反弹敌人部分攻击并反伤敌人。"+ "\n\n" + "隐身:在数回合内主角将不受攻击,但使用附身或攻击敌人则会失效。"+ "\n\n" + "遁走:从战斗中直接逃走,技能等级高则逃走成功率大。"+ "\n\n" + "附身:召唤影子与主角并肩作战,使主角生命力和攻击力按比例上升。"+ "\n\n" + "回血:恢复主角一定比例的生命力。"+ "\n\n" + "回气:恢复主角一定比例的气力,但要耗费一定量的金钱。"; public SwordCanvas() { setFullScreenMode(true); running=true; w = getWidth(); h= getHeight()-offsetY; } void init() { isGameOver = false; i=0; level=1; experience=0; skillpoint=0; basicPower=7; gold=0; maxlife=71; life=71; energy=40; maxenergy=40; direction=6; addMagic=0; addPower=0; stealB=0; addPdP=0; curweapon=9; totalPower=basicPower+addPower+addPdP*basicPower/100; weapon=new int[]{9,9,9,9,9,9}; skillArray=new int[]{0,0,0,0,0,0,0,0,0,1,0}; spriteNum=new int[]{60,28,153,76,16,2,0}; startX=new int[]{464,144,32,192,32,128,16}; startY=new int[]{448,432,224,320,144,176,112}; dlg=new boolean[]{false,false,false,false,false,false,false}; tn=new int[]{0,0,0,0,0}; W=new int[]{32,32,32,24,24,16,16}; H=new int[]{32,32,32,24,24,18,18}; if(sl==0) { if(dlg[0]) { x=startX[0]; y=startY[0]; message(2); } else { x=384; y=304; } } else { x=startX[sl]; y=startY[sl]; } if(x>=w/2) { if(x<=W[sl]*16-w/2) x0=x-w/2; else x0=W[sl]*16-w; } else x0=0; if(y>=h/2) { if(y<=H[sl]*16-h/2) y0=y-h/2; else y0=H[sl]*16-h; } else y0=0; isTask=false; isTask2=false; hasBoat=false; isDie=false; isWin=false; isWalking=false; isHiding=false; tran=false; isProMenu=false; isAttMenu=false; isFighting=false; isChange=false; isGameMenu=false; isTalking=false; strTip=null; strDlg=null; SPI=new Sprite[8]; timer=new Timer(); rand=new Random(1000); changeMapTask=null; is=getClass().getResourceAsStream("/Screen"+toString(sl)+".dat"); readMap(is); if(spriteNum[sl]!=0) { is=getClass().getResourceAsStream("/sprite"+toString(sl)+".dat"); readSprite(is); } if(sl==0&&!dlg[0]) message(2); weatherTask=new TimerTask(this,-2); timer.schedule(weatherTask,0,400); } void readSprite(InputStream s) { int i,c,temp; i=0; c=0; temp=0; NPC=null; NPC=new Sprite[spriteNum[sl]]; try { while((c=s.read())!=-1) { switch(c) { case ',': NPC[i++]=new Sprite( temp/10000, temp%10000/100, temp%100); temp=0; break; default: temp=10*temp+c-48; break; } } } catch(java.io.IOException ioe) { } is=null; } void readMap(InputStream s) { int x,y,c,temp; x=0; y=0; temp=0; mapArray=null; mapArray=new int[W[sl]*H[sl]]; int i = 0; try { while((c=s.read())!=-1) { switch(c) { case '\n': y++; x=0; temp=0; break; case ',': mapArray[y*W[sl]+x++]=temp; temp=0; break; default: temp=10*temp+c-48; break; } } } catch(java.io.IOException ioe) { } if(sl==3) { x=getRandom(96)+72; if(mapArray[x]/100==1) { mapArray[x]=mapArray[x]%100+9800; { if(mapArray[x+1]/100==1) mapArray[x+1]=mapArray[x+1]%100+1800; if(mapArray[x-1]/100==1) mapArray[x-1]=mapArray[x-1]%100+1900; if(mapArray[x-24]/100==1) mapArray[x-24]=mapArray[x-24]%100+1600; if(mapArray[x+24]/100==1) mapArray[x+24]=mapArray[x+24]%100+1700; } } x=getRandom(96)+264; if(mapArray[x]/100==1) { mapArray[x]=mapArray[x]%100+9800; { if(mapArray[x+1]/100==1) mapArray[x+1]=mapArray[x+1]%100+1800; if(mapArray[x-1]/100==1) mapArray[x-1]=mapArray[x-1]%100+1900; if(mapArray[x-24]/100==1) mapArray[x-24]=mapArray[x-24]%100+1600; if(mapArray[x+24]/100==1) mapArray[x+24]=mapArray[x+24]%100+1700; } } } else if(sl==6) { for(int ii=0;ii<256;ii++) { if(mapArray[ii]/100==1) mapArray[ii]=mapArray[ii]%100+(getRandom(100)<70?(getRandom(3)+16)*100:100); } } is=null; } public void keyRepeated(int keyCode) { int action=getGameAction(keyCode); if(action==Canvas.UP||action==Canvas.DOWN||action==Canvas.LEFT||action==Canvas.RIGHT) keyPressed(keyCode); } public void keyPressed(int keyCode) { int action=getGameAction(keyCode); if (popup!=null&&popup.isActive()) { popup.keyPressed(keyCode, action); repaint(); return; } if(keyCode==35) MenuCanvas.midlet.exit(); curKey=keyCode; if(!isChange) { switch(action) { case GAME_B: if(!isWin&&!isDie&&!isChange&&!isTranMenu&&!isTalking&&!isGameMenu&&moveTask==null) { isProMenu=!isProMenu; offY=0; offX=0; i=0; j=0; repaint(); } break; case UP: if(isGameMenu) { i=i-1>=0?i-1:0; repaint(); } else if(!isProMenu&&!isTranMenu&&!isWin&&!isDie&&!isTalking&&strTip==null&&!isFighting) { if(moveTask==null) { if(direction/3!=2) { direction=6; repaint(); } else setMoveTask(); } } else if(isProMenu) { strPro=null; offY=0; j=0; i=i-1>=0?i-1:3; repaint(); } else if(isTranMenu) { if(dlg[2]) i=i-1>=0?i-1:5; else if(isTask) i=i-1>=0?i-1:4; else i=i-1>=0?i-1:3; repaint(0,0,128,128); } else if(isAttMenu) { i=i-4>=0?i-4:i+8; repaint(); } else if(isTalking&&strTip==null)//对对话菜单的操作 { if(curNPC==6||curNPC==4||curNPC==5) dlgMenuChoose=dlgMenuChoose-1>=0?dlgMenuChoose-1:dlgMenu.length-1; repaint(); } break; case DOWN://下键 if(isGameMenu) { i=i+1<=4?i+1:4; repaint(); } else if(!isProMenu&&!isFighting&&!isTranMenu&&!isWin&&!isDie&&!isTalking&&strTip==null) { if(moveTask==null) { if(direction/3!=1) { direction=3; repaint(); } else setMoveTask(); } } else if(isProMenu) { strPro=null; offY=0; i=i+1<4?i+1:0; j=0; repaint(); } else if(isTranMenu) { if(dlg[2]) i=i+1<6?i+1:0; else if(isTask) i=i+1<5?i+1:0; else i=i+1<4?i+1:0; repaint(); } else if(isAttMenu) { i=i+4<12?i+4:i-8; repaint(); } else if(isTalking&&strTip==null)//对话时候的菜单选项 { if(curNPC==6||curNPC==4||curNPC==5) dlgMenuChoose=dlgMenuChoose+1<=dlgMenu.length-1?dlgMenuChoose+1:0; repaint(); } break; case LEFT://左键 if(isProMenu) { if(i==2) j=j-1>=0?j-1:10; else if(i==1&&j>0) for(int ii=j-1;ii>=0;ii--) { if(weapon[ii]!=9) { offY=0; j=ii; break; } } repaint(); } else if(!isProMenu&&!isFighting&&!isTranMenu&&!isWin&&!isDie&&!isTalking&&strTip==null&&!isGameMenu) { if(moveTask==null) { if(direction/3!=0) { direction=0; repaint(); } else setMoveTask(); } } else if(isAttMenu) { i=i-1>=0?i-1:11; repaint(); } else if(isTalking&&strTip==null) { if(curNPC==6||curNPC==4||curNPC==5) i=i-1>=0?i-1:0; repaint(); } break; case RIGHT://右键 if(isProMenu) { if(i==2) { j=j+1<11?j+1:0; repaint(); } else if(i==1) { for(int ii=j+1;ii<6;ii++) { if(weapon[ii]!=9) { offY=0; j=ii; break; } } repaint(); } } else if(!isProMenu&&!isTranMenu&&!isFighting&&!isWin&&!isDie&&!isTalking&&strTip==null&&!isGameMenu) { if(moveTask==null) { if(direction/3!=3) { direction=9; repaint(); } else setMoveTask(); } } else if(isAttMenu) { i=i+1<=11?i+1:0; repaint(); } else if(isTalking&&strTip==null)//对话时候的菜单选项 { if(curNPC==6||curNPC==4) i=i+1<=1?i+1:0; else if(curNPC==5) { switch(sn) { case 1: i=i+1<=2?i+1:0; break; case 2: i=i+1<=1?i+1:0; break; default: break; } } repaint(); } break; case FIRE: FIRE(); break; default: switch(keyCode) { case KEY_NUM1://1键取消 // if(isAttMenu&&!isProMenu) // { // isAttMenu=false; // attackNumber=4; // repaint(); // } // else if(isProMenu&&i==2) { gold+=(weapon[j]%3+1)*(weapon[j]%3+1)*100; if(curweapon==weapon[j]) curweapon=9; weapon[j]=9; addPower=0; addMagic=0; addPdP=0; totalPower=basicPower; repaint(0,0,240,309); } break; case -6: FIRE(); break; default: break; } break; } } } public void FIRE() { if(isGameOver){ MenuCanvas.loadResource(); SwordMIDlet.show(SwordMIDlet.menuCanvas); MenuCanvas.se.stopSound(mapPlayer); } if(isGameMenu) { if(i==4) { isGameMenu=!isGameMenu; repaint(); } else if(i==3) { SwordStore store=new SwordStore(); store.save(); store=null; isGameMenu=false; screen=null; MenuCanvas.loadResource(); SwordMIDlet.show(SwordMIDlet.menuCanvas); MenuCanvas.se.stopSound(mapPlayer); } else if(i==0) {if(popup == null)popup = new Popup(); showPopup(helpStr.toCharArray(), Popup.ALT_OK, 0, 0, 0); } else if(i==2) { MenuCanvas.isAudioOn=!MenuCanvas.isAudioOn; if(MenuCanvas.isAudioOn) MenuCanvas.se.playSound(mapPlayer); else MenuCanvas.se.pauseSound(mapPlayer); isGameMenu=false; repaint(); } else { SwordStore store=new SwordStore(); store.save(); store=null; isGameMenu=false; repaint(); } } else if(isProMenu) { if(i==2&&skillpoint>0&&skillArray[j]<10) { if(skillArray[j]==0||level>=3*skillArray[j]) { if(j==9||j==10||j==7) { if(skillArray[j]<5) { skillArray[j]++; skillpoint--; } } else { skillArray[j]++; skillpoint--; } } repaint(0,0,160,128); } else if(i==3) { if(weapon[j]!=9) { curweapon=weapon[j]; addMagic=0; addPower=0; addPdP=0; switch(curweapon) { case 0: addPower=5; stealB=10; break; case 1: addPower=10; stealB=25; break; case 2: addPower=15; stealB=45; break; case 3: addMagic=10; break; case 4: addMagic=20; break; case 5: addMagic=30; break; case 6: addPdP=15; break; case 7: addPdP=25; break; case 8: addPdP=35; break; default: break; } totalPower=basicPower+addPower+addPdP*basicPower/100; if(isFighting) SPI[0].basicPower=totalPower; repaint(); } } } else if(isTranMenu) { if(sl!=i) { if(sl!=0) { if(gold>=100) { gold-=100; changeMap(i); } else { strTip="银两不够"; isTranMenu=false; repaint(); } } else changeMap(i); } else { isTranMenu=false; repaint(); } } else if(isAttMenu) { if((i<11&&skillArray[i]>0)||i==11) setAttack(i); } else if(strTip!=null) { strTip=null; strDlg=null; imgDlg=null; repaint(); } else if(isTalking) { if(curNPC<2) { if(sn==dlgM.length-1) { isTalking=false; dlg[curNPC]=true; imgDlg=null; } else { sn++; createDialogImage(dlgM[sn]); } repaint(); } else switch(curNPC) { case 2: if(sn==2) { dlg[curNPC]=true; imgDlg=null; isTalking=false; changeMap(5); } else { sn++; createDialogImage(dlgM[sn]); repaint(); } break; case 3: if(sn==5) { gold+=10000; isTask2=true; sn++; } else if(sn==6||sn==7) { //removeCommand(con); isTalking=false; dlg[curNPC]=true; imgDlg=null; } else { sn++; createDialogImage(dlgM[sn]); } repaint(); break; case 6://船工 if(dlgMenuChoose==0) { if(hasBoat) { strTip="你已经有船了"; isTalking=false; } else if(gold>=600) { gold-=600; hasBoat=true; isTalking=false; strTip="买卖成功"; } else { strTip="银两不够"; isTalking=false; } } else { isTalking=false; imgDlg=null; } repaint(); break; case 5://洪七公 switch(sn) { case 0: if(dlgMenuChoose==0) { sn=1; dlgMenu=new String[2]; dlgMenu[0]="现在分配"; dlgMenu[1]="以后再说"; } else if(dlgMenuChoose==1) { dlgMenu=null; isTask=true; sn=2; } else { isTalking=false; imgDlg=null; return; } createDialogImage(dlgM[sn]); repaint(); break; case 2: { isTalking=false; imgDlg=null; //removeCommand(con); } repaint(); break; case 1: if(dlgMenuChoose==0) { if(gold>=10000) { gold-=10000; for(int ii=0;ii<11;ii++) { while(skillArray[ii]>0) { skillArray[ii]--; skillpoint++; } } isTalking=false; imgDlg=null; //removeCommand(con); } else { strTip="银两不够"; isTalking=false; } } else { isTalking=false; imgDlg=null; } repaint(); break; default: break; } break; case 4://竞技官 if(dlgMenuChoose==0) { if(gold>=350) { gold-=350; isTalking=false; imgDlg=null; changeMap(6);//进入竞技场 killCount=0; } else { strTip="银两不够"; isTalking=false; } } else { isTalking=false; imgDlg=null; } repaint(); break; default: break; } } else if(isWin) { if(sl!=6) { isWin=false; updateMan=false; winString=new Vector(0,1); repaint(); } else { isWin=false; if(killCount==10) { gold+=10000; changeMap(3); } else repaint(); } } else if(isDie)//死亡后重生 { isDie=false; isFighting=false; life=maxlife; energy=maxenergy; experience-=(experience-getExperience(level))*20/100; gold=gold*70/100; changeMap(0); } else if(curKey==-6) { isGameMenu=true; repaint(); } } public void keyReleased(int keyCode) { int action = getGameAction(keyCode); if(action==Canvas.UP||action==Canvas.DOWN||action==Canvas.LEFT||action==Canvas.RIGHT) { isWalking=false; } } public void drawGameMenu(Graphics g) { g.setColor(0,0,100); g.fillRoundRect(71,73,86,118,30,30); g.setColor(getRandom(255),getRandom(255),getRandom(255)); g.drawRoundRect(71,73,86,118,30,30); g.setColor(0); g.drawRoundRect(70,72,88,120,30,30); g.setColor(getRandom(255),getRandom(255),getRandom(255)); g.drawRoundRect(69,71,90,122,30,30); String[] text=new String[]{"帮助说明","保存游戏",MenuCanvas.isAudioOn?"关闭音效":"打开音效","回主菜单","继续游戏"}; for(int ii=0;ii<5;ii++) { if(i==ii) MenuCanvas.ge.drawStringShadow(g,0x00ff00,0x00ff00,0,text[ii],113,ii*20+80,g.HCENTER|g.TOP); else MenuCanvas.ge.drawStringShadow(g,0,0,-1,text[ii],113,ii*20+80,g.HCENTER|g.TOP); } } public int getRandom(int n) { int r =rand.nextInt(); if(r<0) r=-r; r=r%n; return r; } public void drawWeather(Graphics g1) { switch(weatherTask.s) { case 0://雨天 int energy=-10; if(isWeather) energy=-10+getRandom(5); g1.setColor(-1); for(int j=0;j<14;j++) for(int i=energy+j;i<270;i+=30) { if(getRandom(100)<80) g1.drawLine(i,j*20,i+6,j*20+6); } break; case 1: g1.setColor(-1); if(isWeather) { for(int i=snow.length-1;i>0;i--) { for(int j=0;j
=0) snow[0][j]=snow[0][j]*100+getRandom(120); else snow[0][j]=snow[0][j]*100-getRandom(120); } } /*画雪*/ for(int i=0;i
请不要轻易前往"; break; case 4: dlgM=new String[3]; dlgM[0]="黄药师:你从很远的地方来的,是为了找郭靖吧!"; dlgM[1]="尹风:是,求仙人
指点
。"; dlgM[2]="黄药师:好,随我来"; break; case 5:// dlgM=new String[9]; dlgM[0]="尹风:郭大侠,不才愿助您驻守襄阳!"; dlgM[1]="郭靖:现在有一件很重要的事需要你的
帮忙
。"; dlgM[2]="尹风:大侠
请
说!"; dlgM[3]="郭靖:马上就到冬季,将士们需要100件去寒之物。"; dlgM[4]="尹风:这个好办,我来的路上经过一个荒岛,上面野兽众多,找点皮毛还不容易。"; dlgM[5]="郭靖:这样便好,那就托付与你了,这些银两你带上。"; dlgM[6]="获得银两10000"; dlgM[7]="郭靖:早去早回。"; dlgM[8]="郭靖:太好了,有了这些虎皮,整个冬天都不怕了,过了这个冬天就是复我河山之时!"; break; case 6: dlgM=new String[1]; dlgMenu=new String[2]; dlgM[0]="你希望参加这个勇士的竞技吗?需要收取350两费用,竞技必须是杀死所有野兽才会停止."; dlgMenu[0]="参加"; dlgMenu[1]="离开"; break; case 7://洪七公 dlgM=new String[3]; dlgM[0]="最近老觉得身体不好,本想自己去收集些药引,可是力不从心了,希望你可以帮助我,我将会给你一些报酬"; dlgM[1]="重新分配技能点需要10000两,交纳费用后你可以将技能点重新分配"; dlgM[2]="在荒岛收集10粒九花玉露丸,5棵通天草,在大智岛收集10棵千年人参,在蓬莱收集5个灵芝"; dlgMenu=new String[3]; dlgMenu[0]="分配技能"; dlgMenu[1]="接受任务"; dlgMenu[2]="离开这里"; break; case 8://船工 dlgM=new String[1]; dlgMenu=new String[2]; dlgMenu[0]="购买"; dlgMenu[1]="离开"; dlgM[0]="在这里你找不到比我这更好的船了!船只价格是600两,你赶紧买吧!"; break; } if(!dlg[ii-2]) sn=0; else if(ii<5) sn=dlgM.length-1; else if(ii==5) { if(tn[4]==20) sn=7; else sn=6; } else sn=0; createDialogImage(dlgM[sn]); repaint(); } public void update(Vector string) { if(sl==6) killCount++; if(curEl!=15) { String temp; temp=null; boolean out=false; string.addElement((String)("获得金钱:"+String.valueOf(nn)));//更新金钱 string.addElement((String)("获得经验:"+String.valueOf(sn)));//更新经验值 gold+=nn; while(true) { if(experience+sn>=getExperience(level+1)) { level++; skillpoint++; out=true; energy=20*level+20; maxenergy=energy; maxlife=level*level+10*level+60; life=maxlife; basicPower=5*level+2; totalPower=basicPower+addPdP*basicPower/100+addPower; } else break; } experience+=sn; if(out) string.addElement((String)("人物等级提升到第"+String.valueOf(level)+"级"));//更新等级 for(int iii=0;iii<6;iii++) { if(weapon[iii]==9) { int ii=getRandom(100); switch(curEl) { case 2: if(ii<=2&&ii>=0&&!hasWeapon(0)) { weapon[iii]=0; temp="承影剑"; } else if(ii<=6&&ii>=3&&!hasWeapon(3)) { weapon[iii]=3; temp="干将莫邪剑"; } break; case 3: if(ii<=5&&ii>=0&&!hasWeapon(0)) { weapon[iii]=0; temp="承影剑"; } else if(ii<=10&&ii>=6&&!hasWeapon(3)) { weapon[iii]=3; temp="干将莫邪剑"; } else if(ii<=14&&ii>=11&&!hasWeapon(6)) { weapon[iii]=6; temp="赤霄剑"; } break; case 4: if(ii<=7&&ii>=0&&!hasWeapon(0)) { weapon[iii]=0; temp="承影剑"; } else if(ii<=11&&ii>=8&&!hasWeapon(1)) { weapon[iii]=1; temp="纯钧剑"; } else if(ii<=18&&ii>=12&&!hasWeapon(3)) { weapon[iii]=3; temp="干将莫邪剑"; } else if(ii<=25&&ii>=19&&!hasWeapon(6)) { weapon[iii]=6; temp="赤霄剑"; } break; case 5: if(ii<=5&&ii>=0&&!hasWeapon(1)) { weapon[iii]=1; temp="纯钧剑"; } else if(ii<=15&&ii>=6&&!hasWeapon(3)) { weapon[iii]=3; temp="干将莫邪剑"; } else if(ii<=18&&ii>=16&&!hasWeapon(4)) { weapon[iii]=4; temp="龙渊剑"; } else if(ii<=27&&ii>=19&&!hasWeapon(6)) { weapon[iii]=6; temp="赤霄剑"; } break; case 6: if(ii<=8&&ii>=0&&!hasWeapon(1)) { weapon[iii]=1; temp="纯钧剑"; } else if(ii<=14&&ii>=9&&!hasWeapon(4)) { weapon[iii]=4; temp="龙渊剑"; } else if(ii<=17&&ii>=15&&!hasWeapon(7)) { weapon[iii]=7; temp="湛泸剑"; } break; case 7: if(ii<=10&&ii>=0&&!hasWeapon(1)) { weapon[iii]=1; temp="纯钧剑"; } else if(ii<=18&&ii>=11&&!hasWeapon(4)) { weapon[iii]=4; temp="龙渊剑"; } else if(ii<=23&&ii>=19&&!hasWeapon(7)) { weapon[iii]=7; temp="湛泸剑"; } break; case 8: if(ii<=3&&ii>=0&&!hasWeapon(2)) { weapon[iii]=2; temp="鱼肠剑"; } else if(ii<=13&&ii>=4&&!hasWeapon(4)) { weapon[iii]=4; temp="龙渊剑"; } else if(ii<=19&&ii>=14&&!hasWeapon(7)) { weapon[iii]=7; temp="湛泸剑"; } break; case 9: if(ii<=5&&ii>=0&&!hasWeapon(2)) { weapon[iii]=2; temp="鱼肠剑"; } else if(ii<=8&&ii>=6&&!hasWeapon(5)) { weapon[iii]=5; temp="泰阿剑"; } else if(ii<=15&&ii>=12&&!hasWeapon(8)) { weapon[iii]=8; temp="轩辕剑"; } break; case 10: if(ii<=7&&ii>=0&&!hasWeapon(2)) { weapon[iii]=2; temp="鱼肠剑"; } else if(ii<=13&&ii>=8&&!hasWeapon(5)) { weapon[iii]=5; temp="泰阿剑"; } else if(ii<=19&&ii>=14&&!hasWeapon(8)) { weapon[iii]=8; temp="轩辕剑"; } break; default: break; } break; } } if(temp!=null) { string.addElement((String)("获得武器:"+temp)); } if(isTask&&sl!=6&&temp==null) { temp=null; int ii; ii=getRandom(100); if(ii<30) { switch(curEl) { case 4://豺 if(tn[0]<10) { tn[0]++; temp="九花玉露丸"; } break; case 5://狼 if(tn[1]<5) { tn[1]++; temp="通天草"; } break; case 6://虎 if(tn[4]<20&&isTask2) { tn[4]++; temp="虎皮"; } break; case 9://僵尸将军 if(tn[2]<10) { tn[2]++; temp="千年人参"; } break; case 10://Boss if(tn[3]<5) { tn[3]++; temp="灵芝"; } break; default: break; } } if(temp!=null) { string.addElement((String)("获得任务物品:"+temp)); } } temp=null; if(sl==6&&killCount!=10) { string.addElement((String)("还须进行"+toString(10-killCount)+"场战斗")); } if(sl==6&&killCount==10) { string.addElement((String)("获得银子10000两")); } } else { isGameOver = true; } } public void createDialogImage(String s) { strDlg=s; dlgn=10; imgDlg=null; int dw = dlgn*15; int dh = ((s.length()-1)/dlgn+1)*20+3; if(dlgMenu!=null) dh = ((s.length()-1)/dlgn+1)*20+20; imgDlg=Image.createImage(dw,dh); if(dlgMenu!=null)//显示对话菜单 imgDlg=Image.createImage(dw,dh); g1=imgDlg.getGraphics(); g1.setFont(MenuCanvas.mFont); g1.setColor(0x9B7319); g1.fillRect(0,0,dw,dh); g1.setColor(0xffffff); g1.drawRect(0,0,dw-1,dh-1); g1=null; } public void drawDialog(Graphics g) { g.setColor(0xffffff); g.drawImage(imgDlg,w/2-imgDlg.getWidth()/2,h/2-imgDlg.getHeight()/2,0); for(int i=0;i
=w/2) { if(x<=W[sl]*16-w/2) x0=x-w/2; else x0=W[sl]*16-w; } else x0=0; if(y>=h/2) { if(y<=H[sl]*16-h/2) y0=y-h/2; else y0=H[sl]*16-h; } else y0=0; is=getClass().getResourceAsStream("/Screen"+toString(sl)+".dat"); readMap(is); if(sl!=6) { is=getClass().getResourceAsStream("/sprite"+toString(sl)+".dat"); readSprite(is); } changeMapTask=null; changeMapTask=new TimerTask(this,13); timer.schedule(changeMapTask,0,200); isChange=true; } public void cancelMove() { moveTask.cancel(); moveTask=null; } public void cancelAttackTask() { attackTask.cancel(); while(attackTask.cancel()) { } attackTask=null; } public void move() { if(direction%3==0&&step==0)//||direction%3==0) { if(getMapMark()>1&&getMapMark()<10)//对话NPC出现的Tile { if(getMapMark()==4) { if(tn[0]==10&&tn[1]==5&&tn[2]==10&&tn[3]==5) message(4); } else message(getMapMark()); cancelMove(); direction=direction/3*3; repaint(); } else if(getMapMark()==99)//场景出入口 { if(hasBoat) { isTranMenu=true; i=0; } else strTip="
请
去找船工买船"; cancelMove(); direction=direction/3*3; repaint(); } else if(getMapMark()==97) { cancelMove(); if(tn[0]==10&&tn[1]==5&&tn[2]==10&&tn[3]==5&&tn[4]==20) setAttack(1,15); else { isTranMenu=true; direction=direction/3*3; repaint(); } } else if(getMapMark()==98) { cancelMove(); int ii=getRandom(2*sl+1)*10; gold+=ii*(2*sl+1); strTip=ii>0?"获得"+toString(ii*(2*sl+1))+"两银子":"一无所获"; switch(direction/3) { case 1: if(y
10&&getMapMark()<21) { setAttack(getEnemyNum(),getMapMark()-10); if(!isFighting) { if(direction%3==0&&step==0) { direction+=1; step=1; } if(direction%3==0&&step==1) { direction+=2; step=0; } if(direction%3==1||direction%3==2) direction=direction/3*3; switch(direction) { case 7://向上1 y-=speed; if(y0>0&&y-y0<=h/2) y0-=speed; repaint(); break; case 4://向下1 y+=speed; if(y0<(H[sl]-(h+15)/16)*16&&y-y0>=h/2) y0+=speed; repaint(); break; case 1://向左1 x-=speed; if(x0>0&&x-x0<=w/2) x0-=speed; repaint(); break; case 10://向右1 x+=speed; if(x0<(W[sl]-w/16)*16&&x-x0>=w/2) x0+=speed; repaint(); break; default://静止状态 repaint(); break; } } else { switch(direction/3) { case 0://向左 x-=16; break; case 1://向下 y+=16; break; case 2://向上 y-=16; break; case 3://向右 x+=16; break; } if(x>=w/2) { if(x<=W[sl]*16-w/2) x0=x-w/2; else x0=W[sl]*16-w; } else x0=0; if(y>=64) { if(y<=H[sl]*16-h/2) y0=y-h/2; else y0=H[sl]*16-h; } else y0=0; } cancelMove(); } else if(getMapMark()==1) { if(direction%3==0&&step==0) { direction+=1; step=1; } else if(direction%3==0&&step==1) { direction+=2; step=0; } else if(direction%3==1||direction%3==2) direction=direction/3*3; switch(direction) { case 7://向上1 y-=speed; if(y0>0&&y-y0<=h/2) y0-=speed; repaint(); break; case 4://向下1 y+=speed; if(y0<(H[sl]-(h+15)/16)*16&&y-y0>=h/2) y0+=speed; repaint(); break; case 1://向左1 x-=speed; if(x0>0&&x-x0<=w/2) x0-=speed; repaint(); break; case 10://向右1 x+=speed; if(x0<(W[sl]-w/16)*16&&x-x0>=w/2) x0+=speed; repaint(); break; default://静止状态 repaint(); break; } } else { moveTask.cancel(); moveTask=null; direction=direction/3*3; repaint(); } } else { if(direction%3==0&&step==0) { direction+=1; step=1; } else if(direction%3==0&&step==1) { direction+=2; step=0; } else if(direction%3==1||direction%3==2) direction=direction/3*3; switch(direction) { case 6: if(step==1)//向上2 { y-=speed; if(y0>0&&y-y0<=h/2) y0-=speed; repaint(); } if(step==0)//向上4 { y-=speed; if(y0>0&&y-y0<=h/2) y0-=speed; if(!isWalking) cancelMove(); repaint(); } break; case 7://向上1 y-=speed; if(y0>0&&y-y0<=h/2) y0-=speed; repaint(); break; case 8://向上3 y-=speed; if(y0>0&&y-y0<=h/2) y0-=speed; repaint(); break; case 3: if(step==1) { y+=speed; if(y0<(H[sl]-(h+15)/16)*16&&y-y0>=h/2) y0+=speed; repaint(); } if(step==0) { y+=speed; if(y0<(H[sl]-(h+15)/16)*16&&y-y0>=h/2) y0+=speed; repaint(); if(!isWalking) cancelMove(); } break; case 4://向下1 y+=speed; if(y0<(H[sl]-(h+15)/16)*16&&y-y0>=h/2) y0+=speed; repaint(); break; case 5://向下2 y+=speed; if(y0<(H[sl]-(h+15)/16)*16&&y-y0>=h/2) y0+=speed; repaint(); break; case 0: if(step==1) { x-=speed; if(x0>0&&x-x0<=w/2) x0-=speed; repaint(); } if(step==0) { x-=speed; if(x0>0&&x-x0<=w/2) x0-=speed; repaint(); if(!isWalking) cancelMove(); } break; case 1://向左1 x-=speed; if(x0>0&&x-x0<=w/2) x0-=speed; repaint(); break; case 2://向左2 x-=speed; if(x0>0&&x-x0<=w/2) x0-=speed; repaint(); break; case 9: if(step==1) { x+=speed; if(x0<(W[sl]-w/16)*16&&x-x0>=w/2) x0+=speed; repaint(); } if(step==0) { x+=speed; if(x0<(W[sl]-w/16)*16&&x-x0>=w/2) x0+=speed; repaint(); if(!isWalking) cancelMove(); } break; case 10://向右1 x+=speed; if(x0<(W[sl]-w/16)*16&&x-x0>=w/2) x0+=speed; repaint(); break; case 11://向右2 x+=speed; if(x0<(W[sl]-w/16)*16&&x-x0>=w/2) x0+=speed; repaint(); break; default://静止状态 repaint(); break; } } } public void setAttack(int k) { attackTask=null; switch(k) { case 0: if(energy>=10*skillArray[0]) { attackTask=new TimerTask(this,4); energy-=10*skillArray[0]; isAttMenu=false; if(isHiding) { isHiding=!isHiding; SPI[0].p=130; } } break; case 1: if(energy>=10*skillArray[1]) { attackTask=new TimerTask(this,5); energy-=10*skillArray[1]; isAttMenu=false; if(isHiding) { isHiding=!isHiding; SPI[0].p=130; } } break; case 2: if(energy>=20*skillArray[2]&&life>=4*skillArray[2]*maxlife/100) { attackTask=new TimerTask(this,6); energy-=20*skillArray[2]; life-=4*skillArray[2]*maxlife/100; SPI[0].life=life; isAttMenu=false; if(isHiding) { isHiding=!isHiding; SPI[0].p=130; } } break; case 3: if(energy>=(20*skillArray[3])) { SPI[1]=new Sprite(8*skillArray[3]*skillArray[3]+40,4*skillArray[3]*skillArray[3]+10); SPI[1].p=120; SPI[1].x=36; SPI[1].y=112+32+40; energy-=20*skillArray[3]; isAttMenu=false; attackNumber=4; repaint(); } break; case 4://召熊 if(energy>=(30*skillArray[4])) { SPI[2]=new Sprite(20*skillArray[4]*skillArray[4]+60,skillArray[4]*skillArray[4]+7); SPI[2].p=100; SPI[2].x=36; SPI[2].y=64+32+40; energy-=30*skillArray[4]; isAttMenu=false; attackNumber=4; repaint(); } break; case 5: if(energy>=30*skillArray[5]) { SPI[3]=new Sprite(10*skillArray[5]*skillArray[5]+40,0); SPI[3].p=110; SPI[3].x=36; SPI[3].y=32+32+40; energy-=30*skillArray[5]; isAttMenu=false; attackNumber=4; repaint(); } break; case 6: if(energy>=5*skillArray[6]) { SPI[0].p=140; if(tran) { tran=!tran; maxlife=level*level+10*level+60; life=life-life*10*skillArray[8]/(100+10*skillArray[8])>maxlife?maxlife:(life-life*10*skillArray[8]/(100+10*skillArray[8])); SPI[0].life=life; basicPower=5*level+2; totalPower=basicPower+addPower+addPdP*basicPower/100; SPI[0].basicPower=totalPower; } isHiding=true; energy-=5*skillArray[6]; count=0; isAttMenu=false; attackNumber=4; repaint(); } break; case 7://遁走 if(energy>=10*skillArray[7]*skillArray[7]) { energy-=10*skillArray[7]*skillArray[7]; if(getRandom(100)<20*skillArray[7]) { isFighting=false; repaint(); attackControlTask.cancel(); attackControlTask=null; for(int ii=0;ii<8;ii++) SPI[ii]=null; if(tran) { tran=!tran; maxlife=20*level+60; life=life-life*10*skillArray[8]/(100+10*skillArray[8])>maxlife?maxlife:(life-life*10*skillArray[8]/(100+10*skillArray[8])); basicPower=3*level+2; totalPower=basicPower+basicPower*addPdP/100+addPower; } repaint(); } else { isAttMenu=false; attackNumber=4; repaint(); } } break; case 8://附身 if(energy>=30+3*skillArray[8]*skillArray[8]&&!tran) { energy-=30+3*skillArray[8]*skillArray[8]; tran=true; if(isHiding) isHiding=!isHiding; SPI[0].p=150; maxlife+=maxlife*10*skillArray[8]/100; life+=life*10*skillArray[8]/100; SPI[0].life=life; basicPower+=basicPower*20*skillArray[8]/100; totalPower=basicPower+addPdP*basicPower/100+addPower; SPI[0].basicPower=totalPower; count=0; isAttMenu=false; attackNumber=4; repaint(); } break; case 9: if(energy>=3*skillArray[9]*skillArray[9]) { energy-=3*skillArray[9]*skillArray[9]; attackTask=new TimerTask(this,10); isAttMenu=false; } break; case 10: if(gold>=20*skillArray[10]*maxenergy/100) { gold-=20*skillArray[10]*maxenergy/100; attackTask=new TimerTask(this,11); isAttMenu=false; } break; case 11: attackTask=new TimerTask(this,0); if(isHiding) isHiding=!isHiding; isAttMenu=false; attackNumber=0; break; case 12: attackTask=new TimerTask(this,9); attackTask.j=attackNumber; break; case 22: attackTask=new TimerTask(this,2); break; case 21: attackTask=new TimerTask(this,1); break; } if(attackTask!=null) { if(attackTask.type==4) timer.schedule(attackTask,0,200); else timer.schedule(attackTask,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 setAttack(int n,int lvl) { if(n!=0) { try { imgAttackBG=Image.createImage("/attackBg"+String.valueOf(getRandom(9))+".png"); } catch(Exception e) { } if(MenuCanvas.isAudioOn) { MenuCanvas.se.closeSound(mapPlayer); attPlayer=MenuCanvas.se.createPlayer("/attack.mid",1000); MenuCanvas.se.playSound(attPlayer); } for(int i=0;i
(strPro.length()-1)/8*18) offY=0; g.setClip(0,0,240,309); } public void drawTranMenu(Graphics g) { g.setColor(0,0,100); g.fillRoundRect(71,73,86,120,30,30); g.setColor(getRandom(255),getRandom(255),getRandom(255)); g.drawRoundRect(71,73,86,120,30,30); g.setColor(0); g.drawRoundRect(70,72,88,122,30,30); g.setColor(getRandom(255),getRandom(255),getRandom(255)); g.drawRoundRect(69,71,90,124,30,30); MenuCanvas.ge.drawStringShadow(g,0xff0000,0x00ff00,0x00ff00,"当前所在地:"+mapName[sl],116,48,g.HCENTER|g.TOP); MenuCanvas.ge.drawStringShadow(g,0,0x0000ff,0x00ff00,"
请
选择你要前往的地方",116,211,g.HCENTER|g.TOP); for(int k=0;k<6;k++) { if(!isTask&&k==4) continue; if(!dlg[2]&&k==5) continue; if(k==i) MenuCanvas.ge.drawStringShadow(g,0,0x0000ff,0x00ff00,mapName[k],113,k*20+90,g.HCENTER|g.TOP); else MenuCanvas.ge.drawStringShadow(g,0x00ff00,0,-1,mapName[k],113,k*20+90,g.HCENTER|g.TOP); } } public void drawProMenu(Graphics g) { g.drawImage(imgProBG,0,0,0); switch(i) { case 0://状态显示 MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"血:"+toString(life)+"/"+toString(maxlife),100,20,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"气:"+toString(energy)+"/"+toString(maxenergy),100,38,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"经验:"+toString(experience)+" / "+toString(getExperience(level+1)),100,56,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"银两:"+toString(gold),100,74,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"攻击力:"+toString(basicPower)+"+"+toString(addPower+basicPower*addPdP/100),100,92,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"等级:"+toString(level),100,110,0); MenuCanvas.ge.drawStringShadow(g,0xffff00,0xffff00,0xff0000,"你可以在这里查看",100,214,0); MenuCanvas.ge.drawStringShadow(g,0xffff00,0xffff00,0xff0000,"尹风的各项属性",100,230,0); break; case 1: String temp=new String(); switch(weapon[j]) { case 0: temp="承影剑"; break; case 1: temp="纯钧剑"; break; case 2: temp="鱼肠剑"; break; case 3: temp="干将莫邪剑"; break; case 4: temp="龙渊剑"; break; case 5: temp="泰阿剑"; break; case 6: temp="赤霄剑"; break; case 7: temp="湛泸剑"; break; case 8: temp="轩辕剑"; break; } if(weapon[j]!=9) { if(curweapon!=weapon[j]) MenuCanvas.ge.drawStringShadow(g,0xff0000,0xff0000,-1,temp,139,16,0); else MenuCanvas.ge.drawStringShadow(g,0x00ff00,0x00ff00,-1,temp,139,16,0); g.setColor(97,66,31); g.fillRect(100,36,112,112); g.setColor(0); g.drawRect(100,36,112,112); g.setColor(-1); g.drawRect(99,35,114,114); g.setColor(0); g.drawRect(98,34,116,116); MenuCanvas.ge.drawClipImage(g,MenuCanvas.imgArrow,105-offX,90,5,10,0,0); MenuCanvas.ge.drawClipImage(g,MenuCanvas.imgArrow,200+offX,90,5,10,5,0); offX+=2; if(offX==4) offX=0; g.drawImage(sword[weapon[j]],110,40,0); } MenuCanvas.ge.drawStringShadow(g,0,0,-1,"绿色为当前装备",94,150,0); MenuCanvas.ge.drawStringShadow(g,-1,-1,0,"可以按"1"卖掉",94,168,0); if(weapon[j]!=9) { g.setColor(255,255,255); switch(weapon[j]) { case 0: strPro="有影无形的长剑,双手合握之中是一截剑柄,只有剑柄不见长剑剑身,见于《列子-汤问》。物理攻击力加5,吸血10%"; break; case 1: strPro="铸剑之时,雷公打铁,雨娘淋水,蛟龙捧炉,天帝装炭。千年赤堇山山破而出锡,万载若耶江江水干涸而出铜。铸剑大师欧冶子承天之命呕心沥血与众神铸磨十载此剑方成。剑成之后,众神归天,赤堇山闭合如初,若耶江波涛再起,欧冶子也力尽神竭而亡,见于《越绝书》。。物理攻击力加10,吸血25%"; break; case 2: strPro="夫专诸之刺王僚,飞鹰击殿,见于司马迁《史记-刺客列传》。物理攻击力加15,吸血45%"; break; case 3: strPro="传干将、莫邪是两把剑,但是没有人能分开它们。干将、莫邪是两个人,同样,也没有人能将他(她)们分开。干将、莫邪是干将、莫邪铸的两把剑。干将是雄剑,莫邪是雌剑。干将是丈夫,莫邪是妻子。技能攻击力加10%"; break; case 4: strPro="欧冶子和干将为铸此剑,凿开茨山,放出山中溪水,引至铸剑炉旁成北斗七星环列的七个池中,是名“七星”。渔丈人自刎于伍子胥示高洁,事见于《吴越春秋》。技能攻击力加20%"; break; case 5: strPro="欧冶子和干将两大剑师联手所铸。晋攻楚三载,楚王此剑退敌,见于《越绝书》。技能攻击力加30%"; break; case 6: strPro="刘邦斩蛇起义之物。饰有七彩珠、九华玉的寒光逼人、刃如霜雪的宝剑,剑身上清晰镌刻着两个篆字:赤霄。基础攻击力加15%"; break; case 7: strPro="湛泸是一把剑,更是一只眼睛。湛泸:湛湛然而黑色也。五金之英,太阳之精,出之有神,服之有威。一把无坚不摧而又不带丝毫杀气的兵器。基础攻击力加25%"; break; case 8: strPro="众神采首山之铜为黄帝所铸,后传与夏禹。剑身一面刻日月星辰,一面刻山川草木。剑柄一面书农耕畜养之术,一面书四海一统之策。基础攻击力加35%"; break; } drawScrollPro(g); } temp=null; break; case 2://技能显示 if(strPro==null) strPro="你可以在这里升级尹风的技能,尹风的技能分召唤系,元素系,特质系和辅助系共四大系十一种,每种技能的效果以及需要的气值都会随着技能等级的提高而提高,同时升级的时候要注意,每种技能在升级后都必须隔3个人物等级才能继续升级"; if(j<4) { MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"落日:"+(skillArray[0]>0?"等级"+toString(skillArray[0]):"未修炼"),100,20,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"乱电:"+(skillArray[1]>0?"等级"+toString(skillArray[1]):"未修炼"),100,45,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"残风:"+(skillArray[2]>0?"等级"+toString(skillArray[2]):"未修炼"),100,70,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"召狼:"+(skillArray[3]>0?"等级"+toString(skillArray[3]):"未修炼"),100,95,0); } else if(j<8) { MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"召熊:"+(skillArray[4]>0?"等级"+toString(skillArray[4]):"未修炼"),100,20,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"召龙:"+(skillArray[5]>0?"等级"+toString(skillArray[5]):"未修炼"),100,45,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"隐身:"+(skillArray[6]>0?"等级"+toString(skillArray[6]):"未修炼"),100,70,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"遁走:"+(skillArray[7]>0?"等级"+toString(skillArray[7]):"未修炼"),100,95,0); } else { MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"附身:"+(skillArray[8]>0?"等级"+toString(skillArray[8]):"未修炼"),100,20,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"治疗:"+(skillArray[9]>0?"等级"+toString(skillArray[9]):"未修炼"),100,45,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"回气:"+(skillArray[10]>0?"等级"+toString(skillArray[10]):"未修炼"),100,70,0); } MenuCanvas.ge.drawStringShadow(g,0,0,-1,"剩余技能点:"+toString(skillpoint),100,120,0); g.setColor(0); g.drawRect(98,20+j%4*25,80,20); g.setColor(-1); g.drawRect(97,19+j%4*25,82,22); g.setColor(0); g.drawRect(96,18+j%4*25,84,24); drawScrollPro(g); break; case 3://任务显示 if(strPro==null) strPro="这里显示的是尹风需要完成的任务,当任务还没有接到时不会在这里显示,接到任务后会显示其完成情况。"; if(isTask) { MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"收集物品",100,13,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"九花玉露丸:"+(tn[0]==10?"完成":toString(tn[0])),100,31,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"通天草:"+(tn[1]==5?"完成":toString(tn[1])),100,49,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"千年人参:"+(tn[2]==10?"完成":toString(tn[2])),100,67,0); MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"灵芝:"+(tn[3]==5?"完成":toString(tn[3])),100,85,0); if(isTask2) MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,0x00ff00,"虎皮: "+(tn[4]==20?"完成":toString(tn[4])),100,103,0); } drawScrollPro(g); break; } g.setColor(getRandom(255),getRandom(255),getRandom(255)); g.drawRect(14,49+i*58,44,26); g.setColor(getRandom(255),getRandom(255),getRandom(255)); g.drawRect(13,48+i*58,46,28); } public void drawGameOver(Graphics g) { try{ Image img = Image.createImage("/loadBg.png"); g.drawImage(img,0,0,g.TOP|g.LEFT); img = null; }catch(IOException e){} String strOver = "襄樊之战是元朝统治者消灭"+ "南宋统一中国的一次重要战役,是中国历史上宋"+ "元封建王朝更迭的关键一战在尹风的帮助下,郭"+ "大侠从南宋淳三年固守襄阳历时六年,"+ ",到咸淳九年,最后终因孤城无援,"+ "以南宋襄樊失陷而告结束。尹风和晶晶姑娘"+ "退守江南,协助郭靖和丐帮继续抗蒙大业。"+ "敬
请
等待
后续故事。"; int page=1+(strOver.length()-1)/15; for(int iii=0;iii
0)||i==11) MenuCanvas.ge.drawStringShadow(g,0x0000ff,0x0000ff,-1,attackMenu[iii],30-i*40+iii*40,21,0); } g.setClip(0,0,240,309); MenuCanvas.ge.drawClipImage(g,MenuCanvas.imgArrow,12-offX,25,5,10,0,0); MenuCanvas.ge.drawClipImage(g,MenuCanvas.imgArrow,224+offX,25,5,10,5,0); offX+=3; if(offX==9) offX=0; } public void drawWin(Graphics g,Vector string) { int h=(string.size()+1)*30; g.setColor(0,0,100); g.fillRoundRect(48,90,156,h,30,30); g.setColor(getRandom(255),getRandom(255),getRandom(255)); g.drawRoundRect(48,90,156,h,30,30); g.setColor(0); g.drawRoundRect(47,89,158,h+2,30,30); g.setColor(getRandom(255),getRandom(255),getRandom(255)); g.drawRoundRect(46,88,160,h+2,30,30); g.setColor(0xffff00); MenuCanvas.ge.drawStringShadow(g,0,0,-1,"战斗胜利",126,96,g.HCENTER|g.TOP); g.setColor(-1); for(int ii=0;ii
3) { if(SPI[i].level<4||SPI[i].level>6) { if(SPI[i].level!=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,240,309); g.setColor(0,0,0); if(i<4&&i!=0) g.drawRect(26,(3-i)*32+15+64+64,5,16); else if(i>=4&&i!=0) g.drawRect(190,(i-4)*32+15+64+108,5,16); g.setColor(255,0,0); if(i>=4) g.fillRect(191,(i-3)*32-16*SPI[i].life/(SPI[i].level*SPI[i].level*15+10)+64+108,4,16*SPI[i].life/(SPI[i].level*SPI[i].level*15+10)-1); else switch(i) { case 1://狼 g.fillRect(27,96-16*SPI[1].life/(8*skillArray[3]*skillArray[3]+40)+64+64,4,16*SPI[1].life/(8*skillArray[3]*skillArray[3]+40)-1); break; case 2://熊 g.fillRect(27,64-16*SPI[2].life/(20*skillArray[4]*skillArray[4]+60)+64+64,4,16*SPI[2].life/(20*skillArray[4]*skillArray[4]+60)-1); break; case 3://龙 g.fillRect(27,32-16*SPI[3].life/(10*skillArray[5]*skillArray[5]+40)+64+64,4,16*SPI[3].life/(10*skillArray[5]*skillArray[5]+40)-1); break; } } } if(spic0!=null) g.drawImage(spic0,sx,sy,0); if(attackTask!=null) { if(attackTask.type==5)//乱电效果 { switch(attackTask.s) { case 2: for(int ii=0;ii<5;ii++) { g.drawImage(spic[1],getRandom(60)+160,0,0); g.drawImage(spic[1],getRandom(60)+160,32,0); } break; case 3: for(int ii=0;ii<5;ii++) { g.drawImage(spic[1],getRandom(60)+160,0,0); g.drawImage(spic[1],getRandom(60)+160,32,0); g.drawImage(spic[1],getRandom(60)+160,64,0); g.drawImage(spic[1],getRandom(60)+160,96,0); } break; case 4: for(int ii=0;ii<5;ii++) { g.drawImage(spic[1],getRandom(60)+160,0,0); g.drawImage(spic[1],getRandom(60)+160,32,0); g.drawImage(spic[1],getRandom(60)+160,64,0); g.drawImage(spic[1],getRandom(60)+160,96,0); g.drawImage(spic[1],getRandom(60)+160,128,0); g.drawImage(spic[1],getRandom(60)+160,160,0); } break; case 5: for(int ii=0;ii<5;ii++) { g.drawImage(spic[1],getRandom(60)+160,0,0); g.drawImage(spic[1],getRandom(60)+160,32,0); g.drawImage(spic[1],getRandom(60)+160,64,0); g.drawImage(spic[1],getRandom(60)+160,96,0); g.drawImage(spic[1],getRandom(60)+160,128,0); g.drawImage(spic[1],getRandom(60)+160,160,0); g.drawImage(spic[1],getRandom(60)+160,192,0); } for(int i=0;i<4;i++) { if(SPI[i+4]!=null) { if(SPI[i+4].level!=15) SPI[i+4].life-=(2*skillArray[1]*skillArray[1]+10)*(100+addMagic)/100; } } break; case 6: for(int i=0;i<4;i++) { if(SPI[i+4]!=null) { if(SPI[i+4].life<=0) { sn+=100*SPI[i+4].level*SPI[i+4].level/level; nn+=4*SPI[i+4].level*SPI[i+4].level; SPI[i+4]=null; } } } break; case 7: attackNumber=4; cancelAttackTask(); repaint(); break; default: break; } } else if(attackTask.type==6)//残风效果 { switch(attackTask.s) { case 2: for(int ii=0;ii<6;ii++) { g.drawImage(spic[2],50,getRandom(128),0); g.drawImage(spic[2],82,getRandom(128),0); } break; case 3: for(int ii=0;ii<6;ii++) { g.drawImage(spic[2],50,getRandom(128),0); g.drawImage(spic[2],82,getRandom(128),0); g.drawImage(spic[2],114,g
超难....的内存映像权限问题,
请
达人
指点
!!!,不够分再加
超难....的内存映像权限问题,
请
达人
指点
!!!,不够分再加 Delphi / Windows SDK/APIhttp://www.delphi2007.net/DelphiAPI/html/delphi_20061106100206298.html 一个普通程序和一个SERVER级程序交换内存映像 unit Unit1; interface ...
我在CSDN参与的3000个帖子
今日偶然翻到,感慨万千 1:申述:版主,是否扣了我的专家分? 2:100分急求,随机输出十个小写字母,但是,要求这十个字母不相同 3:求Sn=a+aa+aaa+…+aaa…a(n个a)之值 4:数组题 望
高手
帮忙
! 5:呵呵,来推荐一下我的网站,本站提供大量当今流行的免费的音乐和免费电影,常用软件、游戏、精美图库下载,希望对网友有帮助!顺便散分! 6:VBA
请
教怎
ARM&WINCE 多通道数据采集驱动实现思路(求
高手
指点
)
本人要编一个多通道数据采集的驱动程序,硬件采用S3C2410A,操作系统是wince,开发工具是PB。第一次接触这些东西,思路有些乱:
数据采集的频率由S3C2410A自带的PWM Timer实现,通过设置PMW寄存器的预分频值、分频值、TCNTB0, TCMPB0,输出一定频率和脉宽的波形,在脉宽的下降沿触发中断,该中断触发线程,将中断与事件关联,实现AD转换。在调用的AD转换函数中实现采样数据读取,放入缓存,更改采样通道的设置。
在ADC_I
请
问哪位
高手
知道用Apache Commons Net包实现javaFTP上传目录功能
请
问哪位
高手
知道用Apache Commons Net包实现javaFTP上传整个目录,这个目录里面的所有子目录和文件都要上传到服务器。
请
高手
帮忙
。我QQ:329139017 ,本人正在焦急的
等待
中....。希望看到该信息者会的话帮我
指点
下。非常感激。 这个问题本人已经解决了,如果有需要帮助的同志,可以联系我。...
windows网络管理与配置
6,185
社区成员
60,364
社区内容
发帖
与我相关
我的任务
windows网络管理与配置
windows网络管理与配置
复制链接
扫一扫
分享
社区描述
windows网络管理与配置
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章