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/