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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? othello.java

?? 游戲開(kāi)發(fā)java很好的游戲
?? JAVA
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
//filename Othello.java;
//filename Othello.class;

import java.applet.*;
import java.awt.*;
import java.awt.image.*;
import java.awt.event.*;
import java.io.PrintStream;
import java.net.URL;

public class Othello extends Applet implements Runnable,ActionListener,MouseListener
{
  private MediaTracker imageTracker;
  private Image redImage;
  private Image blueImage;
  private Image offScrImage;
  private Graphics offScrGraphics;
  private Font f;
  private int fontHeight;
  private int fontAscent;
  private Button button;
  private int buttonHeight;
  private Choice choice;
  private Choice moveFirst;
  private boolean redMoveFirst;
  private boolean illegalMove;
  private boolean blueNotMoving;
  private boolean animating;
  private int redScore;
  private int blueScore;
  private Thread aThread;
  private static final int EMPTY = 0;
  private static final int RED = 2;
  private static final int BLUE = 3;
  private static final int BLUE_TEMP = 4;
  private static final int RED_TEMP = 5;
  private static final int VERYGOOD = 9999;
  private static int DIM = 10;
  private int boardSize = 400;
  private int[] grid = new int[400];

  private synchronized void newGame()
  {
    DIM = (new Integer((String) choice.getSelectedItem())).intValue();
    int whoMoveFirst=moveFirst.getSelectedIndex();
    if(whoMoveFirst==0)
   	  redMoveFirst = true;
    else
   		redMoveFirst = false;
       		
    int int1;
    int int2;
    for( int1 = 0; int1 < DIM; ++int1 )
    {
      for( int2 = 0; int2 < DIM; ++int2 )
        grid[int1 * DIM + int2] = EMPTY;
    }
    int2 = DIM / 2;
    grid[(int2 - 1) * DIM + (int2 - 1)] = RED;
    grid[(int2 - 1) * DIM + int2] = BLUE;
    grid[int2 * DIM + (int2 - 1)] = BLUE;
    grid[int2 * DIM + int2] = RED;
    offScrGraphics.setColor( Color.white );
    offScrGraphics.fillRect( 0, 0, boardSize, boardSize );
    redScore = blueScore = 0;
    illegalMove = blueNotMoving = animating = false;
    boardSize = -1;
    repaint();
    if( !redMoveFirst )
    {
      blueMove();
      checkScore();
      repaint();
    }
  }

  public synchronized void init()
  {
    aThread = null;
    imageTracker = new MediaTracker( this );
    offScrImage = createImage( 400, 400 );
    offScrGraphics = offScrImage.getGraphics();
    f = new Font( "TimesRoman", 0, 12 );
    offScrGraphics.setFont( f );
    fontHeight = getFontMetrics( f ).getHeight();
    fontAscent = getFontMetrics( f ).getAscent();
    loadImages();
    if( button == null )
    {
      button = new Button( "New Game" );
      button.addActionListener(this);
      setLayout( new FlowLayout( ) );
      add( button );
      choice = new Choice();
      choice.addItem( "6" );
      choice.addItem( "8" );
      choice.addItem( "10" );
      choice.addItem( "12" );
      choice.addItem( "14" );
      add( choice );
      choice.select( "10" );
    }
    if( moveFirst == null )
    {
      moveFirst = new Choice();
      moveFirst.addItem( "You Move First" );
      moveFirst.addItem( "Computer Move First" );
      add( moveFirst );
      moveFirst.select( 0 );
      redMoveFirst = true;
    }
    addMouseListener(this);
    newGame();
  }

  public synchronized void loadImages()
  {
    int int3;
    try
    {
      redImage = getImage( getDocumentBase(), "p2.gif" );
      blueImage = getImage( getDocumentBase(), "p1.gif" );
      offScrGraphics.drawImage( redImage, 0, 0, this );
      offScrGraphics.drawImage( blueImage, 0, 0, this );
    }
    catch( Exception e1 )
    {
      System.out.println( e1 );
    }
    imageTracker.addImage( redImage, 0 );
    imageTracker.addImage( blueImage, 1 );
    for( int3 = 0; int3 < 2; ++int3 )
    {
      try
      {
        imageTracker.checkID( int3, true );
        imageTracker.waitForID( int3 );
        showStatus( "Loading image P" + int3 + ".gif" );
      }
      catch( Exception e2 )
      {
        System.out.println( e2 );
      }
    }
  }

  public void start()
  {
    aThread = new Thread( this );
    aThread.start();
    imageTracker.statusID( 0, true );
    imageTracker.statusID( 1, true );
  }
    
  public void run()
  {
    for( ;; )
    {
      try
      {
        Thread.sleep( 50L );
        continue;
      }
      catch( Exception unused1 )
      {
        continue;
      }
    }
  }

  /*public void stop()
  {
    if( aThread != null && aThread.isAlive() )
      aThread.stop();
  }*/

  public void destroy()
  {
  }
    
  public synchronized void blueMove()
  {
    int int1 = -1;
    int int2 = -1;
    int int3 = -1;
    int int4 = -1;
    int int5;

    for( int5 = 0; int5 < DIM; ++int5 )
    {
      int int6;
      for( int6 = 0; int6 < DIM; ++int6 )
      {
        if( grid[int5 * DIM + int6] == 0 )
        {
          int2 = howGood( int5, int6, 3, 2 );
          if( int1 < int2 && int2 > 0 )
          {
            int1 = int2;
            int3 = int5;
            int4 = int6;
          }
        }
      }
    }
    blueNotMoving = false;
    if( int1 > 0 )
    {
      grid[int3 * DIM + int4] = BLUE;
      turnPlys( int3, int4, 3, 2, 4 );
    }
    else
      blueNotMoving = true;
  }
    
  public synchronized int howGood(int int1, int int2, int int3, int int4)
  {
    int int6 = 0;
    int int5 = 0;
    int int7;
    int int8;
    int int9;
    int int10;
    for( int8 = int2 + 1; int8 < DIM; ++int8 )
    {
      if( grid[int1 * DIM + int8] == int4 )
        ++int5;
      else
      {
        if( grid[int1 * DIM + int8] == int3 )
          break;
        if( grid[int1 * DIM + int8] == 0 )
        {
          int5 = 0;
          break;
        }
      }
    }
    if( int8 >= DIM )
      int5 = 0;
    int6 += int5;
    int5 = 0;
    for( int8 = int2 - 1; int8 >= 0; --int8 )
    {
      if( grid[int1 * DIM + int8] == int4 )
        ++int5;
      else
      {
        if( grid[int1 * DIM + int8] == int3 )
    	    break;
        if( grid[int1 * DIM + int8] == 0 )
        {
          int5 = 0;
          break;
        }
      }
    }
    if( int8 <= -1 )
      int5 = 0;
    int6 += int5;
    int5 = 0;
    for( int7 = int1 + 1; int7 < DIM; ++int7 )
    {
      if( grid[int7 * DIM + int2] == int4 )
        ++int5;
      else
      {
        if( grid[int7 * DIM + int2] == int3 )
          break;
        if( grid[int7 * DIM + int2] == 0 )
        {
          int5 = 0;
          break;
        }
      }
    }
    if( int7 >= DIM )
      int5 = 0;
    int6 += int5;
    int5 = 0;
    int7 = int1 - 1;
    while( int7 >= 0 )
    {
      if( grid[int7 * DIM + int2] == int4 )
        ++int5;
      if( grid[int7 * DIM + int2] == int3 )
        break;
      if( grid[int7 * DIM + int2] == 0 )
      {
        int5 = 0;
        break;
      }
      else
        --int7;
    }
    if( int7 <= -1 )
      int5 = 0;
    int6 += int5;
    int5 = 0;
    int9 = int2 + 1;
    int10 = int1 - 1;
    while( int9 >= 0 && int10 >= 0 )
    {
      if( grid[int10 * DIM + int9] == int4 )
        ++int5;
      if( grid[int10 * DIM + int9] == int3 )
        break;
      if( grid[int10 * DIM + int9] == 0 )
      {
        int5 = 0;
        break;
      }
      else
      {
        ++int9;
        --int10;
      }
    }
    if( int9 >= DIM || int10 <= -1 )
      int5 = 0;
    int6 += int5;
    int5 = 0;
    int9 = int2 + 1;
    for( int10 = int1 + 1; int9 < DIM && int10 < DIM; ++int10 )
    {
      if( grid[int10 * DIM + int9] == int4 )
        ++int5;
      else
      {
        if( grid[int10 * DIM + int9] == int3 )
          break;
        if( grid[int10 * DIM + int9] == 0 )
        {
          int5 = 0;
          break;
        }
      }
      ++int9;
    }
    if( int9 >= DIM || int10 >= DIM )
      int5 = 0;
    int6 += int5;
    int5 = 0;
    int9 = int2 - 1;
    for( int10 = int1 - 1; int9 >= 0 && int10 >= 0; --int10 )
    {
      if( grid[int10 * DIM + int9] == int4 )
        ++int5;
      else
      {
        if( grid[int10 * DIM + int9] == int3 )
          break;
        if( grid[int10 * DIM + int9] == 0 )
        {
          int5 = 0;
          break;
        }
      }
      --int9;
    }
    if( int9 <= -1 || int10 <= -1 )
      int5 = 0;
    int6 += int5;
    int5 = 0;
    int9 = int2 - 1;
    for( int10 = int1 + 1; int9 < DIM && int10 < DIM; ++int10 )
    {
      if( grid[int10 * DIM + int9] == int4 )
        ++int5;
      else
      {
        if( grid[int10 * DIM + int9] == int3 )
          break;
        if( grid[int10 * DIM + int9] == 0 )
        {
          int5 = 0;
          break;
        }
      }
      --int9;
    }
    if( int9 <= -1 || int10 >= DIM )
      int5 = 0;
    int6 += int5;
    return int6;
  }

  public synchronized void turnPlys(int int1, int int2, int int3, int int4, int int5)
  {
    int int6 = 0;
    int int8 = int2 + 1;
    int int7;
    int int9;
    int int10;
    int int11;
    int int12;
    int int13;
    int int14;
    int int15;
    int int16;
    int int17;
    int int18;
    int int19;

    while( int8 < DIM )
    {
      int7 = int1 * DIM + int8;
      if( grid[int7] != int4 )
      {
        if( grid[int7] == int3 )
          int6 = 1;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
粗大黑人巨茎大战欧美成人| 精久久久久久久久久久| 婷婷开心久久网| 极品瑜伽女神91| 91福利国产成人精品照片| 久久视频一区二区| 亚洲综合网站在线观看| 成人免费看黄yyy456| 日韩欧美国产电影| 亚洲午夜在线视频| 99免费精品在线观看| 久久久国产精品麻豆| 免费看日韩精品| 欧美三级欧美一级| 亚洲黄色录像片| 不卡视频免费播放| www激情久久| 久久精品久久综合| 欧美一区二视频| 亚洲成人中文在线| 日韩综合小视频| 亚洲少妇中出一区| 成人中文字幕在线| 久久精品免费在线观看| 人人精品人人爱| 欧美久久久久久久久久| 国产精品国产三级国产| 丰满放荡岳乱妇91ww| 国产亚洲精品免费| 韩国毛片一区二区三区| 精品欧美乱码久久久久久| 免费成人在线观看视频| 日韩情涩欧美日韩视频| 亚洲成人av免费| 欧美群妇大交群的观看方式| 亚洲国产日韩av| 欧美日韩一区二区电影| 午夜精品免费在线| 欧美日韩高清在线| 偷拍与自拍一区| 日韩欧美一二三区| 国产在线一区观看| 久久久99免费| 97se亚洲国产综合自在线观| 亚洲欧美日韩国产成人精品影院| 91亚洲精品一区二区乱码| 亚洲乱码国产乱码精品精的特点 | 日韩欧美一区中文| 亚洲成人av中文| 欧美夫妻性生活| 国内精品久久久久影院薰衣草 | 亚洲欧美日韩成人高清在线一区| 91啪九色porn原创视频在线观看| 亚洲免费电影在线| 欧美日韩一区二区在线观看| 日本不卡不码高清免费观看| 精品国产一区二区亚洲人成毛片| 国产一区二区久久| **欧美大码日韩| 亚洲精品国产一区二区三区四区在线| 欧美中文字幕一区二区三区亚洲 | 国产精品国产自产拍高清av王其 | 一区av在线播放| 91麻豆精品国产91久久久更新时间| 美女视频黄免费的久久| 国产日韩欧美精品电影三级在线 | 欧美变态口味重另类| 成人自拍视频在线观看| 婷婷久久综合九色综合伊人色| 欧美精品一区男女天堂| 色一区在线观看| 日本不卡视频在线观看| 亚洲欧美日韩电影| 久久精品一区四区| 欧美在线短视频| 国产一区二区调教| 亚洲第一福利视频在线| 国产亚洲短视频| 欧美日韩免费观看一区二区三区| 韩国欧美国产一区| 亚洲美女电影在线| 337p粉嫩大胆噜噜噜噜噜91av| 91猫先生在线| 国产精品一区二区免费不卡| 亚洲va国产天堂va久久en| 国产精品美女久久福利网站| 欧美一区二区不卡视频| 色先锋资源久久综合| 国产成人免费网站| 丝袜诱惑制服诱惑色一区在线观看 | 成人av动漫网站| 蜜桃91丨九色丨蝌蚪91桃色| 亚洲精选一二三| 国产精品福利影院| 久久视频一区二区| 久久影院午夜片一区| 欧美视频精品在线| 色综合久久综合网欧美综合网 | 国产精品香蕉一区二区三区| 亚洲成人7777| 亚洲美女一区二区三区| 国产精品乱人伦一区二区| 国产亚洲一区二区三区四区| 精品福利视频一区二区三区| 欧美日韩国产综合草草| 欧美三级日本三级少妇99| 欧美在线观看18| 色哟哟日韩精品| 色综合天天视频在线观看| av在线不卡免费看| 成人手机在线视频| 不卡的av电影| 国产福利不卡视频| 大美女一区二区三区| 国产999精品久久久久久| 国产一区二区三区四| 国产精品白丝av| 懂色av一区二区三区免费看| 国产成人综合在线| 成人看片黄a免费看在线| 成人免费精品视频| aaa国产一区| 欧美调教femdomvk| 91精品在线一区二区| 欧美美女一区二区在线观看| 在线一区二区观看| 7777精品伊人久久久大香线蕉经典版下载 | 亚洲一区二区高清| 亚洲最色的网站| 亚洲一区二区精品久久av| 日韩专区一卡二卡| 韩国成人在线视频| 成人va在线观看| 在线观看三级视频欧美| 欧美群妇大交群中文字幕| 日韩午夜小视频| 国产欧美日韩三区| 亚洲欧美另类综合偷拍| 亚洲高清在线视频| 日韩av午夜在线观看| 国产激情一区二区三区桃花岛亚洲| 9l国产精品久久久久麻豆| 欧洲精品视频在线观看| 欧美xxxxx裸体时装秀| 亚洲午夜免费视频| 666欧美在线视频| 欧美成人性福生活免费看| 中文字幕国产精品一区二区| 亚洲综合色网站| 精品一区二区三区在线观看国产| 国产白丝精品91爽爽久久| 色94色欧美sute亚洲线路一ni | 国产又黄又大久久| 99免费精品视频| 日韩一区二区精品葵司在线| 国产精品午夜在线| 舔着乳尖日韩一区| 国产精品亚洲午夜一区二区三区 | 成人app网站| 在线不卡中文字幕播放| 欧美激情资源网| 亚洲成人资源网| 99re这里只有精品首页| 日韩欧美不卡在线观看视频| 亚洲激情图片小说视频| 国产一区二区三区| 91精品国产综合久久久久久久久久| 国产精品拍天天在线| 亚洲精品国产无套在线观| 激情深爱一区二区| 欧美制服丝袜第一页| 国产精品福利电影一区二区三区四区| 日本一不卡视频| 色拍拍在线精品视频8848| 久久精品亚洲精品国产欧美| 午夜久久久影院| 在线观看亚洲成人| 日韩一区有码在线| 国产大陆精品国产| 日韩精品一区二区三区三区免费| 亚洲综合色视频| 色婷婷精品久久二区二区蜜臀av| 欧美国产精品一区二区三区| 精品一区二区三区不卡| 在线不卡欧美精品一区二区三区| 亚洲人成亚洲人成在线观看图片| 国产成人精品综合在线观看| 欧美r级在线观看| 琪琪久久久久日韩精品| 欧美在线视频不卡| 亚洲影视在线观看| 色视频一区二区| 亚洲一区二区三区不卡国产欧美| 97se亚洲国产综合自在线观| 国产日韩欧美精品一区| 久久精品一级爱片| 国产在线视频不卡二| 91精品国产福利| 免费在线观看不卡| 欧美日韩一级二级三级|