diff --git a/assets/mods/basegame/items/itemid.csv b/assets/mods/basegame/items/itemid.csv index fa7775389..6da09e97f 100644 --- a/assets/mods/basegame/items/itemid.csv +++ b/assets/mods/basegame/items/itemid.csv @@ -9,6 +9,9 @@ id;classname 9;net.torvald.terrarum.modulebasegame.gameitems.WireCutterAll 10;net.torvald.terrarum.modulebasegame.gameitems.ItemTypewriter +256;net.torvald.terrarum.modulebasegame.gameitems.ItemSwingingDoorOak +257;net.torvald.terrarum.modulebasegame.gameitems.ItemSwingingDoorEbony +258;net.torvald.terrarum.modulebasegame.gameitems.ItemSwingingDoorBirch +259;net.torvald.terrarum.modulebasegame.gameitems.ItemSwingingDoorRosewood -999998;net.torvald.terrarum.modulebasegame.gameitems.ItemTestDoor 999999;net.torvald.terrarum.modulebasegame.gameitems.ItemTapestry diff --git a/src/net/torvald/terrarum/modulebasegame/gameactors/PlayerBuilderSigrid.kt b/src/net/torvald/terrarum/modulebasegame/gameactors/PlayerBuilderSigrid.kt index 4062e68f0..c9c27df2e 100644 --- a/src/net/torvald/terrarum/modulebasegame/gameactors/PlayerBuilderSigrid.kt +++ b/src/net/torvald/terrarum/modulebasegame/gameactors/PlayerBuilderSigrid.kt @@ -93,6 +93,11 @@ object PlayerBuilderSigrid { inventory.add("item@basegame:8", 9995) // power source inventory.add("item@basegame:9", 1) // wire cutter + inventory.add("item@basegame:256", 995) // doors + inventory.add("item@basegame:257", 995) // doors + inventory.add("item@basegame:258", 995) // doors + inventory.add("item@basegame:259", 995) // doors + WireCodex.getAll().forEach { try { inventory.add(it.id, 9995) diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSwingingDoorOak.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSwingingDoorOak.kt new file mode 100644 index 000000000..5b3a06b01 --- /dev/null +++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSwingingDoorOak.kt @@ -0,0 +1,110 @@ +package net.torvald.terrarum.modulebasegame.gameitems + +import com.badlogic.gdx.graphics.g2d.TextureRegion +import net.torvald.terrarum.CommonResourcePool +import net.torvald.terrarum.gameitems.ItemID +import net.torvald.terrarum.itemproperties.Material +import net.torvald.terrarum.modulebasegame.gameactors.* + +/** + * Created by minjaesong on 2022-07-15. + */ +class ItemSwingingDoorOak(originalID: ItemID) : + FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureSwingingDoorOak") { + + override var dynamicID: ItemID = originalID + override val originalName = "ITEM_DOOR_OAK" + override var baseMass = 20.0 // 360[L] * 0.1 * 0.56[SpecificGravity], rounded to the nearest integer + override var stackable = true + override var inventoryCategory = Category.MISC + override val isUnique = false + override val isDynamic = false + override val material = Material() + override val itemImage: TextureRegion + get() = CommonResourcePool.getAsTextureRegion("itemplaceholder_16") + override var baseToolSize: Double? = baseMass + + init { + equipPosition = EquipPosition.HAND_GRIP + } + + override val makeFixture: () -> FixtureBase = { + FixtureSwingingDoorOak() + } + +} + +class ItemSwingingDoorEbony(originalID: ItemID) : + FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureSwingingDoorEbony") { + + override var dynamicID: ItemID = originalID + override val originalName = "ITEM_DOOR_EBONY" + override var baseMass = 30.0 // 360[L] * 0.1 * 0.82[SpecificGravity], rounded to the nearest integer + override var stackable = true + override var inventoryCategory = Category.MISC + override val isUnique = false + override val isDynamic = false + override val material = Material() + override val itemImage: TextureRegion + get() = CommonResourcePool.getAsTextureRegion("itemplaceholder_16") + override var baseToolSize: Double? = baseMass + + init { + equipPosition = EquipPosition.HAND_GRIP + } + + override val makeFixture: () -> FixtureBase = { + FixtureSwingingDoorEbony() + } + +} + +class ItemSwingingDoorBirch(originalID: ItemID) : + FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureSwingingDoorBirch") { + + override var dynamicID: ItemID = originalID + override val originalName = "ITEM_DOOR_BIRCH" + override var baseMass = 17.0 // 360[L] * 0.1 * 0.48[SpecificGravity], rounded to the nearest integer + override var stackable = true + override var inventoryCategory = Category.MISC + override val isUnique = false + override val isDynamic = false + override val material = Material() + override val itemImage: TextureRegion + get() = CommonResourcePool.getAsTextureRegion("itemplaceholder_16") + override var baseToolSize: Double? = baseMass + + init { + equipPosition = EquipPosition.HAND_GRIP + } + + override val makeFixture: () -> FixtureBase = { + FixtureSwingingDoorBirch() + } + +} + +class ItemSwingingDoorRosewood(originalID: ItemID) : + FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureSwingingDoorRosewood") { + + override var dynamicID: ItemID = originalID + override val originalName = "ITEM_DOOR_ROSEWOOD" + override var baseMass = 24.0 // 360[L] * 0.1 * 0.68[SpecificGravity], rounded to the nearest integer + override var stackable = true + override var inventoryCategory = Category.MISC + override val isUnique = false + override val isDynamic = false + override val material = Material() + override val itemImage: TextureRegion + get() = CommonResourcePool.getAsTextureRegion("itemplaceholder_16") + override var baseToolSize: Double? = baseMass + + init { + equipPosition = EquipPosition.HAND_GRIP + } + + override val makeFixture: () -> FixtureBase = { + FixtureSwingingDoorRosewood() + } + +} diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTestDoor.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTestDoor.kt deleted file mode 100644 index fefa0acb3..000000000 --- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTestDoor.kt +++ /dev/null @@ -1,35 +0,0 @@ -package net.torvald.terrarum.modulebasegame.gameitems - -import com.badlogic.gdx.graphics.g2d.TextureRegion -import net.torvald.terrarum.CommonResourcePool -import net.torvald.terrarum.gameitems.ItemID -import net.torvald.terrarum.itemproperties.Material -import net.torvald.terrarum.modulebasegame.gameactors.FixtureBase -import net.torvald.terrarum.modulebasegame.gameactors.FixtureSwingingDoorRosewood - -/** - * Created by minjaesong on 2022-07-15. - */ -class ItemTestDoor(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureSwingingDoorRosewood") { - - override var dynamicID: ItemID = originalID - override val originalName = "ITEM_DOOR" - override var baseMass = 12.0 - override var stackable = true - override var inventoryCategory = Category.MISC - override val isUnique = false - override val isDynamic = false - override val material = Material() - override val itemImage: TextureRegion - get() = CommonResourcePool.getAsTextureRegion("itemplaceholder_16") - override var baseToolSize: Double? = baseMass - - init { - equipPosition = EquipPosition.HAND_GRIP - } - - override val makeFixture: () -> FixtureBase = { - FixtureSwingingDoorRosewood() - } - -} \ No newline at end of file