BasicGameState的构造函数和init方法的区别是什么?似乎在BasicGameState中注册了StateBasedGame时,它们都同时被调用,那么有什么区别呢?

对此的后续问题是,仅当状态变为活动状态时,才如何运行方法?最初,我认为init方法仅在新状态变为活动状态时才被调用,但事实并非如此。请注意,我只想在新状态的开头一次调用此方法,因此将其放在update方法中似乎是错误的地方。

最佳答案

对于第一个问题,我通常在构造函数中初始化所有java对象(其他游戏对象,集合,套接字等),并且init()方法加载图像,声音和其他资源。

第二个问题是,有一个名为enter()的方法,该方法在进入GameState时被调用。另外,还有一个离开状态时会调用的Leave()方法。

有关GameState的更多信息,请参见http://slick.ninjacave.com/javadoc/org/newdawn/slick/state/GameState.html

关于java - Slick2D:构造函数与初始化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21928403/

10-11 19:59