Skip to content

TenofHearts/my_shapez

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SHAPEZ DEMO

作者:叶晋

项目说明 (此项目是面向评分细则编程的典范)

阶段一:

  • 可视化地图 + 坐标系 (5')
  • 两种开采物: 可切割(圆形), 不可切割(方形) (5')
  • 6种设备: 采矿机, 切割机, 传送带, 垃圾桶 (20') + 转向器, 合并器
  • 实时显示当前交复数量 (5')

阶段二:

  • 任务设定: 我采取随机生成任务的方式, 以增加游戏性 (4')
  • 设备升级: 我取消了三选一的限制, 并添加了价格的要求, 保留了设备升级只保留一关的设定 (6')
  • 全局强化: 我实现了交付中心的大小强化; 开采物所在地块的数量强化; 物交付成功后的金币数量强化 (9')
  • 存档的导入导出: 我实现了存档选择系统. 存档时默认存入save.txt, 但是读取时支持选择存档, 游戏进度不变 (8')

阶段三:

  • 物品传送带动态效果 (2') (怎么才两分啊)
  • 物品在传送带上停滞的效果 (2') (啊?)
  • 开采物品被切割机切割后的变化 (2')
  • 设备朝向可视化的表现 (2')

阶段四:

  • 自定义新设备: 转向器, 合并器 (10') (啊?这个怎么这么多)
  • GUI (5') (我觉得相当丝滑)
  • BGM: You're Beautiful - Alexander Misko
  • 自由发挥: 我添加了删除已放置的机器的功能, 方法有按橡皮擦按钮和直接右键机器两种; 我添加了机器成本和交付中心惩罚机制, 已增加游戏性; 我增加了BGM音量调节功能; 我为放置机器做了独特的动画; 以及前文在设备升级和存档的部分我都有自己的发挥. (我觉得给个10分不过分吧)

代码风格

  • 我机器部分的设计主要运用了继承、组合以及聚合的结果来处理 (5')
  • 我将每种类都单独写为一个文件, 便于维护和处理 (2')
  • 我在重要的基类种注释了主要接口的作用, 我在global.cpp中注释了重要的全局函数的作用; 我的变量名全部有意义 (3')

游戏规则:

这破游戏有啥规则, 玩就完了

见游戏内的暂停界面

About

A final project for the Advanced Program Designing course of Nanjing University.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors