diff --git a/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemHomeComputer.kt b/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemHomeComputer.kt
index 4ad955280..af645bfee 100644
--- a/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemHomeComputer.kt
+++ b/ModuleComputers/src/net/torvald/terrarum/modulecomputers/gameitems/ItemHomeComputer.kt
@@ -15,27 +15,14 @@ import net.torvald.terrarum.modulecomputers.gameactors.FixtureHomeComputer
/**
* Created by minjaesong on 2021-12-04.
*/
-class ItemHomeComputer(originalID: ItemID) : GameItem(originalID) {
+class ItemHomeComputer(originalID: ItemID) : FixtureItemBase(originalID, "net.torvald.terrarum.modulecomputers.gameactors.FixtureHomeComputer") {
override var dynamicID: ItemID = originalID
override var baseMass = 20.0
- override var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = FixtureItemBase.getItemImageFromSheet("dwarventech", "sprites/fixtures/desktop_computer.tga", TerrarumAppConfiguration.TILE_SIZE, TerrarumAppConfiguration.TILE_SIZE)
override var baseToolSize: Double? = baseMass
-
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_DESKTOP_COMPUTER"
- }
-
- override fun startPrimaryUse(actor: ActorWithBody, delta: Float) = mouseInInteractableRange(actor) { _, _, mtx, mty ->
- val item = FixtureHomeComputer()
-
- if (item.spawn(mtx, mty, if (actor is IngamePlayer) actor.uuid else null)) 1L else -1L
- // return true when placed, false when cannot be placed
- }
+ override var originalName = "ITEM_DESKTOP_COMPUTER"
}
\ No newline at end of file
diff --git a/assets/graphics/gui/inventory/category.tga b/assets/graphics/gui/inventory/category.tga
index 75335b64e..e5f705d36 100755
--- a/assets/graphics/gui/inventory/category.tga
+++ b/assets/graphics/gui/inventory/category.tga
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:259f38d2a8029815c4b3246e5dfdf72e9a21cebaca72a98b1cc720721ad94d97
+oid sha256:1f569072d3fe385e6a7867b1ba1f0aab52635e04dad731f0655618d39c665f4b
size 240018
diff --git a/assets/mods/basegame/locales/en/game.json b/assets/mods/basegame/locales/en/game.json
index edabce7a9..810b35a38 100644
--- a/assets/mods/basegame/locales/en/game.json
+++ b/assets/mods/basegame/locales/en/game.json
@@ -1,5 +1,6 @@
{
"CONTEXT_GENERATOR_SEED": "Seed",
+ "CONTEXT_ITEM_FIXTURES": "Fixtures",
"CONTEXT_ITEM_MAP": "Map",
"CONTEXT_ITEM_TOOL_PLURAL": "Tools",
"CONTEXT_PLACE_COORDINATE": "Coordinate",
diff --git a/assets/mods/basegame/locales/koKR/game.json b/assets/mods/basegame/locales/koKR/game.json
index 79cd4087c..11ba41f37 100644
--- a/assets/mods/basegame/locales/koKR/game.json
+++ b/assets/mods/basegame/locales/koKR/game.json
@@ -1,5 +1,6 @@
{
"CONTEXT_GENERATOR_SEED": "시드",
+ "CONTEXT_ITEM_FIXTURES": "기구",
"CONTEXT_ITEM_MAP": "지도",
"CONTEXT_ITEM_TOOL_PLURAL": "도구",
"CONTEXT_PLACE_COORDINATE": "좌표",
diff --git a/src/net/torvald/terrarum/IngameInstance.kt b/src/net/torvald/terrarum/IngameInstance.kt
index 11c28a86f..4725395fb 100644
--- a/src/net/torvald/terrarum/IngameInstance.kt
+++ b/src/net/torvald/terrarum/IngameInstance.kt
@@ -177,6 +177,11 @@ open class IngameInstance(val batch: FlippingSpriteBatch, val isMultiplayer: Boo
forceAddActor(it)
}
+ blockMarkingActor.let {
+ it.unsetGhost()
+ it.setGhostColourNone()
+ }
+
gameInitialised = true
}
diff --git a/src/net/torvald/terrarum/TerrarumAppConfiguration.kt b/src/net/torvald/terrarum/TerrarumAppConfiguration.kt
index e9d8bf313..e04b246fc 100644
--- a/src/net/torvald/terrarum/TerrarumAppConfiguration.kt
+++ b/src/net/torvald/terrarum/TerrarumAppConfiguration.kt
@@ -39,7 +39,7 @@ along with this program. If not, see .
# Windows -- C:\Users\\AppData\Roaming\Terrarum
# macOS -- /Users//Library/Application Support/Terrarum
# Linux -- /home//.Terrarum
-# Please refrain from removing 'basegame' on the load order -- it may render the game unpalyable.
+# Please refrain from removing 'basegame' on the load order -- it may render the game unplayable.
basegame
"""
@@ -66,6 +66,7 @@ basegame
// Commit counts up to the Release 0.3.0: 2259
// Commit counts up to the Release 0.3.1: 2278
// Commit counts up to the Release 0.3.2: 2732
+ // Commit counts up to the Release 0.3.3: ????
const val VERSION_TAG: String = ""
diff --git a/src/net/torvald/terrarum/UIItemInventoryCatBar.kt b/src/net/torvald/terrarum/UIItemInventoryCatBar.kt
index 40e45b73c..7997f6c9c 100644
--- a/src/net/torvald/terrarum/UIItemInventoryCatBar.kt
+++ b/src/net/torvald/terrarum/UIItemInventoryCatBar.kt
@@ -26,30 +26,33 @@ class UIItemInventoryCatBar(
}
internal val catIcons: TextureRegionPack = CommonResourcePool.getAsTextureRegionPack("inventory_category")
- internal val catArrangement: IntArray = intArrayOf(9,6,7,1,0,2,3,4,5,8)
+ private val catArrangement: IntArray = intArrayOf(9,6,7,1,0,2,1_011,3,4,5,8) // icon order
internal val catIconsMeaning = listOf( // sortedBy: catArrangement
- arrayOf(GameItem.Category.WEAPON),
- arrayOf(GameItem.Category.TOOL, GameItem.Category.WIRE),
- arrayOf(GameItem.Category.ARMOUR),
- arrayOf(GameItem.Category.GENERIC),
- arrayOf(GameItem.Category.POTION),
- arrayOf(GameItem.Category.MAGIC),
- arrayOf(GameItem.Category.BLOCK),
- arrayOf(GameItem.Category.WALL),
- arrayOf(GameItem.Category.MISC),
- arrayOf(CAT_ALL)
+ arrayOf(CAT_ALL),
+ arrayOf(GameItem.Category.BLOCK),
+ arrayOf(GameItem.Category.WALL),
+ arrayOf(GameItem.Category.TOOL, GameItem.Category.WIRE),
+ arrayOf(GameItem.Category.WEAPON),
+ arrayOf(GameItem.Category.ARMOUR),
+ arrayOf(GameItem.Category.FIXTURE),
+ arrayOf(GameItem.Category.GENERIC),
+ arrayOf(GameItem.Category.POTION),
+ arrayOf(GameItem.Category.MAGIC),
+ arrayOf(GameItem.Category.MISC),
)
+
internal val catIconsLabels = listOf(
- { Lang["GAME_INVENTORY_WEAPONS"] },
+ { Lang["MENU_LABEL_ALL"] },
+ { Lang["GAME_INVENTORY_BLOCKS"] },
+ { Lang["GAME_INVENTORY_WALLS"] },
{ Lang["CONTEXT_ITEM_TOOL_PLURAL"] },
+ { Lang["GAME_INVENTORY_WEAPONS"] },
{ Lang["CONTEXT_ITEM_ARMOR"] },
+ { Lang["CONTEXT_ITEM_FIXTURES"] },
{ Lang["GAME_INVENTORY_INGREDIENTS"] },
{ Lang["GAME_INVENTORY_POTIONS"] },
{ Lang["CONTEXT_ITEM_MAGIC"] },
- { Lang["GAME_INVENTORY_BLOCKS"] },
- { Lang["GAME_INVENTORY_WALLS"] },
{ Lang["GAME_GENRE_MISC"] },
- { Lang["MENU_LABEL_ALL"] },
)
@@ -60,11 +63,11 @@ class UIItemInventoryCatBar(
private val mainButtons: Array
private val buttonGapSize = (width.toFloat() - (catArrangement.size * catIcons.tileW)) / (catArrangement.size)
/** raw order */
- private var selectedIndex = 0 // default to ALL
+ var selectedIndex = 0 // default to ALL
private set
/** re-arranged order */
- val selectedIcon: Int
- get() = catArrangement[selectedIndex]
+// val selectedIcon: Int
+// get() = catArrangement[selectedIndex]
private val sideButtons: Array
@@ -75,9 +78,13 @@ class UIItemInventoryCatBar(
val iconPosX = ((buttonGapSize / 2) + index * (catIcons.tileW + buttonGapSize)).roundToInt()
val iconPosY = 0
+ val iconIndex = catArrangement[index]
+ val iconIndexX = iconIndex % 1000
+ val iconIndexY = iconIndex / 1000
+
UIItemImageButton(
inventoryUI,
- catIcons.get(catArrangement[index], 0),
+ catIcons.get(iconIndexX, iconIndexY),
activeBackCol = Color(0),
backgroundCol = Color(0),
highlightBackCol = Color(0),
@@ -291,7 +298,7 @@ class UIItemInventoryCatBar(
// label
batch.color = Color.WHITE
- catIconsLabels[selectedIcon]().let {
+ catIconsLabels[selectedIndex]().let {
App.fontGame.draw(batch, it, posX + ((width - App.fontGame.getWidth(it)) / 2), posY + highlighterYPos + 4)
}
}
diff --git a/src/net/torvald/terrarum/gameitems/GameItem.kt b/src/net/torvald/terrarum/gameitems/GameItem.kt
index 17a30d310..c98b6d201 100644
--- a/src/net/torvald/terrarum/gameitems/GameItem.kt
+++ b/src/net/torvald/terrarum/gameitems/GameItem.kt
@@ -52,7 +52,7 @@ abstract class GameItem(val originalID: ItemID) : Comparable, Cloneabl
* - `BLOCK_AIR` – Prints out `Lang.get("BLOCK_AIR")`
* - `BLOCK_AIR>>=BLOCK_WALL_NAME_TEMPLATE` – Prints out `Formatter().format(Lang.get("BLOCK_WALL_NAME_TEMPLATE"), Lang.get("BLOCK_AIR")).toString()`
*/
- @Transient var originalName: String = ""
+ @Transient open var originalName: String = ""
var newName: String = ""
@@ -101,16 +101,8 @@ abstract class GameItem(val originalID: ItemID) : Comparable, Cloneabl
/**
* Where to equip the item.
- *
- * Can't use 'open val' as GSON doesn't like that. Initialise this property like:
- *
- * ```
- * init {
- * equipPosition = EquipPosition.HAND_GRIP
- * }
- * ```
*/
- @Transient var equipPosition: Int = EquipPosition.NULL
+ @Transient open var equipPosition: Int = EquipPosition.NULL
internal val material: Material
get() = MaterialCodex.getOrDefault(materialId)
diff --git a/src/net/torvald/terrarum/gameworld/GameWorld.kt b/src/net/torvald/terrarum/gameworld/GameWorld.kt
index 61f9d9459..0e709dc9e 100644
--- a/src/net/torvald/terrarum/gameworld/GameWorld.kt
+++ b/src/net/torvald/terrarum/gameworld/GameWorld.kt
@@ -154,7 +154,7 @@ open class GameWorld(
var weatherbox = Weatherbox()
init {
- weatherbox.initWith(WeatherMixer.weatherDict["generic01"]!!, 3600L)
+ weatherbox.initWith(WeatherMixer.weatherDict["generic01"] ?: WeatherMixer.DEFAULT_WEATHER, 3600L)
val currentWeather = weatherbox.currentWeather
// TEST FILL WITH RANDOM VALUES
(0..6).map { WeatherMixer.takeUniformRand(0f..1f) }.let {
diff --git a/src/net/torvald/terrarum/modulebasegame/EntryPoint.kt b/src/net/torvald/terrarum/modulebasegame/EntryPoint.kt
index b1a0a63ba..757f52693 100644
--- a/src/net/torvald/terrarum/modulebasegame/EntryPoint.kt
+++ b/src/net/torvald/terrarum/modulebasegame/EntryPoint.kt
@@ -107,8 +107,7 @@ class EntryPoint : ModuleEntryPoint() {
// }
init {
- equipPosition = EquipPosition.HAND_GRIP
- tags.addAll(tile.tags)
+ tags.addAll(tile.tags)
originalName =
if (isWall && tags.contains("UNLIT")) "${tile.nameKey}>>=BLOCK_UNLIT_TEMPLATE>>=BLOCK_WALL_NAME_TEMPLATE"
else if (isWall) "${tile.nameKey}>>=BLOCK_WALL_NAME_TEMPLATE"
diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/FixtureItemBase.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/FixtureItemBase.kt
index f40b5c35d..b80510208 100644
--- a/src/net/torvald/terrarum/modulebasegame/gameitems/FixtureItemBase.kt
+++ b/src/net/torvald/terrarum/modulebasegame/gameitems/FixtureItemBase.kt
@@ -39,10 +39,13 @@ open class FixtureItemBase(originalID: ItemID, val fixtureClassName: String) : G
@Transient private var ghostInit = AtomicBoolean(false)
override var dynamicID: ItemID = originalID
- override var baseMass = 1.0
- override var inventoryCategory = Category.MISC
+ @Transient override var baseMass = 1.0
+ @Transient override var inventoryCategory = Category.FIXTURE
override val isDynamic = false
- override val materialId = ""
+ @Transient override val materialId = ""
+
+ @Transient override var equipPosition: Int = EquipPosition.HAND_GRIP
+
/**
* Do not address the CommonResourcePool directly; just do it like this snippet:
diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemLogicSignalEmitter.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemLogicSignalEmitter.kt
index f49130704..f67ee70ac 100644
--- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemLogicSignalEmitter.kt
+++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemLogicSignalEmitter.kt
@@ -12,18 +12,13 @@ class ItemLogicSignalEmitter(originalID: ItemID) : FixtureItemBase(originalID, "
override var dynamicID: ItemID = originalID
override var baseMass = FixtureLogicSignalEmitter.MASS
- override var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = getItemImageFromSingleImage("basegame", "sprites/fixtures/signal_source.tga")
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_LOGIC_SIGNAL_EMITTER"
- }
+ override var originalName = "ITEM_LOGIC_SIGNAL_EMITTER"
override fun effectWhileEquipped(actor: ActorWithBody, delta: Float) {
super.effectWhileEquipped(actor, delta)
diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemStorageChest.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemStorageChest.kt
index 2518b096e..1556a25b7 100644
--- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemStorageChest.kt
+++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemStorageChest.kt
@@ -14,16 +14,11 @@ class ItemStorageChest(originalID: ItemID) : FixtureItemBase(originalID, "net.to
override var dynamicID: ItemID = originalID
override var baseMass = FixtureTikiTorch.MASS
- override var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = CommonResourcePool.getAsTextureRegion("itemplaceholder_48")
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_STORAGE_CHEST"
- }
+ override var originalName = "ITEM_STORAGE_CHEST"
}
\ No newline at end of file
diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSwingingDoorOak.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSwingingDoorOak.kt
index b6d1bf164..0847f5b2e 100644
--- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSwingingDoorOak.kt
+++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemSwingingDoorOak.kt
@@ -14,22 +14,12 @@ 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 var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(8,3)
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_DOOR_OAK"
- }
-
- @Transient override val makeFixture: () -> FixtureBase = {
- FixtureSwingingDoorOak()
- }
-
+ override var originalName = "ITEM_DOOR_OAK"
}
class ItemSwingingDoorEbony(originalID: ItemID) :
@@ -37,22 +27,12 @@ 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 var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(9,3)
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_DOOR_EBONY"
- }
-
- @Transient override val makeFixture: () -> FixtureBase = {
- FixtureSwingingDoorEbony()
- }
-
+ override var originalName = "ITEM_DOOR_EBONY"
}
class ItemSwingingDoorBirch(originalID: ItemID) :
@@ -60,22 +40,12 @@ 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 var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(10,3)
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_DOOR_BIRCH"
- }
-
- @Transient override val makeFixture: () -> FixtureBase = {
- FixtureSwingingDoorBirch()
- }
-
+ override var originalName = "ITEM_DOOR_BIRCH"
}
class ItemSwingingDoorRosewood(originalID: ItemID) :
@@ -83,20 +53,10 @@ 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 var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(11,3)
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_DOOR_ROSEWOOD"
- }
-
- @Transient override val makeFixture: () -> FixtureBase = {
- FixtureSwingingDoorRosewood()
- }
-
+ override var originalName = "ITEM_DOOR_ROSEWOOD"
}
diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTapestry.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTapestry.kt
index e9b1d5e8e..549a7d75a 100644
--- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTapestry.kt
+++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTapestry.kt
@@ -16,17 +16,12 @@ class ItemTapestry(originalID: ItemID) : FixtureItemBase(originalID, "net.torval
override var dynamicID: ItemID = originalID
override var baseMass = 6.0
- override var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = CommonResourcePool.getAsTextureRegion("itemplaceholder_16")
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_TAPESTRY"
- }
+ override var originalName = "ITEM_TAPESTRY"
@Transient override val makeFixture: () -> FixtureBase = {
FixtureTapestry(
diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTikiTorch.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTikiTorch.kt
index bffc7b068..db44776aa 100644
--- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTikiTorch.kt
+++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTikiTorch.kt
@@ -12,17 +12,12 @@ class ItemTikiTorch(originalID: ItemID) : FixtureItemBase(originalID, "net.torva
override var dynamicID: ItemID = originalID
override var baseMass = FixtureTikiTorch.MASS
- override var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = getItemImageFromSheet("basegame", "sprites/fixtures/tiki_torch.tga", 16, 32)
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_TIKI_TORCH"
- }
+ override var originalName = "ITEM_TIKI_TORCH"
}
\ No newline at end of file
diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTypewriter.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTypewriter.kt
index fcc941851..26b19082e 100644
--- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTypewriter.kt
+++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemTypewriter.kt
@@ -12,17 +12,12 @@ class ItemTypewriter(originalID: ItemID) : FixtureItemBase(originalID, "net.torv
override var dynamicID: ItemID = originalID
override var baseMass = FixtureTikiTorch.MASS
- override var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = getItemImageFromSheet("basegame", "sprites/fixtures/typewriter.tga", 32, 16)
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_TYPEWRITER"
- }
+ override var originalName = "ITEM_TYPEWRITER"
}
\ No newline at end of file
diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWallCalendar.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWallCalendar.kt
index cb67dace7..331215fbd 100644
--- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWallCalendar.kt
+++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWallCalendar.kt
@@ -11,17 +11,12 @@ class ItemWallCalendar(originalID: ItemID) : FixtureItemBase(originalID, "net.to
override var dynamicID: ItemID = originalID
override var baseMass = 1.0
- override var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = getItemImageFromSingleImage("basegame", "sprites/fixtures/calendar.tga")
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_CALENDAR"
- }
+ override var originalName = "ITEM_CALENDAR"
}
\ No newline at end of file
diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorkbench.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorkbench.kt
index b5872a22b..6c5bc8bd9 100644
--- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorkbench.kt
+++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorkbench.kt
@@ -10,18 +10,12 @@ class ItemWorkbench(originalID: ItemID) : FixtureItemBase(originalID, "net.torva
override var baseMass = 20.0
- override var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = getItemImageFromSingleImage("basegame", "sprites/fixtures/workbench.tga")
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_WORKBENCH"
- }
-
+ override var originalName = "ITEM_WORKBENCH"
}
\ No newline at end of file
diff --git a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorldPortal.kt b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorldPortal.kt
index 12b00305c..0e16aa7a4 100644
--- a/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorldPortal.kt
+++ b/src/net/torvald/terrarum/modulebasegame/gameitems/ItemWorldPortal.kt
@@ -12,17 +12,11 @@ class ItemWorldPortal(originalID: ItemID) : FixtureItemBase(originalID, "net.tor
override var dynamicID: ItemID = originalID
override var baseMass = 6000.0
- override var inventoryCategory = Category.MISC
override val isDynamic = false
override val materialId = ""
override val itemImage: TextureRegion
get() = CommonResourcePool.getAsItemSheet("basegame.items").get(3,3)
override var baseToolSize: Double? = baseMass
-
- init {
- equipPosition = EquipPosition.HAND_GRIP
- originalName = "ITEM_WORLD_PORTAL"
- }
-
+ override var originalName = "ITEM_WORLD_PORTAL"
}
\ No newline at end of file
diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryCells.kt b/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryCells.kt
index 24c395672..c8c4683a1 100644
--- a/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryCells.kt
+++ b/src/net/torvald/terrarum/modulebasegame/ui/UIInventoryCells.kt
@@ -72,7 +72,7 @@ internal class UIInventoryCells(
fun rebuildList() {
// App.printdbg(this, "rebuilding list")
- itemList.rebuild(full.catBar.catIconsMeaning[full.catBar.selectedIcon])
+ itemList.rebuild(full.catBar.catIconsMeaning[full.catBar.selectedIndex])
equipped.rebuild()
encumbrancePerc = full.actor.inventory.encumberment.toFloat()
@@ -81,7 +81,7 @@ internal class UIInventoryCells(
fun resetStatusAsCatChanges(oldcat: Int?, newcat: Int) {
itemList.itemPage = 0 // set scroll to zero
- itemList.rebuild(full.catBar.catIconsMeaning[full.catBar.catArrangement[newcat]]) // have to manually rebuild, too!
+ itemList.rebuild(full.catBar.catIconsMeaning[newcat]) // have to manually rebuild, too!
}
override fun updateUI(delta: Float) {
diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UINewWorld.kt b/src/net/torvald/terrarum/modulebasegame/ui/UINewWorld.kt
index e622f97ad..5fadfc6b6 100644
--- a/src/net/torvald/terrarum/modulebasegame/ui/UINewWorld.kt
+++ b/src/net/torvald/terrarum/modulebasegame/ui/UINewWorld.kt
@@ -176,6 +176,7 @@ class UINewWorld(val remoCon: UIRemoCon) : UICanvas() {
val ingame = TerrarumIngame(App.batch)
val playerDisk = existingPlayer ?: App.savegamePlayers[UILoadGovernor.playerUUID]!!.loadable()
+ playerDisk.rebuild()
val player = ReadActor.invoke(
playerDisk,
ByteArray64Reader(playerDisk.getFile(SAVEGAMEINFO)!!.bytes, Common.CHARSET)
diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UIStorageChest.kt b/src/net/torvald/terrarum/modulebasegame/ui/UIStorageChest.kt
index 0a80cc209..5c15f0bd8 100644
--- a/src/net/torvald/terrarum/modulebasegame/ui/UIStorageChest.kt
+++ b/src/net/torvald/terrarum/modulebasegame/ui/UIStorageChest.kt
@@ -131,8 +131,8 @@ internal class UIStorageChest : UICanvas(
}
private fun itemListUpdate() {
- itemListChest.rebuild(catBar.catIconsMeaning[catBar.selectedIcon])
- itemListPlayer.rebuild(catBar.catIconsMeaning[catBar.selectedIcon])
+ itemListChest.rebuild(catBar.catIconsMeaning[catBar.selectedIndex])
+ itemListPlayer.rebuild(catBar.catIconsMeaning[catBar.selectedIndex])
encumbrancePerc = getPlayerInventory().capacity.toFloat() / getPlayerInventory().maxCapacity
isEncumbered = getPlayerInventory().isEncumbered
@@ -143,13 +143,13 @@ internal class UIStorageChest : UICanvas(
itemListChest.navRemoCon.gridModeButtons[0].highlighted = !yes
itemListChest.navRemoCon.gridModeButtons[1].highlighted = yes
itemListChest.itemPage = 0
- itemListChest.rebuild(catBar.catIconsMeaning[catBar.selectedIcon])
+ itemListChest.rebuild(catBar.catIconsMeaning[catBar.selectedIndex])
itemListPlayer.isCompactMode = yes
itemListPlayer.navRemoCon.gridModeButtons[0].highlighted = !yes
itemListPlayer.navRemoCon.gridModeButtons[1].highlighted = yes
itemListPlayer.itemPage = 0
- itemListPlayer.rebuild(catBar.catIconsMeaning[catBar.selectedIcon])
+ itemListPlayer.rebuild(catBar.catIconsMeaning[catBar.selectedIndex])
itemListUpdate()
}
diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UIWorldPortalCargo.kt b/src/net/torvald/terrarum/modulebasegame/ui/UIWorldPortalCargo.kt
index 802075eaf..9cc4b143d 100644
--- a/src/net/torvald/terrarum/modulebasegame/ui/UIWorldPortalCargo.kt
+++ b/src/net/torvald/terrarum/modulebasegame/ui/UIWorldPortalCargo.kt
@@ -123,8 +123,8 @@ class UIWorldPortalCargo(val full: UIWorldPortal) : UICanvas(), HasInventory {
}
private fun itemListUpdate() {
- itemListChest.rebuild(catBar.catIconsMeaning[catBar.selectedIcon])
- itemListPlayer.rebuild(catBar.catIconsMeaning[catBar.selectedIcon])
+ itemListChest.rebuild(catBar.catIconsMeaning[catBar.selectedIndex])
+ itemListPlayer.rebuild(catBar.catIconsMeaning[catBar.selectedIndex])
encumbrancePerc = getPlayerInventory().capacity.toFloat() / getPlayerInventory().maxCapacity
isEncumbered = getPlayerInventory().isEncumbered
@@ -135,13 +135,13 @@ class UIWorldPortalCargo(val full: UIWorldPortal) : UICanvas(), HasInventory {
itemListChest.navRemoCon.gridModeButtons[0].highlighted = !yes
itemListChest.navRemoCon.gridModeButtons[1].highlighted = yes
itemListChest.itemPage = 0
- itemListChest.rebuild(catBar.catIconsMeaning[catBar.selectedIcon])
+ itemListChest.rebuild(catBar.catIconsMeaning[catBar.selectedIndex])
itemListPlayer.isCompactMode = yes
itemListPlayer.navRemoCon.gridModeButtons[0].highlighted = !yes
itemListPlayer.navRemoCon.gridModeButtons[1].highlighted = yes
itemListPlayer.itemPage = 0
- itemListPlayer.rebuild(catBar.catIconsMeaning[catBar.selectedIcon])
+ itemListPlayer.rebuild(catBar.catIconsMeaning[catBar.selectedIndex])
itemListUpdate()
}
diff --git a/src/net/torvald/terrarum/weather/WeatherMixer.kt b/src/net/torvald/terrarum/weather/WeatherMixer.kt
index 59973b89b..bf9358588 100644
--- a/src/net/torvald/terrarum/weather/WeatherMixer.kt
+++ b/src/net/torvald/terrarum/weather/WeatherMixer.kt
@@ -181,7 +181,7 @@ internal object WeatherMixer : RNGConsumer {
weatherDB[weather.classification]!!.add(weather)
}
- weatherDict["titlescreen"] = weatherDB[WEATHER_GENERIC]!![0].copy(identifier = "titlescreen", windSpeed = 1f)
+ weatherDict["titlescreen"] = weatherDB[WEATHER_GENERIC]?.get(0)?.copy(identifier = "titlescreen", windSpeed = 1f) ?: DEFAULT_WEATHER
}
/**