From b90e6a47911902cee91cbda1ccb2f184cbcb1a21 Mon Sep 17 00:00:00 2001 From: Tyrannova Date: Thu, 17 Jan 2019 22:47:45 +0100 Subject: settings v2 --- src/main/kotlin/de/romjaki/pluggabledino/main.kt | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/main/kotlin/de/romjaki/pluggabledino/main.kt b/src/main/kotlin/de/romjaki/pluggabledino/main.kt index ca9acc0..0af8a64 100644 --- a/src/main/kotlin/de/romjaki/pluggabledino/main.kt +++ b/src/main/kotlin/de/romjaki/pluggabledino/main.kt @@ -29,8 +29,9 @@ const val LOST = 4 var lastscore = 0 var highscore = 0 var score = 0 -val settings = SettingsState() +var eventThreads: MutableList = mutableListOf() +lateinit var settings: SettingsState fun main(args: Array) { if (args.size > 1 && args[0] == "dev") { PluginLoader.loadDevPlugin(args[1]) @@ -42,8 +43,10 @@ fun main(args: Array) { app.setTargetFrameRate(FPS) app.setShowFPS(true) Events.broadcastEvent(PreInitEvent(app)) - Events.broadcastEvent(InitEvent(app, settings)) - Events.broadcastEvent(PostInitEvent(app)) + eventThreads.add(Thread { + Events.broadcastEvent(InitEvent(app, settings)) + Events.broadcastEvent(PostInitEvent(app)) + }) app.start() } @@ -52,8 +55,10 @@ class Application : StateBasedGame("Dino Game v$VERSION") { override fun initStatesList(container: GameContainer?) { addState(SplashScreen()) addState(MainMenu()) + settings = SettingsState() addState(settings) addState(GameState()) addState(LostState()) + eventThreads.forEach(Thread::start) } } -- cgit