zoukankan      html  css  js  c++  java
  • 团队-象棋游戏-项目总结

    1.开发背景:因为我们能力有限,起初只想做个力所能及的小游戏

    2.需求分析:棋盘棋子的局面、鼠标响应控制棋子移动、棋子的走法规则、人机对弈的搜索算法、胜负判断。

    3.象棋规则

    棋盘:九条平行的竖线和十条平行的横线相交而组成,其中共有九十个交叉点,棋子就摆在这些交叉点上。

       中间部分(棋盘的第五,第六两横线之间末画竖线的空白地带)叫做河界 。

       两端的中间(两端第四条到第六条竖线之间的正方形部位),以斜交叉线构成中文“米”字形方格的地方,叫作 九宫。

    棋子分为:象棋共有三十二枚棋子。分红、黑两方,每方各十六枚棋子。

       红方(帅 *1、士 *2、象 *2、马 *2、车 *2、炮 *2、兵 *5)

       黑方(将 *1、士 *2、象 *2、马 *2、车 *2、炮 *2、卒 *5)

    帅(将):这两位棋子的最高统帅,只能在九宫内行走,不得走出九宫外。行走的步法为:左、右横走,上、下竖走都行,但每次只能行走一格。将和帅不准在同一直线上直接对面(中间无棋子),如一方已先占据位置,则另一方必须回避,否则就算输了。

    士:每行一步棋,只许沿着九宫中的斜线行走一步,行走方位可进、可退,其最终目的也是为了护卫各自的最高将领(帅、将)。

    象:此棋不能越过河界走入对方的领地,“田”字对角线行走,方位可进、可退,但是,当象行走的路线中,及田字中心有棋子时(无论己方或者是对方的棋子),则不能移动。

    马:俗称“马走日”,但行走可以分解为先横向或纵向走一格再移动到下一格的对角点,如果横向或纵向一格的点上有棋子则不能移动。

    车:每行一步棋可以在中间不隔棋子的情况下上、下、左、右直线行走,且行棋步数不限。

    炮:此棋的行棋规则和车类似要直线行走。吃棋规则必须跳过一个棋子(无论是己方的还是对方的)去吃掉对方的一个棋子。

    兵(卒):每次移动一格且不可以后退,通过河界可以左右横向移动。

     

     

  • 相关阅读:
    node 命令
    nodejs项目搭建
    linux 安装与配置
    GestureDetector
    activity切换效果
    hadoop
    phonegap 自定义插件
    自定义控件-属性自定义
    zxing demo
    select 语句的执行顺序
  • 原文地址:https://www.cnblogs.com/Ggao/p/7930310.html
Copyright © 2011-2022 走看看