亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? myplayer.java

?? 手機(jī)RPG游戲
?? JAVA
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
package obj;
import javax.microedition.lcdui.game.*;
import javax.microedition.lcdui.*;
import java.io.*;
import main.*;
import java.util.*;
public class MyPlayer extends Sprite{
  private int  w,h;//屏幕的寬高
  private int viewx=0, viewy=0;//屏幕的坐標(biāo)。
  private int mapw,maph;//底圖的寬高。

  private int player_x=0;//玩家的位置
  private int player_y=0;
  private String playerName;

  public int playerLevel;//等級(jí)
  public int playerHp;
  public int playerMp;
  public int playerEx;//經(jīng)驗(yàn)

  public int playerHit;//攻
  public int playerRecovery;//防
  public boolean playerBooty=false;//獲得戰(zhàn)利品。

  private int playerMoney;
  private int playerMaxHp;
  private int playerMaxMp;
  private int playerNextEx;//經(jīng)驗(yàn)
  private int imgw=0;//玩家圖片大小
  private int imgh=0;
  private Image speakImg;//說(shuō)話的圖片
  private int speakx;
  private int speaky;


int temp_a=0;//這三個(gè)數(shù)記錄按1鍵的次數(shù)。
int temp_b=0;
int pressA_Num=1;


  private boolean speakSure=false;//按1確認(rèn)說(shuō)話。
  private boolean hitNpcOk=false;
  private boolean  showBuyGrid=false;//顯示買(mǎi)賣(mài)的窗口。
  private int BuyGridxPos=0,BuyGridyPos=15;//交易窗口的坐標(biāo)

  private Cur cur; ///顯示買(mǎi)賣(mài)的窗口時(shí)的圖標(biāo)。
  private boolean curSwap=false;

  private boolean hitDrugstore=false;//是否與藥店的人相碰
  private boolean hitSmith=false;//是否與鐵匠相碰。
  Random r=new Random();
  int speak_Num=-1;//npc選取那個(gè)話說(shuō)。
  public boolean isWarfare=false;//戰(zhàn)斗狀態(tài)。

  private int speed;//速度
  private boolean isShowGrid=false;//是否顯示物品欄。
  int sx,sy;//玩家移動(dòng)時(shí)的坐標(biāo)變化量。在圖片移動(dòng)時(shí):因?yàn)橐傆?所以放在外面,不用每次都創(chuàng)建
  private int step=0;//運(yùn)動(dòng)圖片的變化計(jì)數(shù)器

/////////////////////////////////////////////////////////////////////////////////////////
  public MyPlayer(Image img,int imagew,int imageh,int Map_w,int Map_h,int boardw,int boardh) {
    super(img,imagew,imageh);

    imgw=imagew;//圖的寬高
    imgh=imageh;
    w=boardw;//屏幕的寬高
    h=boardh;
    mapw=Map_w;
    maph=Map_h;
    player_x=mapw/2;//玩家的初始位置
    player_y=maph/2;

    speakImg=MyControl.load.speakingImg;//說(shuō)話的底圖

    speed=MyControl.load.playerSpeed;
    this.setPosition(player_x,player_y);

    this.playerLoadFile();
    this.playerNewMen();
    cur=new Cur(BuyGridxPos,BuyGridyPos,w,h,playerMoney);//交易和使用物品時(shí)的光標(biāo)。
  }
////////////
public void playerInit(){//玩家的初始位置
    player_x=mapw/2;
    player_y=maph/2;
    this.setPosition(player_x,player_y);
  }

public void playerNeedSaves(){//須要保存的數(shù)據(jù)。//以后要做個(gè)存文件的來(lái)保存這些數(shù)據(jù).
  playerName="圣騎士";
  playerLevel=0;//等級(jí)
  playerHp=30;
  playerMp=20;
  playerEx=10;//經(jīng)驗(yàn)
  playerMoney=1000;
  cur.getVector();//玩家的物品。
  //長(zhǎng)級(jí)比
  //賣(mài)回東西的價(jià)格比
  //怪掉錢(qián)比。
  }
  /////////////////////???????????????????????????????????????????????????????????????????
private void playerLoadFile(){
   playerName="圣騎士";
   playerLevel=0;//等級(jí)
   playerHp=30;
   playerMp=20;
   playerEx=0;//經(jīng)驗(yàn)
   playerMoney=1000;
   }
  //////////////////////////??????????????????????????????????/
  private int count(int NN,int level){//升級(jí)計(jì)算公式。
  for(int i=0;i<level;i++){ NN=NN+NN*10/100;}
  return NN;}
  //////////////////
  private void playerNewMen(){//人物的屬性。讀取時(shí)計(jì)算


   playerMaxHp=count(50,playerLevel);
   playerMaxMp=count(30,playerLevel);
   playerHit=count(20,playerLevel);//攻
   playerRecovery=count(10,playerLevel);//防
   playerNextEx=2*count(30,playerLevel);//經(jīng)驗(yàn)

 playerLevel+=1;//等級(jí)
 playerHp=playerMaxHp;
 playerMp=playerMaxMp;
 playerEx=0;


  }


public void playerHitMap(TiledLayer backMap,Sprite point_0,Sprite point_1){
    this.hitMap(backMap);//與Map層的碰撞檢測(cè).
    this.hitCarryPoint(point_1);//與傳送點(diǎn)碰撞
    palyerhitAimPoint(point_0);
  }

////////////////
private void npcSpeak(Graphics g,Npc npc,String s1,String s2){//npc說(shuō)話的
    speakx=npc.getXpos()-speakImg.getWidth()/2-viewx;
    speaky=npc.getYpos()-speakImg.getHeight()-viewy;
      g.drawImage(speakImg,speakx,speaky,Graphics.LEFT|Graphics.TOP);
      g.setColor(0xffffff);
      g.drawString(s1,speakx+5,speaky+5,0);
      g.drawString(s2,speakx+5,speaky+20,0);
}
//////////////
  private boolean playerHitNpc(Npc npc){//與村中的npc相碰撞,npc停下,不碰時(shí),npc繼續(xù)動(dòng)
    if(this.collidesWith(npc,true))
    { npc.isSpeaking=true;
      hitNpcOk=true;//控制按1時(shí)看是否碰撞。
      return true;}//相碰撞返回真
    else {
      if(npc.isSpeaking){
        speak_Num=-1;//為說(shuō)話的選取給初值。
        pressA_Num=1;//為按1鍵的次數(shù)給初值。
        hitNpcOk=false;
        speakSure=false;//關(guān)閉與NPC對(duì)話的窗口。
        npc.isSpeaking=false;
        hitDrugstore=false;
        hitSmith=false;
      }
      return false;}
  }
  /////////////////////
  private void hitCarryPoint(Sprite point_1){//與傳送點(diǎn)相碰撞

   if( this.collidesWith(point_1,true))
       {int mapid=MyControl.load.backMapId;

         switch(mapid){
         case 0:MyControl.load.backMapId=1;break;
         case 1:MyControl.load.backMapId=2;break;
         case 2:MyControl.load.backMapId=0;break;
         }
         MyControl.gameBoard.boardInit();
       }
  }
  /////////////////////
public void palyerhitAimPoint(Sprite po){//與傳送點(diǎn)相碰撞
    if( this.collidesWith(po,true))
        {int mapid=MyControl.load.backMapId;
          switch(mapid){
          case 0:MyControl.load.backMapId=2;break;
          case 1:MyControl.load.backMapId=0;break;
          case 2:MyControl.load.backMapId=1;break;
          }
          MyControl.gameBoard.boardInit();
        }
}

/////////////
  private void hitMap(TiledLayer backMap){//與地圖上的房子碰撞
    player_x+=sx; //這樣做的碰撞檢測(cè),一個(gè)方向碰撞后,另一個(gè)方向不停.
    setPosition(player_x,player_y);
       if(collidesWith(backMap,true)){
         player_x-=sx;setPosition(player_x,player_y);}
    player_y+=sy;
    setPosition(player_x,player_y);
      if(collidesWith(backMap,true)){
         player_y-=sy;setPosition(player_x,player_y);}

//    player_x+=sx;        //這樣做的一個(gè)方向碰撞后,另一個(gè)方向也停了.
//    player_y+=sy;
//    setPosition(player_x,player_y);//設(shè)定玩家的當(dāng)前位置
//    if(collidesWith(backMap,true)){
//      player_x-=sx;      player_y-=sy;
//      setPosition(player_x,player_y);//設(shè)定玩家的當(dāng)前位置
//    }
   }
 ////////////////
  private int pressA(int st){// 計(jì)錄按1鍵的次數(shù)。得到不連續(xù)輸入按 1 鍵
    if(st==0 || ((st&GameCanvas.GAME_A_PRESSED)!=0))
    if(temp_a!=st)
      { temp_b++; temp_a=st;
          if(temp_b%2==0)
          {
            pressA_Num++;
            if(pressA_Num>3){}
            temp_b=0;}
       }
     return pressA_Num;
  }
  /////////////這個(gè)函數(shù)應(yīng)寫(xiě)在npc類(lèi)中。//npc說(shuō)的話。
public void showNpcSpeak(Graphics g,LayerManager layerManager,
                           Npc npcDrugstore,Npc npcSmith,Npc npcGranger_2,Npc npcGranger_3,
                           int view_x,int view_y){
    viewx=view_x;  viewy=view_y;//修正說(shuō)話圖片的坐標(biāo)的。
    if(playerHitNpc(npcDrugstore) && speakSure)
      {           if(speak_Num==-1) {speak_Num=r.nextInt(6);}
                  switch(speak_Num){
                     case 0:npcSpeak(g,npcDrugstore,"嘿嘿,我是最好的大夫!","不過(guò)現(xiàn)在暫時(shí)缺貨……");break;
                     case 1:npcSpeak(g,npcDrugstore,"最近村外有妖怪,",     "來(lái)買(mǎi)藥的人也多了……");break;
                     case 2:npcSpeak(g,npcDrugstore,"這幾天我的生意特別好,","你知道這是為什么嗎?");break;
                     case 3:npcSpeak(g,npcDrugstore,"啊,大俠你又來(lái)了,",   "常來(lái)這里是會(huì)短命的。");break;
                     case 4:npcSpeak(g,npcDrugstore,"新到的藥材,",         "快買(mǎi),快買(mǎi)…………") ;break;
                     default:npcSpeak(g,npcDrugstore,"來(lái)人買(mǎi)點(diǎn)藥吧……",    "啊,又一個(gè)大頭來(lái)了!") ;break;
                  }
          hitDrugstore=true;
          return;}
      if(playerHitNpc(npcSmith)     && speakSure)
      {           if(speak_Num==-1) {speak_Num=r.nextInt(6);}
                  switch(speak_Num){
                     case 0:npcSpeak(g,npcSmith,"做莫邪的就是俺師傅!","現(xiàn)在裝備只修不賣(mài)。");break;
                     case 1:npcSpeak(g,npcSmith,"聽(tīng)說(shuō)最近村外有妖怪,","來(lái)買(mǎi)武器的人也多了……");break;
                     case 2:npcSpeak(g,npcSmith,"這幾天我的生意特別好,","你知道這是為什么嗎?");break;
                     case 3:npcSpeak(g,npcSmith,"啊,大俠你又來(lái)了,",  "上回買(mǎi)的武器還趁手嗎?");break;
                     case 4:npcSpeak(g,npcSmith,"新到的武器!",       "快買(mǎi),快買(mǎi)…………") ;break;
                     default:npcSpeak(g,npcSmith,"我的武器,呵呵……",  "天下…啊…第一……") ;break;
                  }
            hitSmith=true;
            return;}
      if(playerHitNpc(npcGranger_2) && speakSure)
      {         if(speak_Num==-1) {speak_Num=r.nextInt(6);}
                switch(speak_Num){
                   case 0:npcSpeak(g,npcGranger_2,"聽(tīng)說(shuō)村外有妖怪,","我好怕怕哦……");;break;
                   case 1:npcSpeak(g,npcGranger_2,"人們都在家里打麻將,","我今天又賺了不少。");break;
                   case 2:npcSpeak(g,npcGranger_2,"聽(tīng)說(shuō)藥店生意特別好,","你知道這是為什么嗎?");break;
                   case 3:npcSpeak(g,npcGranger_2,"我也想做藥材生意,",  "可我不敢出村子進(jìn)貨。");break;
                   case 4:npcSpeak(g,npcGranger_2,"你看村子?xùn)|北的那人,","在村中都快呆傻了。") ;break;
                   default:npcSpeak(g,npcGranger_2,"看你是外地人吧,",  "來(lái)時(shí)看到妖怪了嗎?") ;break;
                }return;
          }
      if(playerHitNpc(npcGranger_3) && speakSure)
      {         if(speak_Num==-1) {speak_Num=r.nextInt(6);}
                switch(speak_Num){
                   case 0:npcSpeak(g,npcGranger_3,"總呆在村里","真是太郁悶了!");break;
                   case 1:npcSpeak(g,npcGranger_3,"打麻將把底褲都輸了,","手氣實(shí)在是太差了。");break;
                   case 2:npcSpeak(g,npcGranger_3,"村子西南的那小子,","贏錢(qián)還說(shuō)我壞話&*^%");break;
                   case 3:npcSpeak(g,npcGranger_3,"我要是鐵匠,就……","做把刀砍死那小子。");break;
                   case 4:npcSpeak(g,npcGranger_3,"啊,大俠,你帶我出","村打妖怪吧!") ;break;
                   default:npcSpeak(g,npcGranger_3,"看你是外地人吧,", "來(lái)時(shí)看到妖怪了嗎?") ;break;
                }return;
        }

   }//end
  /////////////////////////////////
  int action=-1;
private void  playerMove(int st,int mapw,int maph)//玩家移動(dòng),邊界檢測(cè)是用底圖的寬高做邊界

{int xn=16;
  sx=0;sy=0;
  if((st&GameCanvas.RIGHT_PRESSED)!=0){
    if(player_x+1<=mapw-imgw)    { sx=speed;}//邊界檢測(cè)//????????????????????????????????????????????????????????
    this.setFrame(0+xn*(step++%4));    }//右     //這里要修正:視窗沒(méi)到邊界時(shí),這里可不用檢測(cè).
  if((st&GameCanvas.LEFT_PRESSED)!=0){
    if(player_x-1>=2)    {   sx=-speed;}
    this.setFrame(2+xn*(step++%4));  }//左
  if((st&GameCanvas.UP_PRESSED)!=0){
    if(player_y-1>=0)    {sy=-speed;}
    this.setFrame(1+xn*(step++%4));  }//上

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲综合免费观看高清完整版 | 国产精品毛片高清在线完整版 | 午夜久久久影院| 亚洲精品一二三区| 一区二区三区欧美久久| 一区二区视频在线看| 亚洲综合免费观看高清完整版在线| 亚洲另类色综合网站| 一区二区日韩电影| 亚洲v中文字幕| 蜜臀av一区二区在线观看| 日本vs亚洲vs韩国一区三区二区 | 久久精品国产77777蜜臀| 久久99久国产精品黄毛片色诱| 九九视频精品免费| 国产精品一区二区三区乱码| 成人a免费在线看| 一本一本大道香蕉久在线精品| 日本丰满少妇一区二区三区| 欧美日韩一区二区三区四区 | 国产精品久久久久一区| 中文字幕综合网| 亚洲二区在线视频| 精品一区二区在线播放| 成人深夜福利app| 欧美亚洲综合色| 欧美成人午夜电影| 国产精品伦一区| 一区二区三区中文字幕在线观看| 日本不卡视频在线观看| 国产在线精品不卡| 色综合久久久久久久| 欧美精品在线一区二区三区| 欧美精品一区二区久久久| 中文字幕乱码亚洲精品一区| 夜夜精品视频一区二区 | 日韩欧美国产麻豆| 国产精品久久久久久户外露出| 一区二区三区美女| 九色综合狠狠综合久久| 91色综合久久久久婷婷| 日韩你懂的在线播放| 中文字幕亚洲一区二区va在线| 天使萌一区二区三区免费观看| 国产精品一色哟哟哟| 欧美性大战久久| 久久青草欧美一区二区三区| 亚洲在线免费播放| 国产91在线看| 欧美精三区欧美精三区| 亚洲欧洲日本在线| 九色|91porny| 欧美日韩三级视频| 国产精品欧美一区喷水| 蜜乳av一区二区| 91美女福利视频| 久久久久久久综合狠狠综合| 香蕉成人啪国产精品视频综合网 | 久久久久久麻豆| 亚洲成人av免费| 成人动漫中文字幕| 精品少妇一区二区三区日产乱码 | 国产超碰在线一区| 4hu四虎永久在线影院成人| 亚洲男同性视频| 国产福利91精品| 日韩情涩欧美日韩视频| 亚洲午夜激情av| 99re成人精品视频| 国产午夜精品久久久久久免费视 | 99精品视频一区| 久久综合一区二区| 蜜臀av一区二区| 欧美日韩国产一二三| 亚洲精选视频在线| av亚洲精华国产精华精华| 26uuu国产日韩综合| 日韩成人一区二区三区在线观看| 色婷婷综合久久久久中文| 中文字幕乱码一区二区免费| 韩日av一区二区| 91精品国产丝袜白色高跟鞋| 亚洲成人免费电影| 色8久久精品久久久久久蜜| 中文字幕一区二区三区在线播放 | 7777精品伊人久久久大香线蕉完整版| 综合久久久久久| 成人自拍视频在线观看| 久久色中文字幕| 激情综合网天天干| 欧美不卡123| 久久av资源网| 日韩精品一区二区三区视频 | 国产成人亚洲精品狼色在线| 精品国产三级a在线观看| 奇米精品一区二区三区四区| 6080日韩午夜伦伦午夜伦| 亚洲福利视频一区| 欧美绝品在线观看成人午夜影视| 亚洲成av人片一区二区三区| 欧洲一区二区三区在线| 夜色激情一区二区| 在线看日本不卡| 亚洲国产欧美日韩另类综合| 欧美性xxxxx极品少妇| 亚洲一区二区三区激情| 欧美日韩一区二区不卡| 亚洲成a人片综合在线| 制服丝袜在线91| 久久99日本精品| 久久天堂av综合合色蜜桃网| 国产成人av一区二区三区在线 | 亚洲一区二区偷拍精品| 欧美自拍偷拍一区| 亚洲午夜久久久久久久久久久| 欧美日韩不卡一区| 美国十次综合导航| 久久久国产综合精品女国产盗摄| 成人蜜臀av电影| 亚洲蜜桃精久久久久久久| 欧美亚洲国产一区二区三区va| 亚洲超碰精品一区二区| 日韩欧美黄色影院| 国产成人在线看| 伊人婷婷欧美激情| 91精品国产高清一区二区三区| 激情欧美一区二区三区在线观看| 国产无人区一区二区三区| 成人福利视频在线| 亚洲成av人影院在线观看网| 日韩美女视频在线| www.av亚洲| 日韩中文字幕区一区有砖一区| 精品国产一二三| 91麻豆精品视频| 日日噜噜夜夜狠狠视频欧美人| 久久女同性恋中文字幕| 色呦呦日韩精品| 蜜芽一区二区三区| 国产精品色呦呦| 欧美视频在线一区| 国产一区视频在线看| 亚洲欧美一区二区三区国产精品| 7777精品伊人久久久大香线蕉最新版| 国产成人一级电影| 亚洲a一区二区| 久久免费看少妇高潮| 欧美在线观看你懂的| 精品在线观看免费| 亚洲欧美一区二区三区久本道91| 欧美一区2区视频在线观看| 高清不卡在线观看av| 亚洲成人7777| 日本一区二区成人| 日韩一区和二区| 91性感美女视频| 国产麻豆精品久久一二三| 亚洲一区二区五区| 日本一区二区成人| 欧美大片免费久久精品三p| 成人av资源站| 精品综合久久久久久8888| 亚洲精品久久嫩草网站秘色| 久久久夜色精品亚洲| 在线成人免费观看| 97久久人人超碰| 国产在线视频一区二区三区| 亚洲福利一二三区| 亚洲图片你懂的| 国产视频一区在线观看| 91精品国产一区二区三区蜜臀 | 国产欧美视频一区二区| 在线播放/欧美激情| 97精品国产露脸对白| 国产老肥熟一区二区三区| 日韩国产欧美在线播放| 一区二区三区高清| 中文字幕一区在线| 国产欧美精品一区二区色综合朱莉| 欧美一区永久视频免费观看| 91福利社在线观看| 波多野结衣在线一区| 国产高清不卡二三区| 激情久久五月天| 久久国产精品72免费观看| 三级成人在线视频| 亚洲成人av中文| 亚洲资源在线观看| 亚洲精品日日夜夜| 亚洲欧美日韩国产综合| 亚洲欧洲精品一区二区三区| 中文字幕欧美三区| 久久久激情视频| 国产午夜久久久久| 久久久精品综合| 久久天天做天天爱综合色| 精品久久人人做人人爰| 精品国产一区二区亚洲人成毛片| 日韩午夜av一区| 欧美大片一区二区|