毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

JAVA课程设计黑白棋源代码 第6页

更新时间:2007-9-28:  来源:毕业论文

        else
        {
         System.out.println("I am white");
         rules(i, j, "○");
         if (ChessCheck == true)
         {
          Chess[i][j].setText("○"); IamFirst = true;
          Chess[0][0].setBackground(Color.red);
          Chess[0][Max-2].setBackground(Color.white);
          WhoWin();
         }
        }
       }
      }
     }

    }
   }
  }
  /*下棋规则,以当前下棋的位置为中心,向其周围的8个方向散射搜寻。
  1.如果其搜寻方向上的第一个棋子不是对方棋子,则停止该方向上的搜寻,
   设置该方向为不能 ChessCheck=false
  2.如果搜寻方向上的第一个棋子为对方棋子,则继续搜寻直到找到己方棋
   子则将中间部分的对方棋子变成己方棋子并设置该方向能 ChessCheck=true,
    否则,设置标志为该方向不能ChessCheck=false
  3.如果所有方向返回的都是不能ChessCheck=false
   */
  public void rules(int i, int j, String chess)
  {
   boolean ChessCheck1 = false;
   boolean ChessCheck2 = false;
   boolean ChessCheck3 = false;
   boolean ChessCheck4 = false;
   boolean ChessCheck5 = false;
   boolean ChessCheck6 = false;
   boolean ChessCheck7 = false;
   boolean ChessCheck8 = false;
   //判断是谁下的棋
   String mychess;
   String yourchess;
   if (chess == "○") { mychess = "○"; yourchess = "●"; } else { mychess = "●"; yourchess = "○"; }
   System.out.println("你是" + mychess + "棋,对方是" + yourchess + "棋");
   //检查右边
   System.out.println("检查右边");
   if (Chess[i][j + 1].getText() != yourchess) {
    //System.out.println("右边第一个是我的棋子");
    ChessCheck1 = false; }
   else
   {
    //向右移动找出是否有自己的棋子,如果有则吃掉对方的子,否则返回false
    //System.out.println("向右移动找出是否有自己的棋子,如果有则吃掉对方的子,否则返回false");
    for (int m = 1; m < Max - j - 1; m++)
    {
     if (Chess[i][j + 1 + m].getText() == mychess)//如果是己方棋子
     {
      //System.out.println("如果是己方棋子");
      int n = 1;
      while (n <= m)
      {
       //System.out.println("吃掉己方2颗棋子中间的对方棋子");
       Chess[i][j + n].setText(mychess);//吃掉己方2颗棋子中间的对方棋子
       n++;
      }
      ChessCheck1 = true;
      break;
     }
     else { ChessCheck1 = false; }//如果不是己方棋子,继续寻找
    }
   }
   //检查左边
   System.out.println("检查左边");
   if (Chess[i][j - 1].getText() != yourchess) { ChessCheck2 = false; }
   else
   {
    //向左移动找出是否有自己的棋子,如果有则吃掉对方的子,否则返回false
    //System.out.println("向左移动找出是否有自己的棋子,如果有则吃掉对方的子,否则返回false");
    //System.out.println("左移的时候列数从大到小");
    for (int m = j - 2; m > 0; m--)//左移的时候列数从大到小
    {
     //System.out.println("如果是己方棋子");
     if (Chess[i][m].getText() == mychess)//如果是己方棋子
     {
      int n = 0;
      while (n <= j - m - 1)
      {
       //System.out.println("吃掉己方2颗棋子中间的对方棋子");
       Chess[i][j - n - 1].setText(mychess);//吃掉己方2颗棋子中间的对方棋子
       n++;
      }
      ChessCheck2 = true;
      break;
     }
     else { ChessCheck2 = false; }//如果不是己方棋子,继续寻找
    }
   }
   //检查上方
   System.out.println("检查上方");
   if (Chess[i - 1][j].getText() != yourchess) { ChessCheck3 = false; }
   else
   {
    //向上移动找出是否有自己的棋子,如果有则吃掉对方的子,否则返回false
    //System.out.println("向上移动找出是否有自己的棋子,如果有则吃掉对方的子,否则返回false");
    //System.out.println("上移的时候行数从大到小");
    for (int m = i - 2; m > 0; m--)//上移的时候行数从大到小
    {
     //System.out.println("如果是己方棋子" + m + Chess[m - 1][j].getText());
     if (Chess[m][j].getText() == mychess)//如果是己方棋子
     {
      int n = 0;
      while (n <= i - m - 1)
      {

上一页  [1] [2] [3] [4] [5] [6] [7] [8] 下一页

JAVA课程设计黑白棋源代码 第6页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。