mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-06-10 02:24:05 +09:00
tooltip positioning should work again
This commit is contained in:
@@ -86,7 +86,7 @@ object Terrarum : Screen {
|
|||||||
*/
|
*/
|
||||||
val TARGET_INTERNAL_FPS: Double = 60.0
|
val TARGET_INTERNAL_FPS: Double = 60.0
|
||||||
|
|
||||||
internal val UPDATE_CATCHUP_MAX_TRIES = 4
|
internal val UPDATE_CATCHUP_MAX_TRIES = 2 // this feature does more harm than good...
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -324,7 +324,6 @@ object Terrarum : Screen {
|
|||||||
shapeRender = ShapeRenderer()
|
shapeRender = ShapeRenderer()
|
||||||
|
|
||||||
|
|
||||||
//fontGame = GameFontBase("assets/graphics/fonts/terrarum-sans-bitmap", flipY = true)
|
|
||||||
fontSmallNumbers = TinyAlphNum
|
fontSmallNumbers = TinyAlphNum
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -480,7 +480,7 @@ open class Ingame(batch: SpriteBatch) : IngameInstance(batch) {
|
|||||||
updateTries++
|
updateTries++
|
||||||
|
|
||||||
if (updateTries >= Terrarum.UPDATE_CATCHUP_MAX_TRIES) {
|
if (updateTries >= Terrarum.UPDATE_CATCHUP_MAX_TRIES) {
|
||||||
printdbg(this, "Update couldn't catch up -- delta-T buildup was $oldDeltaCtr seconds")
|
//printdbg(this, "Update couldn't catch up -- delta-T buildup was $oldDeltaCtr seconds")
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -67,6 +67,13 @@ object PlayerBuilderSigrid {
|
|||||||
|
|
||||||
|
|
||||||
// Test fill up inventory
|
// Test fill up inventory
|
||||||
|
fillTestInventory(p.inventory)
|
||||||
|
|
||||||
|
|
||||||
|
return p
|
||||||
|
}
|
||||||
|
|
||||||
|
fun fillTestInventory(inventory: ActorInventory) {
|
||||||
val blocks = arrayOf(
|
val blocks = arrayOf(
|
||||||
Block.AIR, Block.DIRT, Block.GLASS_CRUDE,
|
Block.AIR, Block.DIRT, Block.GLASS_CRUDE,
|
||||||
Block.GRASS, Block.GRAVEL, Block.ICE_MAGICAL, Block.LANTERN,
|
Block.GRASS, Block.GRAVEL, Block.ICE_MAGICAL, Block.LANTERN,
|
||||||
@@ -88,14 +95,9 @@ object PlayerBuilderSigrid {
|
|||||||
Block.SANDSTONE_RED, Block.STONE, Block.STONE_BRICKS,
|
Block.SANDSTONE_RED, Block.STONE, Block.STONE_BRICKS,
|
||||||
Block.STONE_QUARRIED, Block.STONE_TILE_WHITE
|
Block.STONE_QUARRIED, Block.STONE_TILE_WHITE
|
||||||
)
|
)
|
||||||
blocks.forEach { p.addItem(it, 999) }
|
blocks.forEach { inventory.add(it, 9995) }
|
||||||
walls.forEach { p.addItem(it + 4096, 999) }
|
walls.forEach { inventory.add(it + 4096, 9995) }
|
||||||
p.inventory.add(ItemCodex.ITEM_STATIC.first)
|
inventory.add(ItemCodex.ITEM_STATIC.first)
|
||||||
p.inventory.add(9000)
|
inventory.add(9000)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return p
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ object PlayerBuilderTestSubject1 {
|
|||||||
p.setPosition(3.0 * FeaturesDrawer.TILE_SIZE, 3.0 * FeaturesDrawer.TILE_SIZE)
|
p.setPosition(3.0 * FeaturesDrawer.TILE_SIZE, 3.0 * FeaturesDrawer.TILE_SIZE)
|
||||||
|
|
||||||
|
|
||||||
|
PlayerBuilderSigrid.fillTestInventory(p.inventory)
|
||||||
|
|
||||||
|
|
||||||
return p
|
return p
|
||||||
|
|||||||
@@ -4,8 +4,8 @@ import com.badlogic.gdx.graphics.Camera
|
|||||||
import com.badlogic.gdx.graphics.Color
|
import com.badlogic.gdx.graphics.Color
|
||||||
import com.badlogic.gdx.graphics.Texture
|
import com.badlogic.gdx.graphics.Texture
|
||||||
import com.badlogic.gdx.graphics.g2d.SpriteBatch
|
import com.badlogic.gdx.graphics.g2d.SpriteBatch
|
||||||
import net.torvald.terrarum.Terrarum
|
|
||||||
import net.torvald.terrarum.Second
|
import net.torvald.terrarum.Second
|
||||||
|
import net.torvald.terrarum.Terrarum
|
||||||
import net.torvald.terrarum.ui.UICanvas
|
import net.torvald.terrarum.ui.UICanvas
|
||||||
import net.torvald.terrarumsansbitmap.gdx.TextureRegionPack
|
import net.torvald.terrarumsansbitmap.gdx.TextureRegionPack
|
||||||
|
|
||||||
@@ -17,15 +17,20 @@ class UITooltip : UICanvas() {
|
|||||||
override var openCloseTime: Second = 0f
|
override var openCloseTime: Second = 0f
|
||||||
|
|
||||||
var message: String = ""
|
var message: String = ""
|
||||||
|
set(value) {
|
||||||
|
field = value
|
||||||
|
msgWidth = font.getWidth(value)
|
||||||
|
}
|
||||||
|
|
||||||
private val textures = TextureRegionPack("assets/graphics/gui/tooltip_black.tga", 8, 36)
|
private val textures = TextureRegionPack("assets/graphics/gui/tooltip_black.tga", 8, 36)
|
||||||
|
|
||||||
private val font = Terrarum.fontGame
|
private val font = Terrarum.fontGame
|
||||||
|
private var msgWidth = 0
|
||||||
|
|
||||||
val textMarginX = 4
|
val textMarginX = 4
|
||||||
|
|
||||||
override var width: Int
|
override var width: Int
|
||||||
get() = font.getWidth(message) + (textMarginX + textures.tileW) * 2
|
get() = msgWidth + (textMarginX + textures.tileW) * 2
|
||||||
set(value) { throw Error("You are not supposed to set the width of the tooltip manually.") }
|
set(value) { throw Error("You are not supposed to set the width of the tooltip manually.") }
|
||||||
override var height: Int
|
override var height: Int
|
||||||
get() = textures.tileH
|
get() = textures.tileH
|
||||||
@@ -42,7 +47,7 @@ class UITooltip : UICanvas() {
|
|||||||
|
|
||||||
val tooltipY = mouseY - textures.tileH
|
val tooltipY = mouseY - textures.tileH
|
||||||
|
|
||||||
val txtW = font.getWidth(message) + 2f * textMarginX
|
val txtW = msgWidth + 2f * textMarginX
|
||||||
|
|
||||||
batch.color = Color.WHITE
|
batch.color = Color.WHITE
|
||||||
batch.draw(textures.get(0, 0), mouseX, tooltipY)
|
batch.draw(textures.get(0, 0), mouseX, tooltipY)
|
||||||
@@ -52,6 +57,7 @@ class UITooltip : UICanvas() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun updateUI(delta: Float) {
|
override fun updateUI(delta: Float) {
|
||||||
|
setPosition(Terrarum.mouseScreenX, Terrarum.mouseScreenY)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun doOpening(delta: Float) {
|
override fun doOpening(delta: Float) {
|
||||||
|
|||||||
Reference in New Issue
Block a user