diff --git a/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemHomeComputer.kt b/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemHomeComputer.kt index af645bfee..1d42663fb 100644 --- a/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemHomeComputer.kt +++ b/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemHomeComputer.kt @@ -19,7 +19,7 @@ class ItemHomeComputer(originalID: ItemID) : FixtureItemBase(originalID, "net.to override var dynamicID: ItemID = originalID override var baseMass = 20.0 - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = FixtureItemBase.getItemImageFromSheet("dwarventech", "sprites/fixtures/desktop_computer.tga", TerrarumAppConfiguration.TILE_SIZE, TerrarumAppConfiguration.TILE_SIZE) diff --git a/src/net/torvald/terrarum/ModMgr.kt b/src/net/torvald/terrarum/ModMgr.kt index 51e354119..b09c6c7b7 100644 --- a/src/net/torvald/terrarum/ModMgr.kt +++ b/src/net/torvald/terrarum/ModMgr.kt @@ -572,7 +572,7 @@ object ModMgr { override var baseMass: Double = tile.density / 100.0 override var baseToolSize: Double? = null override var inventoryCategory = if (isWall) Category.WALL else Category.BLOCK - override var isDynamic = false + override var canBeDynamic = false override val materialId = tile.material override var equipPosition = EquipPosition.HAND_GRIP // override val itemImage: TextureRegion diff --git a/src/net/torvald/terrarum/gameitems/GameItem.kt b/src/net/torvald/terrarum/gameitems/GameItem.kt index 4c3b72fed..d5ab69ac6 100644 --- a/src/net/torvald/terrarum/gameitems/GameItem.kt +++ b/src/net/torvald/terrarum/gameitems/GameItem.kt @@ -3,7 +3,6 @@ package net.torvald.terrarum.gameitems import com.badlogic.gdx.graphics.Color import com.badlogic.gdx.graphics.g2d.TextureRegion import net.torvald.terrarum.* -import net.torvald.terrarum.App.printdbg import net.torvald.terrarum.ReferencingRanges.PREFIX_ACTORITEM import net.torvald.terrarum.ReferencingRanges.PREFIX_DYNAMICITEM import net.torvald.terrarum.ReferencingRanges.PREFIX_VIRTUALTILE @@ -115,7 +114,10 @@ abstract class GameItem(val originalID: ItemID) : Comparable, Cloneabl * * The opposite of this is called STATIC and their example is a Block. */ - abstract val isDynamic: Boolean + abstract val canBeDynamic: Boolean + + val isCurrentlyDynamic: Boolean + get() = originalID != dynamicID /** * Where to equip the item. diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/ActorHumanoid.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/ActorHumanoid.kt index 51cfc869c..9fe79e85a 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/ActorHumanoid.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/ActorHumanoid.kt @@ -192,7 +192,7 @@ open class ActorHumanoid : ActorWithBody, Controllable, Pocketed, Factionable, L override var baseMass: Double = 0.0 override var baseToolSize: Double? = null override var inventoryCategory = "should_not_be_seen" - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" init { diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/ActorInventory.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/ActorInventory.kt index 51426cc86..d6dde8619 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/ActorInventory.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/ActorInventory.kt @@ -83,7 +83,7 @@ class ActorInventory() : FixtureInventory() { if (amount < 0) throw IllegalArgumentException("Consuming negative amount of an item (expected >=0, got $amount)") - if (item.stackable && !item.isDynamic) { + if (item.stackable && !item.canBeDynamic) { remove(item, amount) } else if (item.isUnique) { @@ -93,7 +93,7 @@ class ActorInventory() : FixtureInventory() { val newItem: GameItem // unpack newly-made dynamic item (e.g. any weapon, floppy disk) - if (item.isDynamic && item.originalID == item.dynamicID) { + if (item.canBeDynamic && !item.isCurrentlyDynamic) { itemEquipped[item.equipPosition] = null remove(item, 1) diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/HumanoidNPC.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/HumanoidNPC.kt index 215baea6b..5f2d5c01c 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/HumanoidNPC.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/HumanoidNPC.kt @@ -46,7 +46,7 @@ open class HumanoidNPC : ActorHumanoid, AIControlled, CanBeAnItem { actorValue[AVKey.SCALE] = value } override var inventoryCategory = "npc" - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override fun startPrimaryUse(actor: ActorWithBody, delta: Float): Long { diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/AxeCore.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/AxeCore.kt index 3ce99d7b1..f42914ad4 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/AxeCore.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/AxeCore.kt @@ -235,7 +235,7 @@ class AxeCopper(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "CUPR" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion @@ -264,7 +264,7 @@ class AxeIron(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "IRON" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion @@ -293,7 +293,7 @@ class AxeSteel(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "STAL" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion @@ -322,7 +322,7 @@ class AxeWood(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "WOOD" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion @@ -351,7 +351,7 @@ class AxeStone(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "ROCK" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/FixtureItemBase.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/FixtureItemBase.kt index a1a992318..69dd54f3f 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/FixtureItemBase.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/FixtureItemBase.kt @@ -41,7 +41,7 @@ open class FixtureItemBase(originalID: ItemID, val fixtureClassName: String) : G override var dynamicID: ItemID = originalID @Transient override var baseMass = 1.0 @Transient override var inventoryCategory = Category.FIXTURE - override val isDynamic = false + override val canBeDynamic = false @Transient override val materialId = "" @Transient override var equipPosition: Int = EquipPosition.HAND_GRIP diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemFileRef.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemFileRef.kt index e75951452..5f88100dc 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemFileRef.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemFileRef.kt @@ -64,7 +64,7 @@ open class ItemFileRef(originalID: ItemID) : GameItem(originalID) { override var baseMass = 1.0 override var baseToolSize: Double? = null override var inventoryCategory = Category.MISC - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override var equipPosition = EquipPosition.HAND_GRIP diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemFurnaceAndAnvil.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemFurnaceAndAnvil.kt index 0082c4aa4..38f1ec1bf 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemFurnaceAndAnvil.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemFurnaceAndAnvil.kt @@ -11,7 +11,7 @@ class ItemFurnaceAndAnvil(originalID: ItemID) : FixtureItemBase(originalID, "net override var baseMass = 100.0 - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsItemSheet("basegame.items").get(5,3) diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemJukebox.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemJukebox.kt index 8ebbaa9f5..e44df35b4 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemJukebox.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemJukebox.kt @@ -11,7 +11,7 @@ class ItemJukebox(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald override var baseMass = 200.0 - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsItemSheet("basegame.items").get(6,3) @@ -28,7 +28,7 @@ class ItemMusicalTurntable(originalID: ItemID) : FixtureItemBase(originalID, "ne override var baseMass = 20.0 - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsItemSheet("basegame.items").get(7,3) diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemLogicSignalEmitter.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemLogicSignalEmitter.kt index 95790e8a2..529f75a9c 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemLogicSignalEmitter.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemLogicSignalEmitter.kt @@ -12,7 +12,7 @@ class ItemLogicSignalEmitter(originalID: ItemID) : FixtureItemBase(originalID, " override var dynamicID: ItemID = originalID override var baseMass = FixtureLogicSignalEmitter.MASS - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = getItemImageFromSingleImage("basegame", "sprites/fixtures/signal_source.tga") diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSmelterBasic.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSmelterBasic.kt index a8371a43a..02fb94581 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSmelterBasic.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSmelterBasic.kt @@ -11,7 +11,7 @@ import net.torvald.terrarumsansbitmap.gdx.TextureRegionPack */ class ItemSmelterBasic(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureSmelterBasic") { override var baseMass = 100.0 - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsItemSheet("basegame.items").get(4,3) diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemStorageChest.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemStorageChest.kt index 2d846cf57..08e47b9f0 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemStorageChest.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemStorageChest.kt @@ -14,7 +14,7 @@ class ItemStorageChest(originalID: ItemID) : FixtureItemBase(originalID, "net.to override var dynamicID: ItemID = originalID override var baseMass = FixtureTikiTorch.MASS - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = getItemImageFromSingleImage("basegame", "sprites/fixtures/storage_chest.tga") diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSwingingDoorOak.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSwingingDoorOak.kt index 74373c0f5..00605f9bb 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSwingingDoorOak.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSwingingDoorOak.kt @@ -14,7 +14,7 @@ class ItemSwingingDoorOak(originalID: ItemID) : override var dynamicID: ItemID = originalID override var baseMass = 20.0 // 360[L] * 0.1 * 0.56[SpecificGravity], rounded to the nearest integer - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsItemSheet("basegame.items").get(8,10) @@ -27,7 +27,7 @@ class ItemSwingingDoorEbony(originalID: ItemID) : override var dynamicID: ItemID = originalID override var baseMass = 30.0 // 360[L] * 0.1 * 0.82[SpecificGravity], rounded to the nearest integer - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsItemSheet("basegame.items").get(9,10) @@ -40,7 +40,7 @@ class ItemSwingingDoorBirch(originalID: ItemID) : override var dynamicID: ItemID = originalID override var baseMass = 17.0 // 360[L] * 0.1 * 0.48[SpecificGravity], rounded to the nearest integer - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsItemSheet("basegame.items").get(10,10) @@ -53,7 +53,7 @@ class ItemSwingingDoorRosewood(originalID: ItemID) : override var dynamicID: ItemID = originalID override var baseMass = 24.0 // 360[L] * 0.1 * 0.68[SpecificGravity], rounded to the nearest integer - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsItemSheet("basegame.items").get(11,10) diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTapestry.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTapestry.kt index 549a7d75a..5498d08fe 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTapestry.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTapestry.kt @@ -16,7 +16,7 @@ class ItemTapestry(originalID: ItemID) : FixtureItemBase(originalID, "net.torval override var dynamicID: ItemID = originalID override var baseMass = 6.0 - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsTextureRegion("itemplaceholder_16") diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTikiTorch.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTikiTorch.kt index db44776aa..42ebfbf6b 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTikiTorch.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTikiTorch.kt @@ -12,7 +12,7 @@ class ItemTikiTorch(originalID: ItemID) : FixtureItemBase(originalID, "net.torva override var dynamicID: ItemID = originalID override var baseMass = FixtureTikiTorch.MASS - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = getItemImageFromSheet("basegame", "sprites/fixtures/tiki_torch.tga", 16, 32) diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTypewriter.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTypewriter.kt index 26b19082e..ce5fc05b7 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTypewriter.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTypewriter.kt @@ -12,7 +12,7 @@ class ItemTypewriter(originalID: ItemID) : FixtureItemBase(originalID, "net.torv override var dynamicID: ItemID = originalID override var baseMass = FixtureTikiTorch.MASS - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = getItemImageFromSheet("basegame", "sprites/fixtures/typewriter.tga", 32, 16) diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWallCalendar.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWallCalendar.kt index 331215fbd..2f4f9b797 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWallCalendar.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWallCalendar.kt @@ -11,7 +11,7 @@ class ItemWallCalendar(originalID: ItemID) : FixtureItemBase(originalID, "net.to override var dynamicID: ItemID = originalID override var baseMass = 1.0 - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = getItemImageFromSingleImage("basegame", "sprites/fixtures/calendar.tga") diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorkbench.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorkbench.kt index 6c5bc8bd9..b8eb44fe0 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorkbench.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorkbench.kt @@ -10,7 +10,7 @@ class ItemWorkbench(originalID: ItemID) : FixtureItemBase(originalID, "net.torva override var baseMass = 20.0 - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = getItemImageFromSingleImage("basegame", "sprites/fixtures/workbench.tga") diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorldPortal.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorldPortal.kt index 0e16aa7a4..6187d6b0e 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorldPortal.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorldPortal.kt @@ -12,7 +12,7 @@ class ItemWorldPortal(originalID: ItemID) : FixtureItemBase(originalID, "net.tor override var dynamicID: ItemID = originalID override var baseMass = 6000.0 - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsItemSheet("basegame.items").get(3,3) diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/MusicDisc.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/MusicDisc.kt index 3ae9de85d..f588663d2 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/MusicDisc.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/MusicDisc.kt @@ -40,7 +40,7 @@ object MusicDiscHelper { open class MusicDiscPrototype(originalID: ItemID, module: String, path: String) : ItemFileRef(originalID) { override var refPath = path override var refModuleName = module - override val isDynamic = false + override val canBeDynamic = false @Transient override var ref = ModMgr.getFile(refModuleName, refPath) override var mediumIdentifier = "music_disc" diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/OreItemBase.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/OreItemBase.kt index fe4767e17..15b059461 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/OreItemBase.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/OreItemBase.kt @@ -14,7 +14,7 @@ open class OreItemBase(originalID: ItemID, private val registerToOreDict: Boolea override var baseMass = 10.0 override var baseToolSize: Double? = null override var inventoryCategory = Category.GENERIC - override val isDynamic = false + override val canBeDynamic = false override val materialId = "OORE" override var equipPosition = EquipPosition.HAND_GRIP diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/PickaxeGeneric.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/PickaxeGeneric.kt index 7c791c9e5..ee1ead3db 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/PickaxeGeneric.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/PickaxeGeneric.kt @@ -230,7 +230,7 @@ class PickaxeCopper(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "CUPR" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion @@ -260,7 +260,7 @@ class PickaxeIron(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "IRON" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion @@ -290,7 +290,7 @@ class PickaxeSteel(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "STAL" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion @@ -320,7 +320,7 @@ class PickaxeWood(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "WOOD" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion @@ -350,7 +350,7 @@ class PickaxeStone(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "ROCK" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/SledgehammerCore.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/SledgehammerCore.kt index 805f41261..4592da64a 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/SledgehammerCore.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/SledgehammerCore.kt @@ -136,7 +136,7 @@ class SledgehammerCopper(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "CUPR" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion @@ -160,7 +160,7 @@ class SledgehammerIron(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "IRON" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion @@ -184,7 +184,7 @@ class SledgehammerSteel(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "STAL" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion @@ -211,7 +211,7 @@ class SledgehammerWood(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = true + override val canBeDynamic = true override val materialId = "WOOD" override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE override val itemImage: TextureRegion diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/WireCutterAll.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/WireCutterAll.kt index 99303cced..a5ac96009 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/WireCutterAll.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/WireCutterAll.kt @@ -88,7 +88,7 @@ class WireCutterAll(originalID: ItemID) : GameItem(originalID) { override var baseMass = 0.1 override var baseToolSize: Double? = baseMass override var inventoryCategory = Category.TOOL - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsItemSheet("basegame.items").get(1, 3) diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/WireGraphDebugger.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/WireGraphDebugger.kt index f57b1fe31..b4152d01a 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/WireGraphDebugger.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/WireGraphDebugger.kt @@ -14,7 +14,7 @@ class WireGraphDebugger(originalID: ItemID) : GameItem(originalID) { override var baseToolSize: Double? = PickaxeCore.BASE_MASS_AND_SIZE override var inventoryCategory = Category.TOOL - override val isDynamic = false + override val canBeDynamic = false override val materialId = "CUPR" override var baseMass = 2.0 override val itemImage: TextureRegion diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/WirePieceSignalWire.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/WirePieceSignalWire.kt index 6f16bbe28..7ca45fc2f 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/WirePieceSignalWire.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/WirePieceSignalWire.kt @@ -18,7 +18,7 @@ class WirePieceSignalWire(originalID: ItemID, private val atlasID: String, priva override var baseMass = 0.001 override var baseToolSize: Double? = null override var inventoryCategory = Category.WIRE - override val isDynamic = false + override val canBeDynamic = false override val materialId = "" override val itemImage: TextureRegion get() = CommonResourcePool.getAsItemSheet(atlasID).get(sheetX, sheetY) diff --git a/src/net/torvald/terrarum/ui/UIItemInventoryElemSimple.kt b/src/net/torvald/terrarum/ui/UIItemInventoryElemSimple.kt index 78d4bc4b0..937e0cea5 100644 --- a/src/net/torvald/terrarum/ui/UIItemInventoryElemSimple.kt +++ b/src/net/torvald/terrarum/ui/UIItemInventoryElemSimple.kt @@ -2,7 +2,6 @@ package net.torvald.terrarum.ui import com.badlogic.gdx.Gdx import com.badlogic.gdx.Input -import com.badlogic.gdx.Input.Keys import com.badlogic.gdx.graphics.Color import com.badlogic.gdx.graphics.OrthographicCamera import com.badlogic.gdx.graphics.g2d.SpriteBatch @@ -98,7 +97,7 @@ class UIItemInventoryElemSimple( // if item has durability, draw that and don't draw count; durability and itemCount cannot coexist - if (item!!.maxDurability > 0.0) { + if (item!!.isCurrentlyDynamic && item!!.maxDurability > 0.0) { // draw durability metre val barFullLen = width val barOffset = posX @@ -133,11 +132,11 @@ class UIItemInventoryElemSimple( // set tooltip accordingly - if (tooltipShowing[hash] != true && item != null && mouseUp) { + if (tooltipShowing[hash] != true && mouseUp) { // printdbg(this, "calling INGAME.setTooltipMessage by $hash") val grey = App.fontGame.toColorCode(11, 11, 11) - val itemIDstr = "\n$grey(${item?.originalID}${if (item?.originalID == item?.dynamicID) "" else "/${item?.dynamicID}"})" + val itemIDstr = "\n$grey(${item?.originalID}${if (item?.isCurrentlyDynamic == true) "/${item?.dynamicID}" else ""})" val nameStr0 = if (item?.nameSecondary?.isNotBlank() == true) "${item?.name}\n$grey${item?.nameSecondary}" else "${item?.name}" val nameStr = if (Gdx.input.isKeyPressed(Input.Keys.ALT_LEFT)) nameStr0 + itemIDstr else nameStr0 val descStr = Lang.getOrNull("TOOLTIP_${item?.originalID}")?.replace("\n","\n$grey") diff --git a/src/net/torvald/terrarum/ui/UIItemInventoryElemWide.kt b/src/net/torvald/terrarum/ui/UIItemInventoryElemWide.kt index 47916eb92..028783ecf 100644 --- a/src/net/torvald/terrarum/ui/UIItemInventoryElemWide.kt +++ b/src/net/torvald/terrarum/ui/UIItemInventoryElemWide.kt @@ -168,7 +168,7 @@ class UIItemInventoryElemWide( // printdbg(this, "calling INGAME.setTooltipMessage by $hash") val grey = App.fontGame.toColorCode(11, 11, 11) - val itemIDstr = "\n$grey(${item?.originalID}${if (item?.originalID == item?.dynamicID) "" else "/${item?.dynamicID}"})" + val itemIDstr = "\n$grey(${item?.originalID}${if (item?.isCurrentlyDynamic == true) "/${item?.dynamicID}" else ""})" val nameStr0 = if (item?.nameSecondary?.isNotBlank() == true) "${item?.name}\n$grey${item?.nameSecondary}" else "${item?.name}" val nameStr = if (Gdx.input.isKeyPressed(Input.Keys.ALT_LEFT)) nameStr0 + itemIDstr else nameStr0 val descStr = Lang.getOrNull("TOOLTIP_${item?.originalID}")?.replace("\n","\n$grey")