From f8d93b2de283d51240ec33bd109993a516dd053d Mon Sep 17 00:00:00 2001 From: minjaesong Date: Sun, 11 Sep 2022 19:42:12 +0900 Subject: [PATCH] closed door now actually blocks lights --- .../gameactors/FixtureSwingingDoorBase.kt | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSwingingDoorBase.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSwingingDoorBase.kt index d8f231361..723dbf13c 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSwingingDoorBase.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/FixtureSwingingDoorBase.kt @@ -153,12 +153,21 @@ open class FixtureSwingingDoorBase : FixtureBase { } + private fun setOpacity() { + shadeBoxList[0].light = opacity + } + + private fun unsetOpacity() { + shadeBoxList[0].light = Cvec(0) + } + open protected fun closeDoor(doorHandler: Int) { if (doorState != 0) { (sprite!! as SheetSpriteAnimation).currentRow = 0 doorState = 0 placeActorBlocks() lastDoorHandler = doorHandler + if (!isOpacityActuallyLuminosity) setOpacity() } doorCloseQueued = false } @@ -169,6 +178,7 @@ open class FixtureSwingingDoorBase : FixtureBase { doorState = 1 placeActorBlocks() lastDoorHandler = doorHandler + if (!isOpacityActuallyLuminosity) unsetOpacity() } doorCloseQueued = false } @@ -179,6 +189,7 @@ open class FixtureSwingingDoorBase : FixtureBase { doorState = -1 placeActorBlocks() lastDoorHandler = doorHandler + if (!isOpacityActuallyLuminosity) unsetOpacity() } doorCloseQueued = false }