From a098729db8118406251a48b1fa6c0f165499803e Mon Sep 17 00:00:00 2001 From: minjaesong Date: Tue, 14 Nov 2023 13:28:00 +0900 Subject: [PATCH] savegame list generator interrupts when a save is being loaded --- src/net/torvald/terrarum/modulebasegame/ui/UILoadList.kt | 2 +- src/net/torvald/terrarum/modulebasegame/ui/UILoadManage.kt | 2 ++ src/net/torvald/terrarum/modulebasegame/ui/UILoadSavegame.kt | 4 ++++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UILoadList.kt b/src/net/torvald/terrarum/modulebasegame/ui/UILoadList.kt index 3ad36ab28..a116f6ae9 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UILoadList.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UILoadList.kt @@ -68,7 +68,7 @@ class UILoadList(val full: UILoadSavegame) : UICanvas() { private var spinnerFrame = 0 private val spinnerInterval = 1f / 60 - private lateinit var cellLoadThread: Thread + internal lateinit var cellLoadThread: Thread fun advanceMode() { App.printdbg(this, "Load playerUUID: ${UILoadGovernor.playerUUID}, worldUUID: ${UILoadGovernor.worldUUID}") diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UILoadManage.kt b/src/net/torvald/terrarum/modulebasegame/ui/UILoadManage.kt index 7738657c4..1e7d3d33d 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UILoadManage.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UILoadManage.kt @@ -84,6 +84,8 @@ class UILoadManage(val full: UILoadSavegame) : UICanvas() { full.loadManageSelectedGame = full.loadables.getLoadableSave()!! mode = MODE_LOAD + + full.interruptListGenerator() } } } diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UILoadSavegame.kt b/src/net/torvald/terrarum/modulebasegame/ui/UILoadSavegame.kt index 99a369b4d..adc37f9d1 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UILoadSavegame.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UILoadSavegame.kt @@ -191,5 +191,9 @@ class UILoadSavegame(val remoCon: UIRemoCon) : Advanceable() { batch.projectionMatrix = camera.combined } + fun interruptListGenerator() { + transitionalListing.cellLoadThread.interrupt() + } + }