亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
3d成人动漫网站| 粉嫩av亚洲一区二区图片| 91麻豆国产在线观看| 国产精品嫩草影院av蜜臀| 国产成人精品综合在线观看| 欧美激情一区二区三区蜜桃视频| 国产自产v一区二区三区c| 久久综合色婷婷| 国产一区二区精品久久99| 国产欧美精品一区| 91网上在线视频| 日韩精品一二三| 欧美日韩在线三区| 奇米综合一区二区三区精品视频| 欧美精品一区二区三区蜜桃 | 国产乱色国产精品免费视频| 欧美激情一区二区三区全黄| 色综合视频一区二区三区高清| 亚洲精品国产精华液| 7777精品伊人久久久大香线蕉经典版下载 | 国产一区91精品张津瑜| 亚洲欧洲精品天堂一级| 欧美日韩精品一区二区天天拍小说 | 99亚偷拍自图区亚洲| 亚洲一区二区三区在线| 日韩一区二区中文字幕| 国产不卡一区视频| 午夜久久久久久久久| 久久久99精品免费观看| 欧洲另类一二三四区| 国产一区二区三区国产| 一区二区在线观看免费| 2020国产精品自拍| 欧洲视频一区二区| 国产成人av电影在线观看| 亚洲一区av在线| 久久这里只有精品6| 欧洲色大大久久| 国产ts人妖一区二区| 亚洲成人福利片| 中文字幕精品综合| 日韩女同互慰一区二区| 91麻豆文化传媒在线观看| 麻豆国产欧美日韩综合精品二区| 亚洲六月丁香色婷婷综合久久| 精品少妇一区二区三区| 欧美性一二三区| 不卡的av中国片| 韩国一区二区在线观看| 精品一区二区三区日韩| 亚洲欧洲色图综合| 精品国产91乱码一区二区三区| 欧日韩精品视频| proumb性欧美在线观看| 极品少妇一区二区三区精品视频| 一区二区三区在线高清| 国产精品久久久久天堂| 久久久欧美精品sm网站| 欧美一区三区二区| 欧洲激情一区二区| 91一区一区三区| 成熟亚洲日本毛茸茸凸凹| 久久超碰97中文字幕| 亚洲成人7777| 亚洲制服丝袜av| 亚洲男人电影天堂| 国产欧美日韩在线视频| 久久久久国色av免费看影院| 91精品国产综合久久精品| 欧美日韩视频专区在线播放| 一本到高清视频免费精品| 成人性视频免费网站| 国产毛片精品视频| 精品亚洲免费视频| 精品一区二区久久久| 免费在线视频一区| 久色婷婷小香蕉久久| 视频一区二区三区中文字幕| 亚洲影视在线播放| 婷婷开心激情综合| 日本一不卡视频| 麻豆免费精品视频| 老司机精品视频导航| 国模无码大尺度一区二区三区| 美国三级日本三级久久99| 蜜臀av性久久久久蜜臀aⅴ| 日本免费在线视频不卡一不卡二| 日本va欧美va精品发布| 日韩精品五月天| 久久精品国产精品亚洲精品 | 欧美成人一区二区| 精品国产伦一区二区三区观看方式| 欧美一区二区三区的| 日韩欧美一区二区免费| www国产成人免费观看视频 深夜成人网| 精品不卡在线视频| 久久久久国产一区二区三区四区| 国产精品视频看| 亚洲乱码日产精品bd| 亚洲国产成人91porn| 青青草国产精品亚洲专区无| 国产美女精品在线| 91免费国产视频网站| 欧美人妖巨大在线| 久久综合成人精品亚洲另类欧美| 国产午夜精品久久久久久免费视| 中文字幕 久热精品 视频在线| 1区2区3区欧美| 日本网站在线观看一区二区三区| 国产一区二区日韩精品| 99精品桃花视频在线观看| 欧美三区免费完整视频在线观看| 日韩欧美国产综合| 国产精品天美传媒| 亚洲国产一区二区三区| 狠狠色丁香婷婷综合久久片| 99久久国产综合精品色伊| 欧美精品v日韩精品v韩国精品v| 欧美xxxx老人做受| 亚洲视频一区在线| 久久精品国产第一区二区三区| kk眼镜猥琐国模调教系列一区二区| 欧美日韩国产另类一区| 国产午夜精品久久| 日本强好片久久久久久aaa| 东方aⅴ免费观看久久av| 欧美久久久久中文字幕| 国产精品理论在线观看| 日本视频一区二区| 色综合视频在线观看| 亚洲精品在线观看视频| 亚洲午夜一区二区| 不卡视频一二三四| 日韩精品自拍偷拍| 亚洲成人免费视频| 丰满少妇久久久久久久| 欧美成人精品福利| 亚洲第一激情av| 99久久久久久99| 久久久亚洲精华液精华液精华液| 日韩和欧美一区二区| 99这里只有精品| 日韩欧美123| 天天射综合影视| 在线一区二区三区四区五区| 国产欧美一区二区三区网站| 奇米四色…亚洲| 欧美裸体bbwbbwbbw| 一区二区三区四区在线免费观看| 国产91精品久久久久久久网曝门| 日韩欧美自拍偷拍| 午夜亚洲国产au精品一区二区| 色综合中文字幕国产 | √…a在线天堂一区| 国产精品一级二级三级| 欧美第一区第二区| 美女诱惑一区二区| 91精品在线麻豆| 视频在线观看一区二区三区| 在线视频观看一区| 亚洲免费在线视频| 97久久精品人人澡人人爽| 亚洲国产精品国自产拍av| 国产麻豆成人传媒免费观看| 精品欧美久久久| 美脚の诱脚舐め脚责91 | 久久综合色之久久综合| 六月丁香婷婷久久| 日韩精品一区二区三区在线播放| 免费高清视频精品| 欧美一区二区福利视频| 日本欧美久久久久免费播放网| 欧美一区二区三区四区五区| 天天色天天爱天天射综合| 欧美日韩精品欧美日韩精品一| 亚洲网友自拍偷拍| 欧美日韩国产小视频| 日韩成人午夜精品| 欧美一区二区三区视频免费播放| 日韩激情一二三区| 日韩精品一区在线| 国产99久久久精品| 亚洲欧美日本在线| 欧美日韩视频在线一区二区| 婷婷丁香久久五月婷婷| 91精品国产一区二区三区香蕉| 蜜臀av性久久久久蜜臀av麻豆 | 666欧美在线视频| 久久精品久久精品| 久久嫩草精品久久久精品一| 成人免费毛片aaaaa**| 亚洲精品国产a久久久久久 | 九九精品视频在线看| 久久综合久色欧美综合狠狠| 丁香婷婷综合色啪| 一区二区三区资源| 91精品国产综合久久久久久| 精品无人区卡一卡二卡三乱码免费卡| 26uuuu精品一区二区| 92精品国产成人观看免费|