fix: getGradientCloud not sampling correct coord

This commit is contained in:
minjaesong
2023-10-03 02:47:10 +09:00
parent 1ebca0de66
commit cd2043b044
25 changed files with 140 additions and 164 deletions

View File

@@ -39,11 +39,8 @@ open class FixtureItemBase(originalID: ItemID, val fixtureClassName: String) : G
@Transient private var ghostInit = AtomicBoolean(false)
override var dynamicID: ItemID = originalID
override val originalName = "FIXTUREBASE"
override var baseMass = 1.0
override var stackable = true
override var inventoryCategory = Category.MISC
override val isUnique = false
override val isDynamic = false
override val materialId = ""

View File

@@ -11,11 +11,8 @@ import net.torvald.terrarum.modulebasegame.gameactors.FixtureLogicSignalEmitter
class ItemLogicSignalEmitter(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureLogicSignalEmitter") {
override var dynamicID: ItemID = originalID
override val originalName = "ITEM_LOGIC_SIGNAL_EMITTER"
override var baseMass = FixtureLogicSignalEmitter.MASS
override var stackable = true
override var inventoryCategory = Category.MISC
override val isUnique = false
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
@@ -25,6 +22,7 @@ class ItemLogicSignalEmitter(originalID: ItemID) : FixtureItemBase(originalID, "
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_LOGIC_SIGNAL_EMITTER"
}
override fun effectWhileEquipped(actor: ActorWithBody, delta: Float) {

View File

@@ -13,11 +13,8 @@ import net.torvald.terrarum.modulebasegame.gameactors.FixtureTikiTorch
class ItemStorageChest(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureStorageChest") {
override var dynamicID: ItemID = originalID
override val originalName = "ITEM_STORAGE_CHEST"
override var baseMass = FixtureTikiTorch.MASS
override var stackable = true
override var inventoryCategory = Category.MISC
override val isUnique = false
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
@@ -26,6 +23,7 @@ class ItemStorageChest(originalID: ItemID) : FixtureItemBase(originalID, "net.to
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_STORAGE_CHEST"
}
}

View File

@@ -13,11 +13,8 @@ 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 materialId = ""
override val itemImage: TextureRegion
@@ -26,6 +23,7 @@ class ItemSwingingDoorOak(originalID: ItemID) :
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_DOOR_OAK"
}
@Transient override val makeFixture: () -> FixtureBase = {
@@ -38,11 +36,8 @@ 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 materialId = ""
override val itemImage: TextureRegion
@@ -51,6 +46,7 @@ class ItemSwingingDoorEbony(originalID: ItemID) :
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_DOOR_EBONY"
}
@Transient override val makeFixture: () -> FixtureBase = {
@@ -63,11 +59,8 @@ 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 materialId = ""
override val itemImage: TextureRegion
@@ -76,6 +69,7 @@ class ItemSwingingDoorBirch(originalID: ItemID) :
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_DOOR_BIRCH"
}
@Transient override val makeFixture: () -> FixtureBase = {
@@ -88,11 +82,8 @@ 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 materialId = ""
override val itemImage: TextureRegion
@@ -101,6 +92,7 @@ class ItemSwingingDoorRosewood(originalID: ItemID) :
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_DOOR_ROSEWOOD"
}
@Transient override val makeFixture: () -> FixtureBase = {

View File

@@ -15,11 +15,8 @@ import net.torvald.terrarum.modulebasegame.gameactors.FixtureTapestry
class ItemTapestry(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureTapestry") {
override var dynamicID: ItemID = originalID
override val originalName = "ITEM_TAPESTRY"
override var baseMass = 6.0
override var stackable = true
override var inventoryCategory = Category.MISC
override val isUnique = false
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
@@ -28,6 +25,7 @@ class ItemTapestry(originalID: ItemID) : FixtureItemBase(originalID, "net.torval
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_TAPESTRY"
}
@Transient override val makeFixture: () -> FixtureBase = {

View File

@@ -11,11 +11,8 @@ import net.torvald.terrarum.modulebasegame.gameactors.FixtureTikiTorch
class ItemTikiTorch(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureTikiTorch") {
override var dynamicID: ItemID = originalID
override val originalName = "ITEM_TIKI_TORCH"
override var baseMass = FixtureTikiTorch.MASS
override var stackable = true
override var inventoryCategory = Category.MISC
override val isUnique = false
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
@@ -25,6 +22,7 @@ class ItemTikiTorch(originalID: ItemID) : FixtureItemBase(originalID, "net.torva
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_TIKI_TORCH"
}
}

View File

@@ -11,11 +11,8 @@ import net.torvald.terrarum.modulebasegame.gameactors.FixtureTikiTorch
class ItemTypewriter(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureTypewriter") {
override var dynamicID: ItemID = originalID
override val originalName = "ITEM_TYPEWRITER"
override var baseMass = FixtureTikiTorch.MASS
override var stackable = true
override var inventoryCategory = Category.MISC
override val isUnique = false
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
@@ -25,6 +22,7 @@ class ItemTypewriter(originalID: ItemID) : FixtureItemBase(originalID, "net.torv
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_TYPEWRITER"
}
}

View File

@@ -10,11 +10,8 @@ import net.torvald.terrarum.gameitems.ItemID
class ItemWallCalendar(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureWallCalendar") {
override var dynamicID: ItemID = originalID
override val originalName = "ITEM_CALENDAR"
override var baseMass = 1.0
override var stackable = true
override var inventoryCategory = Category.MISC
override val isUnique = false
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
@@ -24,6 +21,7 @@ class ItemWallCalendar(originalID: ItemID) : FixtureItemBase(originalID, "net.to
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_CALENDAR"
}
}

View File

@@ -9,11 +9,8 @@ import net.torvald.terrarum.gameitems.ItemID
class ItemWorkbench(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureWorkbench") {
override val originalName = "ITEM_WORKBENCH"
override var baseMass = 20.0
override var stackable = true
override var inventoryCategory = Category.MISC
override val isUnique = false
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
@@ -23,6 +20,7 @@ class ItemWorkbench(originalID: ItemID) : FixtureItemBase(originalID, "net.torva
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_WORKBENCH"
}

View File

@@ -11,11 +11,8 @@ import net.torvald.terrarum.modulebasegame.gameactors.FixtureTikiTorch
class ItemWorldPortal(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulebasegame.gameactors.FixtureWorldPortal") {
override var dynamicID: ItemID = originalID
override val originalName = "ITEM_WORLD_PORTAL"
override var baseMass = 6000.0
override var stackable = true
override var inventoryCategory = Category.MISC
override val isUnique = false
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
@@ -25,6 +22,7 @@ class ItemWorldPortal(originalID: ItemID) : FixtureItemBase(originalID, "net.tor
init {
equipPosition = EquipPosition.HAND_GRIP
originalName = "ITEM_WORLD_PORTAL"
}
}

View File

@@ -112,11 +112,8 @@ object PickaxeCore {
class PickaxeCopper(originalID: ItemID) : GameItem(originalID) {
internal constructor() : this("-uninitialised-")
override val originalName = "ITEM_PICK_COPPER"
override var baseToolSize: Double? = BASE_MASS_AND_SIZE
override var stackable = true
override var inventoryCategory = Category.TOOL
override val isUnique = false
override val isDynamic = true
override val materialId = "CUPR"
override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE
@@ -124,10 +121,11 @@ class PickaxeCopper(originalID: ItemID) : GameItem(originalID) {
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(0,0)
init {
super.equipPosition = GameItem.EquipPosition.HAND_GRIP
super.maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
super.durability = maxDurability.toFloat()
super.tags.add("PICK")
equipPosition = GameItem.EquipPosition.HAND_GRIP
maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
durability = maxDurability.toFloat()
tags.add("PICK")
originalName = "ITEM_PICK_COPPER"
}
override fun startPrimaryUse(actor: ActorWithBody, delta: Float) =
@@ -141,11 +139,8 @@ class PickaxeCopper(originalID: ItemID) : GameItem(originalID) {
class PickaxeIron(originalID: ItemID) : GameItem(originalID) {
internal constructor() : this("-uninitialised-")
override val originalName = "ITEM_PICK_IRON"
override var baseToolSize: Double? = BASE_MASS_AND_SIZE
override var stackable = true
override var inventoryCategory = Category.TOOL
override val isUnique = false
override val isDynamic = true
override val materialId = "IRON"
override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE
@@ -153,10 +148,11 @@ class PickaxeIron(originalID: ItemID) : GameItem(originalID) {
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(1,0)
init {
super.equipPosition = GameItem.EquipPosition.HAND_GRIP
super.maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
super.durability = maxDurability.toFloat()
super.tags.add("PICK")
equipPosition = GameItem.EquipPosition.HAND_GRIP
maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
durability = maxDurability.toFloat()
tags.add("PICK")
originalName = "ITEM_PICK_IRON"
}
override fun startPrimaryUse(actor: ActorWithBody, delta: Float) =
@@ -170,11 +166,8 @@ class PickaxeIron(originalID: ItemID) : GameItem(originalID) {
class PickaxeSteel(originalID: ItemID) : GameItem(originalID) {
internal constructor() : this("-uninitialised-")
override val originalName = "ITEM_PICK_STEEL"
override var baseToolSize: Double? = BASE_MASS_AND_SIZE
override var stackable = true
override var inventoryCategory = Category.TOOL
override val isUnique = false
override val isDynamic = true
override val materialId = "STAL"
override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE
@@ -182,10 +175,11 @@ class PickaxeSteel(originalID: ItemID) : GameItem(originalID) {
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(2,0)
init {
super.equipPosition = GameItem.EquipPosition.HAND_GRIP
super.maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
super.durability = maxDurability.toFloat()
super.tags.add("PICK")
equipPosition = GameItem.EquipPosition.HAND_GRIP
maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
durability = maxDurability.toFloat()
tags.add("PICK")
originalName = "ITEM_PICK_STEEL"
}
override fun startPrimaryUse(actor: ActorWithBody, delta: Float) =

View File

@@ -118,11 +118,8 @@ object SledgehammerCore {
class SledgehammerCopper(originalID: ItemID) : GameItem(originalID) {
internal constructor() : this("-uninitialised-")
override val originalName = "ITEM_SLEDGEHAMMER_COPPER"
override var baseToolSize: Double? = BASE_MASS_AND_SIZE
override var stackable = true
override var inventoryCategory = Category.TOOL
override val isUnique = false
override val isDynamic = true
override val materialId = "CUPR"
override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE
@@ -130,10 +127,11 @@ class SledgehammerCopper(originalID: ItemID) : GameItem(originalID) {
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(6,0)
init {
super.equipPosition = GameItem.EquipPosition.HAND_GRIP
super.maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
super.durability = maxDurability.toFloat()
super.tags.add("HAMR")
equipPosition = GameItem.EquipPosition.HAND_GRIP
maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
durability = maxDurability.toFloat()
tags.add("SLEDGEHAMMER")
originalName = "ITEM_SLEDGEHAMMER_COPPER"
}
override fun startPrimaryUse(actor: ActorWithBody, delta: Float) =
@@ -144,11 +142,8 @@ class SledgehammerCopper(originalID: ItemID) : GameItem(originalID) {
class SledgehammerIron(originalID: ItemID) : GameItem(originalID) {
internal constructor() : this("-uninitialised-")
override val originalName = "ITEM_SLEDGEHAMMER_IRON"
override var baseToolSize: Double? = BASE_MASS_AND_SIZE
override var stackable = true
override var inventoryCategory = Category.TOOL
override val isUnique = false
override val isDynamic = true
override val materialId = "IRON"
override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE
@@ -156,10 +151,11 @@ class SledgehammerIron(originalID: ItemID) : GameItem(originalID) {
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(7,0)
init {
super.equipPosition = GameItem.EquipPosition.HAND_GRIP
super.maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
super.durability = maxDurability.toFloat()
super.tags.add("HAMR")
equipPosition = GameItem.EquipPosition.HAND_GRIP
maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
durability = maxDurability.toFloat()
tags.add("SLEDGEHAMMER")
originalName = "ITEM_SLEDGEHAMMER_IRON"
}
override fun startPrimaryUse(actor: ActorWithBody, delta: Float) =
@@ -170,11 +166,8 @@ class SledgehammerIron(originalID: ItemID) : GameItem(originalID) {
class SledgehammerSteel(originalID: ItemID) : GameItem(originalID) {
internal constructor() : this("-uninitialised-")
override val originalName = "ITEM_SLEDGEHAMMER_STEEL"
override var baseToolSize: Double? = BASE_MASS_AND_SIZE
override var stackable = true
override var inventoryCategory = Category.TOOL
override val isUnique = false
override val isDynamic = true
override val materialId = "STAL"
override var baseMass = material.density.toDouble() / MaterialCodex["IRON"].density * BASE_MASS_AND_SIZE
@@ -182,10 +175,11 @@ class SledgehammerSteel(originalID: ItemID) : GameItem(originalID) {
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(8,0)
init {
super.equipPosition = GameItem.EquipPosition.HAND_GRIP
super.maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
super.durability = maxDurability.toFloat()
super.tags.add("HAMR")
equipPosition = GameItem.EquipPosition.HAND_GRIP
maxDurability = (TOOL_DURABILITY_BASE * material.enduranceMod).roundToInt()
durability = maxDurability.toFloat()
tags.add("SLEDGEHAMMER")
originalName = "ITEM_SLEDGEHAMMER_STEEL"
}
override fun startPrimaryUse(actor: ActorWithBody, delta: Float) =

View File

@@ -85,19 +85,19 @@ object WireCutterBase {
class WireCutterAll(originalID: ItemID) : GameItem(originalID) {
override var dynamicID: ItemID = originalID
override val originalName = "ITEM_WIRE_CUTTER"
override var baseMass = 0.1
override var baseToolSize: Double? = baseMass
override var stackable = false
override var inventoryCategory = Category.TOOL
override val isUnique = true
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(1, 3)
init {
super.equipPosition = GameItem.EquipPosition.HAND_GRIP
stackable = false
isUnique = true
equipPosition = GameItem.EquipPosition.HAND_GRIP
originalName = "ITEM_WIRE_CUTTER"
}
override fun startPrimaryUse(actor: ActorWithBody, delta: Float) =

View File

@@ -12,11 +12,8 @@ import net.torvald.terrarum.modulebasegame.TerrarumIngame
class WireGraphDebugger(originalID: ItemID) : GameItem(originalID) {
override val originalName = "WIRE_DEBUGGER"
override var baseToolSize: Double? = PickaxeCore.BASE_MASS_AND_SIZE
override var stackable = false
override var inventoryCategory = Category.TOOL
override val isUnique = true
override val isDynamic = false
override val materialId = "CUPR"
override var baseMass = 2.0
@@ -24,8 +21,11 @@ class WireGraphDebugger(originalID: ItemID) : GameItem(originalID) {
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(2,3)
init {
super.equipPosition = GameItem.EquipPosition.HAND_GRIP
super.name = "Wire Debugger"
equipPosition = GameItem.EquipPosition.HAND_GRIP
name = "Wire Debugger"
stackable = false
isUnique = true
originalName = "WIRE_DEBUGGER"
}
private val sb = StringBuilder()

View File

@@ -15,19 +15,17 @@ import net.torvald.terrarum.itemproperties.Material
class WirePieceSignalWire(originalID: ItemID, private val atlasID: String, private val sheetX: Int, private val sheetY: Int) : GameItem(originalID) {
override var dynamicID: ItemID = originalID
override val originalName = "ITEM_WIRE"
override var baseMass = 0.001
override var baseToolSize: Double? = null
override var stackable = true
override var inventoryCategory = Category.WIRE
override val isUnique = false
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = CommonResourcePool.getAsItemSheet(atlasID).get(sheetX, sheetY)
init {
super.equipPosition = GameItem.EquipPosition.HAND_GRIP
equipPosition = GameItem.EquipPosition.HAND_GRIP
originalName = "ITEM_WIRE"
}
override fun startPrimaryUse(actor: ActorWithBody, delta: Float): Long {