diff --git a/assets/common/entity/dungeon/fallback/enemy.ron b/assets/common/entity/dungeon/fallback/enemy.ron index 29e608906c..a262031958 100644 --- a/assets/common/entity/dungeon/fallback/enemy.ron +++ b/assets/common/entity/dungeon/fallback/enemy.ron @@ -6,15 +6,15 @@ loot: LootTable("common.loot_tables.fallback"), inventory: ( loadout: Inline(( - active_hands: ([ - (1, "common.items.weapons.tool.broom"), - (1, "common.items.weapons.tool.hoe"), - (1, "common.items.weapons.tool.pickaxe"), - (1, "common.items.weapons.tool.rake"), - (1, "common.items.weapons.tool.shovel-0"), - (1, "common.items.weapons.tool.shovel-1"), - (1, "common.items.weapons.bow.starter"), - ], None), + active_hands: InHands((Choice([ + (1, Item("common.items.weapons.tool.broom")), + (1, Item("common.items.weapons.tool.hoe")), + (1, Item("common.items.weapons.tool.pickaxe")), + (1, Item("common.items.weapons.tool.rake")), + (1, Item("common.items.weapons.tool.shovel-0")), + (1, Item("common.items.weapons.tool.shovel-1")), + (1, Item("common.items.weapons.bow.starter")), + ]), None)), )), ), meta: [], diff --git a/assets/common/entity/dungeon/gnarling/chieftain.ron b/assets/common/entity/dungeon/gnarling/chieftain.ron index 50572ed6c7..56c4ff1047 100644 --- a/assets/common/entity/dungeon/gnarling/chieftain.ron +++ b/assets/common/entity/dungeon/gnarling/chieftain.ron @@ -8,7 +8,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.gnarling.chieftain"), - active_hands: ("common.items.npc_weapons.biped_small.gnarling.chieftain", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.gnarling.chieftain"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/gnarling/logger.ron b/assets/common/entity/dungeon/gnarling/logger.ron index 55882078d7..2ba53f5cdd 100644 --- a/assets/common/entity/dungeon/gnarling/logger.ron +++ b/assets/common/entity/dungeon/gnarling/logger.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.gnarling.logger"), - active_hands: ("common.items.npc_weapons.biped_small.gnarling.logger", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.gnarling.logger"), None)), )), ), meta: [], diff --git a/assets/common/entity/dungeon/gnarling/mandragora.ron b/assets/common/entity/dungeon/gnarling/mandragora.ron index c8cad87d13..958110d281 100644 --- a/assets/common/entity/dungeon/gnarling/mandragora.ron +++ b/assets/common/entity/dungeon/gnarling/mandragora.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.gnarling.mandragora"), - active_hands: ("common.items.npc_weapons.biped_small.mandragora", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.mandragora"), None)), )), ), meta: [], diff --git a/assets/common/entity/dungeon/gnarling/mugger.ron b/assets/common/entity/dungeon/gnarling/mugger.ron index 2765c0295d..0499ade586 100644 --- a/assets/common/entity/dungeon/gnarling/mugger.ron +++ b/assets/common/entity/dungeon/gnarling/mugger.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.gnarling.mugger"), - active_hands: ("common.items.npc_weapons.biped_small.gnarling.mugger", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.gnarling.mugger"), None)), )), ), meta: [], diff --git a/assets/common/entity/dungeon/gnarling/stalker.ron b/assets/common/entity/dungeon/gnarling/stalker.ron index 69eedb4a1f..c9ec882c3d 100644 --- a/assets/common/entity/dungeon/gnarling/stalker.ron +++ b/assets/common/entity/dungeon/gnarling/stalker.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.gnarling.stalker"), - active_hands: ("common.items.npc_weapons.biped_small.gnarling.stalker", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.gnarling.stalker"), None)), )), ), meta: [], diff --git a/assets/common/entity/dungeon/tier-1/hunter.ron b/assets/common/entity/dungeon/tier-1/hunter.ron index 7d44ab17a6..7770cad9ef 100644 --- a/assets/common/entity/dungeon/tier-1/hunter.ron +++ b/assets/common/entity/dungeon/tier-1/hunter.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-1.hunter"), - active_hands: ("common.items.npc_weapons.biped_small.adlet.hunter", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.adlet.hunter"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-1/icepicker.ron b/assets/common/entity/dungeon/tier-1/icepicker.ron index ae24852326..10a6132417 100644 --- a/assets/common/entity/dungeon/tier-1/icepicker.ron +++ b/assets/common/entity/dungeon/tier-1/icepicker.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-1.icepicker"), - active_hands: ("common.items.npc_weapons.biped_small.adlet.icepicker", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.adlet.icepicker"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-1/tracker.ron b/assets/common/entity/dungeon/tier-1/tracker.ron index ed612234e2..8dc37a6d99 100644 --- a/assets/common/entity/dungeon/tier-1/tracker.ron +++ b/assets/common/entity/dungeon/tier-1/tracker.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-1.tracker"), - active_hands: ("common.items.npc_weapons.biped_small.adlet.tracker", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.adlet.tracker"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-2/sniper.ron b/assets/common/entity/dungeon/tier-2/sniper.ron index fba579229b..8effb8d672 100644 --- a/assets/common/entity/dungeon/tier-2/sniper.ron +++ b/assets/common/entity/dungeon/tier-2/sniper.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-2.sniper"), - active_hands: ("common.items.npc_weapons.biped_small.sahagin.sniper", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.sahagin.sniper"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-2/sorcerer.ron b/assets/common/entity/dungeon/tier-2/sorcerer.ron index f63b5629ff..d466407b15 100644 --- a/assets/common/entity/dungeon/tier-2/sorcerer.ron +++ b/assets/common/entity/dungeon/tier-2/sorcerer.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-2.sorcerer"), - active_hands: ("common.items.npc_weapons.biped_small.sahagin.sorcerer", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.sahagin.sorcerer"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-2/spearman.ron b/assets/common/entity/dungeon/tier-2/spearman.ron index 1b06493a98..733febad2d 100644 --- a/assets/common/entity/dungeon/tier-2/spearman.ron +++ b/assets/common/entity/dungeon/tier-2/spearman.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-2.spearman"), - active_hands: ("common.items.npc_weapons.biped_small.sahagin.spearman", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.sahagin.spearman"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-3/archer.ron b/assets/common/entity/dungeon/tier-3/archer.ron index ca1e606795..3092ec8d4b 100644 --- a/assets/common/entity/dungeon/tier-3/archer.ron +++ b/assets/common/entity/dungeon/tier-3/archer.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-3.archer"), - active_hands: ("common.items.npc_weapons.biped_small.haniwa.archer", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.haniwa.archer"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-3/guard.ron b/assets/common/entity/dungeon/tier-3/guard.ron index 0a1e34b30e..9ab6d8ab80 100644 --- a/assets/common/entity/dungeon/tier-3/guard.ron +++ b/assets/common/entity/dungeon/tier-3/guard.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-3.guard"), - active_hands: ("common.items.npc_weapons.biped_small.haniwa.guard", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.haniwa.guard"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-3/soldier.ron b/assets/common/entity/dungeon/tier-3/soldier.ron index 07e3b2376b..2d70d29bcb 100644 --- a/assets/common/entity/dungeon/tier-3/soldier.ron +++ b/assets/common/entity/dungeon/tier-3/soldier.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-3.soldier"), - active_hands: ("common.items.npc_weapons.biped_small.haniwa.soldier", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.haniwa.soldier"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-4/hoplite.ron b/assets/common/entity/dungeon/tier-4/hoplite.ron index 24f97269bb..f195c223ee 100644 --- a/assets/common/entity/dungeon/tier-4/hoplite.ron +++ b/assets/common/entity/dungeon/tier-4/hoplite.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-4.hoplite"), - active_hands: ("common.items.npc_weapons.biped_small.myrmidon.hoplite", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.myrmidon.hoplite"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-4/marksman.ron b/assets/common/entity/dungeon/tier-4/marksman.ron index 50a2a14068..978af7f4e0 100644 --- a/assets/common/entity/dungeon/tier-4/marksman.ron +++ b/assets/common/entity/dungeon/tier-4/marksman.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-4.marksman"), - active_hands: ("common.items.npc_weapons.biped_small.myrmidon.marksman", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.myrmidon.marksman"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-4/strategian.ron b/assets/common/entity/dungeon/tier-4/strategian.ron index 7dfc714d66..75d55e642f 100644 --- a/assets/common/entity/dungeon/tier-4/strategian.ron +++ b/assets/common/entity/dungeon/tier-4/strategian.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-4.strategian"), - active_hands: ("common.items.npc_weapons.biped_small.myrmidon.strategian", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.myrmidon.strategian"), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-5/beastmaster.ron b/assets/common/entity/dungeon/tier-5/beastmaster.ron index 47cc966f3b..0ae4545c90 100644 --- a/assets/common/entity/dungeon/tier-5/beastmaster.ron +++ b/assets/common/entity/dungeon/tier-5/beastmaster.ron @@ -7,15 +7,11 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-5.beastmaster"), - active_hands: ([ - (1, "common.items.weapons.axe.malachite_axe-0"), - (1, ( - tool: Sword, - material: Bloodsteel, - hands: Some(Two), - )), - (1, "common.items.weapons.bow.velorite"), - ], None), + active_hands: InHands((Choice([ + (1, Item("common.items.weapons.axe.malachite_axe-0")), + (1, ModularWeapon(tool: Sword, material: Bloodsteel, hands: Two)), + (1, Item("common.items.weapons.bow.velorite")), + ]), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-5/cultist.ron b/assets/common/entity/dungeon/tier-5/cultist.ron index 417de7688a..975a38f162 100644 --- a/assets/common/entity/dungeon/tier-5/cultist.ron +++ b/assets/common/entity/dungeon/tier-5/cultist.ron @@ -7,23 +7,15 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-5.cultist"), - active_hands: ([ - (2, ( - tool: Axe, - material: Orichalcum, - hands: Some(One), - )), - (4, "common.items.weapons.sword.cultist"), - (2, "common.items.weapons.staff.cultist_staff"), - (2, "common.items.weapons.hammer.cultist_purp_2h-0"), - (2, ( - tool: Hammer, - material: Orichalcum, - hands: Some(One), - )), - (2, "common.items.weapons.bow.velorite"), - (1, "common.items.weapons.sceptre.sceptre_velorite_0"), - ], None), + active_hands: InHands((Choice([ + (2, ModularWeapon(tool: Axe, material: Orichalcum, hands: One)), + (4, Item("common.items.weapons.sword.cultist")), + (2, Item("common.items.weapons.staff.cultist_staff")), + (2, Item("common.items.weapons.hammer.cultist_purp_2h-0")), + (2, ModularWeapon(tool: Hammer, material: Orichalcum, hands: One)), + (2, Item("common.items.weapons.bow.velorite")), + (1, Item("common.items.weapons.sceptre.sceptre_velorite_0")), + ]), None)), )), ), meta: [ diff --git a/assets/common/entity/dungeon/tier-5/warlock.ron b/assets/common/entity/dungeon/tier-5/warlock.ron index 9e34c6992d..9467d683fc 100644 --- a/assets/common/entity/dungeon/tier-5/warlock.ron +++ b/assets/common/entity/dungeon/tier-5/warlock.ron @@ -7,10 +7,10 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-5.warlock"), - active_hands: ([ - (1, "common.items.npc_weapons.staff.bipedlarge-cultist"), - (1, "common.items.npc_weapons.bow.bipedlarge-velorite"), - ], None), + active_hands: InHands((Choice([ + (1, Item("common.items.npc_weapons.staff.bipedlarge-cultist")), + (1, Item("common.items.npc_weapons.bow.bipedlarge-velorite")), + ]), None)), )), ), meta: [], diff --git a/assets/common/entity/dungeon/tier-5/warlord.ron b/assets/common/entity/dungeon/tier-5/warlord.ron index d05bc75d83..99b66af54b 100644 --- a/assets/common/entity/dungeon/tier-5/warlord.ron +++ b/assets/common/entity/dungeon/tier-5/warlord.ron @@ -7,10 +7,10 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.dungeon.tier-5.warlord"), - active_hands: ([ - (1, "common.items.npc_weapons.sword.bipedlarge-cultist"), - (1, "common.items.npc_weapons.hammer.bipedlarge-cultist"), - ], None), + active_hands: InHands((Choice([ + (1, Item("common.items.npc_weapons.sword.bipedlarge-cultist")), + (1, Item("common.items.npc_weapons.hammer.bipedlarge-cultist")), + ]), None)), )), ), meta: [], diff --git a/assets/common/entity/spot/dwarf_grave_robber.ron b/assets/common/entity/spot/dwarf_grave_robber.ron index af5031dd11..6d3a1d743f 100644 --- a/assets/common/entity/spot/dwarf_grave_robber.ron +++ b/assets/common/entity/spot/dwarf_grave_robber.ron @@ -7,14 +7,10 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.spots.dwarf_graverobber"), - active_hands: ( - ( - tool: Hammer, - material: Steel, - hands: Some(Two), - ), + active_hands: InHands(( + ModularWeapon(tool: Hammer, material: Steel, hands: Two), None - ), + )), )), ), meta: [ diff --git a/assets/common/entity/spot/gnome/spear.ron b/assets/common/entity/spot/gnome/spear.ron index 44fd494ae1..50cc8b9137 100644 --- a/assets/common/entity/spot/gnome/spear.ron +++ b/assets/common/entity/spot/gnome/spear.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.spots.gnome"), - active_hands: ("common.items.npc_weapons.biped_small.myrmidon.hoplite", None), + active_hands: InHands((Item("common.items.npc_weapons.biped_small.myrmidon.hoplite"), None)), )), ), meta: [], diff --git a/assets/common/entity/spot/grim_salvager.ron b/assets/common/entity/spot/grim_salvager.ron index 5b3c97303f..a9fae6dc96 100644 --- a/assets/common/entity/spot/grim_salvager.ron +++ b/assets/common/entity/spot/grim_salvager.ron @@ -7,14 +7,10 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.spots.dwarf_graverobber"), - active_hands: ( - ( - tool: Hammer, - material: Steel, - hands: Some(Two), - ), + active_hands: InHands(( + ModularWeapon(tool: Hammer, material: Steel, hands: Two), None - ), + )), )), ), meta: [ diff --git a/assets/common/entity/spot/pirate.ron b/assets/common/entity/spot/pirate.ron index 8c148ca7ce..f37b378bef 100644 --- a/assets/common/entity/spot/pirate.ron +++ b/assets/common/entity/spot/pirate.ron @@ -7,18 +7,10 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.spots.pirate"), - active_hands: ( - ( - tool: Sword, - material: Iron, - hands: Some(One), - ), - ( - tool: Sword, - material: Iron, - hands: Some(One), - ) - ), + active_hands: InHands(( + ModularWeapon(tool: Sword, material: Iron, hands: One), + ModularWeapon(tool: Sword, material: Iron, hands: One), + )), )), ), meta: [ diff --git a/assets/common/entity/spot/saurok.ron b/assets/common/entity/spot/saurok.ron index aa80cf106f..a0985da3f0 100644 --- a/assets/common/entity/spot/saurok.ron +++ b/assets/common/entity/spot/saurok.ron @@ -6,7 +6,7 @@ loot: LootTable("common.loot_tables.creature.biped_large.saurok"), inventory: ( loadout: Inline(( - active_hands: ("common.items.npc_weapons.bow.saurok_bow", None), + active_hands: InHands((Item("common.items.npc_weapons.bow.saurok_bow"), None)), )), ), meta: [], diff --git a/assets/common/entity/spot/witch_dark.ron b/assets/common/entity/spot/witch_dark.ron index 4c1214ff19..42c25da96a 100644 --- a/assets/common/entity/spot/witch_dark.ron +++ b/assets/common/entity/spot/witch_dark.ron @@ -7,7 +7,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.spots.witch"), - active_hands: ("common.items.weapons.sceptre.belzeshrub", None), + active_hands: InHands((Item("common.items.weapons.sceptre.belzeshrub"), None)), )), ), meta: [ diff --git a/assets/common/entity/template.ron b/assets/common/entity/template.ron index 8d8e533072..a31f3af5f4 100644 --- a/assets/common/entity/template.ron +++ b/assets/common/entity/template.ron @@ -9,7 +9,7 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.village.merchant"), - active_hands: ("common.items.weapons.sword.cultist", None), + active_hands: InHands((Item("common.items.weapons.sword.cultist"), None)), )), ), meta: [ diff --git a/assets/common/entity/village/alchemist.ron b/assets/common/entity/village/alchemist.ron index 7ca2772e22..cfeab67728 100644 --- a/assets/common/entity/village/alchemist.ron +++ b/assets/common/entity/village/alchemist.ron @@ -7,14 +7,14 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.village.alchemist"), - active_hands: ([ - (1, "common.items.weapons.tool.broom"), - (1, "common.items.weapons.tool.hoe"), - (1, "common.items.weapons.tool.pickaxe"), - (1, "common.items.weapons.tool.rake"), - (1, "common.items.weapons.tool.shovel-0"), - (1, "common.items.weapons.tool.shovel-1"), - ], None), + active_hands: InHands((Choice([ + (1, Item("common.items.weapons.tool.broom")), + (1, Item("common.items.weapons.tool.hoe")), + (1, Item("common.items.weapons.tool.pickaxe")), + (1, Item("common.items.weapons.tool.rake")), + (1, Item("common.items.weapons.tool.shovel-0")), + (1, Item("common.items.weapons.tool.shovel-1")), + ]), None)), )), items: [ (10, "common.items.consumable.potion_big"), diff --git a/assets/common/entity/village/blacksmith.ron b/assets/common/entity/village/blacksmith.ron index 0ba773b1cf..cebb81f399 100644 --- a/assets/common/entity/village/blacksmith.ron +++ b/assets/common/entity/village/blacksmith.ron @@ -7,14 +7,14 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.village.blacksmith"), - active_hands: ([ - (1, "common.items.weapons.tool.broom"), - (1, "common.items.weapons.tool.hoe"), - (1, "common.items.weapons.tool.pickaxe"), - (1, "common.items.weapons.tool.rake"), - (1, "common.items.weapons.tool.shovel-0"), - (1, "common.items.weapons.tool.shovel-1"), - ], None), + active_hands: InHands((Choice([ + (1, Item("common.items.weapons.tool.broom")), + (1, Item("common.items.weapons.tool.hoe")), + (1, Item("common.items.weapons.tool.pickaxe")), + (1, Item("common.items.weapons.tool.rake")), + (1, Item("common.items.weapons.tool.shovel-0")), + (1, Item("common.items.weapons.tool.shovel-1")), + ]), None)), )), items: [ (10, "common.items.consumable.potion_big"), diff --git a/assets/common/entity/village/chef.ron b/assets/common/entity/village/chef.ron index ae44d1e155..72015d3601 100644 --- a/assets/common/entity/village/chef.ron +++ b/assets/common/entity/village/chef.ron @@ -7,14 +7,14 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.village.chef"), - active_hands: ([ - (1, "common.items.weapons.tool.broom"), - (1, "common.items.weapons.tool.hoe"), - (1, "common.items.weapons.tool.pickaxe"), - (1, "common.items.weapons.tool.rake"), - (1, "common.items.weapons.tool.shovel-0"), - (1, "common.items.weapons.tool.shovel-1"), - ], None), + active_hands: InHands((Choice([ + (1, Item("common.items.weapons.tool.broom")), + (1, Item("common.items.weapons.tool.hoe")), + (1, Item("common.items.weapons.tool.pickaxe")), + (1, Item("common.items.weapons.tool.rake")), + (1, Item("common.items.weapons.tool.shovel-0")), + (1, Item("common.items.weapons.tool.shovel-1")), + ]), None)), )), items: [ (10, "common.items.consumable.potion_big"), diff --git a/assets/common/entity/village/guard.ron b/assets/common/entity/village/guard.ron index 7f4838cc1a..2a7d39dc2e 100644 --- a/assets/common/entity/village/guard.ron +++ b/assets/common/entity/village/guard.ron @@ -7,23 +7,11 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.village.guard"), - active_hands: ([ - (1, ( - tool: Sword, - material: Cobalt, - hands: None, - )), - (2, ( - tool: Bow, - material: Ironwood, - hands: None, - )), - (1, ( - tool: Axe, - material: Cobalt, - hands: None, - )), - ], None), + active_hands: InHands((Choice([ + (1, ModularWeapon(tool: Sword, material: Cobalt, hands: None)), + (2, ModularWeapon(tool: Bow, material: Ironwood, hands: None)), + (1, ModularWeapon(tool: Axe, material: Cobalt, hands: None)), + ]), None)), )), items: [ (25, "common.items.consumable.potion_big"), diff --git a/assets/common/entity/village/merchant.ron b/assets/common/entity/village/merchant.ron index aee71a9f4d..13b9d6ccc1 100644 --- a/assets/common/entity/village/merchant.ron +++ b/assets/common/entity/village/merchant.ron @@ -6,28 +6,12 @@ loot: LootTable("common.loot_tables.creature.humanoid"), inventory: ( loadout: Inline(( - active_hands: ([ - (2, ( - tool: Bow, - material: Eldwood, - hands: None, - )), - (1, ( - tool: Sword, - material: Steel, - hands: None, - )), - (1, ( - tool: Sword, - material: Bloodsteel, - hands: None, - )), - (2, ( - tool: Staff, - material: Ironwood, - hands: None, - )), - ], None), + active_hands: InHands((Choice([ + (2, ModularWeapon(tool: Bow, material: Eldwood, hands: None)), + (1, ModularWeapon(tool: Sword, material: Steel, hands: None)), + (1, ModularWeapon(tool: Sword, material: Bloodsteel, hands: None)), + (2, ModularWeapon(tool: Staff, material: Ironwood, hands: None)), + ]), None)), )), ), meta: [ diff --git a/assets/common/entity/village/mountaineer.ron b/assets/common/entity/village/mountaineer.ron index 09ae8b7070..84410e8300 100644 --- a/assets/common/entity/village/mountaineer.ron +++ b/assets/common/entity/village/mountaineer.ron @@ -7,14 +7,14 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.village.mountaineer"), - active_hands: ([ - (1, "common.items.weapons.tool.broom"), - (1, "common.items.weapons.tool.hoe"), - (1, "common.items.weapons.tool.pickaxe"), - (1, "common.items.weapons.tool.rake"), - (1, "common.items.weapons.tool.shovel-0"), - (1, "common.items.weapons.tool.shovel-1"), - ], None), + active_hands: InHands((Choice([ + (1, Item("common.items.weapons.tool.broom")), + (1, Item("common.items.weapons.tool.hoe")), + (1, Item("common.items.weapons.tool.pickaxe")), + (1, Item("common.items.weapons.tool.rake")), + (1, Item("common.items.weapons.tool.shovel-0")), + (1, Item("common.items.weapons.tool.shovel-1")), + ]), None)), )), items: [ (10, "common.items.consumable.potion_big"), diff --git a/assets/common/entity/village/villager.ron b/assets/common/entity/village/villager.ron index 61b62cb5b5..ee0b96e6cf 100644 --- a/assets/common/entity/village/villager.ron +++ b/assets/common/entity/village/villager.ron @@ -7,14 +7,14 @@ inventory: ( loadout: Inline(( inherit: Asset("common.loadout.village.villager"), - active_hands: ([ - (1, "common.items.weapons.tool.broom"), - (1, "common.items.weapons.tool.hoe"), - (1, "common.items.weapons.tool.pickaxe"), - (1, "common.items.weapons.tool.rake"), - (1, "common.items.weapons.tool.shovel-0"), - (1, "common.items.weapons.tool.shovel-1"), - ], None), + active_hands: InHands((Choice([ + (1, Item("common.items.weapons.tool.broom")), + (1, Item("common.items.weapons.tool.hoe")), + (1, Item("common.items.weapons.tool.pickaxe")), + (1, Item("common.items.weapons.tool.rake")), + (1, Item("common.items.weapons.tool.shovel-0")), + (1, Item("common.items.weapons.tool.shovel-1")), + ]), None)), )), items: [ (10, "common.items.consumable.potion_big"), diff --git a/assets/common/entity/world/traveler0.ron b/assets/common/entity/world/traveler0.ron index a2c6ebba14..296b396b6f 100644 --- a/assets/common/entity/world/traveler0.ron +++ b/assets/common/entity/world/traveler0.ron @@ -11,38 +11,14 @@ (1, Asset("common.loadout.world.traveler0.linen")), (1, Asset("common.loadout.world.traveler0.rawhide")), ]), - active_hands: ([ - (1, ( - tool: Sword, - material: Bronze, - hands: None, - )), - (1, ( - tool: Axe, - material: Bronze, - hands: None, - )), - (1, ( - tool: Hammer, - material: Bronze, - hands: None, - )), - (1, ( - tool: Bow, - material: Wood, - hands: None, - )), - (1, ( - tool: Staff, - material: Wood, - hands: None, - )), - (1, ( - tool: Sceptre, - material: Wood, - hands: None, - )), - ], None), + active_hands: InHands((Choice([ + (1, ModularWeapon(tool: Sword, material: Bronze, hands: None)), + (1, ModularWeapon(tool: Axe, material: Bronze, hands: None)), + (1, ModularWeapon(tool: Hammer, material: Bronze, hands: None)), + (1, ModularWeapon(tool: Bow, material: Wood, hands: None)), + (1, ModularWeapon(tool: Staff, material: Wood, hands: None)), + (1, ModularWeapon(tool: Sceptre, material: Wood, hands: None)), + ]), None)), )), items: [ (5, "common.items.consumable.potion_minor"), diff --git a/assets/common/entity/world/traveler1.ron b/assets/common/entity/world/traveler1.ron index 819c2ad205..52e1e68159 100644 --- a/assets/common/entity/world/traveler1.ron +++ b/assets/common/entity/world/traveler1.ron @@ -11,38 +11,14 @@ (1, Asset("common.loadout.world.traveler1.leather")), (1, Asset("common.loadout.world.traveler1.wool")), ]), - active_hands: ([ - (1, ( - tool: Sword, - material: Iron, - hands: None, - )), - (1, ( - tool: Axe, - material: Iron, - hands: None, - )), - (1, ( - tool: Hammer, - material: Iron, - hands: None, - )), - (1, ( - tool: Bow, - material: Bamboo, - hands: None, - )), - (1, ( - tool: Staff, - material: Bamboo, - hands: None, - )), - (1, ( - tool: Sceptre, - material: Bamboo, - hands: None, - )), - ], None), + active_hands: InHands((Choice([ + (1, ModularWeapon(tool: Sword, material: Iron, hands: None)), + (1, ModularWeapon(tool: Axe, material: Iron, hands: None)), + (1, ModularWeapon(tool: Hammer, material: Iron, hands: None)), + (1, ModularWeapon(tool: Bow, material: Bamboo, hands: None)), + (1, ModularWeapon(tool: Staff, material: Bamboo, hands: None)), + (1, ModularWeapon(tool: Sceptre, material: Bamboo, hands: None)), + ]), None)), )), items: [ (25, "common.items.consumable.potion_minor"), diff --git a/assets/common/entity/world/traveler2.ron b/assets/common/entity/world/traveler2.ron index 320e3cd09b..92351f490a 100644 --- a/assets/common/entity/world/traveler2.ron +++ b/assets/common/entity/world/traveler2.ron @@ -16,68 +16,20 @@ (1, Asset("common.loadout.world.traveler2.druid")), (1, Asset("common.loadout.world.traveler2.carapace")), ]), - active_hands: ([ - (1, ( - tool: Sword, - material: Steel, - hands: None, - )), - (1, ( - tool: Axe, - material: Steel, - hands: None, - )), - (1, ( - tool: Hammer, - material: Steel, - hands: None, - )), - (1, ( - tool: Bow, - material: Hardwood, - hands: None, - )), - (1, ( - tool: Staff, - material: Hardwood, - hands: None, - )), - (1, ( - tool: Sceptre, - material: Hardwood, - hands: None, - )), - (1, ( - tool: Sword, - material: Cobalt, - hands: None, - )), - (1, ( - tool: Axe, - material: Cobalt, - hands: None, - )), - (1, ( - tool: Hammer, - material: Cobalt, - hands: None, - )), - (1, ( - tool: Bow, - material: Ironwood, - hands: None, - )), - (1, ( - tool: Staff, - material: Ironwood, - hands: None, - )), - (1, ( - tool: Sceptre, - material: Ironwood, - hands: None, - )), - ], None), + active_hands: InHands((Choice([ + (1, ModularWeapon(tool: Sword, material: Steel, hands: None)), + (1, ModularWeapon(tool: Axe, material: Steel, hands: None)), + (1, ModularWeapon(tool: Hammer, material: Steel, hands: None)), + (1, ModularWeapon(tool: Bow, material: Hardwood, hands: None)), + (1, ModularWeapon(tool: Staff, material: Hardwood, hands: None)), + (1, ModularWeapon(tool: Sceptre, material: Hardwood, hands: None)), + (1, ModularWeapon(tool: Sword, material: Cobalt, hands: None)), + (1, ModularWeapon(tool: Axe, material: Cobalt, hands: None)), + (1, ModularWeapon(tool: Hammer, material: Cobalt, hands: None)), + (1, ModularWeapon(tool: Bow, material: Ironwood, hands: None)), + (1, ModularWeapon(tool: Staff, material: Ironwood, hands: None)), + (1, ModularWeapon(tool: Sceptre, material: Ironwood, hands: None)), + ]), None)), )), items: [ (50, "common.items.consumable.potion_med"), diff --git a/assets/common/entity/world/traveler3.ron b/assets/common/entity/world/traveler3.ron index 6a3106324c..1e09b5784c 100644 --- a/assets/common/entity/world/traveler3.ron +++ b/assets/common/entity/world/traveler3.ron @@ -16,45 +16,21 @@ (1, Asset("common.loadout.world.traveler3.sunsilk")), (1, Asset("common.loadout.world.traveler3.dragonscale")), ]), - active_hands: ([ - (2, ( - tool: Sword, - material: Orichalcum, - hands: None, - )), - (2, ( - tool: Axe, - material: Orichalcum, - hands: None, - )), - (2, ( - tool: Hammer, - material: Orichalcum, - hands: None, - )), - (2, ( - tool: Bow, - material: Eldwood, - hands: None, - )), - (2, ( - tool: Staff, - material: Eldwood, - hands: None, - )), - (2, ( - tool: Sceptre, - material: Eldwood, - hands: None, - )), - (2, "common.items.weapons.sword.caladbolg"), - (2, "common.items.weapons.hammer.mjolnir"), - (2, "common.items.weapons.axe.parashu"), - (2, "common.items.weapons.bow.sagitta"), - (2, "common.items.weapons.staff.laevateinn"), - (1, "common.items.weapons.sceptre.root_evil"), - (1, "common.items.weapons.sceptre.caduceus"), - ], None), + active_hands: InHands((Choice([ + (2, ModularWeapon(tool: Sword, material: Orichalcum, hands: None)), + (2, ModularWeapon(tool: Axe, material: Orichalcum, hands: None)), + (2, ModularWeapon(tool: Hammer, material: Orichalcum, hands: None)), + (2, ModularWeapon(tool: Bow, material: Eldwood, hands: None)), + (2, ModularWeapon(tool: Staff, material: Eldwood, hands: None)), + (2, ModularWeapon(tool: Sceptre, material: Eldwood, hands: None)), + (2, Item("common.items.weapons.sword.caladbolg")), + (2, Item("common.items.weapons.hammer.mjolnir")), + (2, Item("common.items.weapons.axe.parashu")), + (2, Item("common.items.weapons.bow.sagitta")), + (2, Item("common.items.weapons.staff.laevateinn")), + (1, Item("common.items.weapons.sceptre.root_evil")), + (1, Item("common.items.weapons.sceptre.caduceus")), + ]), None)), )), items: [ (50, "common.items.consumable.potion_big"), diff --git a/assets/common/items/npc_weapons/unique/arthropods/cavespider.ron b/assets/common/items/npc_weapons/unique/arthropods/cavespider.ron index a8894000f3..88409656e0 100644 --- a/assets/common/items/npc_weapons/unique/arthropods/cavespider.ron +++ b/assets/common/items/npc_weapons/unique/arthropods/cavespider.ron @@ -4,7 +4,7 @@ ItemDef( kind: Tool(( kind: Natural, hands: Two, - stats: Direct(( + stats: ( equip_time_secs: 0.01, power: 0.6, effect_power: 1.0, @@ -13,7 +13,7 @@ ItemDef( range: 0.8, energy_efficiency: 1.0, buff_strength: 0.9, - )), + ), )), quality: Moderate, tags: [], diff --git a/assets/common/items/npc_weapons/unique/arthropods/leafbeetle.ron b/assets/common/items/npc_weapons/unique/arthropods/leafbeetle.ron index 29c660c11d..38466b1ce7 100644 --- a/assets/common/items/npc_weapons/unique/arthropods/leafbeetle.ron +++ b/assets/common/items/npc_weapons/unique/arthropods/leafbeetle.ron @@ -4,7 +4,7 @@ ItemDef( kind: Tool(( kind: Natural, hands: Two, - stats: Direct(( + stats: ( equip_time_secs: 0.01, power: 0.86, effect_power: 1.0, @@ -13,7 +13,7 @@ ItemDef( range: 1.0, energy_efficiency: 1.0, buff_strength: 0.875, - )), + ), )), quality: High, tags: [], diff --git a/assets/common/items/npc_weapons/unique/arthropods/mosscrawler.ron b/assets/common/items/npc_weapons/unique/arthropods/mosscrawler.ron index a939e07c56..1f539497c6 100644 --- a/assets/common/items/npc_weapons/unique/arthropods/mosscrawler.ron +++ b/assets/common/items/npc_weapons/unique/arthropods/mosscrawler.ron @@ -4,7 +4,7 @@ ItemDef( kind: Tool(( kind: Natural, hands: Two, - stats: Direct(( + stats: ( equip_time_secs: 0.01, power: 0.72, effect_power: 1.0, @@ -13,7 +13,7 @@ ItemDef( range: 0.8, energy_efficiency: 1.0, buff_strength: 0.6, - )), + ), )), quality: Moderate, tags: [], diff --git a/assets/common/items/npc_weapons/unique/arthropods/weevil.ron b/assets/common/items/npc_weapons/unique/arthropods/weevil.ron index 09c167793d..0c407cf69c 100644 --- a/assets/common/items/npc_weapons/unique/arthropods/weevil.ron +++ b/assets/common/items/npc_weapons/unique/arthropods/weevil.ron @@ -4,7 +4,7 @@ ItemDef( kind: Tool(( kind: Natural, hands: Two, - stats: Direct(( + stats: ( equip_time_secs: 0.01, power: 1.0, effect_power: 1.0, @@ -13,7 +13,7 @@ ItemDef( range: 1.0, energy_efficiency: 1.0, buff_strength: 1.0, - )), + ), )), quality: High, tags: [], diff --git a/assets/common/loadout/default.ron b/assets/common/loadout/default.ron index 2d13671915..88ead078b4 100644 --- a/assets/common/loadout/default.ron +++ b/assets/common/loadout/default.ron @@ -1,9 +1,9 @@ // Keep in mind that this should be safe defaults for new character #![enable(implicit_some)] ( - chest: "common.items.armor.misc.chest.worker_purple_brown", - legs: "common.items.armor.misc.pants.worker_brown", - feet: "common.items.armor.misc.foot.sandals", - lantern: "common.items.lantern.black_0", - glider: "common.items.glider.cloverleaf", + chest: Item("common.items.armor.misc.chest.worker_purple_brown"), + legs: Item("common.items.armor.misc.pants.worker_brown"), + feet: Item("common.items.armor.misc.foot.sandals"), + lantern: Item("common.items.lantern.black_0"), + glider: Item("common.items.glider.cloverleaf"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/gnarling/chieftain.ron b/assets/common/loadout/dungeon/gnarling/chieftain.ron index dd4c3ebf14..6ce59d4edd 100644 --- a/assets/common/loadout/dungeon/gnarling/chieftain.ron +++ b/assets/common/loadout/dungeon/gnarling/chieftain.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.gnarling.head.chieftain", - chest: "common.items.npc_armor.biped_small.gnarling.chest.chieftain", - gloves: "common.items.npc_armor.biped_small.gnarling.hand.chieftain", - belt: "common.items.npc_armor.biped_small.gnarling.tail.chieftain", - legs: "common.items.npc_armor.biped_small.gnarling.pants.chieftain", - feet: "common.items.npc_armor.biped_small.gnarling.foot.chieftain", + head: Item("common.items.npc_armor.biped_small.gnarling.head.chieftain"), + chest: Item("common.items.npc_armor.biped_small.gnarling.chest.chieftain"), + gloves: Item("common.items.npc_armor.biped_small.gnarling.hand.chieftain"), + belt: Item("common.items.npc_armor.biped_small.gnarling.tail.chieftain"), + legs: Item("common.items.npc_armor.biped_small.gnarling.pants.chieftain"), + feet: Item("common.items.npc_armor.biped_small.gnarling.foot.chieftain"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/gnarling/logger.ron b/assets/common/loadout/dungeon/gnarling/logger.ron index 94eebf7335..dac0fa842a 100644 --- a/assets/common/loadout/dungeon/gnarling/logger.ron +++ b/assets/common/loadout/dungeon/gnarling/logger.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.gnarling.head.logger", - chest: "common.items.npc_armor.biped_small.gnarling.chest.logger", - gloves: "common.items.npc_armor.biped_small.gnarling.hand.logger", - belt: "common.items.npc_armor.biped_small.gnarling.tail.logger", - legs: "common.items.npc_armor.biped_small.gnarling.pants.logger", - feet: "common.items.npc_armor.biped_small.gnarling.foot.logger", + head: Item("common.items.npc_armor.biped_small.gnarling.head.logger"), + chest: Item("common.items.npc_armor.biped_small.gnarling.chest.logger"), + gloves: Item("common.items.npc_armor.biped_small.gnarling.hand.logger"), + belt: Item("common.items.npc_armor.biped_small.gnarling.tail.logger"), + legs: Item("common.items.npc_armor.biped_small.gnarling.pants.logger"), + feet: Item("common.items.npc_armor.biped_small.gnarling.foot.logger"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/gnarling/mandragora.ron b/assets/common/loadout/dungeon/gnarling/mandragora.ron index e87b09d891..e2a5944c07 100644 --- a/assets/common/loadout/dungeon/gnarling/mandragora.ron +++ b/assets/common/loadout/dungeon/gnarling/mandragora.ron @@ -1,7 +1,7 @@ #![enable(implicit_some)] ( - chest: "common.items.npc_armor.biped_small.mandragora.chest.mandragora", - gloves: "common.items.npc_armor.biped_small.mandragora.hand.mandragora", - legs: "common.items.npc_armor.biped_small.mandragora.pants.mandragora", - feet: "common.items.npc_armor.biped_small.mandragora.foot.mandragora", + chest: Item("common.items.npc_armor.biped_small.mandragora.chest.mandragora"), + gloves: Item("common.items.npc_armor.biped_small.mandragora.hand.mandragora"), + legs: Item("common.items.npc_armor.biped_small.mandragora.pants.mandragora"), + feet: Item("common.items.npc_armor.biped_small.mandragora.foot.mandragora"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/gnarling/mugger.ron b/assets/common/loadout/dungeon/gnarling/mugger.ron index 1b4541ab1d..a4916b1f21 100644 --- a/assets/common/loadout/dungeon/gnarling/mugger.ron +++ b/assets/common/loadout/dungeon/gnarling/mugger.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.gnarling.head.mugger", - chest: "common.items.npc_armor.biped_small.gnarling.chest.mugger", - gloves: "common.items.npc_armor.biped_small.gnarling.hand.mugger", - belt: "common.items.npc_armor.biped_small.gnarling.tail.mugger", - legs: "common.items.npc_armor.biped_small.gnarling.pants.mugger", - feet: "common.items.npc_armor.biped_small.gnarling.foot.mugger", + head: Item("common.items.npc_armor.biped_small.gnarling.head.mugger"), + chest: Item("common.items.npc_armor.biped_small.gnarling.chest.mugger"), + gloves: Item("common.items.npc_armor.biped_small.gnarling.hand.mugger"), + belt: Item("common.items.npc_armor.biped_small.gnarling.tail.mugger"), + legs: Item("common.items.npc_armor.biped_small.gnarling.pants.mugger"), + feet: Item("common.items.npc_armor.biped_small.gnarling.foot.mugger"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/gnarling/stalker.ron b/assets/common/loadout/dungeon/gnarling/stalker.ron index 1321869ef3..25943bc4f8 100644 --- a/assets/common/loadout/dungeon/gnarling/stalker.ron +++ b/assets/common/loadout/dungeon/gnarling/stalker.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.gnarling.head.stalker", - chest: "common.items.npc_armor.biped_small.gnarling.chest.stalker", - gloves: "common.items.npc_armor.biped_small.gnarling.hand.stalker", - belt: "common.items.npc_armor.biped_small.gnarling.tail.stalker", - legs: "common.items.npc_armor.biped_small.gnarling.pants.stalker", - feet: "common.items.npc_armor.biped_small.gnarling.foot.stalker", + head: Item("common.items.npc_armor.biped_small.gnarling.head.stalker"), + chest: Item("common.items.npc_armor.biped_small.gnarling.chest.stalker"), + gloves: Item("common.items.npc_armor.biped_small.gnarling.hand.stalker"), + belt: Item("common.items.npc_armor.biped_small.gnarling.tail.stalker"), + legs: Item("common.items.npc_armor.biped_small.gnarling.pants.stalker"), + feet: Item("common.items.npc_armor.biped_small.gnarling.foot.stalker"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-1/hunter.ron b/assets/common/loadout/dungeon/tier-1/hunter.ron index a4751d7ff3..1ffc9cd020 100644 --- a/assets/common/loadout/dungeon/tier-1/hunter.ron +++ b/assets/common/loadout/dungeon/tier-1/hunter.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.adlet.head.hunter", - chest: "common.items.npc_armor.biped_small.adlet.chest.hunter", - gloves: "common.items.npc_armor.biped_small.adlet.hand.hunter", - belt: "common.items.npc_armor.biped_small.adlet.tail.hunter", - legs: "common.items.npc_armor.biped_small.adlet.pants.hunter", - feet: "common.items.npc_armor.biped_small.adlet.foot.hunter", + head: Item("common.items.npc_armor.biped_small.adlet.head.hunter"), + chest: Item("common.items.npc_armor.biped_small.adlet.chest.hunter"), + gloves: Item("common.items.npc_armor.biped_small.adlet.hand.hunter"), + belt: Item("common.items.npc_armor.biped_small.adlet.tail.hunter"), + legs: Item("common.items.npc_armor.biped_small.adlet.pants.hunter"), + feet: Item("common.items.npc_armor.biped_small.adlet.foot.hunter"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-1/icepicker.ron b/assets/common/loadout/dungeon/tier-1/icepicker.ron index aded490224..17e7441254 100644 --- a/assets/common/loadout/dungeon/tier-1/icepicker.ron +++ b/assets/common/loadout/dungeon/tier-1/icepicker.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.adlet.head.icepicker", - chest: "common.items.npc_armor.biped_small.adlet.chest.icepicker", - gloves: "common.items.npc_armor.biped_small.adlet.hand.icepicker", - belt: "common.items.npc_armor.biped_small.adlet.tail.icepicker", - legs: "common.items.npc_armor.biped_small.adlet.pants.icepicker", - feet: "common.items.npc_armor.biped_small.adlet.foot.icepicker", + head: Item("common.items.npc_armor.biped_small.adlet.head.icepicker"), + chest: Item("common.items.npc_armor.biped_small.adlet.chest.icepicker"), + gloves: Item("common.items.npc_armor.biped_small.adlet.hand.icepicker"), + belt: Item("common.items.npc_armor.biped_small.adlet.tail.icepicker"), + legs: Item("common.items.npc_armor.biped_small.adlet.pants.icepicker"), + feet: Item("common.items.npc_armor.biped_small.adlet.foot.icepicker"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-1/tracker.ron b/assets/common/loadout/dungeon/tier-1/tracker.ron index fd476206a3..742e564820 100644 --- a/assets/common/loadout/dungeon/tier-1/tracker.ron +++ b/assets/common/loadout/dungeon/tier-1/tracker.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.adlet.head.tracker", - chest: "common.items.npc_armor.biped_small.adlet.chest.tracker", - gloves: "common.items.npc_armor.biped_small.adlet.hand.tracker", - belt: "common.items.npc_armor.biped_small.adlet.tail.tracker", - legs: "common.items.npc_armor.biped_small.adlet.pants.tracker", - feet: "common.items.npc_armor.biped_small.adlet.foot.tracker", + head: Item("common.items.npc_armor.biped_small.adlet.head.tracker"), + chest: Item("common.items.npc_armor.biped_small.adlet.chest.tracker"), + gloves: Item("common.items.npc_armor.biped_small.adlet.hand.tracker"), + belt: Item("common.items.npc_armor.biped_small.adlet.tail.tracker"), + legs: Item("common.items.npc_armor.biped_small.adlet.pants.tracker"), + feet: Item("common.items.npc_armor.biped_small.adlet.foot.tracker"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-2/sniper.ron b/assets/common/loadout/dungeon/tier-2/sniper.ron index 11b83053d8..f81fd3c010 100644 --- a/assets/common/loadout/dungeon/tier-2/sniper.ron +++ b/assets/common/loadout/dungeon/tier-2/sniper.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.sahagin.head.sniper", - chest: "common.items.npc_armor.biped_small.sahagin.chest.sniper", - gloves: "common.items.npc_armor.biped_small.sahagin.hand.sniper", - belt: "common.items.npc_armor.biped_small.sahagin.tail.sniper", - legs: "common.items.npc_armor.biped_small.sahagin.pants.sniper", - feet: "common.items.npc_armor.biped_small.sahagin.foot.sniper", + head: Item("common.items.npc_armor.biped_small.sahagin.head.sniper"), + chest: Item("common.items.npc_armor.biped_small.sahagin.chest.sniper"), + gloves: Item("common.items.npc_armor.biped_small.sahagin.hand.sniper"), + belt: Item("common.items.npc_armor.biped_small.sahagin.tail.sniper"), + legs: Item("common.items.npc_armor.biped_small.sahagin.pants.sniper"), + feet: Item("common.items.npc_armor.biped_small.sahagin.foot.sniper"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-2/sorcerer.ron b/assets/common/loadout/dungeon/tier-2/sorcerer.ron index ac6e42f8d6..1dae9c8bc2 100644 --- a/assets/common/loadout/dungeon/tier-2/sorcerer.ron +++ b/assets/common/loadout/dungeon/tier-2/sorcerer.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.sahagin.head.sorcerer", - chest: "common.items.npc_armor.biped_small.sahagin.chest.sorcerer", - gloves: "common.items.npc_armor.biped_small.sahagin.hand.sorcerer", - belt: "common.items.npc_armor.biped_small.sahagin.tail.sorcerer", - legs: "common.items.npc_armor.biped_small.sahagin.pants.sorcerer", - feet: "common.items.npc_armor.biped_small.sahagin.foot.sorcerer", + head: Item("common.items.npc_armor.biped_small.sahagin.head.sorcerer"), + chest: Item("common.items.npc_armor.biped_small.sahagin.chest.sorcerer"), + gloves: Item("common.items.npc_armor.biped_small.sahagin.hand.sorcerer"), + belt: Item("common.items.npc_armor.biped_small.sahagin.tail.sorcerer"), + legs: Item("common.items.npc_armor.biped_small.sahagin.pants.sorcerer"), + feet: Item("common.items.npc_armor.biped_small.sahagin.foot.sorcerer"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-2/spearman.ron b/assets/common/loadout/dungeon/tier-2/spearman.ron index 4509e75fc3..05a6bfc328 100644 --- a/assets/common/loadout/dungeon/tier-2/spearman.ron +++ b/assets/common/loadout/dungeon/tier-2/spearman.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.sahagin.head.spearman", - chest: "common.items.npc_armor.biped_small.sahagin.chest.spearman", - gloves: "common.items.npc_armor.biped_small.sahagin.hand.spearman", - belt: "common.items.npc_armor.biped_small.sahagin.tail.spearman", - legs: "common.items.npc_armor.biped_small.sahagin.pants.spearman", - feet: "common.items.npc_armor.biped_small.sahagin.foot.spearman", + head: Item("common.items.npc_armor.biped_small.sahagin.head.spearman"), + chest: Item("common.items.npc_armor.biped_small.sahagin.chest.spearman"), + gloves: Item("common.items.npc_armor.biped_small.sahagin.hand.spearman"), + belt: Item("common.items.npc_armor.biped_small.sahagin.tail.spearman"), + legs: Item("common.items.npc_armor.biped_small.sahagin.pants.spearman"), + feet: Item("common.items.npc_armor.biped_small.sahagin.foot.spearman"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-3/archer.ron b/assets/common/loadout/dungeon/tier-3/archer.ron index b6fe6b7a4c..03cfc848f0 100644 --- a/assets/common/loadout/dungeon/tier-3/archer.ron +++ b/assets/common/loadout/dungeon/tier-3/archer.ron @@ -1,8 +1,8 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.haniwa.head.archer", - chest: "common.items.npc_armor.biped_small.haniwa.chest.archer", - gloves: "common.items.npc_armor.biped_small.haniwa.hand.archer", - legs: "common.items.npc_armor.biped_small.haniwa.pants.archer", - feet: "common.items.npc_armor.biped_small.haniwa.foot.archer", + head: Item("common.items.npc_armor.biped_small.haniwa.head.archer"), + chest: Item("common.items.npc_armor.biped_small.haniwa.chest.archer"), + gloves: Item("common.items.npc_armor.biped_small.haniwa.hand.archer"), + legs: Item("common.items.npc_armor.biped_small.haniwa.pants.archer"), + feet: Item("common.items.npc_armor.biped_small.haniwa.foot.archer"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-3/guard.ron b/assets/common/loadout/dungeon/tier-3/guard.ron index 526620f932..78e3878211 100644 --- a/assets/common/loadout/dungeon/tier-3/guard.ron +++ b/assets/common/loadout/dungeon/tier-3/guard.ron @@ -1,8 +1,8 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.haniwa.head.guard", - chest: "common.items.npc_armor.biped_small.haniwa.chest.guard", - gloves: "common.items.npc_armor.biped_small.haniwa.hand.guard", - legs: "common.items.npc_armor.biped_small.haniwa.pants.guard", - feet: "common.items.npc_armor.biped_small.haniwa.foot.guard", + head: Item("common.items.npc_armor.biped_small.haniwa.head.guard"), + chest: Item("common.items.npc_armor.biped_small.haniwa.chest.guard"), + gloves: Item("common.items.npc_armor.biped_small.haniwa.hand.guard"), + legs: Item("common.items.npc_armor.biped_small.haniwa.pants.guard"), + feet: Item("common.items.npc_armor.biped_small.haniwa.foot.guard"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-3/soldier.ron b/assets/common/loadout/dungeon/tier-3/soldier.ron index ad6e637cd3..6f0bfe5853 100644 --- a/assets/common/loadout/dungeon/tier-3/soldier.ron +++ b/assets/common/loadout/dungeon/tier-3/soldier.ron @@ -1,8 +1,8 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.haniwa.head.soldier", - chest: "common.items.npc_armor.biped_small.haniwa.chest.soldier", - gloves: "common.items.npc_armor.biped_small.haniwa.hand.soldier", - legs: "common.items.npc_armor.biped_small.haniwa.pants.soldier", - feet: "common.items.npc_armor.biped_small.haniwa.foot.soldier", + head: Item("common.items.npc_armor.biped_small.haniwa.head.soldier"), + chest: Item("common.items.npc_armor.biped_small.haniwa.chest.soldier"), + gloves: Item("common.items.npc_armor.biped_small.haniwa.hand.soldier"), + legs: Item("common.items.npc_armor.biped_small.haniwa.pants.soldier"), + feet: Item("common.items.npc_armor.biped_small.haniwa.foot.soldier"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-4/hoplite.ron b/assets/common/loadout/dungeon/tier-4/hoplite.ron index 9f10fa8826..7f643d8201 100644 --- a/assets/common/loadout/dungeon/tier-4/hoplite.ron +++ b/assets/common/loadout/dungeon/tier-4/hoplite.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.myrmidon.head.hoplite", - chest: "common.items.npc_armor.biped_small.myrmidon.chest.hoplite", - gloves: "common.items.npc_armor.biped_small.myrmidon.hand.hoplite", - belt: "common.items.npc_armor.biped_small.myrmidon.tail.hoplite", - legs: "common.items.npc_armor.biped_small.myrmidon.pants.hoplite", - feet: "common.items.npc_armor.biped_small.myrmidon.foot.hoplite", + head: Item("common.items.npc_armor.biped_small.myrmidon.head.hoplite"), + chest: Item("common.items.npc_armor.biped_small.myrmidon.chest.hoplite"), + gloves: Item("common.items.npc_armor.biped_small.myrmidon.hand.hoplite"), + belt: Item("common.items.npc_armor.biped_small.myrmidon.tail.hoplite"), + legs: Item("common.items.npc_armor.biped_small.myrmidon.pants.hoplite"), + feet: Item("common.items.npc_armor.biped_small.myrmidon.foot.hoplite"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-4/marksman.ron b/assets/common/loadout/dungeon/tier-4/marksman.ron index ef2adc6c21..ec28a2df1d 100644 --- a/assets/common/loadout/dungeon/tier-4/marksman.ron +++ b/assets/common/loadout/dungeon/tier-4/marksman.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.myrmidon.head.marksman", - chest: "common.items.npc_armor.biped_small.myrmidon.chest.marksman", - gloves: "common.items.npc_armor.biped_small.myrmidon.hand.marksman", - belt: "common.items.npc_armor.biped_small.myrmidon.tail.marksman", - legs: "common.items.npc_armor.biped_small.myrmidon.pants.marksman", - feet: "common.items.npc_armor.biped_small.myrmidon.foot.marksman", + head: Item("common.items.npc_armor.biped_small.myrmidon.head.marksman"), + chest: Item("common.items.npc_armor.biped_small.myrmidon.chest.marksman"), + gloves: Item("common.items.npc_armor.biped_small.myrmidon.hand.marksman"), + belt: Item("common.items.npc_armor.biped_small.myrmidon.tail.marksman"), + legs: Item("common.items.npc_armor.biped_small.myrmidon.pants.marksman"), + feet: Item("common.items.npc_armor.biped_small.myrmidon.foot.marksman"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-4/strategian.ron b/assets/common/loadout/dungeon/tier-4/strategian.ron index a44a9bd0de..9afa5e4bd6 100644 --- a/assets/common/loadout/dungeon/tier-4/strategian.ron +++ b/assets/common/loadout/dungeon/tier-4/strategian.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.myrmidon.head.strategian", - chest: "common.items.npc_armor.biped_small.myrmidon.chest.strategian", - gloves: "common.items.npc_armor.biped_small.myrmidon.hand.strategian", - belt: "common.items.npc_armor.biped_small.myrmidon.tail.strategian", - legs: "common.items.npc_armor.biped_small.myrmidon.pants.strategian", - feet: "common.items.npc_armor.biped_small.myrmidon.foot.strategian", + head: Item("common.items.npc_armor.biped_small.myrmidon.head.strategian"), + chest: Item("common.items.npc_armor.biped_small.myrmidon.chest.strategian"), + gloves: Item("common.items.npc_armor.biped_small.myrmidon.hand.strategian"), + belt: Item("common.items.npc_armor.biped_small.myrmidon.tail.strategian"), + legs: Item("common.items.npc_armor.biped_small.myrmidon.pants.strategian"), + feet: Item("common.items.npc_armor.biped_small.myrmidon.foot.strategian"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-5/beastmaster.ron b/assets/common/loadout/dungeon/tier-5/beastmaster.ron index 854d0d7a3e..04548cb6a3 100644 --- a/assets/common/loadout/dungeon/tier-5/beastmaster.ron +++ b/assets/common/loadout/dungeon/tier-5/beastmaster.ron @@ -1,15 +1,15 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.ferocious.shoulder", - chest: "common.items.armor.ferocious.chest", - gloves: "common.items.armor.ferocious.hand", - back: "common.items.armor.ferocious.back", - belt: "common.items.armor.ferocious.belt", - legs: "common.items.armor.ferocious.pants", - feet: "common.items.armor.ferocious.foot", - lantern: [ - (1, "common.items.lantern.black_0"), + shoulders: Item("common.items.armor.ferocious.shoulder"), + chest: Item("common.items.armor.ferocious.chest"), + gloves: Item("common.items.armor.ferocious.hand"), + back: Item("common.items.armor.ferocious.back"), + belt: Item("common.items.armor.ferocious.belt"), + legs: Item("common.items.armor.ferocious.pants"), + feet: Item("common.items.armor.ferocious.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), (2, None), - ], - glider: "common.items.glider.blue", + ]), + glider: Item("common.items.glider.blue"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-5/cultist.ron b/assets/common/loadout/dungeon/tier-5/cultist.ron index e12ac68ee8..a147f8950c 100644 --- a/assets/common/loadout/dungeon/tier-5/cultist.ron +++ b/assets/common/loadout/dungeon/tier-5/cultist.ron @@ -1,37 +1,29 @@ //Little easter egg, lost their mask in a chest #![enable(implicit_some)] ( - head: [ - (111, "common.items.armor.cultist.bandana"), + head: Choice([ + (111, Item("common.items.armor.cultist.bandana")), (1, None), - ], - shoulders: "common.items.armor.cultist.shoulder", - chest: "common.items.armor.cultist.chest", - gloves: "common.items.armor.cultist.hand", - back: "common.items.armor.misc.back.dungeon_purple", - belt: "common.items.armor.cultist.belt", - legs: "common.items.armor.cultist.pants", - feet: "common.items.armor.cultist.foot", - lantern: [ - (1, "common.items.lantern.black_0"), + ]), + shoulders: Item("common.items.armor.cultist.shoulder"), + chest: Item("common.items.armor.cultist.chest"), + gloves: Item("common.items.armor.cultist.hand"), + back: Item("common.items.armor.misc.back.dungeon_purple"), + belt: Item("common.items.armor.cultist.belt"), + legs: Item("common.items.armor.cultist.pants"), + feet: Item("common.items.armor.cultist.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), (2, None), - ], - glider: "common.items.glider.skullgrin", - active_hands: ([ - (2, ( - tool: Axe, - material: Orichalcum, - hands: None, - )), - (4, "common.items.weapons.sword.cultist"), - (2, "common.items.weapons.staff.cultist_staff"), - (2, "common.items.weapons.hammer.cultist_purp_2h-0"), - (2, ( - tool: Hammer, - material: Orichalcum, - hands: None, - )), - (2, "common.items.weapons.bow.velorite"), - (1, "common.items.weapons.sceptre.sceptre_velorite_0"), - ], None), + ]), + glider: Item("common.items.glider.skullgrin"), + active_hands: InHands((Choice([ + (2, ModularWeapon(tool: Axe, material: Orichalcum, hands: None)), + (4, Item("common.items.weapons.sword.cultist")), + (2, Item("common.items.weapons.staff.cultist_staff")), + (2, Item("common.items.weapons.hammer.cultist_purp_2h-0")), + (2, ModularWeapon(tool: Hammer, material: Orichalcum, hands: None)), + (2, Item("common.items.weapons.bow.velorite")), + (1, Item("common.items.weapons.sceptre.sceptre_velorite_0")), + ]), None)), ) diff --git a/assets/common/loadout/dungeon/tier-5/husk.ron b/assets/common/loadout/dungeon/tier-5/husk.ron index 3020b583d2..35169c5eb5 100644 --- a/assets/common/loadout/dungeon/tier-5/husk.ron +++ b/assets/common/loadout/dungeon/tier-5/husk.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.husk.head.husk", - chest: "common.items.npc_armor.biped_small.husk.chest.husk", - gloves: "common.items.npc_armor.biped_small.husk.hand.husk", - legs: "common.items.npc_armor.biped_small.husk.pants.husk", - feet: "common.items.npc_armor.biped_small.husk.foot.husk", - active_hands: ("common.items.npc_weapons.unique.husk", None), + head: Item("common.items.npc_armor.biped_small.husk.head.husk"), + chest: Item("common.items.npc_armor.biped_small.husk.chest.husk"), + gloves: Item("common.items.npc_armor.biped_small.husk.hand.husk"), + legs: Item("common.items.npc_armor.biped_small.husk.pants.husk"), + feet: Item("common.items.npc_armor.biped_small.husk.foot.husk"), + active_hands: InHands((Item("common.items.npc_weapons.unique.husk"), None)), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-5/warlock.ron b/assets/common/loadout/dungeon/tier-5/warlock.ron index d2c4fc0fc5..242c37d474 100644 --- a/assets/common/loadout/dungeon/tier-5/warlock.ron +++ b/assets/common/loadout/dungeon/tier-5/warlock.ron @@ -1,4 +1,4 @@ #![enable(implicit_some)] ( - chest: "common.items.npc_armor.biped_large.warlock", + chest: Item("common.items.npc_armor.biped_large.warlock"), ) \ No newline at end of file diff --git a/assets/common/loadout/dungeon/tier-5/warlord.ron b/assets/common/loadout/dungeon/tier-5/warlord.ron index 1385b68e94..d69251eda7 100644 --- a/assets/common/loadout/dungeon/tier-5/warlord.ron +++ b/assets/common/loadout/dungeon/tier-5/warlord.ron @@ -1,4 +1,4 @@ #![enable(implicit_some)] ( - chest: "common.items.npc_armor.biped_large.warlord", + chest: Item("common.items.npc_armor.biped_large.warlord"), ) \ No newline at end of file diff --git a/assets/common/loadout/spots/dwarf_graverobber.ron b/assets/common/loadout/spots/dwarf_graverobber.ron index 558fc7c66b..a1e224fe4b 100644 --- a/assets/common/loadout/spots/dwarf_graverobber.ron +++ b/assets/common/loadout/spots/dwarf_graverobber.ron @@ -1,19 +1,19 @@ #![enable(implicit_some)] ( - head: [ - (1, "common.items.armor.misc.head.bandana.thief"), - (1, "common.items.armor.misc.head.bandana.red"), - (1, "common.items.armor.misc.head.hood"), - (1, "common.items.armor.misc.head.hood_dark"), - ], - shoulders: "common.items.armor.hide.rawhide.shoulder", - chest: "common.items.armor.hide.rawhide.chest", - gloves: "common.items.armor.hide.rawhide.hand", - belt: "common.items.armor.hide.rawhide.belt", - legs: "common.items.armor.hide.rawhide.pants", - feet: "common.items.armor.hide.rawhide.foot", - lantern: [ - (1, "common.items.lantern.black_0"), + head: Choice([ + (1, Item("common.items.armor.misc.head.bandana.thief")), + (1, Item("common.items.armor.misc.head.bandana.red")), + (1, Item("common.items.armor.misc.head.hood")), + (1, Item("common.items.armor.misc.head.hood_dark")), + ]), + shoulders: Item("common.items.armor.hide.rawhide.shoulder"), + chest: Item("common.items.armor.hide.rawhide.chest"), + gloves: Item("common.items.armor.hide.rawhide.hand"), + belt: Item("common.items.armor.hide.rawhide.belt"), + legs: Item("common.items.armor.hide.rawhide.pants"), + feet: Item("common.items.armor.hide.rawhide.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), (2, None), - ], + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/spots/gnome.ron b/assets/common/loadout/spots/gnome.ron index 492528c613..5bb5f1946e 100644 --- a/assets/common/loadout/spots/gnome.ron +++ b/assets/common/loadout/spots/gnome.ron @@ -1,8 +1,8 @@ #![enable(implicit_some)] ( - head: "common.items.npc_armor.biped_small.gnome.head.gnome", - chest: "common.items.npc_armor.biped_small.gnome.chest.gnome", - gloves: "common.items.npc_armor.biped_small.gnome.hand.gnome", - legs: "common.items.npc_armor.biped_small.gnome.pants.gnome", - feet: "common.items.npc_armor.biped_small.gnome.foot.gnome", + head: Item("common.items.npc_armor.biped_small.gnome.head.gnome"), + chest: Item("common.items.npc_armor.biped_small.gnome.chest.gnome"), + gloves: Item("common.items.npc_armor.biped_small.gnome.hand.gnome"), + legs: Item("common.items.npc_armor.biped_small.gnome.pants.gnome"), + feet: Item("common.items.npc_armor.biped_small.gnome.foot.gnome"), ) \ No newline at end of file diff --git a/assets/common/loadout/spots/pirate.ron b/assets/common/loadout/spots/pirate.ron index b992dae53f..07d7f3bead 100644 --- a/assets/common/loadout/spots/pirate.ron +++ b/assets/common/loadout/spots/pirate.ron @@ -1,11 +1,11 @@ #![enable(implicit_some)] ( - head: "common.items.armor.pirate.hat", - shoulders: "common.items.armor.pirate.shoulder", - chest: "common.items.armor.pirate.chest", - gloves: "common.items.armor.pirate.hand", - belt: "common.items.armor.pirate.belt", - legs: "common.items.armor.pirate.pants", - feet: "common.items.armor.pirate.foot", - lantern: "common.items.lantern.black_0", + head: Item("common.items.armor.pirate.hat"), + shoulders: Item("common.items.armor.pirate.shoulder"), + chest: Item("common.items.armor.pirate.chest"), + gloves: Item("common.items.armor.pirate.hand"), + belt: Item("common.items.armor.pirate.belt"), + legs: Item("common.items.armor.pirate.pants"), + feet: Item("common.items.armor.pirate.foot"), + lantern: Item("common.items.lantern.black_0"), ) \ No newline at end of file diff --git a/assets/common/loadout/spots/witch.ron b/assets/common/loadout/spots/witch.ron index 878453889c..bb4011015b 100644 --- a/assets/common/loadout/spots/witch.ron +++ b/assets/common/loadout/spots/witch.ron @@ -1,11 +1,11 @@ #![enable(implicit_some)] ( - head: "common.items.armor.witch.hat", - shoulders: "common.items.armor.witch.shoulder", - chest: "common.items.armor.witch.chest", - gloves: "common.items.armor.witch.hand", - belt: "common.items.armor.witch.belt", - legs: "common.items.armor.witch.pants", - feet: "common.items.armor.witch.foot", - lantern: "common.items.lantern.pumpkin", + head: Item("common.items.armor.witch.hat"), + shoulders: Item("common.items.armor.witch.shoulder"), + chest: Item("common.items.armor.witch.chest"), + gloves: Item("common.items.armor.witch.hand"), + belt: Item("common.items.armor.witch.belt"), + legs: Item("common.items.armor.witch.pants"), + feet: Item("common.items.armor.witch.foot"), + lantern: Item("common.items.lantern.pumpkin"), ) \ No newline at end of file diff --git a/assets/common/loadout/village/alchemist.ron b/assets/common/loadout/village/alchemist.ron index 33b2e9020e..5d6ca7ab1a 100644 --- a/assets/common/loadout/village/alchemist.ron +++ b/assets/common/loadout/village/alchemist.ron @@ -1,10 +1,10 @@ #![enable(implicit_some)] ( - head: "common.items.armor.alchemist.hat", - chest: "common.items.armor.alchemist.chest", - gloves: "common.items.armor.cloth.druid.hand", - belt: "common.items.armor.alchemist.belt", - legs: "common.items.armor.alchemist.pants", - feet: "common.items.armor.ferocious.foot", - lantern: "common.items.lantern.black_0", + head: Item("common.items.armor.alchemist.hat"), + chest: Item("common.items.armor.alchemist.chest"), + gloves: Item("common.items.armor.cloth.druid.hand"), + belt: Item("common.items.armor.alchemist.belt"), + legs: Item("common.items.armor.alchemist.pants"), + feet: Item("common.items.armor.ferocious.foot"), + lantern: Item("common.items.lantern.black_0"), ) \ No newline at end of file diff --git a/assets/common/loadout/village/blacksmith.ron b/assets/common/loadout/village/blacksmith.ron index 271d1827c0..3776d7d9aa 100644 --- a/assets/common/loadout/village/blacksmith.ron +++ b/assets/common/loadout/village/blacksmith.ron @@ -1,10 +1,10 @@ #![enable(implicit_some)] ( - head: "common.items.armor.blacksmith.hat", - chest: "common.items.armor.blacksmith.chest", - gloves: "common.items.armor.blacksmith.hand", - belt: "common.items.armor.blacksmith.belt", - legs: "common.items.armor.blacksmith.pants", - feet: "common.items.armor.mail.iron.foot", - lantern: "common.items.lantern.black_0", + head: Item("common.items.armor.blacksmith.hat"), + chest: Item("common.items.armor.blacksmith.chest"), + gloves: Item("common.items.armor.blacksmith.hand"), + belt: Item("common.items.armor.blacksmith.belt"), + legs: Item("common.items.armor.blacksmith.pants"), + feet: Item("common.items.armor.mail.iron.foot"), + lantern: Item("common.items.lantern.black_0"), ) \ No newline at end of file diff --git a/assets/common/loadout/village/chef.ron b/assets/common/loadout/village/chef.ron index e151956f7d..7496dce306 100644 --- a/assets/common/loadout/village/chef.ron +++ b/assets/common/loadout/village/chef.ron @@ -1,9 +1,9 @@ #![enable(implicit_some)] ( - head: "common.items.armor.chef.hat", - chest: "common.items.armor.chef.chest", - gloves: "common.items.armor.cloth.linen.hand", - belt: "common.items.armor.chef.belt", - legs: "common.items.armor.chef.pants", - feet: "common.items.armor.cloth.linen.foot", + head: Item("common.items.armor.chef.hat"), + chest: Item("common.items.armor.chef.chest"), + gloves: Item("common.items.armor.cloth.linen.hand"), + belt: Item("common.items.armor.chef.belt"), + legs: Item("common.items.armor.chef.pants"), + feet: Item("common.items.armor.cloth.linen.foot"), ) \ No newline at end of file diff --git a/assets/common/loadout/village/guard.ron b/assets/common/loadout/village/guard.ron index da3b1dbe36..172899a959 100644 --- a/assets/common/loadout/village/guard.ron +++ b/assets/common/loadout/village/guard.ron @@ -7,17 +7,17 @@ //(2.0, Some(Item("common.items.lantern.green_0"))), #![enable(implicit_some)] ( - head: [ - (1, "common.items.armor.misc.head.helmet"), - ], - shoulders: "common.items.armor.leather_plate.shoulder", - chest: "common.items.armor.leather_plate.chest", - gloves: "common.items.armor.leather_plate.hand", - belt: "common.items.armor.leather_plate.belt", - legs: "common.items.armor.leather_plate.pants", - feet: "common.items.armor.leather_plate.foot", - lantern: [ - (1, "common.items.lantern.black_0"), + head: Choice([ + (1, Item("common.items.armor.misc.head.helmet")), + ]), + shoulders: Item("common.items.armor.leather_plate.shoulder"), + chest: Item("common.items.armor.leather_plate.chest"), + gloves: Item("common.items.armor.leather_plate.hand"), + belt: Item("common.items.armor.leather_plate.belt"), + legs: Item("common.items.armor.leather_plate.pants"), + feet: Item("common.items.armor.leather_plate.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), (2, None), - ], + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/village/merchant.ron b/assets/common/loadout/village/merchant.ron index cd94d4731a..d5336dfd8f 100644 --- a/assets/common/loadout/village/merchant.ron +++ b/assets/common/loadout/village/merchant.ron @@ -1,14 +1,14 @@ #![enable(implicit_some)] ( - head: "common.items.armor.merchant.turban", - neck: "common.items.armor.misc.neck.gem_of_resilience", - shoulders: "common.items.armor.merchant.shoulder", - chest: "common.items.armor.merchant.chest", - gloves: "common.items.armor.merchant.hand", - ring1: "common.items.armor.misc.ring.gold", - ring2: "common.items.armor.misc.ring.gold", - belt: "common.items.armor.merchant.belt", - legs: "common.items.armor.merchant.pants", - feet: "common.items.armor.merchant.foot", - lantern: "common.items.lantern.black_0", + head: Item("common.items.armor.merchant.turban"), + neck: Item("common.items.armor.misc.neck.gem_of_resilience"), + shoulders: Item("common.items.armor.merchant.shoulder"), + chest: Item("common.items.armor.merchant.chest"), + gloves: Item("common.items.armor.merchant.hand"), + ring1: Item("common.items.armor.misc.ring.gold"), + ring2: Item("common.items.armor.misc.ring.gold"), + belt: Item("common.items.armor.merchant.belt"), + legs: Item("common.items.armor.merchant.pants"), + feet: Item("common.items.armor.merchant.foot"), + lantern: Item("common.items.lantern.black_0"), ) \ No newline at end of file diff --git a/assets/common/loadout/village/mountaineer.ron b/assets/common/loadout/village/mountaineer.ron index 82755e9fd6..9b4d4fea7c 100644 --- a/assets/common/loadout/village/mountaineer.ron +++ b/assets/common/loadout/village/mountaineer.ron @@ -2,39 +2,39 @@ //(1.0, Some(Item("common.items.calendar.christmas.armor.misc.head.woolly_wintercap"))), #![enable(implicit_some)] ( - head: [ - (1, "common.items.armor.misc.head.headband"), + head: Choice([ + (1, Item("common.items.armor.misc.head.headband")), (2, None), - ], - shoulders: [ - (1, "common.items.armor.cloth_blue.shoulder_0"), - (1, "common.items.armor.cloth_blue.shoulder_1"), - (1, "common.items.armor.cloth_green.shoulder"), - (1, "common.items.armor.cloth_purple.shoulder"), - ], - chest: [ - (1, "common.items.armor.cloth_blue.chest"), - (1, "common.items.armor.cloth_green.chest"), - (1, "common.items.armor.cloth_purple.chest"), - ], - gloves: [ - (1, "common.items.armor.cloth_blue.hand"), - (1, "common.items.armor.cloth_green.hand"), - (1, "common.items.armor.cloth_purple.hand"), - ], - belt: [ - (1, "common.items.armor.cloth_blue.belt"), - (1, "common.items.armor.cloth_green.belt"), - (1, "common.items.armor.cloth_purple.belt"), - ], - legs: [ - (1, "common.items.armor.cloth_blue.pants"), - (1, "common.items.armor.cloth_green.pants"), - (1, "common.items.armor.cloth_purple.pants"), - ], - feet: [ - (1, "common.items.armor.cloth_blue.foot"), - (1, "common.items.armor.cloth_green.foot"), - (1, "common.items.armor.cloth_purple.foot"), - ], + ]), + shoulders: Choice([ + (1, Item("common.items.armor.cloth_blue.shoulder_0")), + (1, Item("common.items.armor.cloth_blue.shoulder_1")), + (1, Item("common.items.armor.cloth_green.shoulder")), + (1, Item("common.items.armor.cloth_purple.shoulder")), + ]), + chest: Choice([ + (1, Item("common.items.armor.cloth_blue.chest")), + (1, Item("common.items.armor.cloth_green.chest")), + (1, Item("common.items.armor.cloth_purple.chest")), + ]), + gloves: Choice([ + (1, Item("common.items.armor.cloth_blue.hand")), + (1, Item("common.items.armor.cloth_green.hand")), + (1, Item("common.items.armor.cloth_purple.hand")), + ]), + belt: Choice([ + (1, Item("common.items.armor.cloth_blue.belt")), + (1, Item("common.items.armor.cloth_green.belt")), + (1, Item("common.items.armor.cloth_purple.belt")), + ]), + legs: Choice([ + (1, Item("common.items.armor.cloth_blue.pants")), + (1, Item("common.items.armor.cloth_green.pants")), + (1, Item("common.items.armor.cloth_purple.pants")), + ]), + feet: Choice([ + (1, Item("common.items.armor.cloth_blue.foot")), + (1, Item("common.items.armor.cloth_green.foot")), + (1, Item("common.items.armor.cloth_purple.foot")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/village/villager.ron b/assets/common/loadout/village/villager.ron index ab77a426e5..a5b4ebb30c 100644 --- a/assets/common/loadout/village/villager.ron +++ b/assets/common/loadout/village/villager.ron @@ -2,28 +2,28 @@ //(1.0, Some(Item("common.items.calendar.christmas.armor.misc.head.woolly_wintercap"))), #![enable(implicit_some)] ( - head: [ - (1, "common.items.armor.misc.head.straw"), + head: Choice([ + (1, Item("common.items.armor.misc.head.straw")), (2, None), - ], - chest: [ - (1, "common.items.armor.misc.chest.worker_green_0"), - (1, "common.items.armor.misc.chest.worker_green_1"), - (1, "common.items.armor.misc.chest.worker_red_0"), - (1, "common.items.armor.misc.chest.worker_red_1"), - (1, "common.items.armor.misc.chest.worker_purple_0"), - (1, "common.items.armor.misc.chest.worker_purple_1"), - (1, "common.items.armor.misc.chest.worker_yellow_0"), - (1, "common.items.armor.misc.chest.worker_yellow_1"), - (1, "common.items.armor.misc.chest.worker_orange_0"), - (1, "common.items.armor.misc.chest.worker_orange_1"), - ], - legs: [ - (1, "common.items.armor.misc.pants.worker_blue"), - (1, "common.items.armor.misc.pants.worker_brown"), - ], - feet: [ - (1, "common.items.armor.misc.foot.sandals"), - (1, "common.items.armor.cloth_blue.foot"), - ], + ]), + chest: Choice([ + (1, Item("common.items.armor.misc.chest.worker_green_0")), + (1, Item("common.items.armor.misc.chest.worker_green_1")), + (1, Item("common.items.armor.misc.chest.worker_red_0")), + (1, Item("common.items.armor.misc.chest.worker_red_1")), + (1, Item("common.items.armor.misc.chest.worker_purple_0")), + (1, Item("common.items.armor.misc.chest.worker_purple_1")), + (1, Item("common.items.armor.misc.chest.worker_yellow_0")), + (1, Item("common.items.armor.misc.chest.worker_yellow_1")), + (1, Item("common.items.armor.misc.chest.worker_orange_0")), + (1, Item("common.items.armor.misc.chest.worker_orange_1")), + ]), + legs: Choice([ + (1, Item("common.items.armor.misc.pants.worker_blue")), + (1, Item("common.items.armor.misc.pants.worker_brown")), + ]), + feet: Choice([ + (1, Item("common.items.armor.misc.foot.sandals")), + (1, Item("common.items.armor.cloth_blue.foot")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler0/bronze.ron b/assets/common/loadout/world/traveler0/bronze.ron index fe6ef6dffb..94e71db5d6 100644 --- a/assets/common/loadout/world/traveler0/bronze.ron +++ b/assets/common/loadout/world/traveler0/bronze.ron @@ -1,16 +1,16 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.mail.bronze.shoulder", - chest: "common.items.armor.mail.bronze.chest", - gloves: "common.items.armor.mail.bronze.hand", - back: [ - (1, "common.items.armor.mail.bronze.back"), + shoulders: Item("common.items.armor.mail.bronze.shoulder"), + chest: Item("common.items.armor.mail.bronze.chest"), + gloves: Item("common.items.armor.mail.bronze.hand"), + back: Choice([ + (1, Item("common.items.armor.mail.bronze.back")), (1, None), - ], - belt: "common.items.armor.mail.bronze.belt", - legs: "common.items.armor.mail.bronze.pants", - feet: "common.items.armor.mail.bronze.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - ], + ]), + belt: Item("common.items.armor.mail.bronze.belt"), + legs: Item("common.items.armor.mail.bronze.pants"), + feet: Item("common.items.armor.mail.bronze.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler0/linen.ron b/assets/common/loadout/world/traveler0/linen.ron index 6cd58fd4ba..c2d8bc9352 100644 --- a/assets/common/loadout/world/traveler0/linen.ron +++ b/assets/common/loadout/world/traveler0/linen.ron @@ -1,16 +1,16 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.cloth.linen.shoulder", - chest: "common.items.armor.cloth.linen.chest", - gloves: "common.items.armor.cloth.linen.hand", - back: [ - (1, "common.items.armor.cloth.linen.back"), + shoulders: Item("common.items.armor.cloth.linen.shoulder"), + chest: Item("common.items.armor.cloth.linen.chest"), + gloves: Item("common.items.armor.cloth.linen.hand"), + back: Choice([ + (1, Item("common.items.armor.cloth.linen.back")), (1, None), - ], - belt: "common.items.armor.cloth.linen.belt", - legs: "common.items.armor.cloth.linen.pants", - feet: "common.items.armor.cloth.linen.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - ], + ]), + belt: Item("common.items.armor.cloth.linen.belt"), + legs: Item("common.items.armor.cloth.linen.pants"), + feet: Item("common.items.armor.cloth.linen.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler0/rawhide.ron b/assets/common/loadout/world/traveler0/rawhide.ron index 79900b1050..7b575cd327 100644 --- a/assets/common/loadout/world/traveler0/rawhide.ron +++ b/assets/common/loadout/world/traveler0/rawhide.ron @@ -1,16 +1,16 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.hide.rawhide.shoulder", - chest: "common.items.armor.hide.rawhide.chest", - gloves: "common.items.armor.hide.rawhide.hand", - back: [ - (1, "common.items.armor.hide.rawhide.back"), + shoulders: Item("common.items.armor.hide.rawhide.shoulder"), + chest: Item("common.items.armor.hide.rawhide.chest"), + gloves: Item("common.items.armor.hide.rawhide.hand"), + back: Choice([ + (1, Item("common.items.armor.hide.rawhide.back")), (1, None), - ], - belt: "common.items.armor.hide.rawhide.belt", - legs: "common.items.armor.hide.rawhide.pants", - feet: "common.items.armor.hide.rawhide.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - ], + ]), + belt: Item("common.items.armor.hide.rawhide.belt"), + legs: Item("common.items.armor.hide.rawhide.pants"), + feet: Item("common.items.armor.hide.rawhide.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler1/iron.ron b/assets/common/loadout/world/traveler1/iron.ron index ad25bde6e2..014e0b0b54 100644 --- a/assets/common/loadout/world/traveler1/iron.ron +++ b/assets/common/loadout/world/traveler1/iron.ron @@ -1,21 +1,21 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.mail.iron.shoulder", - chest: "common.items.armor.mail.iron.chest", - gloves: "common.items.armor.mail.iron.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.mail.iron.back"), + shoulders: Item("common.items.armor.mail.iron.shoulder"), + chest: Item("common.items.armor.mail.iron.chest"), + gloves: Item("common.items.armor.mail.iron.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.mail.iron.back")), (1, None), - ], - belt: "common.items.armor.mail.iron.belt", - legs: "common.items.armor.mail.iron.pants", - feet: "common.items.armor.mail.iron.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.red_0"), - ], + ]), + belt: Item("common.items.armor.mail.iron.belt"), + legs: Item("common.items.armor.mail.iron.pants"), + feet: Item("common.items.armor.mail.iron.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.red_0")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler1/leather.ron b/assets/common/loadout/world/traveler1/leather.ron index 0e0b4cc059..1145090c33 100644 --- a/assets/common/loadout/world/traveler1/leather.ron +++ b/assets/common/loadout/world/traveler1/leather.ron @@ -1,21 +1,21 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.hide.leather.shoulder", - chest: "common.items.armor.hide.leather.chest", - gloves: "common.items.armor.hide.leather.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.hide.leather.back"), + shoulders: Item("common.items.armor.hide.leather.shoulder"), + chest: Item("common.items.armor.hide.leather.chest"), + gloves: Item("common.items.armor.hide.leather.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.hide.leather.back")), (1, None), - ], - belt: "common.items.armor.hide.leather.belt", - legs: "common.items.armor.hide.leather.pants", - feet: "common.items.armor.hide.leather.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.red_0"), - ], + ]), + belt: Item("common.items.armor.hide.leather.belt"), + legs: Item("common.items.armor.hide.leather.pants"), + feet: Item("common.items.armor.hide.leather.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.red_0")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler1/wool.ron b/assets/common/loadout/world/traveler1/wool.ron index 8355c7485f..a2cadf9a25 100644 --- a/assets/common/loadout/world/traveler1/wool.ron +++ b/assets/common/loadout/world/traveler1/wool.ron @@ -1,21 +1,21 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.cloth.woolen.shoulder", - chest: "common.items.armor.cloth.woolen.chest", - gloves: "common.items.armor.cloth.woolen.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.cloth.woolen.back"), + shoulders: Item("common.items.armor.cloth.woolen.shoulder"), + chest: Item("common.items.armor.cloth.woolen.chest"), + gloves: Item("common.items.armor.cloth.woolen.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.cloth.woolen.back")), (1, None), - ], - belt: "common.items.armor.cloth.woolen.belt", - legs: "common.items.armor.cloth.woolen.pants", - feet: "common.items.armor.cloth.woolen.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.red_0"), - ], + ]), + belt: Item("common.items.armor.cloth.woolen.belt"), + legs: Item("common.items.armor.cloth.woolen.pants"), + feet: Item("common.items.armor.cloth.woolen.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.red_0")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler2/carapace.ron b/assets/common/loadout/world/traveler2/carapace.ron index 893dfe00fd..d83423fc2e 100644 --- a/assets/common/loadout/world/traveler2/carapace.ron +++ b/assets/common/loadout/world/traveler2/carapace.ron @@ -1,21 +1,21 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.hide.carapace.shoulder", - chest: "common.items.armor.hide.carapace.chest", - gloves: "common.items.armor.hide.carapace.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.hide.carapace.back"), + shoulders: Item("common.items.armor.hide.carapace.shoulder"), + chest: Item("common.items.armor.hide.carapace.chest"), + gloves: Item("common.items.armor.hide.carapace.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.hide.carapace.back")), (1, None), - ], - belt: "common.items.armor.hide.carapace.belt", - legs: "common.items.armor.hide.carapace.pants", - feet: "common.items.armor.hide.carapace.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.geode_purp"), - ], + ]), + belt: Item("common.items.armor.hide.carapace.belt"), + legs: Item("common.items.armor.hide.carapace.pants"), + feet: Item("common.items.armor.hide.carapace.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.geode_purp")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler2/cobalt.ron b/assets/common/loadout/world/traveler2/cobalt.ron index 1109f3489c..2f2f98ee65 100644 --- a/assets/common/loadout/world/traveler2/cobalt.ron +++ b/assets/common/loadout/world/traveler2/cobalt.ron @@ -1,21 +1,21 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.mail.cobalt.shoulder", - chest: "common.items.armor.mail.cobalt.chest", - gloves: "common.items.armor.mail.cobalt.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.mail.cobalt.back"), + shoulders: Item("common.items.armor.mail.cobalt.shoulder"), + chest: Item("common.items.armor.mail.cobalt.chest"), + gloves: Item("common.items.armor.mail.cobalt.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.mail.cobalt.back")), (1, None), - ], - belt: "common.items.armor.mail.cobalt.belt", - legs: "common.items.armor.mail.cobalt.pants", - feet: "common.items.armor.mail.cobalt.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.geode_purp"), - ], + ]), + belt: Item("common.items.armor.mail.cobalt.belt"), + legs: Item("common.items.armor.mail.cobalt.pants"), + feet: Item("common.items.armor.mail.cobalt.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.geode_purp")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler2/druid.ron b/assets/common/loadout/world/traveler2/druid.ron index b0b6cf5dae..7da510846e 100644 --- a/assets/common/loadout/world/traveler2/druid.ron +++ b/assets/common/loadout/world/traveler2/druid.ron @@ -1,21 +1,21 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.cloth.druid.shoulder", - chest: "common.items.armor.cloth.druid.chest", - gloves: "common.items.armor.cloth.druid.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.cloth.druid.back"), + shoulders: Item("common.items.armor.cloth.druid.shoulder"), + chest: Item("common.items.armor.cloth.druid.chest"), + gloves: Item("common.items.armor.cloth.druid.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.cloth.druid.back")), (1, None), - ], - belt: "common.items.armor.cloth.druid.belt", - legs: "common.items.armor.cloth.druid.pants", - feet: "common.items.armor.cloth.druid.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.geode_purp"), - ], + ]), + belt: Item("common.items.armor.cloth.druid.belt"), + legs: Item("common.items.armor.cloth.druid.pants"), + feet: Item("common.items.armor.cloth.druid.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.geode_purp")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler2/scale.ron b/assets/common/loadout/world/traveler2/scale.ron index f859a9bbd5..a2f34397e4 100644 --- a/assets/common/loadout/world/traveler2/scale.ron +++ b/assets/common/loadout/world/traveler2/scale.ron @@ -1,21 +1,21 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.hide.scale.shoulder", - chest: "common.items.armor.hide.scale.chest", - gloves: "common.items.armor.hide.scale.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.hide.scale.back"), + shoulders: Item("common.items.armor.hide.scale.shoulder"), + chest: Item("common.items.armor.hide.scale.chest"), + gloves: Item("common.items.armor.hide.scale.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.hide.scale.back")), (1, None), - ], - belt: "common.items.armor.hide.scale.belt", - legs: "common.items.armor.hide.scale.pants", - feet: "common.items.armor.hide.scale.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.geode_purp"), - ], + ]), + belt: Item("common.items.armor.hide.scale.belt"), + legs: Item("common.items.armor.hide.scale.pants"), + feet: Item("common.items.armor.hide.scale.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.geode_purp")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler2/silk.ron b/assets/common/loadout/world/traveler2/silk.ron index ef1e775023..dbf968a4e7 100644 --- a/assets/common/loadout/world/traveler2/silk.ron +++ b/assets/common/loadout/world/traveler2/silk.ron @@ -1,21 +1,21 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.cloth.silken.shoulder", - chest: "common.items.armor.cloth.silken.chest", - gloves: "common.items.armor.cloth.silken.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.cloth.silken.back"), + shoulders: Item("common.items.armor.cloth.silken.shoulder"), + chest: Item("common.items.armor.cloth.silken.chest"), + gloves: Item("common.items.armor.cloth.silken.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.cloth.silken.back")), (1, None), - ], - belt: "common.items.armor.cloth.silken.belt", - legs: "common.items.armor.cloth.silken.pants", - feet: "common.items.armor.cloth.silken.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.geode_purp"), - ], + ]), + belt: Item("common.items.armor.cloth.silken.belt"), + legs: Item("common.items.armor.cloth.silken.pants"), + feet: Item("common.items.armor.cloth.silken.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.geode_purp")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler2/steel.ron b/assets/common/loadout/world/traveler2/steel.ron index 7237000207..08715df7ab 100644 --- a/assets/common/loadout/world/traveler2/steel.ron +++ b/assets/common/loadout/world/traveler2/steel.ron @@ -1,21 +1,21 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.mail.steel.shoulder", - chest: "common.items.armor.mail.steel.chest", - gloves: "common.items.armor.mail.steel.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.mail.steel.back"), + shoulders: Item("common.items.armor.mail.steel.shoulder"), + chest: Item("common.items.armor.mail.steel.chest"), + gloves: Item("common.items.armor.mail.steel.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.mail.steel.back")), (1, None), - ], - belt: "common.items.armor.mail.steel.belt", - legs: "common.items.armor.mail.steel.pants", - feet: "common.items.armor.mail.steel.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.geode_purp"), - ], + ]), + belt: Item("common.items.armor.mail.steel.belt"), + legs: Item("common.items.armor.mail.steel.pants"), + feet: Item("common.items.armor.mail.steel.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.geode_purp")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler3/bloodsteel.ron b/assets/common/loadout/world/traveler3/bloodsteel.ron index 44fa4d9f12..d041347977 100644 --- a/assets/common/loadout/world/traveler3/bloodsteel.ron +++ b/assets/common/loadout/world/traveler3/bloodsteel.ron @@ -1,23 +1,23 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.mail.bloodsteel.shoulder", - chest: "common.items.armor.mail.bloodsteel.chest", - gloves: "common.items.armor.mail.bloodsteel.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.mail.bloodsteel.back"), + shoulders: Item("common.items.armor.mail.bloodsteel.shoulder"), + chest: Item("common.items.armor.mail.bloodsteel.chest"), + gloves: Item("common.items.armor.mail.bloodsteel.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.mail.bloodsteel.back")), (1, None), - ], - belt: "common.items.armor.mail.bloodsteel.belt", - legs: "common.items.armor.mail.bloodsteel.pants", - feet: "common.items.armor.mail.bloodsteel.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.red_0"), - (1, "common.items.lantern.geode_purp"), - (1, "common.items.boss_drops.lantern"), - ], + ]), + belt: Item("common.items.armor.mail.bloodsteel.belt"), + legs: Item("common.items.armor.mail.bloodsteel.pants"), + feet: Item("common.items.armor.mail.bloodsteel.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.red_0")), + (1, Item("common.items.lantern.geode_purp")), + (1, Item("common.items.boss_drops.lantern")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler3/dragonscale.ron b/assets/common/loadout/world/traveler3/dragonscale.ron index 39694290bb..4d42cefdd0 100644 --- a/assets/common/loadout/world/traveler3/dragonscale.ron +++ b/assets/common/loadout/world/traveler3/dragonscale.ron @@ -1,23 +1,23 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.hide.dragonscale.shoulder", - chest: "common.items.armor.hide.dragonscale.chest", - gloves: "common.items.armor.hide.dragonscale.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.hide.dragonscale.back"), + shoulders: Item("common.items.armor.hide.dragonscale.shoulder"), + chest: Item("common.items.armor.hide.dragonscale.chest"), + gloves: Item("common.items.armor.hide.dragonscale.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.hide.dragonscale.back")), (1, None), - ], - belt: "common.items.armor.hide.dragonscale.belt", - legs: "common.items.armor.hide.dragonscale.pants", - feet: "common.items.armor.hide.dragonscale.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.red_0"), - (1, "common.items.lantern.geode_purp"), - (1, "common.items.boss_drops.lantern"), - ], + ]), + belt: Item("common.items.armor.hide.dragonscale.belt"), + legs: Item("common.items.armor.hide.dragonscale.pants"), + feet: Item("common.items.armor.hide.dragonscale.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.red_0")), + (1, Item("common.items.lantern.geode_purp")), + (1, Item("common.items.boss_drops.lantern")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler3/moonweave.ron b/assets/common/loadout/world/traveler3/moonweave.ron index 0dbd29b0b6..5d2a33220e 100644 --- a/assets/common/loadout/world/traveler3/moonweave.ron +++ b/assets/common/loadout/world/traveler3/moonweave.ron @@ -1,23 +1,23 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.cloth.moonweave.shoulder", - chest: "common.items.armor.cloth.moonweave.chest", - gloves: "common.items.armor.cloth.moonweave.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.cloth.moonweave.back"), + shoulders: Item("common.items.armor.cloth.moonweave.shoulder"), + chest: Item("common.items.armor.cloth.moonweave.chest"), + gloves: Item("common.items.armor.cloth.moonweave.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.cloth.moonweave.back")), (1, None), - ], - belt: "common.items.armor.cloth.moonweave.belt", - legs: "common.items.armor.cloth.moonweave.pants", - feet: "common.items.armor.cloth.moonweave.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.red_0"), - (1, "common.items.lantern.geode_purp"), - (1, "common.items.boss_drops.lantern"), - ], + ]), + belt: Item("common.items.armor.cloth.moonweave.belt"), + legs: Item("common.items.armor.cloth.moonweave.pants"), + feet: Item("common.items.armor.cloth.moonweave.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.red_0")), + (1, Item("common.items.lantern.geode_purp")), + (1, Item("common.items.boss_drops.lantern")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler3/orichalcum.ron b/assets/common/loadout/world/traveler3/orichalcum.ron index 8a3702d637..bfcf330c9c 100644 --- a/assets/common/loadout/world/traveler3/orichalcum.ron +++ b/assets/common/loadout/world/traveler3/orichalcum.ron @@ -1,23 +1,23 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.mail.orichalcum.shoulder", - chest: "common.items.armor.mail.orichalcum.chest", - gloves: "common.items.armor.mail.orichalcum.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.mail.orichalcum.back"), + shoulders: Item("common.items.armor.mail.orichalcum.shoulder"), + chest: Item("common.items.armor.mail.orichalcum.chest"), + gloves: Item("common.items.armor.mail.orichalcum.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.mail.orichalcum.back")), (1, None), - ], - belt: "common.items.armor.mail.orichalcum.belt", - legs: "common.items.armor.mail.orichalcum.pants", - feet: "common.items.armor.mail.orichalcum.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.red_0"), - (1, "common.items.lantern.geode_purp"), - (1, "common.items.boss_drops.lantern"), - ], + ]), + belt: Item("common.items.armor.mail.orichalcum.belt"), + legs: Item("common.items.armor.mail.orichalcum.pants"), + feet: Item("common.items.armor.mail.orichalcum.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.red_0")), + (1, Item("common.items.lantern.geode_purp")), + (1, Item("common.items.boss_drops.lantern")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler3/primal.ron b/assets/common/loadout/world/traveler3/primal.ron index 803771ef81..2a3ad6eef6 100644 --- a/assets/common/loadout/world/traveler3/primal.ron +++ b/assets/common/loadout/world/traveler3/primal.ron @@ -1,23 +1,23 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.hide.primal.shoulder", - chest: "common.items.armor.hide.primal.chest", - gloves: "common.items.armor.hide.primal.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.hide.primal.back"), + shoulders: Item("common.items.armor.hide.primal.shoulder"), + chest: Item("common.items.armor.hide.primal.chest"), + gloves: Item("common.items.armor.hide.primal.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.hide.primal.back")), (1, None), - ], - belt: "common.items.armor.hide.primal.belt", - legs: "common.items.armor.hide.primal.pants", - feet: "common.items.armor.hide.primal.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.red_0"), - (1, "common.items.lantern.geode_purp"), - (1, "common.items.boss_drops.lantern"), - ], + ]), + belt: Item("common.items.armor.hide.primal.belt"), + legs: Item("common.items.armor.hide.primal.pants"), + feet: Item("common.items.armor.hide.primal.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.red_0")), + (1, Item("common.items.lantern.geode_purp")), + (1, Item("common.items.boss_drops.lantern")), + ]), ) \ No newline at end of file diff --git a/assets/common/loadout/world/traveler3/sunsilk.ron b/assets/common/loadout/world/traveler3/sunsilk.ron index c027c2aa58..a23867fa38 100644 --- a/assets/common/loadout/world/traveler3/sunsilk.ron +++ b/assets/common/loadout/world/traveler3/sunsilk.ron @@ -1,23 +1,23 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.cloth.sunsilk.shoulder", - chest: "common.items.armor.cloth.sunsilk.chest", - gloves: "common.items.armor.cloth.sunsilk.hand", - back: [ - (1, "common.items.armor.misc.back.backpack"), - (1, "common.items.npc_armor.back.backpack_blue"), - (1, "common.items.armor.cloth.sunsilk.back"), + shoulders: Item("common.items.armor.cloth.sunsilk.shoulder"), + chest: Item("common.items.armor.cloth.sunsilk.chest"), + gloves: Item("common.items.armor.cloth.sunsilk.hand"), + back: Choice([ + (1, Item("common.items.armor.misc.back.backpack")), + (1, Item("common.items.npc_armor.back.backpack_blue")), + (1, Item("common.items.armor.cloth.sunsilk.back")), (1, None), - ], - belt: "common.items.armor.cloth.sunsilk.belt", - legs: "common.items.armor.cloth.sunsilk.pants", - feet: "common.items.armor.cloth.sunsilk.foot", - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.red_0"), - (1, "common.items.lantern.geode_purp"), - (1, "common.items.boss_drops.lantern"), - ], + ]), + belt: Item("common.items.armor.cloth.sunsilk.belt"), + legs: Item("common.items.armor.cloth.sunsilk.pants"), + feet: Item("common.items.armor.cloth.sunsilk.foot"), + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.red_0")), + (1, Item("common.items.lantern.geode_purp")), + (1, Item("common.items.boss_drops.lantern")), + ]), ) \ No newline at end of file diff --git a/assets/common/loot_tables/weapons/tier-0.ron b/assets/common/loot_tables/weapons/tier-0.ron index 30a294b710..a8fbfc5ac7 100644 --- a/assets/common/loot_tables/weapons/tier-0.ron +++ b/assets/common/loot_tables/weapons/tier-0.ron @@ -1,32 +1,8 @@ [ - (1.0, ModularWeapon( - tool: Sword, - material: Bronze, - hands: None, - )), - (1.0, ModularWeapon( - tool: Axe, - material: Bronze, - hands: None, - )), - (1.0, ModularWeapon( - tool: Hammer, - material: Bronze, - hands: None, - )), - (1.0, ModularWeapon( - tool: Bow, - material: Wood, - hands: None, - )), - (1.0, ModularWeapon( - tool: Staff, - material: Wood, - hands: None, - )), - (1.0, ModularWeapon( - tool: Sceptre, - material: Wood, - hands: None, - )), + (1.0, ModularWeapon(tool: Sword, material: Bronze, hands: None)), + (1.0, ModularWeapon(tool: Axe, material: Bronze, hands: None)), + (1.0, ModularWeapon(tool: Hammer, material: Bronze, hands: None)), + (1.0, ModularWeapon(tool: Bow, material: Wood, hands: None)), + (1.0, ModularWeapon(tool: Staff, material: Wood, hands: None)), + (1.0, ModularWeapon(tool: Sceptre, material: Wood, hands: None)), ] diff --git a/assets/common/loot_tables/weapons/tier-1.ron b/assets/common/loot_tables/weapons/tier-1.ron index 6178a614b2..a693413ba7 100644 --- a/assets/common/loot_tables/weapons/tier-1.ron +++ b/assets/common/loot_tables/weapons/tier-1.ron @@ -1,32 +1,8 @@ [ - (1.0, ModularWeapon( - tool: Sword, - material: Iron, - hands: None, - )), - (1.0, ModularWeapon( - tool: Axe, - material: Iron, - hands: None, - )), - (1.0, ModularWeapon( - tool: Hammer, - material: Iron, - hands: None, - )), - (1.0, ModularWeapon( - tool: Bow, - material: Bamboo, - hands: None, - )), - (1.0, ModularWeapon( - tool: Staff, - material: Bamboo, - hands: None, - )), - (1.0, ModularWeapon( - tool: Sceptre, - material: Bamboo, - hands: None, - )), + (1.0, ModularWeapon(tool: Sword, material: Iron, hands: None)), + (1.0, ModularWeapon(tool: Axe, material: Iron, hands: None)), + (1.0, ModularWeapon(tool: Hammer, material: Iron, hands: None)), + (1.0, ModularWeapon(tool: Bow, material: Bamboo, hands: None)), + (1.0, ModularWeapon(tool: Staff, material: Bamboo, hands: None)), + (1.0, ModularWeapon(tool: Sceptre, material: Bamboo, hands: None)), ] \ No newline at end of file diff --git a/assets/common/loot_tables/weapons/tier-2.ron b/assets/common/loot_tables/weapons/tier-2.ron index 0eace3d7d0..778982438b 100644 --- a/assets/common/loot_tables/weapons/tier-2.ron +++ b/assets/common/loot_tables/weapons/tier-2.ron @@ -1,32 +1,8 @@ [ - (1.0, ModularWeapon( - tool: Sword, - material: Steel, - hands: None, - )), - (1.0, ModularWeapon( - tool: Axe, - material: Steel, - hands: None, - )), - (1.0, ModularWeapon( - tool: Hammer, - material: Steel, - hands: None, - )), - (1.0, ModularWeapon( - tool: Bow, - material: Hardwood, - hands: None, - )), - (1.0, ModularWeapon( - tool: Staff, - material: Hardwood, - hands: None, - )), - (1.0, ModularWeapon( - tool: Sceptre, - material: Hardwood, - hands: None, - )), + (1.0, ModularWeapon(tool: Sword, material: Steel, hands: None)), + (1.0, ModularWeapon(tool: Axe, material: Steel, hands: None)), + (1.0, ModularWeapon(tool: Hammer, material: Steel, hands: None)), + (1.0, ModularWeapon(tool: Bow, material: Hardwood, hands: None)), + (1.0, ModularWeapon(tool: Staff, material: Hardwood, hands: None)), + (1.0, ModularWeapon(tool: Sceptre, material: Hardwood, hands: None)), ] \ No newline at end of file diff --git a/assets/common/loot_tables/weapons/tier-3.ron b/assets/common/loot_tables/weapons/tier-3.ron index 4341fc23d2..db058131fc 100644 --- a/assets/common/loot_tables/weapons/tier-3.ron +++ b/assets/common/loot_tables/weapons/tier-3.ron @@ -1,32 +1,8 @@ [ - (1.0, ModularWeapon( - tool: Sword, - material: Cobalt, - hands: None, - )), - (1.0, ModularWeapon( - tool: Axe, - material: Cobalt, - hands: None, - )), - (1.0, ModularWeapon( - tool: Hammer, - material: Cobalt, - hands: None, - )), - (1.0, ModularWeapon( - tool: Bow, - material: Ironwood, - hands: None, - )), - (1.0, ModularWeapon( - tool: Staff, - material: Ironwood, - hands: None, - )), - (1.0, ModularWeapon( - tool: Sceptre, - material: Ironwood, - hands: None, - )), + (1.0, ModularWeapon(tool: Sword, material: Cobalt, hands: None)), + (1.0, ModularWeapon(tool: Axe, material: Cobalt, hands: None)), + (1.0, ModularWeapon(tool: Hammer, material: Cobalt, hands: None)), + (1.0, ModularWeapon(tool: Bow, material: Ironwood, hands: None)), + (1.0, ModularWeapon(tool: Staff, material: Ironwood, hands: None)), + (1.0, ModularWeapon(tool: Sceptre, material: Ironwood, hands: None)), ] \ No newline at end of file diff --git a/assets/common/loot_tables/weapons/tier-4.ron b/assets/common/loot_tables/weapons/tier-4.ron index 643bc00414..15bf525908 100644 --- a/assets/common/loot_tables/weapons/tier-4.ron +++ b/assets/common/loot_tables/weapons/tier-4.ron @@ -1,32 +1,8 @@ [ - (1.0, ModularWeapon( - tool: Sword, - material: Bloodsteel, - hands: None, - )), - (1.0, ModularWeapon( - tool: Axe, - material: Bloodsteel, - hands: None, - )), - (1.0, ModularWeapon( - tool: Hammer, - material: Bloodsteel, - hands: None, - )), - (1.0, ModularWeapon( - tool: Bow, - material: Frostwood, - hands: None, - )), - (1.0, ModularWeapon( - tool: Staff, - material: Frostwood, - hands: None, - )), - (1.0, ModularWeapon( - tool: Sceptre, - material: Frostwood, - hands: None, - )), + (1.0, ModularWeapon(tool: Sword, material: Bloodsteel, hands: None)), + (1.0, ModularWeapon(tool: Axe, material: Bloodsteel, hands: None)), + (1.0, ModularWeapon(tool: Hammer, material: Bloodsteel, hands: None)), + (1.0, ModularWeapon(tool: Bow, material: Frostwood, hands: None)), + (1.0, ModularWeapon(tool: Staff, material: Frostwood, hands: None)), + (1.0, ModularWeapon(tool: Sceptre, material: Frostwood, hands: None)), ] \ No newline at end of file diff --git a/assets/common/loot_tables/weapons/tier-5.ron b/assets/common/loot_tables/weapons/tier-5.ron index 4af404e4ea..cf0e7e0db6 100644 --- a/assets/common/loot_tables/weapons/tier-5.ron +++ b/assets/common/loot_tables/weapons/tier-5.ron @@ -1,32 +1,8 @@ [ - (1.0, ModularWeapon( - tool: Sword, - material: Orichalcum, - hands: None, - )), - (1.0, ModularWeapon( - tool: Axe, - material: Orichalcum, - hands: None, - )), - (1.0, ModularWeapon( - tool: Hammer, - material: Orichalcum, - hands: None, - )), - (1.0, ModularWeapon( - tool: Bow, - material: Eldwood, - hands: None, - )), - (1.0, ModularWeapon( - tool: Staff, - material: Eldwood, - hands: None, - )), - (1.0, ModularWeapon( - tool: Sceptre, - material: Eldwood, - hands: None, - )), + (1.0, ModularWeapon(tool: Sword, material: Orichalcum, hands: None)), + (1.0, ModularWeapon(tool: Axe, material: Orichalcum, hands: None)), + (1.0, ModularWeapon(tool: Hammer, material: Orichalcum, hands: None)), + (1.0, ModularWeapon(tool: Bow, material: Eldwood, hands: None)), + (1.0, ModularWeapon(tool: Staff, material: Eldwood, hands: None)), + (1.0, ModularWeapon(tool: Sceptre, material: Eldwood, hands: None)), ] \ No newline at end of file diff --git a/assets/test/loadout/ok/example_royal_guard.ron b/assets/test/loadout/ok/example_royal_guard.ron index ac9f94eae3..ad60ebe591 100644 --- a/assets/test/loadout/ok/example_royal_guard.ron +++ b/assets/test/loadout/ok/example_royal_guard.ron @@ -9,22 +9,22 @@ Asset("test.loadout.ok.just_butterfly_gliders"), Asset("test.loadout.ok.just_lanterns"), ]), - active_hands: [ - (1, ( - "common.items.weapons.sword.caladbolg", + active_hands: Choice([ + (1, InHands(( + Item("common.items.weapons.sword.caladbolg"), None, - )), - (1, ( - "common.items.weapons.bow.sagitta", + ))), + (1, InHands(( + Item("common.items.weapons.bow.sagitta"), None, - )), - (1, ( - "common.items.weapons.hammer_1h.orichalcum-0", - "common.items.weapons.hammer_1h.orichalcum-0", - )), - (1, ( - "common.items.weapons.axe_1h.orichalcum-0", - "common.items.weapons.shield.shield_1", - )), - ], + ))), + (1, InHands(( + ModularWeapon(tool: Hammer, material: Orichalcum, hands: One), + ModularWeapon(tool: Hammer, material: Orichalcum, hands: One), + ))), + (1, InHands(( + ModularWeapon(tool: Axe, material: Orichalcum, hands: One), + Item("common.items.weapons.shield.shield_1"), + ))), + ]), ) diff --git a/assets/test/loadout/ok/inherit_rings.ron b/assets/test/loadout/ok/inherit_rings.ron index 81b2507eb0..bbcf2ae11e 100644 --- a/assets/test/loadout/ok/inherit_rings.ron +++ b/assets/test/loadout/ok/inherit_rings.ron @@ -1,12 +1,12 @@ #![enable(implicit_some)] ( inherit: Asset("test.loadout.ok.just_rings"), - head: "common.items.armor.cultist.bandana", - active_hands: ( - "common.items.weapons.axe_1h.orichalcum-0", - [ - (1, "common.items.weapons.hammer_1h.orichalcum-0"), - (1, "common.items.weapons.axe_1h.orichalcum-0"), - ], - ), + head: Item("common.items.armor.cultist.bandana"), + active_hands: InHands(( + ModularWeapon(tool: Axe, material: Orichalcum, hands: One), + Choice([ + (1, ModularWeapon(tool: Hammer, material: Orichalcum, hands: One)), + (1, ModularWeapon(tool: Axe, material: Orichalcum, hands: One)), + ]), + )), ) diff --git a/assets/test/loadout/ok/just_all_entries.ron b/assets/test/loadout/ok/just_all_entries.ron index 581a625eed..17f833aaf9 100644 --- a/assets/test/loadout/ok/just_all_entries.ron +++ b/assets/test/loadout/ok/just_all_entries.ron @@ -3,32 +3,32 @@ #![enable(implicit_some)] ( // Gear - head: "common.items.npc_armor.biped_small.myrmidon.head.hoplite", - neck: "common.items.armor.misc.neck.gem_of_resilience", - shoulders: "common.items.armor.twigsflowers.shoulder", - chest: "common.items.armor.twigsflowers.chest", - gloves: "common.items.armor.twigsflowers.hand", - ring1: "common.items.armor.misc.ring.gold", - ring2: "common.items.armor.misc.ring.gold", - back: "common.items.armor.misc.back.dungeon_purple", - belt: "common.items.armor.twigsflowers.belt", - legs: "common.items.armor.twigsflowers.pants", - feet: "common.items.armor.twigsflowers.foot", - tabard: "common.items.debug.admin", + head: Item("common.items.npc_armor.biped_small.myrmidon.head.hoplite"), + neck: Item("common.items.armor.misc.neck.gem_of_resilience"), + shoulders: Item("common.items.armor.twigsflowers.shoulder"), + chest: Item("common.items.armor.twigsflowers.chest"), + gloves: Item("common.items.armor.twigsflowers.hand"), + ring1: Item("common.items.armor.misc.ring.gold"), + ring2: Item("common.items.armor.misc.ring.gold"), + back: Item("common.items.armor.misc.back.dungeon_purple"), + belt: Item("common.items.armor.twigsflowers.belt"), + legs: Item("common.items.armor.twigsflowers.pants"), + feet: Item("common.items.armor.twigsflowers.foot"), + tabard: Item("common.items.debug.admin"), // Misc - bag1: "common.items.armor.misc.bag.tiny_leather_pouch", - bag2: "common.items.armor.misc.bag.tiny_leather_pouch", - bag3: "common.items.armor.misc.bag.tiny_leather_pouch", - bag4: "common.items.armor.misc.bag.tiny_leather_pouch", - lantern: "common.items.lantern.black_0", - glider: "common.items.glider.basic_red", + bag1: Item("common.items.armor.misc.bag.tiny_leather_pouch"), + bag2: Item("common.items.armor.misc.bag.tiny_leather_pouch"), + bag3: Item("common.items.armor.misc.bag.tiny_leather_pouch"), + bag4: Item("common.items.armor.misc.bag.tiny_leather_pouch"), + lantern: Item("common.items.lantern.black_0"), + glider: Item("common.items.glider.basic_red"), // Weapons - active_hands: ( - "common.items.weapons.sword_1h.bloodsteel-0", - "common.items.weapons.sword_1h.bloodsteel-0", - ), - inactive_hands: ( - "common.items.weapons.sceptre.sceptre_velorite_0", + active_hands: InHands(( + ModularWeapon(tool: Sword, material: Bloodsteel, hands: One), + ModularWeapon(tool: Sword, material: Bloodsteel, hands: One), + )), + inactive_hands: InHands(( + Item("common.items.weapons.sceptre.sceptre_velorite_0"), None, - ), + )), ) diff --git a/assets/test/loadout/ok/just_butterfly_gliders.ron b/assets/test/loadout/ok/just_butterfly_gliders.ron index 75ca907493..e681886b98 100644 --- a/assets/test/loadout/ok/just_butterfly_gliders.ron +++ b/assets/test/loadout/ok/just_butterfly_gliders.ron @@ -1,8 +1,8 @@ #![enable(implicit_some)] ( - glider: [ - (1, "common.items.glider.moth"), - (1, "common.items.glider.morpho"), - (1, "common.items.glider.monarch"), - ], + glider: Choice([ + (1, Item("common.items.glider.moth")), + (1, Item("common.items.glider.morpho")), + (1, Item("common.items.glider.monarch")), + ]), ) diff --git a/assets/test/loadout/ok/just_choice_hands.ron b/assets/test/loadout/ok/just_choice_hands.ron index 88301cb552..63d7d8271d 100644 --- a/assets/test/loadout/ok/just_choice_hands.ron +++ b/assets/test/loadout/ok/just_choice_hands.ron @@ -1,17 +1,17 @@ #![enable(implicit_some)] ( - active_hands: [ - (1, ( - "common.items.weapons.axe_1h.orichalcum-0", - "common.items.weapons.axe_1h.orichalcum-0", - )), - (1, ( - "common.items.weapons.hammer_1h.orichalcum-0", - "common.items.weapons.axe_1h.orichalcum-0", - )), - (1, ( - "common.items.weapons.sword.cultist", + active_hands: Choice([ + (1, InHands(( + Item("common.items.weapons.sword_1h.starter"), + Item("common.items.weapons.sword_1h.starter"), + ))), + (1, InHands(( + ModularWeapon(tool: Hammer, material: Orichalcum, hands: One), + ModularWeapon(tool: Axe, material: Orichalcum, hands: One), + ))), + (1, InHands(( + Item("common.items.weapons.sword.cultist"), None, - )), - ], + ))), + ]), ) diff --git a/assets/test/loadout/ok/just_crafted_rings.ron b/assets/test/loadout/ok/just_crafted_rings.ron index add0c24a57..1e487fbfa5 100644 --- a/assets/test/loadout/ok/just_crafted_rings.ron +++ b/assets/test/loadout/ok/just_crafted_rings.ron @@ -1,21 +1,21 @@ #![enable(implicit_some)] ( - ring1: [ - (1, "common.items.armor.misc.ring.amethyst"), - (1, "common.items.armor.misc.ring.diamond"), - (1, "common.items.armor.misc.ring.emerald"), - (1, "common.items.armor.misc.ring.gold"), - (1, "common.items.armor.misc.ring.ruby"), - (1, "common.items.armor.misc.ring.sapphire"), - (1, "common.items.armor.misc.ring.topaz"), - ], - ring2: [ - (1, "common.items.armor.misc.ring.amethyst"), - (1, "common.items.armor.misc.ring.diamond"), - (1, "common.items.armor.misc.ring.emerald"), - (1, "common.items.armor.misc.ring.gold"), - (1, "common.items.armor.misc.ring.ruby"), - (1, "common.items.armor.misc.ring.sapphire"), - (1, "common.items.armor.misc.ring.topaz"), - ], + ring1: Choice([ + (1, Item("common.items.armor.misc.ring.amethyst")), + (1, Item("common.items.armor.misc.ring.diamond")), + (1, Item("common.items.armor.misc.ring.emerald")), + (1, Item("common.items.armor.misc.ring.gold")), + (1, Item("common.items.armor.misc.ring.ruby")), + (1, Item("common.items.armor.misc.ring.sapphire")), + (1, Item("common.items.armor.misc.ring.topaz")), + ]), + ring2: Choice([ + (1, Item("common.items.armor.misc.ring.amethyst")), + (1, Item("common.items.armor.misc.ring.diamond")), + (1, Item("common.items.armor.misc.ring.emerald")), + (1, Item("common.items.armor.misc.ring.gold")), + (1, Item("common.items.armor.misc.ring.ruby")), + (1, Item("common.items.armor.misc.ring.sapphire")), + (1, Item("common.items.armor.misc.ring.topaz")), + ]), ) diff --git a/assets/test/loadout/ok/just_dragonscale.ron b/assets/test/loadout/ok/just_dragonscale.ron index d622f6cce4..112aa79bb6 100644 --- a/assets/test/loadout/ok/just_dragonscale.ron +++ b/assets/test/loadout/ok/just_dragonscale.ron @@ -1,10 +1,10 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.hide.dragonscale.shoulder", - chest: "common.items.armor.hide.dragonscale.chest", - gloves: "common.items.armor.hide.dragonscale.hand", - back: "common.items.armor.hide.dragonscale.back", - belt: "common.items.armor.hide.dragonscale.belt", - legs: "common.items.armor.hide.dragonscale.pants", - feet: "common.items.armor.hide.dragonscale.foot", + shoulders: Item("common.items.armor.hide.dragonscale.shoulder"), + chest: Item("common.items.armor.hide.dragonscale.chest"), + gloves: Item("common.items.armor.hide.dragonscale.hand"), + back: Item("common.items.armor.hide.dragonscale.back"), + belt: Item("common.items.armor.hide.dragonscale.belt"), + legs: Item("common.items.armor.hide.dragonscale.pants"), + feet: Item("common.items.armor.hide.dragonscale.foot"), ) diff --git a/assets/test/loadout/ok/just_lanterns.ron b/assets/test/loadout/ok/just_lanterns.ron index 83284ba47e..178c9fa164 100644 --- a/assets/test/loadout/ok/just_lanterns.ron +++ b/assets/test/loadout/ok/just_lanterns.ron @@ -1,11 +1,11 @@ #![enable(implicit_some)] ( - lantern: [ - (1, "common.items.lantern.black_0"), - (1, "common.items.lantern.blue_0"), - (1, "common.items.lantern.green_0"), - (1, "common.items.lantern.red_0"), - (1, "common.items.lantern.geode_purp"), - (1, "common.items.boss_drops.lantern"), - ], + lantern: Choice([ + (1, Item("common.items.lantern.black_0")), + (1, Item("common.items.lantern.blue_0")), + (1, Item("common.items.lantern.green_0")), + (1, Item("common.items.lantern.red_0")), + (1, Item("common.items.lantern.geode_purp")), + (1, Item("common.items.boss_drops.lantern")), + ]), ) diff --git a/assets/test/loadout/ok/just_ori_armor.ron b/assets/test/loadout/ok/just_ori_armor.ron index 71e88350ec..8e86ac4939 100644 --- a/assets/test/loadout/ok/just_ori_armor.ron +++ b/assets/test/loadout/ok/just_ori_armor.ron @@ -1,10 +1,10 @@ #![enable(implicit_some)] ( - shoulders: "common.items.armor.mail.orichalcum.shoulder", - chest: "common.items.armor.mail.orichalcum.chest", - gloves: "common.items.armor.mail.orichalcum.hand", - back: "common.items.armor.mail.orichalcum.back", - belt: "common.items.armor.mail.orichalcum.belt", - legs: "common.items.armor.mail.orichalcum.pants", - feet: "common.items.armor.mail.orichalcum.foot", + shoulders: Item("common.items.armor.mail.orichalcum.shoulder"), + chest: Item("common.items.armor.mail.orichalcum.chest"), + gloves: Item("common.items.armor.mail.orichalcum.hand"), + back: Item("common.items.armor.mail.orichalcum.back"), + belt: Item("common.items.armor.mail.orichalcum.belt"), + legs: Item("common.items.armor.mail.orichalcum.pants"), + feet: Item("common.items.armor.mail.orichalcum.foot"), ) diff --git a/assets/test/loadout/ok/just_rings.ron b/assets/test/loadout/ok/just_rings.ron index 9b09a2d10c..701d83d9e2 100644 --- a/assets/test/loadout/ok/just_rings.ron +++ b/assets/test/loadout/ok/just_rings.ron @@ -1,5 +1,5 @@ #![enable(implicit_some)] ( - ring1: "common.items.armor.cultist.ring", - ring2: "common.items.armor.cultist.ring", + ring1: Item("common.items.armor.cultist.ring"), + ring2: Item("common.items.armor.cultist.ring"), ) diff --git a/assets/voxygen/voxel/item_drop_manifest.ron b/assets/voxygen/voxel/item_drop_manifest.ron index 1bb26414bc..3851e974fa 100644 --- a/assets/voxygen/voxel/item_drop_manifest.ron +++ b/assets/voxygen/voxel/item_drop_manifest.ron @@ -43,6 +43,10 @@ ModularWeapon(("common.items.crafting_ing.modular.primary.bow.ornate", "common.items.log.eldwood", Two)): "voxel.weapon.bow.ornate.eldwood", ModularWeapon(("common.items.crafting_ing.modular.primary.bow.shortbow", "common.items.log.eldwood", Two)): "voxel.weapon.bow.shortbow.eldwood", ModularWeapon(("common.items.crafting_ing.modular.primary.bow.warbow", "common.items.log.eldwood", Two)): "voxel.weapon.bow.warbow.eldwood", + Tool("common.items.weapons.bow.sagitta"): "voxel.weapon.bow.sagitta", + Tool("common.items.weapons.bow.starter"): "voxel.weapon.bow.starter", + Tool("common.items.weapons.bow.velorite"): "voxel.weapon.bow.velorite", + Tool("common.items.debug.velorite_bow_debug"): "voxel.weapon.bow.velorite", //staffs ModularWeapon(("common.items.crafting_ing.modular.primary.staff.brand", "common.items.log.wood", Two)): "voxel.weapon.staff.brand.wood", ModularWeapon(("common.items.crafting_ing.modular.primary.staff.grandstaff", "common.items.log.wood", Two)): "voxel.weapon.staff.grandstaff.wood", @@ -86,6 +90,10 @@ ModularWeapon(("common.items.crafting_ing.modular.primary.staff.ornate", "common.items.log.eldwood", Two)): "voxel.weapon.staff.ornate.eldwood", ModularWeapon(("common.items.crafting_ing.modular.primary.staff.rod", "common.items.log.eldwood", Two)): "voxel.weapon.staff.rod.eldwood", ModularWeapon(("common.items.crafting_ing.modular.primary.staff.staff", "common.items.log.eldwood", Two)): "voxel.weapon.staff.staff.eldwood", + Tool("common.items.weapons.staff.staff_1"): "voxel.weapon.staff.firestaff_starter", + Tool("common.items.weapons.staff.starter_staff"): "voxel.weapon.staff.firestaff_starter", + Tool("common.items.weapons.staff.cultist_staff"): "voxel.weapon.staff.firestaff_cultist", + Tool("common.items.weapons.staff.laevateinn"): "voxel.weapon.staff.laevateinn", // Swords ModularWeapon(("common.items.crafting_ing.modular.primary.sword.greatsword", "common.items.mineral.ingot.bronze", Two)):"voxel.weapon.sword.greatsword.bronze-2h", ModularWeapon(("common.items.crafting_ing.modular.primary.sword.katana", "common.items.mineral.ingot.bronze", Two)):"voxel.weapon.sword.katana.bronze-2h", @@ -129,7 +137,13 @@ ModularWeapon(("common.items.crafting_ing.modular.primary.sword.sabre", "common.items.mineral.ingot.orichalcum", Two)): "voxel.weapon.sword.sabre.orichalcum-2h", ModularWeapon(("common.items.crafting_ing.modular.primary.sword.sawblade", "common.items.mineral.ingot.orichalcum", Two)):"voxel.weapon.sword.sawblade.orichalcum-2h", ModularWeapon(("common.items.crafting_ing.modular.primary.sword.zweihander", "common.items.mineral.ingot.orichalcum", Two)):"voxel.weapon.sword.zweihander.orichalcum-2h", -// 1h Swords + Tool("common.items.weapons.sword.caladbolg"): "voxel.weapon.sword.caladbolg", + Tool("common.items.weapons.sword.cultist"): "voxel.weapon.sword.cultist", + Tool("common.items.weapons.sword.frost-0"): "voxel.weapon.sword.frost-0", + Tool("common.items.weapons.sword.frost-1"): "voxel.weapon.sword.frost-1", + Tool("common.items.weapons.sword.starter"): "voxel.weapon.sword.starter", + Tool("common.items.debug.admin_sword"): "voxel.weapon.sword.frost-1", + // 1h Swords ModularWeapon(("common.items.crafting_ing.modular.primary.sword.katana", "common.items.mineral.ingot.bronze", One)): "voxel.weapon.sword.katana.bronze-1h", ModularWeapon(("common.items.crafting_ing.modular.primary.sword.longsword", "common.items.mineral.ingot.bronze", One)): "voxel.weapon.sword.longsword.bronze-1h", ModularWeapon(("common.items.crafting_ing.modular.primary.sword.ornate", "common.items.mineral.ingot.bronze", One)): "voxel.weapon.sword.ornate.bronze-1h", @@ -160,6 +174,7 @@ ModularWeapon(("common.items.crafting_ing.modular.primary.sword.ornate", "common.items.mineral.ingot.orichalcum", One)): "voxel.weapon.sword.ornate.orichalcum-1h", ModularWeapon(("common.items.crafting_ing.modular.primary.sword.sabre", "common.items.mineral.ingot.orichalcum", One)): "voxel.weapon.sword.sabre.orichalcum-1h", ModularWeapon(("common.items.crafting_ing.modular.primary.sword.sawblade", "common.items.mineral.ingot.orichalcum", One)): "voxel.weapon.sword.sawblade.orichalcum-1h", + Tool("common.items.weapons.sword_1h.starter"): "voxel.weapon.sword_1h.starter", // Axes ModularWeapon(("common.items.crafting_ing.modular.primary.axe.axe", "common.items.mineral.ingot.bronze", Two)): "voxel.weapon.axe.axe.bronze-2h", ModularWeapon(("common.items.crafting_ing.modular.primary.axe.battleaxe", "common.items.mineral.ingot.bronze", Two)): "voxel.weapon.axe.battleaxe.bronze-2h", @@ -203,6 +218,9 @@ ModularWeapon(("common.items.crafting_ing.modular.primary.axe.labrys", "common.items.mineral.ingot.orichalcum", Two)): "voxel.weapon.axe.labrys.orichalcum-2h", ModularWeapon(("common.items.crafting_ing.modular.primary.axe.ornate", "common.items.mineral.ingot.orichalcum", Two)): "voxel.weapon.axe.ornate.orichalcum-2h", ModularWeapon(("common.items.crafting_ing.modular.primary.axe.poleaxe", "common.items.mineral.ingot.orichalcum", Two)): "voxel.weapon.axe.poleaxe.orichalcum-2h", + Tool("common.items.weapons.axe.starter_axe"): "voxel.weapon.axe.2haxe_rusty", + Tool("common.items.weapons.axe.malachite_axe-0"): "voxel.weapon.axe.2haxe_malachite-0", + Tool("common.items.weapons.axe.parashu"): "voxel.weapon.axe.parashu", // 1h Axes ModularWeapon(("common.items.crafting_ing.modular.primary.axe.axe", "common.items.mineral.ingot.bronze", One)): "voxel.weapon.axe.axe.bronze-1h", ModularWeapon(("common.items.crafting_ing.modular.primary.axe.battleaxe", "common.items.mineral.ingot.bronze", One)): "voxel.weapon.axe.battleaxe.bronze-1h", @@ -271,37 +289,43 @@ ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.orichalcum", Two)):"voxel.weapon.hammer.ornate.orichalcum-2h", ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.orichalcum", Two)):"voxel.weapon.hammer.spikedmace.orichalcum-2h", ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.orichalcum", Two)):"voxel.weapon.hammer.warhammer.orichalcum-2h", + Tool("common.items.weapons.hammer.hammer_1"): "voxel.weapon.hammer.2hhammer_rusty", + Tool("common.items.weapons.hammer.starter_hammer"): "voxel.weapon.hammer.2hhammer_rusty", + Tool("common.items.weapons.hammer.flimsy_hammer"): "voxel.weapon.hammer.2hhammer_flimsy", + Tool("common.items.weapons.hammer.mjolnir"): "voxel.weapon.hammer.2hhammer_mjolnir", + Tool("common.items.weapons.hammer.cultist_purp_2h-0"): "voxel.weapon.hammer.cult_purp-0", + Tool("common.items.weapons.hammer.burnt_drumstick"): "voxel.weapon.hammer.burnt_drumstick", // 1h Hammers - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.bronze", One)):"voxel.weapon.hammer.hammer.bronze-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.bronze", One)):"voxel.weapon.hammer.maul.bronze-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.bronze", One)):"voxel.weapon.hammer.ornate.bronze-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.bronze", One)):"voxel.weapon.hammer.spikedmace.bronze-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.bronze", One)):"voxel.weapon.hammer.warhammer.bronze-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.iron", One)):"voxel.weapon.hammer.hammer.iron-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.iron", One)):"voxel.weapon.hammer.maul.iron-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.iron", One)):"voxel.weapon.hammer.ornate.iron-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.iron", One)):"voxel.weapon.hammer.spikedmace.iron-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.iron", One)):"voxel.weapon.hammer.warhammer.iron-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.steel", One)):"voxel.weapon.hammer.hammer.steel-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.steel", One)):"voxel.weapon.hammer.maul.steel-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.steel", One)):"voxel.weapon.hammer.ornate.steel-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.steel", One)):"voxel.weapon.hammer.spikedmace.steel-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.steel", One)):"voxel.weapon.hammer.warhammer.steel-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.cobalt", One)):"voxel.weapon.hammer.hammer.cobalt-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.cobalt", One)):"voxel.weapon.hammer.maul.cobalt-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.cobalt", One)):"voxel.weapon.hammer.ornate.cobalt-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.cobalt", One)):"voxel.weapon.hammer.spikedmace.cobalt-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.cobalt", One)):"voxel.weapon.hammer.warhammer.cobalt-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.bloodsteel", One)):"voxel.weapon.hammer.hammer.bloodsteel-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.bloodsteel", One)):"voxel.weapon.hammer.maul.bloodsteel-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.bloodsteel", One)):"voxel.weapon.hammer.ornate.bloodsteel-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.bloodsteel", One)):"voxel.weapon.hammer.spikedmace.bloodsteel-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.bloodsteel", One)):"voxel.weapon.hammer.warhammer.bloodsteel-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.orichalcum", One)):"voxel.weapon.hammer.hammer.orichalcum-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.orichalcum", One)):"voxel.weapon.hammer.maul.orichalcum-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.orichalcum", One)):"voxel.weapon.hammer.ornate.orichalcum-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.orichalcum", One)):"voxel.weapon.hammer.spikedmace.orichalcum-1h", - ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.orichalcum", One)):"voxel.weapon.hammer.warhammer.orichalcum-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.bronze", One)): "voxel.weapon.hammer.hammer.bronze-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.bronze", One)): "voxel.weapon.hammer.maul.bronze-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.bronze", One)): "voxel.weapon.hammer.ornate.bronze-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.bronze", One)): "voxel.weapon.hammer.spikedmace.bronze-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.bronze", One)): "voxel.weapon.hammer.warhammer.bronze-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.iron", One)): "voxel.weapon.hammer.hammer.iron-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.iron", One)): "voxel.weapon.hammer.maul.iron-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.iron", One)): "voxel.weapon.hammer.ornate.iron-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.iron", One)): "voxel.weapon.hammer.spikedmace.iron-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.iron", One)): "voxel.weapon.hammer.warhammer.iron-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.steel", One)): "voxel.weapon.hammer.hammer.steel-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.steel", One)): "voxel.weapon.hammer.maul.steel-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.steel", One)): "voxel.weapon.hammer.ornate.steel-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.steel", One)): "voxel.weapon.hammer.spikedmace.steel-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.steel", One)): "voxel.weapon.hammer.warhammer.steel-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.cobalt", One)): "voxel.weapon.hammer.hammer.cobalt-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.cobalt", One)): "voxel.weapon.hammer.maul.cobalt-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.cobalt", One)): "voxel.weapon.hammer.ornate.cobalt-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.cobalt", One)): "voxel.weapon.hammer.spikedmace.cobalt-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.cobalt", One)): "voxel.weapon.hammer.warhammer.cobalt-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.bloodsteel", One)): "voxel.weapon.hammer.hammer.bloodsteel-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.bloodsteel", One)): "voxel.weapon.hammer.maul.bloodsteel-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.bloodsteel", One)): "voxel.weapon.hammer.ornate.bloodsteel-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.bloodsteel", One)): "voxel.weapon.hammer.spikedmace.bloodsteel-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.bloodsteel", One)): "voxel.weapon.hammer.warhammer.bloodsteel-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.hammer", "common.items.mineral.ingot.orichalcum", One)): "voxel.weapon.hammer.hammer.orichalcum-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.maul", "common.items.mineral.ingot.orichalcum", One)): "voxel.weapon.hammer.maul.orichalcum-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.ornate", "common.items.mineral.ingot.orichalcum", One)): "voxel.weapon.hammer.ornate.orichalcum-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.spikedmace", "common.items.mineral.ingot.orichalcum", One)): "voxel.weapon.hammer.spikedmace.orichalcum-1h", + ModularWeapon(("common.items.crafting_ing.modular.primary.hammer.warhammer", "common.items.mineral.ingot.orichalcum", One)): "voxel.weapon.hammer.warhammer.orichalcum-1h", // Sceptres ModularWeapon(("common.items.crafting_ing.modular.primary.sceptre.arbor", "common.items.log.wood", Two)): "voxel.weapon.sceptre.arbor.wood", @@ -346,220 +370,16 @@ ModularWeapon(("common.items.crafting_ing.modular.primary.sceptre.ornate", "common.items.log.eldwood", Two)): "voxel.weapon.sceptre.ornate.eldwood", ModularWeapon(("common.items.crafting_ing.modular.primary.sceptre.grandsceptre", "common.items.log.eldwood", Two)): "voxel.weapon.sceptre.grandsceptre.eldwood", ModularWeapon(("common.items.crafting_ing.modular.primary.sceptre.sceptre", "common.items.log.eldwood", Two)): "voxel.weapon.sceptre.sceptre.eldwood", + Tool("common.items.weapons.sceptre.starter_sceptre"): "voxel.weapon.sceptre.wood-simple", + Tool("common.items.weapons.sceptre.root_evil"): "voxel.weapon.sceptre.root_evil", + Tool("common.items.weapons.sceptre.sceptre_velorite_0"): "voxel.weapon.sceptre.ore-nature", + Tool("common.items.weapons.sceptre.caduceus"): "voxel.weapon.sceptre.caduceus", + Tool("common.items.weapons.sceptre.amethyst"): "voxel.weapon.sceptre.amethyst", - Tool("common.items.weapons.bow.sagitta"): "voxel.weapon.bow.sagitta", - Tool("common.items.weapons.bow.starter"): "voxel.weapon.bow.starter", - Tool("common.items.weapons.bow.velorite"): "voxel.weapon.bow.velorite", - Tool("common.items.debug.velorite_bow_debug"): "voxel.weapon.bow.velorite", // Daggers Tool("common.items.weapons.dagger.starter_dagger"): "voxel.weapon.dagger.dagger_rusty", Tool("common.items.weapons.dagger.basic_0"): "voxel.weapon.dagger.dagger_basic-0", Tool("common.items.weapons.dagger.cultist_0"): "voxel.weapon.dagger.dagger_cult-0", - // Swords - Tool("common.items.weapons.sword.bloodsteel-0"): "voxel.weapon.sword.bloodsteel-0", - Tool("common.items.weapons.sword.bloodsteel-1"): "voxel.weapon.sword.bloodsteel-1", - Tool("common.items.weapons.sword.bloodsteel-2"): "voxel.weapon.sword.bloodsteel-2", - Tool("common.items.weapons.sword.bronze-0"): "voxel.weapon.sword.bronze-0", - Tool("common.items.weapons.sword.bronze-1"): "voxel.weapon.sword.bronze-1", - Tool("common.items.weapons.sword.bronze-2"): "voxel.weapon.sword.bronze-2", - Tool("common.items.weapons.sword.caladbolg"): "voxel.weapon.sword.caladbolg", - Tool("common.items.weapons.sword.cobalt-0"): "voxel.weapon.sword.cobalt-0", - Tool("common.items.weapons.sword.cobalt-1"): "voxel.weapon.sword.cobalt-1", - Tool("common.items.weapons.sword.cobalt-2"): "voxel.weapon.sword.cobalt-2", - Tool("common.items.weapons.sword.cobalt-3"): "voxel.weapon.sword.cobalt-3", - Tool("common.items.weapons.sword.cultist"): "voxel.weapon.sword.cultist", - Tool("common.items.weapons.sword.frost-0"): "voxel.weapon.sword.frost-0", - Tool("common.items.weapons.sword.frost-1"): "voxel.weapon.sword.frost-1", - Tool("common.items.weapons.sword.iron-0"): "voxel.weapon.sword.iron-0", - Tool("common.items.weapons.sword.iron-1"): "voxel.weapon.sword.iron-1", - Tool("common.items.weapons.sword.iron-10"): "voxel.weapon.sword.iron-10", - Tool("common.items.weapons.sword.iron-2"): "voxel.weapon.sword.iron-2", - Tool("common.items.weapons.sword.iron-3"): "voxel.weapon.sword.iron-3", - Tool("common.items.weapons.sword.iron-4"): "voxel.weapon.sword.iron-4", - Tool("common.items.weapons.sword.iron-5"): "voxel.weapon.sword.iron-5", - Tool("common.items.weapons.sword.iron-6"): "voxel.weapon.sword.iron-6", - Tool("common.items.weapons.sword.iron-7"): "voxel.weapon.sword.iron-7", - Tool("common.items.weapons.sword.iron-8"): "voxel.weapon.sword.iron-8", - Tool("common.items.weapons.sword.iron-9"): "voxel.weapon.sword.iron-9", - Tool("common.items.weapons.sword.starter"): "voxel.weapon.sword.starter", - Tool("common.items.weapons.sword.steel-0"): "voxel.weapon.sword.steel-0", - Tool("common.items.weapons.sword.steel-1"): "voxel.weapon.sword.steel-1", - Tool("common.items.weapons.sword.steel-2"): "voxel.weapon.sword.steel-2", - Tool("common.items.weapons.sword.steel-3"): "voxel.weapon.sword.steel-3", - Tool("common.items.weapons.sword.steel-4"): "voxel.weapon.sword.steel-4", - Tool("common.items.weapons.sword.steel-5"): "voxel.weapon.sword.steel-5", - Tool("common.items.weapons.sword.steel-6"): "voxel.weapon.sword.steel-6", - Tool("common.items.weapons.sword.steel-7"): "voxel.weapon.sword.steel-7", - Tool("common.items.weapons.sword.steel-8"): "voxel.weapon.sword.steel-8", - Tool("common.items.weapons.sword.stone-0"): "voxel.weapon.sword.stone-0", - Tool("common.items.weapons.sword.stone-1"): "voxel.weapon.sword.stone-1", - Tool("common.items.weapons.sword.stone-2"): "voxel.weapon.sword.stone-2", - Tool("common.items.weapons.sword.wood-0"): "voxel.weapon.sword.wood-0", - Tool("common.items.weapons.sword.wood-1"): "voxel.weapon.sword.wood-1", - Tool("common.items.weapons.sword.wood-2"): "voxel.weapon.sword.wood-2", - Tool("common.items.debug.admin_sword"): "voxel.weapon.sword.frost-1", - // 1h Swords - Tool("common.items.weapons.sword_1h.bloodsteel-0"): "voxel.weapon.sword_1h.bloodsteel-0", - Tool("common.items.weapons.sword_1h.bloodsteel-1"): "voxel.weapon.sword_1h.bloodsteel-1", - Tool("common.items.weapons.sword_1h.bloodsteel-2"): "voxel.weapon.sword_1h.bloodsteel-2", - Tool("common.items.weapons.sword_1h.bronze-0"): "voxel.weapon.sword_1h.bronze-0", - Tool("common.items.weapons.sword_1h.bronze-1"): "voxel.weapon.sword_1h.bronze-1", - Tool("common.items.weapons.sword_1h.bronze-2"): "voxel.weapon.sword_1h.bronze-2", - Tool("common.items.weapons.sword_1h.cobalt-0"): "voxel.weapon.sword_1h.cobalt-0", - Tool("common.items.weapons.sword_1h.cobalt-1"): "voxel.weapon.sword_1h.cobalt-1", - Tool("common.items.weapons.sword_1h.cobalt-2"): "voxel.weapon.sword_1h.cobalt-2", - Tool("common.items.weapons.sword_1h.cobalt-3"): "voxel.weapon.sword_1h.cobalt-3", - Tool("common.items.weapons.sword_1h.starter"): "voxel.weapon.sword_1h.starter", - Tool("common.items.weapons.sword_1h.iron-0"): "voxel.weapon.sword_1h.iron-0", - Tool("common.items.weapons.sword_1h.iron-1"): "voxel.weapon.sword_1h.iron-1", - Tool("common.items.weapons.sword_1h.iron-2"): "voxel.weapon.sword_1h.iron-2", - Tool("common.items.weapons.sword_1h.iron-3"): "voxel.weapon.sword_1h.iron-3", - Tool("common.items.weapons.sword_1h.iron-4"): "voxel.weapon.sword_1h.iron-4", - Tool("common.items.weapons.sword_1h.obsidian-0"): "voxel.weapon.sword_1h.obsidian-0", - Tool("common.items.weapons.sword_1h.orichalcum-0"): "voxel.weapon.sword_1h.orichalcum-0", - Tool("common.items.weapons.sword_1h.orichalcum-1"): "voxel.weapon.sword_1h.orichalcum-1", - Tool("common.items.weapons.sword_1h.steel-0"): "voxel.weapon.sword_1h.steel-0", - Tool("common.items.weapons.sword_1h.steel-1"): "voxel.weapon.sword_1h.steel-1", - Tool("common.items.weapons.sword_1h.steel-2"): "voxel.weapon.sword_1h.steel-2", - Tool("common.items.weapons.sword_1h.steel-3"): "voxel.weapon.sword_1h.steel-3", - // Axes - Tool("common.items.weapons.axe.starter_axe"): "voxel.weapon.axe.2haxe_rusty", - Tool("common.items.weapons.axe.orc_axe-0"): "voxel.weapon.axe.2haxe_orc-0", - Tool("common.items.weapons.axe.bronze_axe-0"): "voxel.weapon.axe.2haxe_bronze-0", - Tool("common.items.weapons.axe.bronze_axe-1"): "voxel.weapon.axe.2haxe_bronze-1", - Tool("common.items.weapons.axe.bronze_axe-2"): "voxel.weapon.axe.2haxe_bronze-2", - Tool("common.items.weapons.axe.iron_axe-0"): "voxel.weapon.axe.2haxe_iron-0", - Tool("common.items.weapons.axe.iron_axe-1"): "voxel.weapon.axe.2haxe_iron-1", - Tool("common.items.weapons.axe.iron_axe-2"): "voxel.weapon.axe.2haxe_iron-2", - Tool("common.items.weapons.axe.iron_axe-3"): "voxel.weapon.axe.2haxe_iron-3", - Tool("common.items.weapons.axe.iron_axe-4"): "voxel.weapon.axe.2haxe_iron-4", - Tool("common.items.weapons.axe.iron_axe-5"): "voxel.weapon.axe.2haxe_iron-5", - Tool("common.items.weapons.axe.iron_axe-6"): "voxel.weapon.axe.2haxe_iron-6", - Tool("common.items.weapons.axe.iron_axe-7"): "voxel.weapon.axe.2haxe_iron-7", - Tool("common.items.weapons.axe.iron_axe-8"): "voxel.weapon.axe.2haxe_iron-8", - Tool("common.items.weapons.axe.iron_axe-9"): "voxel.weapon.axe.2haxe_iron-9", - Tool("common.items.weapons.axe.steel_axe-0"): "voxel.weapon.axe.2haxe_steel-0", - Tool("common.items.weapons.axe.steel_axe-1"): "voxel.weapon.axe.2haxe_steel-1", - Tool("common.items.weapons.axe.steel_axe-2"): "voxel.weapon.axe.2haxe_steel-2", - Tool("common.items.weapons.axe.steel_axe-3"): "voxel.weapon.axe.2haxe_steel-3", - Tool("common.items.weapons.axe.steel_axe-4"): "voxel.weapon.axe.2haxe_steel-4", - Tool("common.items.weapons.axe.steel_axe-5"): "voxel.weapon.axe.2haxe_steel-5", - Tool("common.items.weapons.axe.steel_axe-6"): "voxel.weapon.axe.2haxe_steel-6", - Tool("common.items.weapons.axe.bloodsteel_axe-0"): "voxel.weapon.axe.2haxe_bloodsteel-0", - Tool("common.items.weapons.axe.bloodsteel_axe-1"): "voxel.weapon.axe.2haxe_bloodsteel-1", - Tool("common.items.weapons.axe.bloodsteel_axe-2"): "voxel.weapon.axe.2haxe_bloodsteel-2", - Tool("common.items.weapons.axe.cobalt_axe-0"): "voxel.weapon.axe.2haxe_cobalt-0", - Tool("common.items.weapons.axe.cobalt_axe-1"): "voxel.weapon.axe.2haxe_cobalt-1", - Tool("common.items.weapons.axe.malachite_axe-0"): "voxel.weapon.axe.2haxe_malachite-0", - Tool("common.items.weapons.axe.parashu"): "voxel.weapon.axe.parashu", - // 1h Axes - Tool("common.items.weapons.axe_1h.bloodsteel-0"): "voxel.weapon.axe_1h.bloodsteel-0", - Tool("common.items.weapons.axe_1h.bloodsteel-1"): "voxel.weapon.axe_1h.bloodsteel-1", - Tool("common.items.weapons.axe_1h.bronze-0"): "voxel.weapon.axe_1h.bronze-0", - Tool("common.items.weapons.axe_1h.bronze-1"): "voxel.weapon.axe_1h.bronze-1", - Tool("common.items.weapons.axe_1h.cobalt-0"): "voxel.weapon.axe_1h.cobalt-0", - Tool("common.items.weapons.axe_1h.cobalt-1"): "voxel.weapon.axe_1h.cobalt-1", - Tool("common.items.weapons.axe_1h.iron-0"): "voxel.weapon.axe_1h.iron-0", - Tool("common.items.weapons.axe_1h.iron-1"): "voxel.weapon.axe_1h.iron-1", - Tool("common.items.weapons.axe_1h.iron-2"): "voxel.weapon.axe_1h.iron-2", - Tool("common.items.weapons.axe_1h.iron-3"): "voxel.weapon.axe_1h.iron-3", - Tool("common.items.weapons.axe_1h.orichalcum-0"): "voxel.weapon.axe_1h.orichalcum-0", - Tool("common.items.weapons.axe_1h.steel-0"): "voxel.weapon.axe_1h.steel-0", - Tool("common.items.weapons.axe_1h.steel-1"): "voxel.weapon.axe_1h.steel-1", - Tool("common.items.weapons.axe_1h.steel-2"): "voxel.weapon.axe_1h.steel-2", - Tool("common.items.weapons.axe_1h.stone-0"): "voxel.weapon.axe_1h.stone-0", - Tool("common.items.weapons.axe_1h.stone-1"): "voxel.weapon.axe_1h.stone-1", - Tool("common.items.weapons.axe_1h.wood-0"): "voxel.weapon.axe_1h.wood-0", - Tool("common.items.weapons.axe_1h.wood-1"): "voxel.weapon.axe_1h.wood-1", - // Hammers - Tool("common.items.weapons.hammer.hammer_1"): "voxel.weapon.hammer.2hhammer_rusty", - Tool("common.items.weapons.hammer.starter_hammer"): "voxel.weapon.hammer.2hhammer_rusty", - Tool("common.items.weapons.hammer.wood_hammer-0"): "voxel.weapon.hammer.2hhammer_wood-0", - Tool("common.items.weapons.hammer.flimsy_hammer"): "voxel.weapon.hammer.2hhammer_flimsy", - Tool("common.items.weapons.hammer.stone_hammer-0"): "voxel.weapon.hammer.2hhammer_stone-0", - Tool("common.items.weapons.hammer.stone_hammer-1"): "voxel.weapon.hammer.2hhammer_stone-1", - Tool("common.items.weapons.hammer.stone_hammer-2"): "voxel.weapon.hammer.2hhammer_stone-2", - Tool("common.items.weapons.hammer.stone_hammer-3"): "voxel.weapon.hammer.2hhammer_stone-3", - Tool("common.items.weapons.hammer.bronze_hammer-0"): "voxel.weapon.hammer.2hhammer_bronze-0", - Tool("common.items.weapons.hammer.bronze_hammer-1"): "voxel.weapon.hammer.2hhammer_bronze-1", - Tool("common.items.weapons.hammer.iron_hammer-0"): "voxel.weapon.hammer.2hhammer_iron-0", - Tool("common.items.weapons.hammer.iron_hammer-1"): "voxel.weapon.hammer.2hhammer_iron-1", - Tool("common.items.weapons.hammer.iron_hammer-2"): "voxel.weapon.hammer.2hhammer_iron-2", - Tool("common.items.weapons.hammer.iron_hammer-3"): "voxel.weapon.hammer.2hhammer_iron-3", - Tool("common.items.weapons.hammer.iron_hammer-4"): "voxel.weapon.hammer.2hhammer_iron-4", - Tool("common.items.weapons.hammer.iron_hammer-5"): "voxel.weapon.hammer.2hhammer_iron-5", - Tool("common.items.weapons.hammer.iron_hammer-6"): "voxel.weapon.hammer.2hhammer_iron-6", - Tool("common.items.weapons.hammer.iron_hammer-7"): "voxel.weapon.hammer.2hhammer_iron-7", - Tool("common.items.weapons.hammer.iron_hammer-8"): "voxel.weapon.hammer.2hhammer_iron-8", - Tool("common.items.weapons.hammer.steel_hammer-0"): "voxel.weapon.hammer.2hhammer_steel-0", - Tool("common.items.weapons.hammer.steel_hammer-1"): "voxel.weapon.hammer.2hhammer_steel-1", - Tool("common.items.weapons.hammer.steel_hammer-2"): "voxel.weapon.hammer.2hhammer_steel-2", - Tool("common.items.weapons.hammer.steel_hammer-3"): "voxel.weapon.hammer.2hhammer_steel-3", - Tool("common.items.weapons.hammer.steel_hammer-4"): "voxel.weapon.hammer.2hhammer_steel-4", - Tool("common.items.weapons.hammer.steel_hammer-5"): "voxel.weapon.hammer.2hhammer_steel-5", - Tool("common.items.weapons.hammer.cobalt_hammer-0"): "voxel.weapon.hammer.2hhammer_cobalt-0", - Tool("common.items.weapons.hammer.cobalt_hammer-1"): "voxel.weapon.hammer.2hhammer_cobalt-1", - Tool("common.items.weapons.hammer.runic_hammer"): "voxel.weapon.hammer.2hhammer_runic", - Tool("common.items.weapons.hammer.ramshead_hammer"): "voxel.weapon.hammer.2hhammer_ramshead", - Tool("common.items.weapons.hammer.mjolnir"): "voxel.weapon.hammer.2hhammer_mjolnir", - Tool("common.items.weapons.hammer.cultist_purp_2h-0"): "voxel.weapon.hammer.cult_purp-0", - Tool("common.items.weapons.hammer.burnt_drumstick"): "voxel.weapon.hammer.burnt_drumstick", - // 1h Hammers - Tool("common.items.weapons.hammer_1h.bloodsteel-0"): "voxel.weapon.hammer_1h.bloodsteel-0", - Tool("common.items.weapons.hammer_1h.bloodsteel-1"): "voxel.weapon.hammer_1h.bloodsteel-1", - Tool("common.items.weapons.hammer_1h.bronze-0"): "voxel.weapon.hammer_1h.bronze-0", - Tool("common.items.weapons.hammer_1h.bronze-1"): "voxel.weapon.hammer_1h.bronze-1", - Tool("common.items.weapons.hammer_1h.cobalt-0"): "voxel.weapon.hammer_1h.cobalt-0", - Tool("common.items.weapons.hammer_1h.cobalt-1"): "voxel.weapon.hammer_1h.cobalt-1", - Tool("common.items.weapons.hammer_1h.iron-0"): "voxel.weapon.hammer_1h.iron-0", - Tool("common.items.weapons.hammer_1h.iron-1"): "voxel.weapon.hammer_1h.iron-1", - Tool("common.items.weapons.hammer_1h.iron-2"): "voxel.weapon.hammer_1h.iron-2", - Tool("common.items.weapons.hammer_1h.orichalcum-0"): "voxel.weapon.hammer_1h.orichalcum-0", - Tool("common.items.weapons.hammer_1h.steel-0"): "voxel.weapon.hammer_1h.steel-0", - Tool("common.items.weapons.hammer_1h.steel-1"): "voxel.weapon.hammer_1h.steel-1", - Tool("common.items.weapons.hammer_1h.steel-2"): "voxel.weapon.hammer_1h.steel-2", - Tool("common.items.weapons.hammer_1h.stone-0"): "voxel.weapon.hammer_1h.stone-0", - Tool("common.items.weapons.hammer_1h.stone-1"): "voxel.weapon.hammer_1h.stone-1", - Tool("common.items.weapons.hammer_1h.wood-0"): "voxel.weapon.hammer_1h.wood-0", - Tool("common.items.weapons.hammer_1h.wood-1"): "voxel.weapon.hammer_1h.wood-1", - // Staffs - Tool("common.items.weapons.staff.staff_1"): "voxel.weapon.staff.firestaff_starter", - Tool("common.items.weapons.staff.starter_staff"): "voxel.weapon.staff.firestaff_starter", - Tool("common.items.weapons.staff.bone_staff"): "voxel.weapon.staff.bone_staff", - Tool("common.items.weapons.staff.crimson_eye"): "voxel.weapon.staff.crimson_eye", - Tool("common.items.weapons.staff.cultist_staff"): "voxel.weapon.staff.firestaff_cultist", - Tool("common.items.weapons.staff.phoenix"): "voxel.weapon.staff.phoenix", - Tool("common.items.weapons.staff.aurora"): "voxel.weapon.staff.aurora", - Tool("common.items.weapons.staff.infused_tower"): "voxel.weapon.staff.infused_tower", - Tool("common.items.weapons.staff.flamethrower_0"): "voxel.weapon.staff.unstable_thrower", - Tool("common.items.weapons.staff.ley_seeker"): "voxel.weapon.staff.ley_seeker", - Tool("common.items.weapons.staff.lava_rod"): "voxel.weapon.staff.lava_rod", - Tool("common.items.weapons.staff.fiery_wishing_rod"): "voxel.weapon.staff.fiery_wishing_rod", - Tool("common.items.weapons.staff.orc_iron"): "voxel.weapon.staff.orcish_branding_iron", - Tool("common.items.weapons.staff.bent_fuse"): "voxel.weapon.staff.bent_fuse", - Tool("common.items.weapons.staff.heated_arm"): "voxel.weapon.staff.heated_arm", - Tool("common.items.weapons.staff.frostwood_torch"): "voxel.weapon.staff.frostwood_torch", - Tool("common.items.weapons.staff.golden_khakkara"): "voxel.weapon.staff.golden_khakkara", - Tool("common.items.weapons.staff.laevateinn"): "voxel.weapon.staff.laevateinn", - Tool("common.items.weapons.staff.ruby_rod"): "voxel.weapon.staff.ruby_rod", - Tool("common.items.weapons.staff.dragon_tongue"): "voxel.weapon.staff.dragon_tongue", - Tool("common.items.weapons.staff.solar"): "voxel.weapon.staff.solar", - // Healing Sceptres - Tool("common.items.weapons.sceptre.starter_sceptre"): "voxel.weapon.sceptre.wood-simple", - Tool("common.items.weapons.sceptre.moon0"): "voxel.weapon.sceptre.moon", - Tool("common.items.weapons.sceptre.staff_nature"): "voxel.weapon.sceptre.wood-nature", - Tool("common.items.weapons.sceptre.totem_green"): "voxel.weapon.sceptre.totem_green", - Tool("common.items.weapons.sceptre.root_green0"): "voxel.weapon.sceptre.root_green", - Tool("common.items.weapons.sceptre.fork0"): "voxel.weapon.sceptre.fork", - Tool("common.items.weapons.sceptre.loops0"): "voxel.weapon.sceptre.loops", - Tool("common.items.weapons.sceptre.root_evil"): "voxel.weapon.sceptre.root_evil", - Tool("common.items.weapons.sceptre.sceptre_velorite_0"): "voxel.weapon.sceptre.ore-nature", - Tool("common.items.weapons.sceptre.caduceus"): "voxel.weapon.sceptre.caduceus", - Tool("common.items.weapons.sceptre.coralline_cane"): "voxel.weapon.sceptre.coralline_cane", - Tool("common.items.weapons.sceptre.divine_gohei"): "voxel.weapon.sceptre.divine_gohei", - Tool("common.items.weapons.sceptre.emerald"): "voxel.weapon.sceptre.emerald", - Tool("common.items.weapons.sceptre.druids_arbor"): "voxel.weapon.sceptre.druids_arbor", - Tool("common.items.weapons.sceptre.amethyst"): "voxel.weapon.sceptre.amethyst", // Shields Tool("common.items.weapons.shield.shield_1"): "voxel.weapon.shield.wood-0", // Lanterns diff --git a/common/src/comp/inventory/loadout_builder.rs b/common/src/comp/inventory/loadout_builder.rs index 8b261627d5..89d31acd42 100644 --- a/common/src/comp/inventory/loadout_builder.rs +++ b/common/src/comp/inventory/loadout_builder.rs @@ -24,6 +24,7 @@ pub enum SpecError { ItemAssetError(assets::Error), ItemChoiceError(WeightedError), BaseChoiceError(WeightedError), + ModularWeaponCreationError(item::modular::ModularWeaponCreationError), } #[derive(Debug)] @@ -32,26 +33,20 @@ pub enum ValidationError { ItemAssetError(assets::Error), LoadoutAssetError(assets::Error), Loop(Vec), + ModularWeaponCreationError(item::modular::ModularWeaponCreationError), } #[derive(Debug, Deserialize, Clone)] -#[serde(untagged)] enum ItemSpec { Item(String), - Choice(Vec<(Weight, Option)>), - /// Modular weapon /// Parameters in this variant are used to randomly create a modular weapon - /// that meets the provided parameters Example: - /// ModularWeapon { - /// tool: Sword, - /// material: Iron, - /// hands: Some(Two), - /// } + /// that meets the provided parameters ModularWeapon { tool: item::tool::ToolKind, material: item::Material, hands: Option, }, + Choice(Vec<(Weight, Option)>), } impl ItemSpec { @@ -77,13 +72,16 @@ impl ItemSpec { tool, material, hands, - } => item::modular::random_weapon(*tool, *material, *hands), + } => item::modular::random_weapon(*tool, *material, *hands, rng) + .map(Some) + .map_err(SpecError::ModularWeaponCreationError), } } // Check if ItemSpec is valid and can be turned into Item #[cfg(test)] fn validate(&self) -> Result<(), ValidationError> { + let mut rng = rand::thread_rng(); match self { ItemSpec::Item(item_asset) => Item::new_from_asset(item_asset) .map(std::mem::drop) @@ -101,15 +99,14 @@ impl ItemSpec { tool, material, hands, - } => { - item::modular::random_weapon(*tool, *material, *hands) - }, + } => item::modular::random_weapon(*tool, *material, *hands, &mut rng) + .map(std::mem::drop) + .map_err(ValidationError::ModularWeaponCreationError), } } } #[derive(Debug, Deserialize, Clone)] -#[serde(untagged)] enum Hands { /// Allows to specify one pair InHands((Option, Option)), @@ -778,7 +775,7 @@ fn default_main_tool(body: &Body) -> Item { /// /// // Build a loadout with character starter defaults /// // and a specific sword with default sword abilities -/// let sword = Item::new_from_asset_expect("common.items.weapons.sword.steel-8"); +/// let sword = Item::new_from_asset_expect("common.items.weapons.sword.starter"); /// let loadout = LoadoutBuilder::empty() /// .defaults() /// .active_mainhand(Some(sword)) diff --git a/common/src/comp/inventory/test.rs b/common/src/comp/inventory/test.rs index 5558a33728..fbbc5e1454 100644 --- a/common/src/comp/inventory/test.rs +++ b/common/src/comp/inventory/test.rs @@ -1,7 +1,7 @@ use super::*; use crate::comp::{ inventory::{slot::ArmorSlot, test_helpers::get_test_bag}, - Item, + Item, item::ItemDefinitionId, }; use lazy_static::lazy_static; lazy_static! { @@ -314,7 +314,7 @@ fn equip_equipping_smaller_bag_from_last_slot_of_big_bag() { assert_eq!( inv.get(InvSlotId::new(0, 0)).unwrap().item_definition_id(), - LARGE_BAG_ID + ItemDefinitionId::Simple(LARGE_BAG_ID) ); assert!(result.is_empty()); } @@ -341,7 +341,7 @@ fn unequip_unequipping_bag_into_its_own_slot_with_no_other_free_slots_returns_on // by itself, the bag is returned to the caller assert_eq!( result[0].item_definition_id(), - "common.items.testing.test_bag" + ItemDefinitionId::Simple("common.items.testing.test_bag") ); } @@ -485,7 +485,7 @@ fn backpack_crash() { inv.swap_inventory_loadout(InvSlotId::new(9, 17), EquipSlot::Armor(ArmorSlot::Back)); assert_eq!(18, returned_items.len()); assert_eq!( - "common.items.armor.misc.back.backpack", + ItemDefinitionId::Simple("common.items.armor.misc.back.backpack"), returned_items[0].item_definition_id() ); }