SLICK2D - 如何重新初始化游戏

时间:2015-03-11 19:30:45

标签: java slick2d

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

如果我的实体与另一个实体发生碰撞(=游戏赢了),那么我想进入我的MainMenuState并重新初始化游戏以进行新游戏。

1 个答案:

答案 0 :(得分:0)

好吧,如果你的州延长BasicGameState,他们可以扩展输入离开方法。

你只需要对你的" InGame"进行初始化。状态在输入方法中,当您的实体与另一个实体发生碰撞时,只需执行以下操作:

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

它会调用InGame状态的 leave 方法。

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