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

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

?? bomb.java

?? 一個小游戲泡泡堂的代碼
?? JAVA
字號:
package game;

import javax.microedition.lcdui.*;
import java.util.*;
import java.lang.Integer;
/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2005</p>
 * <p>Company: </p>
 * @author not attributable
 * @version 1.0
 */
//泡泡游戲特殊類
public class Bomb extends Canvas{

  //begin
  //--------------------泡泡通用模塊----------------------------
  //一個人物所有泡泡的通用屬性
  //泡泡類消息
  final static int MSG_NOTHING = -1;//無事件
  final static int MSG_DOING = 7;//發生
  final static int MSG_END = 8;//停止
  public int iCurrentMsg = MSG_NOTHING;
  //泡泡屬性
  int nMight = 0; //泡泡威力
  int nBombTotal = 8;//泡泡總數
  int nBombNum = 5;//泡泡數
  static int nBlastNum = -1;
  static int nRunTime = 0;
  boolean bStart = false;
  //泡泡膨脹狀態通用屬性--------------------
  String sSwellImgPath;//泡泡膨脹的圖片路徑
  Image imgSwell; //膨脹圖片
  int nSwellImgHeight = 16,nBombImgWidth = 16;//泡泡膨脹圖片尺寸
  final byte btSwellTotalFrame = 3;//泡泡膨脹總幀數
  byte btSwellTotalCol = 4, btSwellTotalRow = 1; //泡泡膨脹圖片文件分割的總行列數
  static byte [] arr_btSwellAnimationFrame={0,1,2};//泡泡膨脹動畫數組
  //泡泡爆炸狀態通用屬性----------------------
  String sBlastImgPath;//泡泡爆炸圖片路徑
  Image imgBlast;//泡泡爆炸圖片
  int nBlastImgHeight = 16,nBalstImgWidth = 16;//泡泡爆炸圖片尺寸
  final byte btBalstTotalFrame = 5;//泡泡爆炸總幀數
  byte btBalstTotalCol = 4, btBalstTotalRow = 2; //泡泡爆炸圖片文件分割的總行列數
  final static byte [] arr_btBalstAnimationFrame = {0,7,5,6,4};//泡泡爆炸動畫數組
  //泡泡死亡狀態通用屬性----------------------
  String sDeathImgPath;//死亡圖片路徑
  Image imgDeath;//死亡圖片
  public static boolean bIsDead = false;
  int nDeathImgHeight = 16,nDeathImgWidth = 16;//死亡圖片尺寸
  final byte btDeathTotalFrame = 5;//死亡動畫總幀數
  byte btDeathTotalCol = 1, btDeathTotalRow = 7; //圖片文件分割的總行列數
  final static byte [] arr_btDeathAnimationFrame = {0,1,2,3,4};//死亡動畫數組
  Vector popQueue = new Vector(10);
  //public Pop p;
  //----------------------------泡泡通用模塊--------------------------------
  //end


  //begin
  //-----------------------------泡泡隊列模塊-----------------------------------
  //每個泡泡必備的屬性
  //AnimationModule
//動畫類
  public  static class AnimationModule{
    //動畫通用屬性
    byte[] btCurrentFrame = {-1}; //當前幀號
    int btCurrentIndex = 0; //當前幀在圖片的索引值
    int btCurrentCol = 0, btCurrentRow = 0; //當前幀在圖片的行列位置
    byte btAtCol = 0,btAtRow = 0;
    int ix = 0, iy = 0; //所在的坐標
    byte iIntervalTime = 0;
    byte iExistTime =0;
    byte iRunTime=-1;
    public AnimationModule(byte existTime){
      btCurrentFrame[0]=-1;
      btCurrentIndex=0;
      btCurrentCol=0;
      btCurrentRow=0;
      btAtCol=0;
      btAtRow=0;
      iExistTime=existTime;
      iRunTime=-1;
    }
  }

  //為泡泡隊列分配空間
  public void createPopQueue(Pop p){
    p.amSwell = new AnimationModule((byte)(btSwellTotalFrame*3));
    p.amBlast = new AnimationModule((byte)(btBalstTotalFrame));
    p.amDeath = new AnimationModule((byte)(btDeathTotalFrame*3));
    
  }

  public static class Pop{
    int iTest;
    //泡泡未啟動狀態-------------------------
    final public static byte MSG_NOTHING  = -1;
    public static byte btCurrentMsg = MSG_NOTHING;
    final public static byte MSG_SWELL = 6; //泡泡膨脹狀態
    AnimationModule amSwell;
    final public static byte MSG_BLAST = 7;//泡泡爆炸狀態
    AnimationModule amBlast;
    final public static byte MSG_DEAD = 8;//泡泡死人狀態
    AnimationModule amDeath;
    final public static byte MSG_CLEAR = 9;//泡泡清除狀態
    final public static byte MSG_END = 10;//泡泡結束狀態    

    Pop(){
    }

  }
  //-----------------------------泡泡類模塊-----------------------------------
  //end

  //泡泡構造函數
  public Bomb(String sPath1,String sPath2,String sPath3) { 
  	
    sSwellImgPath = sPath1;
    sBlastImgPath = sPath2;
    sDeathImgPath = sPath3;
    try{
      imgSwell = Image.createImage(sSwellImgPath);
      imgBlast = Image.createImage(sBlastImgPath);
      imgDeath = Image.createImage(sDeathImgPath);
    }catch(Exception e){
      e.printStackTrace() ;
    }

  }
  //泡泡類動畫幀自增方法
  public void nextBombFrame(Pop p){

    switch(p.btCurrentMsg){
      case Pop.MSG_SWELL://放泡泡消息
        p.amSwell.btCurrentIndex//放泡泡動畫指向下一指幀在圖片的索引值
            =nextFrame(this.btSwellTotalFrame,
                       p.amSwell.btCurrentFrame,
                       this.arr_btSwellAnimationFrame);
        //if(++p.amSwell.iRunTime>=p.amSwell.iExistTime){
        //  p.btCurrentMsg=Bomb.Pop.MSG_BLAST;
        //}
        break;
      case Pop.MSG_BLAST://爆炸消息
        p.amBlast.btCurrentIndex//爆炸動畫指向下一指幀在圖片的索引值
            =nextFrame(this.btBalstTotalFrame,
                       p.amBlast.btCurrentFrame,
                       this.arr_btBalstAnimationFrame);
        break;
      case Pop.MSG_DEAD://死亡消息
        p.amDeath.btCurrentIndex//死亡動畫指向下一指幀在圖片的索引值   
            =nextFrame(this.btDeathTotalFrame,
                      	p.amDeath.btCurrentFrame,                                            	               		this.arr_btDeathAnimationFrame);                                
        break;                                  
      case Pop.MSG_END:
        break;
    }


  }

	

  //泡泡類繪制圖片方法
  public void paintBomb(Graphics g,Pop p){

    switch(p.btCurrentMsg){
      case Pop.MSG_SWELL://放泡泡消息
          this.paintImage(g, p.amSwell.ix, p.amSwell.iy, this.imgSwell, //繪制泡泡
                          this.btSwellTotalRow, this.btSwellTotalCol,
                          p.amSwell.btCurrentIndex);
        break;
      case Pop.MSG_BLAST://爆炸消息
        this.paintImage(g,p.amBlast.ix,p.amBlast.iy,this.imgBlast,//繪制爆炸
                        this.btBalstTotalRow,this.btBalstTotalCol,
                        p.amBlast.btCurrentIndex);
        break;
      case Pop.MSG_DEAD://死亡消息
        this.paintImage(g,p.amDeath.ix,p.amDeath.iy,this.imgDeath,//繪制死亡
                       this.btDeathTotalRow,this.btDeathTotalCol,
                       p.amDeath.btCurrentIndex);
        break;
      case Pop.MSG_END:
        break;
    }


  }



  /*---------------------------------繪圖通用模塊---------------------------------*/

  /*-----------序列數組----------
      //動畫幀自增通模塊
      //bTotFrame 						圖片總幀數
      //btCurFrame[] 				當前幀數,為指針型
      //arr_btBombAnimation 	動畫序列數組
      ------------------------------*/
  //返回動畫下一幀的貼圖索引值
  public byte nextFrame(byte btTotFrame,byte[] btCurFrame,byte [] arr_btBombAnimation){

    if (++btCurFrame[0] >= btTotFrame) {//或者當前移動幀數大于移動總幀數,
      btCurFrame[0] = 0; //則幀數從頭開始,指向第0張圖片
    }

    byte btCurIndex = arr_btBombAnimation[btCurFrame[0]]; // 從序列表里獲得當前圖片幀數

    return btCurIndex;
  }

  /*-------------------------------------------------------
   *  函數名:         paintImage
   *
   *  功能:           在指定坐標處繪出圖片的部分區域
   *
   *  參數說明:
   *        -g       上級圖形類
   *        -x       要繪圖的x點
   *        -y       要繪圖的y點
   *        -row     圖片被分割成row行
   *        -col     圖片被分割成col列
   *        -index   繪圖區域在圖片文件中行列的索引值
   *-------------------------------------------------------*/
  public void paintImage(Graphics g,int x,int y,Image img,
                         int row,int col,int index){
    int h=0;
    try{
        h= img.getHeight()/row;//求得每單元圖的高寬
    }catch(Exception e){
      e.printStackTrace();
    }
    int w = img.getWidth()/col;
    int c = index % col;//求得當前單單元圖的行列
    int r = index / col;
    
    g.setClip(x,y-h,w,h);//設置繪圖區域

    g.drawImage(img,
                x - c * w,
                y - r * h - h,
                0);
    g.setClip(0, 0, getWidth(), getHeight());//恢復繪圖區域
  }
  

  public void paint(Graphics g){
  }






}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩成人精品在线观看| 日本乱人伦aⅴ精品| 91麻豆成人久久精品二区三区| 日本精品免费观看高清观看| 久久先锋影音av鲁色资源网| 亚洲成人先锋电影| 99在线精品观看| 久久久99精品免费观看| 亚洲1区2区3区视频| 不卡的av在线| 久久久久亚洲综合| 蜜臀va亚洲va欧美va天堂 | 激情小说欧美图片| 欧美日韩一区在线观看| 亚洲欧美日韩国产另类专区| 成人国产精品免费观看| 欧美白人最猛性xxxxx69交| 亚洲大尺度视频在线观看| 99久久久无码国产精品| 欧美国产日韩一二三区| 国产一区二区不卡在线| 日韩欧美一级精品久久| 秋霞午夜鲁丝一区二区老狼| 欧美乱妇23p| 亚洲国产成人91porn| 欧美亚洲日本一区| 一区二区三区在线观看国产| 91小视频免费看| 亚洲精品自拍动漫在线| 91丨porny丨蝌蚪视频| 综合网在线视频| 91在线无精精品入口| 亚洲精品视频免费观看| 色综合久久久久久久久| 亚洲综合免费观看高清完整版 | 国产亚洲美州欧州综合国| 国产在线视频一区二区三区| 日韩精品一区二区三区四区视频| 强制捆绑调教一区二区| 欧美哺乳videos| 国产成人免费av在线| 国产精品家庭影院| 日本精品视频一区二区| 日韩激情视频在线观看| 日韩欧美一区二区三区在线| 国产又黄又大久久| 国产精品高清亚洲| 91豆麻精品91久久久久久| 一级精品视频在线观看宜春院| 欧美日韩在线观看一区二区 | 青娱乐精品视频| 久久久久久久久久美女| 成人精品gif动图一区| 亚洲欧美视频一区| 在线成人av影院| 国产一区在线精品| 亚洲人成亚洲人成在线观看图片| 欧美日韩国产一区| 国产一区二区在线视频| 亚洲乱码精品一二三四区日韩在线| 欧美在线播放高清精品| 国产一区久久久| 一区二区三区四区蜜桃| 日韩午夜av电影| 粉嫩av一区二区三区在线播放| 一区二区三区在线视频观看58| 日韩欧美亚洲另类制服综合在线| 成人精品免费网站| 天堂在线亚洲视频| 中文字幕免费一区| 欧美日韩国产免费| 国产成都精品91一区二区三| 亚洲黄色小说网站| 精品国产第一区二区三区观看体验| www.亚洲精品| 麻豆国产欧美一区二区三区| 中文字幕一区在线| 欧美va日韩va| 欧美日韩一区二区三区在线| 国产成+人+日韩+欧美+亚洲| 午夜伦欧美伦电影理论片| 国产精品视频线看| 日韩一区二区精品在线观看| 91蜜桃传媒精品久久久一区二区| 久久91精品久久久久久秒播| 亚洲综合色区另类av| 国产欧美日韩一区二区三区在线观看| 欧美人与禽zozo性伦| 本田岬高潮一区二区三区| 另类小说视频一区二区| 亚洲一区二区三区在线| 欧美—级在线免费片| 日韩免费视频一区| 在线电影院国产精品| 欧美最新大片在线看| 99久久免费国产| 成人福利视频在线| 成人理论电影网| 高清成人在线观看| 国产精品99久久久久久久女警| 日av在线不卡| 婷婷国产v国产偷v亚洲高清| 亚洲色大成网站www久久九九| 欧美—级在线免费片| 久久综合久久鬼色中文字| 91精品国产色综合久久久蜜香臀| 日本韩国欧美在线| 色狠狠桃花综合| 一本色道久久综合狠狠躁的推荐| 99精品视频在线免费观看| 丁香婷婷综合网| 国产**成人网毛片九色| 成人黄色国产精品网站大全在线免费观看 | 麻豆国产精品一区二区三区| 天天色综合成人网| 视频一区二区不卡| 日韩精品电影在线观看| 强制捆绑调教一区二区| 九一久久久久久| 国产精品 日产精品 欧美精品| 国产伦精品一区二区三区在线观看| 另类调教123区| 国内精品国产成人国产三级粉色 | 亚洲一级二级在线| 香蕉加勒比综合久久| 老司机精品视频在线| 国产精品99久久久久久有的能看| 成人高清免费观看| 欧美丝袜丝交足nylons| 欧美美女直播网站| 欧美一二区视频| 国产亚洲精品bt天堂精选| 最新日韩在线视频| 亚洲电影在线播放| 蜜桃av噜噜一区二区三区小说| 国产在线视频不卡二| 波多野结衣精品在线| 欧美日韩三级在线| 久久精品网站免费观看| 亚洲视频资源在线| 日韩av成人高清| 成人免费看黄yyy456| 在线看不卡av| 精品盗摄一区二区三区| 亚洲视频小说图片| 午夜视频在线观看一区| 国产一区二区三区免费看| 99国产精品国产精品久久| 91麻豆精品国产无毒不卡在线观看| 26uuu亚洲综合色| 亚洲免费av高清| 蜜臀av一区二区| 一本色道**综合亚洲精品蜜桃冫| 欧美一区二区三区日韩| 中文字幕一区二区三区在线不卡| 亚洲影视在线播放| 国产成人在线电影| 欧美精品tushy高清| 日本一区二区三区dvd视频在线| 亚洲午夜久久久久久久久久久| 久久www免费人成看片高清| 99热在这里有精品免费| 91精品午夜视频| 一区二区三区欧美日| 国产在线视频精品一区| 欧美男女性生活在线直播观看| 中文字幕一区二区5566日韩| 青青草成人在线观看| 91久久国产综合久久| 久久精品视频网| 日本麻豆一区二区三区视频| 9i在线看片成人免费| 国产亚洲人成网站| 蜜桃久久久久久久| 91精品综合久久久久久| 亚洲国产精品久久不卡毛片 | 日韩一区二区三区在线视频| 亚洲精品写真福利| 99麻豆久久久国产精品免费| 日韩你懂的在线播放| 日本va欧美va瓶| 欧美日韩国产大片| 亚洲成人资源在线| 欧美熟乱第一页| 亚洲激情校园春色| 日本高清不卡视频| 亚洲少妇中出一区| 91亚洲精华国产精华精华液| 欧美国产精品v| 国产成人8x视频一区二区| www成人在线观看| 韩国三级电影一区二区| 欧美tickle裸体挠脚心vk| 日韩电影一二三区| 日韩精品一区二| 国产综合成人久久大片91| 精品国精品自拍自在线| 精品一区精品二区高清| 欧美成人a在线| 国产成人综合在线|