mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-03-09 13:21:51 +09:00
fix: multimeter's block cursor would break fixture ghost
This commit is contained in:
@@ -66,6 +66,13 @@
|
||||
]
|
||||
},
|
||||
|
||||
"item@basegame:7": { /* multimeter */
|
||||
"workbench": "soldering",
|
||||
"ingredients": [
|
||||
[2, 5, "item@basegame:112", 5, "item@basegame:117", 5, "item@basegame:177", 5, "$SEMICONDUCTOR", 1, "item@basegame:50"] /* 5 copper, 5 gold, 5 brass, 5 iron, 5 tin, 1 soldering wire (temporary) */
|
||||
]
|
||||
},
|
||||
|
||||
"item@basegame:35": { /* copper bulb */
|
||||
"workbench": "soldering",
|
||||
"ingredients": [
|
||||
|
||||
@@ -187,7 +187,6 @@ open class IngameInstance(val batch: FlippingSpriteBatch, val isMultiplayer: Boo
|
||||
|
||||
blockMarkingActor.let {
|
||||
it.unsetGhost()
|
||||
it.setGhostColourNone()
|
||||
}
|
||||
|
||||
gameInitialised = true
|
||||
|
||||
@@ -25,7 +25,7 @@ import kotlin.math.floor
|
||||
class BlockMarkerActor : ActorWithBody(Actor.RenderOrder.OVERLAY, physProp = PhysProperties.MOBILE_OBJECT()), NoSerialise {
|
||||
|
||||
enum class MarkerMode {
|
||||
FIXTURE_GHOST, BLOCK_MARKER
|
||||
FIXTURE_GHOST, BLOCK_MARKER, HIDDEN
|
||||
}
|
||||
|
||||
private val defaultSize = 16.0
|
||||
@@ -45,12 +45,14 @@ class BlockMarkerActor : ActorWithBody(Actor.RenderOrder.OVERLAY, physProp = Phy
|
||||
|
||||
|
||||
init {
|
||||
this.isVisible = false
|
||||
this.isVisible = true
|
||||
renderOrder = Actor.RenderOrder.OVERLAY // for some reason the constructor didn't work
|
||||
}
|
||||
|
||||
|
||||
override fun drawBody(frameDelta: Float, batch: SpriteBatch) {
|
||||
this.isVisible = true
|
||||
|
||||
if (isVisible) {
|
||||
if (markerMode == MarkerMode.FIXTURE_GHOST) {
|
||||
if (INGAME.actorNowPlaying != null) {
|
||||
@@ -114,6 +116,16 @@ class BlockMarkerActor : ActorWithBody(Actor.RenderOrder.OVERLAY, physProp = Phy
|
||||
ghost = null
|
||||
setGhostColourNone()
|
||||
hitbox.setDimension(TILE_SIZED, TILE_SIZED)
|
||||
markerMode = MarkerMode.HIDDEN
|
||||
}
|
||||
|
||||
fun hideMarker() {
|
||||
unsetGhost()
|
||||
}
|
||||
|
||||
fun showMarker(shape: Int) {
|
||||
markerShape = shape
|
||||
markerMode = MarkerMode.BLOCK_MARKER
|
||||
}
|
||||
|
||||
fun setGhostColourNone() { ghostColour = Color.WHITE }
|
||||
|
||||
@@ -93,7 +93,6 @@ open class FixtureItemBase(originalID: ItemID, val fixtureClassName: String) : G
|
||||
|
||||
(INGAME as TerrarumIngame).blockMarkingActor.let {
|
||||
it.unsetGhost()
|
||||
it.setGhostColourNone()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -37,9 +37,8 @@ class WireGraphDebugger(originalID: ItemID) : GameItem(originalID) {
|
||||
override fun effectWhileEquipped(actor: ActorWithBody, delta: Float) {
|
||||
(Terrarum.ingame!! as TerrarumIngame).selectedWireRenderClass = "wire_render_all"
|
||||
|
||||
blockMarker.markerShape = 3
|
||||
blockMarker.showMarker(3)
|
||||
blockMarker.markerColour = Color.YELLOW
|
||||
blockMarker.isVisible = true
|
||||
blockMarker.update(delta)
|
||||
|
||||
val mx = Terrarum.mouseTileX
|
||||
@@ -77,7 +76,7 @@ class WireGraphDebugger(originalID: ItemID) : GameItem(originalID) {
|
||||
override fun effectOnUnequip(actor: ActorWithBody) {
|
||||
(Terrarum.ingame!! as TerrarumIngame).selectedWireRenderClass = ""
|
||||
(Terrarum.ingame!! as TerrarumIngame).setTooltipMessage(null)
|
||||
blockMarker.isVisible = false
|
||||
blockMarker.hideMarker()
|
||||
UIItemInventoryCellCommonRes.tooltipShowing.remove(tooltipHash)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user