SLICK2D - 如何重新初始化游戏



如何在不使用reinit()的情况下在Slick2D中重新初始化游戏?

如果我的实体与另一个实体发生冲突(= 赢得的游戏),那么我想进入我的 MainMenuState 并为新游戏重新初始化游戏。

好吧,如果你的状态正在扩展BasicGameState,他们可以扩展进入离开方法。

您只需在其 enter 方法中初始化"InGame"状态,当您的实体与另一个实体发生冲突时,只需执行以下操作:

game.enterState(MainMenuState.ID, new FadeOutTransition(Color.black), new FadeInTransition(Color.black));

它将调用游戏内状态的离开方法。

简而言之,在 enter 方法中执行游戏的初始化,并在 leave 方法中清理内存(因为所有状态都是在启动应用时实例化的,所以不应在其构造函数中加载状态)。

最新更新