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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? maze25d.java

?? 關于java游戲的設計代碼
?? JAVA
字號:
// 程序:2.5D斜角迷宮
// 范例文件:Maze25D.java

import java.awt.*;
import java.applet.*;
import java.awt.event.*;

public class Maze25D extends Applet
    implements Runnable, KeyListener  // 實現多線程接口與事件處理
{
   int          AppletWidth, AppletHeight,floorW,floorH,
                blockW,blockH,charW,key,sx;
   Image        floor,block,block2,OffScreen,character2;
   Thread       newThread;
   Graphics     drawOffScreen; 
   MediaTracker MT;
   Sprite2 s;  // Sprite2是角色類
   // 迷宮數組
   int[][] maze = {{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
                   {0,0,0,0,0,1,0,0,1,0,0,1,1,0,0,1},
                   {1,0,1,0,1,0,0,0,1,0,1,0,0,1,1,1},
                   {1,0,0,0,0,1,1,1,1,0,1,0,1,1,0,1},
                   {1,1,0,0,0,0,0,0,0,0,0,1,1,1,1,1},
                   {1,1,0,1,0,1,1,0,1,1,0,0,1,0,1,1},
                   {1,1,0,0,0,0,1,0,0,1,0,0,0,0,1,1},
                   {1,1,0,0,1,0,1,1,1,1,0,1,0,0,1,1},
                   {1,1,1,1,1,0,0,0,1,1,0,0,0,0,1,1},
                   {1,0,0,0,0,0,0,0,1,0,0,1,1,0,1,1},
                   {1,0,1,0,1,0,0,0,1,0,1,0,0,0,1,1},
                   {1,1,1,0,0,0,1,1,1,0,1,0,1,1,1,1},
                   {1,0,0,0,1,0,0,0,1,1,0,0,0,0,0,1},
                   {1,0,0,0,1,0,0,0,1,1,0,0,0,0,0,1},
                   {1,0,0,0,1,0,0,0,1,1,0,0,0,0,0,0},
                   {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}};

   public void init()
   {
      addKeyListener(this);              //注冊事件處理函數

      setBackground(Color.white);        //設定背景顏色
  
      AppletWidth  = getSize().width;    //取得Applet的高度
      AppletHeight = getSize().height;   //取得Applet的寬度

      //取得圖像
      MT           = new MediaTracker(this);
      floor = getImage(getDocumentBase(),"Images/floor.gif");         
      block = getImage(getDocumentBase(),"Images/block3.gif");        
      block2 = getImage(getDocumentBase(),"Images/block4.gif");    
      character2 = getImage(getDocumentBase(),"Images/character2.gif");          
      MT.addImage(floor,0);
      MT.addImage(block,0);
      MT.addImage(block2,0);
      MT.addImage(character2,0);
     
      try
      {
         showStatus("圖像加載中(Loading Images)...");
         MT.waitForAll();
      }
      catch(InterruptedException E){ }   //沒有進行異常處理
      
      //建立次畫面
      OffScreen     = createImage(AppletWidth,AppletHeight);
      drawOffScreen = OffScreen.getGraphics();

      floorW = floor.getWidth(this);
      floorH = floor.getHeight(this);
      blockW = block.getWidth(this);
      blockH = block.getHeight(this);
      charW = character2.getHeight(this);
 
      sx = 0;  // 動畫圖片來源坐標

      s = new Sprite2(charW, maze);  // 初始角色狀態
   }

   public void start()
   {
      newThread = new Thread(this);
      newThread.start();
   }

   public void stop()
   {
      newThread = null;
   }

   public void update(Graphics g)   //update()函數
   {
      paint(g);                     //只單純調用paint()函數
   }

   public void paint(Graphics g)
   {
      //將次畫面貼到主畫面中
      g.drawImage(OffScreen,0,0,this);
   }

   // X 坐標轉換
   private int rotateX(int j, int i)
   {
      int x;
      x = (j-i)*floorW + 500;
      return (int) (x*Math.cos(60*Math.PI/180));
   }

   // Y 坐標轉換   
   private int rotateY(int j, int i)
   {
      int x, y;
      x = j*floorW + 150;
      y = -i*floorH;
      y = (int )-(y*Math.cos(-15*Math.PI/180) + 
             x*Math.sin(60*Math.PI/180)*Math.sin(-15*Math.PI/180));
      y = y - i * floorH/2;
      return y ;
   }

   // 利用多線程進行動畫繪制
    public void run()
    {
        while(true)
        {
          // 清除緩沖區繪圖頁
          drawOffScreen.clearRect(0,0,AppletWidth,AppletHeight);

           int X,Y;
          // 繪制地板
           for(int i=1; i < 16; i++)
              for(int j=1; j < 16; j++)
              {
                 // 根據索引值進行坐標轉換
                 X = rotateX(j,i);
                 Y = rotateY(j,i);
                 drawOffScreen.drawImage(floor,X,Y,X+floorW,
                      Y+floorH,0,0,floorW,floorH,this);
              }

           // 繪制障礙物
           for(int i=0; i < 16; i++)
              for(int j=0; j < 16; j++)
              {
                 if(maze[i][j] != 0) {
                 // 根據索引值進行坐標轉換
                    X = rotateX(j,i);
                    Y = rotateY(j,i);
                    drawOffScreen.drawImage(block,X,Y+4,X+blockW,
                        Y+blockH+4,0,0,blockW,blockH,this);
                 }
              }        

           // 根據索引值進行坐標轉換
           X = rotateX(s.indexJ,s.indexI) - 5;
           Y = rotateY(s.indexJ,s.indexI) - 5;

           // 繪制角色
           drawOffScreen.drawImage(character2,X,Y,X+30,Y+30,
                                 sx, 0, sx+50,50,this);

           // 判斷右方有無障礙物,如果有就補貼障礙物
           if(maze[s.indexI][s.indexJ+1] != 0) {
              X = rotateX(s.indexJ+1,s.indexI);
              Y = rotateY(s.indexJ+1,s.indexI);
              drawOffScreen.drawImage(block2,X,Y+4,X+blockW,
                    Y+blockH+4,0,0,blockW,blockH,this);
           }

           // 判斷下方有無障礙物,如果有就補貼障礙物
           if(maze[s.indexI+1][s.indexJ] != 0) {
              X = rotateX(s.indexJ,s.indexI+1);
              Y = rotateY(s.indexJ,s.indexI+1);
              drawOffScreen.drawImage(block2,X,Y+4,X+blockW,
                    Y+blockH+4,0,0,blockW,blockH,this);
           }

           // 判斷右下方有無障礙物,如果有就補貼障礙物
           if(maze[s.indexI+1][s.indexJ+1] != 0) {
              X = rotateX(s.indexJ+1,s.indexI+1);
              Y = rotateY(s.indexJ+1,s.indexI+1);
              drawOffScreen.drawImage(block2,X,Y+4,X+blockW,
                    Y+blockH+4,0,0,blockW,blockH,this);
           }

           repaint();
           // 角色走動動畫
           sx += 50;
           if(sx >= 300)
              sx = 0;

           try {
               Thread.sleep(200);
           }
           catch (InterruptedException e)
           {

           }
        }
    }

   // ============鍵盤事件處理================

   public void keyTyped(KeyEvent e)  { }

   public void keyPressed(KeyEvent e)
   {
      key = e.getKeyCode();

      // 為配合斜角地圖,鍵盤的操作方向作了改變
      if(key == KeyEvent.VK_RIGHT)
         s.moveUp();  // 右鍵改為地圖的往上移動
      else if(key == KeyEvent.VK_LEFT)
         s.moveDown(); // 左鍵改為地圖的往下移動
      else if(key == KeyEvent.VK_UP)
          s.moveLeft();  // 上鍵改為地圖的往左移動
      else if(key == KeyEvent.VK_DOWN)
          s.moveRight(); // 下鍵改為地圖的往右移動
   }

   public void keyReleased(KeyEvent e) {}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色婷婷激情久久| 欧美理论片在线| 色综合久久综合网97色综合| www.日本不卡| 在线精品观看国产| 欧美一级日韩一级| 国产精品免费人成网站| 亚洲国产综合色| 国产伦精品一区二区三区免费迷| 美美哒免费高清在线观看视频一区二区| 激情五月婷婷综合网| 91啪亚洲精品| 日韩久久精品一区| 国产精品福利一区二区| 日韩电影在线免费观看| 成人综合在线视频| 91精品国产日韩91久久久久久| 久久久久久久久99精品| 伊人色综合久久天天人手人婷| 亚洲成av人片在线观看| 国产精品自拍三区| 欧美人与z0zoxxxx视频| 国产精品久久久久久久裸模| 青青草原综合久久大伊人精品优势| 亚洲自拍偷拍av| 国产不卡视频在线观看| 播五月开心婷婷综合| 91精品免费观看| ㊣最新国产の精品bt伙计久久| 国产成人在线视频播放| 亚洲精品在线三区| 国产中文一区二区三区| 久久久久88色偷偷免费 | 日本一区二区免费在线观看视频| 日韩高清在线观看| 这里是久久伊人| 美女视频黄频大全不卡视频在线播放| 欧美日韩一区三区| 日韩电影免费一区| 欧美成人女星排名| 国产美女一区二区三区| 国产欧美一区视频| 91色视频在线| 亚洲在线成人精品| 91精品国产综合久久精品| 欧美96一区二区免费视频| 精品国产一区二区三区久久久蜜月 | 午夜精品爽啪视频| 91精品国产日韩91久久久久久| 久久精品国产精品亚洲红杏| 精品国产乱码久久久久久1区2区| 韩国精品免费视频| 中文字幕亚洲在| 91成人在线免费观看| 日韩二区三区在线观看| 久久精品水蜜桃av综合天堂| 99re这里只有精品6| 亚洲成av人片在线观看| 精品精品国产高清一毛片一天堂| 国产成人免费在线| 亚洲va国产天堂va久久en| 日韩一区二区在线播放| 成人午夜伦理影院| 日韩影院免费视频| 中文字幕精品在线不卡| 欧美性生交片4| 国产精品资源在线看| 一区二区三区.www| 久久久久久久一区| 欧美性色综合网| 国产成a人无v码亚洲福利| 一区二区三区精品在线| ww久久中文字幕| 欧美性大战久久久久久久| 国产一区二区不卡老阿姨| 亚洲一区二区五区| 久久久久久一级片| 欧美一区二区三区小说| 成人黄色av电影| 麻豆精品一二三| 亚洲一区影音先锋| 国产精品成人免费精品自在线观看| 日韩一区二区三区高清免费看看| 99久久精品国产麻豆演员表| 久久超碰97中文字幕| 亚洲成人午夜电影| 亚洲视频一区二区免费在线观看| 久久日韩精品一区二区五区| 欧美日韩在线直播| 91视频在线观看免费| 国产成人在线电影| 蜜臀av一区二区在线观看| 亚洲线精品一区二区三区八戒| 中文成人综合网| 精品福利一区二区三区| 欧美精选午夜久久久乱码6080| aaa欧美大片| 成人理论电影网| 国产麻豆视频一区| 美女爽到高潮91| 蜜臀久久99精品久久久画质超高清| 一区二区三区中文字幕精品精品 | 日韩成人精品在线| 亚洲大片在线观看| 亚洲一区视频在线| 亚洲久本草在线中文字幕| 国产精品亲子乱子伦xxxx裸| 欧美v日韩v国产v| 日韩精品中文字幕一区二区三区| 欧美色网一区二区| 欧美高清性hdvideosex| 欧美揉bbbbb揉bbbbb| 欧美日韩免费在线视频| 欧美日韩mp4| 欧美蜜桃一区二区三区| 欧美欧美欧美欧美| 欧美男男青年gay1069videost| 欧美日韩高清一区| 日韩三级视频在线观看| 日韩欧美美女一区二区三区| 欧美一区二区三区在线看| 日韩女优电影在线观看| 久久午夜色播影院免费高清| 欧美精品一区视频| 久久久亚洲精品一区二区三区| 精品国产一区二区三区av性色| 久久综合九色综合欧美亚洲| 国产欧美久久久精品影院| 日本一区二区三区国色天香 | 欧美韩国一区二区| 亚洲视频在线观看三级| 亚洲精品国产品国语在线app| 亚洲高清视频中文字幕| 久久精品国产久精国产| 国产91丝袜在线播放| 97se亚洲国产综合自在线不卡 | 精品国产乱码久久| 国产精品乱码一区二三区小蝌蚪| 亚洲精品免费一二三区| 免费欧美高清视频| 懂色中文一区二区在线播放| 欧美亚洲禁片免费| 亚洲精品一区二区三区四区高清| 欧美国产精品中文字幕| 亚洲一二三四在线| 国产精品亚洲专一区二区三区| 91色综合久久久久婷婷| 日韩三级视频中文字幕| 国产精品久久一级| 日韩高清在线不卡| 成人短视频下载| 欧美高清一级片在线| 国产精品久久一卡二卡| 日本欧美肥老太交大片| 懂色av一区二区夜夜嗨| 3d动漫精品啪啪一区二区竹菊| 久久婷婷色综合| 午夜不卡在线视频| a4yy欧美一区二区三区| 欧美va在线播放| 亚洲综合激情另类小说区| 国产一区二区精品久久91| 欧美午夜电影网| 国产精品三级在线观看| 麻豆成人久久精品二区三区小说| 色综合久久六月婷婷中文字幕| 欧美精品一区二区不卡| 天堂在线亚洲视频| 在线视频一区二区免费| 国产人成一区二区三区影院| 日韩国产在线观看一区| 一本色道久久综合亚洲aⅴ蜜桃| 久久综合五月天婷婷伊人| 五月婷婷综合网| 91浏览器打开| 国产精品麻豆欧美日韩ww| 狠狠网亚洲精品| 91精品国产综合久久精品麻豆| 亚洲综合免费观看高清完整版在线 | 亚洲女厕所小便bbb| 国产成人精品www牛牛影视| 欧美一区二区日韩一区二区| 亚洲午夜一区二区| 91免费视频大全| 国产精品国产a级| 成人一区二区在线观看| 久久久av毛片精品| 国产麻豆精品视频| 日韩欧美亚洲一区二区| 奇米影视一区二区三区小说| 欧美日韩一区二区三区视频| 亚洲精品写真福利| 欧美亚洲综合另类| 亚洲黄色录像片| 97久久超碰精品国产| 亚洲人成小说网站色在线 | 国产不卡视频一区| 国产亚洲一区二区在线观看| 国产精品456| 国产精品国产馆在线真实露脸|