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

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

?? playcanvas.java

?? 大富翁游戲加源代碼 很不錯的學習材料哦!
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:

import java.io.*;
import java.util.*;
import javax.microedition.lcdui.*;
import javax.microedition.rms.*;
/**
 * 游戲畫板。這是這個游戲最關鍵的一個類
 * @author SoftStar,嘟嘟熊
 * @version 1.0
 */

public class PlayCanvas extends Canvas
    implements Runnable
{
  /**
   * 畫板寬度
   */
  public int canvasWidth;
  /**
   * 畫板高度
   */
  public int canvasHeight;
  /**
   * richMan實例
   */
  private KMRichMan richMan;
  /**
   * 地圖第1部分
   */
  private Image mapImage1;
  /**
   * 地圖第2部分
   */
  private Image mapImage2;
  /**
   * 游戲控制面板
   */
  private Image gamePanelImage;
  /**
   * 線程
   */
  private volatile Thread thread;
  /**
   * 控制面板的選擇序號(1-色子,2-卡片,3-其他(玩家信息,股票信息)4-系統
   */

  private static int choiceIndex = 0;
  /**
   * 游戲角色要走的步數
   */

  private static int steps = 0;
  /**
   * 游戲進行的輪數
   */

  private static int turnCount = 0;
  /**
   * 游戲狀態(0-進行,2-勝利,3-失敗)
   */

  private static int gameStatusGoOrWinOrFail = 0;
  /**
   * 角色特殊狀態(10--在公園處,20-在監獄里,30-在睡眠中(睡眠卡)
   */

  private static int status_Park10_Prinson20_Sleep30 = 0;
  /**
   * 現在正在進行的角色
   */

  public static int nowPlayerID = 0;
  /**
   * 現在玩家是否能控制進行游戲(如果是電腦角色在玩,玩家就不能控制)
   */

  private boolean ManControlStatus_CanNotPlay;
  /**
   * 隨機函數
   */

  private Random random;
  /**
   * 定時器
   */

  private static Timer timer = null;
  /**
   * 地皮
   */

  private static int groundForBuilding[] = null;


  // 游戲角色變量

  /**
   * 角色在地圖上位置(用地皮ID表示)
   */

  private static int player_location[] = null;
  /**
   * 角色卡片
   */

  private static int player_cards[][] = null;
  /**
   * 角色因為進入監獄而不能移動的次數
   */

  private static int player_prinson_canNotMoveNum[] = null;
  /**
   * 角色因為睡眠而不能移動的次數
   */

  private static int player_sleep_canNotMoveNum[] = null;
  /**
   * 角色輪轉次序
   */

  public  static int player_sequence[] = null;
  /**
   * 角色的金錢
   */

  public  static int player_money[] = null;
  /**
   * 角色的地皮和房屋的圖象
   */

  private static Image player_houseImage[][] = null;
  /**
   * 角色的頭像
   */

  private static Image player_faceImage[] = null;
  /**
   * 玩家的股票 [角色ID][股票ID][0]---- 購入數目,[角色ID][股票ID][1]---- 購入價格
   *
   */

  public static int player_stock[][][] = null;
  /**
   * 屏幕圖象緩沖
   */

  Image bufferImage;
  /**
   * 空白地皮圖象
   */

  Image emptyGround;
  /**
   * 屏幕圖象緩沖句柄
   */

  Graphics bufferImageG;
  /**
   * 是否背景燈打開
   */

  private boolean isLightOn = true;
  /**
   * 是否背景音樂打開
   */

  private boolean isMusicOn = true;
  /**
   * 游戲速度
   */

  private int gameSpeed = 3;
  /**
   * 音樂序號
   */

  private int music = 1;
  /**
   * 西門子手機的音樂合成器
   */

  com.siemens.mp.game.MelodyComposer composer;
  /**
   * 地皮的緩沖
   */

  private int[] bufferGroundForBuilding;

// 股票變量

  /**
   * 股票名字
   */

  public String[] stock_name;
  /**
   * 股票的價格
   */

  public int[] stock_price;
  /**
   * 股票的漲幅
   */

  public int[] stock_amplitude;
  /**
   * 股票的分數部分(便于計算)如 2元 漲幅 1%,總要個分數部分吧,不然老是2元
   */

  public int[] stock_price_fraction;
  /**
   * 構造游戲畫板
   */

    public PlayCanvas(KMRichMan kmrichman)
    {

      player_faceImage = null;
      richMan = null;
      mapImage1 = null;
      thread = null;
      random = null;
      thread = null;

      richMan = kmrichman;
      ManControlStatus_CanNotPlay = false;
      random = new Random();
      timer = new Timer();
      canvasWidth = getWidth();
      canvasHeight = getHeight();
      bufferImage = Image.createImage(101,80);
      bufferImageG = bufferImage.getGraphics();

      groundForBuilding = new int[56];
      bufferGroundForBuilding = new int[56];

      player_location = new int[3];
      player_money = new int[3];
      player_sequence = new int[3];
      player_cards = new int[3][5];
      player_prinson_canNotMoveNum = new int[3];
      player_sleep_canNotMoveNum = new int[3];
      player_faceImage = new Image[3];

      player_stock = new int[3][4][2];

     // 加載圖像
      loadMap();
      loadImage();
      //初始化音樂
      this.initialMusic();
      //初始化游戲
      initialGame();

    }
    /**
     * 加載地圖
     */

    void loadMap()
    {
      try
      {
        mapImage1 = Image.createImage(128,160);
        mapImage2 = Image.createImage(128,160);
        Graphics g = mapImage1.getGraphics();
        g.drawImage(com.siemens.mp.ui.Image.createImageWithoutScaling("/res/image/map0bw.png"),0,0,20);
        g = mapImage2.getGraphics();
        g.drawImage(com.siemens.mp.ui.Image.createImageWithoutScaling("/res/image/map1bw.png"),0,0,20);
      }
      catch(Exception exception) { }
    }
    /**
     * 加載圖象
     */

    void loadImage()
    {
      Image houseImage = null;
      Graphics g = null;
      try
      {
        houseImage = Image.createImage("/res/image/housebw.png");
        emptyGround = Image.createImage("/res/image/ground.png");
        gamePanelImage = com.siemens.mp.ui.Image.createImageWithoutScaling("/res/image/gamepanelbw.png");
        for(int i = 0; i < 3; i++)
          player_faceImage[i] = Image.createImage(String.valueOf(new StringBuffer("/res/image/h").append(i).append(".png")));
      }
      catch(Exception exception) {
        System.out.println("Err on loading Images");
      }
      // 把地皮和房子的圖象分割成一個一個小塊
      player_houseImage = new Image[3][4];
      for(int i = 0; i < 3; i++)
      {
        for(int j = 0; j < 4; j++)
        {
          Image image = Image.createImage(16, 16);
          g = image.getGraphics();
          g.drawImage(houseImage, -16 * j, -16 * i, 20);
          player_houseImage[i][j] = image;
        }
      }
      houseImage = null;
      g = null;
    }
    /**
     * 排列角色的次序
     * @param selectedPlayerID 玩家選擇的角色ID
     */

    void arragePlayerSecquence(int selectedPlayerID)
    {
        player_sequence[0] = selectedPlayerID;

        int player2 = fetchRandom(2);
        int player3 = fetchRandom(2);
        for(; player2 == selectedPlayerID; player2 = fetchRandom(2));
        player_sequence[1] = player2;
        for(; player3 == selectedPlayerID || player3 == player2; player3 = fetchRandom(2));
        player_sequence[2] = player3;

    }
    /**
     * 轉到下一個玩家
     * @param delay 延遲時間
     */

    public void nextPlay(int deplay)
    {
        timer.schedule(new Controlor(this), deplay);
    }
    /**
     * 電腦玩家開始游戲
     * @param delay 延遲時間
     * @param Num_ComputerActor_or_HunmanActor 是電腦還是玩家 (1-電腦 0-玩家)
     */

    public void play_computerActor(int delay, int Num_ComputerActor_or_HumanActor)
    {
        timer.schedule(new Controlor(this, Num_ComputerActor_or_HumanActor), delay);
    }
    /**
     * 開始游戲
     * @param isLoadGameRestart 是否是進行的存儲的游戲(繼續上次游戲)
     */

    public void play(boolean isLoadGameRestart)
    {
      // siemens special call
      if (this.isIsLightOn())
        com.siemens.mp.game.Light.setLightOn(); //開燈
      else
        com.siemens.mp.game.Light.setLightOff();//關燈
        //siemens special call

      choiceIndex = 0;
      status_Park10_Prinson20_Sleep30 = 0;

      if(isLoadGameRestart)
      {
        nowPlayerID = 2; // 讓玩家先開始
      } else {
        repaint();
        serviceRepaints();
        try
        {
          Thread.sleep(600L);
        }
        catch(Exception exception) { }
      }
      // 換游戲角色
      nowPlayerID++;
      nowPlayerID %= 3;

      // 如果是玩家操作,那么保存游戲
      if(nowPlayerID == 0)
      {
        autoSaveGame();
        turnCount++;
        this.changeStock();
      }
      // 如果有游戲角色 錢 < 0
      if(player_money[nowPlayerID] < 0)
      {
        nowPlayerID++;
        nowPlayerID %= 3;
      }
      // 如果 玩家沒有錢
      if(player_money[0] < 0)
      {
        gameOver(0);
        return;
      }
      // 如果電腦角色沒有錢
      if(player_money[1] < 0 && player_money[2] < 0)
      {
        gameOver(1);
        return;
      }
      repaint();
      serviceRepaints();

      if(player_prinson_canNotMoveNum[nowPlayerID] > 0)
      {
        if(deleteCard(nowPlayerID, 5)) // 使用免罪卡
        {
          player_prinson_canNotMoveNum[nowPlayerID] = 0;
          nextPlay(1000);
        } else
        {
          status_Park10_Prinson20_Sleep30 = 20;
          repaint();
          serviceRepaints();
          nextPlay(1000);
          player_prinson_canNotMoveNum[nowPlayerID]--;
        }
      } else
      if(player_sleep_canNotMoveNum[nowPlayerID] > 0)
      {
        status_Park10_Prinson20_Sleep30 = 30;
        repaint();
        serviceRepaints();
        nextPlay(1000);
        player_sleep_canNotMoveNum[nowPlayerID]--;
      } else
      if(nowPlayerID != 0)
        play_computerActor(1000, 1); // 電腦玩家開始玩
      else
        ManControlStatus_CanNotPlay = false; // 玩家開始玩
    }
    /**
     * 啟動移動角色線程
     * @param steps 步數
     */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产在线播放一区| 精品欧美黑人一区二区三区| 欧美日韩一区高清| 亚洲欧美一区二区视频| 亚洲黄色小视频| 青青青伊人色综合久久| 91国产丝袜在线播放| 日本一区二区三区国色天香| 丝袜美腿亚洲一区二区图片| 99精品欧美一区二区蜜桃免费| 日韩一级免费一区| 亚洲国产精品久久久男人的天堂 | 亚洲综合网站在线观看| 国产一区二区三区黄视频| 欧美精品久久一区二区三区| 亚洲精品ww久久久久久p站| 国产传媒日韩欧美成人| 亚洲精品一区二区三区香蕉| 一区二区国产盗摄色噜噜| 成人18视频日本| 久久久久免费观看| 久草热8精品视频在线观看| 欧美丰满美乳xxx高潮www| 亚洲在线中文字幕| 99国产欧美久久久精品| 国产精品麻豆视频| jlzzjlzz欧美大全| 久久精品一区蜜桃臀影院| 韩国三级在线一区| 日韩一级大片在线| 久久电影国产免费久久电影| 日韩欧美在线影院| 久久国产免费看| 欧美大胆人体bbbb| 精品一区二区三区在线播放视频 | 波多野结衣亚洲一区| 国产精品伦理在线| 波多野结衣中文字幕一区| 国产精品美女久久久久高潮| 成人精品免费视频| 亚洲日本一区二区| 欧美日韩卡一卡二| 蜜桃久久久久久久| 精品国产自在久精品国产| 国产一区二区不卡| 日本一区二区不卡视频| 99麻豆久久久国产精品免费优播| 中文字幕视频一区二区三区久| 99久精品国产| 婷婷久久综合九色国产成人 | 另类小说图片综合网| 精品国产乱码久久久久久牛牛| 国产一区二区三区综合| 国产精品青草综合久久久久99| 9i在线看片成人免费| 亚洲自拍与偷拍| 91精品国产91综合久久蜜臀| 国产麻豆91精品| 亚洲精品成a人| 欧美一区二区三区视频免费播放| 精品伊人久久久久7777人| 国产精品久久久一本精品| 欧美日韩中文字幕一区二区| 精品在线播放免费| 亚洲精品日韩一| 亚洲综合久久av| 国产**成人网毛片九色 | 国产美女一区二区| 亚洲色图一区二区三区| 欧美日韩国产免费一区二区| 国产一区91精品张津瑜| 一级日本不卡的影视| 欧美成人女星排名| 91麻豆视频网站| 久久精品国产亚洲aⅴ| 成人免费一区二区三区在线观看| 欧美一级一区二区| 91豆麻精品91久久久久久| 精品一区在线看| 亚洲一区二区三区四区中文字幕| 欧美mv和日韩mv的网站| 在线观看精品一区| 国产91在线观看| 麻豆久久一区二区| 亚洲国产日韩a在线播放| 亚洲国产精品ⅴa在线观看| 欧美一区二区在线播放| 91福利在线导航| www.欧美.com| 国产一区二区电影| 蜜桃精品视频在线观看| 艳妇臀荡乳欲伦亚洲一区| 亚洲国产高清在线观看视频| 日韩三级高清在线| 欧美日韩另类一区| 色av一区二区| 成人av网站在线观看免费| 韩国女主播成人在线观看| 日日夜夜精品免费视频| 一区二区三区高清不卡| 国产精品美女久久久久av爽李琼 | 亚洲欧美在线观看| 国产欧美日韩在线| 欧美精品一区二区三区高清aⅴ | 国产精品影视天天线| 蜜臀国产一区二区三区在线播放| 亚洲国产中文字幕在线视频综合| 亚洲天堂福利av| 亚洲丝袜另类动漫二区| 中文字幕免费不卡在线| 欧美激情一区三区| 国产精品欧美一区喷水| 国产精品日韩成人| 中文字幕一区二区三中文字幕| 国产日产欧美一区二区视频| 国产亚洲福利社区一区| 国产亲近乱来精品视频| 国产欧美日本一区二区三区| 久久精品欧美一区二区三区麻豆| 精品精品国产高清a毛片牛牛| 欧美一卡二卡在线观看| 欧美大片拔萝卜| 久久久99精品久久| 国产精品黄色在线观看| 亚洲男人电影天堂| 天堂久久一区二区三区| 免费看欧美美女黄的网站| 美女尤物国产一区| 国产一区二区视频在线播放| 成人美女在线视频| 欧美丝袜丝nylons| 欧美一区二区国产| 91精品国产综合久久久久| 91精品国产综合久久精品图片| 91精品在线观看入口| 精品国产亚洲在线| 亚洲欧洲日韩女同| 亚洲综合色噜噜狠狠| 蜜桃久久av一区| 国产成人精品免费一区二区| 91香蕉视频mp4| 在线成人免费视频| 久久综合九色综合97_久久久| 国产女人aaa级久久久级| 亚洲欧美日韩一区二区| 美女脱光内衣内裤视频久久网站 | 91久久精品一区二区| 欧美亚洲国产一卡| 精品久久久久一区| 亚洲欧美视频在线观看视频| 日韩和欧美的一区| 成人免费视频视频在线观看免费| 欧美调教femdomvk| 久久久久国产精品麻豆ai换脸| 亚洲日本在线a| 久久国产剧场电影| 91视频在线观看| 欧美mv和日韩mv国产网站| 亚洲视频你懂的| 精品一区二区三区在线视频| 91精品1区2区| 久久综合九色综合97婷婷| 亚洲黄色录像片| 国产成a人亚洲精品| 欧美系列亚洲系列| 国产欧美一区二区精品婷婷| 亚洲电影欧美电影有声小说| 大白屁股一区二区视频| 欧美一区二区三区男人的天堂| 国产精品狼人久久影院观看方式| 欧美aaa在线| 欧美影片第一页| 国产精品国产三级国产普通话蜜臀| 亚洲一区二区在线观看视频| 国产精品18久久久| 日韩免费看的电影| 午夜在线电影亚洲一区| 91麻豆产精品久久久久久| 国产人妖乱国产精品人妖| 美日韩黄色大片| 欧美日韩免费电影| 亚洲欧美另类综合偷拍| 国产宾馆实践打屁股91| 久久亚洲精华国产精华液| 日韩国产精品久久久| 欧美色男人天堂| 亚洲欧美日韩电影| 91一区在线观看| 国产精品久久久久精k8| 国产精品99久久久久久宅男| 精品久久一区二区| 久久精品国产在热久久| 欧美一级片免费看| 亚洲mv在线观看| 欧美日韩精品一区二区三区| 一区二区三区视频在线观看| a亚洲天堂av| 中文字幕中文在线不卡住| 岛国精品在线播放| 亚洲欧美综合网|