<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Java究竟怎么玩?

      天地程序已定棋,人間大數待變局

        博客園  :: 首頁  :: 新隨筆  :: 聯系 :: 訂閱 訂閱  :: 管理

       在游戲中通常不可能允許一幅場景貫穿始終,這就提出了場景變更的要求,基于這一要求的實現,我們將進行如下效果的Java代碼實現。


      下載地址http://www.3adisk.com/?onlinezero[文件名:RpgChair0to6.rar]

      或另存以下X(gif)文件為rar


        

       

      由于代碼量已開始增加,由本回開始僅給出部分代碼實現,詳細請進行下載:

       

      在本例中,本人采取的位圖偏移算法如下:

       

      MyPanle中實現如下:

       

       

              // X偏移位置

              int offsetX = MyPanel.WIDTH / 2 - role.getX() * CS;

              //計算X偏移量

              offsetX = Math.min(offsetX, 0);

              offsetX = Math.max(offsetX, MyPanel.WIDTH - GameMap.WIDTH);

            

              // Y偏移位置

              int offsetY = MyPanel.HEIGHT / 2 - role.getY() * CS;

              //計算Y偏移量

              offsetY = Math.min(offsetY, 0);

              offsetY = Math.max(offsetY, MyPanel.HEIGHT - GameMap.HEIGHT);

              //System.out.print(role.getX()+":"+role.getY());

              //繪制可偏移位置的地圖

              map.draw(g, offsetX, offsetY);

       

              //繪制可偏移位置的角色

              role.draw(g, offsetX, offsetY);

       

       

       

      GameHandleGameMap中,均需注入offsetXoffsetY值,以生成對應圖像。

      GameHandle實現:

      //Example6開始,為了實現背景的移動,所有算法都要加入偏移值

          public void draw(Graphics g, int offsetX, int offsetY) {

         //count作為圖像的偏移數值,并于Example4中添加direction以獲取所處圖像塊位置

              g.drawImage(image, x * CS + offsetX, y * CS + offsetY, x * CS + offsetX + CS, y * CS + offsetY + CS,

                  count * CS, direction * CS, CS + count * CS, direction * CS + CS, panel);

      }

       

      GameMap實現:

          //修正Example6中繪制方式,引入地圖坐標偏移計算

          public void draw(Graphics g, int offsetX, int offsetY) {

         

              int firstTileX = pixelsToTiles(-offsetX);

              //變更X坐標

              int lastTileX = firstTileX + pixelsToTiles(MyPanel.WIDTH) + 1;

             

              //返回最小X偏移值

              lastTileX = Math.min(lastTileX, COL);

             

              

              int firstTileY = pixelsToTiles(-offsetY);

              //變更Y坐標

              int lastTileY = firstTileY + pixelsToTiles(MyPanel.HEIGHT) + 1;

             

              //返回最小Y偏移值

              lastTileY = Math.min(lastTileY, ROW);

          //Java或任何游戲開發中,算法都是最重要的一步,本例盡使用

          //簡單的雙層for循環進行地圖描繪,

                       for (int i = firstTileY; i < lastTileY; i++) {

                             for (int j = firstTileX; j < lastTileX; j++) {

                                // switch作為java中的轉換器,用于執行和()中數值相等

                             // case操作。請注意,在case操作中如果不以break退出

                             // 執行;switch函數將持續運算到最后一個case為止。

                                 switch (map[i][j]) {

                                     case 0 : // 地板

                                         g.drawImage(floorImage, tilesToPixels(j) + offsetX, tilesToPixels(i) + offsetY, panel);

                                         break;

                                     case 1 : // 墻壁

                                         g.drawImage(wallImage, tilesToPixels(j) + offsetX, tilesToPixels(i) + offsetY, panel);

                                         break;

                                 }

                             }

                  }

          }


       

       

       

       
      posted on 2007-08-17 15:56  cping  閱讀(668)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 在线看免费无码av天堂的| 午夜自产精品一区二区三区| 五月婷婷久久中文字幕| 国产强奷在线播放免费| 中文字幕日韩有码第一页| 亚洲日产韩国一二三四区| 免费看欧美日韩一区二区三区| 日韩精品亚洲专区在线播放| 毛片免费观看天天干天天爽 | 熟女一区| 人妻无码中文专区久久app| 亚洲伊人久久综合影院| 阿合奇县| 久久精品国产99精品亚洲| 精品一区二区三区日韩版| 午夜福利日本一区二区无码| 国产精品综合色区在线观| 欧美野外伦姧在线观看| 亚洲一区av在线观看| 亚洲精国产一区二区三区| 国语精品自产拍在线观看网站| 欧洲lv尺码大精品久久久| 99久久精品国产亚洲精品| 人妻系列无码专区69影院| 额尔古纳市| 亚洲青青草视频在线播放| 国产又色又刺激高潮视频| 国产午夜无码视频在线观看 | 老司机免费的精品视频| 无码专区 人妻系列 在线 | 精品亚洲国产成人| 中文国产日韩欧美二视频| 久久九九99这里有视频| 海门市| 国产精品久久久久无码av色戒| 婷婷丁香五月六月综合激情啪| 日本一区二区不卡精品| 精品熟女日韩中文十区| 亚洲天堂av日韩精品| 国产精品理论片| 免费看亚洲一区二区三区|