象棋
目标:
- 看完整个视频,吃透整个思路,自己手敲一遍。
- 举一反三:使用任意编程语言如Python、C/C++、Java等,完成相似的游戏如国际象棋、军棋、斗兽棋、日本将棋等。
整体思路:(简单说就3步)
- 画出棋盘和棋子
- 获取被点击棋子的可落子位置,走棋(吃棋子、将军、不可以主动送死)
- 判断胜负(无路可走,防守方所有棋子所有可落子的走法都无法挽回败局)
走棋需求:
- 点击选中:给你一个坐标(x,y),快速获取到当前坐标棋子的信息
- 走棋:走到空位;走到友方单位(不允许);走到敌方单位(吃棋子)
数据结构:(根据走棋需求进行设计)
- 一维数组
- 二维数组(存储一个表格去找)
- 对象(key存xy坐标,value存棋子信息)