From 5014381cbd43c9710790aa1545a820f78e97690b Mon Sep 17 00:00:00 2001 From: minjaesong Date: Mon, 4 Mar 2024 22:49:44 +0900 Subject: [PATCH] what a stupid typo --- .../modulebasegame/gameactors/FixtureBase.kt | 8 ++++---- .../gameactors/FixtureSignalBlocker.kt | 12 +----------- 2 files changed, 5 insertions(+), 15 deletions(-) diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureBase.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureBase.kt index 8cfc6ac00..c2ad8ddb2 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureBase.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureBase.kt @@ -108,6 +108,10 @@ open class Electric : FixtureBase { } } + fun getWireEmissionAt(offsetX: Int, offsetY: Int): Vector2 { + return wireEmission[pointToBlockBoxIndex(offsetX, offsetY)] ?: Vector2() + } + /** * returns true if at least one of following condition is `true` * - `getWireStateAt(x, y, "digital_bit").x` is equal to or greater than `ELECTIC_THRESHOLD_HIGH` @@ -130,10 +134,6 @@ open class Electric : FixtureBase { getWireStateAt(offsetX, offsetY, "digital_bit").x <= ELECTRIC_THRESHOLD_LOW || getWireEmissionAt(offsetX, offsetY).x <= ELECTRIC_THRESHOLD_LOW - fun getWireEmissionAt(offsetX: Int, offsetY: Int): Vector2 { - return wireEmission[pointToBlockBoxIndex(offsetY, offsetY)] ?: Vector2() - } - private val oldSinkStatus: Array private val newSinkStatus: Array diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSignalBlocker.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSignalBlocker.kt index afc2fa3b9..4b6b1437f 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSignalBlocker.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSignalBlocker.kt @@ -135,18 +135,8 @@ class FixtureSignalBlocker : Electric, Reorientable { val two = isSignalHigh(1, 0) val four = isSignalHigh(0, 1) val eight = isSignalHigh(1, 1) - // WHY READING FROM wireEmission DOES NOT WORK???? - // fixme actually read from wireEmission as the gate's output has propagation delay but current sprite "hack" does not consider it - var state = one.toInt(0) or two.toInt(1) or four.toInt(2) or eight.toInt(3) - - state = state or when (orientation) { - 0 -> 2 - 1 -> 8 - 2 -> 4 - 3 -> 1 - else -> throw IllegalStateException("Orientation not in range ($orientation)") - } * output + val state = one.toInt(0) or two.toInt(1) or four.toInt(2) or eight.toInt(3) (sprite as SheetSpriteAnimation).currentRow = state (spriteEmissive as SheetSpriteAnimation).currentRow = state