fix: old tooltip managing code and revived the fading transition

This commit is contained in:
minjaesong
2024-01-30 02:57:18 +09:00
parent 9fa28760fa
commit 111833f5d3
17 changed files with 126 additions and 85 deletions

View File

@@ -416,10 +416,12 @@ open class IngameInstance(val batch: FlippingSpriteBatch, val isMultiplayer: Boo
open fun setTooltipMessage(message: String?) {
if (message == null) {
uiTooltip.setAsClose()
// printdbg(this, "Tooltip close!")
}
else {
if (uiTooltip.isClosed || uiTooltip.isClosing) {
uiTooltip.setAsOpen()
// printdbg(this, "Tooltip open!")
}
uiTooltip.message = message

View File

@@ -14,6 +14,7 @@ import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.modulebasegame.gameactors.CraftingStation
import net.torvald.terrarum.modulebasegame.gameactors.FixtureInventory
import net.torvald.terrarum.modulebasegame.gameactors.InventoryPair
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryItemGrid.Companion.listGap
import net.torvald.terrarum.modulebasegame.ui.UITemplateHalfInventory.Companion.INVENTORY_NAME_TEXT_GAP
import net.torvald.terrarum.ui.*
@@ -402,7 +403,7 @@ class UICrafting(val full: UIInventoryFull?) : UICanvas(
openingClickLatched = Terrarum.mouseDown
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null)
resetUI()
@@ -476,14 +477,14 @@ class UICrafting(val full: UIInventoryFull?) : UICanvas(
override fun endOpening(delta: Float) {
super.endOpening(delta)
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}
override fun endClosing(delta: Float) {
super.endClosing(delta)
resetUI()
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}

View File

@@ -15,6 +15,7 @@ import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.INVENTOR
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.INVENTORY_CELLS_OFFSET_Y
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.controlHelpHeight
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.internalWidth
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryItemGrid.Companion.createInvCellGenericKeyDownFun
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryItemGrid.Companion.createInvCellGenericTouchDownFun
import net.torvald.terrarum.ui.Toolkit
@@ -173,14 +174,14 @@ internal class UIInventoryCells(
}
override fun show() {
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null)
}
override fun endClosing(delta: Float) {
super.endClosing(delta)
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null)
}

View File

@@ -18,6 +18,7 @@ import net.torvald.terrarum.modulebasegame.gameactors.IngamePlayer
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.INVENTORY_CELLS_OFFSET_Y
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.INVENTORY_CELLS_UI_HEIGHT
import net.torvald.terrarum.modulebasegame.serialise.WriteSavegame
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.serialise.WriteConfig
import net.torvald.terrarum.ui.Toolkit
import net.torvald.terrarum.ui.UICanvas
@@ -281,7 +282,7 @@ class UIInventoryEscMenu(val full: UIInventoryFull) : UICanvas() {
)
override fun show() {
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null)
toInitScreen()
}
@@ -355,7 +356,7 @@ class UIInventoryEscMenu(val full: UIInventoryFull) : UICanvas() {
override fun endClosing(delta: Float) {
super.endClosing(delta)
screen = 0
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null)
}

View File

@@ -10,6 +10,7 @@ import net.torvald.terrarum.audio.decibelsToFullscale
import net.torvald.terrarum.gameitems.GameItem
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.modulebasegame.gameactors.ActorHumanoid
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.ui.*
import net.torvald.terrarumsansbitmap.gdx.TextureRegionPack
import net.torvald.unicode.*
@@ -321,7 +322,7 @@ class UIInventoryFull(
override fun show() {
transitionPanel.show()
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null)
}
@@ -413,7 +414,7 @@ class UIInventoryFull(
INGAME.setTooltipMessage(null) // required!
// MinimapComposer.revalidateAll()
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
// printdbg(this, "Clearing out tooltipShowing")
}

View File

@@ -32,11 +32,14 @@ abstract class UIItemInventoryCellBase(
var touchDownFun: (GameItem?, Long, Int, Any?, UIItemInventoryCellBase) -> Unit, // Item, Amount, Button, extra info, self
open var extraInfo: Any?,
open protected val highlightEquippedItem: Boolean = true, // for some UIs that only cares about getting equipped slot number but not highlighting
var colourTheme: InventoryCellColourTheme = UIItemInventoryCellCommonRes.defaultInventoryCellTheme
var colourTheme: InventoryCellColourTheme = UIItemInventoryCellCommonRes.defaultInventoryCellTheme,
var showTooltip: Boolean = true,
) : UIItem(parentUI, initialX, initialY) {
abstract override fun update(delta: Float)
abstract override fun render(frameDelta: Float, batch: SpriteBatch, camera: OrthographicCamera)
protected val hash = System.nanoTime()
/** Custom highlight rule to highlight tihs button to primary accent colour (blue by default).
* Set to `null` to use default rule:
*
@@ -110,6 +113,8 @@ object UIItemInventoryCellCommonRes {
Color.WHITE,
Toolkit.Theme.COL_CELL_FILL
)
val tooltipShowing = HashMap<Long, Boolean>() // Long: `hash` field on UIItemInventoryItemGrid
}
data class InventoryCellColourTheme(

View File

@@ -56,8 +56,6 @@ open class UIItemInventoryItemGrid(
var numberMultiplier = 1L
private val hash = System.nanoTime()
override val width = horizontalCells * UIItemInventoryElemSimple.height + (horizontalCells - 1) * listGap
override val height = verticalCells * UIItemInventoryElemSimple.height + (verticalCells - 1) * listGap
@@ -179,9 +177,6 @@ open class UIItemInventoryItemGrid(
}
}
// COMMON variables because more than one instance of this can be up on the screen
// This variable must be emptied out when the parent UI hides/closes
val tooltipShowing = HashMap<Long, Boolean>() // Long: `hash` field on UIItemInventoryItemGrid
}
protected val itemGrid = Array<UIItemInventoryCellBase>(horizontalCells * verticalCells) {
@@ -317,40 +312,10 @@ open class UIItemInventoryItemGrid(
override fun update(delta: Float) {
super.update(delta)
tooltipShowing[hash] = false
// printdbg(this, tooltipShowing.entries)
items.forEach {
it.update(delta)
// set tooltip accordingly
if ((App.IS_DEVELOPMENT_BUILD || isCompactMode) && tooltipShowing[hash] != true && it.item != null && it.mouseUp) {
// printdbg(this, "calling INGAME.setTooltipMessage by $hash")
val grey = App.fontGame.toColorCode(11, 11, 11)
val itemIDstr = "\n$grey(${it.item?.originalID}${if (it.item?.originalID == it.item?.dynamicID) "" else "/${it.item?.dynamicID}"})"
val nameStr = if (it.item?.nameSecondary?.isNotBlank() == true) "${it.item?.name}\n$grey${it.item?.nameSecondary}" else "${it.item?.name}"
INGAME.setTooltipMessage(
if (App.IS_DEVELOPMENT_BUILD)
nameStr + itemIDstr
else
nameStr
)
tooltipShowing[hash] = true
// printdbg(this, tooltipShowing.entries)
}
}
if (tooltipShowing.values.all { !it }) {
INGAME.setTooltipMessage(null)
}
if (!hideSidebar) {
navRemoCon.update(delta)
}
@@ -585,11 +550,6 @@ open class UIItemInventoryItemGrid(
}
override fun dispose() {
tooltipShowing.remove(hash)
}
override fun hide() {
tooltipShowing.remove(hash)
}
override fun touchDown(screenX: Int, screenY: Int, pointer: Int, button: Int): Boolean {

View File

@@ -8,6 +8,7 @@ import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.modulebasegame.gameactors.FixtureInventory
import net.torvald.terrarum.modulebasegame.gameactors.FixtureJukebox
import net.torvald.terrarum.modulebasegame.gameitems.ItemFileRef
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.ui.*
import net.torvald.terrarumsansbitmap.gdx.TextureRegionPack
import net.torvald.unicode.getKeycapPC
@@ -78,7 +79,7 @@ class UIJukebox : UICanvas(
override fun show() {
openingClickLatched = Terrarum.mouseDown
transitionPanel.show()
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null)
}
@@ -131,7 +132,7 @@ class UIJukebox : UICanvas(
override fun endClosing(delta: Float) {
super.endClosing(delta)
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}

View File

@@ -11,6 +11,7 @@ import net.torvald.terrarum.modulebasegame.gameactors.FixtureInventory
import net.torvald.terrarum.modulebasegame.gameactors.FixtureSmelterBasic
import net.torvald.terrarum.modulebasegame.gameactors.InventoryPair
import net.torvald.terrarum.modulebasegame.gameitems.FixtureItemBase
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.ui.*
import net.torvald.terrarum.ui.UIItemCatBar.Companion.FILTER_CAT_ALL
import net.torvald.terrarum.ui.UIItemInventoryElemWide.Companion.UNIQUE_ITEM_HAS_NO_AMOUNT
@@ -98,7 +99,7 @@ class UISmelterBasic(val smelter: FixtureSmelterBasic) : UICanvas(
private val productX = backdropX + 37 * backdropZoom + 3
private val productY = backdropY + 39 * backdropZoom + 3
private val thermoX = (backdropX + 28 * backdropZoom + 1).toInt()
private val thermoX = (backdropX + 24 * backdropZoom + 1).toInt()
private val thermoY = (backdropY + 39 * backdropZoom + 3).toInt()
/*
@@ -253,7 +254,7 @@ class UISmelterBasic(val smelter: FixtureSmelterBasic) : UICanvas(
playerThings.setGetInventoryFun { INGAME.actorNowPlaying!!.inventory }
itemListUpdate()
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null)
}
@@ -390,7 +391,7 @@ class UISmelterBasic(val smelter: FixtureSmelterBasic) : UICanvas(
override fun endClosing(delta: Float) {
super.endClosing(delta)
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}

View File

@@ -9,6 +9,7 @@ import net.torvald.terrarum.gameitems.GameItem
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.modulebasegame.gameactors.FixtureInventory
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.getWidthOfCells
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.ui.*
import net.torvald.unicode.getKeycapPC
import kotlin.math.max
@@ -155,7 +156,7 @@ internal class UIStorageChest : UICanvas(
openingClickLatched = Terrarum.mouseDown
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null)
}
@@ -254,7 +255,7 @@ internal class UIStorageChest : UICanvas(
override fun endClosing(delta: Float) {
super.endClosing(delta)
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}

View File

@@ -5,8 +5,11 @@ import com.badlogic.gdx.graphics.Color
import com.badlogic.gdx.graphics.OrthographicCamera
import com.badlogic.gdx.graphics.g2d.SpriteBatch
import net.torvald.terrarum.App
import net.torvald.terrarum.App.printdbg
import net.torvald.terrarum.INGAME
import net.torvald.terrarum.Second
import net.torvald.terrarum.Terrarum
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.ui.Toolkit
import net.torvald.terrarum.ui.UICanvas
import net.torvald.terrarum.ui.UINotControllable
@@ -21,7 +24,7 @@ class UITooltip : UICanvas() {
handler.allowESCtoClose = false
}
override var openCloseTime: Second = 0f
override var openCloseTime: Second = OPENCLOSE_GENERIC * 0.72f
private val tooltipBackCol = Color.WHITE
private val tooltipForeCol = Color(0xfafafaff.toInt())
@@ -48,6 +51,7 @@ class UITooltip : UICanvas() {
get() = 36 * 2 + font.lineHeight.toInt()
set(value) { throw Error("You are not supposed to set the height of the tooltip manually.") }
override fun renderUI(frameDelta: Float, batch: SpriteBatch, camera: OrthographicCamera) {
val mouseXoff = 28f
val mouseYoff = 0f
@@ -80,20 +84,29 @@ class UITooltip : UICanvas() {
}
}
// private var lastOpenSignalTime = 0L
// private var debounceTime = 100*1000000L // miliseconds
override fun setAsOpen() {
handler.setAsOpen()
// lastOpenSignalTime = System.nanoTime()
// printdbg(this, "start open")
}
override fun setAsClose() {
// printdbg(this, "Close called, time since last open: ${System.nanoTime() - lastOpenSignalTime}")
// if (System.nanoTime() - lastOpenSignalTime >= debounceTime) {
// printdbg(this, "start close")
handler.setAsClose()
// }
}
override fun updateUI(delta: Float) {
setPosition(Terrarum.mouseScreenX, Terrarum.mouseScreenY)
}
override fun doOpening(delta: Float) {
}
override fun doClosing(delta: Float) {
}
override fun endOpening(delta: Float) {
}
override fun endClosing(delta: Float) {
if (tooltipShowing.values.all { !it }) {
INGAME.setTooltipMessage(null)
}
}
override fun dispose() {

View File

@@ -8,6 +8,7 @@ import net.torvald.terrarum.*
import net.torvald.terrarum.gameworld.WorldTime
import net.torvald.terrarum.gameworld.WorldTime.Companion.MONTH_LENGTH
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.ui.Toolkit
import net.torvald.terrarum.ui.UICanvas
import net.torvald.unicode.getKeycapPC
@@ -368,13 +369,13 @@ class UIWallCalendar : UICanvas(
override fun endOpening(delta: Float) {
super.endOpening(delta)
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}
override fun endClosing(delta: Float) {
super.endClosing(delta)
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}

View File

@@ -14,6 +14,7 @@ import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.YPOS_COR
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.drawBackground
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.internalHeight
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.internalWidth
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.serialise.toAscii85
import net.torvald.terrarum.ui.*
import net.torvald.terrarumsansbitmap.gdx.TextureRegionPack
@@ -190,14 +191,14 @@ class UIWorldPortal : UICanvas(
override fun endOpening(delta: Float) {
super.endOpening(delta)
transitionPanel.uis.forEach { it.opacity = FastMath.pow(opacity, 0.5f) }
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}
override fun endClosing(delta: Float) {
super.endClosing(delta)
transitionPanel.uis.forEach { it.opacity = FastMath.pow(opacity, 0.5f) }
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}
}

View File

@@ -8,6 +8,7 @@ import net.torvald.terrarum.gameactors.AVKey
import net.torvald.terrarum.gameitems.GameItem
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.modulebasegame.gameactors.FixtureInventory
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.ui.*
import net.torvald.unicode.getKeycapPC
import kotlin.math.max
@@ -144,7 +145,7 @@ class UIWorldPortalCargo(val full: UIWorldPortal) : UICanvas(), HasInventory {
openingClickLatched = Terrarum.mouseDown
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null)
}
@@ -244,7 +245,7 @@ class UIWorldPortalCargo(val full: UIWorldPortal) : UICanvas(), HasInventory {
}
override fun endClosing(delta: Float) {
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}

View File

@@ -13,6 +13,7 @@ import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.modulebasegame.gameactors.FixtureWorldPortal
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.INVENTORY_CELLS_OFFSET_Y
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull.Companion.getCellCountVertically
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import net.torvald.terrarum.realestate.LandUtil.CHUNK_H
import net.torvald.terrarum.realestate.LandUtil.CHUNK_W
import net.torvald.terrarum.savegame.*
@@ -524,7 +525,7 @@ class UIWorldPortalListing(val full: UIWorldPortal) : UICanvas() {
override fun endClosing(delta: Float) {
super.endClosing(delta)
UIItemInventoryItemGrid.tooltipShowing.clear()
tooltipShowing.clear()
INGAME.setTooltipMessage(null) // required!
}

View File

@@ -4,16 +4,14 @@ import com.badlogic.gdx.graphics.Color
import com.badlogic.gdx.graphics.OrthographicCamera
import com.badlogic.gdx.graphics.g2d.SpriteBatch
import com.badlogic.gdx.graphics.g2d.TextureRegion
import net.torvald.terrarum.App
import net.torvald.terrarum.CommonResourcePool
import net.torvald.terrarum.blendNormalStraightAlpha
import net.torvald.terrarum.*
import net.torvald.terrarum.gameitems.GameItem
import net.torvald.terrarum.modulebasegame.ui.InventoryCellColourTheme
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellBase
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.defaultInventoryCellTheme
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.toItemCountText
import net.torvald.terrarum.mul
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import kotlin.math.roundToInt
/**
@@ -59,7 +57,6 @@ class UIItemInventoryElemSimple(
private val emptyCellIconOffsetY = (this.height - (emptyCellIcon?.regionHeight ?: 0)).div(2).toFloat()
override fun update(delta: Float) {
}
private var highlightToMainCol = false
@@ -129,6 +126,29 @@ class UIItemInventoryElemSimple(
)
}
// set tooltip accordingly
if (tooltipShowing[hash] != true && item != null && mouseUp) {
// printdbg(this, "calling INGAME.setTooltipMessage by $hash")
val grey = App.fontGame.toColorCode(11, 11, 11)
val itemIDstr = "\n$grey(${item?.originalID}${if (item?.originalID == item?.dynamicID) "" else "/${item?.dynamicID}"})"
val nameStr = if (item?.nameSecondary?.isNotBlank() == true) "${item?.name}\n$grey${item?.nameSecondary}" else "${item?.name}"
INGAME.setTooltipMessage(
if (App.IS_DEVELOPMENT_BUILD)
nameStr + itemIDstr
else
nameStr
)
tooltipShowing[hash] = true
// printdbg(this, tooltipShowing.entries)
}
else if (item == null || !mouseUp) {
tooltipShowing[hash] = false
}
}
else {
@@ -146,5 +166,10 @@ class UIItemInventoryElemSimple(
}
override fun dispose() {
tooltipShowing.remove(hash)
}
override fun hide() {
tooltipShowing.remove(hash)
}
}

View File

@@ -5,12 +5,14 @@ import com.badlogic.gdx.graphics.OrthographicCamera
import com.badlogic.gdx.graphics.g2d.SpriteBatch
import com.badlogic.gdx.graphics.g2d.TextureRegion
import net.torvald.terrarum.*
import net.torvald.terrarum.App.IS_DEVELOPMENT_BUILD
import net.torvald.terrarum.App.printdbg
import net.torvald.terrarum.gameitems.GameItem
import net.torvald.terrarum.modulebasegame.ui.InventoryCellColourTheme
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellBase
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.toItemCountText
import net.torvald.terrarum.modulebasegame.ui.UIItemInventoryCellCommonRes.tooltipShowing
import kotlin.math.roundToInt
/***
@@ -64,9 +66,6 @@ class UIItemInventoryElemWide(
override fun update(delta: Float) {
if (item != null) {
}
}
private var highlightToMainCol = false
@@ -159,13 +158,39 @@ class UIItemInventoryElemWide(
App.fontGame.draw(batch, "$label", barOffset + barFullLen - labelW.toFloat(), posY + textOffsetY)
}
// set tooltip accordingly
if (IS_DEVELOPMENT_BUILD && tooltipShowing[hash] != true && item != null && mouseUp) {
// printdbg(this, "calling INGAME.setTooltipMessage by $hash")
val grey = App.fontGame.toColorCode(11, 11, 11)
val itemIDstr = "\n$grey(${item?.originalID}${if (item?.originalID == item?.dynamicID) "" else "/${item?.dynamicID}"})"
val nameStr = if (item?.nameSecondary?.isNotBlank() == true) "${item?.name}\n$grey${item?.nameSecondary}" else "${item?.name}"
INGAME.setTooltipMessage(
if (App.IS_DEVELOPMENT_BUILD)
nameStr + itemIDstr
else
nameStr
)
tooltipShowing[hash] = true
// printdbg(this, tooltipShowing.entries)
}
else if (item == null || !mouseUp) {
tooltipShowing[hash] = false
}
}
// see IFs above?
batch.color = Color.WHITE
}
override fun dispose() {
tooltipShowing.remove(hash)
}
override fun hide() {
tooltipShowing.remove(hash)
}
}