Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
管理不同类别的MonoGame XNA,_Xna_Monogame - Fatal编程技术网

管理不同类别的MonoGame XNA,

管理不同类别的MonoGame XNA,,xna,monogame,Xna,Monogame,我正在和几个州做一个单一游戏。在同一个班级里管理这一切是非常复杂的。有没有办法用不同的对象和属性在不同的类之间划分这些状态? 我想管理相同的模块:绘制、更新、加载内容,但关注游戏的其他状态。如果不同的状态意味着不同的游戏屏幕(菜单、主游戏屏幕、地图),则可以创建一个游戏屏幕类,其中包含当前状态所需的功能并覆盖绘制,更新etc方法。您可以为每个地图创建不同的游戏屏幕,或者只创建一个地图屏幕,然后从外部加载地图等 然后创建一个类来管理当前游戏屏幕,该类具有更改活动游戏屏幕(通过activator创建

我正在和几个州做一个单一游戏。在同一个班级里管理这一切是非常复杂的。有没有办法用不同的对象和属性在不同的类之间划分这些状态?
我想管理相同的模块:绘制、更新、加载内容,但关注游戏的其他状态。

如果不同的状态意味着不同的游戏屏幕(菜单、主游戏屏幕、地图),则可以创建一个游戏屏幕类,其中包含当前状态所需的功能并覆盖绘制,更新etc方法。您可以为每个地图创建不同的游戏屏幕,或者只创建一个地图屏幕,然后从外部加载地图等

然后创建一个类来管理当前游戏屏幕,该类具有更改活动游戏屏幕(通过activator创建新实例并将其设置为当前屏幕对象)和通过覆盖调用当前屏幕更新和绘制方法的方法。然后,主游戏循环将调用屏幕管理器,而不必担心知道当前状态


我发现这个特别的教程系列非常有用,因为它解释了如何创建游戏屏幕、屏幕管理器等:(C#Monogame RPG通过CodingMadeEasy简化了教程)。

如果没有代码,很难理解这一点,你觉得编译了什么?你能展示一部分代码来正确解释这个问题吗?如果代码主要集中在单个对象上,则类最有用。所以我想知道你的代码中是否可以使用它。