需要有关游戏设计/结构的建议

Jas*_*n D 1 c#

我在gamedev.stackexchange上发布了这个,但没有收到任何答案.希望有人能够帮助我.

我正在用c#开始我的第一场比赛.它是一个使用Windows窗体的基于文本的游戏.我正在集思广益,管理所有数据的最佳方法,并考虑在一个类(Game.cs)中包含与游戏实例相关的所有信息,并让该类负责跟踪任何重要的事情.(注意:我不是在谈论有一个类或类似的项目)我认为这将使保存和加载更容易(只需保存并加载该类的实例),以及使开始新游戏更容易(目前我正在初始化初始化类中的所有变量).

那么,这种方法是否会得到很好的实践(拥有游戏需要在一个班级中跟踪的所有内容)?如果没有,您是否还有其他方式可以建议处理和放置数据?

Tom*_*ala 5

你已经接近自己的MVC模式了.

所以你要做的就是将这个Game.cs称为你的"模型",它将包含与游戏状态相关的所有信息.然后你的表单的工作是在游戏状态被修改时显示游戏的当前状态.(也许事件驱动的表单更新?)它还将连接你的播放器通过UI进入Controller的任何动作.Controller的工作是提供采取行动的方法,并根据这些行动操纵游戏状态.例如,MoveRight()将更新Game.Position.X.

然后你可以采取整个游戏状态并保存/加载,这是你的意图.所以我没有看到你想要做什么的问题.