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

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

?? gameworld.java

?? J2ME手機藍牙五子棋游戲
?? JAVA
字號:
package bluetoochgame;

import javax.microedition.lcdui.*;

/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Copyright: Copyright (c) 2005</p>
 * <p>Company: </p>
 * @author not attributable
 * @version 1.0
 */

public class GameWorld {

  private Control control;
  private Chess[][] chess; //棋子數組
  // private boolean  myMove;
  // private boolean  isServer;
  private int player1win, player2win;
  private MyCanvas mycanvas;
  /** Constructor */
  private int chessMapLength, chessMapGrid, chessGridLength;
  //棋盤的邊長,棋盤一邊格子數,每格寬度
  private int chessLength; //棋子的直徑
  private int chessMapX, chessMapY; //棋盤左上角x,y坐標
  public static boolean myMove;
  public boolean isServer;
  private int selectedX, selectedY; //選擇框在棋盤格局上的x,y位置

  public GameWorld() {

//    isServer = MyCanvas.isServer() ;
    try {
      init();
    }
    catch (Exception e) {}

  }

  public void start() {
    control = new Control(this);
    control.start();
  }

  public void init() {
    player1win = 0;
    player2win = 0;
    chessMapGrid = 15;
    chessMapLength = 225;
    chessMapX = 7;
    chessMapY = 32;
    chessGridLength = 15;
    chessLength = chessGridLength - 1; //即框長為一
    selectedX = selectedY = chessMapGrid / 2;
    chess = new Chess[chessMapGrid + 1][chessMapGrid + 1];
    isServer = MyCanvas.name.equals("Server");
    myMove = !isServer; // client always goes first
  }

  public void keyPressed(int keycode) {
    if (myMove) {
      switch (keycode) {
        case Canvas.UP:
          selectedY = (--selectedY + chessMapGrid + 1) % (chessMapGrid + 1);
          break;
        case Canvas.DOWN:
          selectedY = (++selectedY) % (chessMapGrid + 1);
          break;
        case Canvas.LEFT:
          selectedX = (--selectedX + chessMapGrid + 1) % (chessMapGrid + 1);
          break;
        case Canvas.RIGHT:
          selectedX = (++selectedX) % (chessMapGrid + 1);
          break;
        case Canvas.FIRE:
          if (chess[selectedY][selectedX] == null) {
            chess[selectedY][selectedX] = new Chess(this.isServer);
            myMove = false;
            control.sendMessage(selectedX, selectedY);
          }
          break;
      }
    } //end if
  }

  public void receiveMessage() {
    System.out.println("gamewold is receivemessage");
    System.out.println(control.getSelectedX());
    if (!myMove) {
      selectedX = control.getSelectedX();
      selectedY = control.getSelectedY();
      chess[selectedY][selectedX] = new Chess(!isServer);
      myMove = true;
    }

  }

  public void draw(Graphics g) {
    paintMap(g);
    paintSelected(g);
    paintChesses(g);
  }

  //棋盤
  protected void paintMap(Graphics g) {
    for (int i = 0; i < chessMapGrid; i++) {
      for (int j = 0; j < chessMapGrid; j++) {
        g.setColor(128, 128, 128);
        g.drawRect(chessMapX + j * chessGridLength,
                   chessMapY + i * chessGridLength,
                   chessGridLength, chessGridLength);
      }
    }
  }

//選擇框
  protected void paintSelected(Graphics g) {
    g.setColor(0, 0, 255);
    g.drawRect(chessMapX + selectedX * chessGridLength - chessGridLength / 2,
               chessMapY + selectedY * chessGridLength - chessGridLength / 2,
               chessGridLength, chessGridLength);
  }

//棋子
  protected void paintChesses(Graphics g) {
    for (int i = 0; i <= chessMapGrid; i++) {
      for (int j = 0; j <= chessMapGrid; j++) {
        if (chess[i][j] != null) {
          if (chess[i][j].isServer) {
            g.setColor(255, 255, 255);
          }
          else {
            g.setColor(255, 0, 0);
          }
          g.fillArc(chessMapX + j * chessGridLength - chessLength / 2,
                    chessMapY + i * chessGridLength - chessLength / 2,
                    chessLength, chessLength, 0, 360);
        }
      }
    }
  }


  /*
          if (checkWin()) {
              String winner;
              if (isServer) {
                winner = "白方勝利";
                player1win++;
              }
              else {
                winner = "紅方勝利";
                player2win++;
              }
       Alert winAlert = new Alert("",winner + "\n白方  " + player1win + " : " +
                                         player2win + "  紅方",
                                         null, AlertType.INFO);
              winAlert.setTimeout(Alert.FOREVER);
              mycanvas.display.setCurrent(winAlert, mycanvas);
            }
   */

  public boolean checkWin() {
    int num = 1;
    if (num < 5) {
      num = 1;
      for (int i = 1; i <= 4; i++) {
        if (isPlayer1(selectedX - i, selectedY)) {
          num++;
        }
        else if (num >= 5) {
          return true;
        }
        else {
          break;
        }
      }
      for (int i = 1; i <= 4; i++) {
        if (isPlayer1(selectedX + i, selectedY)) {
          num++;
        }
        else if (num >= 5) {
          return true;
        }
        else {
          break;
        }
      }
    }
    if (num < 5) {
      num = 1;
      for (int i = 1; i <= 4; i++) {
        if (isPlayer1(selectedX, selectedY - i)) {
          num++;
        }
        else if (num >= 5) {
          return true;
        }
        else {
          break;
        }
      }
      for (int i = 1; i <= 4; i++) {
        if (isPlayer1(selectedX, selectedY + i)) {
          num++;
        }
        else if (num >= 5) {
          return true;
        }
        else {
          break;
        }
      }
    }
    if (num < 5) {
      num = 1;
      for (int i = 1; i <= 4; i++) {
        if (isPlayer1(selectedX - i, selectedY - i)) {
          num++;
        }
        else if (num >= 5) {
          return true;
        }
        else {
          break;
        }
      }
      for (int i = 1; i <= 4; i++) {
        if (isPlayer1(selectedX + i, selectedY + i)) {
          num++;
        }
        else if (num >= 5) {
          return true;
        }
        else {
          break;
        }
      }
    }
    if (num < 5) {
      num = 1;
      for (int i = 1; i <= 4; i++) {
        if (isPlayer1(selectedX + i, selectedY - i)) {
          num++;
        }
        else if (num >= 5) {
          return true;
        }
        else {
          break;
        }
      }
      for (int i = 1; i <= 4; i++) {
        if (isPlayer1(selectedX - i, selectedY + i)) {
          num++;
        }
        else if (num >= 5) {
          return true;
        }
        else {
          break;
        }
      }
    }
    if (num >= 5) {
      return true;
    }
    else {
      return false;
    }
  }

  private boolean isPlayer1(int y, int x) {
    if (x <= 15 && x >= 0 && y <= 15 && y >= 0 && chess[x][y] != null) {
      if (chess[x][y].isServer == isServer) {
        return true;
      }
      else {
        return false;
      }
    }
    else {
      return false;
    }
  }

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
777久久久精品| 国产成人在线观看免费网站| 91极品美女在线| 亚洲另类一区二区| 欧美性一级生活| 丝袜诱惑亚洲看片| 精品日韩欧美在线| 国产99久久精品| 国产精品看片你懂得| 色婷婷香蕉在线一区二区| 亚洲精品视频在线| 欧美精品粉嫩高潮一区二区| 精品一区二区三区免费观看 | 精品一区二区三区视频在线观看 | 久久精品人人做| 91色乱码一区二区三区| 亚洲国产一区二区三区| 日韩免费电影一区| 成人国产一区二区三区精品| 亚洲精品欧美激情| 日韩欧美精品在线视频| 国产成人日日夜夜| 亚洲午夜精品久久久久久久久| 欧美一区午夜精品| www.视频一区| 麻豆久久一区二区| 中文字幕一区二区视频| 91精品国产综合久久久久| 成人精品免费网站| 丝袜亚洲另类欧美综合| 国产精品视频一二三区| 欧美高清你懂得| 粉嫩绯色av一区二区在线观看| 亚洲丰满少妇videoshd| 国产视频一区二区在线| 中文字幕巨乱亚洲| 色婷婷久久一区二区三区麻豆| 麻豆91免费看| 亚洲综合图片区| 亚洲国产精品99久久久久久久久| 欧美三级电影在线观看| 成人精品gif动图一区| 青草国产精品久久久久久| 亚洲视频免费观看| 久久久久久久久久美女| 欧美精品777| 日本黄色一区二区| 国产成人免费视频| 麻豆成人av在线| 亚洲第一会所有码转帖| 综合精品久久久| 亚洲精品一区二区三区香蕉| 欧美精品日日鲁夜夜添| 色婷婷狠狠综合| 播五月开心婷婷综合| 国产精品中文字幕一区二区三区| 性做久久久久久免费观看欧美| 亚洲三级在线免费观看| 国产欧美日韩在线| 欧美精品一区二区三区很污很色的| 在线不卡中文字幕| 日本高清视频一区二区| 成人国产亚洲欧美成人综合网| 激情久久五月天| 久久国产欧美日韩精品| 五月婷婷综合网| 亚洲成人免费在线观看| 亚洲综合久久久久| 亚洲在线一区二区三区| 一区二区三区不卡视频| 一区二区在线观看免费视频播放| 国产精品久久久久久福利一牛影视| 久久嫩草精品久久久精品一| 欧美精品一区二区三区在线播放 | 色偷偷久久人人79超碰人人澡| 国产成人啪免费观看软件| 欧美aa在线视频| 九九精品一区二区| 国产在线视频一区二区三区| 寂寞少妇一区二区三区| 狠狠色狠狠色综合日日91app| 精品一区二区三区视频| 国产剧情av麻豆香蕉精品| 国产91对白在线观看九色| 国产东北露脸精品视频| 成人免费视频视频| 色综合视频一区二区三区高清| 欧美综合亚洲图片综合区| 欧美日韩性生活| 欧美一二区视频| 久久精品夜色噜噜亚洲a∨ | 综合自拍亚洲综合图不卡区| 亚洲欧美一区二区三区国产精品 | 久久精品视频一区二区| 中文字幕欧美日韩一区| 综合色中文字幕| 亚洲国产视频a| 欧美a级一区二区| 国产精品一级二级三级| 色综合久久中文综合久久牛| 欧美日韩精品欧美日韩精品一综合| 在线播放日韩导航| 久久精品视频在线看| 亚洲日本va午夜在线电影| 五月激情综合网| 国产成人免费视| 欧美在线观看视频一区二区| 日韩区在线观看| 国产精品久久午夜| 日韩有码一区二区三区| 国产成a人亚洲| 欧美日韩国产一级| 欧美精品一区二区三| 亚洲精品国久久99热| 精品一区二区三区的国产在线播放 | 成人性生交大合| 欧美日韩国产一二三| 久久久久88色偷偷免费| 亚洲一二三专区| 国产大陆亚洲精品国产| 欧美天堂亚洲电影院在线播放| 久久久久久日产精品| 一区二区三区免费在线观看| 激情六月婷婷久久| 欧美日韩一区二区欧美激情| 久久精品一区二区三区不卡牛牛| 亚洲国产精品久久久久婷婷884 | 欧美激情一区二区在线| 亚洲综合色自拍一区| 国产精品影视在线| 欧美日韩激情一区二区三区| 国产精品美女久久久久久久久| 日韩国产高清在线| 91麻豆精品秘密| 欧美激情自拍偷拍| 蜜臀久久久久久久| 欧美系列一区二区| 亚洲三级在线看| 国产成人在线视频网站| 日韩片之四级片| 亚洲宅男天堂在线观看无病毒| 成人小视频在线| 精品精品国产高清a毛片牛牛 | 欧美情侣在线播放| 亚洲美女少妇撒尿| 国产精品一线二线三线| 日韩一区二区精品| 亚洲福利电影网| 欧美性猛交xxxxxx富婆| 亚洲男同性视频| 成人18视频日本| 日本一区二区免费在线| 精彩视频一区二区三区| 日韩欧美国产午夜精品| 日韩在线观看一区二区| 欧美久久久久免费| 亚洲va天堂va国产va久| 在线观看一区日韩| 亚洲一区中文日韩| 色综合激情久久| 亚洲另类在线一区| 一本色道久久综合亚洲aⅴ蜜桃 | 成人综合在线网站| 国产日韩欧美激情| 成人午夜免费av| 国产精品热久久久久夜色精品三区| 国产成人精品免费在线| 久久免费电影网| 国产福利91精品一区二区三区| 国产欧美日韩三级| 成人综合日日夜夜| 国产精品丝袜黑色高跟| 99久久综合99久久综合网站| 中文字幕一区三区| 在线看国产日韩| 五月综合激情网| 精品日韩一区二区| 国产精品一区二区视频| 国产欧美日本一区二区三区| 不卡av免费在线观看| 亚洲人吸女人奶水| 欧美三日本三级三级在线播放| 亚洲成在人线免费| 日韩视频一区二区在线观看| 精品写真视频在线观看| 国产午夜亚洲精品理论片色戒| 成人精品视频网站| 亚洲国产毛片aaaaa无费看| 欧美军同video69gay| 久久97超碰国产精品超碰| 国产精品人人做人人爽人人添| 91久久线看在观草草青青 | 中文字幕中文字幕一区二区 | 亚洲超碰精品一区二区| 日韩欧美你懂的| 春色校园综合激情亚洲| 亚洲一二三四久久| 欧美成人三级在线| 99v久久综合狠狠综合久久| 天天操天天色综合|