# 基于Android的单人跳棋游戏
## 📜 背景
本项目是SAST SUMMER 2023 HOMEWORK for Android,旨在开发一个单人跳棋游戏。单人跳棋,又称孤独跳棋或独粒钻石棋,是一种玩家独自进行的棋类游戏。目标是通过跳跃和消除棋子,最终留下尽可能少的棋子在棋盘上。
## 🎮 游戏规则
- **棋子放置**:初始时,棋盘上除了中心位置的一个交叉点外,其他交叉点上都会放置一个棋子。
- **移动规则**:棋子可以沿着棋盘上的线水平或垂直方向移动,但不能斜向移动。被选择的棋子颜色会变为红色。
- **跳跃规则**:玩家可以用一个棋子跳过相邻的另一个棋子,到达该方向的下一个空位。被跳过的棋子将被移除。
- **胜负判定**:玩家的目标是通过一系列的跳跃,最终只剩下一个棋子在棋盘上。最佳的结果是剩下中心位置的那个棋子。若棋盘上没有可跳过的棋子且棋盘剩余棋子数大于1,则游戏失败。
## 📦 体验游戏
本项目打包形成`apk`安装包,见[Peg_solitaire.apk](./release/Peg_solitaire.apk),或本项目的Github Release。
本项目在华为手机`HarmonyOS 3.0`系统测试无误。若存在问题,可通过本项目的Issue进行反馈。
## 📝 作业完成情况
本作业实现了所有`TODO`部分,完成了基本要求。目标Android SDK版本为33,最小SDK版本为24. 本项目后续有待进一步完善、实现作业要求的扩展功能及其他更丰富的功能。
## 🧪 测试
- **单元测试**:包含在`ExampleUnitTest.java`中,用于验证基本算术运算的正确性。
- **仪器化测试**:在`ExampleInstrumentedTest.java`中,用于验证应用上下文的正确性。
## 📂 文件结构
- **`MainActivity.java`**:实现单人跳棋游戏的核心逻辑,包括棋盘初始化、玩家交互逻辑和游戏状态管理。
- **`PlaceStatusEnum.java`**:定义棋盘格子的状态枚举,如BLOCKED、SPACE、PEG和PEG_SELECTED。
- **`SpacePosition.java`**:表示棋盘上的位置,包含列索引、行索引和全局位置索引的计算。
## 🚀 未来展望
本项目已完成基本功能,未来计划进一步完善游戏体验,增加更多扩展功能,如不同难度级别的棋盘布局、游戏记录和回放功能等。
t0_54coder
- 粉丝: 3030
- 资源: 5641
最新资源
- 毕设和企业适用springboot企业资源规划类及环境监控平台源码+论文+视频.zip
- 毕设和企业适用springboot企业资源规划类及酒店管理平台源码+论文+视频.zip
- 毕设和企业适用springboot企业资源规划类及旅游规划平台源码+论文+视频.zip
- 毕设和企业适用springboot企业资源规划类及食品配送管理平台源码+论文+视频.zip
- 毕设和企业适用springboot汽车管理类及知识共享平台源码+论文+视频.zip
- 毕设和企业适用springboot汽车管理类及智能图像识别系统源码+论文+视频.zip
- 毕设和企业适用springboot汽车管理类及语音识别系统源码+论文+视频.zip
- 毕设和企业适用springboot企业资源规划类及信用评分平台源码+论文+视频.zip
- 毕设和企业适用springboot企业资源规划类及虚拟人类交互系统源码+论文+视频.zip
- 毕设和企业适用springboot企业资源规划类及信息管理系统源码+论文+视频.zip
- 毕设和企业适用springboot汽车管理类及自动化控制系统源码+论文+视频.zip
- 毕设和企业适用springboot区块链技术类及工程管理平台源码+论文+视频.zip
- 毕设和企业适用springboot区块链技术类及城市智能运营平台源码+论文+视频.zip
- 毕设和企业适用springboot区块链技术类及民生服务平台源码+论文+视频.zip
- 毕设和企业适用springboot区块链技术类及供应链优化系统源码+论文+视频.zip
- 毕设和企业适用springboot企业资源规划类及远程医疗平台源码+论文+视频.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈