2. 课程设计内容说明
2.1. 需求分析
实现一个可视化的迷宫小游戏,允许用户键盘操控,并且允许用户动态添加障碍物,妖
怪等游戏元素。能够自动地路径规划,完成自动导航,能够自动消灭所有的妖怪,并解救唐
僧。使用贴图元素使得界面尽量好看。
2.2. 概要设计
程序计划分为如下几大模块
地图生成模块
使用不同算法实现地图的程序生成
路径规划模块
使用不同算法实现动态的实时地路径规划
用户交互模块
实现可视化迷宫与可视化路径规划与导航,提供一定的用户交互性和可玩性。
2.3. 详细设计
2.3.1. 菜单(Menu)
本程序的菜单模块位于 util/Menu.hpp 中,这是一个基于确定型有穷自动机理论
的一个菜单的实现,可轻易地实现 n 级复杂菜单,以及动态菜单的创建与显示。
在游戏的开局菜单中,使用到了如下菜单定义,本菜单模块用法极其简单,只需
要构造时传入菜单名,添加菜单项,启动菜单循环三步即可在控制台实现菜单输
出。
多级菜单的状态迁移图如图 2.3.2-1 所示,