smelter lightbox depends on its internal temperature

This commit is contained in:
minjaesong
2024-02-03 04:52:37 +09:00
parent 8cb4709cd7
commit f91fbf6cf0
4 changed files with 43 additions and 43 deletions

View File

@@ -13,13 +13,9 @@ import net.torvald.terrarum.gameactors.AVKey
import net.torvald.terrarum.gameactors.Hitbox
import net.torvald.terrarum.gameactors.Lightbox
import net.torvald.terrarum.gamecontroller.KeyToggler
import net.torvald.terrarum.gameitems.ItemID
import net.torvald.terrarum.gameparticles.ParticleVanishingSprite
import net.torvald.terrarum.langpack.Lang
import net.torvald.terrarum.modulebasegame.TerrarumIngame
import net.torvald.terrarum.modulebasegame.gameitems.FixtureItemBase
import net.torvald.terrarum.modulebasegame.ui.UICrafting
import net.torvald.terrarum.modulebasegame.ui.UIInventoryFull
import net.torvald.terrarum.modulebasegame.ui.UISmelterBasic
import net.torvald.terrarumsansbitmap.gdx.TextureRegionPack
@@ -80,6 +76,8 @@ class FixtureSmelterBasic : FixtureBase, CraftingStation {
this.mainUI = UISmelterBasic(this)
}
@Transient val light = Cvec(0.5f, 0.18f, 0f, 0f)
@Transient override var lightBoxList = arrayListOf(Lightbox(Hitbox(0.0, 2*TILE_SIZED, TILE_SIZED * 2, TILE_SIZED * 2), Cvec(0.5f, 0.18f, 0f, 0f)))
@Transient private val actorBlocks = arrayOf(
@@ -265,8 +263,15 @@ class FixtureSmelterBasic : FixtureBase, CraftingStation {
progress = 0f
}
// update lightbox
lightBoxList.forEach {
it.light = light.cpy().mul(temperature)
}
spawnTimer += delta
if (temperature > 0.001f)
spawnTimer += delta
else
spawnTimer = 0f
}
}