From ce9b86d6371b4e25ecaeccee41d7804e351ef41f Mon Sep 17 00:00:00 2001 From: minjaesong Date: Sat, 7 Aug 2021 00:27:32 +0900 Subject: [PATCH] hit q to close the storage chest gui --- .../torvald/terrarum/modulebasegame/TerrarumIngame.kt | 9 +++------ .../modulebasegame/gameactors/FixtureStorageChest.kt | 5 ++++- .../{ItemCraftingTable.kt => ItemStorageChest.kt} | 0 .../torvald/terrarum/modulebasegame/ui/UIBasicInfo.kt | 8 ++++++-- .../terrarum/modulebasegame/ui/UIInventoryFull.kt | 8 +++++--- .../torvald/terrarum/modulebasegame/ui/UITierOneWatch.kt | 2 +- 6 files changed, 19 insertions(+), 13 deletions(-) rename src/net/torvald/terrarum/modulebasegame/gameitems/{ItemCraftingTable.kt => ItemStorageChest.kt} (100%) diff --git a/src/net/torvald/terrarum/modulebasegame/TerrarumIngame.kt b/src/net/torvald/terrarum/modulebasegame/TerrarumIngame.kt index e3583b254..df0b06b56 100644 --- a/src/net/torvald/terrarum/modulebasegame/TerrarumIngame.kt +++ b/src/net/torvald/terrarum/modulebasegame/TerrarumIngame.kt @@ -331,10 +331,7 @@ open class TerrarumIngame(batch: SpriteBatch) : IngameInstance(batch) { // >- queue up game UIs that should pause the world -< - uiInventoryPlayer = UIInventoryFull(actorNowPlaying!!, - toggleKeyLiteral = AppLoader.getConfigInt("config_keyinventory"), - toggleButtonLiteral = AppLoader.getConfigInt("config_gamepadstart") - ) + uiInventoryPlayer = UIInventoryFull() uiInventoryPlayer.setPosition(0, 0) // >- lesser UIs -< @@ -357,7 +354,7 @@ open class TerrarumIngame(batch: SpriteBatch) : IngameInstance(batch) { //uiVitalItem = UIVitalMetre(player, { null }, { null }, Color(0xffcc00), 0, customPositioning = true) //uiVitalItem.setAsAlwaysVisible() - uiWatchTierOne = UITierOneWatch(actorNowPlaying) + uiWatchTierOne = UITierOneWatch() uiWatchTierOne.setAsAlwaysVisible() uiWatchTierOne.setPosition( ((AppLoader.screenSize.screenW - AppLoader.screenSize.tvSafeActionWidth) - (uiQuickBar.posX + uiQuickBar.width) - uiWatchTierOne.width) / 2 + (uiQuickBar.posX + uiQuickBar.width), @@ -365,7 +362,7 @@ open class TerrarumIngame(batch: SpriteBatch) : IngameInstance(batch) { ) // basic watch-style notification bar (temperature, new mail) - uiBasicInfo = UIBasicInfo(actorNowPlaying) + uiBasicInfo = UIBasicInfo() uiBasicInfo.setAsAlwaysVisible() uiBasicInfo.setPosition((uiQuickBar.posX - uiBasicInfo.width - AppLoader.screenSize.tvSafeActionWidth) / 2 + AppLoader.screenSize.tvSafeActionWidth, uiWatchTierOne.posY) diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureStorageChest.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureStorageChest.kt index 9b879f499..f0aa3b3ef 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureStorageChest.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureStorageChest.kt @@ -55,7 +55,10 @@ internal class FixtureStorageChest(nameFun: () -> String) : FixtureBase( } -internal class UIStorageChest : UICanvas(), HasInventory { +internal class UIStorageChest : UICanvas( + toggleKeyLiteral = AppLoader.getConfigInt("config_keyinventory"), + toggleButtonLiteral = AppLoader.getConfigInt("config_gamepadstart"), +), HasInventory { lateinit var chestInventory: FixtureInventory lateinit var chestNameFun: () -> String diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemCraftingTable.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemStorageChest.kt similarity index 100% rename from src/net/torvald/terrarum/modulebasegame/gameitems/ItemCraftingTable.kt rename to src/net/torvald/terrarum/modulebasegame/gameitems/ItemStorageChest.kt diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UIBasicInfo.kt b/src/net/torvald/terrarum/modulebasegame/ui/UIBasicInfo.kt index 3a3bd3f5d..0a4e2ae26 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UIBasicInfo.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UIBasicInfo.kt @@ -15,7 +15,11 @@ import net.torvald.terrarumsansbitmap.gdx.TextureRegionPack /** * Created by minjaesong on 2017-06-10. */ -class UIBasicInfo(private val player: ActorHumanoid?) : UICanvas() { +class UIBasicInfo() : UICanvas() { + + val player: ActorHumanoid? + get() = Terrarum.ingame?.actorNowPlaying + override var width = 93 override var height = 23 override var openCloseTime: Second = 0f @@ -51,7 +55,7 @@ class UIBasicInfo(private val player: ActorHumanoid?) : UICanvas() { private val temperature: Int get() { if (player != null) { - val playerTilePos = player.hIntTilewiseHitbox + val playerTilePos = player!!.hIntTilewiseHitbox val tempCelsius = -273f + ((Terrarum.ingame as? TerrarumIngame)?.world?.getTemperature(playerTilePos.centeredX.toInt(), playerTilePos.centeredY.toInt()) ?: 288f) return if (tempCelsius < -10) diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryFull.kt b/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryFull.kt index ffe19ce1a..57498fdc6 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryFull.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryFull.kt @@ -9,6 +9,7 @@ import net.torvald.terrarum.AppLoader.* import net.torvald.terrarum.blockstats.MinimapComposer import net.torvald.terrarum.langpack.Lang import net.torvald.terrarum.modulebasegame.TerrarumIngame +import net.torvald.terrarum.modulebasegame.gameactors.ActorHumanoid import net.torvald.terrarum.modulebasegame.gameactors.Pocketed import net.torvald.terrarum.ui.* import net.torvald.terrarumsansbitmap.gdx.TextureRegionPack @@ -17,14 +18,15 @@ import net.torvald.terrarumsansbitmap.gdx.TextureRegionPack * Created by minjaesong on 2017-10-21. */ class UIInventoryFull( - var actor: Pocketed, - - toggleKeyLiteral: Int? = null, toggleButtonLiteral: Int? = null, + toggleKeyLiteral: Int? = AppLoader.getConfigInt("config_keyinventory"), toggleButtonLiteral: Int? = AppLoader.getConfigInt("config_gamepadstart"), // UI positions itself? (you must g.flush() yourself after the g.translate(Int, Int)) customPositioning: Boolean = false, // mainly used by vital meter doNotWarnConstant: Boolean = false ) : UICanvas(toggleKeyLiteral, toggleButtonLiteral, customPositioning, doNotWarnConstant) { + val actor: ActorHumanoid + get() = Terrarum.ingame!!.actorNowPlaying!! + override var width: Int = AppLoader.screenSize.screenW override var height: Int = AppLoader.screenSize.screenH override var openCloseTime: Second = 0.0f diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UITierOneWatch.kt b/src/net/torvald/terrarum/modulebasegame/ui/UITierOneWatch.kt index cb5bd98a1..8fd6d0355 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UITierOneWatch.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UITierOneWatch.kt @@ -16,7 +16,7 @@ import kotlin.math.roundToInt /** * Created by minjaesong on 2017-06-11. */ -class UITierOneWatch(private val player: ActorHumanoid?) : UICanvas() { +class UITierOneWatch() : UICanvas() { override var width = 160 override var height = 23 override var openCloseTime: Second = 0f