diff --git a/CHANGELOG.md b/CHANGELOG.md index 7c1aa87bee..98071688fe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -38,8 +38,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Coral reefs, kelp forests, and seagrass - Talk animation - New bosses in 5 lower dungeons +<<<<<<< CHANGELOG.md - New enemies in 5 lower dungeons - Added on join event in plugins +- Item stacking and splitting +>>>>>>> CHANGELOG.md ### Changed @@ -59,6 +62,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Improved network efficiency by ≈ factor 10 by using tokio. - Added item tooltips to trade window. - "Quest" given to new players converted to being a short tutorial +- Items can be requested from the counterparty's inventory during trade. ### Removed diff --git a/assets/common/items/armor/back/leather_adventurer.ron b/assets/common/items/armor/agile/back.ron similarity index 90% rename from assets/common/items/armor/back/leather_adventurer.ron rename to assets/common/items/armor/agile/back.ron index 84ae5a60a3..398a212094 100644 --- a/assets/common/items/armor/back/leather_adventurer.ron +++ b/assets/common/items/armor/agile/back.ron @@ -2,7 +2,7 @@ ItemDef( name: "Agile Cape", description: "\'Tightly packed pieces of leather to endure all weather.\'", kind: Armor(( - kind: Back("Short2"), + kind: Back("Agile"), stats: ( protection: Normal(0.2), poise_resilience: Normal(0.1), diff --git a/assets/common/items/armor/belt/leather_adventurer.ron b/assets/common/items/armor/agile/belt.ron similarity index 89% rename from assets/common/items/armor/belt/leather_adventurer.ron rename to assets/common/items/armor/agile/belt.ron index 187ddc53aa..01fe69e95a 100644 --- a/assets/common/items/armor/belt/leather_adventurer.ron +++ b/assets/common/items/armor/agile/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Agile Belt", description: "\'Tightly packed pieces of leather to endure all weather.\'", kind: Armor(( - kind: Belt("Leather2"), + kind: Belt("Agile"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/chest/leather_adventurer.ron b/assets/common/items/armor/agile/chest.ron similarity index 89% rename from assets/common/items/armor/chest/leather_adventurer.ron rename to assets/common/items/armor/agile/chest.ron index ea6caa82ea..825e4fc5fc 100644 --- a/assets/common/items/armor/chest/leather_adventurer.ron +++ b/assets/common/items/armor/agile/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Agile Chest", description: "Tightly packed pieces of leather to endure all weather.", kind: Armor(( - kind: Chest("Leather2"), + kind: Chest("Agile"), stats: ( protection: Normal(8.0), poise_resilience: Normal(3.0), diff --git a/assets/common/items/armor/foot/leather_adventurer.ron b/assets/common/items/armor/agile/foot.ron similarity index 89% rename from assets/common/items/armor/foot/leather_adventurer.ron rename to assets/common/items/armor/agile/foot.ron index 3369b5f82b..1eb2e32154 100644 --- a/assets/common/items/armor/foot/leather_adventurer.ron +++ b/assets/common/items/armor/agile/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Agile Kickers", description: "\'Tightly packed pieces of leather to endure all weather.", kind: Armor(( - kind: Foot("Leather2"), + kind: Foot("Agile"), stats: ( protection: Normal(2.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/hand/leather_adventurer.ron b/assets/common/items/armor/agile/hand.ron similarity index 89% rename from assets/common/items/armor/hand/leather_adventurer.ron rename to assets/common/items/armor/agile/hand.ron index 227ebbe8b6..f26a394bdb 100644 --- a/assets/common/items/armor/hand/leather_adventurer.ron +++ b/assets/common/items/armor/agile/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Agile Gauntlets", description: "\'Tightly packed pieces of leather to endure all weather.\'", kind: Armor(( - kind: Hand("Leather2"), + kind: Hand("Agile"), stats: ( protection: Normal(4.0), poise_resilience: Normal(4.0), diff --git a/assets/common/items/armor/pants/leather_adventurer.ron b/assets/common/items/armor/agile/pants.ron similarity index 89% rename from assets/common/items/armor/pants/leather_adventurer.ron rename to assets/common/items/armor/agile/pants.ron index d0b0534a84..7244899d6a 100644 --- a/assets/common/items/armor/pants/leather_adventurer.ron +++ b/assets/common/items/armor/agile/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Agile Pantalons", description: "\'Tightly packed pieces of leather to endure all weather.\'", kind: Armor(( - kind: Pants("Leather2"), + kind: Pants("Agile"), stats: ( protection: Normal(6.0), poise_resilience: Normal(3.0), diff --git a/assets/common/items/armor/shoulder/leather_adventurer.ron b/assets/common/items/armor/agile/shoulder.ron similarity index 88% rename from assets/common/items/armor/shoulder/leather_adventurer.ron rename to assets/common/items/armor/agile/shoulder.ron index 9ee24ad808..8cf36a908e 100644 --- a/assets/common/items/armor/shoulder/leather_adventurer.ron +++ b/assets/common/items/armor/agile/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Agile Guards", description: "Tightly packed pieces of leather to endure all weather.", kind: Armor(( - kind: Shoulder("Leather2"), + kind: Shoulder("Agile"), stats: ( protection: Normal(8.0), poise_resilience: Normal(4.0), diff --git a/assets/common/items/armor/belt/assassin.ron b/assets/common/items/armor/assassin/belt.ron similarity index 100% rename from assets/common/items/armor/belt/assassin.ron rename to assets/common/items/armor/assassin/belt.ron diff --git a/assets/common/items/armor/chest/assassin.ron b/assets/common/items/armor/assassin/chest.ron similarity index 100% rename from assets/common/items/armor/chest/assassin.ron rename to assets/common/items/armor/assassin/chest.ron diff --git a/assets/common/items/armor/foot/assassin.ron b/assets/common/items/armor/assassin/foot.ron similarity index 100% rename from assets/common/items/armor/foot/assassin.ron rename to assets/common/items/armor/assassin/foot.ron diff --git a/assets/common/items/armor/hand/assassin.ron b/assets/common/items/armor/assassin/hand.ron similarity index 100% rename from assets/common/items/armor/hand/assassin.ron rename to assets/common/items/armor/assassin/hand.ron diff --git a/assets/common/items/armor/head/assa_mask_0.ron b/assets/common/items/armor/assassin/head.ron similarity index 100% rename from assets/common/items/armor/head/assa_mask_0.ron rename to assets/common/items/armor/assassin/head.ron diff --git a/assets/common/items/armor/pants/assassin.ron b/assets/common/items/armor/assassin/pants.ron similarity index 100% rename from assets/common/items/armor/pants/assassin.ron rename to assets/common/items/armor/assassin/pants.ron diff --git a/assets/common/items/armor/shoulder/assassin.ron b/assets/common/items/armor/assassin/shoulder.ron similarity index 100% rename from assets/common/items/armor/shoulder/assassin.ron rename to assets/common/items/armor/assassin/shoulder.ron diff --git a/assets/common/items/armor/belt/bonerattler.ron b/assets/common/items/armor/bonerattler/belt.ron similarity index 100% rename from assets/common/items/armor/belt/bonerattler.ron rename to assets/common/items/armor/bonerattler/belt.ron diff --git a/assets/common/items/armor/chest/bonerattler.ron b/assets/common/items/armor/bonerattler/chest.ron similarity index 100% rename from assets/common/items/armor/chest/bonerattler.ron rename to assets/common/items/armor/bonerattler/chest.ron diff --git a/assets/common/items/armor/foot/bonerattler.ron b/assets/common/items/armor/bonerattler/foot.ron similarity index 100% rename from assets/common/items/armor/foot/bonerattler.ron rename to assets/common/items/armor/bonerattler/foot.ron diff --git a/assets/common/items/armor/hand/bonerattler.ron b/assets/common/items/armor/bonerattler/hand.ron similarity index 100% rename from assets/common/items/armor/hand/bonerattler.ron rename to assets/common/items/armor/bonerattler/hand.ron diff --git a/assets/common/items/armor/pants/bonerattler.ron b/assets/common/items/armor/bonerattler/pants.ron similarity index 100% rename from assets/common/items/armor/pants/bonerattler.ron rename to assets/common/items/armor/bonerattler/pants.ron diff --git a/assets/common/items/armor/shoulder/bonerattler.ron b/assets/common/items/armor/bonerattler/shoulder.ron similarity index 100% rename from assets/common/items/armor/shoulder/bonerattler.ron rename to assets/common/items/armor/bonerattler/shoulder.ron diff --git a/assets/common/items/armor/chest/cultist_chest_purple.ron b/assets/common/items/armor/chest/cultist_chest_purple.ron deleted file mode 100644 index a268cb5334..0000000000 --- a/assets/common/items/armor/chest/cultist_chest_purple.ron +++ /dev/null @@ -1,13 +0,0 @@ -ItemDef( - name: "Purple Cultist Chest", - description: "Ceremonial attire used by members.", - kind: Armor(( - kind: Chest("CultistPurple"), - stats: ( - protection: Normal(30.0), - poise_resilience: Normal(15.0), - ), - )), - quality: Epic, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/belt/cloth_blue_0.ron b/assets/common/items/armor/cloth_blue/belt.ron similarity index 88% rename from assets/common/items/armor/belt/cloth_blue_0.ron rename to assets/common/items/armor/cloth_blue/belt.ron index 2ead514736..28ef54799c 100644 --- a/assets/common/items/armor/belt/cloth_blue_0.ron +++ b/assets/common/items/armor/cloth_blue/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Blue Linen Belt", description: "A stylish rough fabric belt, dyed blue.", kind: Armor(( - kind: Belt("ClothBlue0"), + kind: Belt("ClothBlue"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/chest/cloth_blue_0.ron b/assets/common/items/armor/cloth_blue/chest.ron similarity index 88% rename from assets/common/items/armor/chest/cloth_blue_0.ron rename to assets/common/items/armor/cloth_blue/chest.ron index 15212dc6c3..0f48e87d36 100644 --- a/assets/common/items/armor/chest/cloth_blue_0.ron +++ b/assets/common/items/armor/cloth_blue/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Blue Linen Chest", description: "A stylish rough fabric surcoat, dyed blue.", kind: Armor(( - kind: Chest("ClothBlue0"), + kind: Chest("ClothBlue"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/foot/cloth_blue_0.ron b/assets/common/items/armor/cloth_blue/foot.ron similarity index 88% rename from assets/common/items/armor/foot/cloth_blue_0.ron rename to assets/common/items/armor/cloth_blue/foot.ron index b5c70238e9..dd15879046 100644 --- a/assets/common/items/armor/foot/cloth_blue_0.ron +++ b/assets/common/items/armor/cloth_blue/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Blue Linen Boots", description: "Cobbled rough fabric boots, dyed blue.", kind: Armor(( - kind: Foot("ClothBlue0"), + kind: Foot("ClothBlue"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/armor/hand/cloth_blue_0.ron b/assets/common/items/armor/cloth_blue/hand.ron similarity index 89% rename from assets/common/items/armor/hand/cloth_blue_0.ron rename to assets/common/items/armor/cloth_blue/hand.ron index 946d7d5096..ddc21118b6 100644 --- a/assets/common/items/armor/hand/cloth_blue_0.ron +++ b/assets/common/items/armor/cloth_blue/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Blue Linen Wrists", description: "Rough cloth bracelets provide a stylish fashion statement, dyed blue.", kind: Armor(( - kind: Hand("ClothBlue0"), + kind: Hand("ClothBlue"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/armor/pants/cloth_blue_0.ron b/assets/common/items/armor/cloth_blue/pants.ron similarity index 88% rename from assets/common/items/armor/pants/cloth_blue_0.ron rename to assets/common/items/armor/cloth_blue/pants.ron index dc2de84afa..991a375a88 100644 --- a/assets/common/items/armor/pants/cloth_blue_0.ron +++ b/assets/common/items/armor/cloth_blue/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Blue Linen Skirt", description: "A stylish, rough fabric skirt, dyed blue.", kind: Armor(( - kind: Pants("ClothBlue0"), + kind: Pants("ClothBlue"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/shoulder/cloth_blue_0.ron b/assets/common/items/armor/cloth_blue/shoulder_0.ron similarity index 100% rename from assets/common/items/armor/shoulder/cloth_blue_0.ron rename to assets/common/items/armor/cloth_blue/shoulder_0.ron diff --git a/assets/common/items/armor/shoulder/cloth_blue_1.ron b/assets/common/items/armor/cloth_blue/shoulder_1.ron similarity index 100% rename from assets/common/items/armor/shoulder/cloth_blue_1.ron rename to assets/common/items/armor/cloth_blue/shoulder_1.ron diff --git a/assets/common/items/armor/belt/cloth_green_0.ron b/assets/common/items/armor/cloth_green/belt.ron similarity index 88% rename from assets/common/items/armor/belt/cloth_green_0.ron rename to assets/common/items/armor/cloth_green/belt.ron index 952605b13e..961dd4398c 100644 --- a/assets/common/items/armor/belt/cloth_green_0.ron +++ b/assets/common/items/armor/cloth_green/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Green Linen Belt", description: "A stylish rough fabric belt, dyed green.", kind: Armor(( - kind: Belt("ClothGreen0"), + kind: Belt("ClothGreen"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/chest/cloth_green_0.ron b/assets/common/items/armor/cloth_green/chest.ron similarity index 88% rename from assets/common/items/armor/chest/cloth_green_0.ron rename to assets/common/items/armor/cloth_green/chest.ron index a1157ddf54..80e844b7cf 100644 --- a/assets/common/items/armor/chest/cloth_green_0.ron +++ b/assets/common/items/armor/cloth_green/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Green Linen Chest", description: "A stylish rough fabric surcoat, dyed green.", kind: Armor(( - kind: Chest("ClothGreen0"), + kind: Chest("ClothGreen"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/foot/cloth_green_0.ron b/assets/common/items/armor/cloth_green/foot.ron similarity index 88% rename from assets/common/items/armor/foot/cloth_green_0.ron rename to assets/common/items/armor/cloth_green/foot.ron index 8b3b52205e..6eaa31cef0 100644 --- a/assets/common/items/armor/foot/cloth_green_0.ron +++ b/assets/common/items/armor/cloth_green/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Green Linen Boots", description: "Cobbled rough fabric boots, dyed green.", kind: Armor(( - kind: Foot("ClothGreen0"), + kind: Foot("ClothGreen"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/armor/hand/cloth_green_0.ron b/assets/common/items/armor/cloth_green/hand.ron similarity index 89% rename from assets/common/items/armor/hand/cloth_green_0.ron rename to assets/common/items/armor/cloth_green/hand.ron index 7c8f5297be..330e942996 100644 --- a/assets/common/items/armor/hand/cloth_green_0.ron +++ b/assets/common/items/armor/cloth_green/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Green Linen Wrists", description: "Rough cloth bracelets provide a stylish fashion statement, dyed green.", kind: Armor(( - kind: Hand("ClothGreen0"), + kind: Hand("ClothGreen"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/armor/pants/cloth_green_0.ron b/assets/common/items/armor/cloth_green/pants.ron similarity index 88% rename from assets/common/items/armor/pants/cloth_green_0.ron rename to assets/common/items/armor/cloth_green/pants.ron index 7f3378424a..66e02e82b7 100644 --- a/assets/common/items/armor/pants/cloth_green_0.ron +++ b/assets/common/items/armor/cloth_green/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Green Linen Skirt", description: "A stylish, rough fabric skirt, dyed green.", kind: Armor(( - kind: Pants("ClothGreen0"), + kind: Pants("ClothGreen"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/shoulder/cloth_green_0.ron b/assets/common/items/armor/cloth_green/shoulder.ron similarity index 87% rename from assets/common/items/armor/shoulder/cloth_green_0.ron rename to assets/common/items/armor/cloth_green/shoulder.ron index d069f517e4..f88213f29f 100644 --- a/assets/common/items/armor/shoulder/cloth_green_0.ron +++ b/assets/common/items/armor/cloth_green/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Green Linen Coat", description: "A rough fabric coat, dyed green.", kind: Armor(( - kind: Shoulder("ClothGreen0"), + kind: Shoulder("ClothGreen"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/belt/cloth_purple_0.ron b/assets/common/items/armor/cloth_purple/belt.ron similarity index 88% rename from assets/common/items/armor/belt/cloth_purple_0.ron rename to assets/common/items/armor/cloth_purple/belt.ron index afd0fc7401..db714546a9 100644 --- a/assets/common/items/armor/belt/cloth_purple_0.ron +++ b/assets/common/items/armor/cloth_purple/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Purple Linen Belt", description: "A stylish rough fabric belt, dyed purple.", kind: Armor(( - kind: Belt("ClothPurple0"), + kind: Belt("ClothPurple"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/chest/cloth_purple_0.ron b/assets/common/items/armor/cloth_purple/chest.ron similarity index 88% rename from assets/common/items/armor/chest/cloth_purple_0.ron rename to assets/common/items/armor/cloth_purple/chest.ron index 61013cfc0c..2212b075f5 100644 --- a/assets/common/items/armor/chest/cloth_purple_0.ron +++ b/assets/common/items/armor/cloth_purple/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Purple Linen Chest", description: "A stylish rough fabric surcoat, dyed purple.", kind: Armor(( - kind: Chest("ClothPurple0"), + kind: Chest("ClothPurple"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/foot/cloth_purple_0.ron b/assets/common/items/armor/cloth_purple/foot.ron similarity index 88% rename from assets/common/items/armor/foot/cloth_purple_0.ron rename to assets/common/items/armor/cloth_purple/foot.ron index 38df61bf13..32adc3427c 100644 --- a/assets/common/items/armor/foot/cloth_purple_0.ron +++ b/assets/common/items/armor/cloth_purple/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Purple Linen Boots", description: "Cobbled rough fabric boots, dyed purple.", kind: Armor(( - kind: Foot("ClothPurple0"), + kind: Foot("ClothPurple"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/armor/hand/cloth_purple_0.ron b/assets/common/items/armor/cloth_purple/hand.ron similarity index 80% rename from assets/common/items/armor/hand/cloth_purple_0.ron rename to assets/common/items/armor/cloth_purple/hand.ron index 19dc537539..d57beebeba 100644 --- a/assets/common/items/armor/hand/cloth_purple_0.ron +++ b/assets/common/items/armor/cloth_purple/hand.ron @@ -1,8 +1,8 @@ ItemDef( - name: "Purple Silk Wrists", + name: "Purple Linen Wrists", description: "Rough cloth bracelets provide a stylish fashion statement, dyed purple.", kind: Armor(( - kind: Hand("ClothPurple0"), + kind: Hand("ClothPurple"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/armor/pants/cloth_purple_0.ron b/assets/common/items/armor/cloth_purple/pants.ron similarity index 88% rename from assets/common/items/armor/pants/cloth_purple_0.ron rename to assets/common/items/armor/cloth_purple/pants.ron index 969bc1eabf..36888a2211 100644 --- a/assets/common/items/armor/pants/cloth_purple_0.ron +++ b/assets/common/items/armor/cloth_purple/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Purple Linen Skirt", description: "A stylish, rough fabric skirt, dyed purple.", kind: Armor(( - kind: Pants("ClothPurple0"), + kind: Pants("ClothPurple"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/shoulder/cloth_purple_0.ron b/assets/common/items/armor/cloth_purple/shoulder.ron similarity index 86% rename from assets/common/items/armor/shoulder/cloth_purple_0.ron rename to assets/common/items/armor/cloth_purple/shoulder.ron index 1238c718a7..d4ab23ccab 100644 --- a/assets/common/items/armor/shoulder/cloth_purple_0.ron +++ b/assets/common/items/armor/cloth_purple/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Purple Linen Coat", description: "A rough fabric coat, dyed purple.", kind: Armor(( - kind: Shoulder("ClothPurple0"), + kind: Shoulder("ClothPurple"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/belt/cultist_belt.ron b/assets/common/items/armor/cultist/belt.ron similarity index 100% rename from assets/common/items/armor/belt/cultist_belt.ron rename to assets/common/items/armor/cultist/belt.ron diff --git a/assets/common/items/armor/chest/cultist_chest_blue.ron b/assets/common/items/armor/cultist/chest.ron similarity index 77% rename from assets/common/items/armor/chest/cultist_chest_blue.ron rename to assets/common/items/armor/cultist/chest.ron index 6abfad9c7a..fb311475a5 100644 --- a/assets/common/items/armor/chest/cultist_chest_blue.ron +++ b/assets/common/items/armor/cultist/chest.ron @@ -1,8 +1,8 @@ ItemDef( - name: "Velorite Chest", + name: "Cultist Chest", description: "Ceremonial attire used by members.", kind: Armor(( - kind: Chest("VeloriteMage0"), + kind: Chest("Cultist"), stats: ( protection: Normal(30.0), poise_resilience: Normal(15.0), diff --git a/assets/common/items/armor/foot/cultist_boots.ron b/assets/common/items/armor/cultist/foot.ron similarity index 100% rename from assets/common/items/armor/foot/cultist_boots.ron rename to assets/common/items/armor/cultist/foot.ron diff --git a/assets/common/items/armor/hand/cultist_hands_purple.ron b/assets/common/items/armor/cultist/hand.ron similarity index 76% rename from assets/common/items/armor/hand/cultist_hands_purple.ron rename to assets/common/items/armor/cultist/hand.ron index b3e944bc92..cf48b137fa 100644 --- a/assets/common/items/armor/hand/cultist_hands_purple.ron +++ b/assets/common/items/armor/cultist/hand.ron @@ -1,8 +1,8 @@ ItemDef( - name: "Purple Cultist Gloves", + name: "Cultist Gloves", description: "Ceremonial attire used by members.", kind: Armor(( - kind: Hand("CultistPurple"), + kind: Hand("Cultist"), stats: ( protection: Normal(12.0), poise_resilience: Normal(8.0), diff --git a/assets/common/items/armor/pants/cultist_legs_purple.ron b/assets/common/items/armor/cultist/pants.ron similarity index 76% rename from assets/common/items/armor/pants/cultist_legs_purple.ron rename to assets/common/items/armor/cultist/pants.ron index c80fdc1b44..e50ab01fc8 100644 --- a/assets/common/items/armor/pants/cultist_legs_purple.ron +++ b/assets/common/items/armor/cultist/pants.ron @@ -1,8 +1,8 @@ ItemDef( - name: "Purple Cultist Skirt", + name: "Cultist Skirt", description: "Ceremonial attire used by members.", kind: Armor(( - kind: Pants("CultistPurple"), + kind: Pants("Cultist"), stats: ( protection: Normal(24.0), poise_resilience: Normal(14.0), diff --git a/assets/common/items/armor/shoulder/cultist_shoulder_blue.ron b/assets/common/items/armor/cultist/shoulder.ron similarity index 76% rename from assets/common/items/armor/shoulder/cultist_shoulder_blue.ron rename to assets/common/items/armor/cultist/shoulder.ron index 8069c5cdc3..e6e742acca 100644 --- a/assets/common/items/armor/shoulder/cultist_shoulder_blue.ron +++ b/assets/common/items/armor/cultist/shoulder.ron @@ -1,8 +1,8 @@ ItemDef( - name: "Velorite Mantle", + name: "Cultist Mantle", description: "Ceremonial attire used by members.", kind: Armor(( - kind: Shoulder("VeloriteMage0"), + kind: Shoulder("Cultist"), stats: ( protection: Normal(18.0), poise_resilience: Normal(10.0), diff --git a/assets/common/items/armor/belt/druid.ron b/assets/common/items/armor/druid/belt.ron similarity index 100% rename from assets/common/items/armor/belt/druid.ron rename to assets/common/items/armor/druid/belt.ron diff --git a/assets/common/items/armor/chest/druid.ron b/assets/common/items/armor/druid/chest.ron similarity index 100% rename from assets/common/items/armor/chest/druid.ron rename to assets/common/items/armor/druid/chest.ron diff --git a/assets/common/items/armor/foot/druid.ron b/assets/common/items/armor/druid/foot.ron similarity index 100% rename from assets/common/items/armor/foot/druid.ron rename to assets/common/items/armor/druid/foot.ron diff --git a/assets/common/items/armor/hand/druid.ron b/assets/common/items/armor/druid/hand.ron similarity index 100% rename from assets/common/items/armor/hand/druid.ron rename to assets/common/items/armor/druid/hand.ron diff --git a/assets/common/items/armor/pants/druid.ron b/assets/common/items/armor/druid/pants.ron similarity index 100% rename from assets/common/items/armor/pants/druid.ron rename to assets/common/items/armor/druid/pants.ron diff --git a/assets/common/items/armor/shoulder/druidshoulder.ron b/assets/common/items/armor/druid/shoulder.ron similarity index 86% rename from assets/common/items/armor/shoulder/druidshoulder.ron rename to assets/common/items/armor/druid/shoulder.ron index 3b08aa2b29..7d5db1b9cb 100644 --- a/assets/common/items/armor/shoulder/druidshoulder.ron +++ b/assets/common/items/armor/druid/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Druid Shoulders", description: "Forged for protectors of the wild.", kind: Armor(( - kind: Shoulder("DruidShoulder"), + kind: Shoulder("Druid"), stats: ( protection: Normal(3.0), poise_resilience: Normal(6.0), diff --git a/assets/common/items/armor/hand/cultist_hands_blue.ron b/assets/common/items/armor/hand/cultist_hands_blue.ron deleted file mode 100644 index 78cbbc7590..0000000000 --- a/assets/common/items/armor/hand/cultist_hands_blue.ron +++ /dev/null @@ -1,13 +0,0 @@ -ItemDef( - name: "Velorite Gloves", - description: "Ceremonial attire used by members.", - kind: Armor(( - kind: Hand("VeloriteMage0"), - stats: ( - protection: Normal(12.0), - poise_resilience: Normal(10.0), - ), - )), - quality: Epic, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/belt/leather_2.ron b/assets/common/items/armor/leather/belt.ron similarity index 88% rename from assets/common/items/armor/belt/leather_2.ron rename to assets/common/items/armor/leather/belt.ron index a3b0f23a32..c66a57c9f5 100644 --- a/assets/common/items/armor/belt/leather_2.ron +++ b/assets/common/items/armor/leather/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Belt", description: "A belt made from simple leather.", kind: Armor(( - kind: Belt("Leather2"), + kind: Belt("Leather"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/chest/leather_2.ron b/assets/common/items/armor/leather/chest.ron similarity index 88% rename from assets/common/items/armor/chest/leather_2.ron rename to assets/common/items/armor/leather/chest.ron index 749da4db1d..bb7db69674 100644 --- a/assets/common/items/armor/chest/leather_2.ron +++ b/assets/common/items/armor/leather/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Cuirass", description: "A cuirass made of simple leather.", kind: Armor(( - kind: Chest("Leather2"), + kind: Chest("Leather"), stats: ( protection: Normal(10.0), poise_resilience: Normal(8.0), diff --git a/assets/common/items/armor/foot/leather_2.ron b/assets/common/items/armor/leather/foot.ron similarity index 88% rename from assets/common/items/armor/foot/leather_2.ron rename to assets/common/items/armor/leather/foot.ron index 1c24f94bb7..9aaba380b3 100644 --- a/assets/common/items/armor/foot/leather_2.ron +++ b/assets/common/items/armor/leather/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Boots", description: "Boots made of simple leather.", kind: Armor(( - kind: Foot("Leather2"), + kind: Foot("Leather"), stats: ( protection: Normal(2.0), poise_resilience: Normal(3.0), diff --git a/assets/common/items/armor/hand/leather_2.ron b/assets/common/items/armor/leather/hand.ron similarity index 88% rename from assets/common/items/armor/hand/leather_2.ron rename to assets/common/items/armor/leather/hand.ron index c0be4105a0..08d438daa8 100644 --- a/assets/common/items/armor/hand/leather_2.ron +++ b/assets/common/items/armor/leather/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Gloves", description: "Gloves made of simple leather.", kind: Armor(( - kind: Hand("Leather2"), + kind: Hand("Leather"), stats: ( protection: Normal(4.0), poise_resilience: Normal(5.0), diff --git a/assets/common/items/armor/pants/leather_2.ron b/assets/common/items/armor/leather/pants.ron similarity index 88% rename from assets/common/items/armor/pants/leather_2.ron rename to assets/common/items/armor/leather/pants.ron index 1c80fee2dd..fd3131ed53 100644 --- a/assets/common/items/armor/pants/leather_2.ron +++ b/assets/common/items/armor/leather/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Leg Armour", description: "Leg armour made of simple leather.", kind: Armor(( - kind: Pants("Leather2"), + kind: Pants("Leather"), stats: ( protection: Normal(8.0), poise_resilience: Normal(4.0), diff --git a/assets/common/items/armor/shoulder/leather_2.ron b/assets/common/items/armor/leather/shoulder.ron similarity index 87% rename from assets/common/items/armor/shoulder/leather_2.ron rename to assets/common/items/armor/leather/shoulder.ron index 6cec22e471..c82e4e36ec 100644 --- a/assets/common/items/armor/shoulder/leather_2.ron +++ b/assets/common/items/armor/leather/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Shoulder Pad", description: "A simple shoulder pad made of leather.", kind: Armor(( - kind: Shoulder("Leather2"), + kind: Shoulder("Leather"), stats: ( protection: Normal(6.0), poise_resilience: Normal(2.0), diff --git a/assets/common/items/armor/belt/plate_leather_0.ron b/assets/common/items/armor/leather_plate/belt.ron similarity index 88% rename from assets/common/items/armor/belt/plate_leather_0.ron rename to assets/common/items/armor/leather_plate/belt.ron index 0478cd0930..8a1adb2638 100644 --- a/assets/common/items/armor/belt/plate_leather_0.ron +++ b/assets/common/items/armor/leather_plate/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Plate Belt", description: "Leather adorned with steel for better protection.", kind: Armor(( - kind: Belt("PlateLeather"), + kind: Belt("LeatherPlate"), stats: ( protection: Normal(4.0), poise_resilience: Normal(8.0), diff --git a/assets/common/items/armor/chest/plate_leather_0.ron b/assets/common/items/armor/leather_plate/chest.ron similarity index 88% rename from assets/common/items/armor/chest/plate_leather_0.ron rename to assets/common/items/armor/leather_plate/chest.ron index 418bb7a532..57b651fe5b 100644 --- a/assets/common/items/armor/chest/plate_leather_0.ron +++ b/assets/common/items/armor/leather_plate/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Plate Chest", description: "Leather adorned with steel for better protection.", kind: Armor(( - kind: Chest("PlateLeather"), + kind: Chest("LeatherPlate"), stats: ( protection: Normal(25.0), poise_resilience: Normal(40.0), diff --git a/assets/common/items/armor/foot/plate_leather_0.ron b/assets/common/items/armor/leather_plate/foot.ron similarity index 88% rename from assets/common/items/armor/foot/plate_leather_0.ron rename to assets/common/items/armor/leather_plate/foot.ron index 79df40ad5d..ea45f479eb 100644 --- a/assets/common/items/armor/foot/plate_leather_0.ron +++ b/assets/common/items/armor/leather_plate/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Plate Boots", description: "Leather adorned with steel for better protection.", kind: Armor(( - kind: Foot("PlateLeather"), + kind: Foot("LeatherPlate"), stats: ( protection: Normal(5.0), poise_resilience: Normal(10.0), diff --git a/assets/common/items/armor/hand/plate_leather_0.ron b/assets/common/items/armor/leather_plate/hand.ron similarity index 88% rename from assets/common/items/armor/hand/plate_leather_0.ron rename to assets/common/items/armor/leather_plate/hand.ron index dac425fb98..a7382c206a 100644 --- a/assets/common/items/armor/hand/plate_leather_0.ron +++ b/assets/common/items/armor/leather_plate/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Plate Gloves", description: "Leather adorned with steel for better protection.", kind: Armor(( - kind: Hand("PlateLeather"), + kind: Hand("LeatherPlate"), stats: ( protection: Normal(10.0), poise_resilience: Normal(15.0), diff --git a/assets/common/items/armor/pants/plate_leather_0.ron b/assets/common/items/armor/leather_plate/pants.ron similarity index 88% rename from assets/common/items/armor/pants/plate_leather_0.ron rename to assets/common/items/armor/leather_plate/pants.ron index 0ba0823495..9d5b30b25a 100644 --- a/assets/common/items/armor/pants/plate_leather_0.ron +++ b/assets/common/items/armor/leather_plate/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Plate Chausses", description: "Leather adorned with steel for better protection.", kind: Armor(( - kind: Pants("PlateLeather"), + kind: Pants("LeatherPlate"), stats: ( protection: Normal(20.0), poise_resilience: Normal(26.0), diff --git a/assets/common/items/armor/shoulder/plate_leather_0.ron b/assets/common/items/armor/leather_plate/shoulder.ron similarity index 87% rename from assets/common/items/armor/shoulder/plate_leather_0.ron rename to assets/common/items/armor/leather_plate/shoulder.ron index f01b48eb91..e7161f708f 100644 --- a/assets/common/items/armor/shoulder/plate_leather_0.ron +++ b/assets/common/items/armor/leather_plate/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Plate Shoulder Pad", description: "Leather adorned with steel for better protection.", kind: Armor(( - kind: Shoulder("PlateLeather"), + kind: Shoulder("LeatherPlate"), stats: ( protection: Normal(15.0), poise_resilience: Normal(20.0), diff --git a/assets/common/items/armor/back/admin.ron b/assets/common/items/armor/misc/back/admin.ron similarity index 100% rename from assets/common/items/armor/back/admin.ron rename to assets/common/items/armor/misc/back/admin.ron diff --git a/assets/common/items/armor/back/backpack_0.ron b/assets/common/items/armor/misc/back/backpack.ron similarity index 89% rename from assets/common/items/armor/back/backpack_0.ron rename to assets/common/items/armor/misc/back/backpack.ron index 14c4380464..9a67d6c42b 100644 --- a/assets/common/items/armor/back/backpack_0.ron +++ b/assets/common/items/armor/misc/back/backpack.ron @@ -2,7 +2,7 @@ ItemDef( name: "Traveler\'s Backpack", description: "Comfort and capacity united.", kind: Armor(( - kind: Back("Backpack0"), + kind: Back("Backpack"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/armor/back/dungeon_purple-0.ron b/assets/common/items/armor/misc/back/dungeon_purple.ron similarity index 87% rename from assets/common/items/armor/back/dungeon_purple-0.ron rename to assets/common/items/armor/misc/back/dungeon_purple.ron index 45a2ee2027..84a341127c 100644 --- a/assets/common/items/armor/back/dungeon_purple-0.ron +++ b/assets/common/items/armor/misc/back/dungeon_purple.ron @@ -2,7 +2,7 @@ ItemDef( name: "Purple Cultist Cape", description: "Smells like dark magic and candles.", kind: Armor(( - kind: Back("DungPurp0"), + kind: Back("DungeonPurple"), stats: ( protection: Normal(3.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/back/short_0.ron b/assets/common/items/armor/misc/back/short_0.ron similarity index 100% rename from assets/common/items/armor/back/short_0.ron rename to assets/common/items/armor/misc/back/short_0.ron diff --git a/assets/common/items/armor/back/short_1.ron b/assets/common/items/armor/misc/back/short_1.ron similarity index 100% rename from assets/common/items/armor/back/short_1.ron rename to assets/common/items/armor/misc/back/short_1.ron diff --git a/assets/common/items/armor/bag/heavy_seabag.ron b/assets/common/items/armor/misc/bag/heavy_seabag.ron similarity index 100% rename from assets/common/items/armor/bag/heavy_seabag.ron rename to assets/common/items/armor/misc/bag/heavy_seabag.ron diff --git a/assets/common/items/armor/bag/knitted_red_pouch.ron b/assets/common/items/armor/misc/bag/knitted_red_pouch.ron similarity index 100% rename from assets/common/items/armor/bag/knitted_red_pouch.ron rename to assets/common/items/armor/misc/bag/knitted_red_pouch.ron diff --git a/assets/common/items/armor/bag/liana_kit.ron b/assets/common/items/armor/misc/bag/liana_kit.ron similarity index 100% rename from assets/common/items/armor/bag/liana_kit.ron rename to assets/common/items/armor/misc/bag/liana_kit.ron diff --git a/assets/common/items/armor/bag/mindflayer_spellbag.ron b/assets/common/items/armor/misc/bag/mindflayer_spellbag.ron similarity index 100% rename from assets/common/items/armor/bag/mindflayer_spellbag.ron rename to assets/common/items/armor/misc/bag/mindflayer_spellbag.ron diff --git a/assets/common/items/armor/bag/reliable_backpack.ron b/assets/common/items/armor/misc/bag/reliable_backpack.ron similarity index 100% rename from assets/common/items/armor/bag/reliable_backpack.ron rename to assets/common/items/armor/misc/bag/reliable_backpack.ron diff --git a/assets/common/items/armor/bag/soulkeeper_cursed.ron b/assets/common/items/armor/misc/bag/soulkeeper_cursed.ron similarity index 100% rename from assets/common/items/armor/bag/soulkeeper_cursed.ron rename to assets/common/items/armor/misc/bag/soulkeeper_cursed.ron diff --git a/assets/common/items/armor/bag/soulkeeper_pure.ron b/assets/common/items/armor/misc/bag/soulkeeper_pure.ron similarity index 100% rename from assets/common/items/armor/bag/soulkeeper_pure.ron rename to assets/common/items/armor/misc/bag/soulkeeper_pure.ron diff --git a/assets/common/items/armor/bag/sturdy_red_backpack.ron b/assets/common/items/armor/misc/bag/sturdy_red_backpack.ron similarity index 100% rename from assets/common/items/armor/bag/sturdy_red_backpack.ron rename to assets/common/items/armor/misc/bag/sturdy_red_backpack.ron diff --git a/assets/common/items/armor/bag/tiny_leather_pouch.ron b/assets/common/items/armor/misc/bag/tiny_leather_pouch.ron similarity index 100% rename from assets/common/items/armor/bag/tiny_leather_pouch.ron rename to assets/common/items/armor/misc/bag/tiny_leather_pouch.ron diff --git a/assets/common/items/armor/bag/tiny_red_pouch.ron b/assets/common/items/armor/misc/bag/tiny_red_pouch.ron similarity index 100% rename from assets/common/items/armor/bag/tiny_red_pouch.ron rename to assets/common/items/armor/misc/bag/tiny_red_pouch.ron diff --git a/assets/common/items/armor/bag/troll_hide_pack.ron b/assets/common/items/armor/misc/bag/troll_hide_pack.ron similarity index 100% rename from assets/common/items/armor/bag/troll_hide_pack.ron rename to assets/common/items/armor/misc/bag/troll_hide_pack.ron diff --git a/assets/common/items/armor/bag/woven_red_bag.ron b/assets/common/items/armor/misc/bag/woven_red_bag.ron similarity index 100% rename from assets/common/items/armor/bag/woven_red_bag.ron rename to assets/common/items/armor/misc/bag/woven_red_bag.ron diff --git a/assets/common/items/armor/chest/worker_green_0.ron b/assets/common/items/armor/misc/chest/worker_green_0.ron similarity index 100% rename from assets/common/items/armor/chest/worker_green_0.ron rename to assets/common/items/armor/misc/chest/worker_green_0.ron diff --git a/assets/common/items/armor/chest/worker_green_1.ron b/assets/common/items/armor/misc/chest/worker_green_1.ron similarity index 100% rename from assets/common/items/armor/chest/worker_green_1.ron rename to assets/common/items/armor/misc/chest/worker_green_1.ron diff --git a/assets/common/items/armor/chest/worker_orange_0.ron b/assets/common/items/armor/misc/chest/worker_orange_0.ron similarity index 100% rename from assets/common/items/armor/chest/worker_orange_0.ron rename to assets/common/items/armor/misc/chest/worker_orange_0.ron diff --git a/assets/common/items/armor/chest/worker_orange_1.ron b/assets/common/items/armor/misc/chest/worker_orange_1.ron similarity index 100% rename from assets/common/items/armor/chest/worker_orange_1.ron rename to assets/common/items/armor/misc/chest/worker_orange_1.ron diff --git a/assets/common/items/armor/chest/worker_purple_0.ron b/assets/common/items/armor/misc/chest/worker_purple_0.ron similarity index 100% rename from assets/common/items/armor/chest/worker_purple_0.ron rename to assets/common/items/armor/misc/chest/worker_purple_0.ron diff --git a/assets/common/items/armor/chest/worker_purple_1.ron b/assets/common/items/armor/misc/chest/worker_purple_1.ron similarity index 100% rename from assets/common/items/armor/chest/worker_purple_1.ron rename to assets/common/items/armor/misc/chest/worker_purple_1.ron diff --git a/assets/common/items/armor/chest/worker_red_0.ron b/assets/common/items/armor/misc/chest/worker_red_0.ron similarity index 100% rename from assets/common/items/armor/chest/worker_red_0.ron rename to assets/common/items/armor/misc/chest/worker_red_0.ron diff --git a/assets/common/items/armor/chest/worker_red_1.ron b/assets/common/items/armor/misc/chest/worker_red_1.ron similarity index 100% rename from assets/common/items/armor/chest/worker_red_1.ron rename to assets/common/items/armor/misc/chest/worker_red_1.ron diff --git a/assets/common/items/armor/chest/worker_yellow_0.ron b/assets/common/items/armor/misc/chest/worker_yellow_0.ron similarity index 100% rename from assets/common/items/armor/chest/worker_yellow_0.ron rename to assets/common/items/armor/misc/chest/worker_yellow_0.ron diff --git a/assets/common/items/armor/chest/worker_yellow_1.ron b/assets/common/items/armor/misc/chest/worker_yellow_1.ron similarity index 100% rename from assets/common/items/armor/chest/worker_yellow_1.ron rename to assets/common/items/armor/misc/chest/worker_yellow_1.ron diff --git a/assets/common/items/armor/foot/jackalope_slippers.ron b/assets/common/items/armor/misc/foot/jackalope_slippers.ron similarity index 86% rename from assets/common/items/armor/foot/jackalope_slippers.ron rename to assets/common/items/armor/misc/foot/jackalope_slippers.ron index 091bfbbc84..fab40c9ac9 100644 --- a/assets/common/items/armor/foot/jackalope_slippers.ron +++ b/assets/common/items/armor/misc/foot/jackalope_slippers.ron @@ -2,7 +2,7 @@ ItemDef( name: "Fluffy Jackalope Slippers", description: "So warm and cozy!", kind: Armor(( - kind: Foot("JackalopeSlips"), + kind: Foot("Jackalope"), stats: ( protection: Normal(0.0), poise_resilience: Normal(10.0), diff --git a/assets/common/items/armor/foot/sandals_0.ron b/assets/common/items/armor/misc/foot/sandals.ron similarity index 88% rename from assets/common/items/armor/foot/sandals_0.ron rename to assets/common/items/armor/misc/foot/sandals.ron index 673ecd1f90..7c3aee3513 100644 --- a/assets/common/items/armor/foot/sandals_0.ron +++ b/assets/common/items/armor/misc/foot/sandals.ron @@ -2,7 +2,7 @@ ItemDef( name: "Worn out Sandals", description: "Loyal companions.", kind: Armor(( - kind: Foot("Sandal0"), + kind: Foot("Sandal"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/armor/neck/neck_0.ron b/assets/common/items/armor/misc/neck/plain_0.ron similarity index 89% rename from assets/common/items/armor/neck/neck_0.ron rename to assets/common/items/armor/misc/neck/plain_0.ron index 64087a68f6..8c1a5df87d 100644 --- a/assets/common/items/armor/neck/neck_0.ron +++ b/assets/common/items/armor/misc/neck/plain_0.ron @@ -2,7 +2,7 @@ ItemDef( name: "Plain Necklace", description: "It\'s become tarnished with age.", kind: Armor(( - kind: Neck("Neck0"), + kind: Neck("Plain0"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/neck/neck_1.ron b/assets/common/items/armor/misc/neck/plain_1.ron similarity index 89% rename from assets/common/items/armor/neck/neck_1.ron rename to assets/common/items/armor/misc/neck/plain_1.ron index e36af099b6..60e9a98cf1 100644 --- a/assets/common/items/armor/neck/neck_1.ron +++ b/assets/common/items/armor/misc/neck/plain_1.ron @@ -2,7 +2,7 @@ ItemDef( name: "Gem of lesser Protection", description: "Surrounded by a discrete magical glow.", kind: Armor(( - kind: Neck("Neck1"), + kind: Neck("Plain1"), stats: ( protection: Normal(2.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/neck/neck_2.ron b/assets/common/items/armor/misc/neck/shell.ron similarity index 89% rename from assets/common/items/armor/neck/neck_2.ron rename to assets/common/items/armor/misc/neck/shell.ron index 9a17ee9d0c..4bba778bd7 100644 --- a/assets/common/items/armor/neck/neck_2.ron +++ b/assets/common/items/armor/misc/neck/shell.ron @@ -2,7 +2,7 @@ ItemDef( name: "Seashell Necklace", description: "Contains the guardian aura of the ocean", kind: Armor(( - kind: Neck("NeckShell"), + kind: Neck("Shell"), stats: ( protection: Normal(2.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/pants/hunting.ron b/assets/common/items/armor/misc/pants/hunting.ron similarity index 100% rename from assets/common/items/armor/pants/hunting.ron rename to assets/common/items/armor/misc/pants/hunting.ron diff --git a/assets/common/items/armor/pants/worker_blue_0.ron b/assets/common/items/armor/misc/pants/worker_blue.ron similarity index 88% rename from assets/common/items/armor/pants/worker_blue_0.ron rename to assets/common/items/armor/misc/pants/worker_blue.ron index a2cf9f7b08..b24428bf78 100644 --- a/assets/common/items/armor/pants/worker_blue_0.ron +++ b/assets/common/items/armor/misc/pants/worker_blue.ron @@ -2,7 +2,7 @@ ItemDef( name: "Blue Worker Pants", description: "Pants used by a farmer, until recently.", kind: Armor(( - kind: Pants("WorkerBlue0"), + kind: Pants("WorkerBlue"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/ring/ring_gold_0.ron b/assets/common/items/armor/misc/ring/gold.ron similarity index 88% rename from assets/common/items/armor/ring/ring_gold_0.ron rename to assets/common/items/armor/misc/ring/gold.ron index 6149fec8a9..8acae0e3e1 100644 --- a/assets/common/items/armor/ring/ring_gold_0.ron +++ b/assets/common/items/armor/misc/ring/gold.ron @@ -2,7 +2,7 @@ ItemDef( name: "Gold Ring", description: "Someone is surely missing it...", kind: Armor(( - kind: Ring("RingGold0"), + kind: Ring("Gold"), stats: ( protection: Normal(0.5), poise_resilience: Normal(0.0), diff --git a/assets/common/items/armor/ring/ring_0.ron b/assets/common/items/armor/misc/ring/scratched.ron similarity index 87% rename from assets/common/items/armor/ring/ring_0.ron rename to assets/common/items/armor/misc/ring/scratched.ron index c1d4e65674..fed0e9d2df 100644 --- a/assets/common/items/armor/ring/ring_0.ron +++ b/assets/common/items/armor/misc/ring/scratched.ron @@ -2,7 +2,7 @@ ItemDef( name: "Scratched Ring", description: "Barely fits your finger.", kind: Armor(( - kind: Ring("Ring0"), + kind: Ring("Scratched"), stats: ( protection: Normal(0.1), poise_resilience: Normal(0.0), diff --git a/assets/common/items/armor/ring/ring_purp_high_0.ron b/assets/common/items/armor/misc/ring/skull.ron similarity index 88% rename from assets/common/items/armor/ring/ring_purp_high_0.ron rename to assets/common/items/armor/misc/ring/skull.ron index 863dd6907a..edfa8639e7 100644 --- a/assets/common/items/armor/ring/ring_purp_high_0.ron +++ b/assets/common/items/armor/misc/ring/skull.ron @@ -2,7 +2,7 @@ ItemDef( name: "Cultist Signet Ring ", description: "Once belonged to a cultist.", kind: Armor(( - kind: Ring("RingSkull0"), + kind: Ring("Skull"), stats: ( protection: Normal(3.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/shoulder/iron_spikes.ron b/assets/common/items/armor/misc/shoulder/iron_spikes.ron similarity index 100% rename from assets/common/items/armor/shoulder/iron_spikes.ron rename to assets/common/items/armor/misc/shoulder/iron_spikes.ron diff --git a/assets/common/items/armor/shoulder/leather_0.ron b/assets/common/items/armor/misc/shoulder/leather_3.ron similarity index 88% rename from assets/common/items/armor/shoulder/leather_0.ron rename to assets/common/items/armor/misc/shoulder/leather_3.ron index c551338e0d..4794d5cb03 100644 --- a/assets/common/items/armor/shoulder/leather_0.ron +++ b/assets/common/items/armor/misc/shoulder/leather_3.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Pauldrons", description: "Animal hide tanned and formed into shoulder pads.", kind: Armor(( - kind: Shoulder("Leather0"), + kind: Shoulder("Leather3"), stats: ( protection: Normal(6.0), poise_resilience: Normal(3.0), diff --git a/assets/common/items/armor/shoulder/leather_iron_0.ron b/assets/common/items/armor/misc/shoulder/leather_iron_0.ron similarity index 100% rename from assets/common/items/armor/shoulder/leather_iron_0.ron rename to assets/common/items/armor/misc/shoulder/leather_iron_0.ron diff --git a/assets/common/items/armor/shoulder/leather_iron_1.ron b/assets/common/items/armor/misc/shoulder/leather_iron_1.ron similarity index 100% rename from assets/common/items/armor/shoulder/leather_iron_1.ron rename to assets/common/items/armor/misc/shoulder/leather_iron_1.ron diff --git a/assets/common/items/armor/shoulder/leather_iron_2.ron b/assets/common/items/armor/misc/shoulder/leather_iron_2.ron similarity index 100% rename from assets/common/items/armor/shoulder/leather_iron_2.ron rename to assets/common/items/armor/misc/shoulder/leather_iron_2.ron diff --git a/assets/common/items/armor/shoulder/leather_iron_3.ron b/assets/common/items/armor/misc/shoulder/leather_iron_3.ron similarity index 100% rename from assets/common/items/armor/shoulder/leather_iron_3.ron rename to assets/common/items/armor/misc/shoulder/leather_iron_3.ron diff --git a/assets/common/items/armor/shoulder/leather_strips.ron b/assets/common/items/armor/misc/shoulder/leather_strip.ron similarity index 87% rename from assets/common/items/armor/shoulder/leather_strips.ron rename to assets/common/items/armor/misc/shoulder/leather_strip.ron index 7ff99561a2..d771916b4e 100644 --- a/assets/common/items/armor/shoulder/leather_strips.ron +++ b/assets/common/items/armor/misc/shoulder/leather_strip.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leather Strips", description: "Tanned animal hide strips formed into loose shoulder pads.", kind: Armor(( - kind: Shoulder("LeatherStrips"), + kind: Shoulder("LeatherStrip"), stats: ( protection: Normal(4.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/tabard/admin.ron b/assets/common/items/armor/misc/tabard/admin.ron similarity index 100% rename from assets/common/items/armor/tabard/admin.ron rename to assets/common/items/armor/misc/tabard/admin.ron diff --git a/assets/common/items/armor/pants/cultist_legs_blue.ron b/assets/common/items/armor/pants/cultist_legs_blue.ron deleted file mode 100644 index 3702f459a3..0000000000 --- a/assets/common/items/armor/pants/cultist_legs_blue.ron +++ /dev/null @@ -1,13 +0,0 @@ -ItemDef( - name: "Velorite Skirt", - description: "Ceremonial attire used by members.", - kind: Armor(( - kind: Pants("VeloriteMage0"), - stats: ( - protection: Normal(24.0), - poise_resilience: Normal(10.0), - ), - )), - quality: Epic, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/belt/plate_0.ron b/assets/common/items/armor/plate/belt.ron similarity index 82% rename from assets/common/items/armor/belt/plate_0.ron rename to assets/common/items/armor/plate/belt.ron index f82ddd629b..6156ebc5a5 100644 --- a/assets/common/items/armor/belt/plate_0.ron +++ b/assets/common/items/armor/plate/belt.ron @@ -1,8 +1,8 @@ ItemDef( - name: "Iron Belt", + name: "Plate Belt", description: "A tanned leather belt with a forged iron buckle.", kind: Armor(( - kind: Belt("Plate0"), + kind: Belt("Plate"), stats: ( protection: Normal(3.0), poise_resilience: Normal(4.0), diff --git a/assets/common/items/armor/chest/plate_green_0.ron b/assets/common/items/armor/plate/chest.ron similarity index 90% rename from assets/common/items/armor/chest/plate_green_0.ron rename to assets/common/items/armor/plate/chest.ron index 58724b374b..42d10380e8 100644 --- a/assets/common/items/armor/chest/plate_green_0.ron +++ b/assets/common/items/armor/plate/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Iron Chestplate", description: "Formed iron plate resulting in very heavy but solid protection, worn over a simple rough linen shirt, dyed green.", kind: Armor(( - kind: Chest("PlateGreen0"), + kind: Chest("Plate"), stats: ( protection: Normal(20.0), poise_resilience: Normal(18.0), diff --git a/assets/common/items/armor/foot/plate_0.ron b/assets/common/items/armor/plate/foot.ron similarity index 90% rename from assets/common/items/armor/foot/plate_0.ron rename to assets/common/items/armor/plate/foot.ron index 1408c3b485..ee345d2b1a 100644 --- a/assets/common/items/armor/foot/plate_0.ron +++ b/assets/common/items/armor/plate/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Iron Feet", description: "Quickly shaped iron plates, forming boots that are uncomfortable but durable.", kind: Armor(( - kind: Foot("Plate0"), + kind: Foot("Plate"), stats: ( protection: Normal(4.0), poise_resilience: Normal(8.0), diff --git a/assets/common/items/armor/hand/plate_0.ron b/assets/common/items/armor/plate/hand.ron similarity index 90% rename from assets/common/items/armor/hand/plate_0.ron rename to assets/common/items/armor/plate/hand.ron index 0469dd3bb7..dee9f57b94 100644 --- a/assets/common/items/armor/hand/plate_0.ron +++ b/assets/common/items/armor/plate/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Iron Handguards", description: "Heavy chunks of metal plate, not the most comfortable but keeps the wearer safe.", kind: Armor(( - kind: Hand("Plate0"), + kind: Hand("Plate"), stats: ( protection: Normal(8.0), poise_resilience: Normal(11.0), diff --git a/assets/common/items/armor/pants/plate_green_0.ron b/assets/common/items/armor/plate/pants.ron similarity index 89% rename from assets/common/items/armor/pants/plate_green_0.ron rename to assets/common/items/armor/plate/pants.ron index 7521ed2d68..2ce11fd3cd 100644 --- a/assets/common/items/armor/pants/plate_green_0.ron +++ b/assets/common/items/armor/plate/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Iron Legguards", description: "Heavy iron plate formed into protective greaves, decorated with rough green fabric.", kind: Armor(( - kind: Pants("PlateGreen0"), + kind: Pants("Plate"), stats: ( protection: Normal(16.0), poise_resilience: Normal(14.0), diff --git a/assets/common/items/armor/shoulder/plate_0.ron b/assets/common/items/armor/plate/shoulder.ron similarity index 88% rename from assets/common/items/armor/shoulder/plate_0.ron rename to assets/common/items/armor/plate/shoulder.ron index 38e890af99..f0565c8c7b 100644 --- a/assets/common/items/armor/shoulder/plate_0.ron +++ b/assets/common/items/armor/plate/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Iron Shoulderguards", description: "Heavy iron shoulder protection.", kind: Armor(( - kind: Shoulder("Plate0"), + kind: Shoulder("Plate"), stats: ( protection: Normal(12.0), poise_resilience: Normal(16.0), diff --git a/assets/common/items/armor/chest/rugged.ron b/assets/common/items/armor/rugged/chest.ron similarity index 88% rename from assets/common/items/armor/chest/rugged.ron rename to assets/common/items/armor/rugged/chest.ron index 05d690740c..82a93eaa8d 100644 --- a/assets/common/items/armor/chest/rugged.ron +++ b/assets/common/items/armor/rugged/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Rugged Shirt", description: "Smells like Adventure.", kind: Armor(( - kind: Chest("Rugged0"), + kind: Chest("Rugged"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/pants/rugged.ron b/assets/common/items/armor/rugged/pants.ron similarity index 88% rename from assets/common/items/armor/pants/rugged.ron rename to assets/common/items/armor/rugged/pants.ron index 293afc8a91..ffa158a07a 100644 --- a/assets/common/items/armor/pants/rugged.ron +++ b/assets/common/items/armor/rugged/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Rugged Commoner\'s Pants", description: "They remind you of the old days.", kind: Armor(( - kind: Pants("Rugged0"), + kind: Pants("Rugged"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/shoulder/cultist_shoulder_purple.ron b/assets/common/items/armor/shoulder/cultist_shoulder_purple.ron deleted file mode 100644 index d1ae261e23..0000000000 --- a/assets/common/items/armor/shoulder/cultist_shoulder_purple.ron +++ /dev/null @@ -1,13 +0,0 @@ -ItemDef( - name: "Purple Cultist Mantle", - description: "Ceremonial attire used by members.", - kind: Armor(( - kind: Shoulder("CultistPurple"), - stats: ( - protection: Normal(18.0), - poise_resilience: Normal(10.0), - ), - )), - quality: Epic, - tags: [], -) \ No newline at end of file diff --git a/assets/common/items/armor/belt/steel_0.ron b/assets/common/items/armor/steel/belt.ron similarity index 90% rename from assets/common/items/armor/belt/steel_0.ron rename to assets/common/items/armor/steel/belt.ron index f97a186550..44e377a5df 100644 --- a/assets/common/items/armor/belt/steel_0.ron +++ b/assets/common/items/armor/steel/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Steel Belt", description: "Metal alloy interlocking plates to improve protection.", kind: Armor(( - kind: Belt("Steel0"), + kind: Belt("Steel"), stats: ( protection: Normal(4.0), poise_resilience: Normal(8.0), diff --git a/assets/common/items/armor/chest/steel_0.ron b/assets/common/items/armor/steel/chest.ron similarity index 90% rename from assets/common/items/armor/chest/steel_0.ron rename to assets/common/items/armor/steel/chest.ron index 58c346e008..137f6fa6ab 100644 --- a/assets/common/items/armor/chest/steel_0.ron +++ b/assets/common/items/armor/steel/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Steel Cuirass", description: "The metal alloy provides a somewhat lighter and stronger cuirass.", kind: Armor(( - kind: Chest("Steel0"), + kind: Chest("Steel"), stats: ( protection: Normal(25.0), poise_resilience: Normal(40.0), diff --git a/assets/common/items/armor/foot/steel_0.ron b/assets/common/items/armor/steel/foot.ron similarity index 90% rename from assets/common/items/armor/foot/steel_0.ron rename to assets/common/items/armor/steel/foot.ron index 49ca7b4782..c34a4f01a4 100644 --- a/assets/common/items/armor/foot/steel_0.ron +++ b/assets/common/items/armor/steel/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Steel Boots", description: "Metal alloy boots providing a more comfortable and durable protection.", kind: Armor(( - kind: Foot("Steel0"), + kind: Foot("Steel"), stats: ( protection: Normal(5.0), poise_resilience: Normal(10.0), diff --git a/assets/common/items/armor/hand/steel_0.ron b/assets/common/items/armor/steel/hand.ron similarity index 91% rename from assets/common/items/armor/hand/steel_0.ron rename to assets/common/items/armor/steel/hand.ron index 772dbd9780..8fee785e9b 100644 --- a/assets/common/items/armor/hand/steel_0.ron +++ b/assets/common/items/armor/steel/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Steel Gauntlets", description: "The metal alloy provides better protection and lighter weight, a quite comfortable gauntlet.", kind: Armor(( - kind: Hand("Steel0"), + kind: Hand("Steel"), stats: ( protection: Normal(10.0), poise_resilience: Normal(15.0), diff --git a/assets/common/items/armor/pants/steel_0.ron b/assets/common/items/armor/steel/pants.ron similarity index 90% rename from assets/common/items/armor/pants/steel_0.ron rename to assets/common/items/armor/steel/pants.ron index 367ab1193d..da749c30f4 100644 --- a/assets/common/items/armor/pants/steel_0.ron +++ b/assets/common/items/armor/steel/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Steel Chausses", description: "The metal alloy provides improvements to fit, durability, and lightness.", kind: Armor(( - kind: Pants("Steel0"), + kind: Pants("Steel"), stats: ( protection: Normal(20.0), poise_resilience: Normal(26.0), diff --git a/assets/common/items/armor/shoulder/steel_0.ron b/assets/common/items/armor/steel/shoulder.ron similarity index 89% rename from assets/common/items/armor/shoulder/steel_0.ron rename to assets/common/items/armor/steel/shoulder.ron index 778be25538..ce7af493fb 100644 --- a/assets/common/items/armor/shoulder/steel_0.ron +++ b/assets/common/items/armor/steel/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Steel Shoulder Pad", description: "The metal alloy plates provide better protection and comfort.", kind: Armor(( - kind: Shoulder("Steel0"), + kind: Shoulder("Steel"), stats: ( protection: Normal(15.0), poise_resilience: Normal(20.0), diff --git a/assets/common/items/armor/belt/leather_0.ron b/assets/common/items/armor/swift/belt.ron similarity index 88% rename from assets/common/items/armor/belt/leather_0.ron rename to assets/common/items/armor/swift/belt.ron index ee4ef7f357..b37f56cd56 100644 --- a/assets/common/items/armor/belt/leather_0.ron +++ b/assets/common/items/armor/swift/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Swift Belt", description: "Swift like the wind.", kind: Armor(( - kind: Belt("Leather0"), + kind: Belt("Swift"), stats: ( protection: Normal(1.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/chest/leather_0.ron b/assets/common/items/armor/swift/chest.ron similarity index 87% rename from assets/common/items/armor/chest/leather_0.ron rename to assets/common/items/armor/swift/chest.ron index 17aaf77fe4..41acaa1db1 100644 --- a/assets/common/items/armor/chest/leather_0.ron +++ b/assets/common/items/armor/swift/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Swift Chest", description: "Swift like the wind.", kind: Armor(( - kind: Chest("Leather0"), + kind: Chest("Swift"), stats: ( protection: Normal(10.0), poise_resilience: Normal(7.0), diff --git a/assets/common/items/armor/foot/leather_0.ron b/assets/common/items/armor/swift/foot.ron similarity index 88% rename from assets/common/items/armor/foot/leather_0.ron rename to assets/common/items/armor/swift/foot.ron index f8657eb430..b2f8392de9 100644 --- a/assets/common/items/armor/foot/leather_0.ron +++ b/assets/common/items/armor/swift/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Swift Boots", description: "Swift like the wind.", kind: Armor(( - kind: Foot("Leather0"), + kind: Foot("Swift"), stats: ( protection: Normal(2.0), poise_resilience: Normal(2.0), diff --git a/assets/common/items/armor/hand/leather_0.ron b/assets/common/items/armor/swift/hand.ron similarity index 88% rename from assets/common/items/armor/hand/leather_0.ron rename to assets/common/items/armor/swift/hand.ron index a47f26bcdb..d916cd40f1 100644 --- a/assets/common/items/armor/hand/leather_0.ron +++ b/assets/common/items/armor/swift/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Swift Gloves", description: "Swift like the wind.", kind: Armor(( - kind: Hand("Leather0"), + kind: Hand("Swift"), stats: ( protection: Normal(4.0), poise_resilience: Normal(3.0), diff --git a/assets/common/items/armor/head/leather_0.ron b/assets/common/items/armor/swift/head.ron similarity index 88% rename from assets/common/items/armor/head/leather_0.ron rename to assets/common/items/armor/swift/head.ron index fcb6d867a0..6d76d2f0ff 100644 --- a/assets/common/items/armor/head/leather_0.ron +++ b/assets/common/items/armor/swift/head.ron @@ -2,7 +2,7 @@ ItemDef( name: "Swift Leather Cap", description: "Swift like the wind.", kind: Armor(( - kind: Head("Leather0"), + kind: Head("Swift"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/armor/pants/leather_0.ron b/assets/common/items/armor/swift/pants.ron similarity index 87% rename from assets/common/items/armor/pants/leather_0.ron rename to assets/common/items/armor/swift/pants.ron index ca6b94d8f2..2310dbb5b2 100644 --- a/assets/common/items/armor/pants/leather_0.ron +++ b/assets/common/items/armor/swift/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Swift Pants", description: "Swift like the wind.", kind: Armor(( - kind: Pants("Leather0"), + kind: Pants("Swift"), stats: ( protection: Normal(8.0), poise_resilience: Normal(4.0), diff --git a/assets/common/items/armor/shoulder/leather_1.ron b/assets/common/items/armor/swift/shoulder.ron similarity index 87% rename from assets/common/items/armor/shoulder/leather_1.ron rename to assets/common/items/armor/swift/shoulder.ron index e5fd445778..78dbf14989 100644 --- a/assets/common/items/armor/shoulder/leather_1.ron +++ b/assets/common/items/armor/swift/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Swift Shoulderpads", description: "Swift like the wind.", kind: Armor(( - kind: Shoulder("Leather1"), + kind: Shoulder("Swift"), stats: ( protection: Normal(6.0), poise_resilience: Normal(5.0), diff --git a/assets/common/items/armor/belt/tarasque.ron b/assets/common/items/armor/tarasque/belt.ron similarity index 100% rename from assets/common/items/armor/belt/tarasque.ron rename to assets/common/items/armor/tarasque/belt.ron diff --git a/assets/common/items/armor/chest/tarasque.ron b/assets/common/items/armor/tarasque/chest.ron similarity index 100% rename from assets/common/items/armor/chest/tarasque.ron rename to assets/common/items/armor/tarasque/chest.ron diff --git a/assets/common/items/armor/foot/tarasque.ron b/assets/common/items/armor/tarasque/foot.ron similarity index 100% rename from assets/common/items/armor/foot/tarasque.ron rename to assets/common/items/armor/tarasque/foot.ron diff --git a/assets/common/items/armor/hand/tarasque.ron b/assets/common/items/armor/tarasque/hand.ron similarity index 100% rename from assets/common/items/armor/hand/tarasque.ron rename to assets/common/items/armor/tarasque/hand.ron diff --git a/assets/common/items/armor/pants/tarasque.ron b/assets/common/items/armor/tarasque/pants.ron similarity index 100% rename from assets/common/items/armor/pants/tarasque.ron rename to assets/common/items/armor/tarasque/pants.ron diff --git a/assets/common/items/armor/shoulder/tarasque.ron b/assets/common/items/armor/tarasque/shoulder.ron similarity index 100% rename from assets/common/items/armor/shoulder/tarasque.ron rename to assets/common/items/armor/tarasque/shoulder.ron diff --git a/assets/common/items/armor/belt/twig.ron b/assets/common/items/armor/twigs/belt.ron similarity index 90% rename from assets/common/items/armor/belt/twig.ron rename to assets/common/items/armor/twigs/belt.ron index 3fbe526fd9..334f8619b1 100644 --- a/assets/common/items/armor/belt/twig.ron +++ b/assets/common/items/armor/twigs/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Twig Belt", description: "Small bits of nature magically held together into the shape of a belt.", kind: Armor(( - kind: Belt("Twig"), + kind: Belt("Twigs"), stats: ( protection: Normal(2.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/chest/twig.ron b/assets/common/items/armor/twigs/chest.ron similarity index 90% rename from assets/common/items/armor/chest/twig.ron rename to assets/common/items/armor/twigs/chest.ron index 41eeb25fe9..a87010b7b3 100644 --- a/assets/common/items/armor/chest/twig.ron +++ b/assets/common/items/armor/twigs/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Twig Shirt", description: "Small sticks magically imbued to hold together to form a shirt.", kind: Armor(( - kind: Chest("Twig"), + kind: Chest("Twigs"), stats: ( protection: Normal(15.0), poise_resilience: Normal(10.0), diff --git a/assets/common/items/armor/foot/twig.ron b/assets/common/items/armor/twigs/foot.ron similarity index 90% rename from assets/common/items/armor/foot/twig.ron rename to assets/common/items/armor/twigs/foot.ron index 8d799d1ab3..7be3596542 100644 --- a/assets/common/items/armor/foot/twig.ron +++ b/assets/common/items/armor/twigs/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Twig Boots", description: "Small twigs intertwined and imbued with magic to provide simple protection.", kind: Armor(( - kind: Foot("Twig"), + kind: Foot("Twigs"), stats: ( protection: Normal(3.0), poise_resilience: Normal(2.0), diff --git a/assets/common/items/armor/hand/twig.ron b/assets/common/items/armor/twigs/hand.ron similarity index 90% rename from assets/common/items/armor/hand/twig.ron rename to assets/common/items/armor/twigs/hand.ron index 6484eb5758..cb7d01f5b8 100644 --- a/assets/common/items/armor/hand/twig.ron +++ b/assets/common/items/armor/twigs/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Twig Wraps", description: "Magically imbued twigs interlocked into simple hand wraps.", kind: Armor(( - kind: Hand("Twig"), + kind: Hand("Twigs"), stats: ( protection: Normal(6.0), poise_resilience: Normal(6.0), diff --git a/assets/common/items/armor/pants/twig.ron b/assets/common/items/armor/twigs/pants.ron similarity index 90% rename from assets/common/items/armor/pants/twig.ron rename to assets/common/items/armor/twigs/pants.ron index b87af412ae..48e4adb233 100644 --- a/assets/common/items/armor/pants/twig.ron +++ b/assets/common/items/armor/twigs/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Twig Pants", description: "Magically imbued twigs formed into links similar to chainmail.", kind: Armor(( - kind: Pants("Twig"), + kind: Pants("Twigs"), stats: ( protection: Normal(12.0), poise_resilience: Normal(9.0), diff --git a/assets/common/items/armor/shoulder/twigs.ron b/assets/common/items/armor/twigs/shoulder.ron similarity index 86% rename from assets/common/items/armor/shoulder/twigs.ron rename to assets/common/items/armor/twigs/shoulder.ron index ae1413c410..4170468403 100644 --- a/assets/common/items/armor/shoulder/twigs.ron +++ b/assets/common/items/armor/twigs/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Twiggy Shoulders", description: "Spaulders made from tightly tied twigs.", kind: Armor(( - kind: Shoulder("TwiggyShoulder"), + kind: Shoulder("Twigs"), stats: ( protection: Normal(9.0), poise_resilience: Normal(14.0), diff --git a/assets/common/items/armor/belt/twigsflowers.ron b/assets/common/items/armor/twigsflowers/belt.ron similarity index 89% rename from assets/common/items/armor/belt/twigsflowers.ron rename to assets/common/items/armor/twigsflowers/belt.ron index 23374046b8..fd32d9d2d0 100644 --- a/assets/common/items/armor/belt/twigsflowers.ron +++ b/assets/common/items/armor/twigsflowers/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Flowery Belt", description: "Magically imbued twigs, held together with a flower intertwining its stem to hold the belt together.", kind: Armor(( - kind: Belt("Twigsflowers"), + kind: Belt("TwigsFlowers"), stats: ( protection: Normal(2.0), poise_resilience: Normal(1.0), diff --git a/assets/common/items/armor/chest/twigsflowers.ron b/assets/common/items/armor/twigsflowers/chest.ron similarity index 90% rename from assets/common/items/armor/chest/twigsflowers.ron rename to assets/common/items/armor/twigsflowers/chest.ron index 7b72cdeb9b..2cb32230da 100644 --- a/assets/common/items/armor/chest/twigsflowers.ron +++ b/assets/common/items/armor/twigsflowers/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Flowery Shirt", description: "Magically imbued twigs decorated with flowers and their stems, letting others know your intentions of peace and love.", kind: Armor(( - kind: Chest("Twigsflowers"), + kind: Chest("TwigsFlowers"), stats: ( protection: Normal(15.0), poise_resilience: Normal(8.0), diff --git a/assets/common/items/armor/foot/twigsflowers.ron b/assets/common/items/armor/twigsflowers/foot.ron similarity index 90% rename from assets/common/items/armor/foot/twigsflowers.ron rename to assets/common/items/armor/twigsflowers/foot.ron index 22b188712a..268e6d594c 100644 --- a/assets/common/items/armor/foot/twigsflowers.ron +++ b/assets/common/items/armor/twigsflowers/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Flowery Boots", description: "Woven and magically imbued, these boots of twigs and flowers provide simple protection and peace to the wearer.", kind: Armor(( - kind: Foot("Twigsflowers"), + kind: Foot("TwigsFlowers"), stats: ( protection: Normal(3.0), poise_resilience: Normal(2.0), diff --git a/assets/common/items/armor/hand/twigsflowers.ron b/assets/common/items/armor/twigsflowers/hand.ron similarity index 90% rename from assets/common/items/armor/hand/twigsflowers.ron rename to assets/common/items/armor/twigsflowers/hand.ron index 6fef157d8c..7abaa4029a 100644 --- a/assets/common/items/armor/hand/twigsflowers.ron +++ b/assets/common/items/armor/twigsflowers/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Flowery Wraps", description: "Wrapped and intertwined twigs held together with magic and flowers with their stems, providing peace and protection for the wearer.", kind: Armor(( - kind: Hand("Twigsflowers"), + kind: Hand("TwigsFlowers"), stats: ( protection: Normal(6.0), poise_resilience: Normal(4.0), diff --git a/assets/common/items/armor/pants/twigsflowers.ron b/assets/common/items/armor/twigsflowers/pants.ron similarity index 89% rename from assets/common/items/armor/pants/twigsflowers.ron rename to assets/common/items/armor/twigsflowers/pants.ron index bc8a9bd377..8c8897c30e 100644 --- a/assets/common/items/armor/pants/twigsflowers.ron +++ b/assets/common/items/armor/twigsflowers/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Flowery Pants", description: "Chainmail woven twigs enhanced with flower stems to provide protection and peace.", kind: Armor(( - kind: Pants("Twigsflowers"), + kind: Pants("TwigsFlowers"), stats: ( protection: Normal(12.0), poise_resilience: Normal(4.0), diff --git a/assets/common/items/armor/shoulder/twigsflowers.ron b/assets/common/items/armor/twigsflowers/shoulder.ron similarity index 87% rename from assets/common/items/armor/shoulder/twigsflowers.ron rename to assets/common/items/armor/twigsflowers/shoulder.ron index e6ab824376..848850f6b7 100644 --- a/assets/common/items/armor/shoulder/twigsflowers.ron +++ b/assets/common/items/armor/twigsflowers/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Flowery Shoulders", description: "Flowers join the tied twigs to provide protection and peace to the wearer.", kind: Armor(( - kind: Shoulder("FlowerShoulder"), + kind: Shoulder("TwigsFlowers"), stats: ( protection: Normal(9.0), poise_resilience: Normal(3.0), diff --git a/assets/common/items/armor/belt/twigsleaves.ron b/assets/common/items/armor/twigsleaves/belt.ron similarity index 89% rename from assets/common/items/armor/belt/twigsleaves.ron rename to assets/common/items/armor/twigsleaves/belt.ron index 50f597b147..fefd67422b 100644 --- a/assets/common/items/armor/belt/twigsleaves.ron +++ b/assets/common/items/armor/twigsleaves/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leafy Belt", description: "Dried leaves cover over the standard twig belt, providing a slightly different texture.", kind: Armor(( - kind: Belt("Twigsleaves"), + kind: Belt("TwigsLeaves"), stats: ( protection: Normal(2.0), poise_resilience: Normal(3.0), diff --git a/assets/common/items/armor/chest/twigsleaves.ron b/assets/common/items/armor/twigsleaves/chest.ron similarity index 89% rename from assets/common/items/armor/chest/twigsleaves.ron rename to assets/common/items/armor/twigsleaves/chest.ron index 6983782860..03b005b64f 100644 --- a/assets/common/items/armor/chest/twigsleaves.ron +++ b/assets/common/items/armor/twigsleaves/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leafy Shirt", description: "Leaves cover the magically imbued twig shirt, providing a more natural appearance.", kind: Armor(( - kind: Chest("Twigsleaves"), + kind: Chest("TwigsLeaves"), stats: ( protection: Normal(15.0), poise_resilience: Normal(10.0), diff --git a/assets/common/items/armor/foot/twigsleaves.ron b/assets/common/items/armor/twigsleaves/foot.ron similarity index 89% rename from assets/common/items/armor/foot/twigsleaves.ron rename to assets/common/items/armor/twigsleaves/foot.ron index 93a4857127..ae77fa5366 100644 --- a/assets/common/items/armor/foot/twigsleaves.ron +++ b/assets/common/items/armor/twigsleaves/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leafy Boots", description: "Leaves cover the magically entwined twigs to provide simple protection from the elements.", kind: Armor(( - kind: Foot("Twigsleaves"), + kind: Foot("TwigsLeaves"), stats: ( protection: Normal(3.0), poise_resilience: Normal(2.0), diff --git a/assets/common/items/armor/hand/twigsleaves.ron b/assets/common/items/armor/twigsleaves/hand.ron similarity index 89% rename from assets/common/items/armor/hand/twigsleaves.ron rename to assets/common/items/armor/twigsleaves/hand.ron index 4b1c9728e6..acea0a22fe 100644 --- a/assets/common/items/armor/hand/twigsleaves.ron +++ b/assets/common/items/armor/twigsleaves/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leafy Wraps", description: "Leaves help hide the magic-interlocking twigs, and provide mild protection from the elements.", kind: Armor(( - kind: Hand("Twigsleaves"), + kind: Hand("TwigsLeaves"), stats: ( protection: Normal(6.0), poise_resilience: Normal(7.0), diff --git a/assets/common/items/armor/pants/twigsleaves.ron b/assets/common/items/armor/twigsleaves/pants.ron similarity index 89% rename from assets/common/items/armor/pants/twigsleaves.ron rename to assets/common/items/armor/twigsleaves/pants.ron index b76e1ef31d..63825a46e2 100644 --- a/assets/common/items/armor/pants/twigsleaves.ron +++ b/assets/common/items/armor/twigsleaves/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leafy Pants", description: "Leaves cover the magically imbued chainmail twigs, providing protection from the elements.", kind: Armor(( - kind: Pants("Twigsleaves"), + kind: Pants("TwigsLeaves"), stats: ( protection: Normal(12.0), poise_resilience: Normal(8.0), diff --git a/assets/common/items/armor/shoulder/twigsleaves.ron b/assets/common/items/armor/twigsleaves/shoulder.ron similarity index 87% rename from assets/common/items/armor/shoulder/twigsleaves.ron rename to assets/common/items/armor/twigsleaves/shoulder.ron index a5c880ecd5..815a58203a 100644 --- a/assets/common/items/armor/shoulder/twigsleaves.ron +++ b/assets/common/items/armor/twigsleaves/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Leafy Shoulders", description: "Leaves cover over the twigs to provide better protection from the elements.", kind: Armor(( - kind: Shoulder("LeafyShoulder"), + kind: Shoulder("TwigsLeaves"), stats: ( protection: Normal(9.0), poise_resilience: Normal(2.0), diff --git a/assets/common/items/armor/back/velorite_mage_0.ron b/assets/common/items/armor/velorite_mage/back.ron similarity index 87% rename from assets/common/items/armor/back/velorite_mage_0.ron rename to assets/common/items/armor/velorite_mage/back.ron index 22b553472d..bcdea7d8fb 100644 --- a/assets/common/items/armor/back/velorite_mage_0.ron +++ b/assets/common/items/armor/velorite_mage/back.ron @@ -2,7 +2,7 @@ ItemDef( name: "Velorite Battlemage Cloak", description: "Keeps your shoulders warm.", kind: Armor(( - kind: Back("VeloriteMage0"), + kind: Back("VeloriteMage"), stats: ( protection: Normal(2.8), poise_resilience: Normal(2.0), diff --git a/assets/common/items/armor/belt/velorite_mage_0.ron b/assets/common/items/armor/velorite_mage/belt.ron similarity index 86% rename from assets/common/items/armor/belt/velorite_mage_0.ron rename to assets/common/items/armor/velorite_mage/belt.ron index 671238d880..9617a3f25e 100644 --- a/assets/common/items/armor/belt/velorite_mage_0.ron +++ b/assets/common/items/armor/velorite_mage/belt.ron @@ -2,7 +2,7 @@ ItemDef( name: "Velorite Battlemage Belt", description: "", kind: Armor(( - kind: Belt("VeloriteMage0"), + kind: Belt("VeloriteMage"), stats: ( protection: Normal(5.8), poise_resilience: Normal(5.0), diff --git a/assets/common/items/armor/chest/velorite_mage_0.ron b/assets/common/items/armor/velorite_mage/chest.ron similarity index 85% rename from assets/common/items/armor/chest/velorite_mage_0.ron rename to assets/common/items/armor/velorite_mage/chest.ron index 6498069dd3..d1b97f6b1e 100644 --- a/assets/common/items/armor/chest/velorite_mage_0.ron +++ b/assets/common/items/armor/velorite_mage/chest.ron @@ -2,7 +2,7 @@ ItemDef( name: "Velorite Battlemage Vest", description: "", kind: Armor(( - kind: Chest("VeloriteMage0"), + kind: Chest("VeloriteMage"), stats: ( protection: Normal(28.0), poise_resilience: Normal(20.0), diff --git a/assets/common/items/armor/foot/velorite_mage_0.ron b/assets/common/items/armor/velorite_mage/foot.ron similarity index 86% rename from assets/common/items/armor/foot/velorite_mage_0.ron rename to assets/common/items/armor/velorite_mage/foot.ron index 12dc4d8935..388fa8fb16 100644 --- a/assets/common/items/armor/foot/velorite_mage_0.ron +++ b/assets/common/items/armor/velorite_mage/foot.ron @@ -2,7 +2,7 @@ ItemDef( name: "Velorite Battlemage Boots", description: "", kind: Armor(( - kind: Foot("VeloriteMage0"), + kind: Foot("VeloriteMage"), stats: ( protection: Normal(5.9), poise_resilience: Normal(5.0), diff --git a/assets/common/items/armor/hand/velorite_mage_0.ron b/assets/common/items/armor/velorite_mage/hand.ron similarity index 86% rename from assets/common/items/armor/hand/velorite_mage_0.ron rename to assets/common/items/armor/velorite_mage/hand.ron index 81eb510f9e..4ce489f50b 100644 --- a/assets/common/items/armor/hand/velorite_mage_0.ron +++ b/assets/common/items/armor/velorite_mage/hand.ron @@ -2,7 +2,7 @@ ItemDef( name: "Velorite Battlemage Gauntlets", description: "", kind: Armor(( - kind: Hand("VeloriteMage0"), + kind: Hand("VeloriteMage"), stats: ( protection: Normal(11.5), poise_resilience: Normal(13.0), diff --git a/assets/common/items/armor/pants/velorite_mage_0.ron b/assets/common/items/armor/velorite_mage/pants.ron similarity index 85% rename from assets/common/items/armor/pants/velorite_mage_0.ron rename to assets/common/items/armor/velorite_mage/pants.ron index 661dbd0539..8661cf605f 100644 --- a/assets/common/items/armor/pants/velorite_mage_0.ron +++ b/assets/common/items/armor/velorite_mage/pants.ron @@ -2,7 +2,7 @@ ItemDef( name: "Velorite Battlemage Kilt", description: "", kind: Armor(( - kind: Pants("VeloriteMage0"), + kind: Pants("VeloriteMage"), stats: ( protection: Normal(23.0), poise_resilience: Normal(23.0), diff --git a/assets/common/items/armor/shoulder/velorite_mage_0.ron b/assets/common/items/armor/velorite_mage/shoulder.ron similarity index 85% rename from assets/common/items/armor/shoulder/velorite_mage_0.ron rename to assets/common/items/armor/velorite_mage/shoulder.ron index 5e06b5a57a..deb330f2b9 100644 --- a/assets/common/items/armor/shoulder/velorite_mage_0.ron +++ b/assets/common/items/armor/velorite_mage/shoulder.ron @@ -2,7 +2,7 @@ ItemDef( name: "Velorite Battlemage Guards", description: "", kind: Armor(( - kind: Shoulder("VeloriteMage0"), + kind: Shoulder("VeloriteMage"), stats: ( protection: Normal(17.0), poise_resilience: Normal(17.0), diff --git a/assets/common/items/armor/back/warlock.ron b/assets/common/items/armor/warlock/back.ron similarity index 100% rename from assets/common/items/armor/back/warlock.ron rename to assets/common/items/armor/warlock/back.ron diff --git a/assets/common/items/armor/belt/warlock.ron b/assets/common/items/armor/warlock/belt.ron similarity index 100% rename from assets/common/items/armor/belt/warlock.ron rename to assets/common/items/armor/warlock/belt.ron diff --git a/assets/common/items/armor/chest/warlock.ron b/assets/common/items/armor/warlock/chest.ron similarity index 100% rename from assets/common/items/armor/chest/warlock.ron rename to assets/common/items/armor/warlock/chest.ron diff --git a/assets/common/items/armor/foot/warlock.ron b/assets/common/items/armor/warlock/foot.ron similarity index 100% rename from assets/common/items/armor/foot/warlock.ron rename to assets/common/items/armor/warlock/foot.ron diff --git a/assets/common/items/armor/hand/warlock.ron b/assets/common/items/armor/warlock/hand.ron similarity index 100% rename from assets/common/items/armor/hand/warlock.ron rename to assets/common/items/armor/warlock/hand.ron diff --git a/assets/common/items/armor/head/warlock.ron b/assets/common/items/armor/warlock/head.ron similarity index 100% rename from assets/common/items/armor/head/warlock.ron rename to assets/common/items/armor/warlock/head.ron diff --git a/assets/common/items/armor/pants/warlock.ron b/assets/common/items/armor/warlock/pants.ron similarity index 100% rename from assets/common/items/armor/pants/warlock.ron rename to assets/common/items/armor/warlock/pants.ron diff --git a/assets/common/items/armor/shoulder/warlock.ron b/assets/common/items/armor/warlock/shoulder.ron similarity index 100% rename from assets/common/items/armor/shoulder/warlock.ron rename to assets/common/items/armor/warlock/shoulder.ron diff --git a/assets/common/items/armor/back/warlord.ron b/assets/common/items/armor/warlord/back.ron similarity index 100% rename from assets/common/items/armor/back/warlord.ron rename to assets/common/items/armor/warlord/back.ron diff --git a/assets/common/items/armor/belt/warlord.ron b/assets/common/items/armor/warlord/belt.ron similarity index 100% rename from assets/common/items/armor/belt/warlord.ron rename to assets/common/items/armor/warlord/belt.ron diff --git a/assets/common/items/armor/chest/warlord.ron b/assets/common/items/armor/warlord/chest.ron similarity index 100% rename from assets/common/items/armor/chest/warlord.ron rename to assets/common/items/armor/warlord/chest.ron diff --git a/assets/common/items/armor/foot/warlord.ron b/assets/common/items/armor/warlord/foot.ron similarity index 100% rename from assets/common/items/armor/foot/warlord.ron rename to assets/common/items/armor/warlord/foot.ron diff --git a/assets/common/items/armor/hand/warlord.ron b/assets/common/items/armor/warlord/hand.ron similarity index 100% rename from assets/common/items/armor/hand/warlord.ron rename to assets/common/items/armor/warlord/hand.ron diff --git a/assets/common/items/armor/head/warlord.ron b/assets/common/items/armor/warlord/head.ron similarity index 100% rename from assets/common/items/armor/head/warlord.ron rename to assets/common/items/armor/warlord/head.ron diff --git a/assets/common/items/armor/pants/warlord.ron b/assets/common/items/armor/warlord/pants.ron similarity index 100% rename from assets/common/items/armor/pants/warlord.ron rename to assets/common/items/armor/warlord/pants.ron diff --git a/assets/common/items/armor/shoulder/warlord.ron b/assets/common/items/armor/warlord/shoulder.ron similarity index 100% rename from assets/common/items/armor/shoulder/warlord.ron rename to assets/common/items/armor/warlord/shoulder.ron diff --git a/assets/common/items/crafting_ing/modular/damage/sword/metal_blade.ron b/assets/common/items/crafting_ing/modular/damage/sword/metal_blade.ron index 5f28c9e674..72354697ca 100644 --- a/assets/common/items/crafting_ing/modular/damage/sword/metal_blade.ron +++ b/assets/common/items/crafting_ing/modular/damage/sword/metal_blade.ron @@ -5,7 +5,7 @@ ItemDef( toolkind: Sword, modkind: Damage, stats: ( - equip_time_millis: 250, + equip_time_secs: 0.25, power: 1.0, poise_strength: 0.75, speed: 0.0, diff --git a/assets/common/items/debug/admin_black_hole.ron b/assets/common/items/debug/admin_black_hole.ron index a799fa831c..ec1ea70993 100644 --- a/assets/common/items/debug/admin_black_hole.ron +++ b/assets/common/items/debug/admin_black_hole.ron @@ -3,7 +3,7 @@ ItemDef( description: "It just works.", kind: Armor( ( - kind: Bag("BrownFace"), + kind: Bag("BlackHole"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0) diff --git a/assets/common/items/debug/admin_stick.ron b/assets/common/items/debug/admin_stick.ron index dc8f57c976..b2b941c85f 100644 --- a/assets/common/items/debug/admin_stick.ron +++ b/assets/common/items/debug/admin_stick.ron @@ -6,7 +6,7 @@ ItemDef( kind: Debug, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.00, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/debug/admin_sword.ron b/assets/common/items/debug/admin_sword.ron index 0d59c59107..dfe65e228f 100644 --- a/assets/common/items/debug/admin_sword.ron +++ b/assets/common/items/debug/admin_sword.ron @@ -6,7 +6,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1000.0, poise_strength: 1000.0, speed: 1.0 diff --git a/assets/common/items/debug/cultist_belt.ron b/assets/common/items/debug/cultist_belt.ron index 9a0529f3c9..fc29f57504 100644 --- a/assets/common/items/debug/cultist_belt.ron +++ b/assets/common/items/debug/cultist_belt.ron @@ -3,7 +3,7 @@ ItemDef( description: "", kind: Armor( ( - kind: Belt("VeloriteMage0"), + kind: Belt("VeloriteMage"), stats: ( protection: Invincible, poise_resilience: Invincible, diff --git a/assets/common/items/debug/cultist_boots.ron b/assets/common/items/debug/cultist_boots.ron index 425fb9e91b..31f9f0a4b4 100644 --- a/assets/common/items/debug/cultist_boots.ron +++ b/assets/common/items/debug/cultist_boots.ron @@ -3,7 +3,7 @@ ItemDef( description: "", kind: Armor( ( - kind: Foot("VeloriteMage0"), + kind: Foot("VeloriteMage"), stats: ( protection: Invincible, poise_resilience: Invincible, diff --git a/assets/common/items/debug/cultist_chest_blue.ron b/assets/common/items/debug/cultist_chest_blue.ron index 9029128195..9f8f44ecbf 100644 --- a/assets/common/items/debug/cultist_chest_blue.ron +++ b/assets/common/items/debug/cultist_chest_blue.ron @@ -3,7 +3,7 @@ ItemDef( description: "", kind: Armor( ( - kind: Chest("VeloriteMage0"), + kind: Chest("VeloriteMage"), stats: ( protection: Invincible, poise_resilience: Invincible, diff --git a/assets/common/items/debug/cultist_hands_blue.ron b/assets/common/items/debug/cultist_hands_blue.ron index 71a43df9c6..9cc5e51a3b 100644 --- a/assets/common/items/debug/cultist_hands_blue.ron +++ b/assets/common/items/debug/cultist_hands_blue.ron @@ -3,7 +3,7 @@ ItemDef( description: "", kind: Armor( ( - kind: Hand("VeloriteMage0"), + kind: Hand("VeloriteMage"), stats: ( protection: Invincible, poise_resilience: Invincible, diff --git a/assets/common/items/debug/cultist_legs_blue.ron b/assets/common/items/debug/cultist_legs_blue.ron index 8362061d70..aa52c7e443 100644 --- a/assets/common/items/debug/cultist_legs_blue.ron +++ b/assets/common/items/debug/cultist_legs_blue.ron @@ -3,7 +3,7 @@ ItemDef( description: "", kind: Armor( ( - kind: Pants("VeloriteMage0"), + kind: Pants("VeloriteMage"), stats: ( protection: Invincible, poise_resilience: Invincible, diff --git a/assets/common/items/debug/cultist_shoulder_blue.ron b/assets/common/items/debug/cultist_shoulder_blue.ron index e87f3acb33..e7198a8230 100644 --- a/assets/common/items/debug/cultist_shoulder_blue.ron +++ b/assets/common/items/debug/cultist_shoulder_blue.ron @@ -3,7 +3,7 @@ ItemDef( description: "", kind: Armor( ( - kind: Shoulder("VeloriteMage0"), + kind: Shoulder("VeloriteMage"), stats: ( protection: Invincible, poise_resilience: Invincible, diff --git a/assets/common/items/debug/dungeon_purple-0.ron b/assets/common/items/debug/dungeon_purple.ron similarity index 87% rename from assets/common/items/debug/dungeon_purple-0.ron rename to assets/common/items/debug/dungeon_purple.ron index ef80eb5100..e9f05131be 100644 --- a/assets/common/items/debug/dungeon_purple-0.ron +++ b/assets/common/items/debug/dungeon_purple.ron @@ -3,7 +3,7 @@ ItemDef( description: "Where did I put my banhammer again?", kind: Armor( ( - kind: Back("VeloriteMage0"), + kind: Back("VeloriteMage"), stats: ( protection: Invincible, poise_resilience: Invincible, diff --git a/assets/common/items/npc_armor/back/backpack_0.ron b/assets/common/items/npc_armor/back/backpack.ron similarity index 88% rename from assets/common/items/npc_armor/back/backpack_0.ron rename to assets/common/items/npc_armor/back/backpack.ron index 75d1e809cb..d08bdaddd6 100644 --- a/assets/common/items/npc_armor/back/backpack_0.ron +++ b/assets/common/items/npc_armor/back/backpack.ron @@ -3,7 +3,7 @@ ItemDef( description: "Keeps all your stuff together.", kind: Armor( ( - kind: Back("Backpack0"), + kind: Back("Backpack"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/npc_armor/back/backpack_blue_0.ron b/assets/common/items/npc_armor/back/backpack_blue.ron similarity index 87% rename from assets/common/items/npc_armor/back/backpack_blue_0.ron rename to assets/common/items/npc_armor/back/backpack_blue.ron index fc34ec36f7..070dcbb5b9 100644 --- a/assets/common/items/npc_armor/back/backpack_blue_0.ron +++ b/assets/common/items/npc_armor/back/backpack_blue.ron @@ -3,7 +3,7 @@ ItemDef( description: "Keeps all your stuff together.", kind: Armor( ( - kind: Back("BackpackBlue0"), + kind: Back("BackpackBlue"), stats: ( protection: Normal(0.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/npc_armor/back/dungeon_purple-0.ron b/assets/common/items/npc_armor/back/dungeon_purple.ron similarity index 87% rename from assets/common/items/npc_armor/back/dungeon_purple-0.ron rename to assets/common/items/npc_armor/back/dungeon_purple.ron index 0ff9efc262..c95589191f 100644 --- a/assets/common/items/npc_armor/back/dungeon_purple-0.ron +++ b/assets/common/items/npc_armor/back/dungeon_purple.ron @@ -3,7 +3,7 @@ ItemDef( description: "Smells like dark magic and candles.", kind: Armor( ( - kind: Back("DungPurp0"), + kind: Back("DungeonPurple"), stats: ( protection: Normal(1.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/npc_armor/back/leather_blue_0.ron b/assets/common/items/npc_armor/back/leather_blue.ron similarity index 87% rename from assets/common/items/npc_armor/back/leather_blue_0.ron rename to assets/common/items/npc_armor/back/leather_blue.ron index 282b419469..aa658b190a 100644 --- a/assets/common/items/npc_armor/back/leather_blue_0.ron +++ b/assets/common/items/npc_armor/back/leather_blue.ron @@ -3,7 +3,7 @@ ItemDef( description: "", kind: Armor( ( - kind: Back("LeatherBlue0"), + kind: Back("LeatherBlue"), stats: ( protection: Normal(1.0), poise_resilience: Normal(0.0), diff --git a/assets/common/items/npc_armor/chest/cultist_chest_purple.ron b/assets/common/items/npc_armor/chest/cultist_chest_purple.ron index 5fb93245d0..095159e682 100644 --- a/assets/common/items/npc_armor/chest/cultist_chest_purple.ron +++ b/assets/common/items/npc_armor/chest/cultist_chest_purple.ron @@ -3,7 +3,7 @@ ItemDef( description: "Ceremonial attire used by members.", kind: Armor( ( - kind: Chest("CultistPurple"), + kind: Chest("Cultist"), stats: ( protection: Normal(5.0), poise_resilience: Normal(5.0), diff --git a/assets/common/items/npc_armor/chest/leather_blue_0.ron b/assets/common/items/npc_armor/chest/leather_blue.ron similarity index 86% rename from assets/common/items/npc_armor/chest/leather_blue_0.ron rename to assets/common/items/npc_armor/chest/leather_blue.ron index a908907165..0d002e5998 100644 --- a/assets/common/items/npc_armor/chest/leather_blue_0.ron +++ b/assets/common/items/npc_armor/chest/leather_blue.ron @@ -3,7 +3,7 @@ ItemDef( description: "", kind: Armor( ( - kind: Chest("LeatherBlue0"), + kind: Chest("LeatherBlue"), stats: ( protection: Normal(5.0), poise_resilience: Normal(5.0), diff --git a/assets/common/items/npc_armor/chest/plate_red_0.ron b/assets/common/items/npc_armor/chest/plate.ron similarity index 88% rename from assets/common/items/npc_armor/chest/plate_red_0.ron rename to assets/common/items/npc_armor/chest/plate.ron index bc59433616..f09d6ae8de 100644 --- a/assets/common/items/npc_armor/chest/plate_red_0.ron +++ b/assets/common/items/npc_armor/chest/plate.ron @@ -3,7 +3,7 @@ ItemDef( description: "A chestplate forged from iron.", kind: Armor( ( - kind: Chest("PlateRed0"), + kind: Chest("Plate"), stats: ( protection: Normal(5.0), poise_resilience: Normal(5.0), diff --git a/assets/common/items/npc_armor/chest/plate_green_0.ron b/assets/common/items/npc_armor/chest/plate_red.ron similarity index 87% rename from assets/common/items/npc_armor/chest/plate_green_0.ron rename to assets/common/items/npc_armor/chest/plate_red.ron index d22f3f99c5..ee8a80a515 100644 --- a/assets/common/items/npc_armor/chest/plate_green_0.ron +++ b/assets/common/items/npc_armor/chest/plate_red.ron @@ -3,7 +3,7 @@ ItemDef( description: "A chestplate forged from iron.", kind: Armor( ( - kind: Chest("PlateGreen0"), + kind: Chest("PlateRed"), stats: ( protection: Normal(5.0), poise_resilience: Normal(5.0), diff --git a/assets/common/items/npc_armor/hand/cultist_hands_purple.ron b/assets/common/items/npc_armor/hand/cultist_hands_purple.ron index 3b067742c7..dfa37f71bf 100644 --- a/assets/common/items/npc_armor/hand/cultist_hands_purple.ron +++ b/assets/common/items/npc_armor/hand/cultist_hands_purple.ron @@ -3,7 +3,7 @@ ItemDef( description: "Ceremonial attire used by members.", kind: Armor( ( - kind: Hand("CultistPurple"), + kind: Hand("Cultist"), stats: ( protection: Normal(2.0), poise_resilience: Normal(2.0), diff --git a/assets/common/items/npc_armor/pants/cultist_legs_purple.ron b/assets/common/items/npc_armor/pants/cultist_legs_purple.ron index 5d366ff2c2..3fe3eea349 100644 --- a/assets/common/items/npc_armor/pants/cultist_legs_purple.ron +++ b/assets/common/items/npc_armor/pants/cultist_legs_purple.ron @@ -3,7 +3,7 @@ ItemDef( description: "Ceremonial attire used by members.", kind: Armor( ( - kind: Pants("CultistPurple"), + kind: Pants("Cultist"), stats: ( protection: Normal(10.0), poise_resilience: Normal(10.0), diff --git a/assets/common/items/npc_armor/pants/leather_blue_0.ron b/assets/common/items/npc_armor/pants/leather_blue.ron similarity index 86% rename from assets/common/items/npc_armor/pants/leather_blue_0.ron rename to assets/common/items/npc_armor/pants/leather_blue.ron index 44d7fa645e..18da3a7fe9 100644 --- a/assets/common/items/npc_armor/pants/leather_blue_0.ron +++ b/assets/common/items/npc_armor/pants/leather_blue.ron @@ -3,7 +3,7 @@ ItemDef( description: "", kind: Armor( ( - kind: Pants("LeatherBlue0"), + kind: Pants("LeatherBlue"), stats: ( protection: Normal(10.0), poise_resilience: Normal(10.0), diff --git a/assets/common/items/npc_armor/pants/plate_red_0.ron b/assets/common/items/npc_armor/pants/plate.ron similarity index 88% rename from assets/common/items/npc_armor/pants/plate_red_0.ron rename to assets/common/items/npc_armor/pants/plate.ron index b94c79701c..cdad145aba 100644 --- a/assets/common/items/npc_armor/pants/plate_red_0.ron +++ b/assets/common/items/npc_armor/pants/plate.ron @@ -3,7 +3,7 @@ ItemDef( description: "Greaves forged from iron.", kind: Armor( ( - kind: Pants("PlateRed0"), + kind: Pants("Plate"), stats: ( protection: Normal(10.0), poise_resilience: Normal(10.0), diff --git a/assets/common/items/npc_armor/pants/plate_green_0.ron b/assets/common/items/npc_armor/pants/plate_red.ron similarity index 87% rename from assets/common/items/npc_armor/pants/plate_green_0.ron rename to assets/common/items/npc_armor/pants/plate_red.ron index b5b693a66a..c43c6ae91d 100644 --- a/assets/common/items/npc_armor/pants/plate_green_0.ron +++ b/assets/common/items/npc_armor/pants/plate_red.ron @@ -3,7 +3,7 @@ ItemDef( description: "Greaves forged from iron.", kind: Armor( ( - kind: Pants("PlateGreen0"), + kind: Pants("PlateRed"), stats: ( protection: Normal(10.0), poise_resilience: Normal(10.0), diff --git a/assets/common/items/npc_armor/shoulder/cultist_shoulder_purple.ron b/assets/common/items/npc_armor/shoulder/cultist_shoulder_purple.ron index 5223c9aa3a..ccff4f1e5b 100644 --- a/assets/common/items/npc_armor/shoulder/cultist_shoulder_purple.ron +++ b/assets/common/items/npc_armor/shoulder/cultist_shoulder_purple.ron @@ -3,7 +3,7 @@ ItemDef( description: "Ceremonial attire used by members.", kind: Armor( ( - kind: Shoulder("CultistPurple"), + kind: Shoulder("Cultist"), stats: ( protection: Normal(5.0), poise_resilience: Normal(5.0), diff --git a/assets/common/items/npc_weapons/axe/minotaur_axe.ron b/assets/common/items/npc_weapons/axe/minotaur_axe.ron index 81fc250ae6..77cbccee25 100644 --- a/assets/common/items/npc_weapons/axe/minotaur_axe.ron +++ b/assets/common/items/npc_weapons/axe/minotaur_axe.ron @@ -6,7 +6,7 @@ ItemDef( kind: AxeSimple, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.8, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/biped_small/adlet/adlet_bow.ron b/assets/common/items/npc_weapons/biped_small/adlet/adlet_bow.ron index 4e0dc79778..e2f537f4b0 100644 --- a/assets/common/items/npc_weapons/biped_small/adlet/adlet_bow.ron +++ b/assets/common/items/npc_weapons/biped_small/adlet/adlet_bow.ron @@ -6,7 +6,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 0.7, poise_strength: 0.8, speed: 0.3 diff --git a/assets/common/items/npc_weapons/biped_small/adlet/gnoll_staff.ron b/assets/common/items/npc_weapons/biped_small/adlet/gnoll_staff.ron index 181c5d8382..be0e40f4b9 100644 --- a/assets/common/items/npc_weapons/biped_small/adlet/gnoll_staff.ron +++ b/assets/common/items/npc_weapons/biped_small/adlet/gnoll_staff.ron @@ -6,7 +6,7 @@ ItemDef( kind: StaffSimple, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 0.7, poise_strength: 0.8, speed: 0.5 diff --git a/assets/common/items/npc_weapons/biped_small/adlet/wooden_spear.ron b/assets/common/items/npc_weapons/biped_small/adlet/wooden_spear.ron index a78f795b25..c78851f595 100644 --- a/assets/common/items/npc_weapons/biped_small/adlet/wooden_spear.ron +++ b/assets/common/items/npc_weapons/biped_small/adlet/wooden_spear.ron @@ -6,7 +6,7 @@ ItemDef( kind: Spear, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 0.7, poise_strength: 0.8, speed: 1.0 diff --git a/assets/common/items/npc_weapons/biped_small/gnarling/adlet_bow.ron b/assets/common/items/npc_weapons/biped_small/gnarling/adlet_bow.ron index d7c6609b52..3df2fb30dd 100644 --- a/assets/common/items/npc_weapons/biped_small/gnarling/adlet_bow.ron +++ b/assets/common/items/npc_weapons/biped_small/gnarling/adlet_bow.ron @@ -6,7 +6,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 0.3, poise_strength: 0.8, speed: 0.7 diff --git a/assets/common/items/npc_weapons/biped_small/gnarling/gnoll_staff.ron b/assets/common/items/npc_weapons/biped_small/gnarling/gnoll_staff.ron index f3fdc1f4da..08a3b00d26 100644 --- a/assets/common/items/npc_weapons/biped_small/gnarling/gnoll_staff.ron +++ b/assets/common/items/npc_weapons/biped_small/gnarling/gnoll_staff.ron @@ -6,7 +6,7 @@ ItemDef( kind: StaffSimple, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 0.3, poise_strength: 0.8, speed: 0.8 diff --git a/assets/common/items/npc_weapons/biped_small/gnarling/wooden_spear.ron b/assets/common/items/npc_weapons/biped_small/gnarling/wooden_spear.ron index 82f65af672..158f71e428 100644 --- a/assets/common/items/npc_weapons/biped_small/gnarling/wooden_spear.ron +++ b/assets/common/items/npc_weapons/biped_small/gnarling/wooden_spear.ron @@ -6,7 +6,7 @@ ItemDef( kind: Spear, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 0.3, poise_strength: 0.8, speed: 1.0 diff --git a/assets/common/items/npc_weapons/biped_small/haniwa/adlet_bow.ron b/assets/common/items/npc_weapons/biped_small/haniwa/adlet_bow.ron index 02abadbeb0..67754213a2 100644 --- a/assets/common/items/npc_weapons/biped_small/haniwa/adlet_bow.ron +++ b/assets/common/items/npc_weapons/biped_small/haniwa/adlet_bow.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.6, poise_strength: 0.8, speed: 0.3 diff --git a/assets/common/items/npc_weapons/biped_small/haniwa/gnoll_staff.ron b/assets/common/items/npc_weapons/biped_small/haniwa/gnoll_staff.ron index 1dcbea0401..df4b020848 100644 --- a/assets/common/items/npc_weapons/biped_small/haniwa/gnoll_staff.ron +++ b/assets/common/items/npc_weapons/biped_small/haniwa/gnoll_staff.ron @@ -5,7 +5,7 @@ ItemDef( kind: StaffSimple, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.8, poise_strength: 0.8, speed: 0.6 diff --git a/assets/common/items/npc_weapons/biped_small/haniwa/wooden_spear.ron b/assets/common/items/npc_weapons/biped_small/haniwa/wooden_spear.ron index 6b8c622c64..73d2c47314 100644 --- a/assets/common/items/npc_weapons/biped_small/haniwa/wooden_spear.ron +++ b/assets/common/items/npc_weapons/biped_small/haniwa/wooden_spear.ron @@ -5,7 +5,7 @@ ItemDef( kind: Spear, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.4, poise_strength: 0.8, speed: 1.0 diff --git a/assets/common/items/npc_weapons/biped_small/myrmidon/adlet_bow.ron b/assets/common/items/npc_weapons/biped_small/myrmidon/adlet_bow.ron index a0d0238b80..fa41ece35a 100644 --- a/assets/common/items/npc_weapons/biped_small/myrmidon/adlet_bow.ron +++ b/assets/common/items/npc_weapons/biped_small/myrmidon/adlet_bow.ron @@ -6,7 +6,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.1, poise_strength: 0.8, speed: 0.5 diff --git a/assets/common/items/npc_weapons/biped_small/myrmidon/gnoll_staff.ron b/assets/common/items/npc_weapons/biped_small/myrmidon/gnoll_staff.ron index ce0a8d0dea..68beef20b4 100644 --- a/assets/common/items/npc_weapons/biped_small/myrmidon/gnoll_staff.ron +++ b/assets/common/items/npc_weapons/biped_small/myrmidon/gnoll_staff.ron @@ -6,7 +6,7 @@ ItemDef( kind: StaffSimple, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.7, poise_strength: 0.8, speed: 0.7 diff --git a/assets/common/items/npc_weapons/biped_small/myrmidon/wooden_spear.ron b/assets/common/items/npc_weapons/biped_small/myrmidon/wooden_spear.ron index 2894c9f361..06463a5231 100644 --- a/assets/common/items/npc_weapons/biped_small/myrmidon/wooden_spear.ron +++ b/assets/common/items/npc_weapons/biped_small/myrmidon/wooden_spear.ron @@ -6,7 +6,7 @@ ItemDef( kind: Spear, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.7, poise_strength: 0.8, speed: 1.0 diff --git a/assets/common/items/npc_weapons/biped_small/sahagin/adlet_bow.ron b/assets/common/items/npc_weapons/biped_small/sahagin/adlet_bow.ron index ce348f0f10..38ba184f05 100644 --- a/assets/common/items/npc_weapons/biped_small/sahagin/adlet_bow.ron +++ b/assets/common/items/npc_weapons/biped_small/sahagin/adlet_bow.ron @@ -6,7 +6,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.1, poise_strength: 0.8, speed: 0.3 diff --git a/assets/common/items/npc_weapons/biped_small/sahagin/gnoll_staff.ron b/assets/common/items/npc_weapons/biped_small/sahagin/gnoll_staff.ron index 435ac291ff..766a9ee68f 100644 --- a/assets/common/items/npc_weapons/biped_small/sahagin/gnoll_staff.ron +++ b/assets/common/items/npc_weapons/biped_small/sahagin/gnoll_staff.ron @@ -6,7 +6,7 @@ ItemDef( kind: StaffSimple, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.1, poise_strength: 0.8, speed: 0.8 diff --git a/assets/common/items/npc_weapons/biped_small/sahagin/wooden_spear.ron b/assets/common/items/npc_weapons/biped_small/sahagin/wooden_spear.ron index b346ba2068..af201c4dba 100644 --- a/assets/common/items/npc_weapons/biped_small/sahagin/wooden_spear.ron +++ b/assets/common/items/npc_weapons/biped_small/sahagin/wooden_spear.ron @@ -6,7 +6,7 @@ ItemDef( kind: Spear, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.1, poise_strength: 0.8, speed: 1.0 diff --git a/assets/common/items/npc_weapons/bow/saurok_bow.ron b/assets/common/items/npc_weapons/bow/saurok_bow.ron index 37e3f8bea8..77c81426bd 100644 --- a/assets/common/items/npc_weapons/bow/saurok_bow.ron +++ b/assets/common/items/npc_weapons/bow/saurok_bow.ron @@ -6,7 +6,7 @@ ItemDef( kind: BowSimple, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/hammer/cyclops_hammer.ron b/assets/common/items/npc_weapons/hammer/cyclops_hammer.ron index 7c10458ed1..8ef9112c84 100644 --- a/assets/common/items/npc_weapons/hammer/cyclops_hammer.ron +++ b/assets/common/items/npc_weapons/hammer/cyclops_hammer.ron @@ -6,7 +6,7 @@ ItemDef( kind: HammerSimple, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/hammer/harvester_scythe.ron b/assets/common/items/npc_weapons/hammer/harvester_scythe.ron index cd37197f19..8c90236706 100644 --- a/assets/common/items/npc_weapons/hammer/harvester_scythe.ron +++ b/assets/common/items/npc_weapons/hammer/harvester_scythe.ron @@ -6,7 +6,7 @@ ItemDef( kind: HammerSimple, hands: Two, stats: Direct(( - equip_time_millis: 1, + equip_time_secs: 0.001, power: 1.6, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/hammer/ogre_hammer.ron b/assets/common/items/npc_weapons/hammer/ogre_hammer.ron index 0ab8068dff..e868ef4be5 100644 --- a/assets/common/items/npc_weapons/hammer/ogre_hammer.ron +++ b/assets/common/items/npc_weapons/hammer/ogre_hammer.ron @@ -6,7 +6,7 @@ ItemDef( kind: HammerSimple, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/hammer/troll_hammer.ron b/assets/common/items/npc_weapons/hammer/troll_hammer.ron index 1f04179292..96c885dac1 100644 --- a/assets/common/items/npc_weapons/hammer/troll_hammer.ron +++ b/assets/common/items/npc_weapons/hammer/troll_hammer.ron @@ -6,7 +6,7 @@ ItemDef( kind: HammerSimple, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/hammer/wendigo_hammer.ron b/assets/common/items/npc_weapons/hammer/wendigo_hammer.ron index 4078c0db3d..fce40ec088 100644 --- a/assets/common/items/npc_weapons/hammer/wendigo_hammer.ron +++ b/assets/common/items/npc_weapons/hammer/wendigo_hammer.ron @@ -6,7 +6,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/hammer/yeti_hammer.ron b/assets/common/items/npc_weapons/hammer/yeti_hammer.ron index bc8bdd9f16..4a877e41ba 100644 --- a/assets/common/items/npc_weapons/hammer/yeti_hammer.ron +++ b/assets/common/items/npc_weapons/hammer/yeti_hammer.ron @@ -6,7 +6,7 @@ ItemDef( kind: HammerSimple, hands: Two, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 2.0, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/staff/mindflayer_staff.ron b/assets/common/items/npc_weapons/staff/mindflayer_staff.ron index d371f99043..4ba9ac21f2 100644 --- a/assets/common/items/npc_weapons/staff/mindflayer_staff.ron +++ b/assets/common/items/npc_weapons/staff/mindflayer_staff.ron @@ -6,7 +6,7 @@ ItemDef( kind: StaffSimple, hands: Two, stats: Direct(( - equip_time_millis: 1, + equip_time_secs: 0.001, power: 3.0, poise_strength: 1.00, speed: 1.5, diff --git a/assets/common/items/npc_weapons/staff/ogre_staff.ron b/assets/common/items/npc_weapons/staff/ogre_staff.ron index c4cca908ff..4c67432d3a 100644 --- a/assets/common/items/npc_weapons/staff/ogre_staff.ron +++ b/assets/common/items/npc_weapons/staff/ogre_staff.ron @@ -6,7 +6,7 @@ ItemDef( kind: StaffSimple, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/staff/saurok_staff.ron b/assets/common/items/npc_weapons/staff/saurok_staff.ron index 8ee0b015e4..71550581e1 100644 --- a/assets/common/items/npc_weapons/staff/saurok_staff.ron +++ b/assets/common/items/npc_weapons/staff/saurok_staff.ron @@ -6,7 +6,7 @@ ItemDef( kind: StaffSimple, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/sword/dullahan_sword.ron b/assets/common/items/npc_weapons/sword/dullahan_sword.ron index d3b3ba1b8e..68b6215c32 100644 --- a/assets/common/items/npc_weapons/sword/dullahan_sword.ron +++ b/assets/common/items/npc_weapons/sword/dullahan_sword.ron @@ -6,7 +6,7 @@ ItemDef( kind: SwordSimple, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/sword/saurok_sword.ron b/assets/common/items/npc_weapons/sword/saurok_sword.ron index 722280e1c3..66357e54ff 100644 --- a/assets/common/items/npc_weapons/sword/saurok_sword.ron +++ b/assets/common/items/npc_weapons/sword/saurok_sword.ron @@ -6,7 +6,7 @@ ItemDef( kind: SwordSimple, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/unique/beast_claws.ron b/assets/common/items/npc_weapons/unique/beast_claws.ron index 3b2ca645d4..4caf610525 100644 --- a/assets/common/items/npc_weapons/unique/beast_claws.ron +++ b/assets/common/items/npc_weapons/unique/beast_claws.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(BeastClaws), hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0, diff --git a/assets/common/items/npc_weapons/unique/quadlowbasic.ron b/assets/common/items/npc_weapons/unique/quadlowbasic.ron index 0ab936cb0d..768e0918bf 100644 --- a/assets/common/items/npc_weapons/unique/quadlowbasic.ron +++ b/assets/common/items/npc_weapons/unique/quadlowbasic.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadLowBasic), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/quadlowbeam.ron b/assets/common/items/npc_weapons/unique/quadlowbeam.ron index 1fd8921aad..eadd6b0c51 100644 --- a/assets/common/items/npc_weapons/unique/quadlowbeam.ron +++ b/assets/common/items/npc_weapons/unique/quadlowbeam.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadLowBeam), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/quadlowbreathe.ron b/assets/common/items/npc_weapons/unique/quadlowbreathe.ron index bbaedc1882..e74df8d23e 100644 --- a/assets/common/items/npc_weapons/unique/quadlowbreathe.ron +++ b/assets/common/items/npc_weapons/unique/quadlowbreathe.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadLowBreathe), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/quadlowquick.ron b/assets/common/items/npc_weapons/unique/quadlowquick.ron index f9b6c922c9..7b53cfd239 100644 --- a/assets/common/items/npc_weapons/unique/quadlowquick.ron +++ b/assets/common/items/npc_weapons/unique/quadlowquick.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadLowQuick), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/quadlowranged.ron b/assets/common/items/npc_weapons/unique/quadlowranged.ron index b4a03cf800..5aeb436b71 100644 --- a/assets/common/items/npc_weapons/unique/quadlowranged.ron +++ b/assets/common/items/npc_weapons/unique/quadlowranged.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadLowRanged), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/quadlowtail.ron b/assets/common/items/npc_weapons/unique/quadlowtail.ron index 66c3b04260..d15f0bc5cd 100644 --- a/assets/common/items/npc_weapons/unique/quadlowtail.ron +++ b/assets/common/items/npc_weapons/unique/quadlowtail.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadLowTail), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/quadmedbasic.ron b/assets/common/items/npc_weapons/unique/quadmedbasic.ron index 685acf28c7..ab8e4a663c 100644 --- a/assets/common/items/npc_weapons/unique/quadmedbasic.ron +++ b/assets/common/items/npc_weapons/unique/quadmedbasic.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadMedBasic), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/quadmedcharge.ron b/assets/common/items/npc_weapons/unique/quadmedcharge.ron index d5a2cdc78b..924680916d 100644 --- a/assets/common/items/npc_weapons/unique/quadmedcharge.ron +++ b/assets/common/items/npc_weapons/unique/quadmedcharge.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadMedCharge), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/quadmedhoof.ron b/assets/common/items/npc_weapons/unique/quadmedhoof.ron index 0317efe916..acabf52056 100644 --- a/assets/common/items/npc_weapons/unique/quadmedhoof.ron +++ b/assets/common/items/npc_weapons/unique/quadmedhoof.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadMedHoof), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/quadmedjump.ron b/assets/common/items/npc_weapons/unique/quadmedjump.ron index e3d4fa0c8f..e03942f132 100644 --- a/assets/common/items/npc_weapons/unique/quadmedjump.ron +++ b/assets/common/items/npc_weapons/unique/quadmedjump.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadMedJump), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.0, diff --git a/assets/common/items/npc_weapons/unique/quadmedquick.ron b/assets/common/items/npc_weapons/unique/quadmedquick.ron index 22feaa6aa8..b900cebbbd 100644 --- a/assets/common/items/npc_weapons/unique/quadmedquick.ron +++ b/assets/common/items/npc_weapons/unique/quadmedquick.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadMedQuick), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.0, diff --git a/assets/common/items/npc_weapons/unique/quadsmallbasic.ron b/assets/common/items/npc_weapons/unique/quadsmallbasic.ron index 336ed47645..180578c447 100644 --- a/assets/common/items/npc_weapons/unique/quadsmallbasic.ron +++ b/assets/common/items/npc_weapons/unique/quadsmallbasic.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(QuadSmallBasic), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/stone_golems_fist.ron b/assets/common/items/npc_weapons/unique/stone_golems_fist.ron index 1f811801a9..bedb130b8b 100644 --- a/assets/common/items/npc_weapons/unique/stone_golems_fist.ron +++ b/assets/common/items/npc_weapons/unique/stone_golems_fist.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(StoneGolemFist), hands: Two, stats: Direct(( - equip_time_millis: 1, + equip_time_secs: 0.001, power: 1.00, poise_strength: 1.00, speed: 1.0 diff --git a/assets/common/items/npc_weapons/unique/theropodbasic.ron b/assets/common/items/npc_weapons/unique/theropodbasic.ron index fcfaea939c..7dc980852a 100644 --- a/assets/common/items/npc_weapons/unique/theropodbasic.ron +++ b/assets/common/items/npc_weapons/unique/theropodbasic.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(TheropodBasic), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/theropodbird.ron b/assets/common/items/npc_weapons/unique/theropodbird.ron index 205b916b54..f51fe4ac09 100644 --- a/assets/common/items/npc_weapons/unique/theropodbird.ron +++ b/assets/common/items/npc_weapons/unique/theropodbird.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(TheropodBird), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/tidal_claws.ron b/assets/common/items/npc_weapons/unique/tidal_claws.ron index 4d8bf64ec5..08343ecaa9 100644 --- a/assets/common/items/npc_weapons/unique/tidal_claws.ron +++ b/assets/common/items/npc_weapons/unique/tidal_claws.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(TidalClaws), hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0, diff --git a/assets/common/items/npc_weapons/unique/turret.ron b/assets/common/items/npc_weapons/unique/turret.ron index fcca6452c1..6e3ba66261 100644 --- a/assets/common/items/npc_weapons/unique/turret.ron +++ b/assets/common/items/npc_weapons/unique/turret.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(ObjectTurret), hands: Two, stats: Direct(( - equip_time_millis: 10, + equip_time_secs: 0.01, power: 1.00, poise_strength: 1.00, speed: 1.00, diff --git a/assets/common/items/npc_weapons/unique/wendigo_magic.ron b/assets/common/items/npc_weapons/unique/wendigo_magic.ron index 3892f757d0..e957eb5e5a 100644 --- a/assets/common/items/npc_weapons/unique/wendigo_magic.ron +++ b/assets/common/items/npc_weapons/unique/wendigo_magic.ron @@ -6,7 +6,7 @@ ItemDef( kind: Unique(WendigoMagic), hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.00, poise_strength: 1.00, speed: 1.0, diff --git a/assets/common/items/tag_examples/cloth_item.ron b/assets/common/items/tag_examples/cloth_item.ron index 04560f9956..5dfac4ce75 100644 --- a/assets/common/items/tag_examples/cloth_item.ron +++ b/assets/common/items/tag_examples/cloth_item.ron @@ -3,18 +3,18 @@ ItemDef( description: "Various colored fabric armors.", kind: TagExamples( item_ids: [ - "common.items.armor.foot.cloth_blue_0", - "common.items.armor.hand.cloth_blue_0", - "common.items.armor.pants.cloth_blue_0", - "common.items.armor.shoulder.cloth_blue_0", - "common.items.armor.foot.cloth_green_0", - "common.items.armor.hand.cloth_green_0", - "common.items.armor.pants.cloth_green_0", - "common.items.armor.shoulder.cloth_green_0", - "common.items.armor.foot.cloth_purple_0", - "common.items.armor.hand.cloth_purple_0", - "common.items.armor.pants.cloth_purple_0", - "common.items.armor.shoulder.cloth_purple_0", + "common.items.armor.cloth_blue.foot", + "common.items.armor.cloth_blue.hand", + "common.items.armor.cloth_blue.pants", + "common.items.armor.cloth_blue.shoulder", + "common.items.armor.cloth_green.foot", + "common.items.armor.cloth_green.hand", + "common.items.armor.cloth_green.pants", + "common.items.armor.cloth_green.shoulder", + "common.items.armor.cloth_purple.foot", + "common.items.armor.cloth_purple.hand", + "common.items.armor.cloth_purple.pants", + "common.items.armor.cloth_purple.shoulder", ], ), quality: Common, diff --git a/assets/common/items/weapons/axe/bloodsteel_axe-0.ron b/assets/common/items/weapons/axe/bloodsteel_axe-0.ron index ae77701cc3..d3b190e36b 100644 --- a/assets/common/items/weapons/axe/bloodsteel_axe-0.ron +++ b/assets/common/items/weapons/axe/bloodsteel_axe-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.6, poise_strength: 1.4, speed: 1.0, diff --git a/assets/common/items/weapons/axe/bloodsteel_axe-1.ron b/assets/common/items/weapons/axe/bloodsteel_axe-1.ron index 06163034c5..238cc66874 100644 --- a/assets/common/items/weapons/axe/bloodsteel_axe-1.ron +++ b/assets/common/items/weapons/axe/bloodsteel_axe-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.6, poise_strength: 1.8, speed: 1.0, diff --git a/assets/common/items/weapons/axe/bloodsteel_axe-2.ron b/assets/common/items/weapons/axe/bloodsteel_axe-2.ron index ca005ed334..ca5e855ab6 100644 --- a/assets/common/items/weapons/axe/bloodsteel_axe-2.ron +++ b/assets/common/items/weapons/axe/bloodsteel_axe-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.6, poise_strength: 1.8, speed: 1.0, diff --git a/assets/common/items/weapons/axe/bronze_axe-0.ron b/assets/common/items/weapons/axe/bronze_axe-0.ron index 5a013aa046..71967f169c 100644 --- a/assets/common/items/weapons/axe/bronze_axe-0.ron +++ b/assets/common/items/weapons/axe/bronze_axe-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 0.9, speed: 1.0, diff --git a/assets/common/items/weapons/axe/bronze_axe-1.ron b/assets/common/items/weapons/axe/bronze_axe-1.ron index 551d6ebcc0..de8bbd4ffd 100644 --- a/assets/common/items/weapons/axe/bronze_axe-1.ron +++ b/assets/common/items/weapons/axe/bronze_axe-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.5, speed: 1.0, diff --git a/assets/common/items/weapons/axe/bronze_axe-2.ron b/assets/common/items/weapons/axe/bronze_axe-2.ron index 673ab08b7f..29668fee4b 100644 --- a/assets/common/items/weapons/axe/bronze_axe-2.ron +++ b/assets/common/items/weapons/axe/bronze_axe-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.4, speed: 1.0, diff --git a/assets/common/items/weapons/axe/cobalt_axe-0.ron b/assets/common/items/weapons/axe/cobalt_axe-0.ron index c50fb8d418..078ad75ea9 100644 --- a/assets/common/items/weapons/axe/cobalt_axe-0.ron +++ b/assets/common/items/weapons/axe/cobalt_axe-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.8, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/axe/cobalt_axe-1.ron b/assets/common/items/weapons/axe/cobalt_axe-1.ron index 8607fcf969..400b24fbc5 100644 --- a/assets/common/items/weapons/axe/cobalt_axe-1.ron +++ b/assets/common/items/weapons/axe/cobalt_axe-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.8, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/axe/iron_axe-0.ron b/assets/common/items/weapons/axe/iron_axe-0.ron index d9911dc030..6f2b392951 100644 --- a/assets/common/items/weapons/axe/iron_axe-0.ron +++ b/assets/common/items/weapons/axe/iron_axe-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.7, speed: 1.0, diff --git a/assets/common/items/weapons/axe/iron_axe-1.ron b/assets/common/items/weapons/axe/iron_axe-1.ron index 4aca7f736e..30a2a3e3ff 100644 --- a/assets/common/items/weapons/axe/iron_axe-1.ron +++ b/assets/common/items/weapons/axe/iron_axe-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.4, speed: 1.0, diff --git a/assets/common/items/weapons/axe/iron_axe-2.ron b/assets/common/items/weapons/axe/iron_axe-2.ron index 383782454a..1bada4e0d2 100644 --- a/assets/common/items/weapons/axe/iron_axe-2.ron +++ b/assets/common/items/weapons/axe/iron_axe-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.1, speed: 1.0, diff --git a/assets/common/items/weapons/axe/iron_axe-3.ron b/assets/common/items/weapons/axe/iron_axe-3.ron index 1406ad3e9f..058a44168f 100644 --- a/assets/common/items/weapons/axe/iron_axe-3.ron +++ b/assets/common/items/weapons/axe/iron_axe-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.6, speed: 1.0, diff --git a/assets/common/items/weapons/axe/iron_axe-4.ron b/assets/common/items/weapons/axe/iron_axe-4.ron index c46fdae2fa..3047c53e7b 100644 --- a/assets/common/items/weapons/axe/iron_axe-4.ron +++ b/assets/common/items/weapons/axe/iron_axe-4.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.4, speed: 1.0, diff --git a/assets/common/items/weapons/axe/iron_axe-5.ron b/assets/common/items/weapons/axe/iron_axe-5.ron index 00379b0a61..c6ce58abc0 100644 --- a/assets/common/items/weapons/axe/iron_axe-5.ron +++ b/assets/common/items/weapons/axe/iron_axe-5.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.8, speed: 1.0, diff --git a/assets/common/items/weapons/axe/iron_axe-6.ron b/assets/common/items/weapons/axe/iron_axe-6.ron index 219ce1b923..1b5d841ba8 100644 --- a/assets/common/items/weapons/axe/iron_axe-6.ron +++ b/assets/common/items/weapons/axe/iron_axe-6.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.3, speed: 1.0, diff --git a/assets/common/items/weapons/axe/iron_axe-7.ron b/assets/common/items/weapons/axe/iron_axe-7.ron index 31b889c726..98647e199d 100644 --- a/assets/common/items/weapons/axe/iron_axe-7.ron +++ b/assets/common/items/weapons/axe/iron_axe-7.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.6, speed: 1.0, diff --git a/assets/common/items/weapons/axe/iron_axe-8.ron b/assets/common/items/weapons/axe/iron_axe-8.ron index cbaad7165b..a27df5896e 100644 --- a/assets/common/items/weapons/axe/iron_axe-8.ron +++ b/assets/common/items/weapons/axe/iron_axe-8.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 0.6, speed: 1.0, diff --git a/assets/common/items/weapons/axe/iron_axe-9.ron b/assets/common/items/weapons/axe/iron_axe-9.ron index c65a01804c..d3557a3ccc 100644 --- a/assets/common/items/weapons/axe/iron_axe-9.ron +++ b/assets/common/items/weapons/axe/iron_axe-9.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 0.3, speed: 1.0, diff --git a/assets/common/items/weapons/axe/malachite_axe-0.ron b/assets/common/items/weapons/axe/malachite_axe-0.ron index bc08b5d4c0..84d3d61484 100644 --- a/assets/common/items/weapons/axe/malachite_axe-0.ron +++ b/assets/common/items/weapons/axe/malachite_axe-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 2.0, poise_strength: 1.1, speed: 1.0, diff --git a/assets/common/items/weapons/axe/orc_axe-0.ron b/assets/common/items/weapons/axe/orc_axe-0.ron index ebef7c0bb9..bfeb68447f 100644 --- a/assets/common/items/weapons/axe/orc_axe-0.ron +++ b/assets/common/items/weapons/axe/orc_axe-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.6, poise_strength: 1.5, speed: 1.0, diff --git a/assets/common/items/weapons/axe/parashu.ron b/assets/common/items/weapons/axe/parashu.ron index 932c189188..1cf59e80ea 100644 --- a/assets/common/items/weapons/axe/parashu.ron +++ b/assets/common/items/weapons/axe/parashu.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 2.5, poise_strength: 1.8, speed: 0.8, diff --git a/assets/common/items/weapons/axe/starter_axe.ron b/assets/common/items/weapons/axe/starter_axe.ron index 7adeb6c8f3..e4a4673db3 100644 --- a/assets/common/items/weapons/axe/starter_axe.ron +++ b/assets/common/items/weapons/axe/starter_axe.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.5, poise_strength: 2.0, speed: 1.0, diff --git a/assets/common/items/weapons/axe/steel_axe-0.ron b/assets/common/items/weapons/axe/steel_axe-0.ron index baa203d0cb..87344996cf 100644 --- a/assets/common/items/weapons/axe/steel_axe-0.ron +++ b/assets/common/items/weapons/axe/steel_axe-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 1.2, speed: 1.0, diff --git a/assets/common/items/weapons/axe/steel_axe-1.ron b/assets/common/items/weapons/axe/steel_axe-1.ron index d5f009e54f..8f1cca27f9 100644 --- a/assets/common/items/weapons/axe/steel_axe-1.ron +++ b/assets/common/items/weapons/axe/steel_axe-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 1.2, speed: 1.0, diff --git a/assets/common/items/weapons/axe/steel_axe-2.ron b/assets/common/items/weapons/axe/steel_axe-2.ron index 3d4ab8a1ad..0348a9e350 100644 --- a/assets/common/items/weapons/axe/steel_axe-2.ron +++ b/assets/common/items/weapons/axe/steel_axe-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 1.2, speed: 1.0, diff --git a/assets/common/items/weapons/axe/steel_axe-3.ron b/assets/common/items/weapons/axe/steel_axe-3.ron index 6ff278dfbe..7e8a341104 100644 --- a/assets/common/items/weapons/axe/steel_axe-3.ron +++ b/assets/common/items/weapons/axe/steel_axe-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 1.1, speed: 1.0, diff --git a/assets/common/items/weapons/axe/steel_axe-4.ron b/assets/common/items/weapons/axe/steel_axe-4.ron index 090cb5e936..3e5136d64a 100644 --- a/assets/common/items/weapons/axe/steel_axe-4.ron +++ b/assets/common/items/weapons/axe/steel_axe-4.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 1.2, speed: 1.0, diff --git a/assets/common/items/weapons/axe/steel_axe-5.ron b/assets/common/items/weapons/axe/steel_axe-5.ron index 3e6fb5d55e..2d7566f456 100644 --- a/assets/common/items/weapons/axe/steel_axe-5.ron +++ b/assets/common/items/weapons/axe/steel_axe-5.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 1.5, speed: 1.0, diff --git a/assets/common/items/weapons/axe/steel_axe-6.ron b/assets/common/items/weapons/axe/steel_axe-6.ron index e07fe8da15..34c0fc31bc 100644 --- a/assets/common/items/weapons/axe/steel_axe-6.ron +++ b/assets/common/items/weapons/axe/steel_axe-6.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/axe/worn_iron_axe-0.ron b/assets/common/items/weapons/axe/worn_iron_axe-0.ron index 141a072b26..9e027c662f 100644 --- a/assets/common/items/weapons/axe/worn_iron_axe-0.ron +++ b/assets/common/items/weapons/axe/worn_iron_axe-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.8, poise_strength: 0.4, speed: 1.0, diff --git a/assets/common/items/weapons/axe/worn_iron_axe-1.ron b/assets/common/items/weapons/axe/worn_iron_axe-1.ron index 49a1011180..17d519780c 100644 --- a/assets/common/items/weapons/axe/worn_iron_axe-1.ron +++ b/assets/common/items/weapons/axe/worn_iron_axe-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.8, poise_strength: 0.4, speed: 1.0, diff --git a/assets/common/items/weapons/axe/worn_iron_axe-2.ron b/assets/common/items/weapons/axe/worn_iron_axe-2.ron index e29a215ce9..0e8e1144c3 100644 --- a/assets/common/items/weapons/axe/worn_iron_axe-2.ron +++ b/assets/common/items/weapons/axe/worn_iron_axe-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.8, poise_strength: 0.7, speed: 1.0, diff --git a/assets/common/items/weapons/axe/worn_iron_axe-3.ron b/assets/common/items/weapons/axe/worn_iron_axe-3.ron index 839a008de9..43fb5038f8 100644 --- a/assets/common/items/weapons/axe/worn_iron_axe-3.ron +++ b/assets/common/items/weapons/axe/worn_iron_axe-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.8, poise_strength: 1.1, speed: 1.0, diff --git a/assets/common/items/weapons/axe/worn_iron_axe-4.ron b/assets/common/items/weapons/axe/worn_iron_axe-4.ron index fbc053bc68..dfacdeb712 100644 --- a/assets/common/items/weapons/axe/worn_iron_axe-4.ron +++ b/assets/common/items/weapons/axe/worn_iron_axe-4.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.8, poise_strength: 0.5, speed: 1.0, diff --git a/assets/common/items/weapons/axe_1h/bloodsteel-0.ron b/assets/common/items/weapons/axe_1h/bloodsteel-0.ron index 9e59d2e0e8..70ff3a9b5d 100644 --- a/assets/common/items/weapons/axe_1h/bloodsteel-0.ron +++ b/assets/common/items/weapons/axe_1h/bloodsteel-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.5, poise_strength: 1.0, speed: 1.3, diff --git a/assets/common/items/weapons/axe_1h/bloodsteel-1.ron b/assets/common/items/weapons/axe_1h/bloodsteel-1.ron index 473c843d3f..b706746c75 100644 --- a/assets/common/items/weapons/axe_1h/bloodsteel-1.ron +++ b/assets/common/items/weapons/axe_1h/bloodsteel-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 2.0, poise_strength: 1.0, speed: 0.8, diff --git a/assets/common/items/weapons/axe_1h/bronze-0.ron b/assets/common/items/weapons/axe_1h/bronze-0.ron index 003273bd53..db727cd4c6 100644 --- a/assets/common/items/weapons/axe_1h/bronze-0.ron +++ b/assets/common/items/weapons/axe_1h/bronze-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/axe_1h/bronze-1.ron b/assets/common/items/weapons/axe_1h/bronze-1.ron index c8c3d0e763..b5c0ec0af9 100644 --- a/assets/common/items/weapons/axe_1h/bronze-1.ron +++ b/assets/common/items/weapons/axe_1h/bronze-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.1, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/axe_1h/cobalt-0.ron b/assets/common/items/weapons/axe_1h/cobalt-0.ron index 3b33d948c7..e98e19ad22 100644 --- a/assets/common/items/weapons/axe_1h/cobalt-0.ron +++ b/assets/common/items/weapons/axe_1h/cobalt-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.6, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/axe_1h/cobalt-1.ron b/assets/common/items/weapons/axe_1h/cobalt-1.ron index 25d6847031..2fe42ea912 100644 --- a/assets/common/items/weapons/axe_1h/cobalt-1.ron +++ b/assets/common/items/weapons/axe_1h/cobalt-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.75, poise_strength: 1.0, speed: 0.85, diff --git a/assets/common/items/weapons/axe_1h/iron-0.ron b/assets/common/items/weapons/axe_1h/iron-0.ron index 75e37781ee..88fe64b8c8 100644 --- a/assets/common/items/weapons/axe_1h/iron-0.ron +++ b/assets/common/items/weapons/axe_1h/iron-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.1, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/axe_1h/iron-1.ron b/assets/common/items/weapons/axe_1h/iron-1.ron index ae5a84dd21..3438dbd5c4 100644 --- a/assets/common/items/weapons/axe_1h/iron-1.ron +++ b/assets/common/items/weapons/axe_1h/iron-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.3, poise_strength: 1.0, speed: 0.9, diff --git a/assets/common/items/weapons/axe_1h/iron-2.ron b/assets/common/items/weapons/axe_1h/iron-2.ron index 5b442e5e5d..d062ed6746 100644 --- a/assets/common/items/weapons/axe_1h/iron-2.ron +++ b/assets/common/items/weapons/axe_1h/iron-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.0, speed: 1.2, diff --git a/assets/common/items/weapons/axe_1h/iron-3.ron b/assets/common/items/weapons/axe_1h/iron-3.ron index a5bb837ecc..e91bfe9830 100644 --- a/assets/common/items/weapons/axe_1h/iron-3.ron +++ b/assets/common/items/weapons/axe_1h/iron-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/axe_1h/orichalcum-0.ron b/assets/common/items/weapons/axe_1h/orichalcum-0.ron index cfd64ef1a2..ebfa2d84c2 100644 --- a/assets/common/items/weapons/axe_1h/orichalcum-0.ron +++ b/assets/common/items/weapons/axe_1h/orichalcum-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 2.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/axe_1h/steel-0.ron b/assets/common/items/weapons/axe_1h/steel-0.ron index 578aa0c691..1225ac4021 100644 --- a/assets/common/items/weapons/axe_1h/steel-0.ron +++ b/assets/common/items/weapons/axe_1h/steel-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.5, poise_strength: 1.0, speed: 0.9, diff --git a/assets/common/items/weapons/axe_1h/steel-1.ron b/assets/common/items/weapons/axe_1h/steel-1.ron index d5b9f4d1d5..9fe5d8834a 100644 --- a/assets/common/items/weapons/axe_1h/steel-1.ron +++ b/assets/common/items/weapons/axe_1h/steel-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/axe_1h/steel-2.ron b/assets/common/items/weapons/axe_1h/steel-2.ron index 4dc66c5165..c5d72f5c49 100644 --- a/assets/common/items/weapons/axe_1h/steel-2.ron +++ b/assets/common/items/weapons/axe_1h/steel-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.3, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/axe_1h/stone-0.ron b/assets/common/items/weapons/axe_1h/stone-0.ron index dc0b887530..e030d7bb0e 100644 --- a/assets/common/items/weapons/axe_1h/stone-0.ron +++ b/assets/common/items/weapons/axe_1h/stone-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.8, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/axe_1h/stone-1.ron b/assets/common/items/weapons/axe_1h/stone-1.ron index 46675a54ab..ea6ac1b1e9 100644 --- a/assets/common/items/weapons/axe_1h/stone-1.ron +++ b/assets/common/items/weapons/axe_1h/stone-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.7, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/axe_1h/wood-0.ron b/assets/common/items/weapons/axe_1h/wood-0.ron index b979a83cc2..7028a83aea 100644 --- a/assets/common/items/weapons/axe_1h/wood-0.ron +++ b/assets/common/items/weapons/axe_1h/wood-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.8, poise_strength: 1.0, speed: 0.8, diff --git a/assets/common/items/weapons/axe_1h/wood-1.ron b/assets/common/items/weapons/axe_1h/wood-1.ron index 91983a4eb1..2f42c72aee 100644 --- a/assets/common/items/weapons/axe_1h/wood-1.ron +++ b/assets/common/items/weapons/axe_1h/wood-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.5, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/bow/bone-0.ron b/assets/common/items/weapons/bow/bone-0.ron index 4e8f9ba91e..df7cb62bf0 100644 --- a/assets/common/items/weapons/bow/bone-0.ron +++ b/assets/common/items/weapons/bow/bone-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.9, poise_strength: 0.8, speed: 1.1, diff --git a/assets/common/items/weapons/bow/bone-1.ron b/assets/common/items/weapons/bow/bone-1.ron index 74d1066e7a..62a89315fb 100644 --- a/assets/common/items/weapons/bow/bone-1.ron +++ b/assets/common/items/weapons/bow/bone-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 0.8, speed: 0.8, diff --git a/assets/common/items/weapons/bow/bone-2.ron b/assets/common/items/weapons/bow/bone-2.ron index e648d6477a..6d93079bb1 100644 --- a/assets/common/items/weapons/bow/bone-2.ron +++ b/assets/common/items/weapons/bow/bone-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 0.8, speed: 1.0, diff --git a/assets/common/items/weapons/bow/bone-3.ron b/assets/common/items/weapons/bow/bone-3.ron index 27ac25aa26..aa2d2a5144 100644 --- a/assets/common/items/weapons/bow/bone-3.ron +++ b/assets/common/items/weapons/bow/bone-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.1, poise_strength: 0.8, speed: 0.9, diff --git a/assets/common/items/weapons/bow/eldwood-0.ron b/assets/common/items/weapons/bow/eldwood-0.ron index 9aaf8790f7..a13aade1e3 100644 --- a/assets/common/items/weapons/bow/eldwood-0.ron +++ b/assets/common/items/weapons/bow/eldwood-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.8, poise_strength: 0.8, speed: 1.0, diff --git a/assets/common/items/weapons/bow/eldwood-1.ron b/assets/common/items/weapons/bow/eldwood-1.ron index 863d37da3d..4a8e7953f2 100644 --- a/assets/common/items/weapons/bow/eldwood-1.ron +++ b/assets/common/items/weapons/bow/eldwood-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.6, poise_strength: 0.8, speed: 1.2, diff --git a/assets/common/items/weapons/bow/eldwood-2.ron b/assets/common/items/weapons/bow/eldwood-2.ron index faffd799b2..de2ff7677e 100644 --- a/assets/common/items/weapons/bow/eldwood-2.ron +++ b/assets/common/items/weapons/bow/eldwood-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 2.0, poise_strength: 0.8, speed: 0.8, diff --git a/assets/common/items/weapons/bow/frostwood-0.ron b/assets/common/items/weapons/bow/frostwood-0.ron index fc2eeda6af..a1d997137f 100644 --- a/assets/common/items/weapons/bow/frostwood-0.ron +++ b/assets/common/items/weapons/bow/frostwood-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 0.8, speed: 1.2, diff --git a/assets/common/items/weapons/bow/frostwood-1.ron b/assets/common/items/weapons/bow/frostwood-1.ron index 46f8045f1c..0cc1eb609b 100644 --- a/assets/common/items/weapons/bow/frostwood-1.ron +++ b/assets/common/items/weapons/bow/frostwood-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.6, poise_strength: 0.8, speed: 1.0, diff --git a/assets/common/items/weapons/bow/frostwood-2.ron b/assets/common/items/weapons/bow/frostwood-2.ron index e45c34fcd3..4dd74f9966 100644 --- a/assets/common/items/weapons/bow/frostwood-2.ron +++ b/assets/common/items/weapons/bow/frostwood-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.7, poise_strength: 0.8, speed: 0.9, diff --git a/assets/common/items/weapons/bow/hardwood-0.ron b/assets/common/items/weapons/bow/hardwood-0.ron index 7614564428..14a40af6ef 100644 --- a/assets/common/items/weapons/bow/hardwood-0.ron +++ b/assets/common/items/weapons/bow/hardwood-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 0.8, speed: 1.0, diff --git a/assets/common/items/weapons/bow/hardwood-1.ron b/assets/common/items/weapons/bow/hardwood-1.ron index 6cb1c52721..ebe5d42ce8 100644 --- a/assets/common/items/weapons/bow/hardwood-1.ron +++ b/assets/common/items/weapons/bow/hardwood-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 0.8, speed: 0.8, diff --git a/assets/common/items/weapons/bow/hardwood-2.ron b/assets/common/items/weapons/bow/hardwood-2.ron index 0453c0d035..5835ad1c44 100644 --- a/assets/common/items/weapons/bow/hardwood-2.ron +++ b/assets/common/items/weapons/bow/hardwood-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.1, poise_strength: 0.8, speed: 1.1, diff --git a/assets/common/items/weapons/bow/hardwood-3.ron b/assets/common/items/weapons/bow/hardwood-3.ron index b915905350..e0f0487fe4 100644 --- a/assets/common/items/weapons/bow/hardwood-3.ron +++ b/assets/common/items/weapons/bow/hardwood-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.9, poise_strength: 0.8, speed: 1.3, diff --git a/assets/common/items/weapons/bow/hardwood-4.ron b/assets/common/items/weapons/bow/hardwood-4.ron index 573acf778a..27c029e941 100644 --- a/assets/common/items/weapons/bow/hardwood-4.ron +++ b/assets/common/items/weapons/bow/hardwood-4.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 0.8, speed: 1.2, diff --git a/assets/common/items/weapons/bow/hardwood-5.ron b/assets/common/items/weapons/bow/hardwood-5.ron index 9a60c8a114..860b179983 100644 --- a/assets/common/items/weapons/bow/hardwood-5.ron +++ b/assets/common/items/weapons/bow/hardwood-5.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.3, poise_strength: 0.8, speed: 0.9, diff --git a/assets/common/items/weapons/bow/metal-0.ron b/assets/common/items/weapons/bow/metal-0.ron index 69e5c5a6d9..5c607e3e2e 100644 --- a/assets/common/items/weapons/bow/metal-0.ron +++ b/assets/common/items/weapons/bow/metal-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 0.8, speed: 1.0, diff --git a/assets/common/items/weapons/bow/metal-1.ron b/assets/common/items/weapons/bow/metal-1.ron index bb917d2f90..a85a4b20f6 100644 --- a/assets/common/items/weapons/bow/metal-1.ron +++ b/assets/common/items/weapons/bow/metal-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 0.8, speed: 1.2, diff --git a/assets/common/items/weapons/bow/metal-2.ron b/assets/common/items/weapons/bow/metal-2.ron index da08553c8a..7d6bffb67c 100644 --- a/assets/common/items/weapons/bow/metal-2.ron +++ b/assets/common/items/weapons/bow/metal-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.3, poise_strength: 0.8, speed: 1.1, diff --git a/assets/common/items/weapons/bow/metal-3.ron b/assets/common/items/weapons/bow/metal-3.ron index 8ef8934379..4f09dd7d61 100644 --- a/assets/common/items/weapons/bow/metal-3.ron +++ b/assets/common/items/weapons/bow/metal-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.5, poise_strength: 0.8, speed: 0.9, diff --git a/assets/common/items/weapons/bow/metal-4.ron b/assets/common/items/weapons/bow/metal-4.ron index 858bd7b5cf..7c9a30a1f6 100644 --- a/assets/common/items/weapons/bow/metal-4.ron +++ b/assets/common/items/weapons/bow/metal-4.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.6, poise_strength: 0.8, speed: 0.8, diff --git a/assets/common/items/weapons/bow/rawwood-0.ron b/assets/common/items/weapons/bow/rawwood-0.ron index bd7f5162f8..f7f610e953 100644 --- a/assets/common/items/weapons/bow/rawwood-0.ron +++ b/assets/common/items/weapons/bow/rawwood-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.7, poise_strength: 0.8, speed: 0.9, diff --git a/assets/common/items/weapons/bow/rawwood-1.ron b/assets/common/items/weapons/bow/rawwood-1.ron index 2ccb1a8cba..515a0ddc68 100644 --- a/assets/common/items/weapons/bow/rawwood-1.ron +++ b/assets/common/items/weapons/bow/rawwood-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.6, poise_strength: 0.8, speed: 1.0, diff --git a/assets/common/items/weapons/bow/sagitta.ron b/assets/common/items/weapons/bow/sagitta.ron index 88a9e6ad6e..3ad0f8e0ed 100644 --- a/assets/common/items/weapons/bow/sagitta.ron +++ b/assets/common/items/weapons/bow/sagitta.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 2.5, poise_strength: 0.8, speed: 0.8, diff --git a/assets/common/items/weapons/bow/starter.ron b/assets/common/items/weapons/bow/starter.ron index cea23874db..d46f8276a2 100644 --- a/assets/common/items/weapons/bow/starter.ron +++ b/assets/common/items/weapons/bow/starter.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.5, poise_strength: 0.3, speed: 1.0, diff --git a/assets/common/items/weapons/bow/velorite.ron b/assets/common/items/weapons/bow/velorite.ron index da913eeb5a..5a69837f7e 100644 --- a/assets/common/items/weapons/bow/velorite.ron +++ b/assets/common/items/weapons/bow/velorite.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 2.0, poise_strength: 1.1, speed: 1.0, diff --git a/assets/common/items/weapons/bow/wood-0.ron b/assets/common/items/weapons/bow/wood-0.ron index 5bb641a6b8..75435263ef 100644 --- a/assets/common/items/weapons/bow/wood-0.ron +++ b/assets/common/items/weapons/bow/wood-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.9, poise_strength: 0.8, speed: 0.9, diff --git a/assets/common/items/weapons/bow/wood-1.ron b/assets/common/items/weapons/bow/wood-1.ron index 0654451dc9..f356d0e402 100644 --- a/assets/common/items/weapons/bow/wood-1.ron +++ b/assets/common/items/weapons/bow/wood-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.7, poise_strength: 0.8, speed: 1.1, diff --git a/assets/common/items/weapons/bow/wood-2.ron b/assets/common/items/weapons/bow/wood-2.ron index 812d4d062c..10c65a3a40 100644 --- a/assets/common/items/weapons/bow/wood-2.ron +++ b/assets/common/items/weapons/bow/wood-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.8, poise_strength: 0.8, speed: 1.0, diff --git a/assets/common/items/weapons/bow/wood-3.ron b/assets/common/items/weapons/bow/wood-3.ron index e041a1a2aa..85a000bbef 100644 --- a/assets/common/items/weapons/bow/wood-3.ron +++ b/assets/common/items/weapons/bow/wood-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 0.8, speed: 0.8, diff --git a/assets/common/items/weapons/bow/wood-4.ron b/assets/common/items/weapons/bow/wood-4.ron index d18abce394..fc026b0b31 100644 --- a/assets/common/items/weapons/bow/wood-4.ron +++ b/assets/common/items/weapons/bow/wood-4.ron @@ -5,7 +5,7 @@ ItemDef( kind: Bow, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.6, poise_strength: 0.8, speed: 1.2, diff --git a/assets/common/items/weapons/dagger/basic_0.ron b/assets/common/items/weapons/dagger/basic_0.ron index 2798ee2162..04b28e71bb 100644 --- a/assets/common/items/weapons/dagger/basic_0.ron +++ b/assets/common/items/weapons/dagger/basic_0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Dagger, hands: One, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.8, poise_strength: 2.0, speed: 1.0, diff --git a/assets/common/items/weapons/dagger/cultist_0.ron b/assets/common/items/weapons/dagger/cultist_0.ron index 62ae319739..e7f72999a1 100644 --- a/assets/common/items/weapons/dagger/cultist_0.ron +++ b/assets/common/items/weapons/dagger/cultist_0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Dagger, hands: One, stats: Direct(( - equip_time_millis: 0, + equip_time_secs: 0.0, power: 2.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/dagger/starter_dagger.ron b/assets/common/items/weapons/dagger/starter_dagger.ron index ea66b26fe3..8e96415a3c 100644 --- a/assets/common/items/weapons/dagger/starter_dagger.ron +++ b/assets/common/items/weapons/dagger/starter_dagger.ron @@ -5,7 +5,7 @@ ItemDef( kind: Dagger, hands: One, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.0, poise_strength: 0.5, speed: 1.0, diff --git a/assets/common/items/weapons/empty/empty.ron b/assets/common/items/weapons/empty/empty.ron index 2788925af7..5a2e6c9c07 100644 --- a/assets/common/items/weapons/empty/empty.ron +++ b/assets/common/items/weapons/empty/empty.ron @@ -5,7 +5,7 @@ ItemDef( kind: Empty, hands: One, stats: Direct(( - equip_time_millis: 200, + equip_time_secs: 0.2, power: 1.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/bronze_hammer-0.ron b/assets/common/items/weapons/hammer/bronze_hammer-0.ron index 4ecd533128..d409ebb89a 100644 --- a/assets/common/items/weapons/hammer/bronze_hammer-0.ron +++ b/assets/common/items/weapons/hammer/bronze_hammer-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.0, poise_strength: 0.9, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/bronze_hammer-1.ron b/assets/common/items/weapons/hammer/bronze_hammer-1.ron index 5035e5d154..12bb129388 100644 --- a/assets/common/items/weapons/hammer/bronze_hammer-1.ron +++ b/assets/common/items/weapons/hammer/bronze_hammer-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/cobalt_hammer-0.ron b/assets/common/items/weapons/hammer/cobalt_hammer-0.ron index e60c583534..585b3b4a27 100644 --- a/assets/common/items/weapons/hammer/cobalt_hammer-0.ron +++ b/assets/common/items/weapons/hammer/cobalt_hammer-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.6, poise_strength: 1.5, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/cobalt_hammer-1.ron b/assets/common/items/weapons/hammer/cobalt_hammer-1.ron index 7c4a7162f0..33942bf553 100644 --- a/assets/common/items/weapons/hammer/cobalt_hammer-1.ron +++ b/assets/common/items/weapons/hammer/cobalt_hammer-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.6, poise_strength: 1.4, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/cultist_purp_2h-0.ron b/assets/common/items/weapons/hammer/cultist_purp_2h-0.ron index f3538a28a8..b6ab771652 100644 --- a/assets/common/items/weapons/hammer/cultist_purp_2h-0.ron +++ b/assets/common/items/weapons/hammer/cultist_purp_2h-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 2.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/flimsy_hammer.ron b/assets/common/items/weapons/hammer/flimsy_hammer.ron index c28ac25674..ceb02aad51 100644 --- a/assets/common/items/weapons/hammer/flimsy_hammer.ron +++ b/assets/common/items/weapons/hammer/flimsy_hammer.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.5, poise_strength: 0.4, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/hammer_1.ron b/assets/common/items/weapons/hammer/hammer_1.ron index 36c761e3cc..283ef91e14 100644 --- a/assets/common/items/weapons/hammer/hammer_1.ron +++ b/assets/common/items/weapons/hammer/hammer_1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.5, poise_strength: 0.8, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/iron_hammer-0.ron b/assets/common/items/weapons/hammer/iron_hammer-0.ron index 2f4e6e19e6..0899c43251 100644 --- a/assets/common/items/weapons/hammer/iron_hammer-0.ron +++ b/assets/common/items/weapons/hammer/iron_hammer-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.2, poise_strength: 1.4, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/iron_hammer-1.ron b/assets/common/items/weapons/hammer/iron_hammer-1.ron index efb1b9e40c..77e7a05685 100644 --- a/assets/common/items/weapons/hammer/iron_hammer-1.ron +++ b/assets/common/items/weapons/hammer/iron_hammer-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.2, poise_strength: 0.9, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/iron_hammer-2.ron b/assets/common/items/weapons/hammer/iron_hammer-2.ron index 0e2358dfd0..d7ea0770d6 100644 --- a/assets/common/items/weapons/hammer/iron_hammer-2.ron +++ b/assets/common/items/weapons/hammer/iron_hammer-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.2, poise_strength: 1.4, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/iron_hammer-3.ron b/assets/common/items/weapons/hammer/iron_hammer-3.ron index fc524992ce..a1ed65f483 100644 --- a/assets/common/items/weapons/hammer/iron_hammer-3.ron +++ b/assets/common/items/weapons/hammer/iron_hammer-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.2, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/iron_hammer-4.ron b/assets/common/items/weapons/hammer/iron_hammer-4.ron index ffc556a078..bec365f66c 100644 --- a/assets/common/items/weapons/hammer/iron_hammer-4.ron +++ b/assets/common/items/weapons/hammer/iron_hammer-4.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.2, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/iron_hammer-5.ron b/assets/common/items/weapons/hammer/iron_hammer-5.ron index 14b02b048b..e2fbd4521c 100644 --- a/assets/common/items/weapons/hammer/iron_hammer-5.ron +++ b/assets/common/items/weapons/hammer/iron_hammer-5.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.2, poise_strength: 0.8, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/iron_hammer-6.ron b/assets/common/items/weapons/hammer/iron_hammer-6.ron index 0f4c85beeb..3e98b77ad5 100644 --- a/assets/common/items/weapons/hammer/iron_hammer-6.ron +++ b/assets/common/items/weapons/hammer/iron_hammer-6.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.2, poise_strength: 1.4, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/iron_hammer-7.ron b/assets/common/items/weapons/hammer/iron_hammer-7.ron index 4ff94bd769..8112bbc51f 100644 --- a/assets/common/items/weapons/hammer/iron_hammer-7.ron +++ b/assets/common/items/weapons/hammer/iron_hammer-7.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.2, poise_strength: 1.1, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/iron_hammer-8.ron b/assets/common/items/weapons/hammer/iron_hammer-8.ron index 14bc9cd770..de68d17fe3 100644 --- a/assets/common/items/weapons/hammer/iron_hammer-8.ron +++ b/assets/common/items/weapons/hammer/iron_hammer-8.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.2, poise_strength: 0.8, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/mjolnir.ron b/assets/common/items/weapons/hammer/mjolnir.ron index 534be5da25..09ba718eb9 100644 --- a/assets/common/items/weapons/hammer/mjolnir.ron +++ b/assets/common/items/weapons/hammer/mjolnir.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 4.0, poise_strength: 2.0, speed: 0.5, diff --git a/assets/common/items/weapons/hammer/ramshead_hammer.ron b/assets/common/items/weapons/hammer/ramshead_hammer.ron index e58b18f747..d0a4230b4c 100644 --- a/assets/common/items/weapons/hammer/ramshead_hammer.ron +++ b/assets/common/items/weapons/hammer/ramshead_hammer.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.8, poise_strength: 1.7, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/runic_hammer.ron b/assets/common/items/weapons/hammer/runic_hammer.ron index fdd2b0b04b..ee33512ade 100644 --- a/assets/common/items/weapons/hammer/runic_hammer.ron +++ b/assets/common/items/weapons/hammer/runic_hammer.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.8, poise_strength: 1.8, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/starter_hammer.ron b/assets/common/items/weapons/hammer/starter_hammer.ron index 832af40a99..2321b7fb5f 100644 --- a/assets/common/items/weapons/hammer/starter_hammer.ron +++ b/assets/common/items/weapons/hammer/starter_hammer.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.5, poise_strength: 0.9, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/steel_hammer-0.ron b/assets/common/items/weapons/hammer/steel_hammer-0.ron index cf2a27e242..a3a14b0815 100644 --- a/assets/common/items/weapons/hammer/steel_hammer-0.ron +++ b/assets/common/items/weapons/hammer/steel_hammer-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.4, poise_strength: 1.5, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/steel_hammer-1.ron b/assets/common/items/weapons/hammer/steel_hammer-1.ron index df94e11f3d..5bab87a4ab 100644 --- a/assets/common/items/weapons/hammer/steel_hammer-1.ron +++ b/assets/common/items/weapons/hammer/steel_hammer-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.4, poise_strength: 1.3, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/steel_hammer-2.ron b/assets/common/items/weapons/hammer/steel_hammer-2.ron index 96b6da84d9..9d3a3f1e56 100644 --- a/assets/common/items/weapons/hammer/steel_hammer-2.ron +++ b/assets/common/items/weapons/hammer/steel_hammer-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.4, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/steel_hammer-3.ron b/assets/common/items/weapons/hammer/steel_hammer-3.ron index dd1abc559d..9d99a52cd3 100644 --- a/assets/common/items/weapons/hammer/steel_hammer-3.ron +++ b/assets/common/items/weapons/hammer/steel_hammer-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.4, poise_strength: 1.7, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/steel_hammer-4.ron b/assets/common/items/weapons/hammer/steel_hammer-4.ron index 819ec8c602..bb72a635a9 100644 --- a/assets/common/items/weapons/hammer/steel_hammer-4.ron +++ b/assets/common/items/weapons/hammer/steel_hammer-4.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.4, poise_strength: 1.5, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/steel_hammer-5.ron b/assets/common/items/weapons/hammer/steel_hammer-5.ron index 698ccd3a68..2b9fb74138 100644 --- a/assets/common/items/weapons/hammer/steel_hammer-5.ron +++ b/assets/common/items/weapons/hammer/steel_hammer-5.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.4, poise_strength: 1.3, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/stone_hammer-0.ron b/assets/common/items/weapons/hammer/stone_hammer-0.ron index 96fb10c470..4a2ba70f0d 100644 --- a/assets/common/items/weapons/hammer/stone_hammer-0.ron +++ b/assets/common/items/weapons/hammer/stone_hammer-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.7, poise_strength: 1.7, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/stone_hammer-1.ron b/assets/common/items/weapons/hammer/stone_hammer-1.ron index a481c4a072..d9a804116a 100644 --- a/assets/common/items/weapons/hammer/stone_hammer-1.ron +++ b/assets/common/items/weapons/hammer/stone_hammer-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.7, poise_strength: 1.8, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/stone_hammer-2.ron b/assets/common/items/weapons/hammer/stone_hammer-2.ron index d458b1043f..d875268bf1 100644 --- a/assets/common/items/weapons/hammer/stone_hammer-2.ron +++ b/assets/common/items/weapons/hammer/stone_hammer-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.7, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/stone_hammer-3.ron b/assets/common/items/weapons/hammer/stone_hammer-3.ron index fc84849c95..64833684b4 100644 --- a/assets/common/items/weapons/hammer/stone_hammer-3.ron +++ b/assets/common/items/weapons/hammer/stone_hammer-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.7, poise_strength: 1.8, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/wood_hammer-0.ron b/assets/common/items/weapons/hammer/wood_hammer-0.ron index 8cfdc8b40e..efd328c442 100644 --- a/assets/common/items/weapons/hammer/wood_hammer-0.ron +++ b/assets/common/items/weapons/hammer/wood_hammer-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.6, poise_strength: 0.8, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/worn_iron_hammer-0.ron b/assets/common/items/weapons/hammer/worn_iron_hammer-0.ron index dd1ef660a4..df1a583494 100644 --- a/assets/common/items/weapons/hammer/worn_iron_hammer-0.ron +++ b/assets/common/items/weapons/hammer/worn_iron_hammer-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.85, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/worn_iron_hammer-1.ron b/assets/common/items/weapons/hammer/worn_iron_hammer-1.ron index 39df706cfe..53fbc285c2 100644 --- a/assets/common/items/weapons/hammer/worn_iron_hammer-1.ron +++ b/assets/common/items/weapons/hammer/worn_iron_hammer-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.85, poise_strength: 0.6, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/worn_iron_hammer-2.ron b/assets/common/items/weapons/hammer/worn_iron_hammer-2.ron index af15f236ca..56ff8638b4 100644 --- a/assets/common/items/weapons/hammer/worn_iron_hammer-2.ron +++ b/assets/common/items/weapons/hammer/worn_iron_hammer-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.85, poise_strength: 0.7, speed: 1.0, diff --git a/assets/common/items/weapons/hammer/worn_iron_hammer-3.ron b/assets/common/items/weapons/hammer/worn_iron_hammer-3.ron index f28e076dc5..fe5c028cca 100644 --- a/assets/common/items/weapons/hammer/worn_iron_hammer-3.ron +++ b/assets/common/items/weapons/hammer/worn_iron_hammer-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.85, poise_strength: 1.1, speed: 1.0, diff --git a/assets/common/items/weapons/hammer_1h/bloodsteel-0.ron b/assets/common/items/weapons/hammer_1h/bloodsteel-0.ron index 9ed34579a8..d7f08795cc 100644 --- a/assets/common/items/weapons/hammer_1h/bloodsteel-0.ron +++ b/assets/common/items/weapons/hammer_1h/bloodsteel-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.6, poise_strength: 1.0, speed: 1.2, diff --git a/assets/common/items/weapons/hammer_1h/bloodsteel-1.ron b/assets/common/items/weapons/hammer_1h/bloodsteel-1.ron index 5379cb2279..80b3a5c0dd 100644 --- a/assets/common/items/weapons/hammer_1h/bloodsteel-1.ron +++ b/assets/common/items/weapons/hammer_1h/bloodsteel-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.8, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer_1h/bronze-0.ron b/assets/common/items/weapons/hammer_1h/bronze-0.ron index 1090cde1de..067607bb5e 100644 --- a/assets/common/items/weapons/hammer_1h/bronze-0.ron +++ b/assets/common/items/weapons/hammer_1h/bronze-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.2, poise_strength: 1.0, speed: 0.8, diff --git a/assets/common/items/weapons/hammer_1h/bronze-1.ron b/assets/common/items/weapons/hammer_1h/bronze-1.ron index 589e53b27a..7647b4b6dc 100644 --- a/assets/common/items/weapons/hammer_1h/bronze-1.ron +++ b/assets/common/items/weapons/hammer_1h/bronze-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer_1h/cobalt-0.ron b/assets/common/items/weapons/hammer_1h/cobalt-0.ron index a0c1099bcc..05471d14c3 100644 --- a/assets/common/items/weapons/hammer_1h/cobalt-0.ron +++ b/assets/common/items/weapons/hammer_1h/cobalt-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.6, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer_1h/cobalt-1.ron b/assets/common/items/weapons/hammer_1h/cobalt-1.ron index d93c1cf2c4..f58b3d9901 100644 --- a/assets/common/items/weapons/hammer_1h/cobalt-1.ron +++ b/assets/common/items/weapons/hammer_1h/cobalt-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.5, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/hammer_1h/iron-0.ron b/assets/common/items/weapons/hammer_1h/iron-0.ron index 63df955a76..b5ba278597 100644 --- a/assets/common/items/weapons/hammer_1h/iron-0.ron +++ b/assets/common/items/weapons/hammer_1h/iron-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.4, poise_strength: 1.0, speed: 0.8, diff --git a/assets/common/items/weapons/hammer_1h/iron-1.ron b/assets/common/items/weapons/hammer_1h/iron-1.ron index 87d7151a75..f9d8a6bff6 100644 --- a/assets/common/items/weapons/hammer_1h/iron-1.ron +++ b/assets/common/items/weapons/hammer_1h/iron-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.3, poise_strength: 1.0, speed: 0.9, diff --git a/assets/common/items/weapons/hammer_1h/iron-2.ron b/assets/common/items/weapons/hammer_1h/iron-2.ron index f439868139..68991cd50c 100644 --- a/assets/common/items/weapons/hammer_1h/iron-2.ron +++ b/assets/common/items/weapons/hammer_1h/iron-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.1, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/hammer_1h/orichalcum-0.ron b/assets/common/items/weapons/hammer_1h/orichalcum-0.ron index a5c6c7009b..76a5c5db2a 100644 --- a/assets/common/items/weapons/hammer_1h/orichalcum-0.ron +++ b/assets/common/items/weapons/hammer_1h/orichalcum-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Axe, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 2.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer_1h/steel-0.ron b/assets/common/items/weapons/hammer_1h/steel-0.ron index 446cd92b5b..93829715b5 100644 --- a/assets/common/items/weapons/hammer_1h/steel-0.ron +++ b/assets/common/items/weapons/hammer_1h/steel-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.5, poise_strength: 1.0, speed: 0.9, diff --git a/assets/common/items/weapons/hammer_1h/steel-1.ron b/assets/common/items/weapons/hammer_1h/steel-1.ron index 2675db788d..82a525bd8a 100644 --- a/assets/common/items/weapons/hammer_1h/steel-1.ron +++ b/assets/common/items/weapons/hammer_1h/steel-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.4, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/hammer_1h/steel-2.ron b/assets/common/items/weapons/hammer_1h/steel-2.ron index 2364628d7f..c6afbf9858 100644 --- a/assets/common/items/weapons/hammer_1h/steel-2.ron +++ b/assets/common/items/weapons/hammer_1h/steel-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.2, poise_strength: 1.0, speed: 1.2, diff --git a/assets/common/items/weapons/hammer_1h/stone-0.ron b/assets/common/items/weapons/hammer_1h/stone-0.ron index 5e70888a6a..a4daef28fb 100644 --- a/assets/common/items/weapons/hammer_1h/stone-0.ron +++ b/assets/common/items/weapons/hammer_1h/stone-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.7, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/hammer_1h/stone-1.ron b/assets/common/items/weapons/hammer_1h/stone-1.ron index 8430318b44..5f0c25640c 100644 --- a/assets/common/items/weapons/hammer_1h/stone-1.ron +++ b/assets/common/items/weapons/hammer_1h/stone-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.0, poise_strength: 1.0, speed: 0.8, diff --git a/assets/common/items/weapons/hammer_1h/wood-0.ron b/assets/common/items/weapons/hammer_1h/wood-0.ron index e75be1d533..f5b9151d05 100644 --- a/assets/common/items/weapons/hammer_1h/wood-0.ron +++ b/assets/common/items/weapons/hammer_1h/wood-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.8, poise_strength: 1.0, speed: 0.8, diff --git a/assets/common/items/weapons/hammer_1h/wood-1.ron b/assets/common/items/weapons/hammer_1h/wood-1.ron index d7fcc49fe8..7e7e7e6410 100644 --- a/assets/common/items/weapons/hammer_1h/wood-1.ron +++ b/assets/common/items/weapons/hammer_1h/wood-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Hammer, hands: One, stats: ( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 0.5, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/sceptre/fork0.ron b/assets/common/items/weapons/sceptre/fork0.ron index febd87ee8f..5d709b19a1 100644 --- a/assets/common/items/weapons/sceptre/fork0.ron +++ b/assets/common/items/weapons/sceptre/fork0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sceptre, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 2.0, poise_strength: 1.5, speed: 0.8, diff --git a/assets/common/items/weapons/sceptre/loops0.ron b/assets/common/items/weapons/sceptre/loops0.ron index e384f280d3..0199f08c80 100644 --- a/assets/common/items/weapons/sceptre/loops0.ron +++ b/assets/common/items/weapons/sceptre/loops0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sceptre, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.5, speed: 1.5, diff --git a/assets/common/items/weapons/sceptre/moon0.ron b/assets/common/items/weapons/sceptre/moon0.ron index f6dfd2db6c..f051a251e7 100644 --- a/assets/common/items/weapons/sceptre/moon0.ron +++ b/assets/common/items/weapons/sceptre/moon0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sceptre, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.6, poise_strength: 1.5, speed: 0.5, diff --git a/assets/common/items/weapons/sceptre/root_evil.ron b/assets/common/items/weapons/sceptre/root_evil.ron index 50783cdd53..0e7f3cc38a 100644 --- a/assets/common/items/weapons/sceptre/root_evil.ron +++ b/assets/common/items/weapons/sceptre/root_evil.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sceptre, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 4.0, poise_strength: 1.5, speed: 0.5, diff --git a/assets/common/items/weapons/sceptre/root_green0.ron b/assets/common/items/weapons/sceptre/root_green0.ron index c8bfbec7d7..e55b68e017 100644 --- a/assets/common/items/weapons/sceptre/root_green0.ron +++ b/assets/common/items/weapons/sceptre/root_green0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sceptre, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 3.5, poise_strength: 1.5, speed: 0.4, diff --git a/assets/common/items/weapons/sceptre/sceptre_velorite_0.ron b/assets/common/items/weapons/sceptre/sceptre_velorite_0.ron index 48ed1e72d4..c1717c9d73 100644 --- a/assets/common/items/weapons/sceptre/sceptre_velorite_0.ron +++ b/assets/common/items/weapons/sceptre/sceptre_velorite_0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sceptre, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.5, speed: 1.6, diff --git a/assets/common/items/weapons/sceptre/staff_nature.ron b/assets/common/items/weapons/sceptre/staff_nature.ron index 8594ea00d0..a15600f3d7 100644 --- a/assets/common/items/weapons/sceptre/staff_nature.ron +++ b/assets/common/items/weapons/sceptre/staff_nature.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sceptre, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.91, poise_strength: 0.5, speed: 1.1, diff --git a/assets/common/items/weapons/sceptre/starter_sceptre.ron b/assets/common/items/weapons/sceptre/starter_sceptre.ron index 787b186f79..bf94d16927 100644 --- a/assets/common/items/weapons/sceptre/starter_sceptre.ron +++ b/assets/common/items/weapons/sceptre/starter_sceptre.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sceptre, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.5, poise_strength: 0.1, speed: 1.0, diff --git a/assets/common/items/weapons/sceptre/totem_green.ron b/assets/common/items/weapons/sceptre/totem_green.ron index 8df58e4a30..c5a2fd15fd 100644 --- a/assets/common/items/weapons/sceptre/totem_green.ron +++ b/assets/common/items/weapons/sceptre/totem_green.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sceptre, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.5, speed: 1.2, diff --git a/assets/common/items/weapons/shield/shield_1.ron b/assets/common/items/weapons/shield/shield_1.ron index a66f321e58..1a896f6877 100644 --- a/assets/common/items/weapons/shield/shield_1.ron +++ b/assets/common/items/weapons/shield/shield_1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Shield, hands: One, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/staff/amethyst_staff.ron b/assets/common/items/weapons/staff/amethyst_staff.ron index e6e2a39be6..bbe428fc0e 100644 --- a/assets/common/items/weapons/staff/amethyst_staff.ron +++ b/assets/common/items/weapons/staff/amethyst_staff.ron @@ -5,7 +5,7 @@ ItemDef( kind: Staff, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.5, poise_strength: 1.4, speed: 1.0, diff --git a/assets/common/items/weapons/staff/bone_staff.ron b/assets/common/items/weapons/staff/bone_staff.ron index 041ff07276..359f6c865b 100644 --- a/assets/common/items/weapons/staff/bone_staff.ron +++ b/assets/common/items/weapons/staff/bone_staff.ron @@ -5,7 +5,7 @@ ItemDef( kind: Staff, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.0, poise_strength: 1.5, speed: 1.0, diff --git a/assets/common/items/weapons/staff/cultist_staff.ron b/assets/common/items/weapons/staff/cultist_staff.ron index df99316d5c..3e35706f60 100644 --- a/assets/common/items/weapons/staff/cultist_staff.ron +++ b/assets/common/items/weapons/staff/cultist_staff.ron @@ -5,7 +5,7 @@ ItemDef( kind: Staff, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 2.0, poise_strength: 1.5, speed: 1.0, diff --git a/assets/common/items/weapons/staff/staff_1.ron b/assets/common/items/weapons/staff/staff_1.ron index ab4db158f4..c26f6dc265 100644 --- a/assets/common/items/weapons/staff/staff_1.ron +++ b/assets/common/items/weapons/staff/staff_1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Staff, hands: Two, stats: Direct(( - equip_time_millis: 200, + equip_time_secs: 0.2, power: 0.5, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/staff/starter_staff.ron b/assets/common/items/weapons/staff/starter_staff.ron index f793ba581b..cd21db9db4 100644 --- a/assets/common/items/weapons/staff/starter_staff.ron +++ b/assets/common/items/weapons/staff/starter_staff.ron @@ -5,7 +5,7 @@ ItemDef( kind: Staff, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 0.5, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/sword/bloodsteel-0.ron b/assets/common/items/weapons/sword/bloodsteel-0.ron index 428ca6b41c..32b0ee20d7 100644 --- a/assets/common/items/weapons/sword/bloodsteel-0.ron +++ b/assets/common/items/weapons/sword/bloodsteel-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.8, poise_strength: 0.4, speed: 1.0, diff --git a/assets/common/items/weapons/sword/bloodsteel-1.ron b/assets/common/items/weapons/sword/bloodsteel-1.ron index dd939deac9..b63554b64b 100644 --- a/assets/common/items/weapons/sword/bloodsteel-1.ron +++ b/assets/common/items/weapons/sword/bloodsteel-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.6, poise_strength: 0.4, speed: 1.2, diff --git a/assets/common/items/weapons/sword/bloodsteel-2.ron b/assets/common/items/weapons/sword/bloodsteel-2.ron index b99e7bea1d..c9d4254652 100644 --- a/assets/common/items/weapons/sword/bloodsteel-2.ron +++ b/assets/common/items/weapons/sword/bloodsteel-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 2.0, poise_strength: 0.4, speed: 0.8, diff --git a/assets/common/items/weapons/sword/bronze-0.ron b/assets/common/items/weapons/sword/bronze-0.ron index 62cf323676..07cb6e9a53 100644 --- a/assets/common/items/weapons/sword/bronze-0.ron +++ b/assets/common/items/weapons/sword/bronze-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.1, poise_strength: 0.4, speed: 0.9, diff --git a/assets/common/items/weapons/sword/bronze-1.ron b/assets/common/items/weapons/sword/bronze-1.ron index 33ff213600..e3fa20d076 100644 --- a/assets/common/items/weapons/sword/bronze-1.ron +++ b/assets/common/items/weapons/sword/bronze-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 0.9, poise_strength: 0.4, speed: 1.1, diff --git a/assets/common/items/weapons/sword/bronze-2.ron b/assets/common/items/weapons/sword/bronze-2.ron index fef68bd678..e70a7b10ad 100644 --- a/assets/common/items/weapons/sword/bronze-2.ron +++ b/assets/common/items/weapons/sword/bronze-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.0, poise_strength: 0.4, speed: 1.0, diff --git a/assets/common/items/weapons/sword/caladbolg.ron b/assets/common/items/weapons/sword/caladbolg.ron index 39c8b13bb2..be2e3edc54 100644 --- a/assets/common/items/weapons/sword/caladbolg.ron +++ b/assets/common/items/weapons/sword/caladbolg.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 2.5, poise_strength: 0.4, speed: 0.8, diff --git a/assets/common/items/weapons/sword/cobalt-0.ron b/assets/common/items/weapons/sword/cobalt-0.ron index d09631b9f3..a30b3a8720 100644 --- a/assets/common/items/weapons/sword/cobalt-0.ron +++ b/assets/common/items/weapons/sword/cobalt-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.5, poise_strength: 0.4, speed: 1.1, diff --git a/assets/common/items/weapons/sword/cobalt-1.ron b/assets/common/items/weapons/sword/cobalt-1.ron index e5806380a5..ba08a15ef5 100644 --- a/assets/common/items/weapons/sword/cobalt-1.ron +++ b/assets/common/items/weapons/sword/cobalt-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.8, poise_strength: 0.4, speed: 0.8, diff --git a/assets/common/items/weapons/sword/cobalt-2.ron b/assets/common/items/weapons/sword/cobalt-2.ron index e4847fa2cc..0f21a06154 100644 --- a/assets/common/items/weapons/sword/cobalt-2.ron +++ b/assets/common/items/weapons/sword/cobalt-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.6, poise_strength: 0.4, speed: 1.0, diff --git a/assets/common/items/weapons/sword/cobalt-3.ron b/assets/common/items/weapons/sword/cobalt-3.ron index bd836c2f85..56b08b8191 100644 --- a/assets/common/items/weapons/sword/cobalt-3.ron +++ b/assets/common/items/weapons/sword/cobalt-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.7, poise_strength: 0.4, speed: 0.9, diff --git a/assets/common/items/weapons/sword/cultist.ron b/assets/common/items/weapons/sword/cultist.ron index 391573e0d4..77febbe9d7 100644 --- a/assets/common/items/weapons/sword/cultist.ron +++ b/assets/common/items/weapons/sword/cultist.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 2.0, poise_strength: 1.5, speed: 1.0, diff --git a/assets/common/items/weapons/sword/frost-0.ron b/assets/common/items/weapons/sword/frost-0.ron index cd8b2b0ea6..127fb8ec10 100644 --- a/assets/common/items/weapons/sword/frost-0.ron +++ b/assets/common/items/weapons/sword/frost-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.7, poise_strength: 2.0, speed: 1.0, diff --git a/assets/common/items/weapons/sword/frost-1.ron b/assets/common/items/weapons/sword/frost-1.ron index dbf1d464e3..36c2b2a877 100644 --- a/assets/common/items/weapons/sword/frost-1.ron +++ b/assets/common/items/weapons/sword/frost-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 500, + equip_time_secs: 0.5, power: 1.95, poise_strength: 1.7, speed: 1.0, diff --git a/assets/common/items/weapons/sword/iron-0.ron b/assets/common/items/weapons/sword/iron-0.ron index e7a856c3a6..2f3ce8bb85 100644 --- a/assets/common/items/weapons/sword/iron-0.ron +++ b/assets/common/items/weapons/sword/iron-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.25, poise_strength: 0.4, speed: 0.95, diff --git a/assets/common/items/weapons/sword/iron-1.ron b/assets/common/items/weapons/sword/iron-1.ron index 5ded191f68..3b27d45527 100644 --- a/assets/common/items/weapons/sword/iron-1.ron +++ b/assets/common/items/weapons/sword/iron-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.45, poise_strength: 0.4, speed: 0.75, diff --git a/assets/common/items/weapons/sword/iron-10.ron b/assets/common/items/weapons/sword/iron-10.ron index 4ac727086d..1d64973648 100644 --- a/assets/common/items/weapons/sword/iron-10.ron +++ b/assets/common/items/weapons/sword/iron-10.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.35, poise_strength: 0.4, speed: 0.85, diff --git a/assets/common/items/weapons/sword/iron-2.ron b/assets/common/items/weapons/sword/iron-2.ron index 418dee3cb5..6701c53eb9 100644 --- a/assets/common/items/weapons/sword/iron-2.ron +++ b/assets/common/items/weapons/sword/iron-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.1, poise_strength: 0.4, speed: 1.1, diff --git a/assets/common/items/weapons/sword/iron-3.ron b/assets/common/items/weapons/sword/iron-3.ron index 2514580b95..f6bbd9bb18 100644 --- a/assets/common/items/weapons/sword/iron-3.ron +++ b/assets/common/items/weapons/sword/iron-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.15, poise_strength: 0.4, speed: 1.05, diff --git a/assets/common/items/weapons/sword/iron-4.ron b/assets/common/items/weapons/sword/iron-4.ron index 3ece8d76a1..efe18b2897 100644 --- a/assets/common/items/weapons/sword/iron-4.ron +++ b/assets/common/items/weapons/sword/iron-4.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.3, poise_strength: 0.4, speed: 0.9, diff --git a/assets/common/items/weapons/sword/iron-5.ron b/assets/common/items/weapons/sword/iron-5.ron index 1c4e6c48c5..a0c5d806a0 100644 --- a/assets/common/items/weapons/sword/iron-5.ron +++ b/assets/common/items/weapons/sword/iron-5.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.05, poise_strength: 0.4, speed: 1.15, diff --git a/assets/common/items/weapons/sword/iron-6.ron b/assets/common/items/weapons/sword/iron-6.ron index 22bac342b5..6b66bb48d8 100644 --- a/assets/common/items/weapons/sword/iron-6.ron +++ b/assets/common/items/weapons/sword/iron-6.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.2, poise_strength: 0.4, speed: 1.0, diff --git a/assets/common/items/weapons/sword/iron-7.ron b/assets/common/items/weapons/sword/iron-7.ron index 8fa2ad1022..a2fa0d307c 100644 --- a/assets/common/items/weapons/sword/iron-7.ron +++ b/assets/common/items/weapons/sword/iron-7.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.4, poise_strength: 0.4, speed: 0.8, diff --git a/assets/common/items/weapons/sword/iron-8.ron b/assets/common/items/weapons/sword/iron-8.ron index 0f88d130dc..f4ce93492a 100644 --- a/assets/common/items/weapons/sword/iron-8.ron +++ b/assets/common/items/weapons/sword/iron-8.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.0, poise_strength: 0.4, speed: 1.2, diff --git a/assets/common/items/weapons/sword/iron-9.ron b/assets/common/items/weapons/sword/iron-9.ron index 2bb8b84033..8560c8042c 100644 --- a/assets/common/items/weapons/sword/iron-9.ron +++ b/assets/common/items/weapons/sword/iron-9.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 0.95, poise_strength: 0.4, speed: 1.25, diff --git a/assets/common/items/weapons/sword/starter.ron b/assets/common/items/weapons/sword/starter.ron index aebc6711c7..a2a93b74ef 100644 --- a/assets/common/items/weapons/sword/starter.ron +++ b/assets/common/items/weapons/sword/starter.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 0.5, poise_strength: 0.4, speed: 1.0, diff --git a/assets/common/items/weapons/sword/steel-0.ron b/assets/common/items/weapons/sword/steel-0.ron index 9916779b2e..ad91eb5b3b 100644 --- a/assets/common/items/weapons/sword/steel-0.ron +++ b/assets/common/items/weapons/sword/steel-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.4, poise_strength: 0.4, speed: 1.0, diff --git a/assets/common/items/weapons/sword/steel-1.ron b/assets/common/items/weapons/sword/steel-1.ron index d5900b53e9..a06595be06 100644 --- a/assets/common/items/weapons/sword/steel-1.ron +++ b/assets/common/items/weapons/sword/steel-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.45, poise_strength: 0.4, speed: 0.95, diff --git a/assets/common/items/weapons/sword/steel-2.ron b/assets/common/items/weapons/sword/steel-2.ron index 45b4c63880..6dde404fc0 100644 --- a/assets/common/items/weapons/sword/steel-2.ron +++ b/assets/common/items/weapons/sword/steel-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.25, poise_strength: 0.4, speed: 1.15, diff --git a/assets/common/items/weapons/sword/steel-3.ron b/assets/common/items/weapons/sword/steel-3.ron index 0e831d6528..d0e7887d59 100644 --- a/assets/common/items/weapons/sword/steel-3.ron +++ b/assets/common/items/weapons/sword/steel-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.5, poise_strength: 0.4, speed: 0.9, diff --git a/assets/common/items/weapons/sword/steel-4.ron b/assets/common/items/weapons/sword/steel-4.ron index a790d74d81..662bf2a863 100644 --- a/assets/common/items/weapons/sword/steel-4.ron +++ b/assets/common/items/weapons/sword/steel-4.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.55, poise_strength: 0.4, speed: 0.85, diff --git a/assets/common/items/weapons/sword/steel-5.ron b/assets/common/items/weapons/sword/steel-5.ron index b1124aecfe..6559479d09 100644 --- a/assets/common/items/weapons/sword/steel-5.ron +++ b/assets/common/items/weapons/sword/steel-5.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.2, poise_strength: 0.4, speed: 1.2, diff --git a/assets/common/items/weapons/sword/steel-6.ron b/assets/common/items/weapons/sword/steel-6.ron index c47ebf7fc1..c134123b51 100644 --- a/assets/common/items/weapons/sword/steel-6.ron +++ b/assets/common/items/weapons/sword/steel-6.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.3, poise_strength: 0.4, speed: 1.1, diff --git a/assets/common/items/weapons/sword/steel-7.ron b/assets/common/items/weapons/sword/steel-7.ron index 69f6d04cef..3044bb2f1e 100644 --- a/assets/common/items/weapons/sword/steel-7.ron +++ b/assets/common/items/weapons/sword/steel-7.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.6, poise_strength: 0.4, speed: 0.8, diff --git a/assets/common/items/weapons/sword/steel-8.ron b/assets/common/items/weapons/sword/steel-8.ron index 5e6b1f0c3d..6a25595c56 100644 --- a/assets/common/items/weapons/sword/steel-8.ron +++ b/assets/common/items/weapons/sword/steel-8.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.35, poise_strength: 0.4, speed: 1.05, diff --git a/assets/common/items/weapons/sword/stone-0.ron b/assets/common/items/weapons/sword/stone-0.ron index 882f171508..7acceea5c5 100644 --- a/assets/common/items/weapons/sword/stone-0.ron +++ b/assets/common/items/weapons/sword/stone-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 1.0, poise_strength: 0.4, speed: 0.8, diff --git a/assets/common/items/weapons/sword/stone-1.ron b/assets/common/items/weapons/sword/stone-1.ron index 34a451e84b..238db6f571 100644 --- a/assets/common/items/weapons/sword/stone-1.ron +++ b/assets/common/items/weapons/sword/stone-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 0.8, poise_strength: 0.4, speed: 1.0, diff --git a/assets/common/items/weapons/sword/stone-2.ron b/assets/common/items/weapons/sword/stone-2.ron index 439590f4c0..6651ac3936 100644 --- a/assets/common/items/weapons/sword/stone-2.ron +++ b/assets/common/items/weapons/sword/stone-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 0.9, poise_strength: 0.4, speed: 0.9, diff --git a/assets/common/items/weapons/sword/wood-0.ron b/assets/common/items/weapons/sword/wood-0.ron index 25b3896332..2cd0c30425 100644 --- a/assets/common/items/weapons/sword/wood-0.ron +++ b/assets/common/items/weapons/sword/wood-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 0.6, poise_strength: 0.4, speed: 1.0, diff --git a/assets/common/items/weapons/sword/wood-1.ron b/assets/common/items/weapons/sword/wood-1.ron index 8a575e4de7..74eb98a5a6 100644 --- a/assets/common/items/weapons/sword/wood-1.ron +++ b/assets/common/items/weapons/sword/wood-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 300, + equip_time_secs: 0.3, power: 0.8, poise_strength: 0.4, speed: 0.8, diff --git a/assets/common/items/weapons/sword/wood-2.ron b/assets/common/items/weapons/sword/wood-2.ron index d8b33e4728..e229ed4967 100644 --- a/assets/common/items/weapons/sword/wood-2.ron +++ b/assets/common/items/weapons/sword/wood-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.5, poise_strength: 0.5, speed: 1.1, diff --git a/assets/common/items/weapons/sword_1h/bloodsteel-0.ron b/assets/common/items/weapons/sword_1h/bloodsteel-0.ron index 0186f5b007..eaac0ee44a 100644 --- a/assets/common/items/weapons/sword_1h/bloodsteel-0.ron +++ b/assets/common/items/weapons/sword_1h/bloodsteel-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.45, poise_strength: 1.0, speed: 1.3, diff --git a/assets/common/items/weapons/sword_1h/bloodsteel-1.ron b/assets/common/items/weapons/sword_1h/bloodsteel-1.ron index acc31f3549..2d8a74b0a0 100644 --- a/assets/common/items/weapons/sword_1h/bloodsteel-1.ron +++ b/assets/common/items/weapons/sword_1h/bloodsteel-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 2.0, poise_strength: 1.0, speed: 0.75, diff --git a/assets/common/items/weapons/sword_1h/bloodsteel-2.ron b/assets/common/items/weapons/sword_1h/bloodsteel-2.ron index b72acb86b8..aa4916aa8e 100644 --- a/assets/common/items/weapons/sword_1h/bloodsteel-2.ron +++ b/assets/common/items/weapons/sword_1h/bloodsteel-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.75, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/sword_1h/bronze-0.ron b/assets/common/items/weapons/sword_1h/bronze-0.ron index 72650414ea..fb01404bd2 100644 --- a/assets/common/items/weapons/sword_1h/bronze-0.ron +++ b/assets/common/items/weapons/sword_1h/bronze-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.65, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/sword_1h/bronze-1.ron b/assets/common/items/weapons/sword_1h/bronze-1.ron index b87e296ab9..8037ff8605 100644 --- a/assets/common/items/weapons/sword_1h/bronze-1.ron +++ b/assets/common/items/weapons/sword_1h/bronze-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.75, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/sword_1h/bronze-2.ron b/assets/common/items/weapons/sword_1h/bronze-2.ron index 13905573ca..bc8c5b65da 100644 --- a/assets/common/items/weapons/sword_1h/bronze-2.ron +++ b/assets/common/items/weapons/sword_1h/bronze-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.85, poise_strength: 1.0, speed: 0.9, diff --git a/assets/common/items/weapons/sword_1h/cobalt-0.ron b/assets/common/items/weapons/sword_1h/cobalt-0.ron index 22b53da46f..2a3cb87e55 100644 --- a/assets/common/items/weapons/sword_1h/cobalt-0.ron +++ b/assets/common/items/weapons/sword_1h/cobalt-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.3, poise_strength: 1.0, speed: 1.2, diff --git a/assets/common/items/weapons/sword_1h/cobalt-1.ron b/assets/common/items/weapons/sword_1h/cobalt-1.ron index 8a5e1f9fc7..70b67c0060 100644 --- a/assets/common/items/weapons/sword_1h/cobalt-1.ron +++ b/assets/common/items/weapons/sword_1h/cobalt-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.7, poise_strength: 1.0, speed: 0.8, diff --git a/assets/common/items/weapons/sword_1h/cobalt-2.ron b/assets/common/items/weapons/sword_1h/cobalt-2.ron index 1e6251d382..1977007700 100644 --- a/assets/common/items/weapons/sword_1h/cobalt-2.ron +++ b/assets/common/items/weapons/sword_1h/cobalt-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.4, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/sword_1h/cobalt-3.ron b/assets/common/items/weapons/sword_1h/cobalt-3.ron index 3cdbe8ba81..bc6c007feb 100644 --- a/assets/common/items/weapons/sword_1h/cobalt-3.ron +++ b/assets/common/items/weapons/sword_1h/cobalt-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.6, poise_strength: 1.0, speed: 0.9, diff --git a/assets/common/items/weapons/sword_1h/iron-0.ron b/assets/common/items/weapons/sword_1h/iron-0.ron index 11b89e69fc..53c13be6d9 100644 --- a/assets/common/items/weapons/sword_1h/iron-0.ron +++ b/assets/common/items/weapons/sword_1h/iron-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/sword_1h/iron-1.ron b/assets/common/items/weapons/sword_1h/iron-1.ron index f4335f3740..db2466d8a7 100644 --- a/assets/common/items/weapons/sword_1h/iron-1.ron +++ b/assets/common/items/weapons/sword_1h/iron-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.9, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/sword_1h/iron-2.ron b/assets/common/items/weapons/sword_1h/iron-2.ron index 479d5a0b80..87730a7112 100644 --- a/assets/common/items/weapons/sword_1h/iron-2.ron +++ b/assets/common/items/weapons/sword_1h/iron-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.0, speed: 0.8, diff --git a/assets/common/items/weapons/sword_1h/iron-3.ron b/assets/common/items/weapons/sword_1h/iron-3.ron index 8ab9418dae..6257983083 100644 --- a/assets/common/items/weapons/sword_1h/iron-3.ron +++ b/assets/common/items/weapons/sword_1h/iron-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 0.8, poise_strength: 1.0, speed: 1.2, diff --git a/assets/common/items/weapons/sword_1h/iron-4.ron b/assets/common/items/weapons/sword_1h/iron-4.ron index 6a1fc6ea43..cea0370fc9 100644 --- a/assets/common/items/weapons/sword_1h/iron-4.ron +++ b/assets/common/items/weapons/sword_1h/iron-4.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.1, poise_strength: 1.0, speed: 0.9, diff --git a/assets/common/items/weapons/sword_1h/obsidian-0.ron b/assets/common/items/weapons/sword_1h/obsidian-0.ron index a7bbcfe291..db312f8de3 100644 --- a/assets/common/items/weapons/sword_1h/obsidian-0.ron +++ b/assets/common/items/weapons/sword_1h/obsidian-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.95, poise_strength: 1.0, speed: 0.8, diff --git a/assets/common/items/weapons/sword_1h/orichalcum-0.ron b/assets/common/items/weapons/sword_1h/orichalcum-0.ron index d325243e10..99e74a3adc 100644 --- a/assets/common/items/weapons/sword_1h/orichalcum-0.ron +++ b/assets/common/items/weapons/sword_1h/orichalcum-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 2.1, poise_strength: 1.0, speed: 0.9, diff --git a/assets/common/items/weapons/sword_1h/orichalcum-1.ron b/assets/common/items/weapons/sword_1h/orichalcum-1.ron index a6b5bb670c..f48efd7d64 100644 --- a/assets/common/items/weapons/sword_1h/orichalcum-1.ron +++ b/assets/common/items/weapons/sword_1h/orichalcum-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.9, poise_strength: 1.0, speed: 1.1, diff --git a/assets/common/items/weapons/sword_1h/steel-0.ron b/assets/common/items/weapons/sword_1h/steel-0.ron index d7cf2121e7..998c2bedc7 100644 --- a/assets/common/items/weapons/sword_1h/steel-0.ron +++ b/assets/common/items/weapons/sword_1h/steel-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.5, poise_strength: 1.0, speed: 0.75, diff --git a/assets/common/items/weapons/sword_1h/steel-1.ron b/assets/common/items/weapons/sword_1h/steel-1.ron index 56016c62d1..71a2aa1abf 100644 --- a/assets/common/items/weapons/sword_1h/steel-1.ron +++ b/assets/common/items/weapons/sword_1h/steel-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.3, poise_strength: 1.0, speed: .95, diff --git a/assets/common/items/weapons/sword_1h/steel-2.ron b/assets/common/items/weapons/sword_1h/steel-2.ron index eede6c0e38..2ffe879bf8 100644 --- a/assets/common/items/weapons/sword_1h/steel-2.ron +++ b/assets/common/items/weapons/sword_1h/steel-2.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.05, poise_strength: 1.0, speed: 1.2, diff --git a/assets/common/items/weapons/sword_1h/steel-3.ron b/assets/common/items/weapons/sword_1h/steel-3.ron index 22bc629bef..4b588f7583 100644 --- a/assets/common/items/weapons/sword_1h/steel-3.ron +++ b/assets/common/items/weapons/sword_1h/steel-3.ron @@ -5,7 +5,7 @@ ItemDef( kind: Sword, hands: One, stats: ( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.2, poise_strength: 1.0, speed: 1.05, diff --git a/assets/common/items/weapons/tool/broom.ron b/assets/common/items/weapons/tool/broom.ron index ea4722b958..8740dd82b0 100644 --- a/assets/common/items/weapons/tool/broom.ron +++ b/assets/common/items/weapons/tool/broom.ron @@ -5,7 +5,7 @@ ItemDef( kind: Farming, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/tool/fishing_rod.ron b/assets/common/items/weapons/tool/fishing_rod.ron index 0ca7992bc3..4e82e5b915 100644 --- a/assets/common/items/weapons/tool/fishing_rod.ron +++ b/assets/common/items/weapons/tool/fishing_rod.ron @@ -5,7 +5,7 @@ ItemDef( kind: Farming, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/tool/hoe.ron b/assets/common/items/weapons/tool/hoe.ron index e311f62538..4b81521996 100644 --- a/assets/common/items/weapons/tool/hoe.ron +++ b/assets/common/items/weapons/tool/hoe.ron @@ -5,7 +5,7 @@ ItemDef( kind: Farming, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.5, speed: 1.0, diff --git a/assets/common/items/weapons/tool/pickaxe.ron b/assets/common/items/weapons/tool/pickaxe.ron index ce47e34a75..9e873b39f7 100644 --- a/assets/common/items/weapons/tool/pickaxe.ron +++ b/assets/common/items/weapons/tool/pickaxe.ron @@ -5,7 +5,7 @@ ItemDef( kind: Farming, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/tool/pitchfork.ron b/assets/common/items/weapons/tool/pitchfork.ron index fa46363371..7741143d54 100644 --- a/assets/common/items/weapons/tool/pitchfork.ron +++ b/assets/common/items/weapons/tool/pitchfork.ron @@ -5,7 +5,7 @@ ItemDef( kind: Farming, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 4.0, speed: 1.0, diff --git a/assets/common/items/weapons/tool/rake.ron b/assets/common/items/weapons/tool/rake.ron index 7164f20a0b..c44b545464 100644 --- a/assets/common/items/weapons/tool/rake.ron +++ b/assets/common/items/weapons/tool/rake.ron @@ -5,7 +5,7 @@ ItemDef( kind: Farming, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 1.0, speed: 1.0, diff --git a/assets/common/items/weapons/tool/shovel-0.ron b/assets/common/items/weapons/tool/shovel-0.ron index 48fb8a81aa..94d7c0a355 100644 --- a/assets/common/items/weapons/tool/shovel-0.ron +++ b/assets/common/items/weapons/tool/shovel-0.ron @@ -5,7 +5,7 @@ ItemDef( kind: Farming, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 2.0, speed: 1.0, diff --git a/assets/common/items/weapons/tool/shovel-1.ron b/assets/common/items/weapons/tool/shovel-1.ron index 6c647c97df..555f87d653 100644 --- a/assets/common/items/weapons/tool/shovel-1.ron +++ b/assets/common/items/weapons/tool/shovel-1.ron @@ -5,7 +5,7 @@ ItemDef( kind: Farming, hands: Two, stats: Direct(( - equip_time_millis: 400, + equip_time_secs: 0.4, power: 1.0, poise_strength: 2.0, speed: 1.0, diff --git a/assets/common/loot_tables/loot_table_armor_cloth.ron b/assets/common/loot_tables/loot_table_armor_cloth.ron index 5640a27b42..e05ff8303a 100644 --- a/assets/common/loot_tables/loot_table_armor_cloth.ron +++ b/assets/common/loot_tables/loot_table_armor_cloth.ron @@ -1,38 +1,38 @@ [ // belts - (0.33, "common.items.armor.belt.cloth_blue_0"), - (0.33, "common.items.armor.belt.cloth_green_0"), - (0.33, "common.items.armor.belt.cloth_purple_0"), + (0.33, "common.items.armor.cloth_blue.belt"), + (0.33, "common.items.armor.cloth_green.belt"), + (0.33, "common.items.armor.cloth_purple.belt"), // chests - (0.08, "common.items.armor.chest.cloth_blue_0"), - (0.08, "common.items.armor.chest.cloth_green_0"), - (0.08, "common.items.armor.chest.cloth_purple_0"), - (0.08, "common.items.armor.chest.worker_green_0"), - (0.08, "common.items.armor.chest.worker_green_1"), - (0.08, "common.items.armor.chest.worker_orange_0"), - (0.08, "common.items.armor.chest.worker_orange_1"), - (0.08, "common.items.armor.chest.worker_purple_0"), - (0.08, "common.items.armor.chest.worker_purple_1"), - (0.08, "common.items.armor.chest.worker_red_0"), - (0.08, "common.items.armor.chest.worker_red_1"), - (0.08, "common.items.armor.chest.worker_yellow_0"), - (0.08, "common.items.armor.chest.worker_yellow_1"), + (0.08, "common.items.armor.cloth_blue.chest"), + (0.08, "common.items.armor.cloth_green.chest"), + (0.08, "common.items.armor.cloth_purple.chest"), + (0.08, "common.items.armor.misc.chest.worker_green_0"), + (0.08, "common.items.armor.misc.chest.worker_green_1"), + (0.08, "common.items.armor.misc.chest.worker_orange_0"), + (0.08, "common.items.armor.misc.chest.worker_orange_1"), + (0.08, "common.items.armor.misc.chest.worker_purple_0"), + (0.08, "common.items.armor.misc.chest.worker_purple_1"), + (0.08, "common.items.armor.misc.chest.worker_red_0"), + (0.08, "common.items.armor.misc.chest.worker_red_1"), + (0.08, "common.items.armor.misc.chest.worker_yellow_0"), + (0.08, "common.items.armor.misc.chest.worker_yellow_1"), // shoes - (0.33, "common.items.armor.foot.cloth_blue_0"), - (0.33, "common.items.armor.foot.cloth_green_0"), - (0.33, "common.items.armor.foot.cloth_purple_0"), + (0.33, "common.items.armor.cloth_blue.foot"), + (0.33, "common.items.armor.cloth_green.foot"), + (0.33, "common.items.armor.cloth_purple.foot"), // pants - (0.25, "common.items.armor.pants.cloth_blue_0"), - (0.25, "common.items.armor.pants.cloth_green_0"), - (0.25, "common.items.armor.pants.cloth_purple_0"), - (0.25, "common.items.armor.pants.worker_blue_0"), + (0.25, "common.items.armor.cloth_blue.pants"), + (0.25, "common.items.armor.cloth_green.pants"), + (0.25, "common.items.armor.cloth_purple.pants"), + (0.25, "common.items.armor.misc.pants.worker_blue"), // shoulders - (0.25, "common.items.armor.shoulder.cloth_blue_0"), - (0.25, "common.items.armor.shoulder.cloth_blue_1"), - (0.25, "common.items.armor.shoulder.cloth_green_0"), - (0.25, "common.items.armor.shoulder.cloth_purple_0"), + (0.25, "common.items.armor.cloth_blue.shoulder_0"), + (0.25, "common.items.armor.cloth_blue.shoulder_1"), + (0.25, "common.items.armor.cloth_green.shoulder"), + (0.25, "common.items.armor.cloth_purple.shoulder"), //gloves - (0.33, "common.items.armor.hand.cloth_blue_0"), - (0.33, "common.items.armor.hand.cloth_green_0"), - (0.33, "common.items.armor.hand.cloth_purple_0"), + (0.33, "common.items.armor.cloth_blue.hand"), + (0.33, "common.items.armor.cloth_green.hand"), + (0.33, "common.items.armor.cloth_purple.hand"), ] diff --git a/assets/common/loot_tables/loot_table_armor_heavy.ron b/assets/common/loot_tables/loot_table_armor_heavy.ron index 66afe487b8..d855f91675 100644 --- a/assets/common/loot_tables/loot_table_armor_heavy.ron +++ b/assets/common/loot_tables/loot_table_armor_heavy.ron @@ -1,21 +1,21 @@ [ // belts - (0.67, "common.items.armor.belt.plate_0"), - (0.33, "common.items.armor.belt.steel_0"), + (0.67, "common.items.armor.plate.belt"), + (0.33, "common.items.armor.steel.belt"), // chests - (0.67, "common.items.armor.chest.plate_green_0"), - (0.33, "common.items.armor.chest.steel_0"), + (0.67, "common.items.armor.plate.chest"), + (0.33, "common.items.armor.steel.chest"), // shoes - (0.67, "common.items.armor.foot.plate_0"), - (0.33, "common.items.armor.foot.steel_0"), + (0.67, "common.items.armor.plate.foot"), + (0.33, "common.items.armor.steel.foot"), // pants - (0.67, "common.items.armor.pants.plate_green_0"), - (0.66, "common.items.armor.pants.steel_0"), + (0.67, "common.items.armor.plate.pants"), + (0.66, "common.items.armor.steel.pants"), // shoulders - (0.40, "common.items.armor.shoulder.plate_0"), - (0.37, "common.items.armor.shoulder.iron_spikes"), - (0.33, "common.items.armor.shoulder.steel_0"), + (0.40, "common.items.armor.plate.shoulder"), + (0.37, "common.items.armor.misc.shoulder.iron_spikes"), + (0.33, "common.items.armor.steel.shoulder"), //gloves - (0.67, "common.items.armor.hand.plate_0"), - (0.33, "common.items.armor.hand.steel_0"), + (0.67, "common.items.armor.plate.hand"), + (0.33, "common.items.armor.steel.hand"), ] \ No newline at end of file diff --git a/assets/common/loot_tables/loot_table_armor_light.ron b/assets/common/loot_tables/loot_table_armor_light.ron index e25ec5760c..6190933029 100644 --- a/assets/common/loot_tables/loot_table_armor_light.ron +++ b/assets/common/loot_tables/loot_table_armor_light.ron @@ -1,27 +1,27 @@ [ // belts - (0.50, "common.items.armor.belt.leather_0"), - (0.50, "common.items.armor.belt.leather_2"), + (0.50, "common.items.armor.swift.belt"), + (0.50, "common.items.armor.leather.belt"), // chests - (0.50, "common.items.armor.chest.leather_0"), - (0.50, "common.items.armor.chest.leather_2"), + (0.50, "common.items.armor.swift.chest"), + (0.50, "common.items.armor.leather.chest"), // shoes - (0.50, "common.items.armor.foot.leather_0"), - (0.50, "common.items.armor.foot.leather_2"), + (0.50, "common.items.armor.swift.foot"), + (0.50, "common.items.armor.leather.foot"), // pants - (0.33, "common.items.armor.pants.leather_0"), - (0.33, "common.items.armor.pants.leather_2"), - (0.33, "common.items.armor.pants.hunting"), + (0.33, "common.items.armor.swift.pants"), + (0.33, "common.items.armor.leather.pants"), + (0.33, "common.items.armor.misc.pants.hunting"), // shoulders - (0.10, "common.items.armor.shoulder.leather_strips"), - (0.20, "common.items.armor.shoulder.leather_0"), - (0.20, "common.items.armor.shoulder.leather_1"), - (0.20, "common.items.armor.shoulder.leather_2"), - (0.07, "common.items.armor.shoulder.leather_iron_0"), - (0.07, "common.items.armor.shoulder.leather_iron_1"), - (0.07, "common.items.armor.shoulder.leather_iron_2"), - (0.07, "common.items.armor.shoulder.leather_iron_3"), + (0.10, "common.items.armor.misc.shoulder.leather_strip"), + (0.20, "common.items.armor.swift.shoulder"), + (0.20, "common.items.armor.leather.shoulder"), + (0.20, "common.items.armor.agile.shoulder"), + (0.07, "common.items.armor.misc.shoulder.leather_iron_0"), + (0.07, "common.items.armor.misc.shoulder.leather_iron_1"), + (0.07, "common.items.armor.misc.shoulder.leather_iron_2"), + (0.07, "common.items.armor.misc.shoulder.leather_iron_3"), //gloves - (0.50, "common.items.armor.hand.leather_0"), - (0.50, "common.items.armor.hand.leather_2"), + (0.50, "common.items.armor.swift.hand"), + (0.50, "common.items.armor.leather.hand"), ] \ No newline at end of file diff --git a/assets/common/loot_tables/loot_table_armor_misc.ron b/assets/common/loot_tables/loot_table_armor_misc.ron index e7233b64f5..beba2e7b11 100644 --- a/assets/common/loot_tables/loot_table_armor_misc.ron +++ b/assets/common/loot_tables/loot_table_armor_misc.ron @@ -1,12 +1,12 @@ [ // rings - (0.15, "common.items.armor.ring.ring_0"), - (0.05, "common.items.armor.ring.ring_gold_0"), + (0.15, "common.items.armor.misc.ring.scratched"), + (0.05, "common.items.armor.misc.ring.gold"), // capes - (0.25, "common.items.armor.back.short_0"), - (0.25, "common.items.armor.back.short_1"), + (0.25, "common.items.armor.misc.back.short_0"), + (0.25, "common.items.armor.misc.back.short_1"), // necks - (0.25, "common.items.armor.neck.neck_0"), + (0.25, "common.items.armor.misc.neck.plain_0"), // misc (0.05, "common.items.glider.glider_blue"), ] \ No newline at end of file diff --git a/assets/common/loot_tables/loot_table_armor_nature.ron b/assets/common/loot_tables/loot_table_armor_nature.ron index fa371a7938..1bb0bb6531 100644 --- a/assets/common/loot_tables/loot_table_armor_nature.ron +++ b/assets/common/loot_tables/loot_table_armor_nature.ron @@ -1,32 +1,32 @@ [ // belts - (0.40, "common.items.armor.belt.druid"), - (0.20, "common.items.armor.belt.twig"), - (0.20, "common.items.armor.belt.twigsflowers"), - (0.20, "common.items.armor.belt.twigsleaves"), + (0.40, "common.items.armor.druid.belt"), + (0.20, "common.items.armor.twigs.belt"), + (0.20, "common.items.armor.twigsflowers.belt"), + (0.20, "common.items.armor.twigsleaves.belt"), // chests - (0.40, "common.items.armor.chest.druid"), - (0.20, "common.items.armor.chest.twig"), - (0.20, "common.items.armor.chest.twigsflowers"), - (0.20, "common.items.armor.chest.twigsleaves"), + (0.40, "common.items.armor.druid.chest"), + (0.20, "common.items.armor.twigs.chest"), + (0.20, "common.items.armor.twigsflowers.chest"), + (0.20, "common.items.armor.twigsleaves.chest"), // shoes - (0.40, "common.items.armor.foot.druid"), - (0.20, "common.items.armor.foot.twig"), - (0.20, "common.items.armor.foot.twigsflowers"), - (0.20, "common.items.armor.foot.twigsleaves"), + (0.40, "common.items.armor.druid.foot"), + (0.20, "common.items.armor.twigs.foot"), + (0.20, "common.items.armor.twigsflowers.foot"), + (0.20, "common.items.armor.twigsleaves.foot"), // pants - (0.40, "common.items.armor.pants.druid"), - (0.20, "common.items.armor.pants.twig"), - (0.20, "common.items.armor.pants.twigsflowers"), - (0.20, "common.items.armor.pants.twigsleaves"), + (0.40, "common.items.armor.druid.pants"), + (0.20, "common.items.armor.twigs.pants"), + (0.20, "common.items.armor.twigsflowers.pants"), + (0.20, "common.items.armor.twigsleaves.pants"), // shoulders - (0.40, "common.items.armor.shoulder.druidshoulder"), - (0.20, "common.items.armor.shoulder.twigs"), - (0.20, "common.items.armor.shoulder.twigsflowers"), - (0.20, "common.items.armor.shoulder.twigsleaves"), + (0.40, "common.items.armor.druid.shoulder"), + (0.20, "common.items.armor.twigs.shoulder"), + (0.20, "common.items.armor.twigsflowers.shoulder"), + (0.20, "common.items.armor.twigsleaves.shoulder"), //gloves - (0.40, "common.items.armor.hand.druid"), - (0.20, "common.items.armor.hand.twig"), - (0.20, "common.items.armor.hand.twigsflowers"), - (0.20, "common.items.armor.hand.twigsleaves"), + (0.40, "common.items.armor.druid.hand"), + (0.20, "common.items.armor.twigs.hand"), + (0.20, "common.items.armor.twigsflowers.hand"), + (0.20, "common.items.armor.twigsleaves.hand"), ] \ No newline at end of file diff --git a/assets/common/loot_tables/loot_table_cave_large.ron b/assets/common/loot_tables/loot_table_cave_large.ron index 11077acb9c..cdda48b38b 100644 --- a/assets/common/loot_tables/loot_table_cave_large.ron +++ b/assets/common/loot_tables/loot_table_cave_large.ron @@ -1,13 +1,13 @@ [ // Misc - (0.25, "common.items.armor.neck.neck_1"), + (0.25, "common.items.armor.misc.neck.plain_1"), (2.0, "common.items.crafting_ing.cloth_scraps"), (1.0, "common.items.crafting_ing.empty_vial"), (0.1, "common.items.glider.glider_blue"), (0.05, "common.items.glider.glider_morpho"), (0.05, "common.items.glider.glider_monarch"), (0.05, "common.items.glider.glider_moth"), - (0.05, "common.items.armor.ring.ring_gold_0"), + (0.05, "common.items.armor.misc.ring.gold"), // swords (0.03, "common.items.weapons.sword.steel-0"), (0.03, "common.items.weapons.sword.steel-1"), diff --git a/assets/common/loot_tables/loot_table_cultists.ron b/assets/common/loot_tables/loot_table_cultists.ron index 20dba99274..4acf24d46a 100644 --- a/assets/common/loot_tables/loot_table_cultists.ron +++ b/assets/common/loot_tables/loot_table_cultists.ron @@ -12,62 +12,62 @@ (0.5, "common.items.food.mushroom_stick"), // Misc (4, "common.items.crafting_ing.empty_vial"), - (0.25, "common.items.armor.neck.neck_1"), + (0.25, "common.items.armor.misc.neck.plain_1"), (0.001, "common.items.glider.glider_purp"), (0.1, "common.items.glider.glider_blue"), (0.5, "common.items.utility.firework_purple"), (0.5, "common.items.utility.bomb"), - (0.5, "common.items.armor.ring.ring_gold_0"), - (0.25, "common.items.armor.ring.ring_purp_high_0"), + (0.5, "common.items.armor.misc.ring.gold"), + (0.25, "common.items.armor.misc.ring.skull"), // Heavy Armour // belts - (0.5, "common.items.armor.belt.plate_0"), - (0.3, "common.items.armor.belt.steel_0"), + (0.5, "common.items.armor.plate.belt"), + (0.3, "common.items.armor.steel.belt"), // chests - (0.5, "common.items.armor.chest.plate_green_0"), - (0.3, "common.items.armor.chest.steel_0"), + (0.5, "common.items.armor.plate.chest"), + (0.3, "common.items.armor.steel.chest"), // shoes - (0.5, "common.items.armor.foot.plate_0"), - (0.3, "common.items.armor.foot.steel_0"), + (0.5, "common.items.armor.plate.foot"), + (0.3, "common.items.armor.steel.foot"), // pants - (0.5, "common.items.armor.pants.plate_green_0"), - (0.3, "common.items.armor.pants.steel_0"), + (0.5, "common.items.armor.plate.pants"), + (0.3, "common.items.armor.steel.pants"), // shoulders - (0.40, "common.items.armor.shoulder.plate_0"), - (0.37, "common.items.armor.shoulder.iron_spikes"), - (0.33, "common.items.armor.shoulder.steel_0"), + (0.40, "common.items.armor.plate.shoulder"), + (0.37, "common.items.armor.misc.shoulder.iron_spikes"), + (0.33, "common.items.armor.steel.shoulder"), //gloves - (0.67, "common.items.armor.hand.plate_0"), - (0.33, "common.items.armor.hand.steel_0"), + (0.67, "common.items.armor.plate.hand"), + (0.33, "common.items.armor.steel.hand"), //Light Armour // belts - (0.50, "common.items.armor.belt.leather_0"), - (0.50, "common.items.armor.belt.leather_2"), + (0.50, "common.items.armor.swift.belt"), + (0.50, "common.items.armor.leather.belt"), // chests - (0.50, "common.items.armor.chest.leather_0"), - (0.50, "common.items.armor.chest.leather_2"), + (0.50, "common.items.armor.swift.chest"), + (0.50, "common.items.armor.leather.chest"), // shoes - (0.50, "common.items.armor.foot.leather_0"), - (0.50, "common.items.armor.foot.leather_2"), + (0.50, "common.items.armor.swift.foot"), + (0.50, "common.items.armor.leather.foot"), // pants - (0.33, "common.items.armor.pants.leather_0"), - (0.33, "common.items.armor.pants.leather_2"), - (0.33, "common.items.armor.pants.hunting"), + (0.33, "common.items.armor.swift.pants"), + (0.33, "common.items.armor.leather.pants"), + (0.33, "common.items.armor.misc.pants.hunting"), // shoulders - (0.6, "common.items.armor.shoulder.leather_strips"), - (0.4, "common.items.armor.shoulder.leather_0"), - (0.4, "common.items.armor.shoulder.leather_1"), - (0.4, "common.items.armor.shoulder.leather_2"), - (0.3, "common.items.armor.shoulder.leather_iron_0"), - (0.3, "common.items.armor.shoulder.leather_iron_1"), - (0.3, "common.items.armor.shoulder.leather_iron_2"), - (0.3, "common.items.armor.shoulder.leather_iron_3"), + (0.6, "common.items.armor.misc.shoulder.leather_strip"), + (0.4, "common.items.armor.swift.shoulder"), + (0.4, "common.items.armor.leather.shoulder"), + (0.4, "common.items.armor.misc.shoulder.leather_3"), + (0.3, "common.items.armor.misc.shoulder.leather_iron_0"), + (0.3, "common.items.armor.misc.shoulder.leather_iron_1"), + (0.3, "common.items.armor.misc.shoulder.leather_iron_2"), + (0.3, "common.items.armor.misc.shoulder.leather_iron_3"), //gloves - (0.50, "common.items.armor.hand.leather_0"), - (0.50, "common.items.armor.hand.leather_2"), + (0.50, "common.items.armor.swift.hand"), + (0.50, "common.items.armor.leather.hand"), //backpack - (0.001, "common.items.armor.back.backpack_0"), - (0.1, "common.items.armor.bag.heavy_seabag"), + (0.001, "common.items.armor.misc.back.backpack"), + (0.1, "common.items.armor.misc.bag.heavy_seabag"), // Common Weapons // swords (0.10, "common.items.weapons.sword.wood-0"), @@ -221,4 +221,4 @@ (0.10, "common.items.weapons.bow.eldwood-1"), (0.10, "common.items.weapons.bow.eldwood-2"), (0.001, "common.items.weapons.bow.sagitta"), -] +] \ No newline at end of file diff --git a/assets/common/loot_tables/loot_table_humanoids.ron b/assets/common/loot_tables/loot_table_humanoids.ron index 67c6b966e1..cbaeadef71 100644 --- a/assets/common/loot_tables/loot_table_humanoids.ron +++ b/assets/common/loot_tables/loot_table_humanoids.ron @@ -6,7 +6,7 @@ // Consumables (0.2, "common.items.consumable.potion_minor"), // Ring - (0.02, "common.items.armor.ring.ring_gold_0"), + (0.02, "common.items.armor.misc.ring.gold"), // Utility (0.05, "common.items.utility.collar"), // Food diff --git a/assets/common/loot_tables/loot_table_mindflayer.ron b/assets/common/loot_tables/loot_table_mindflayer.ron index 7d5da8547c..b5f4b266bc 100644 --- a/assets/common/loot_tables/loot_table_mindflayer.ron +++ b/assets/common/loot_tables/loot_table_mindflayer.ron @@ -1,12 +1,12 @@ [ // armor - (1, "common.items.armor.belt.cultist_belt"), - (1, "common.items.armor.chest.cultist_chest_purple"), - (1, "common.items.armor.foot.cultist_boots"), - (1, "common.items.armor.hand.cultist_hands_purple"), - (1, "common.items.armor.pants.cultist_legs_purple"), - (1, "common.items.armor.shoulder.cultist_shoulder_purple"), - (1, "common.items.armor.back.dungeon_purple-0"), + (1, "common.items.armor.cultist.belt"), + (1, "common.items.armor.cultist.chest"), + (1, "common.items.armor.cultist.foot"), + (1, "common.items.armor.cultist.hand"), + (1, "common.items.armor.cultist.pants"), + (1, "common.items.armor.cultist.shoulder"), + (1, "common.items.armor.misc.back.dungeon_purple"), // weapons (1, "common.items.weapons.staff.cultist_staff"), (1, "common.items.weapons.hammer.cultist_purp_2h-0"), diff --git a/assets/common/loot_tables/loot_table_miniboss.ron b/assets/common/loot_tables/loot_table_miniboss.ron index 763756cba4..1d8f6555c9 100644 --- a/assets/common/loot_tables/loot_table_miniboss.ron +++ b/assets/common/loot_tables/loot_table_miniboss.ron @@ -1,13 +1,13 @@ [ // armor - (1, "common.items.armor.belt.cultist_belt"), - (1, "common.items.armor.chest.cultist_chest_purple"), - (1, "common.items.armor.foot.cultist_boots"), - (1, "common.items.armor.hand.cultist_hands_purple"), - (1, "common.items.armor.pants.cultist_legs_purple"), - (1, "common.items.armor.shoulder.cultist_shoulder_purple"), - (1, "common.items.armor.back.dungeon_purple-0"), - (1, "common.items.armor.ring.ring_purp_high_0"), + (1, "common.items.armor.cultist.belt"), + (1, "common.items.armor.cultist.chest"), + (1, "common.items.armor.cultist.foot"), + (1, "common.items.armor.cultist.hand"), + (1, "common.items.armor.cultist.pants"), + (1, "common.items.armor.cultist.shoulder"), + (1, "common.items.armor.misc.back.dungeon_purple"), + (1, "common.items.armor.misc.ring.skull"), // weapons (1, "common.items.weapons.staff.cultist_staff"), (1, "common.items.weapons.hammer.cultist_purp_2h-0"), diff --git a/assets/common/loot_tables/loot_table_saurok.ron b/assets/common/loot_tables/loot_table_saurok.ron index 950ac51b7b..830f8dc884 100644 --- a/assets/common/loot_tables/loot_table_saurok.ron +++ b/assets/common/loot_tables/loot_table_saurok.ron @@ -6,11 +6,11 @@ // Consumables (0.5, "common.items.consumable.potion_minor"), // Ring - (0.2, "common.items.armor.ring.ring_gold_0"), + (0.2, "common.items.armor.misc.ring.gold"), // Utility (0.1, "common.items.utility.collar"), // Bag - (0.1, "common.items.armor.bag.liana_kit"), + (0.1, "common.items.armor.misc.bag.liana_kit"), // Food (2.0, "common.items.food.coconut"), (0.3, "common.items.food.apple_mushroom_curry"), diff --git a/assets/common/loot_tables/loot_table_villager.ron b/assets/common/loot_tables/loot_table_villager.ron index 03189946ab..7ed913701c 100644 --- a/assets/common/loot_tables/loot_table_villager.ron +++ b/assets/common/loot_tables/loot_table_villager.ron @@ -7,17 +7,17 @@ // Consumables (0.2, "common.items.consumable.potion_minor"), // Armour - (1, "common.items.armor.chest.worker_green_0"), - (1, "common.items.armor.chest.worker_green_1"), - (1, "common.items.armor.chest.worker_orange_0"), - (1, "common.items.armor.chest.worker_orange_1"), - (1, "common.items.armor.chest.worker_purple_0"), - (1, "common.items.armor.chest.worker_purple_1"), - (1, "common.items.armor.chest.worker_red_0"), - (1, "common.items.armor.chest.worker_red_1"), - (1, "common.items.armor.chest.worker_yellow_0"), - (1, "common.items.armor.chest.worker_yellow_1"), - (1, "common.items.armor.pants.worker_blue_0"), + (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_orange_0"), + (1, "common.items.armor.misc.chest.worker_orange_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_red_0"), + (1, "common.items.armor.misc.chest.worker_red_1"), + (1, "common.items.armor.misc.chest.worker_yellow_0"), + (1, "common.items.armor.misc.chest.worker_yellow_1"), + (1, "common.items.armor.misc.pants.worker_blue_0"), // Utility (0.05, "common.items.utility.collar"), // Food diff --git a/assets/common/material_stats_manifest.ron b/assets/common/material_stats_manifest.ron index 4ce0747fcb..9f7ffecd88 100644 --- a/assets/common/material_stats_manifest.ron +++ b/assets/common/material_stats_manifest.ron @@ -1,43 +1,43 @@ -// Keep in mind that material stats are multiplied by the form stats, not added (e.g. equip_time_millis is most sensitive to this) +// Keep in mind that material stats are multiplied by the form stats, not added (e.g. equip_time_secs is most sensitive to this) ({ "common.items.crafting_ing.bloodsteel_ingot": ( - equip_time_millis: 1, + equip_time_secs: 1.0, power: 1.75, poise_strength: 1.75, speed: 1.75, ), "common.items.crafting_ing.bronze_ingot": ( - equip_time_millis: 1, + equip_time_secs: 1.0, power: 0.75, poise_strength: 0.75, speed: 0.75, ), "common.items.crafting_ing.cobalt_ingot": ( - equip_time_millis: 1, + equip_time_secs: 1.0, power: 1.5, poise_strength: 1.5, speed: 1.5, ), "common.items.crafting_ing.copper_ingot": ( - equip_time_millis: 1, + equip_time_secs: 1.0, power: 0.4, poise_strength: 0.4, speed: 0.4, ), "common.items.crafting_ing.iron_ingot": ( - equip_time_millis: 1, + equip_time_secs: 1.0, power: 1.0, poise_strength: 1.0, speed: 1.0, ), "common.items.crafting_ing.steel_ingot": ( - equip_time_millis: 1, + equip_time_secs: 1.0, power: 1.25, poise_strength: 1.25, speed: 1.25, ), "common.items.crafting_ing.tin_ingot": ( - equip_time_millis: 1, + equip_time_secs: 1.0, power: 0.25, poise_strength: 0.25, speed: 0.25, diff --git a/assets/common/recipe_book.ron b/assets/common/recipe_book.ron index 2ab62ad899..bed5fe2810 100644 --- a/assets/common/recipe_book.ron +++ b/assets/common/recipe_book.ron @@ -252,35 +252,35 @@ ], ), "adventure back": ( - ("common.items.armor.back.leather_adventurer", 1), + ("common.items.armor.agile.back", 1), [(Item("common.items.crafting_ing.leather_scraps"), 4)], ), "adventure belt": ( - ("common.items.armor.belt.leather_adventurer", 1), + ("common.items.armor.agile.belt", 1), [(Item("common.items.crafting_ing.leather_scraps"), 2)], ), "adventure chest": ( - ("common.items.armor.chest.leather_adventurer", 1), + ("common.items.armor.agile.chest", 1), [(Item("common.items.crafting_ing.leather_scraps"), 12)], ), "adventure feet": ( - ("common.items.armor.foot.leather_adventurer", 1), + ("common.items.armor.agile.foot", 1), [(Item("common.items.crafting_ing.leather_scraps"), 3)], ), "adventure hands": ( - ("common.items.armor.hand.leather_adventurer", 1), + ("common.items.armor.agile.hand", 1), [(Item("common.items.crafting_ing.leather_scraps"), 4)], ), "adventure pants": ( - ("common.items.armor.pants.leather_adventurer", 1), + ("common.items.armor.agile.pants", 1), [(Item("common.items.crafting_ing.leather_scraps"), 8)], ), "adventure shoulder": ( - ("common.items.armor.shoulder.leather_adventurer", 1), + ("common.items.armor.agile.shoulder", 1), [(Item("common.items.crafting_ing.leather_scraps"), 12)], ), "Seashell Necklace": ( - ("common.items.armor.neck.neck_2", 1), + ("common.items.armor.misc.neck.shell", 1), [ (Item("common.items.crafting_ing.cloth_scraps"), 2), (Item("common.items.crafting_ing.sapphire"), 1), @@ -297,57 +297,57 @@ ], ), "tiny red pouch": ( - ("common.items.armor.bag.tiny_red_pouch", 1), + ("common.items.armor.misc.bag.tiny_red_pouch", 1), [ (Item("common.items.crafting_ing.cloth_scraps_red"), 3), (Item("common.items.crafting_tools.sewing_set"), 0), ], ), "tiny leather pouch": ( - ("common.items.armor.bag.tiny_leather_pouch", 1), + ("common.items.armor.misc.bag.tiny_leather_pouch", 1), [ (Item("common.items.crafting_ing.leather_scraps"), 6), (Item("common.items.crafting_tools.sewing_set"), 0), ], ), "knitted red pouch": ( - ("common.items.armor.bag.knitted_red_pouch", 1), + ("common.items.armor.misc.bag.knitted_red_pouch", 1), [ (Item("common.items.crafting_ing.cloth_scraps_red"), 3), - (Item("common.items.armor.bag.tiny_red_pouch"), 2), + (Item("common.items.armor.misc.bag.tiny_red_pouch"), 2), (Item("common.items.crafting_tools.sewing_set"), 0), ], ), "woven red bag": ( - ("common.items.armor.bag.woven_red_bag", 1), + ("common.items.armor.misc.bag.woven_red_bag", 1), [ (Item("common.items.crafting_ing.cloth_scraps_red"), 6), - (Item("common.items.armor.bag.knitted_red_pouch"), 1), + (Item("common.items.armor.misc.bag.knitted_red_pouch"), 1), (Item("common.items.crafting_tools.sewing_set"), 0), ], ), "traveler backpack": ( - ("common.items.armor.back.backpack_0", 1), + ("common.items.armor.misc.back.backpack", 1), [ (Item("common.items.crafting_ing.diamond"), 2), (Item("common.items.crafting_ing.twigs"), 2), (Item("common.items.crafting_ing.cloth_scraps"), 3), (Item("common.items.crafting_ing.leather_scraps"), 3), - (Item("common.items.armor.bag.tiny_leather_pouch"), 2), + (Item("common.items.armor.misc.bag.tiny_leather_pouch"), 2), (Item("common.items.crafting_tools.sewing_set"), 0), ], ), "sturdy red backpack": ( - ("common.items.armor.bag.sturdy_red_backpack", 1), + ("common.items.armor.misc.bag.sturdy_red_backpack", 1), [ (Item("common.items.crafting_ing.diamond"), 2), (Item("common.items.crafting_ing.cloth_scraps_red"), 3), - (Item("common.items.armor.bag.woven_red_bag"), 1), + (Item("common.items.armor.misc.bag.woven_red_bag"), 1), (Item("common.items.crafting_tools.sewing_set"), 0), ], ), "troll hide pack": ( - ("common.items.armor.bag.troll_hide_pack", 1), + ("common.items.armor.misc.bag.troll_hide_pack", 1), [ (Item("common.items.crafting_ing.leather_troll"), 10), (Item("common.items.crafting_ing.leather_scraps"), 10), @@ -356,7 +356,7 @@ ], ), "Mindflayer Spellbag": ( - ("common.items.armor.bag.mindflayer_spellbag", 1), + ("common.items.armor.misc.bag.mindflayer_spellbag", 1), [ (Item("common.items.crafting_ing.mindflayer_bag_damaged"), 1), (Item("common.items.crafting_ing.leather_scraps"), 10), diff --git a/assets/voxygen/element/icons/de_buffs/buff_invincibility_0.png b/assets/voxygen/element/icons/de_buffs/buff_invincibility_0.png new file mode 100644 index 0000000000..e122097434 Binary files /dev/null and b/assets/voxygen/element/icons/de_buffs/buff_invincibility_0.png differ diff --git a/assets/voxygen/i18n/de_DE/_manifest.ron b/assets/voxygen/i18n/de_DE/_manifest.ron index 08ef6db554..4326243bf3 100644 --- a/assets/voxygen/i18n/de_DE/_manifest.ron +++ b/assets/voxygen/i18n/de_DE/_manifest.ron @@ -537,8 +537,8 @@ Willenskraft "buff.title.heal": "HoT Buff Test", "buff.desc.heal": "HoT Buff Test", // Debuffs - "debuff.title.bleed": "Blutung", - "debuff.desc.bleed": "Fügt regelmäßig Schaden zu.", + "buff.title.bleed": "Blutung", + "buff.desc.bleed": "Fügt regelmäßig Schaden zu.", }, vector_map: { diff --git a/assets/voxygen/i18n/en/buff.ron b/assets/voxygen/i18n/en/buff.ron index b1a8b8a401..1c0de6e367 100644 --- a/assets/voxygen/i18n/en/buff.ron +++ b/assets/voxygen/i18n/en/buff.ron @@ -3,6 +3,7 @@ /// Localization for "global" English ( string_map: { + // Buffs "buff.remove": "Click to remove", "buff.title.missing": "Missing Title", "buff.desc.missing": "Missing Description", @@ -14,6 +15,13 @@ "buff.desc.saturation": "Gain health over time from consumables.", "buff.title.campfire_heal": "Campfire Heal", "buff.desc.campfire_heal": "Resting at a campfire heals 1% per second.", + "buff.title.invulnerability": "Invulnerability", + "buff.desc.invulnerability": "You cannot be damaged by any attack.", + // Debuffs + "buff.title.bleed": "Bleeding", + "buff.desc.bleed": "Inflicts regular damage.", + "buff.title.cursed": "Cursed", + "buff.desc.cursed": "You are cursed.", }, diff --git a/assets/voxygen/i18n/en/debuff.ron b/assets/voxygen/i18n/en/debuff.ron deleted file mode 100644 index df35b4df6b..0000000000 --- a/assets/voxygen/i18n/en/debuff.ron +++ /dev/null @@ -1,13 +0,0 @@ -/// WARNING: Localization files shall be saved in UTF-8 format without BOM - -/// Localization for "global" English -( - string_map: { - "debuff.title.bleed": "Bleeding", - "debuff.desc.bleed": "Inflicts regular damage.", - }, - - - vector_map: { - } -) diff --git a/assets/voxygen/i18n/en/hud/trade.ron b/assets/voxygen/i18n/en/hud/trade.ron index cb2c0364f7..7d4ecd2ad9 100644 --- a/assets/voxygen/i18n/en/hud/trade.ron +++ b/assets/voxygen/i18n/en/hud/trade.ron @@ -4,7 +4,7 @@ ( string_map: { "hud.trade.trade_window": "Trade window", - "hud.trade.phase1_description": "Drag the items you want to trade\n into your area.", + "hud.trade.phase1_description": "Drag the items you want to trade\n into the corresponding area.", "hud.trade.phase2_description": "The trade is now locked to give you\n time to review it.", /// Phase3 should only be visible for a few milliseconds if everything is working properly, but is included for completeness "hud.trade.phase3_description": "Trade is being processed.", diff --git a/assets/voxygen/i18n/es_la/_manifest.ron b/assets/voxygen/i18n/es_la/_manifest.ron index 31104e3192..e54485fc71 100644 --- a/assets/voxygen/i18n/es_la/_manifest.ron +++ b/assets/voxygen/i18n/es_la/_manifest.ron @@ -554,8 +554,8 @@ Protección "buff.title.campfire_heal": "Curación de fogata", "buff.desc.campfire_heal": "Descansar en una fogata recupera 1% por segundo.", // Debuffs - "debuff.title.bleed": "Sangrando", - "debuff.desc.bleed": "Inflinge daño regularmente.", + "buff.title.bleed": "Sangrando", + "buff.desc.bleed": "Inflinge daño regularmente.", }, diff --git a/assets/voxygen/i18n/fr_FR/_manifest.ron b/assets/voxygen/i18n/fr_FR/_manifest.ron index ab8b149da9..1a5dc72d59 100644 --- a/assets/voxygen/i18n/fr_FR/_manifest.ron +++ b/assets/voxygen/i18n/fr_FR/_manifest.ron @@ -533,8 +533,8 @@ Protection "buff.title.campfire_heal": "Soin autour d'un feu de camp", "buff.desc.campfire_heal": "Se reposer à côté d'un feu de camp restaure 1% de santé par seconde.", // Debuffs - "debuff.title.bleed": "Saignement", - "debuff.desc.bleed": "Inflige régulièrement des dommages.", + "buff.title.bleed": "Saignement", + "buff.desc.bleed": "Inflige régulièrement des dommages.", }, diff --git a/assets/voxygen/i18n/no/_manifest.ron b/assets/voxygen/i18n/no/_manifest.ron index fa9fc1de15..9e6a7677c3 100644 --- a/assets/voxygen/i18n/no/_manifest.ron +++ b/assets/voxygen/i18n/no/_manifest.ron @@ -534,8 +534,8 @@ Beskyttelse "buff.title.saturation": "Metning", "buff.desc.saturation": "Helbred over tid fra forbruksvarer.", // Debuffs - "debuff.title.bleed": "Blør", - "debuff.desc.bleed": "Påfører regelmessig skade.", + "buff.title.bleed": "Blør", + "buff.desc.bleed": "Påfører regelmessig skade.", }, diff --git a/assets/voxygen/i18n/pt_BR/buff.ron b/assets/voxygen/i18n/pt_BR/buff.ron index bd6ff52ca2..f473aa96dc 100644 --- a/assets/voxygen/i18n/pt_BR/buff.ron +++ b/assets/voxygen/i18n/pt_BR/buff.ron @@ -14,6 +14,8 @@ "buff.desc.saturation": "Ganha vida no decorrer do tempo através de consumíveis.", "buff.title.campfire_heal": "Cura de Acampamento", "buff.desc.campfire_heal": "Descansar próximo a uma fogueira de acampamento cura 1% de vida por segundo.", + "buff.title.bleed": "Sangramento", + "buff.desc.bleed": "Inflige Dano contínuo.", }, diff --git a/assets/voxygen/i18n/pt_BR/debuff.ron b/assets/voxygen/i18n/pt_BR/debuff.ron deleted file mode 100644 index 947d2fb6d5..0000000000 --- a/assets/voxygen/i18n/pt_BR/debuff.ron +++ /dev/null @@ -1,13 +0,0 @@ -/// CUIDADO: Arquivos de tradução devem ser criados no formato UTF-8 sem Marca de Ordem de byte - BOM(https://pt.wikipedia.org/wiki/Marca_de_ordem_de_byte) - -/// Localization for Portuguese (Brazil) -( - string_map: { - "debuff.title.bleed": "Sangramento", - "debuff.desc.bleed": "Inflige Dano contínuo.", - }, - - - vector_map: { - } -) diff --git a/assets/voxygen/i18n/ru_RU/_manifest.ron b/assets/voxygen/i18n/ru_RU/_manifest.ron index d5effe23ef..59cccf95fe 100644 --- a/assets/voxygen/i18n/ru_RU/_manifest.ron +++ b/assets/voxygen/i18n/ru_RU/_manifest.ron @@ -550,8 +550,8 @@ https://veloren.net/account/."#, "buff.title.saturation": "Сыт", "buff.desc.saturation": "Получайте здоровье от расходников в течении времени.", // Debuffs - "debuff.title.bleed": "Кровотечение", - "debuff.desc.bleed": "Наносит переодический урон.", + "buff.title.bleed": "Кровотечение", + "buff.desc.bleed": "Наносит переодический урон.", }, diff --git a/assets/voxygen/i18n/tr_TR/buff.ron b/assets/voxygen/i18n/tr_TR/buff.ron index 9ebea8bd2e..398ed2acd9 100644 --- a/assets/voxygen/i18n/tr_TR/buff.ron +++ b/assets/voxygen/i18n/tr_TR/buff.ron @@ -14,6 +14,8 @@ "buff.desc.saturation": "Tüketilebilen maddelerden zamanla can kazan.", "buff.title.campfire_heal": "Kamp Ateşi", "buff.desc.campfire_heal": "Kamp ateşinin yakınında oturmak canını saniyede %1 iyileştirir.", + "buff.title.bleed": "Kanama", + "buff.desc.bleed": "Devamlı hasar verir.", }, vector_map: { diff --git a/assets/voxygen/i18n/tr_TR/debuff.ron b/assets/voxygen/i18n/tr_TR/debuff.ron deleted file mode 100644 index b61b4557f5..0000000000 --- a/assets/voxygen/i18n/tr_TR/debuff.ron +++ /dev/null @@ -1,13 +0,0 @@ -/// WARNING: Localization files shall be saved in UTF-8 format without BOM - -/// Localization for Turkish (Turkey) -( - string_map: { - "debuff.title.bleed": "Kanama", - "debuff.desc.bleed": "Devamlı hasar verir.", - }, - - - vector_map: { - } -) diff --git a/assets/voxygen/i18n/uk_UA/buff.ron b/assets/voxygen/i18n/uk_UA/buff.ron index 81ce8a6b4c..9859b7b660 100644 --- a/assets/voxygen/i18n/uk_UA/buff.ron +++ b/assets/voxygen/i18n/uk_UA/buff.ron @@ -14,6 +14,8 @@ "buff.desc.saturation": "Поступово відновлює здоров'я з їжі.", "buff.title.campfire_heal": "Відновлення біля ватри", "buff.desc.campfire_heal": "Відпочинок біля ватри лікує на 1% за секунду.", + "buff.title.bleed": "Кровотеча", + "buff.desc.bleed": "Наносить регулярні ушкодження.", }, diff --git a/assets/voxygen/i18n/uk_UA/debuff.ron b/assets/voxygen/i18n/uk_UA/debuff.ron deleted file mode 100644 index 477443db4c..0000000000 --- a/assets/voxygen/i18n/uk_UA/debuff.ron +++ /dev/null @@ -1,13 +0,0 @@ -/// WARNING: Localization files shall be saved in UTF-8 format without BOM - -/// Localization for Ukrainian -( - string_map: { - "debuff.title.bleed": "Кровотеча", - "debuff.desc.bleed": "Наносить регулярні ушкодження.", - }, - - - vector_map: { - } -) diff --git a/assets/voxygen/item_image_manifest.ron b/assets/voxygen/item_image_manifest.ron index c2e670c504..256e70decb 100644 --- a/assets/voxygen/item_image_manifest.ron +++ b/assets/voxygen/item_image_manifest.ron @@ -980,663 +980,672 @@ ), // Armor // Starter Parts - Armor(Foot("Sandal0")): VoxTrans( - "voxel.armor.foot.cloth_sandals", + Armor(Foot("Sandal")): VoxTrans( + "voxel.armor.misc.foot.cloth_sandal", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Pants("Rugged0")): VoxTrans( - "voxel.armor.pants.rugged-0", + Armor(Pants("Rugged")): VoxTrans( + "voxel.armor.rugged.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Chest("Rugged0")): VoxTrans( - "voxel.armor.chest.rugged-0", + Armor(Chest("Rugged")): VoxTrans( + "voxel.armor.rugged.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), // Cultist Clothing - Armor(Chest("CultistPurple")): VoxTrans( - "voxel.armor.chest.cultist", + Armor(Chest("Cultist")): VoxTrans( + "voxel.armor.cultist.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("CultistPurple")): VoxTrans( - "voxel.armor.pants.cultist", + Armor(Pants("Cultist")): VoxTrans( + "voxel.armor.cultist.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Belt("Cultist")): VoxTrans( - "voxel.armor.belt.cultist", + "voxel.armor.cultist.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.4, ), Armor(Foot("Cultist")): VoxTrans( - "voxel.armor.foot.cultist", + "voxel.armor.cultist.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Hand("CultistPurple")): VoxTrans( - "voxel.armor.hand.cultist_right", + Armor(Hand("Cultist")): VoxTrans( + "voxel.armor.cultist.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("CultistPurple")): VoxTrans( - "voxel.armor.shoulder.cultist_right", + Armor(Shoulder("Cultist")): VoxTrans( + "voxel.armor.cultist.shoulder", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Chest("CultistBlue")): VoxTrans( - "voxel.armor.chest.cultist", + Armor(Chest("Cultist")): VoxTrans( + "voxel.armor.cultist.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("CultistBlue")): VoxTrans( - "voxel.armor.pants.cultist", + Armor(Pants("Cultist")): VoxTrans( + "voxel.armor.cultist.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Hand("CultistBlue")): VoxTrans( - "voxel.armor.hand.cultist_right", + Armor(Hand("Cultist")): VoxTrans( + "voxel.armor.cultist.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("CultistBlue")): VoxTrans( - "voxel.armor.shoulder.cultist_right", + Armor(Shoulder("Cultist")): VoxTrans( + "voxel.armor.cultist.shoulder", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), // Druid Set Armor(Chest("Druid")): VoxTrans( - "voxel.armor.chest.druid", + "voxel.armor.druid.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Pants("Druid")): VoxTrans( - "voxel.armor.pants.druid", + "voxel.armor.druid.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Belt("Druid")): VoxTrans( - "voxel.armor.belt.druid", + "voxel.armor.druid.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.4, ), Armor(Foot("Druid")): VoxTrans( - "voxel.armor.foot.druid", + "voxel.armor.druid.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), Armor(Hand("Druid")): VoxTrans( - "voxel.armor.hand.druid_right", + "voxel.armor.druid.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("DruidShoulder")): VoxTrans( - "voxel.armor.shoulder.druid_right", + Armor(Shoulder("Druid")): VoxTrans( + "voxel.armor.druid.shoulder", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), // Villager Clothing - Armor(Pants("WorkerBlue0")): VoxTrans( - "voxel.armor.pants.worker_blue-0", + Armor(Pants("WorkerBlue")): VoxTrans( + "voxel.armor.misc.pants.worker_blue", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Chest("WorkerGreen0")): VoxTrans( - "voxel.armor.chest.worker_green-0", + "voxel.armor.misc.chest.worker_green", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Chest("WorkerGreen1")): VoxTrans( - "voxel.armor.chest.shirt_white-0", + "voxel.armor.misc.chest.shirt_white", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Chest("WorkerRed0")): VoxTrans( - "voxel.armor.chest.worker_green-0", + "voxel.armor.misc.chest.worker_green", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Chest("WorkerRed1")): VoxTrans( - "voxel.armor.chest.shirt_white-0", + "voxel.armor.misc.chest.shirt_white", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Chest("WorkerPurple0")): VoxTrans( - "voxel.armor.chest.worker_green-0", + "voxel.armor.misc.chest.worker_green", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Chest("WorkerPurple1")): VoxTrans( - "voxel.armor.chest.shirt_white-0", + "voxel.armor.misc.chest.shirt_white", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Chest("WorkerYellow0")): VoxTrans( - "voxel.armor.chest.worker_green-0", + "voxel.armor.misc.chest.worker_green", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Chest("WorkerYellow1")): VoxTrans( - "voxel.armor.chest.shirt_white-0", + "voxel.armor.misc.chest.shirt_white", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Chest("WorkerOrange0")): VoxTrans( - "voxel.armor.chest.worker_green-0", + "voxel.armor.misc.chest.worker_green", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Chest("WorkerOrange1")): VoxTrans( - "voxel.armor.chest.shirt_white-0", + "voxel.armor.misc.chest.shirt_white", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), // Velorite Battlemage Set - Armor(Chest("VeloriteMage0")): VoxTrans( - "voxel.armor.chest.velorite_battlemage", + Armor(Chest("VeloriteMage")): VoxTrans( + "voxel.armor.velorite_battlemage.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("VeloriteMage0")): VoxTrans( - "voxel.armor.pants.velorite_battlemage", + Armor(Pants("VeloriteMage")): VoxTrans( + "voxel.armor.velorite_battlemage.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Belt("VeloriteMage0")): VoxTrans( - "voxel.armor.belt.velorite_battlemage", + Armor(Belt("VeloriteMage")): VoxTrans( + "voxel.armor.velorite_battlemage.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, ), - Armor(Foot("VeloriteMage0")): VoxTrans( - "voxel.armor.foot.velorite_battlemage", + Armor(Foot("VeloriteMage")): VoxTrans( + "voxel.armor.velorite_battlemage.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Hand("VeloriteMage0")): VoxTrans( - "voxel.armor.hand.velorite_battlemage_left", + Armor(Hand("VeloriteMage")): VoxTrans( + "voxel.armor.velorite_battlemage.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("VeloriteMage0")): VoxTrans( - "voxel.armor.shoulder.velorite_battlemage_left", + Armor(Shoulder("VeloriteMage")): VoxTrans( + "voxel.armor.velorite_battlemage.shoulder", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Back("VeloriteMage0")): VoxTrans( - "voxel.armor.back.velorite_battlemage", + Armor(Back("VeloriteMage")): VoxTrans( + "voxel.armor.velorite_battlemage.back", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), // Assassin Set Armor(Chest("Assassin")): VoxTrans( - "voxel.armor.chest.assa", + "voxel.armor.assassin.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Pants("Assassin")): VoxTrans( - "voxel.armor.pants.assa", + "voxel.armor.assassin.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Belt("Assassin")): VoxTrans( - "voxel.armor.belt.assa", + "voxel.armor.assassin.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, ), Armor(Foot("Assassin")): VoxTrans( - "voxel.armor.foot.assa", + "voxel.armor.assassin.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), Armor(Hand("Assassin")): VoxTrans( - "voxel.armor.hand.assa_right", + "voxel.armor.assassin.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), Armor(Shoulder("Assassin")): VoxTrans( - "voxel.armor.shoulder.assa_right", + "voxel.armor.assassin.shoulder", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), // Starting Armor - Plate - Armor(Chest("PlateGreen0")): VoxTrans( - "voxel.armor.chest.plate_green-0", + Armor(Chest("Plate")): VoxTrans( + "voxel.armor.plate.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("PlateGreen0")): VoxTrans( - "voxel.armor.pants.plate_green-0", + Armor(Pants("Plate")): VoxTrans( + "voxel.armor.plate.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Belt("Plate0")): VoxTrans( - "voxel.armor.belt.plate-0", + Armor(Belt("Plate")): VoxTrans( + "voxel.armor.plate.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, ), - Armor(Foot("Plate0")): VoxTrans( - "voxel.armor.foot.plate-0", + Armor(Foot("Plate")): VoxTrans( + "voxel.armor.plate.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Hand("Plate0")): VoxTrans( - "voxel.armor.hand.plate_right-0", + Armor(Hand("Plate")): VoxTrans( + "voxel.armor.plate.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("Plate0")): VoxTrans( - "voxel.armor.shoulder.plate_right-0", + Armor(Shoulder("Plate")): VoxTrans( + "voxel.armor.plate.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), //Steel0 Armor - Armor(Chest("Steel0")): VoxTrans( - "voxel.armor.chest.steel-0", + Armor(Chest("Steel")): VoxTrans( + "voxel.armor.steel.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("Steel0")): VoxTrans( - "voxel.armor.pants.steel-0", + Armor(Pants("Steel")): VoxTrans( + "voxel.armor.steel.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Belt("Steel0")): VoxTrans( - "voxel.armor.belt.steel-0", + Armor(Belt("Steel")): VoxTrans( + "voxel.armor.steel.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, ), - Armor(Foot("Steel0")): VoxTrans( - "voxel.armor.foot.steel-0", + Armor(Foot("Steel")): VoxTrans( + "voxel.armor.steel.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Hand("Steel0")): VoxTrans( - "voxel.armor.hand.steel_right-0", + Armor(Hand("Steel")): VoxTrans( + "voxel.armor.steel.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("Steel0")): VoxTrans( - "voxel.armor.shoulder.steel_right-0", + Armor(Shoulder("Steel")): VoxTrans( + "voxel.armor.steel.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), - //PlateLeather0 Armor - Armor(Chest("PlateLeather")): VoxTrans( - "voxel.armor.chest.plate_leather", + //PlateLeather Armor + Armor(Chest("LeatherPlate")): VoxTrans( + "voxel.armor.leather_plate.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("PlateLeather")): VoxTrans( - "voxel.armor.pants.plate_leather-0", + Armor(Pants("LeatherPlate")): VoxTrans( + "voxel.armor.leather_plate.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Belt("PlateLeather")): VoxTrans( - "voxel.armor.belt.plate_leather-0", + Armor(Belt("LeatherPlate")): VoxTrans( + "voxel.armor.leather_plate.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, ), - Armor(Foot("PlateLeather")): VoxTrans( - "voxel.armor.foot.plate_leather", + Armor(Foot("LeatherPlate")): VoxTrans( + "voxel.armor.leather_plate.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Hand("PlateLeather")): VoxTrans( - "voxel.armor.hand.plate_leather_right-0", + Armor(Hand("LeatherPlate")): VoxTrans( + "voxel.armor.leather_plate.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("PlateLeather")): VoxTrans( - "voxel.armor.shoulder.plate_leather_right-0", + Armor(Shoulder("LeatherPlate")): VoxTrans( + "voxel.armor.leather_plate.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), //Leather0 Armor - Armor(Chest("Leather0")): VoxTrans( - "voxel.armor.chest.leather-0", + Armor(Chest("Swift")): VoxTrans( + "voxel.armor.swift.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("Leather0")): VoxTrans( - "voxel.armor.pants.leather-0", + Armor(Pants("Swift")): VoxTrans( + "voxel.armor.swift.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Belt("Leather0")): VoxTrans( - "voxel.armor.belt.leather-0", + Armor(Belt("Swift")): VoxTrans( + "voxel.armor.swift.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, ), - Armor(Foot("Leather0")): VoxTrans( - "voxel.armor.foot.leather-0", + Armor(Foot("Swift")): VoxTrans( + "voxel.armor.swift.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Hand("Leather0")): VoxTrans( - "voxel.armor.hand.leather_right-0", + Armor(Hand("Swift")): VoxTrans( + "voxel.armor.swift.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("Leather0")): VoxTrans( - "voxel.armor.shoulder.leather_right-0", + Armor(Shoulder("Swift")): VoxTrans( + "voxel.armor.swift.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), - //Leather1 Armor - Armor(Shoulder("Leather1")): VoxTrans( - "voxel.armor.shoulder.leather_right-1", + //Leather Armor + Armor(Shoulder("Leather")): VoxTrans( + "voxel.armor.leather.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), - //Leather2 Armor - Armor(Chest("Leather2")): VoxTrans( - "voxel.armor.chest.leather-2", + //Agile Armor + Armor(Chest("Agile")): VoxTrans( + "voxel.armor.agile.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("Leather2")): VoxTrans( - "voxel.armor.pants.leather-2", + Armor(Pants("Agile")): VoxTrans( + "voxel.armor.agile.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Belt("Leather2")): VoxTrans( - "voxel.armor.belt.leather-2", + Armor(Belt("Agile")): VoxTrans( + "voxel.armor.agile.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, ), - Armor(Foot("Leather2")): VoxTrans( - "voxel.armor.foot.leather-2", + Armor(Foot("Agile")): VoxTrans( + "voxel.armor.agile.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Hand("Leather2")): VoxTrans( - "voxel.armor.hand.leather_right-2", + Armor(Hand("Agile")): VoxTrans( + "voxel.armor.agile.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("Leather2")): VoxTrans( - "voxel.armor.shoulder.leather_right-2", + Armor(Shoulder("Agile")): VoxTrans( + "voxel.armor.agile.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), + //Blue Leather Armor + Armor(Chest("BlueLeather")): VoxTrans( + "voxel.armor.leather_blue.chest", + (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, + ), + Armor(Pants("BlueLeather")): VoxTrans( + "voxel.armor.leather_blue.pants", + (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, + ), //Linen Cloth - Armor(Chest("ClothBlue0")): VoxTrans( - "voxel.armor.chest.cloth_blue-0", + Armor(Chest("ClothBlue")): VoxTrans( + "voxel.armor.cloth_blue.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("ClothBlue0")): VoxTrans( - "voxel.armor.pants.cloth_blue-0", + Armor(Pants("ClothBlue")): VoxTrans( + "voxel.armor.cloth_blue.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Belt("ClothBlue0")): VoxTrans( - "voxel.armor.belt.cloth_blue-0", + Armor(Belt("ClothBlue")): VoxTrans( + "voxel.armor.cloth_blue.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, ), - Armor(Foot("ClothBlue0")): VoxTrans( - "voxel.armor.foot.cloth_blue-0", + Armor(Foot("ClothBlue")): VoxTrans( + "voxel.armor.cloth_blue.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Hand("ClothBlue0")): VoxTrans( - "voxel.armor.hand.cloth_blue_right-0", + Armor(Hand("ClothBlue")): VoxTrans( + "voxel.armor.cloth_blue.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), Armor(Shoulder("ClothBlue0")): VoxTrans( - "voxel.armor.shoulder.cloth_blue_right-0", - (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, - ), - ////////////// - Armor(Chest("ClothGreen0")): VoxTrans( - "voxel.armor.chest.cloth_green-0", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, - ), - Armor(Pants("ClothGreen0")): VoxTrans( - "voxel.armor.pants.cloth_green-0", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, - ), - Armor(Belt("ClothGreen0")): VoxTrans( - "voxel.armor.belt.cloth_green-0", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, - ), - Armor(Foot("ClothGreen0")): VoxTrans( - "voxel.armor.foot.cloth_green-0", - (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, - ), - Armor(Hand("ClothGreen0")): VoxTrans( - "voxel.armor.hand.cloth_green_right-0", - (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, - ), - Armor(Shoulder("ClothGreen0")): VoxTrans( - "voxel.armor.shoulder.cloth_green_right-0", - (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, - ), - Armor(Shoulder("ClothGreen0")): VoxTrans( - "voxel.armor.shoulder.cloth_green_right-0", - (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, - ), - ////// - Armor(Chest("ClothPurple0")): VoxTrans( - "voxel.armor.chest.cloth_purple-0", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, - ), - Armor(Pants("ClothPurple0")): VoxTrans( - "voxel.armor.pants.cloth_purple-0", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, - ), - Armor(Belt("ClothPurple0")): VoxTrans( - "voxel.armor.belt.cloth_purple-0", - (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, - ), - Armor(Foot("ClothPurple0")): VoxTrans( - "voxel.armor.foot.cloth_purple-0", - (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, - ), - Armor(Hand("ClothPurple0")): VoxTrans( - "voxel.armor.hand.cloth_purple_right-0", - (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, - ), - Armor(Shoulder("ClothPurple0")): VoxTrans( - "voxel.armor.shoulder.cloth_purple_right-0", + "voxel.armor.cloth_blue.shoulder_0", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), Armor(Shoulder("ClothBlue1")): VoxTrans( - "voxel.armor.shoulder.cloth_blue_right-1", + "voxel.armor.cloth_blue.shoulder_1", + (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, + ), + ////////////// + Armor(Chest("ClothGreen")): VoxTrans( + "voxel.armor.cloth_green.chest", + (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, + ), + Armor(Pants("ClothGreen")): VoxTrans( + "voxel.armor.cloth_green.pants", + (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, + ), + Armor(Belt("ClothGreen")): VoxTrans( + "voxel.armor.cloth_green.belt", + (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, + ), + Armor(Foot("ClothGreen")): VoxTrans( + "voxel.armor.cloth_green.foot", + (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, + ), + Armor(Hand("ClothGreen")): VoxTrans( + "voxel.armor.cloth_green.hand", + (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, + ), + Armor(Shoulder("ClothGreen")): VoxTrans( + "voxel.armor.cloth_green.shoulder", + (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, + ), + ////// + Armor(Chest("ClothPurple")): VoxTrans( + "voxel.armor.cloth_purple.chest", + (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, + ), + Armor(Pants("ClothPurple")): VoxTrans( + "voxel.armor.cloth_purple.pants", + (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, + ), + Armor(Belt("ClothPurple")): VoxTrans( + "voxel.armor.cloth_purple.belt", + (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.8, + ), + Armor(Foot("ClothPurple")): VoxTrans( + "voxel.armor.cloth_purple.foot", + (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, + ), + Armor(Hand("ClothPurple")): VoxTrans( + "voxel.armor.cloth_purple.hand", + (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, + ), + Armor(Shoulder("ClothPurple")): VoxTrans( + "voxel.armor.cloth_purple.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), Armor(Shoulder("IronSpikes")): VoxTrans( - "voxel.armor.shoulder.iron_spikes_right", + "voxel.armor.misc.shoulder.iron_spikes", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), Armor(Shoulder("IronLeather3")): VoxTrans( - "voxel.armor.shoulder.leather_iron_right-3", + "voxel.armor.misc.shoulder.leather_iron_3", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), Armor(Shoulder("IronLeather2")): VoxTrans( - "voxel.armor.shoulder.leather_iron_right-2", + "voxel.armor.misc.shoulder.leather_iron_2", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), Armor(Shoulder("IronLeather1")): VoxTrans( - "voxel.armor.shoulder.leather_iron_right-1", + "voxel.armor.misc.shoulder.leather_iron_1", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), Armor(Shoulder("IronLeather0")): VoxTrans( - "voxel.armor.shoulder.leather_iron_right-0", + "voxel.armor.misc.shoulder.leather_iron_0", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), - Armor(Shoulder("LeatherStrips")): VoxTrans( - "voxel.armor.shoulder.leather_strips_right", + Armor(Shoulder("LeatherStrip")): VoxTrans( + "voxel.armor.misc.shoulder.leather_strip", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), - Armor(Foot("JackalopeSlips")): VoxTrans( - "voxel.armor.foot.jackalope_slippers", + Armor(Foot("Jackalope")): VoxTrans( + "voxel.armor.misc.foot.jackalope", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), //Twig Set - Armor(Chest("Twig")): VoxTrans( - "voxel.armor.chest.twigs_chest", + Armor(Chest("Twigs")): VoxTrans( + "voxel.armor.twigs.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("Twig")): VoxTrans( - "voxel.armor.pants.twigs_pants", + Armor(Pants("Twigs")): VoxTrans( + "voxel.armor.twigs.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Belt("Twig")): VoxTrans( - "voxel.armor.belt.twigs_belt", + Armor(Belt("Twigs")): VoxTrans( + "voxel.armor.twigs.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.4, ), - Armor(Foot("Twig")): VoxTrans( - "voxel.armor.foot.twigs_foot", + Armor(Foot("Twigs")): VoxTrans( + "voxel.armor.twigs.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Hand("Twig")): VoxTrans( - "voxel.armor.hand.twigs_glove_right", + Armor(Hand("Twigs")): VoxTrans( + "voxel.armor.twigs.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("TwiggyShoulder")): VoxTrans( - "voxel.armor.shoulder.twigs_right", + Armor(Shoulder("Twigs")): VoxTrans( + "voxel.armor.twigs.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), //TwigsLeaves Set - Armor(Chest("Twigsleaves")): VoxTrans( - "voxel.armor.chest.twigsleaves_chest", + Armor(Chest("TwigsLeaves")): VoxTrans( + "voxel.armor.twigsleaves.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("Twigsleaves")): VoxTrans( - "voxel.armor.pants.twigsleaves_pants", + Armor(Pants("TwigsLeaves")): VoxTrans( + "voxel.armor.twigsleaves.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Belt("Twigsleaves")): VoxTrans( - "voxel.armor.belt.twigsleaves_belt", + Armor(Belt("TwigsLeaves")): VoxTrans( + "voxel.armor.twigsleaves.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.4, ), - Armor(Foot("Twigsleaves")): VoxTrans( - "voxel.armor.foot.twigsleaves_foot", + Armor(Foot("TwigsLeaves")): VoxTrans( + "voxel.armor.twigsleaves.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Hand("Twigsleaves")): VoxTrans( - "voxel.armor.hand.twigsleaves_glove_right", + Armor(Hand("TwigsLeaves")): VoxTrans( + "voxel.armor.twigsleaves.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("LeafyShoulder")): VoxTrans( - "voxel.armor.shoulder.twigsleaves_shoulder_right", + Armor(Shoulder("TwigsLeaves")): VoxTrans( + "voxel.armor.twigsleaves.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), //TwigsFlowers Set - Armor(Chest("Twigsflowers")): VoxTrans( - "voxel.armor.chest.twigsflowers_chest", + Armor(Chest("TwigsFlowers")): VoxTrans( + "voxel.armor.twigsflowers.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Pants("Twigsflowers")): VoxTrans( - "voxel.armor.pants.twigsflowers_pants", + Armor(Pants("TwigsFlowers")): VoxTrans( + "voxel.armor.twigsflowers.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), - Armor(Belt("Twigsflowers")): VoxTrans( - "voxel.armor.belt.twigsflowers_belt", + Armor(Belt("TwigsFlowers")): VoxTrans( + "voxel.armor.twigsflowers.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.4, ), - Armor(Foot("Twigsflowers")): VoxTrans( - "voxel.armor.foot.twigsflowers_foot", + Armor(Foot("TwigsFlowers")): VoxTrans( + "voxel.armor.twigsflowers.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), - Armor(Hand("Twigsflowers")): VoxTrans( - "voxel.armor.hand.twigsflowers_glove_right", + Armor(Hand("TwigsFlowers")): VoxTrans( + "voxel.armor.twigsflowers.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), - Armor(Shoulder("FlowerShoulder")): VoxTrans( - "voxel.armor.shoulder.twigsflowers_shoulder_right", + Armor(Shoulder("TwigsFlowers")): VoxTrans( + "voxel.armor.twigsflowers.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), //Tarasque Set Armor(Chest("Tarasque")): VoxTrans( - "voxel.armor.chest.tarasque", + "voxel.armor.tarasque.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Pants("Tarasque")): VoxTrans( - "voxel.armor.pants.tarasque", + "voxel.armor.tarasque.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Belt("Tarasque")): VoxTrans( - "voxel.armor.belt.tarasque", + "voxel.armor.tarasque.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.4, ), Armor(Foot("Tarasque")): VoxTrans( - "voxel.armor.foot.tarasque", + "voxel.armor.tarasque.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), Armor(Hand("Tarasque")): VoxTrans( - "voxel.armor.hand.tarasque_right", + "voxel.armor.tarasque.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), Armor(Shoulder("Tarasque")): VoxTrans( - "voxel.armor.shoulder.tarasque_right", + "voxel.armor.tarasque.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), //Bonerattler Set Armor(Chest("Bonerattler")): VoxTrans( - "voxel.armor.chest.bonerattler", + "voxel.armor.bonerattler.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Pants("Bonerattler")): VoxTrans( - "voxel.armor.pants.bonerattler", + "voxel.armor.bonerattler.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Belt("Bonerattler")): VoxTrans( - "voxel.armor.belt.bonerattler", + "voxel.armor.bonerattler.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.4, ), Armor(Foot("Bonerattler")): VoxTrans( - "voxel.armor.foot.bonerattler", + "voxel.armor.bonerattler.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), Armor(Hand("Bonerattler")): VoxTrans( - "voxel.armor.hand.bonerattler_right", + "voxel.armor.bonerattler.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), Armor(Shoulder("Bonerattler")): VoxTrans( - "voxel.armor.shoulder.bonerattler_right", + "voxel.armor.bonerattler.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), //Warlord Set Armor(Chest("Warlord")): VoxTrans( - "voxel.armor.chest.warlord", + "voxel.armor.warlord.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Pants("Warlord")): VoxTrans( - "voxel.armor.pants.warlord", + "voxel.armor.warlord.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Belt("Warlord")): VoxTrans( - "voxel.armor.belt.warlord", + "voxel.armor.warlord.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.4, ), Armor(Foot("Warlord")): VoxTrans( - "voxel.armor.foot.warlord", + "voxel.armor.warlord.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), Armor(Hand("Warlord")): VoxTrans( - "voxel.armor.hand.warlord_right", + "voxel.armor.warlord.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), Armor(Shoulder("Warlord")): VoxTrans( - "voxel.armor.shoulder.warlord_right", + "voxel.armor.warlord.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), //Warlock Set Armor(Chest("Warlock")): VoxTrans( - "voxel.armor.chest.warlock", + "voxel.armor.warlock.chest", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Pants("Warlock")): VoxTrans( - "voxel.armor.pants.warlock", + "voxel.armor.warlock.pants", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), Armor(Belt("Warlock")): VoxTrans( - "voxel.armor.belt.warlock", + "voxel.armor.warlock.belt", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.4, ), Armor(Foot("Warlock")): VoxTrans( - "voxel.armor.foot.warlock", + "voxel.armor.warlock.foot", (0.0, 0.0, 0.0), (-95.0, 140.0, 0.0), 1.1, ), Armor(Hand("Warlock")): VoxTrans( - "voxel.armor.hand.warlock_right", + "voxel.armor.warlock.hand", (0.0, -1.0, 0.0), (-90.0, 135.0, 0.0), 1.0, ), Armor(Shoulder("Warlock")): VoxTrans( - "voxel.armor.shoulder.warlock_right", + "voxel.armor.warlock.shoulder", (0.0, 0.0, 0.0), (-90.0, 130.0, 0.0), 1.2, ), //misc Armor(Pants("Hunting")): VoxTrans( - "voxel.armor.pants.grayscale", + "voxel.armor.misc.pants.grayscale", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.2, ), // Backs Armor(Back("Short0")): VoxTrans( - "voxel.armor.back.short-0", + "voxel.armor.misc.back.short-0", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.0, ), Armor(Back("Short1")): VoxTrans( - "voxel.armor.back.short-1", + "voxel.armor.misc.back.short-1", (0.0, -2.0, 0.0), (-90.0, 180.0, 0.0), 1.0, ), Armor(Back("Admin")): VoxTrans( - "voxel.armor.back.admin", + "voxel.armor.misc.back.admin", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.0, ), - Armor(Back("DungPurp0")): VoxTrans( - "voxel.armor.back.dung_purp-0", + Armor(Back("DungeonPurple")): VoxTrans( + "voxel.armor.misc.back.dungeon_purple", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.0, ), - Armor(Back("Short2")): VoxTrans( - "voxel.armor.back.short-2", + Armor(Back("Agile")): VoxTrans( + "voxel.armor.agile.back", (0.0, -2.0, 0.0), (-90.0, 180.0, 0.0), 1.0, ), - Armor(Back("Backpack0")): VoxTrans( - "voxel.armor.back.backpack-0", + Armor(Back("LeatherBlue")): VoxTrans( + "voxel.armor.leather_blue.back", + (0.0, -2.0, 0.0), (-90.0, 180.0, 0.0), 1.0, + ), + Armor(Back("Backpack")): VoxTrans( + "voxel.armor.misc.back.backpack", (0.0, 0.0, 0.0), (-90.0, 0.0, 0.0), 1.0, ), - Armor(Back("BackpackBlue0")): VoxTrans( - "voxel.armor.back.backpack-0", + Armor(Back("BackpackBlue")): VoxTrans( + "voxel.armor.misc.back.backpack", (0.0, 0.0, 0.0), (-90.0, 0.0, 0.0), 1.0, ), Armor(Back("Warlord")): VoxTrans( - "voxel.armor.back.warlord", + "voxel.armor.warlord.back", (0.0, 0.0, 0.0), (-90.0, 0.0, 0.0), 1.0, ), Armor(Back("Warlock")): VoxTrans( - "voxel.armor.back.warlock", + "voxel.armor.warlock.back", (0.0, 0.0, 0.0), (-90.0, 0.0, 0.0), 1.0, ), // Rings - Armor(Ring("Ring0")): VoxTrans( - "voxel.armor.ring.simple_purp-0", + Armor(Ring("Scratched")): VoxTrans( + "voxel.armor.misc.ring.scratched", (0.0, 0.0, 0.0), (30.0, 0.0, 0.0), 0.9, ), - Armor(Ring("RingGold0")): VoxTrans( - "voxel.armor.ring.simple_gold-0", + Armor(Ring("Gold")): VoxTrans( + "voxel.armor.misc.ring.gold", (0.0, 0.0, 0.0), (30.0, 0.0, 0.0), 0.9, ), - Armor(Ring("RingSkull0")): VoxTrans( - "voxel.armor.ring.high_purp-0", + Armor(Ring("Skull")): VoxTrans( + "voxel.armor.misc.ring.skull", (0.0, 0.0, 0.0), (30.0, 0.0, 0.0), 0.9, ), // Necks - Armor(Neck("Neck0")): Png( + Armor(Neck("Plain0")): Png( "element.icons.neck-0", ), - Armor(Neck("Neck1")): Png( + Armor(Neck("Plain1")): Png( "element.icons.neck-1", ), - Armor(Neck("NeckShell")): Png( + Armor(Neck("Shell")): Png( "element.icons.neck-seashell", ), @@ -1645,19 +1654,19 @@ "element.icons.tabard_admin", ), // Heads - Armor(Head("Leather0")): VoxTrans( - "voxel.armor.head.leather-0", + Armor(Head("Swift")): VoxTrans( + "voxel.armor.misc.head.leather-0", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.0, ), - Armor(Head("AssaMask0")): VoxTrans( - "voxel.armor.head.assa_mask-0", + Armor(Head("Assassin")): VoxTrans( + "voxel.armor.misc.head.assa_mask-0", (0.0, 0.0, 0.0), (-90.0, 180.0, 0.0), 1.0, ), // Bags Armor(Bag("RedFace")): Png ( "element.icons.item_bag_red_face", ), - Armor(Bag("BrownFace")): Png ( + Armor(Bag("BlackHole")): Png ( "element.icons.item_bag_brown_face", ), Armor(Bag("BlueFace")): Png ( diff --git a/assets/voxygen/voxel/armor/back/short-2.vox b/assets/voxygen/voxel/armor/agile/back.vox similarity index 100% rename from assets/voxygen/voxel/armor/back/short-2.vox rename to assets/voxygen/voxel/armor/agile/back.vox diff --git a/assets/voxygen/voxel/armor/belt/leather-2.vox b/assets/voxygen/voxel/armor/agile/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/leather-2.vox rename to assets/voxygen/voxel/armor/agile/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/leather-2.vox b/assets/voxygen/voxel/armor/agile/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/leather-2.vox rename to assets/voxygen/voxel/armor/agile/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/leather-2.vox b/assets/voxygen/voxel/armor/agile/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/leather-2.vox rename to assets/voxygen/voxel/armor/agile/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/leather_left-2.vox b/assets/voxygen/voxel/armor/agile/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/leather_left-2.vox rename to assets/voxygen/voxel/armor/agile/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/leather-2.vox b/assets/voxygen/voxel/armor/agile/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/leather-2.vox rename to assets/voxygen/voxel/armor/agile/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/leather_left-2.vox b/assets/voxygen/voxel/armor/agile/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/leather_left-2.vox rename to assets/voxygen/voxel/armor/agile/shoulder.vox diff --git a/assets/voxygen/voxel/armor/belt/assa.vox b/assets/voxygen/voxel/armor/assassin/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/assa.vox rename to assets/voxygen/voxel/armor/assassin/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/assa.vox b/assets/voxygen/voxel/armor/assassin/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/assa.vox rename to assets/voxygen/voxel/armor/assassin/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/assa.vox b/assets/voxygen/voxel/armor/assassin/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/assa.vox rename to assets/voxygen/voxel/armor/assassin/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/assa_right.vox b/assets/voxygen/voxel/armor/assassin/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/assa_right.vox rename to assets/voxygen/voxel/armor/assassin/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/assa.vox b/assets/voxygen/voxel/armor/assassin/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/assa.vox rename to assets/voxygen/voxel/armor/assassin/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/assa_right.vox b/assets/voxygen/voxel/armor/assassin/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/assa_right.vox rename to assets/voxygen/voxel/armor/assassin/shoulder.vox diff --git a/assets/voxygen/voxel/armor/belt/cultist_right.vox b/assets/voxygen/voxel/armor/belt/cultist_right.vox deleted file mode 100644 index 22283d0b1f..0000000000 Binary files a/assets/voxygen/voxel/armor/belt/cultist_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/belt/bonerattler.vox b/assets/voxygen/voxel/armor/bonerattler/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/bonerattler.vox rename to assets/voxygen/voxel/armor/bonerattler/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/bonerattler.vox b/assets/voxygen/voxel/armor/bonerattler/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/bonerattler.vox rename to assets/voxygen/voxel/armor/bonerattler/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/bonerattler.vox b/assets/voxygen/voxel/armor/bonerattler/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/bonerattler.vox rename to assets/voxygen/voxel/armor/bonerattler/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/bonerattler_right.vox b/assets/voxygen/voxel/armor/bonerattler/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/bonerattler_right.vox rename to assets/voxygen/voxel/armor/bonerattler/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/bonerattler.vox b/assets/voxygen/voxel/armor/bonerattler/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/bonerattler.vox rename to assets/voxygen/voxel/armor/bonerattler/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/bonerattler_left.vox b/assets/voxygen/voxel/armor/bonerattler/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/bonerattler_left.vox rename to assets/voxygen/voxel/armor/bonerattler/shoulder.vox diff --git a/assets/voxygen/voxel/armor/belt/cloth_blue-0.vox b/assets/voxygen/voxel/armor/cloth_blue/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/cloth_blue-0.vox rename to assets/voxygen/voxel/armor/cloth_blue/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/cloth_blue-0.vox b/assets/voxygen/voxel/armor/cloth_blue/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/cloth_blue-0.vox rename to assets/voxygen/voxel/armor/cloth_blue/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/cloth_blue-0.vox b/assets/voxygen/voxel/armor/cloth_blue/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/cloth_blue-0.vox rename to assets/voxygen/voxel/armor/cloth_blue/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/cloth_blue_left-0.vox b/assets/voxygen/voxel/armor/cloth_blue/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/cloth_blue_left-0.vox rename to assets/voxygen/voxel/armor/cloth_blue/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/cloth_blue-0.vox b/assets/voxygen/voxel/armor/cloth_blue/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/cloth_blue-0.vox rename to assets/voxygen/voxel/armor/cloth_blue/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/cloth_blue_left-0.vox b/assets/voxygen/voxel/armor/cloth_blue/shoulder_0.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/cloth_blue_left-0.vox rename to assets/voxygen/voxel/armor/cloth_blue/shoulder_0.vox diff --git a/assets/voxygen/voxel/armor/shoulder/cloth_blue_left-1.vox b/assets/voxygen/voxel/armor/cloth_blue/shoulder_1.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/cloth_blue_left-1.vox rename to assets/voxygen/voxel/armor/cloth_blue/shoulder_1.vox diff --git a/assets/voxygen/voxel/armor/belt/cloth_green-0.vox b/assets/voxygen/voxel/armor/cloth_green/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/cloth_green-0.vox rename to assets/voxygen/voxel/armor/cloth_green/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/cloth_green-0.vox b/assets/voxygen/voxel/armor/cloth_green/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/cloth_green-0.vox rename to assets/voxygen/voxel/armor/cloth_green/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/cloth_green-0.vox b/assets/voxygen/voxel/armor/cloth_green/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/cloth_green-0.vox rename to assets/voxygen/voxel/armor/cloth_green/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/cloth_green_right-0.vox b/assets/voxygen/voxel/armor/cloth_green/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/cloth_green_right-0.vox rename to assets/voxygen/voxel/armor/cloth_green/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/cloth_green-0.vox b/assets/voxygen/voxel/armor/cloth_green/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/cloth_green-0.vox rename to assets/voxygen/voxel/armor/cloth_green/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/cloth_green_left-0.vox b/assets/voxygen/voxel/armor/cloth_green/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/cloth_green_left-0.vox rename to assets/voxygen/voxel/armor/cloth_green/shoulder.vox diff --git a/assets/voxygen/voxel/armor/belt/cloth_purple-0.vox b/assets/voxygen/voxel/armor/cloth_purple/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/cloth_purple-0.vox rename to assets/voxygen/voxel/armor/cloth_purple/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/cloth_purple-0.vox b/assets/voxygen/voxel/armor/cloth_purple/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/cloth_purple-0.vox rename to assets/voxygen/voxel/armor/cloth_purple/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/cloth_purple-0.vox b/assets/voxygen/voxel/armor/cloth_purple/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/cloth_purple-0.vox rename to assets/voxygen/voxel/armor/cloth_purple/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/cloth_purple_left-0.vox b/assets/voxygen/voxel/armor/cloth_purple/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/cloth_purple_left-0.vox rename to assets/voxygen/voxel/armor/cloth_purple/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/cloth_purple-0.vox b/assets/voxygen/voxel/armor/cloth_purple/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/cloth_purple-0.vox rename to assets/voxygen/voxel/armor/cloth_purple/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/cloth_purple_right-0.vox b/assets/voxygen/voxel/armor/cloth_purple/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/cloth_purple_right-0.vox rename to assets/voxygen/voxel/armor/cloth_purple/shoulder.vox diff --git a/assets/voxygen/voxel/armor/belt/cultist.vox b/assets/voxygen/voxel/armor/cultist/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/cultist.vox rename to assets/voxygen/voxel/armor/cultist/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/cultist.vox b/assets/voxygen/voxel/armor/cultist/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/cultist.vox rename to assets/voxygen/voxel/armor/cultist/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/cultist.vox b/assets/voxygen/voxel/armor/cultist/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/cultist.vox rename to assets/voxygen/voxel/armor/cultist/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/cultist_right.vox b/assets/voxygen/voxel/armor/cultist/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/cultist_right.vox rename to assets/voxygen/voxel/armor/cultist/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/cultist.vox b/assets/voxygen/voxel/armor/cultist/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/cultist.vox rename to assets/voxygen/voxel/armor/cultist/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/cultist_right.vox b/assets/voxygen/voxel/armor/cultist/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/cultist_right.vox rename to assets/voxygen/voxel/armor/cultist/shoulder.vox diff --git a/assets/voxygen/voxel/armor/belt/druid.vox b/assets/voxygen/voxel/armor/druid/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/druid.vox rename to assets/voxygen/voxel/armor/druid/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/druid.vox b/assets/voxygen/voxel/armor/druid/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/druid.vox rename to assets/voxygen/voxel/armor/druid/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/druid.vox b/assets/voxygen/voxel/armor/druid/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/druid.vox rename to assets/voxygen/voxel/armor/druid/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/druid_right.vox b/assets/voxygen/voxel/armor/druid/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/druid_right.vox rename to assets/voxygen/voxel/armor/druid/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/druid.vox b/assets/voxygen/voxel/armor/druid/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/druid.vox rename to assets/voxygen/voxel/armor/druid/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/druid_left.vox b/assets/voxygen/voxel/armor/druid/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/druid_left.vox rename to assets/voxygen/voxel/armor/druid/shoulder.vox diff --git a/assets/voxygen/voxel/armor/hand/assa_left.vox b/assets/voxygen/voxel/armor/hand/assa_left.vox deleted file mode 100644 index 16d8c22af0..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/assa_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/bare_left.vox b/assets/voxygen/voxel/armor/hand/bare_left.vox deleted file mode 100644 index 0d150e8243..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/bare_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/bonerattler_left.vox b/assets/voxygen/voxel/armor/hand/bonerattler_left.vox deleted file mode 100644 index 3d61fefcda..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/bonerattler_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/cloth_basic_left.vox b/assets/voxygen/voxel/armor/hand/cloth_basic_left.vox deleted file mode 100644 index 0e78e73661..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/cloth_basic_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/cloth_blue_right-0.vox b/assets/voxygen/voxel/armor/hand/cloth_blue_right-0.vox deleted file mode 100644 index 314f5f497b..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/cloth_blue_right-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/cloth_green_left-0.vox b/assets/voxygen/voxel/armor/hand/cloth_green_left-0.vox deleted file mode 100644 index 543f969ef3..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/cloth_green_left-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/cloth_purple_right-0.vox b/assets/voxygen/voxel/armor/hand/cloth_purple_right-0.vox deleted file mode 100644 index 012a3205c7..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/cloth_purple_right-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/druid_left.vox b/assets/voxygen/voxel/armor/hand/druid_left.vox deleted file mode 100644 index 7d3e7cbaab..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/druid_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/hand_left_none.vox b/assets/voxygen/voxel/armor/hand/hand_left_none.vox deleted file mode 100644 index cc48bcbca8..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/hand_left_none.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/leather_left-0.vox b/assets/voxygen/voxel/armor/hand/leather_left-0.vox deleted file mode 100644 index 21eb927e6c..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/leather_left-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/leather_right-2.vox b/assets/voxygen/voxel/armor/hand/leather_right-2.vox deleted file mode 100644 index c380321a6e..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/leather_right-2.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/plate_leather_right-0.vox b/assets/voxygen/voxel/armor/hand/plate_leather_right-0.vox deleted file mode 100644 index e097aa7209..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/plate_leather_right-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/plate_left-0.vox b/assets/voxygen/voxel/armor/hand/plate_left-0.vox deleted file mode 100644 index f20e1b9682..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/plate_left-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/steel_right-0.vox b/assets/voxygen/voxel/armor/hand/steel_right-0.vox deleted file mode 100644 index 9f29e826f0..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/steel_right-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/tarasque_left.vox b/assets/voxygen/voxel/armor/hand/tarasque_left.vox deleted file mode 100644 index dc418324b7..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/tarasque_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/twigs_glove_right.vox b/assets/voxygen/voxel/armor/hand/twigs_glove_right.vox deleted file mode 100644 index 98e764dcc5..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/twigs_glove_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/twigsflowers_glove_right.vox b/assets/voxygen/voxel/armor/hand/twigsflowers_glove_right.vox deleted file mode 100644 index 6f409f6460..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/twigsflowers_glove_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/twigsleaves_glove_right.vox b/assets/voxygen/voxel/armor/hand/twigsleaves_glove_right.vox deleted file mode 100644 index bda45dec34..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/twigsleaves_glove_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/velorite_battlemage_left.vox b/assets/voxygen/voxel/armor/hand/velorite_battlemage_left.vox deleted file mode 100644 index 2de75e92e9..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/velorite_battlemage_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/warlock_right.vox b/assets/voxygen/voxel/armor/hand/warlock_right.vox deleted file mode 100644 index 6ea6aa73d8..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/warlock_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/hand/warlord_left.vox b/assets/voxygen/voxel/armor/hand/warlord_left.vox deleted file mode 100644 index 6269d9b0e9..0000000000 Binary files a/assets/voxygen/voxel/armor/hand/warlord_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/leather_right-1.vox b/assets/voxygen/voxel/armor/leather/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/leather_right-1.vox rename to assets/voxygen/voxel/armor/leather/shoulder.vox diff --git a/assets/voxygen/voxel/armor/back/leather_blue-0.vox b/assets/voxygen/voxel/armor/leather_blue/back.vox similarity index 100% rename from assets/voxygen/voxel/armor/back/leather_blue-0.vox rename to assets/voxygen/voxel/armor/leather_blue/back.vox diff --git a/assets/voxygen/voxel/armor/chest/leather_blue-0.vox b/assets/voxygen/voxel/armor/leather_blue/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/leather_blue-0.vox rename to assets/voxygen/voxel/armor/leather_blue/chest.vox diff --git a/assets/voxygen/voxel/armor/pants/leather_blue-0.vox b/assets/voxygen/voxel/armor/leather_blue/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/leather_blue-0.vox rename to assets/voxygen/voxel/armor/leather_blue/pants.vox diff --git a/assets/voxygen/voxel/armor/belt/plate_leather-0.vox b/assets/voxygen/voxel/armor/leather_plate/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/plate_leather-0.vox rename to assets/voxygen/voxel/armor/leather_plate/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/plate_leather.vox b/assets/voxygen/voxel/armor/leather_plate/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/plate_leather.vox rename to assets/voxygen/voxel/armor/leather_plate/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/plate_leather.vox b/assets/voxygen/voxel/armor/leather_plate/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/plate_leather.vox rename to assets/voxygen/voxel/armor/leather_plate/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/plate_leather_left-0.vox b/assets/voxygen/voxel/armor/leather_plate/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/plate_leather_left-0.vox rename to assets/voxygen/voxel/armor/leather_plate/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/plate_leather-0.vox b/assets/voxygen/voxel/armor/leather_plate/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/plate_leather-0.vox rename to assets/voxygen/voxel/armor/leather_plate/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/plate_leather_left-0.vox b/assets/voxygen/voxel/armor/leather_plate/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/plate_leather_left-0.vox rename to assets/voxygen/voxel/armor/leather_plate/shoulder.vox diff --git a/assets/voxygen/voxel/armor/back/admin.vox b/assets/voxygen/voxel/armor/misc/back/admin.vox similarity index 100% rename from assets/voxygen/voxel/armor/back/admin.vox rename to assets/voxygen/voxel/armor/misc/back/admin.vox diff --git a/assets/voxygen/voxel/armor/back/backpack-grey.vox b/assets/voxygen/voxel/armor/misc/back/backpack-grey.vox similarity index 100% rename from assets/voxygen/voxel/armor/back/backpack-grey.vox rename to assets/voxygen/voxel/armor/misc/back/backpack-grey.vox diff --git a/assets/voxygen/voxel/armor/back/backpack-0.vox b/assets/voxygen/voxel/armor/misc/back/backpack.vox similarity index 100% rename from assets/voxygen/voxel/armor/back/backpack-0.vox rename to assets/voxygen/voxel/armor/misc/back/backpack.vox diff --git a/assets/voxygen/voxel/armor/back/dung_purp-0.vox b/assets/voxygen/voxel/armor/misc/back/dungeon_purple.vox similarity index 100% rename from assets/voxygen/voxel/armor/back/dung_purp-0.vox rename to assets/voxygen/voxel/armor/misc/back/dungeon_purple.vox diff --git a/assets/voxygen/voxel/armor/back/short-0.vox b/assets/voxygen/voxel/armor/misc/back/short-0.vox similarity index 100% rename from assets/voxygen/voxel/armor/back/short-0.vox rename to assets/voxygen/voxel/armor/misc/back/short-0.vox diff --git a/assets/voxygen/voxel/armor/back/short-1.vox b/assets/voxygen/voxel/armor/misc/back/short-1.vox similarity index 100% rename from assets/voxygen/voxel/armor/back/short-1.vox rename to assets/voxygen/voxel/armor/misc/back/short-1.vox diff --git a/assets/voxygen/voxel/armor/belt/cloth_black.vox b/assets/voxygen/voxel/armor/misc/belt/cloth_black.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/cloth_black.vox rename to assets/voxygen/voxel/armor/misc/belt/cloth_black.vox diff --git a/assets/voxygen/voxel/armor/belt/cloth_blood.vox b/assets/voxygen/voxel/armor/misc/belt/cloth_blood.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/cloth_blood.vox rename to assets/voxygen/voxel/armor/misc/belt/cloth_blood.vox diff --git a/assets/voxygen/voxel/armor/belt/cloth_grey.vox b/assets/voxygen/voxel/armor/misc/belt/cloth_grey.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/cloth_grey.vox rename to assets/voxygen/voxel/armor/misc/belt/cloth_grey.vox diff --git a/assets/voxygen/voxel/armor/belt/cloth_turq.vox b/assets/voxygen/voxel/armor/misc/belt/cloth_turq.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/cloth_turq.vox rename to assets/voxygen/voxel/armor/misc/belt/cloth_turq.vox diff --git a/assets/voxygen/voxel/armor/belt/dark.vox b/assets/voxygen/voxel/armor/misc/belt/dark.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/dark.vox rename to assets/voxygen/voxel/armor/misc/belt/dark.vox diff --git a/assets/voxygen/voxel/armor/belt/belt_none.vox b/assets/voxygen/voxel/armor/misc/belt/none.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/belt_none.vox rename to assets/voxygen/voxel/armor/misc/belt/none.vox diff --git a/assets/voxygen/voxel/armor/chest/cloth_red_kimono.vox b/assets/voxygen/voxel/armor/misc/chest/cloth_red_kimono.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/cloth_red_kimono.vox rename to assets/voxygen/voxel/armor/misc/chest/cloth_red_kimono.vox diff --git a/assets/voxygen/voxel/armor/chest/grayscale.vox b/assets/voxygen/voxel/armor/misc/chest/grayscale.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/grayscale.vox rename to assets/voxygen/voxel/armor/misc/chest/grayscale.vox diff --git a/assets/voxygen/voxel/armor/chest/chest_none.vox b/assets/voxygen/voxel/armor/misc/chest/none.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/chest_none.vox rename to assets/voxygen/voxel/armor/misc/chest/none.vox diff --git a/assets/voxygen/voxel/armor/chest/plate_grey-0.vox b/assets/voxygen/voxel/armor/misc/chest/plate_grey.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/plate_grey-0.vox rename to assets/voxygen/voxel/armor/misc/chest/plate_grey.vox diff --git a/assets/voxygen/voxel/armor/chest/shirt_white-0.vox b/assets/voxygen/voxel/armor/misc/chest/shirt_white.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/shirt_white-0.vox rename to assets/voxygen/voxel/armor/misc/chest/shirt_white.vox diff --git a/assets/voxygen/voxel/armor/chest/worker_green-0.vox b/assets/voxygen/voxel/armor/misc/chest/worker_green.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/worker_green-0.vox rename to assets/voxygen/voxel/armor/misc/chest/worker_green.vox diff --git a/assets/voxygen/voxel/armor/chest/worker_red-0.vox b/assets/voxygen/voxel/armor/misc/chest/worker_red.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/worker_red-0.vox rename to assets/voxygen/voxel/armor/misc/chest/worker_red.vox diff --git a/assets/voxygen/voxel/armor/chest/worker_white-0.vox b/assets/voxygen/voxel/armor/misc/chest/worker_white.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/worker_white-0.vox rename to assets/voxygen/voxel/armor/misc/chest/worker_white.vox diff --git a/assets/voxygen/voxel/armor/foot/cloth_sandals.vox b/assets/voxygen/voxel/armor/misc/foot/cloth_sandal.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/cloth_sandals.vox rename to assets/voxygen/voxel/armor/misc/foot/cloth_sandal.vox diff --git a/assets/voxygen/voxel/armor/foot/dark-0.vox b/assets/voxygen/voxel/armor/misc/foot/dark.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/dark-0.vox rename to assets/voxygen/voxel/armor/misc/foot/dark.vox diff --git a/assets/voxygen/voxel/armor/foot/dark_jester-elf_shoe.vox b/assets/voxygen/voxel/armor/misc/foot/dark_jester_elf.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/dark_jester-elf_shoe.vox rename to assets/voxygen/voxel/armor/misc/foot/dark_jester_elf.vox diff --git a/assets/voxygen/voxel/armor/foot/jackalope_slippers.vox b/assets/voxygen/voxel/armor/misc/foot/jackalope.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/jackalope_slippers.vox rename to assets/voxygen/voxel/armor/misc/foot/jackalope.vox diff --git a/assets/voxygen/voxel/armor/foot/foot_none.vox b/assets/voxygen/voxel/armor/misc/foot/none.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/foot_none.vox rename to assets/voxygen/voxel/armor/misc/foot/none.vox diff --git a/assets/voxygen/voxel/armor/hand/bare_right.vox b/assets/voxygen/voxel/armor/misc/hand/bare.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/bare_right.vox rename to assets/voxygen/voxel/armor/misc/hand/bare.vox diff --git a/assets/voxygen/voxel/armor/hand/cloth_basic_right.vox b/assets/voxygen/voxel/armor/misc/hand/cloth_basic.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/cloth_basic_right.vox rename to assets/voxygen/voxel/armor/misc/hand/cloth_basic.vox diff --git a/assets/voxygen/voxel/armor/hand/hand_right_none.vox b/assets/voxygen/voxel/armor/misc/hand/none.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/hand_right_none.vox rename to assets/voxygen/voxel/armor/misc/hand/none.vox diff --git a/assets/voxygen/voxel/armor/head/assa_mask-0.vox b/assets/voxygen/voxel/armor/misc/head/assa_mask-0.vox similarity index 100% rename from assets/voxygen/voxel/armor/head/assa_mask-0.vox rename to assets/voxygen/voxel/armor/misc/head/assa_mask-0.vox diff --git a/assets/voxygen/voxel/armor/head/leather-0.vox b/assets/voxygen/voxel/armor/misc/head/leather-0.vox similarity index 100% rename from assets/voxygen/voxel/armor/head/leather-0.vox rename to assets/voxygen/voxel/armor/misc/head/leather-0.vox diff --git a/assets/voxygen/voxel/armor/head/warlock.vox b/assets/voxygen/voxel/armor/misc/head/warlock.vox similarity index 100% rename from assets/voxygen/voxel/armor/head/warlock.vox rename to assets/voxygen/voxel/armor/misc/head/warlock.vox diff --git a/assets/voxygen/voxel/armor/head/warlord.vox b/assets/voxygen/voxel/armor/misc/head/warlord.vox similarity index 100% rename from assets/voxygen/voxel/armor/head/warlord.vox rename to assets/voxygen/voxel/armor/misc/head/warlord.vox diff --git a/assets/voxygen/voxel/armor/lantern/black-0.vox b/assets/voxygen/voxel/armor/misc/lantern/black-0.vox similarity index 100% rename from assets/voxygen/voxel/armor/lantern/black-0.vox rename to assets/voxygen/voxel/armor/misc/lantern/black-0.vox diff --git a/assets/voxygen/voxel/armor/lantern/blue-0.vox b/assets/voxygen/voxel/armor/misc/lantern/blue-0.vox similarity index 100% rename from assets/voxygen/voxel/armor/lantern/blue-0.vox rename to assets/voxygen/voxel/armor/misc/lantern/blue-0.vox diff --git a/assets/voxygen/voxel/armor/lantern/green-0.vox b/assets/voxygen/voxel/armor/misc/lantern/green-0.vox similarity index 100% rename from assets/voxygen/voxel/armor/lantern/green-0.vox rename to assets/voxygen/voxel/armor/misc/lantern/green-0.vox diff --git a/assets/voxygen/voxel/armor/lantern/red-0.vox b/assets/voxygen/voxel/armor/misc/lantern/red-0.vox similarity index 100% rename from assets/voxygen/voxel/armor/lantern/red-0.vox rename to assets/voxygen/voxel/armor/misc/lantern/red-0.vox diff --git a/assets/voxygen/voxel/armor/pants/cloth_red_kimono.vox b/assets/voxygen/voxel/armor/misc/pants/cloth_red_kimono.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/cloth_red_kimono.vox rename to assets/voxygen/voxel/armor/misc/pants/cloth_red_kimono.vox diff --git a/assets/voxygen/voxel/armor/pants/grayscale.vox b/assets/voxygen/voxel/armor/misc/pants/grayscale.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/grayscale.vox rename to assets/voxygen/voxel/armor/misc/pants/grayscale.vox diff --git a/assets/voxygen/voxel/armor/pants/pants_none.vox b/assets/voxygen/voxel/armor/misc/pants/none.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/pants_none.vox rename to assets/voxygen/voxel/armor/misc/pants/none.vox diff --git a/assets/voxygen/voxel/armor/pants/plate_grey-0.vox b/assets/voxygen/voxel/armor/misc/pants/plate_grey.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/plate_grey-0.vox rename to assets/voxygen/voxel/armor/misc/pants/plate_grey.vox diff --git a/assets/voxygen/voxel/armor/pants/worker_blue-0.vox b/assets/voxygen/voxel/armor/misc/pants/worker_blue.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/worker_blue-0.vox rename to assets/voxygen/voxel/armor/misc/pants/worker_blue.vox diff --git a/assets/voxygen/voxel/armor/ring/simple_gold-0.vox b/assets/voxygen/voxel/armor/misc/ring/gold.vox similarity index 100% rename from assets/voxygen/voxel/armor/ring/simple_gold-0.vox rename to assets/voxygen/voxel/armor/misc/ring/gold.vox diff --git a/assets/voxygen/voxel/armor/ring/simple_purp-0.vox b/assets/voxygen/voxel/armor/misc/ring/scratched.vox similarity index 100% rename from assets/voxygen/voxel/armor/ring/simple_purp-0.vox rename to assets/voxygen/voxel/armor/misc/ring/scratched.vox diff --git a/assets/voxygen/voxel/armor/ring/high_purp-0.vox b/assets/voxygen/voxel/armor/misc/ring/skull.vox similarity index 100% rename from assets/voxygen/voxel/armor/ring/high_purp-0.vox rename to assets/voxygen/voxel/armor/misc/ring/skull.vox diff --git a/assets/voxygen/voxel/armor/shoulder/chain_right.vox b/assets/voxygen/voxel/armor/misc/shoulder/chain.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/chain_right.vox rename to assets/voxygen/voxel/armor/misc/shoulder/chain.vox diff --git a/assets/voxygen/voxel/armor/shoulder/iron_spikes_left.vox b/assets/voxygen/voxel/armor/misc/shoulder/iron_spikes.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/iron_spikes_left.vox rename to assets/voxygen/voxel/armor/misc/shoulder/iron_spikes.vox diff --git a/assets/voxygen/voxel/armor/shoulder/leather_iron_left-0.vox b/assets/voxygen/voxel/armor/misc/shoulder/leather_iron_0.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/leather_iron_left-0.vox rename to assets/voxygen/voxel/armor/misc/shoulder/leather_iron_0.vox diff --git a/assets/voxygen/voxel/armor/shoulder/leather_iron_left-1.vox b/assets/voxygen/voxel/armor/misc/shoulder/leather_iron_1.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/leather_iron_left-1.vox rename to assets/voxygen/voxel/armor/misc/shoulder/leather_iron_1.vox diff --git a/assets/voxygen/voxel/armor/shoulder/leather_iron_left-2.vox b/assets/voxygen/voxel/armor/misc/shoulder/leather_iron_2.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/leather_iron_left-2.vox rename to assets/voxygen/voxel/armor/misc/shoulder/leather_iron_2.vox diff --git a/assets/voxygen/voxel/armor/shoulder/leather_iron_left-3.vox b/assets/voxygen/voxel/armor/misc/shoulder/leather_iron_3.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/leather_iron_left-3.vox rename to assets/voxygen/voxel/armor/misc/shoulder/leather_iron_3.vox diff --git a/assets/voxygen/voxel/armor/shoulder/leather_strips_left.vox b/assets/voxygen/voxel/armor/misc/shoulder/leather_strip.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/leather_strips_left.vox rename to assets/voxygen/voxel/armor/misc/shoulder/leather_strip.vox diff --git a/assets/voxygen/voxel/armor/belt/plate-0.vox b/assets/voxygen/voxel/armor/plate/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/plate-0.vox rename to assets/voxygen/voxel/armor/plate/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/plate_green-0.vox b/assets/voxygen/voxel/armor/plate/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/plate_green-0.vox rename to assets/voxygen/voxel/armor/plate/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/plate-0.vox b/assets/voxygen/voxel/armor/plate/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/plate-0.vox rename to assets/voxygen/voxel/armor/plate/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/plate_right-0.vox b/assets/voxygen/voxel/armor/plate/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/plate_right-0.vox rename to assets/voxygen/voxel/armor/plate/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/plate_green-0.vox b/assets/voxygen/voxel/armor/plate/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/plate_green-0.vox rename to assets/voxygen/voxel/armor/plate/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/plate_right-0.vox b/assets/voxygen/voxel/armor/plate/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/plate_right-0.vox rename to assets/voxygen/voxel/armor/plate/shoulder.vox diff --git a/assets/voxygen/voxel/armor/chest/rugged-0.vox b/assets/voxygen/voxel/armor/rugged/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/rugged-0.vox rename to assets/voxygen/voxel/armor/rugged/chest.vox diff --git a/assets/voxygen/voxel/armor/pants/rugged-0.vox b/assets/voxygen/voxel/armor/rugged/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/rugged-0.vox rename to assets/voxygen/voxel/armor/rugged/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/assa_left.vox b/assets/voxygen/voxel/armor/shoulder/assa_left.vox deleted file mode 100644 index 8f6a59973d..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/assa_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/bonerattler_right.vox b/assets/voxygen/voxel/armor/shoulder/bonerattler_right.vox deleted file mode 100644 index f849419e4d..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/bonerattler_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/chain_left-1.vox b/assets/voxygen/voxel/armor/shoulder/chain_left-1.vox deleted file mode 100644 index 2464298173..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/chain_left-1.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/chain_left.vox b/assets/voxygen/voxel/armor/shoulder/chain_left.vox deleted file mode 100644 index ba3a64e5f4..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/chain_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/chain_right-1.vox b/assets/voxygen/voxel/armor/shoulder/chain_right-1.vox deleted file mode 100644 index 96e567d32f..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/chain_right-1.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/cloth_blue_right-0.vox b/assets/voxygen/voxel/armor/shoulder/cloth_blue_right-0.vox deleted file mode 100644 index 3af71b87ca..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/cloth_blue_right-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/cloth_blue_right-1.vox b/assets/voxygen/voxel/armor/shoulder/cloth_blue_right-1.vox deleted file mode 100644 index 8e73144498..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/cloth_blue_right-1.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/cloth_green_right-0.vox b/assets/voxygen/voxel/armor/shoulder/cloth_green_right-0.vox deleted file mode 100644 index a323d419b3..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/cloth_green_right-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/cloth_purple_left-0.vox b/assets/voxygen/voxel/armor/shoulder/cloth_purple_left-0.vox deleted file mode 100644 index a2ff46e0d8..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/cloth_purple_left-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/druid_right.vox b/assets/voxygen/voxel/armor/shoulder/druid_right.vox deleted file mode 100644 index 8dee9ef073..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/druid_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/iron_spikes_right.vox b/assets/voxygen/voxel/armor/shoulder/iron_spikes_right.vox deleted file mode 100644 index cca6ba68eb..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/iron_spikes_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/leather_iron_right-0.vox b/assets/voxygen/voxel/armor/shoulder/leather_iron_right-0.vox deleted file mode 100644 index 80123efb3d..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/leather_iron_right-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/leather_iron_right-1.vox b/assets/voxygen/voxel/armor/shoulder/leather_iron_right-1.vox deleted file mode 100644 index ea897cd492..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/leather_iron_right-1.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/leather_iron_right-2.vox b/assets/voxygen/voxel/armor/shoulder/leather_iron_right-2.vox deleted file mode 100644 index cd6b536cf4..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/leather_iron_right-2.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/leather_iron_right-3.vox b/assets/voxygen/voxel/armor/shoulder/leather_iron_right-3.vox deleted file mode 100644 index 33ddedf5a9..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/leather_iron_right-3.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/leather_left-0.vox b/assets/voxygen/voxel/armor/shoulder/leather_left-0.vox deleted file mode 100644 index 52b86cb401..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/leather_left-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/leather_left-1.vox b/assets/voxygen/voxel/armor/shoulder/leather_left-1.vox deleted file mode 100644 index 46dbe0b9b7..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/leather_left-1.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/leather_right-2.vox b/assets/voxygen/voxel/armor/shoulder/leather_right-2.vox deleted file mode 100644 index ac86b23b71..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/leather_right-2.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/leather_strips_right.vox b/assets/voxygen/voxel/armor/shoulder/leather_strips_right.vox deleted file mode 100644 index 66aad3d033..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/leather_strips_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/plate_leather_right-0.vox b/assets/voxygen/voxel/armor/shoulder/plate_leather_right-0.vox deleted file mode 100644 index 3f612c23b4..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/plate_leather_right-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/plate_left-0.vox b/assets/voxygen/voxel/armor/shoulder/plate_left-0.vox deleted file mode 100644 index 314bba5ffb..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/plate_left-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/steel_right-0.vox b/assets/voxygen/voxel/armor/shoulder/steel_right-0.vox deleted file mode 100644 index 7f1f21731e..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/steel_right-0.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/tarasque_left.vox b/assets/voxygen/voxel/armor/shoulder/tarasque_left.vox deleted file mode 100644 index 2b3cb92c10..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/tarasque_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/twigs_right.vox b/assets/voxygen/voxel/armor/shoulder/twigs_right.vox deleted file mode 100644 index 75caca5c5d..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/twigs_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/twigsflowers_shoulder_right.vox b/assets/voxygen/voxel/armor/shoulder/twigsflowers_shoulder_right.vox deleted file mode 100644 index dbca675225..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/twigsflowers_shoulder_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/twigsleaves_shoulder_right.vox b/assets/voxygen/voxel/armor/shoulder/twigsleaves_shoulder_right.vox deleted file mode 100644 index b7a5b2c41b..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/twigsleaves_shoulder_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/warlock_right.vox b/assets/voxygen/voxel/armor/shoulder/warlock_right.vox deleted file mode 100644 index 63a6464bfb..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/warlock_right.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/shoulder/warlord_left.vox b/assets/voxygen/voxel/armor/shoulder/warlord_left.vox deleted file mode 100644 index c6983cc0b7..0000000000 Binary files a/assets/voxygen/voxel/armor/shoulder/warlord_left.vox and /dev/null differ diff --git a/assets/voxygen/voxel/armor/belt/steel-0.vox b/assets/voxygen/voxel/armor/steel/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/steel-0.vox rename to assets/voxygen/voxel/armor/steel/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/steel-0.vox b/assets/voxygen/voxel/armor/steel/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/steel-0.vox rename to assets/voxygen/voxel/armor/steel/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/steel-0.vox b/assets/voxygen/voxel/armor/steel/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/steel-0.vox rename to assets/voxygen/voxel/armor/steel/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/steel_left-0.vox b/assets/voxygen/voxel/armor/steel/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/steel_left-0.vox rename to assets/voxygen/voxel/armor/steel/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/steel-0.vox b/assets/voxygen/voxel/armor/steel/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/steel-0.vox rename to assets/voxygen/voxel/armor/steel/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/steel_left-0.vox b/assets/voxygen/voxel/armor/steel/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/steel_left-0.vox rename to assets/voxygen/voxel/armor/steel/shoulder.vox diff --git a/assets/voxygen/voxel/armor/belt/leather-0.vox b/assets/voxygen/voxel/armor/swift/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/leather-0.vox rename to assets/voxygen/voxel/armor/swift/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/leather-0.vox b/assets/voxygen/voxel/armor/swift/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/leather-0.vox rename to assets/voxygen/voxel/armor/swift/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/leather-0.vox b/assets/voxygen/voxel/armor/swift/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/leather-0.vox rename to assets/voxygen/voxel/armor/swift/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/leather_right-0.vox b/assets/voxygen/voxel/armor/swift/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/leather_right-0.vox rename to assets/voxygen/voxel/armor/swift/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/leather-0.vox b/assets/voxygen/voxel/armor/swift/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/leather-0.vox rename to assets/voxygen/voxel/armor/swift/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/leather_right-0.vox b/assets/voxygen/voxel/armor/swift/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/leather_right-0.vox rename to assets/voxygen/voxel/armor/swift/shoulder.vox diff --git a/assets/voxygen/voxel/armor/belt/tarasque.vox b/assets/voxygen/voxel/armor/tarasque/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/tarasque.vox rename to assets/voxygen/voxel/armor/tarasque/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/tarasque.vox b/assets/voxygen/voxel/armor/tarasque/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/tarasque.vox rename to assets/voxygen/voxel/armor/tarasque/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/tarasque.vox b/assets/voxygen/voxel/armor/tarasque/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/tarasque.vox rename to assets/voxygen/voxel/armor/tarasque/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/tarasque_right.vox b/assets/voxygen/voxel/armor/tarasque/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/tarasque_right.vox rename to assets/voxygen/voxel/armor/tarasque/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/tarasque.vox b/assets/voxygen/voxel/armor/tarasque/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/tarasque.vox rename to assets/voxygen/voxel/armor/tarasque/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/tarasque_right.vox b/assets/voxygen/voxel/armor/tarasque/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/tarasque_right.vox rename to assets/voxygen/voxel/armor/tarasque/shoulder.vox diff --git a/assets/voxygen/voxel/armor/belt/twigs_belt.vox b/assets/voxygen/voxel/armor/twigs/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/twigs_belt.vox rename to assets/voxygen/voxel/armor/twigs/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/twigs_chest.vox b/assets/voxygen/voxel/armor/twigs/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/twigs_chest.vox rename to assets/voxygen/voxel/armor/twigs/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/twigs_foot.vox b/assets/voxygen/voxel/armor/twigs/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/twigs_foot.vox rename to assets/voxygen/voxel/armor/twigs/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/twigs_glove_left.vox b/assets/voxygen/voxel/armor/twigs/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/twigs_glove_left.vox rename to assets/voxygen/voxel/armor/twigs/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/twigs_pants.vox b/assets/voxygen/voxel/armor/twigs/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/twigs_pants.vox rename to assets/voxygen/voxel/armor/twigs/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/twigs_left.vox b/assets/voxygen/voxel/armor/twigs/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/twigs_left.vox rename to assets/voxygen/voxel/armor/twigs/shoulder.vox diff --git a/assets/voxygen/voxel/armor/belt/twigsflowers_belt.vox b/assets/voxygen/voxel/armor/twigsflowers/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/twigsflowers_belt.vox rename to assets/voxygen/voxel/armor/twigsflowers/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/twigsflowers_chest.vox b/assets/voxygen/voxel/armor/twigsflowers/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/twigsflowers_chest.vox rename to assets/voxygen/voxel/armor/twigsflowers/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/twigsflowers_foot.vox b/assets/voxygen/voxel/armor/twigsflowers/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/twigsflowers_foot.vox rename to assets/voxygen/voxel/armor/twigsflowers/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/twigsflowers_glove_left.vox b/assets/voxygen/voxel/armor/twigsflowers/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/twigsflowers_glove_left.vox rename to assets/voxygen/voxel/armor/twigsflowers/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/twigsflowers_pants.vox b/assets/voxygen/voxel/armor/twigsflowers/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/twigsflowers_pants.vox rename to assets/voxygen/voxel/armor/twigsflowers/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/twigsflowers_shoulder_left.vox b/assets/voxygen/voxel/armor/twigsflowers/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/twigsflowers_shoulder_left.vox rename to assets/voxygen/voxel/armor/twigsflowers/shoulder.vox diff --git a/assets/voxygen/voxel/armor/belt/twigsleaves_belt.vox b/assets/voxygen/voxel/armor/twigsleaves/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/twigsleaves_belt.vox rename to assets/voxygen/voxel/armor/twigsleaves/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/twigsleaves_chest.vox b/assets/voxygen/voxel/armor/twigsleaves/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/twigsleaves_chest.vox rename to assets/voxygen/voxel/armor/twigsleaves/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/twigsleaves_foot.vox b/assets/voxygen/voxel/armor/twigsleaves/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/twigsleaves_foot.vox rename to assets/voxygen/voxel/armor/twigsleaves/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/twigsleaves_glove_left.vox b/assets/voxygen/voxel/armor/twigsleaves/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/twigsleaves_glove_left.vox rename to assets/voxygen/voxel/armor/twigsleaves/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/twigsleaves_pants.vox b/assets/voxygen/voxel/armor/twigsleaves/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/twigsleaves_pants.vox rename to assets/voxygen/voxel/armor/twigsleaves/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/twigsleaves_shoulder_left.vox b/assets/voxygen/voxel/armor/twigsleaves/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/twigsleaves_shoulder_left.vox rename to assets/voxygen/voxel/armor/twigsleaves/shoulder.vox diff --git a/assets/voxygen/voxel/armor/back/velorite_battlemage.vox b/assets/voxygen/voxel/armor/velorite_battlemage/back.vox similarity index 100% rename from assets/voxygen/voxel/armor/back/velorite_battlemage.vox rename to assets/voxygen/voxel/armor/velorite_battlemage/back.vox diff --git a/assets/voxygen/voxel/armor/belt/velorite_battlemage.vox b/assets/voxygen/voxel/armor/velorite_battlemage/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/velorite_battlemage.vox rename to assets/voxygen/voxel/armor/velorite_battlemage/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/velorite_battlemage.vox b/assets/voxygen/voxel/armor/velorite_battlemage/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/velorite_battlemage.vox rename to assets/voxygen/voxel/armor/velorite_battlemage/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/velorite_battlemage.vox b/assets/voxygen/voxel/armor/velorite_battlemage/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/velorite_battlemage.vox rename to assets/voxygen/voxel/armor/velorite_battlemage/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/velorite_battlemage_right.vox b/assets/voxygen/voxel/armor/velorite_battlemage/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/velorite_battlemage_right.vox rename to assets/voxygen/voxel/armor/velorite_battlemage/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/velorite_battlemage.vox b/assets/voxygen/voxel/armor/velorite_battlemage/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/velorite_battlemage.vox rename to assets/voxygen/voxel/armor/velorite_battlemage/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/velorite_battlemage_left.vox b/assets/voxygen/voxel/armor/velorite_battlemage/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/velorite_battlemage_left.vox rename to assets/voxygen/voxel/armor/velorite_battlemage/shoulder.vox diff --git a/assets/voxygen/voxel/armor/back/warlock.vox b/assets/voxygen/voxel/armor/warlock/back.vox similarity index 100% rename from assets/voxygen/voxel/armor/back/warlock.vox rename to assets/voxygen/voxel/armor/warlock/back.vox diff --git a/assets/voxygen/voxel/armor/belt/warlock.vox b/assets/voxygen/voxel/armor/warlock/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/warlock.vox rename to assets/voxygen/voxel/armor/warlock/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/warlock.vox b/assets/voxygen/voxel/armor/warlock/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/warlock.vox rename to assets/voxygen/voxel/armor/warlock/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/warlock.vox b/assets/voxygen/voxel/armor/warlock/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/warlock.vox rename to assets/voxygen/voxel/armor/warlock/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/warlock_left.vox b/assets/voxygen/voxel/armor/warlock/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/warlock_left.vox rename to assets/voxygen/voxel/armor/warlock/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/warlock.vox b/assets/voxygen/voxel/armor/warlock/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/warlock.vox rename to assets/voxygen/voxel/armor/warlock/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/warlock_left.vox b/assets/voxygen/voxel/armor/warlock/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/warlock_left.vox rename to assets/voxygen/voxel/armor/warlock/shoulder.vox diff --git a/assets/voxygen/voxel/armor/back/warlord.vox b/assets/voxygen/voxel/armor/warlord/back.vox similarity index 100% rename from assets/voxygen/voxel/armor/back/warlord.vox rename to assets/voxygen/voxel/armor/warlord/back.vox diff --git a/assets/voxygen/voxel/armor/belt/warlord.vox b/assets/voxygen/voxel/armor/warlord/belt.vox similarity index 100% rename from assets/voxygen/voxel/armor/belt/warlord.vox rename to assets/voxygen/voxel/armor/warlord/belt.vox diff --git a/assets/voxygen/voxel/armor/chest/warlord.vox b/assets/voxygen/voxel/armor/warlord/chest.vox similarity index 100% rename from assets/voxygen/voxel/armor/chest/warlord.vox rename to assets/voxygen/voxel/armor/warlord/chest.vox diff --git a/assets/voxygen/voxel/armor/foot/warlord.vox b/assets/voxygen/voxel/armor/warlord/foot.vox similarity index 100% rename from assets/voxygen/voxel/armor/foot/warlord.vox rename to assets/voxygen/voxel/armor/warlord/foot.vox diff --git a/assets/voxygen/voxel/armor/hand/warlord_right.vox b/assets/voxygen/voxel/armor/warlord/hand.vox similarity index 100% rename from assets/voxygen/voxel/armor/hand/warlord_right.vox rename to assets/voxygen/voxel/armor/warlord/hand.vox diff --git a/assets/voxygen/voxel/armor/pants/warlord.vox b/assets/voxygen/voxel/armor/warlord/pants.vox similarity index 100% rename from assets/voxygen/voxel/armor/pants/warlord.vox rename to assets/voxygen/voxel/armor/warlord/pants.vox diff --git a/assets/voxygen/voxel/armor/shoulder/warlord_right.vox b/assets/voxygen/voxel/armor/warlord/shoulder.vox similarity index 100% rename from assets/voxygen/voxel/armor/shoulder/warlord_right.vox rename to assets/voxygen/voxel/armor/warlord/shoulder.vox diff --git a/assets/voxygen/voxel/humanoid_armor_back_manifest.ron b/assets/voxygen/voxel/humanoid_armor_back_manifest.ron index 933113d6cd..81e30417f8 100644 --- a/assets/voxygen/voxel/humanoid_armor_back_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_back_manifest.ron @@ -5,47 +5,47 @@ ), map: { "Short0": ( - vox_spec: ("armor.back.short-0", (-5.0, -1.0, -11.0)), + vox_spec: ("armor.misc.back.short-0", (-5.0, -1.0, -11.0)), color: None ), "Admin": ( - vox_spec: ("armor.back.admin", (-5.0, -1.0, -11.0)), + vox_spec: ("armor.misc.back.admin", (-5.0, -1.0, -11.0)), color: None ), - "DungPurp0": ( - vox_spec: ("armor.back.dung_purp-0", (-5.0, -1.0, -14.0)), + "DungeonPurple": ( + vox_spec: ("armor.misc.back.dungeon_purple", (-5.0, -1.0, -14.0)), color: None ), "Short1": ( - vox_spec: ("armor.back.short-1", (-5.0, -1.0, -11.0)), + vox_spec: ("armor.misc.back.short-1", (-5.0, -1.0, -11.0)), color: None ), - "Short2": ( - vox_spec: ("armor.back.short-2", (-5.0, -1.0, -11.0)), + "Agile": ( + vox_spec: ("armor.agile.back", (-5.0, -1.0, -11.0)), color: None ), - "Backpack0": ( - vox_spec: ("armor.back.backpack-0", (-7.0, -5.0, -10.0)), + "Backpack": ( + vox_spec: ("armor.misc.back.backpack", (-7.0, -5.0, -10.0)), color: None ), - "BackpackBlue0": ( - vox_spec: ("armor.back.backpack-grey", (-7.0, -5.0, -10.0)), + "BackpackBlue": ( + vox_spec: ("armor.misc.back.backpack-grey", (-7.0, -5.0, -10.0)), color: Some((76, 72, 178)) ), - "VeloriteMage0": ( - vox_spec: ("armor.back.velorite_battlemage", (-5.0, -1.0, -14.0)), + "VeloriteMage": ( + vox_spec: ("armor.velorite_battlemage.back", (-5.0, -1.0, -14.0)), color: None ), - "LeatherBlue0": ( - vox_spec: ("armor.back.leather_blue-0", (-5.0, -1.0, -11.0)), + "LeatherBlue": ( + vox_spec: ("armor.leather_blue.back", (-5.0, -1.0, -11.0)), color: None ), "Warlord": ( - vox_spec: ("armor.back.warlord", (-5.0, -1.0, -14.0)), + vox_spec: ("armor.warlord.back", (-5.0, -1.0, -14.0)), color: None ), "Warlock": ( - vox_spec: ("armor.back.warlock", (-5.0, -1.5, -15.5)), + vox_spec: ("armor.warlock.back", (-5.0, -1.5, -15.5)), color: None ), }, diff --git a/assets/voxygen/voxel/humanoid_armor_belt_manifest.ron b/assets/voxygen/voxel/humanoid_armor_belt_manifest.ron index 109a2e2b0b..d9be59fe73 100644 --- a/assets/voxygen/voxel/humanoid_armor_belt_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_belt_manifest.ron @@ -1,103 +1,99 @@ (( default: ( - vox_spec: ("armor.belt.belt_none", (-5.0, -3.5, 2.0)), + vox_spec: ("armor.misc.belt.none", (-5.0, -3.5, 2.0)), color: None ), map: { "Dark": ( - vox_spec: ("armor.belt.dark", (-4.0, -3.5, 2.0)), + vox_spec: ("armor.misc.belt.dark", (-4.0, -3.5, 2.0)), color: None ), "TurqCloth": ( - vox_spec: ("armor.belt.cloth_turq", (-4.0, -3.5, -6.0)), + vox_spec: ("armor.misc.belt.cloth_turq", (-4.0, -3.5, -6.0)), color: None ), "BloodCloth": ( - vox_spec: ("armor.belt.cloth_blood", (-4.0, -3.5, -6.0)), + vox_spec: ("armor.misc.belt.cloth_blood", (-4.0, -3.5, -6.0)), color: Some((29, 26, 33)) ), "BlackCloth": ( - vox_spec: ("armor.belt.cloth_black", (-4.0, -3.5, -6.0)), + vox_spec: ("armor.misc.belt.cloth_black", (-4.0, -3.5, -6.0)), color: Some((29, 26, 33)) ), "Assassin": ( - vox_spec: ("armor.belt.assa", (-5.0, -3.5, 2.0)), + vox_spec: ("armor.assassin.belt", (-5.0, -3.5, 2.0)), color: None ), - "Dark": ( - vox_spec: ("armor.belt.dark", (-4.0, -3.5, 2.0)), + "Plate": ( + vox_spec: ("armor.plate.belt", (-5.0, -3.5, 2.0)), color: None ), - "Plate0": ( - vox_spec: ("armor.belt.plate-0", (-5.0, -3.5, 2.0)), + "Swift": ( + vox_spec: ("armor.swift.belt", (-5.0, -3.5, 2.0)), color: None ), - "Leather0": ( - vox_spec: ("armor.belt.leather-0", (-5.0, -3.5, 2.0)), + "ClothPurple": ( + vox_spec: ("armor.cloth_purple.belt", (-5.0, -3.5, 2.0)), color: None ), - "ClothPurple0": ( - vox_spec: ("armor.belt.cloth_purple-0", (-5.0, -3.5, 2.0)), + "ClothBlue": ( + vox_spec: ("armor.cloth_blue.belt", (-5.0, -3.5, 2.0)), color: None ), - "ClothBlue0": ( - vox_spec: ("armor.belt.cloth_blue-0", (-5.0, -3.5, 2.0)), - color: None - ), - "ClothGreen0": ( - vox_spec: ("armor.belt.cloth_green-0", (-5.0, -3.5, 2.0)), + "ClothGreen": ( + vox_spec: ("armor.cloth_green.belt", (-5.0, -3.5, 2.0)), color: None ), "Cultist": ( - vox_spec: ("armor.belt.cultist", (-5.0, -3.5, 1.0)), + vox_spec: ("armor.cultist.belt", (-5.0, -3.5, 1.0)), color: None ), - "Leather2": ( - vox_spec: ("armor.belt.leather-2", (-5.0, -3.5, 2.0)), + "Agile": ( + vox_spec: ("armor.agile.belt", (-5.0, -3.5, 2.0)), color: None ), - "Steel0": ( - vox_spec: ("armor.belt.steel-0", (-5.0, -4.5, 2.0)), + "Steel": ( + vox_spec: ("armor.steel.belt", (-5.0, -4.5, 2.0)), color: None ), - "PlateLeather": ( - vox_spec: ("armor.belt.plate_leather-0", (-4.0, -4.5, 2.0)), + "LeatherPlate": ( + vox_spec: ("armor.leather_plate.belt", (-4.0, -4.5, 2.0)), color: None ), "Druid": ( - vox_spec: ("armor.belt.druid", (-4.0, -3.5, -1.0)), + vox_spec: ("armor.druid.belt", (-4.0, -3.5, -1.0)), color: None ), - "Twig": ( - vox_spec: ("armor.belt.twigs_belt", (-4.0, -3.5, -1.0)), + "Twigs": ( + vox_spec: ("armor.twigs.belt", (-4.0, -3.5, -1.0)), color: None ), - "Twigsleaves": ( - vox_spec: ("armor.belt.twigsleaves_belt", (-4.0, -3.5, -1.0)), + "TwigsLeaves": ( + vox_spec: ("armor.twigsleaves.belt", (-4.0, -3.5, -1.0)), color: None ), - "Twigsflowers": ( - vox_spec: ("armor.belt.twigsflowers_belt", (-4.0, -3.5, -1.0)), + "TwigsFlowers": ( + vox_spec: ("armor.twigsflowers.belt", (-4.0, -3.5, -1.0)), color: None ), "Tarasque":( - vox_spec: ("armor.belt.tarasque", (-5.0, -3.5, 2.0)), + vox_spec: ("armor.tarasque.belt", (-5.0, -3.5, 2.0)), color: None ), "Bonerattler":( - vox_spec: ("armor.belt.bonerattler", (-5.0, -4.5, 2.0)), + vox_spec: ("armor.bonerattler.belt", (-5.0, -4.5, 2.0)), color: None ), - "VeloriteMage0": ( - vox_spec: ("armor.belt.velorite_battlemage", (-5.0, -3.5, 2.0)), + "VeloriteMage": ( + vox_spec: ("armor.velorite_battlemage.belt", (-5.0, -3.5, 2.0)), color: None ), "Warlord":( - vox_spec: ("armor.belt.warlord", (-4.0, -3.5, 1.0)), + vox_spec: ("armor.warlord.belt", (-4.0, -3.5, 1.0)), color: None ), "Warlock":( - vox_spec: ("armor.belt.warlock", (-4.0, -3.0, 2.0)), + vox_spec: ("armor.warlock.belt", (-4.0, -3.0, 2.0)), color: None ), }, diff --git a/assets/voxygen/voxel/humanoid_armor_chest_manifest.ron b/assets/voxygen/voxel/humanoid_armor_chest_manifest.ron index 73f5a91db1..12e8be4961 100644 --- a/assets/voxygen/voxel/humanoid_armor_chest_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_chest_manifest.ron @@ -1,169 +1,165 @@ (( default: ( - vox_spec: ("armor.chest.chest_none", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.none", (-7.0, -3.5, 2.0)), color: None ), map: { "Blue": ( - vox_spec: ("armor.chest.grayscale", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.grayscale", (-7.0, -3.5, 2.0)), color: Some((44, 74, 109)) ), "Brown": ( - vox_spec: ("armor.chest.grayscale", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.grayscale", (-7.0, -3.5, 2.0)), color: Some((90, 49, 43)) ), "Dark": ( - vox_spec: ("armor.chest.grayscale", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.grayscale", (-7.0, -3.5, 2.0)), color: Some((73, 63, 59)) ), "Green": ( - vox_spec: ("armor.chest.grayscale", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.grayscale", (-7.0, -3.5, 2.0)), color: Some((59, 95, 67)) ), "Orange": ( - vox_spec: ("armor.chest.grayscale", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.grayscale", (-7.0, -3.5, 2.0)), color: Some((109, 58, 58)) ), "Midnight": ( - vox_spec: ("armor.chest.grayscale", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.grayscale", (-7.0, -3.5, 2.0)), color: Some((29, 26, 33)) ), "Assassin": ( - vox_spec: ("armor.chest.assa", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.assassin.chest", (-7.0, -3.5, 2.0)), color: None ), "Kimono": ( - vox_spec: ("armor.chest.cloth_red_kimono", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.cloth_red_kimono", (-7.0, -3.5, 2.0)), color: None ), - "PlateGreen0": ( - vox_spec: ("armor.chest.plate_green-0", (-7.0, -3.5, 2.0)), + "Plate": ( + vox_spec: ("armor.plate.chest", (-7.0, -3.5, 2.0)), color: None ), - "PlateRed0": ( - vox_spec: ("armor.chest.plate_grey-0", (-7.0, -3.5, 2.0)), + "PlateRed": ( + vox_spec: ("armor.misc.chest.plate_grey", (-7.0, -3.5, 2.0)), color: Some((124, 38, 46)) ), - "Leather0": ( - vox_spec: ("armor.chest.leather-0", (-7.0, -3.5, 2.0)), + "Swift": ( + vox_spec: ("armor.swift.chest", (-7.0, -3.5, 2.0)), color: None ), - "LeatherBlue0": ( - vox_spec: ("armor.chest.leather_blue-0", (-7.0, -3.5, 2.0)), + "LeatherBlue": ( + vox_spec: ("armor.leather_blue.chest", (-7.0, -3.5, 2.0)), color: None ), - "ClothPurple0": ( - vox_spec: ("armor.chest.cloth_purple-0", (-7.0, -3.5, 1.0)), + "ClothPurple": ( + vox_spec: ("armor.cloth_purple.chest", (-7.0, -3.5, 1.0)), color: None ), - "ClothBlue0": ( - vox_spec: ("armor.chest.cloth_blue-0", (-7.0, -3.5, 1.0)), + "ClothBlue": ( + vox_spec: ("armor.cloth_blue.chest", (-7.0, -3.5, 1.0)), color: None ), - "ClothGreen0": ( - vox_spec: ("armor.chest.cloth_green-0", (-7.0, -3.5, 1.0)), + "ClothGreen": ( + vox_spec: ("armor.cloth_green.chest", (-7.0, -3.5, 1.0)), color: None ), - "Rugged0": ( - vox_spec: ("armor.chest.rugged-0", (-7.0, -3.5, 2.0)), + "Rugged": ( + vox_spec: ("armor.rugged.chest", (-7.0, -3.5, 2.0)), color: None ), // Villagers "WorkerGreen0": ( - vox_spec: ("armor.chest.worker_white-0", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.worker_white", (-7.0, -3.5, 2.0)), color: Some((88, 108, 65)) ), "WorkerGreen1": ( - vox_spec: ("armor.chest.shirt_white-0", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.shirt_white", (-7.0, -3.5, 2.0)), color: Some((88, 108, 65)) ), "WorkerRed0": ( - vox_spec: ("armor.chest.worker_white-0", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.worker_white", (-7.0, -3.5, 2.0)), color: Some((124, 38, 46)) ), "WorkerRed1": ( - vox_spec: ("armor.chest.shirt_white-0", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.shirt_white", (-7.0, -3.5, 2.0)), color: Some((124, 38, 46)) ), "WorkerPurple0": ( - vox_spec: ("armor.chest.worker_white-0", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.worker_white", (-7.0, -3.5, 2.0)), color: Some((64, 47, 56)) ), "WorkerPurple1": ( - vox_spec: ("armor.chest.shirt_white-0", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.shirt_white", (-7.0, -3.5, 2.0)), color: Some((64, 47, 56)) ), "WorkerYellow0": ( - vox_spec: ("armor.chest.worker_white-0", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.worker_white", (-7.0, -3.5, 2.0)), color: Some((184, 132, 40)) ), "WorkerYellow1": ( - vox_spec: ("armor.chest.shirt_white-0", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.shirt_white", (-7.0, -3.5, 2.0)), color: Some((184, 132, 40)) ), "WorkerOrange0": ( - vox_spec: ("armor.chest.worker_white-0", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.worker_white", (-7.0, -3.5, 2.0)), color: Some((135, 82, 67)) ), "WorkerOrange1": ( - vox_spec: ("armor.chest.shirt_white-0", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.misc.chest.shirt_white", (-7.0, -3.5, 2.0)), color: Some((135, 82, 67)) ), "Druid": ( - vox_spec: ("armor.chest.druid", (-7.0, -3.5, 2.0)), + vox_spec: ("armor.druid.chest", (-7.0, -3.5, 2.0)), color: None ), - "Twig": ( - vox_spec: ("armor.chest.twigs_chest", (-7.0, -3.5, 2.0)), + "Twigs": ( + vox_spec: ("armor.twigs.chest", (-7.0, -3.5, 2.0)), color: None ), - "Twigsleaves": ( - vox_spec: ("armor.chest.twigsleaves_chest", (-7.0, -3.5, 2.0)), + "TwigsLeaves": ( + vox_spec: ("armor.twigsleaves.chest", (-7.0, -3.5, 2.0)), color: None ), - "Twigsflowers": ( - vox_spec: ("armor.chest.twigsflowers_chest", (-7.0, -3.5, 2.0)), + "TwigsFlowers": ( + vox_spec: ("armor.twigsflowers.chest", (-7.0, -3.5, 2.0)), color: None ), // Cultists - "CultistPurple": ( - vox_spec: ("armor.chest.cultist", (-7.0, -3.5, 2.0)), + "Cultist": ( + vox_spec: ("armor.cultist.chest", (-7.0, -3.5, 2.0)), color: Some((30, 0, 64)) ), - "VeloriteMage0": ( - vox_spec: ("armor.chest.cultist", (-7.0, -3.5, 2.0)), - color: Some((57, 81, 132)) - ), - "Steel0": ( - vox_spec: ("armor.chest.steel-0", (-8.0, -4.5, 2.0)), + "Steel": ( + vox_spec: ("armor.steel.chest", (-8.0, -4.5, 2.0)), color: None ), - "PlateLeather": ( - vox_spec: ("armor.chest.plate_leather", (-8.0, -5.5, 2.0)), + "LeatherPlate": ( + vox_spec: ("armor.leather_plate.chest", (-8.0, -5.5, 2.0)), color: None ), - "Leather2": ( - vox_spec: ("armor.chest.leather-2", (-7.0, -3.5, 2.0)), + "Agile": ( + vox_spec: ("armor.agile.chest", (-7.0, -3.5, 2.0)), color: None ), "Tarasque":( - vox_spec: ("armor.chest.tarasque", (-8.0, -4.5, 2.0)), + vox_spec: ("armor.tarasque.chest", (-8.0, -4.5, 2.0)), color: None ), "Bonerattler":( - vox_spec: ("armor.chest.bonerattler", (-7.0, -4.5, 2.0)), + vox_spec: ("armor.bonerattler.chest", (-7.0, -4.5, 2.0)), color: None ), - "VeloriteMage0": ( - vox_spec: ("armor.chest.velorite_battlemage", (-7.0, -3.5, 0.5)), + "VeloriteMage": ( + vox_spec: ("armor.velorite_battlemage.chest", (-7.0, -3.5, 0.5)), color: None ), "Warlord": ( - vox_spec: ("armor.chest.warlord", (-7.0, -3.5, -0.5)), + vox_spec: ("armor.warlord.chest", (-7.0, -3.5, -0.5)), color: None ), "Warlock": ( - vox_spec: ("armor.chest.warlock", (-7.0, -3.5, 0.5)), + vox_spec: ("armor.warlock.chest", (-7.0, -3.5, 0.5)), color: None ), }, diff --git a/assets/voxygen/voxel/humanoid_armor_foot_manifest.ron b/assets/voxygen/voxel/humanoid_armor_foot_manifest.ron index 86ff26fb20..43235c8e94 100644 --- a/assets/voxygen/voxel/humanoid_armor_foot_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_foot_manifest.ron @@ -1,99 +1,99 @@ (( default: ( - vox_spec: ("armor.foot.foot_none", (-2.5, -3.5, -2.0)), + vox_spec: ("armor.misc.foot.none", (-2.5, -3.5, -2.0)), color: None ), map: { "Dark": ( - vox_spec: ("armor.foot.dark-0", (-2.5, -3.5, -2.0)), + vox_spec: ("armor.misc.foot.dark", (-2.5, -3.5, -2.0)), color: None ), "Assassin": ( - vox_spec: ("armor.foot.assa", (-2.5, -3.5, -2.0)), + vox_spec: ("armor.assassin.foot", (-2.5, -3.5, -2.0)), color: None ), "Jester": ( - vox_spec: ("armor.foot.dark_jester-elf_shoe", (-2.5, -3.0, -2.0)), + vox_spec: ("armor.misc.foot.dark_jester_elf", (-2.5, -3.0, -2.0)), color: None ), - "Plate0": ( - vox_spec: ("armor.foot.plate-0", (-2.5, -3.5, -2.0)), + "Plate": ( + vox_spec: ("armor.plate.foot", (-2.5, -3.5, -2.0)), color: None ), - "Leather0": ( - vox_spec: ("armor.foot.leather-0", (-2.5, -3.5, -2.0)), + "Swift": ( + vox_spec: ("armor.swift.foot", (-2.5, -3.5, -2.0)), color: None ), - "ClothPurple0": ( - vox_spec: ("armor.foot.cloth_purple-0", (-2.5, -3.5, -2.0)), + "ClothPurple": ( + vox_spec: ("armor.cloth_purple.foot", (-2.5, -3.5, -2.0)), color: None ), - "ClothBlue0": ( - vox_spec: ("armor.foot.cloth_blue-0", (-2.5, -3.5, -2.0)), + "ClothBlue": ( + vox_spec: ("armor.cloth_blue.foot", (-2.5, -3.5, -2.0)), color: None ), - "ClothGreen0": ( - vox_spec: ("armor.foot.cloth_green-0", (-2.5, -3.5, -2.0)), + "ClothGreen": ( + vox_spec: ("armor.cloth_green.foot", (-2.5, -3.5, -2.0)), color: None ), - "Sandal0": ( - vox_spec: ("armor.foot.cloth_sandals", (-2.5, -3.5, -2.0)), + "Sandal": ( + vox_spec: ("armor.misc.foot.cloth_sandal", (-2.5, -3.5, -2.0)), color: None ), "Cultist": ( - vox_spec: ("armor.foot.cultist", (-2.5, -3.5, -2.0)), + vox_spec: ("armor.cultist.foot", (-2.5, -3.5, -2.0)), color: None ), - "Steel0": ( - vox_spec: ("armor.foot.steel-0", (-2.5, -3.5, -2.0)), + "Steel": ( + vox_spec: ("armor.steel.foot", (-2.5, -3.5, -2.0)), color: None ), - "PlateLeather": ( - vox_spec: ("armor.foot.plate_leather", (-2.5, -3.5, -2.0)), + "LeatherPlate": ( + vox_spec: ("armor.leather_plate.foot", (-2.5, -3.5, -2.0)), color: None ), - "Leather2": ( - vox_spec: ("armor.foot.leather-2", (-2.5, -3.5, -2.0)), + "Agile": ( + vox_spec: ("armor.agile.foot", (-2.5, -3.5, -2.0)), color: None ), - "JackalopeSlips": ( - vox_spec: ("armor.foot.jackalope_slippers", (-2.5, -3.5, -2.0)), + "Jackalope": ( + vox_spec: ("armor.misc.foot.jackalope", (-2.5, -3.5, -2.0)), color: None ), "Druid": ( - vox_spec: ("armor.foot.druid", (-2.5, -3.5, -2.0)), + vox_spec: ("armor.druid.foot", (-2.5, -3.5, -2.0)), color: None ), - "Twig": ( - vox_spec: ("armor.foot.twigs_foot", (-2.5, -3.5, -2.0)), + "Twigs": ( + vox_spec: ("armor.twigs.foot", (-2.5, -3.5, -2.0)), color: None ), - "Twigsleaves": ( - vox_spec: ("armor.foot.twigsleaves_foot", (-2.5, -3.5, -2.0)), + "TwigsLeaves": ( + vox_spec: ("armor.twigsleaves.foot", (-2.5, -3.5, -2.0)), color: None ), - "Twigsflowers": ( - vox_spec: ("armor.foot.twigsflowers_foot", (-2.5, -3.5, -2.0)), + "TwigsFlowers": ( + vox_spec: ("armor.twigsflowers.foot", (-2.5, -3.5, -2.0)), color: None ), "Tarasque":( - vox_spec: ("armor.foot.tarasque", (-2.5, -3.5, -2.0)), + vox_spec: ("armor.tarasque.foot", (-2.5, -3.5, -2.0)), color: None ), "Bonerattler":( - vox_spec: ("armor.foot.bonerattler", (-2.5, -3.5, -2.0)), + vox_spec: ("armor.bonerattler.foot", (-2.5, -3.5, -2.0)), color: None ), - "VeloriteMage0": ( - vox_spec: ("armor.foot.velorite_battlemage", (-2.5, -3.5, -2.0)), + "VeloriteMage": ( + vox_spec: ("armor.velorite_battlemage.foot", (-2.5, -3.5, -2.0)), color: None ), "Warlord": ( - vox_spec: ("armor.foot.warlord", (-2.5, -3.5, -2.0)), + vox_spec: ("armor.warlord.foot", (-2.5, -3.5, -2.0)), color: None ), "Warlock": ( - vox_spec: ("armor.foot.warlock", (-2.5, -3.5, -2.0)), + vox_spec: ("armor.warlock.foot", (-2.5, -3.5, -2.0)), color: None ), }, diff --git a/assets/voxygen/voxel/humanoid_armor_hand_manifest.ron b/assets/voxygen/voxel/humanoid_armor_hand_manifest.ron index 4fe3176e98..1bf311f527 100644 --- a/assets/voxygen/voxel/humanoid_armor_hand_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_hand_manifest.ron @@ -1,222 +1,212 @@ (( default: ( left: ( - vox_spec: ("armor.hand.hand_right_none", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.misc.hand.none", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.hand_right_none", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.misc.hand.none", (-1.5, -1.5, -2.5)), color: None ) ), map: { "Assassin": ( left: ( - vox_spec: ("armor.hand.assa_right", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.assassin.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.assa_right", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.assassin.hand", (-1.5, -1.5, -2.5)), color: None ) ), "Cloth": ( left: ( - vox_spec: ("armor.hand.cloth_basic_right", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.misc.hand.cloth_basic", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.cloth_basic_right", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.misc.hand.cloth_basic", (-1.5, -1.5, -2.5)), color: None ) ), - "Plate0": ( + "Plate": ( left: ( - vox_spec: ("armor.hand.plate_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.plate.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.plate_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.plate.hand", (-1.5, -1.5, -2.5)), color: None ) ), - "Leather0": ( + "Swift": ( left: ( - vox_spec: ("armor.hand.leather_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.swift.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.leather_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.swift.hand", (-1.5, -1.5, -2.5)), color: None ) ), - "ClothPurple0": ( + "ClothPurple": ( left: ( - vox_spec: ("armor.hand.cloth_purple_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.cloth_purple.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.cloth_purple_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.cloth_purple.hand", (-1.5, -1.5, -2.5)), color: None ) ), - "ClothBlue0": ( + "ClothBlue": ( left: ( - vox_spec: ("armor.hand.cloth_blue_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.cloth_blue.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.cloth_blue_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.cloth_blue.hand", (-1.5, -1.5, -2.5)), color: None ) ), - "ClothGreen0": ( + "ClothGreen": ( left: ( - vox_spec: ("armor.hand.cloth_green_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.cloth_green.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.cloth_green_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.cloth_green.hand", (-1.5, -1.5, -2.5)), color: None ) ), - "CultistPurple": ( + "Cultist": ( left: ( - vox_spec: ("armor.hand.cultist_right", (-3.0, -1.5, -2.5)), + vox_spec: ("armor.cultist.hand", (-3.0, -1.5, -2.5)), color: Some((30, 0, 64)) ), right: ( - vox_spec: ("armor.hand.cultist_right", (-2.0, -1.5, -2.5)), + vox_spec: ("armor.cultist.hand", (-2.0, -1.5, -2.5)), color: Some((30, 0, 64)) ) ), - "VeloriteMage0": ( + "Steel": ( left: ( - vox_spec: ("armor.hand.cultist_right", (-3.0, -1.5, -2.5)), - color: Some((57, 81, 132)) - ), - right: ( - vox_spec: ("armor.hand.cultist_right", (-2.0, -1.5, -2.5)), - color: Some((57, 81, 132)) - ) - ), - "Steel0": ( - left: ( - vox_spec: ("armor.hand.steel_left-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.steel.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.steel_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.steel.hand", (-1.5, -1.5, -2.5)), color: None ) ), - "PlateLeather": ( + "LeatherPlate": ( left: ( - vox_spec: ("armor.hand.plate_leather_left-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.leather_plate.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.plate_leather_right-0", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.leather_plate.hand", (-1.5, -1.5, -2.5)), color: None ) ), - "Leather2": ( + "Agile": ( left: ( - vox_spec: ("armor.hand.leather_left-2", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.agile.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.leather_right-2", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.agile.hand", (-1.5, -1.5, -2.5)), color: None ) ), "Druid": ( left: ( - vox_spec: ("armor.hand.druid_left", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.druid.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.druid_right", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.druid.hand", (-1.5, -1.5, -2.5)), color: None ) ), - "Twig": ( + "Twigs": ( left: ( - vox_spec: ("armor.hand.twigs_glove_left", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.twigs.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.twigs_glove_right", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.twigs.hand", (-1.5, -1.5, -2.5)), color: None ) ), - "Twigsleaves": ( + "TwigsLeaves": ( left: ( - vox_spec: ("armor.hand.twigsleaves_glove_left", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.twigsleaves.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.twigsleaves_glove_right", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.twigsleaves.hand", (-1.5, -1.5, -2.5)), color: None ) ), - "Twigsflowers": ( + "TwigsFlowers": ( left: ( - vox_spec: ("armor.hand.twigsflowers_glove_left", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.twigsflowers.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.twigsflowers_glove_right", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.twigsflowers.hand", (-1.5, -1.5, -2.5)), color: None ) ), "Tarasque": ( left: ( - vox_spec: ("armor.hand.tarasque_left", (-2.5, -2.5, -2.5)), + vox_spec: ("armor.tarasque.hand", (-2.5, -2.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.tarasque_right", (-2.5, -2.5, -2.5)), + vox_spec: ("armor.tarasque.hand", (-2.5, -2.5, -2.5)), color: None ) ), "Bonerattler": ( left: ( - vox_spec: ("armor.hand.bonerattler_left", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.bonerattler.hand", (-1.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.bonerattler_right", (-1.5, -1.5, -2.5)), + vox_spec: ("armor.bonerattler.hand", (-1.5, -1.5, -2.5)), color: None ) ), - "VeloriteMage0": ( + "VeloriteMage": ( left: ( - vox_spec: ("armor.hand.velorite_battlemage_left", (-2.5, -1.5, -2.5)), + vox_spec: ("armor.velorite_battlemage.hand", (-2.5, -1.5, -2.5)), color: None ), right: ( - vox_spec: ("armor.hand.velorite_battlemage_left", (-2.5, -1.5, -2.5)), + vox_spec: ("armor.velorite_battlemage.hand", (-2.5, -1.5, -2.5)), color: None ) ), "Warlord": ( left: ( - vox_spec: ("armor.hand.warlord_left", (-3.0, -2.0, -5.0)), + vox_spec: ("armor.warlord.hand", (-3.0, -2.0, -5.0)), color: None ), right: ( - vox_spec: ("armor.hand.warlord_right", (-2.0, -2.0, -5.0)), + vox_spec: ("armor.warlord.hand", (-2.0, -2.0, -5.0)), color: None ) ), "Warlock": ( left: ( - vox_spec: ("armor.hand.warlock_left", (-4.5, -3.5, -5.0)), + vox_spec: ("armor.warlock.hand", (-4.5, -3.5, -5.0)), color: None ), right: ( - vox_spec: ("armor.hand.warlock_right", (-2.5, -3.5, -5.0)), + vox_spec: ("armor.warlock.hand", (-2.5, -3.5, -5.0)), color: None ) ), diff --git a/assets/voxygen/voxel/humanoid_armor_pants_manifest.ron b/assets/voxygen/voxel/humanoid_armor_pants_manifest.ron index 6e42a21601..e5239b2e04 100644 --- a/assets/voxygen/voxel/humanoid_armor_pants_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_pants_manifest.ron @@ -1,123 +1,123 @@ (( default: ( - vox_spec: ("armor.pants.pants_none", (-5.0, -3.5, 1.0)), + vox_spec: ("armor.misc.pants.none", (-5.0, -3.5, 1.0)), color: Some((28, 66, 109)) ), map: { "Blue": ( - vox_spec: ("armor.pants.grayscale", (-5.0, -3.5, 1.0)), + vox_spec: ("armor.misc.pants.grayscale", (-5.0, -3.5, 1.0)), color: Some((28, 66, 109)) ), "Brown": ( - vox_spec: ("armor.pants.grayscale", (-5.0, -3.5, 1.0)), + vox_spec: ("armor.misc.pants.grayscale", (-5.0, -3.5, 1.0)), color: Some((54, 30, 26)) ), "Dark": ( - vox_spec: ("armor.pants.grayscale", (-5.0, -3.5, 1.0)), + vox_spec: ("armor.misc.pants.grayscale", (-5.0, -3.5, 1.0)), color: Some((24, 19, 17)) ), "Hunting": ( - vox_spec: ("armor.pants.grayscale", (-5.0, -3.5, 1.0)), + vox_spec: ("armor.misc.pants.grayscale", (-5.0, -3.5, 1.0)), color: Some((49, 95, 59)) ), "Orange": ( - vox_spec: ("armor.pants.grayscale", (-5.0, -3.5, 1.0)), + vox_spec: ("armor.misc.pants.grayscale", (-5.0, -3.5, 1.0)), color: Some((148, 52, 33)) ), "Assassin": ( - vox_spec: ("armor.pants.assa", (-5.0, -3.5, 1.0)), + vox_spec: ("armor.assassin.pants", (-5.0, -3.5, 1.0)), color: None ), "Kimono": ( - vox_spec: ("armor.pants.cloth_red_kimono", (-5.0, -3.5, 0.0)), + vox_spec: ("armor.misc.pants.cloth_red_kimono", (-5.0, -3.5, 0.0)), color: None ), - "PlateGreen0": ( - vox_spec: ("armor.pants.plate_green-0", (-5.0, -3.5, 1.0)), + "Plate": ( + vox_spec: ("armor.plate.pants", (-5.0, -3.5, 1.0)), color: None ), - "PlateRed0": ( - vox_spec: ("armor.pants.plate_grey-0", (-5.0, -3.5, 1.0)), + "PlateRed": ( + vox_spec: ("armor.misc.pants.plate_grey", (-5.0, -3.5, 1.0)), color: Some((124, 38, 46)) ), - "Leather0": ( - vox_spec: ("armor.pants.leather-0", (-5.0, -3.5, 1.0)), + "Swift": ( + vox_spec: ("armor.swift.pants", (-5.0, -3.5, 1.0)), color: None ), - "ClothPurple0": ( - vox_spec: ("armor.pants.cloth_purple-0", (-5.0, -3.5, 0.0)), + "ClothPurple": ( + vox_spec: ("armor.cloth_purple.pants", (-5.0, -3.5, 0.0)), color: None ), - "ClothBlue0": ( - vox_spec: ("armor.pants.cloth_blue-0", (-5.0, -3.5, 0.0)), + "ClothBlue": ( + vox_spec: ("armor.cloth_blue.pants", (-5.0, -3.5, 0.0)), color: None ), - "ClothGreen0": ( - vox_spec: ("armor.pants.cloth_green-0", (-5.0, -3.5, 0.0)), + "ClothGreen": ( + vox_spec: ("armor.cloth_green.pants", (-5.0, -3.5, 0.0)), color: None ), - "Rugged0": ( - vox_spec: ("armor.pants.rugged-0", (-5.0, -3.5, 1.0)), + "Rugged": ( + vox_spec: ("armor.rugged.pants", (-5.0, -3.5, 1.0)), color: None ), - "WorkerBlue0": ( - vox_spec: ("armor.pants.worker_blue-0", (-5.0, -3.5, 1.0)), + "WorkerBlue": ( + vox_spec: ("armor.misc.pants.worker_blue", (-5.0, -3.5, 1.0)), color: None ), - "CultistPurple": ( - vox_spec: ("armor.pants.cultist", (-5.0, -3.5, 1.0)), + "Cultist": ( + vox_spec: ("armor.cultist.pants", (-5.0, -3.5, 1.0)), color: Some((30, 0, 64)) ), - "Steel0": ( - vox_spec: ("armor.pants.steel-0", (-6.0, -4.5, 1.0)), + "Steel": ( + vox_spec: ("armor.steel.pants", (-6.0, -4.5, 1.0)), color: None ), - "PlateLeather": ( - vox_spec: ("armor.pants.plate_leather-0", (-5.0, -4.5, 1.0)), + "LeatherPlate": ( + vox_spec: ("armor.leather_plate.pants", (-5.0, -4.5, 1.0)), color: None ), - "Leather2": ( - vox_spec: ("armor.pants.leather-2", (-5.0, -3.5, 1.0)), + "Agile": ( + vox_spec: ("armor.agile.pants", (-5.0, -3.5, 1.0)), color: None ), "Druid": ( - vox_spec: ("armor.pants.druid", (-5.0, -3.5, -1.0)), + vox_spec: ("armor.druid.pants", (-5.0, -3.5, -1.0)), color: None ), - "Twig": ( - vox_spec: ("armor.pants.twigs_pants", (-5.0, -3.5, 0.0)), + "Twigs": ( + vox_spec: ("armor.twigs.pants", (-5.0, -3.5, 0.0)), color: None ), - "Twigsleaves": ( - vox_spec: ("armor.pants.twigsleaves_pants", (-5.0, -3.5, 0.0)), + "TwigsLeaves": ( + vox_spec: ("armor.twigsleaves.pants", (-5.0, -3.5, 0.0)), color: None ), - "Twigsflowers": ( - vox_spec: ("armor.pants.twigsflowers_pants", (-6.0, -3.5, 0.0)), + "TwigsFlowers": ( + vox_spec: ("armor.twigsflowers.pants", (-6.0, -3.5, 0.0)), color: None ), "Tarasque":( - vox_spec: ("armor.pants.tarasque", (-6.0, -4.5, 1.0)), + vox_spec: ("armor.tarasque.pants", (-6.0, -4.5, 1.0)), color: None ), "Bonerattler":( - vox_spec: ("armor.pants.bonerattler", (-5.0, -3.5, 1.0)), + vox_spec: ("armor.bonerattler.pants", (-5.0, -3.5, 1.0)), color: None ), - "VeloriteMage0": ( - vox_spec: ("armor.pants.velorite_battlemage", (-6.0, -3.5, -2.0)), + "VeloriteMage": ( + vox_spec: ("armor.velorite_battlemage.pants", (-6.0, -3.5, -2.0)), color: None ), - "LeatherBlue0": ( - vox_spec: ("armor.pants.leather_blue-0", (-5.0, -3.5, 1.0)), + "LeatherBlue": ( + vox_spec: ("armor.leather_blue.pants", (-5.0, -3.5, 1.0)), color: None ), "Warlord": ( - vox_spec: ("armor.pants.warlord", (-6.0, -4.5, -2.0)), + vox_spec: ("armor.warlord.pants", (-6.0, -4.5, -2.0)), color: None ), "Warlock": ( - vox_spec: ("armor.pants.warlock", (-5.0, -4.0, -2.0)), + vox_spec: ("armor.warlock.pants", (-5.0, -4.0, -2.0)), color: None ), }, diff --git a/assets/voxygen/voxel/humanoid_armor_shoulder_manifest.ron b/assets/voxygen/voxel/humanoid_armor_shoulder_manifest.ron index 9a394e488c..b6d950c856 100644 --- a/assets/voxygen/voxel/humanoid_armor_shoulder_manifest.ron +++ b/assets/voxygen/voxel/humanoid_armor_shoulder_manifest.ron @@ -23,291 +23,281 @@ ), "Assassin": ( left: ( - vox_spec: ("armor.shoulder.assa_right", (-4.0, -3.5, 1.0)), + vox_spec: ("armor.assassin.shoulder", (-4.0, -3.5, 1.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.assa_right", (-2.0, -3.5, 1.0)), + vox_spec: ("armor.assassin.shoulder", (-2.0, -3.5, 1.0)), color: None ) ), "Chain": ( left: ( - vox_spec: ("armor.shoulder.chain_right-1", (-4.0, -3.5, 1.0)), + vox_spec: ("armor.shoulder.chain", (-4.0, -3.5, 1.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.chain_right-1", (-2.0, -3.5, 1.0)), + vox_spec: ("armor.misc.shoulder.chain", (-2.0, -3.5, 1.0)), color: None ) ), - "Plate0": ( + "Plate": ( left: ( - vox_spec: ("armor.shoulder.plate_right-0", (-3.6, -3.5, -0.0)), + vox_spec: ("armor.plate.shoulder", (-3.6, -3.5, -0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.plate_right-0", (-2.6, -3.5, 0.0)), + vox_spec: ("armor.plate.shoulder", (-2.6, -3.5, 0.0)), color: None ) ), - "Leather0": ( + "Swift": ( left: ( - vox_spec: ("armor.shoulder.leather_right-0", (-3.2, -3.5, 0.0)), + vox_spec: ("armor.swift.shoulder", (-3.2, -3.5, 0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.leather_right-0", (-1.8, -3.5, 0.0)), + vox_spec: ("armor.swift.shoulder", (-1.4, -3.5, 0.0)), color: None ) ), - "Leather1": ( + "Leather": ( left: ( - vox_spec: ("armor.shoulder.leather_right-1", (-3.6, -4.5, 0.0)), + vox_spec: ("armor.leather.shoulder", (-3.6, -4.5, 0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.leather_right-1", (-2.6, -4.5, 0.0)), + vox_spec: ("armor.leather.shoulder", (-2.6, -4.5, 0.0)), color: None ) ), - "ClothPurple0": ( + "ClothPurple": ( left: ( - vox_spec: ("armor.shoulder.cloth_purple_right-0", (-3.2, -3.5, 0.0)), + vox_spec: ("armor.cloth_purple.shoulder", (-3.2, -3.5, 0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.cloth_purple_right-0", (-1.8, -3.5, 0.0)), + vox_spec: ("armor.cloth_purple.shoulder", (-1.8, -3.5, 0.0)), color: None ) ), "ClothBlue0": ( left: ( - vox_spec: ("armor.shoulder.cloth_blue_left-0", (-3.2, -3.5, 0.0)), + vox_spec: ("armor.cloth_blue.shoulder_0", (-3.2, -3.5, 0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.cloth_blue_right-0", (-1.8, -3.5, 0.0)), + vox_spec: ("armor.cloth_blue.shoulder_0", (-1.8, -3.5, 0.0)), color: None ) ), - "ClothGreen0": ( + "ClothGreen": ( left: ( - vox_spec: ("armor.shoulder.cloth_green_left-0", (-3.2, -3.5, 0.0)), + vox_spec: ("armor.cloth_green.shoulder", (-3.2, -3.5, 0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.cloth_green_right-0", (-1.8, -3.5, 0.0)), + vox_spec: ("armor.cloth_green.shoulder", (-1.8, -3.5, 0.0)), color: None ) ), - "CultistPurple": ( + "Cultist": ( left: ( - vox_spec: ("armor.shoulder.cultist_right", (-2.0, -3.5, 0.0)), + vox_spec: ("armor.cultist.shoulder", (-2.0, -3.5, 0.0)), color: Some((30, 0, 64)) ), right: ( - vox_spec: ("armor.shoulder.cultist_right", (-2.9, -3.5, 0.0)), + vox_spec: ("armor.cultist.shoulder", (-2.9, -3.5, 0.0)), color: Some((30, 0, 64)) ) ), - "VeloriteMage0": ( + "Steel": ( left: ( - vox_spec: ("armor.shoulder.cultist_right", (-2.0, -3.5, 0.0)), - color: Some((57, 81, 132)) - ), - right: ( - vox_spec: ("armor.shoulder.cultist_right", (-2.9, -3.5, 0.0)), - color: Some((57, 81, 132)) - ) - ), - "Steel0": ( - left: ( - vox_spec: ("armor.shoulder.steel_left-0", (-5.0, -4.5 , 0.0)), + vox_spec: ("armor.steel.shoulder", (-5.0, -4.5 , 0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.steel_right-0", (-1.0, -4.5, 0.0)), + vox_spec: ("armor.steel.shoulder", (-1.0, -4.5, 0.0)), color: None ) ), - "PlateLeather": ( + "LeatherPlate": ( left: ( - vox_spec: ("armor.shoulder.plate_leather_left-0", (-4.0, -4.5 , 0.0)), + vox_spec: ("armor.leather_plate.shoulder", (-4.0, -4.5 , 0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.plate_leather_right-0", (-0.9, -4.5, 0.0)), + vox_spec: ("armor.leather_plate.shoulder", (-0.9, -4.5, 0.0)), color: None ) ), - "Leather2": ( + "Agile": ( left: ( - vox_spec: ("armor.shoulder.leather_left-2", (-5.0, -3.8, -0.9)), + vox_spec: ("armor.agile.shoulder", (-5.0, -3.8, -0.9)), color: None ), right: ( - vox_spec: ("armor.shoulder.leather_right-2", (-1.0, -3.8, -0.9)), + vox_spec: ("armor.agile.shoulder", (-1.0, -3.8, -0.9)), color: None ) ), - "TwiggyShoulder": ( + "Twigs": ( left: ( - vox_spec: ("armor.shoulder.twigs_left", (-5.0, -4.5 , -1.0)), + vox_spec: ("armor.twigs.shoulder", (-5.0, -4.5 , -1.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.twigs_right", (-1.0, -4.5, -1.0)), + vox_spec: ("armor.twigs.shoulder", (-1.0, -4.5, -1.0)), color: None ) ), - "LeafyShoulder": ( + "TwigsLeaves": ( left: ( - vox_spec: ("armor.shoulder.twigsleaves_shoulder_left", (-5.5, -5.0 , 0.0)), + vox_spec: ("armor.twigsleaves.shoulder", (-5.5, -5.0 , 0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.twigsleaves_shoulder_right", (-1.5, -5.0, 0.0)), + vox_spec: ("armor.twigsleaves.shoulder", (-1.5, -5.0, 0.0)), color: None ) ), - "FlowerShoulder": ( + "TwigsFlowers": ( left: ( - vox_spec: ("armor.shoulder.twigsflowers_shoulder_left", (-5.5, -5.0 , 0.0)), + vox_spec: ("armor.twigsflowers.shoulder", (-5.5, -5.0 , 0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.twigsflowers_shoulder_right", (-1.5, -5.0, 0.0)), + vox_spec: ("armor.twigsflowers.shoulder", (-1.5, -5.0, 0.0)), color: None ), ), "ClothBlue1": ( left: ( - vox_spec: ("armor.shoulder.cloth_blue_left-1", (-4.0, -2.5, -0.5)), + vox_spec: ("armor.cloth_blue.shoulder_1", (-4.0, -2.5, -0.5)), color: None ), right: ( - vox_spec: ("armor.shoulder.cloth_blue_right-1", (-1.0, -2.5, -0.5)), + vox_spec: ("armor.cloth_blue.shoulder_1", (-1.0, -2.5, -0.5)), color: None ) ), "IronSpikes": ( left: ( - vox_spec: ("armor.shoulder.iron_spikes_left", (-5.5, -3.8, -2.0)), + vox_spec: ("armor.misc.shoulder.iron_spikes", (-5.5, -3.8, -2.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.iron_spikes_right", (-1.5, -3.8, -2.0)), + vox_spec: ("armor.misc.shoulder.iron_spikes", (-1.5, -3.8, -2.0)), color: None ) ), "IronLeather3": ( left: ( - vox_spec: ("armor.shoulder.leather_iron_left-3", (-4.0, -2.5, -1.0)), + vox_spec: ("armor.misc.shoulder.leather_iron_3", (-4.0, -2.5, -1.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.leather_iron_right-3", (-2.0, -2.5, -1.0)), + vox_spec: ("armor.misc.shoulder.leather_iron_3", (-2.0, -2.5, -1.0)), color: None ) ), "IronLeather2": ( left: ( - vox_spec: ("armor.shoulder.leather_iron_left-2", (-5.0, -2.5, -0.5)), + vox_spec: ("armor.misc.shoulder.leather_iron_2", (-5.0, -2.5, -0.5)), color: None ), right: ( - vox_spec: ("armor.shoulder.leather_iron_right-2", (-2.0, -2.5, -0.5)), + vox_spec: ("armor.misc.shoulder.leather_iron_2", (-2.0, -2.5, -0.5)), color: None ) ), "IronLeather1": ( left: ( - vox_spec: ("armor.shoulder.leather_iron_left-1", (-5.0, -2.5, -0.5)), + vox_spec: ("armor.misc.shoulder.leather_iron_1", (-5.0, -2.5, -0.5)), color: None ), right: ( - vox_spec: ("armor.shoulder.leather_iron_right-1", (-2.0, -2.5, -0.5)), + vox_spec: ("armor.misc.shoulder.leather_iron_1", (-2.0, -2.5, -0.5)), color: None ) ), "IronLeather0": ( left: ( - vox_spec: ("armor.shoulder.leather_iron_left-0", (-6.0, -2.5, -0.5)), + vox_spec: ("armor.misc.shoulder.leather_iron_0", (-6.0, -2.5, -0.5)), color: None ), right: ( - vox_spec: ("armor.shoulder.leather_iron_right-0", (-2.0, -2.5, -0.5)), + vox_spec: ("armor.misc.shoulder.leather_iron_0", (-2.0, -2.5, -0.5)), color: None ) ), - "LeatherStrips": ( + "LeatherStrip": ( left: ( - vox_spec: ("armor.shoulder.leather_strips_left", (-3.0, -2.5, -2.0)), + vox_spec: ("armor.misc.shoulder.leather_strip", (-3.0, -2.5, -2.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.leather_strips_right", (-2.0, -2.5, -2.0)), + vox_spec: ("armor.misc.shoulder.leather_strip", (-2.0, -2.5, -2.0)), color: None ) ), - "DruidShoulder": ( + "Druid": ( left: ( - vox_spec: ("armor.shoulder.druid_left", (-4.0, -4.5 , -3.0)), + vox_spec: ("armor.druid.shoulder", (-4.0, -4.5 , -3.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.druid_right", (-2.0, -4.5, -3.0)), + vox_spec: ("armor.druid.shoulder", (-2.0, -4.5, -3.0)), color: None ) ), "Tarasque": ( left: ( - vox_spec: ("armor.shoulder.tarasque_left", (-5.0, -3.5 , 0.0)), + vox_spec: ("armor.tarsque.shoulder", (-5.0, -3.5 , 0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.tarasque_right", (-0.0, -3.5, 0.0)), + vox_spec: ("armor.tarsque.shoulder", (-0.0, -3.5, 0.0)), color: None ) ), "Bonerattler": ( left: ( - vox_spec: ("armor.shoulder.bonerattler_left", (-4.0, -3.5 , 1.0)), + vox_spec: ("armor.bonerattler.shoulder", (-4.0, -3.5 , 1.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.bonerattler_right", (-1.0, -3.5, 1.0)), + vox_spec: ("armor.bonerattler.shoulder", (-1.0, -3.5, 1.0)), color: None ) ), - "VeloriteMage0": ( + "VeloriteMage": ( left: ( - vox_spec: ("armor.shoulder.velorite_battlemage_left", (-6.0, -4.0 , 0.0)), + vox_spec: ("armor.velorite_battlemage.shoulder", (-6.0, -4.0 , 0.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.velorite_battlemage_left", (-1.0, -4.0, 0.0)), + vox_spec: ("armor.velorite_battlemage.shoulder", (-1.0, -4.0, 0.0)), color: None ) ), "Warlord": ( left: ( - vox_spec: ("armor.shoulder.warlord_left", (-8.0, -3.5 , -2.5)), + vox_spec: ("armor.warlord.shoulder", (-8.0, -3.5 , -2.5)), color: None ), right: ( - vox_spec: ("armor.shoulder.warlord_right", (-1.0, -3.5 , -2.5)), + vox_spec: ("armor.warlord.shoulder", (-1.0, -3.5 , -2.5)), color: None ) ), "Warlock": ( left: ( - vox_spec: ("armor.shoulder.warlock_left", (-6.0, -4.0 , -2.0)), + vox_spec: ("armor.warlock.shoulder", (-6.0, -4.0 , -2.0)), color: None ), right: ( - vox_spec: ("armor.shoulder.warlock_left", (0.0, -4.0, -2.0)), + vox_spec: ("armor.warlock.shoulder", (0.0, -4.0, -2.0)), color: None ) ), diff --git a/assets/voxygen/voxel/humanoid_lantern_manifest.ron b/assets/voxygen/voxel/humanoid_lantern_manifest.ron index 3b3dbf5fe1..599a711559 100644 --- a/assets/voxygen/voxel/humanoid_lantern_manifest.ron +++ b/assets/voxygen/voxel/humanoid_lantern_manifest.ron @@ -5,19 +5,19 @@ ), map: { "Green0": ( - vox_spec: ("armor.lantern.green-0", (-2.0, -2.0, -7.0)), + vox_spec: ("armor.misc.lantern.green-0", (-2.0, -2.0, -7.0)), color: None ), "Black0": ( - vox_spec: ("armor.lantern.black-0", (-2.0, -2.0, -7.0)), + vox_spec: ("armor.misc.lantern.black-0", (-2.0, -2.0, -7.0)), color: None ), "Red0": ( - vox_spec: ("armor.lantern.red-0", (-2.0, -2.0, -7.0)), + vox_spec: ("armor.misc.lantern.red-0", (-2.0, -2.0, -7.0)), color: None ), "Blue0": ( - vox_spec: ("armor.lantern.blue-0", (-2.0, -2.0, -7.0)), + vox_spec: ("armor.misc.lantern.blue-0", (-2.0, -2.0, -7.0)), color: None ), }, diff --git a/client/src/lib.rs b/client/src/lib.rs index f38f2113ba..e83842c6a7 100644 --- a/client/src/lib.rs +++ b/client/src/lib.rs @@ -27,7 +27,7 @@ use common::{ skills::Skill, slot::Slot, ChatMode, ControlAction, ControlEvent, Controller, ControllerInputs, GroupManip, - InventoryManip, InventoryUpdateEvent, LoadoutManip, + InventoryAction, InventoryEvent, InventoryUpdateEvent, }, event::{EventBus, LocalEvent}, grid::Grid, @@ -622,24 +622,17 @@ impl Client { } pub fn use_slot(&mut self, slot: Slot) { - match slot { - Slot::Equip(equip) => { - self.control_action(ControlAction::LoadoutManip(LoadoutManip::Use(equip))) - }, - Slot::Inventory(inv) => self.send_msg(ClientGeneral::ControlEvent( - ControlEvent::InventoryManip(InventoryManip::Use(inv)), - )), - } + self.control_action(ControlAction::InventoryAction(InventoryAction::Use(slot))) } pub fn swap_slots(&mut self, a: Slot, b: Slot) { match (a, b) { - (Slot::Equip(equip), slot) | (slot, Slot::Equip(equip)) => { - self.control_action(ControlAction::LoadoutManip(LoadoutManip::Swap(equip, slot))) - }, + (Slot::Equip(equip), slot) | (slot, Slot::Equip(equip)) => self.control_action( + ControlAction::InventoryAction(InventoryAction::Swap(equip, slot)), + ), (Slot::Inventory(inv1), Slot::Inventory(inv2)) => { - self.send_msg(ClientGeneral::ControlEvent(ControlEvent::InventoryManip( - InventoryManip::Swap(inv1, inv2), + self.send_msg(ClientGeneral::ControlEvent(ControlEvent::InventoryEvent( + InventoryEvent::Swap(inv1, inv2), ))) }, } @@ -648,10 +641,10 @@ impl Client { pub fn drop_slot(&mut self, slot: Slot) { match slot { Slot::Equip(equip) => { - self.control_action(ControlAction::LoadoutManip(LoadoutManip::Drop(equip))) + self.control_action(ControlAction::InventoryAction(InventoryAction::Drop(equip))) }, Slot::Inventory(inv) => self.send_msg(ClientGeneral::ControlEvent( - ControlEvent::InventoryManip(InventoryManip::Drop(inv)), + ControlEvent::InventoryEvent(InventoryEvent::Drop(inv)), )), } } @@ -669,6 +662,30 @@ impl Client { pub fn is_dead(&self) -> bool { self.current::().map_or(false, |h| h.is_dead) } + pub fn split_swap_slots(&mut self, a: comp::slot::Slot, b: comp::slot::Slot) { + match (a, b) { + (Slot::Equip(equip), slot) | (slot, Slot::Equip(equip)) => self.control_action( + ControlAction::InventoryAction(InventoryAction::Swap(equip, slot)), + ), + (Slot::Inventory(inv1), Slot::Inventory(inv2)) => { + self.send_msg(ClientGeneral::ControlEvent(ControlEvent::InventoryEvent( + InventoryEvent::SplitSwap(inv1, inv2), + ))) + }, + } + } + + pub fn split_drop_slot(&mut self, slot: comp::slot::Slot) { + match slot { + Slot::Equip(equip) => { + self.control_action(ControlAction::InventoryAction(InventoryAction::Drop(equip))) + }, + Slot::Inventory(inv) => self.send_msg(ClientGeneral::ControlEvent( + ControlEvent::InventoryEvent(InventoryEvent::SplitDrop(inv)), + )), + } + } + pub fn pick_up(&mut self, entity: EcsEntity) { // Get the health component from the entity @@ -678,8 +695,8 @@ impl Client { return; } - self.send_msg(ClientGeneral::ControlEvent(ControlEvent::InventoryManip( - InventoryManip::Pickup(uid), + self.send_msg(ClientGeneral::ControlEvent(ControlEvent::InventoryEvent( + InventoryEvent::Pickup(uid), ))); } } @@ -717,8 +734,8 @@ impl Client { pub fn craft_recipe(&mut self, recipe: &str) -> bool { if self.can_craft_recipe(recipe) { - self.send_msg(ClientGeneral::ControlEvent(ControlEvent::InventoryManip( - InventoryManip::CraftRecipe(recipe.to_string()), + self.send_msg(ClientGeneral::ControlEvent(ControlEvent::InventoryEvent( + InventoryEvent::CraftRecipe(recipe.to_string()), ))); true } else { @@ -1025,8 +1042,8 @@ impl Client { } pub fn collect_block(&mut self, pos: Vec3) { - self.send_msg(ClientGeneral::ControlEvent(ControlEvent::InventoryManip( - InventoryManip::Collect(pos), + self.send_msg(ClientGeneral::ControlEvent(ControlEvent::InventoryEvent( + InventoryEvent::Collect(pos), ))); } diff --git a/common/src/bin/csv_export/main.rs b/common/src/bin/csv_export/main.rs index 828a59bae4..232e828758 100644 --- a/common/src/bin/csv_export/main.rs +++ b/common/src/bin/csv_export/main.rs @@ -5,7 +5,7 @@ use structopt::StructOpt; use comp::item::{ armor::{ArmorKind, Protection}, - tool::{Hands, Tool, ToolKind}, + tool::{Hands, MaterialStatManifest, Tool, ToolKind}, ItemKind, }; use veloren_common::comp; @@ -80,15 +80,17 @@ fn weapon_stats() -> Result<(), Box> { "Description", ])?; + let msm = MaterialStatManifest::default(); + for item in comp::item::Item::new_from_asset_glob("common.items.weapons.*") .expect("Failed to iterate over item folders!") { match item.kind() { comp::item::ItemKind::Tool(tool) => { - let power = tool.base_power(&[]).to_string(); - let poise_strength = tool.base_poise_strength(&[]).to_string(); - let speed = tool.base_speed(&[]).to_string(); - let equip_time = tool.equip_time(&[]).subsec_millis().to_string(); + let power = tool.base_power(&msm, &[]).to_string(); + let poise_strength = tool.base_poise_strength(&msm, &[]).to_string(); + let speed = tool.base_speed(&msm, &[]).to_string(); + let equip_time = tool.equip_time(&msm, &[]).subsec_millis().to_string(); let kind = get_tool_kind(&tool.kind); let hands = get_tool_hands(&tool); @@ -115,14 +117,15 @@ fn weapon_stats() -> Result<(), Box> { fn get_tool_kind(kind: &ToolKind) -> String { match kind { - ToolKind::Sword => "Sword".to_string(), - ToolKind::Axe => "Axe".to_string(), - ToolKind::Hammer => "Hammer".to_string(), - ToolKind::Bow => "Bow".to_string(), + ToolKind::Sword | ToolKind::SwordSimple => "Sword".to_string(), + ToolKind::Axe | ToolKind::AxeSimple => "Axe".to_string(), + ToolKind::Hammer | ToolKind::HammerSimple => "Hammer".to_string(), + ToolKind::Bow | ToolKind::BowSimple => "Bow".to_string(), ToolKind::Dagger => "Dagger".to_string(), - ToolKind::Staff => "Staff".to_string(), + ToolKind::Staff | ToolKind::StaffSimple => "Staff".to_string(), ToolKind::Sceptre => "Sceptre".to_string(), ToolKind::Shield => "Shield".to_string(), + ToolKind::Spear => "Spear".to_string(), ToolKind::Debug => "Debug".to_string(), ToolKind::Farming => "Farming".to_string(), ToolKind::Unique(_) => "Unique".to_string(), diff --git a/common/src/bin/csv_import/main.rs b/common/src/bin/csv_import/main.rs index ad55be1467..46cbd2b62d 100644 --- a/common/src/bin/csv_import/main.rs +++ b/common/src/bin/csv_import/main.rs @@ -170,7 +170,7 @@ fn weapon_stats() -> Result<(), Box> { if item.item_definition_id() == record.get(0).expect("No file path in csv?") { let kind = tool.kind; - let equip_time_millis: u32 = record + let equip_time_secs: f32 = record .get(8) .expect(&format!( "Error unwrapping equip time for {:?}", @@ -227,7 +227,7 @@ fn weapon_stats() -> Result<(), Box> { let tool = comp::item::tool::Tool::new( kind, hands, - equip_time_millis, + equip_time_secs, power, poise_strength, speed, diff --git a/common/src/cmd.rs b/common/src/cmd.rs index 6b5cfb26f5..f6771bdcd3 100644 --- a/common/src/cmd.rs +++ b/common/src/cmd.rs @@ -70,6 +70,7 @@ pub enum ChatCommand { Players, Region, RemoveLights, + Safezone, Say, SetMotd, SkillPoint, @@ -122,6 +123,7 @@ pub static CHAT_COMMANDS: &[ChatCommand] = &[ ChatCommand::Players, ChatCommand::Region, ChatCommand::RemoveLights, + ChatCommand::Safezone, ChatCommand::Say, ChatCommand::SetMotd, ChatCommand::SkillPoint, @@ -370,6 +372,11 @@ impl ChatCommand { "Send messages to everyone in your region of the world", NoAdmin, ), + ChatCommand::Safezone => cmd( + vec![Float("range", 100.0, Optional)], + "Creates a safezone", + Admin, + ), ChatCommand::Say => cmd( vec![Message(Optional)], "Send messages to everyone within shouting distance", @@ -476,6 +483,7 @@ impl ChatCommand { ChatCommand::Players => "players", ChatCommand::Region => "region", ChatCommand::RemoveLights => "remove_lights", + ChatCommand::Safezone => "safezone", ChatCommand::Say => "say", ChatCommand::SetMotd => "set_motd", ChatCommand::SkillPoint => "skill_point", diff --git a/common/src/combat.rs b/common/src/combat.rs index 803b009693..5687b237b2 100644 --- a/common/src/combat.rs +++ b/common/src/combat.rs @@ -47,6 +47,13 @@ pub struct AttackerInfo<'a> { pub energy: Option<&'a Energy>, } +#[cfg(not(target_arch = "wasm32"))] +pub struct TargetInfo<'a> { + pub entity: EcsEntity, + pub inventory: Option<&'a Inventory>, + pub stats: Option<&'a Stats>, +} + #[cfg(not(target_arch = "wasm32"))] #[derive(Clone, Debug, Serialize, Deserialize)] // TODO: Yeet clone derive pub struct Attack { @@ -99,9 +106,8 @@ impl Attack { pub fn apply_attack( &self, target_group: GroupTarget, - attacker_info: Option, - target_entity: EcsEntity, - target_inventory: Option<&Inventory>, + attacker: Option, + target: TargetInfo, dir: Dir, target_dodging: bool, // Currently just modifies damage, maybe look into modifying strength of other effects? @@ -116,9 +122,10 @@ impl Attack { .filter(|d| d.target.map_or(true, |t| t == target_group)) .filter(|d| !(matches!(d.target, Some(GroupTarget::OutOfGroup)) && target_dodging)) { + let damage_reduction = Damage::compute_damage_reduction(target.inventory, target.stats); let change = damage.damage.calculate_health_change( - target_inventory, - attacker_info.map(|a| a.uid), + damage_reduction, + attacker.map(|a| a.uid), is_crit, self.crit_multiplier, strength_modifier, @@ -127,7 +134,7 @@ impl Attack { accumulated_damage += applied_damage; if change.amount != 0 { emit(ServerEvent::Damage { - entity: target_entity, + entity: target.entity, change, }); for effect in damage.effects.iter() { @@ -136,13 +143,13 @@ impl Attack { let impulse = kb.calculate_impulse(dir); if !impulse.is_approx_zero() { emit(ServerEvent::Knockback { - entity: target_entity, + entity: target.entity, impulse, }); } }, CombatEffect::EnergyReward(ec) => { - if let Some(attacker_entity) = attacker_info.map(|a| a.entity) { + if let Some(attacker_entity) = attacker.map(|a| a.entity) { emit(ServerEvent::EnergyChange { entity: attacker_entity, change: EnergyChange { @@ -155,19 +162,19 @@ impl Attack { CombatEffect::Buff(b) => { if thread_rng().gen::() < b.chance { emit(ServerEvent::Buff { - entity: target_entity, + entity: target.entity, buff_change: BuffChange::Add( - b.to_buff(attacker_info.map(|a| a.uid), applied_damage), + b.to_buff(attacker.map(|a| a.uid), applied_damage), ), }); } }, CombatEffect::Lifesteal(l) => { - if let Some(attacker_entity) = attacker_info.map(|a| a.entity) { + if let Some(attacker_entity) = attacker.map(|a| a.entity) { let change = HealthChange { amount: (applied_damage * l) as i32, cause: HealthSource::Heal { - by: attacker_info.map(|a| a.uid), + by: attacker.map(|a| a.uid), }, }; if change.amount != 0 { @@ -179,10 +186,10 @@ impl Attack { } }, CombatEffect::Poise(p) => { - let change = PoiseChange::from_value(*p, target_inventory); + let change = PoiseChange::from_value(*p, target.inventory); if change.amount != 0 { emit(ServerEvent::PoiseChange { - entity: target_entity, + entity: target.entity, change, kb_dir: *dir, }); @@ -192,18 +199,18 @@ impl Attack { let change = HealthChange { amount: *h as i32, cause: HealthSource::Heal { - by: attacker_info.map(|a| a.uid), + by: attacker.map(|a| a.uid), }, }; if change.amount != 0 { emit(ServerEvent::Damage { - entity: target_entity, + entity: target.entity, change, }); } }, CombatEffect::Combo(c) => { - if let Some(attacker_entity) = attacker_info.map(|a| a.entity) { + if let Some(attacker_entity) = attacker.map(|a| a.entity) { emit(ServerEvent::ComboChange { entity: attacker_entity, change: *c, @@ -227,7 +234,7 @@ impl Attack { entity, energy: Some(e), .. - }) = attacker_info + }) = attacker { let sufficient_energy = e.current() as f32 >= *r; if sufficient_energy { @@ -252,13 +259,13 @@ impl Attack { let impulse = kb.calculate_impulse(dir); if !impulse.is_approx_zero() { emit(ServerEvent::Knockback { - entity: target_entity, + entity: target.entity, impulse, }); } }, CombatEffect::EnergyReward(ec) => { - if let Some(attacker_entity) = attacker_info.map(|a| a.entity) { + if let Some(attacker_entity) = attacker.map(|a| a.entity) { emit(ServerEvent::EnergyChange { entity: attacker_entity, change: EnergyChange { @@ -271,19 +278,19 @@ impl Attack { CombatEffect::Buff(b) => { if thread_rng().gen::() < b.chance { emit(ServerEvent::Buff { - entity: target_entity, + entity: target.entity, buff_change: BuffChange::Add( - b.to_buff(attacker_info.map(|a| a.uid), accumulated_damage), + b.to_buff(attacker.map(|a| a.uid), accumulated_damage), ), }); } }, CombatEffect::Lifesteal(l) => { - if let Some(attacker_entity) = attacker_info.map(|a| a.entity) { + if let Some(attacker_entity) = attacker.map(|a| a.entity) { let change = HealthChange { amount: (accumulated_damage * l) as i32, cause: HealthSource::Heal { - by: attacker_info.map(|a| a.uid), + by: attacker.map(|a| a.uid), }, }; if change.amount != 0 { @@ -295,10 +302,10 @@ impl Attack { } }, CombatEffect::Poise(p) => { - let change = PoiseChange::from_value(p, target_inventory); + let change = PoiseChange::from_value(p, target.inventory); if change.amount != 0 { emit(ServerEvent::PoiseChange { - entity: target_entity, + entity: target.entity, change, kb_dir: *dir, }); @@ -308,18 +315,18 @@ impl Attack { let change = HealthChange { amount: h as i32, cause: HealthSource::Heal { - by: attacker_info.map(|a| a.uid), + by: attacker.map(|a| a.uid), }, }; if change.amount != 0 { emit(ServerEvent::Damage { - entity: target_entity, + entity: target.entity, change, }); } }, CombatEffect::Combo(c) => { - if let Some(attacker_entity) = attacker_info.map(|a| a.entity) { + if let Some(attacker_entity) = attacker.map(|a| a.entity) { emit(ServerEvent::ComboChange { entity: attacker_entity, change: c, @@ -423,40 +430,49 @@ pub struct Damage { #[cfg(not(target_arch = "wasm32"))] impl Damage { /// Returns the total damage reduction provided by all equipped items - pub fn compute_damage_reduction(inventory: &Inventory) -> f32 { - let protection = inventory - .equipped_items() - .filter_map(|item| { - if let ItemKind::Armor(armor) = &item.kind() { - Some(armor.get_protection()) - } else { - None - } - }) - .map(|protection| match protection { - Protection::Normal(protection) => Some(protection), - Protection::Invincible => None, - }) - .sum::>(); + pub fn compute_damage_reduction(inventory: Option<&Inventory>, stats: Option<&Stats>) -> f32 { + let inventory_dr = if let Some(inventory) = inventory { + let protection = inventory + .equipped_items() + .filter_map(|item| { + if let ItemKind::Armor(armor) = &item.kind() { + Some(armor.get_protection()) + } else { + None + } + }) + .map(|protection| match protection { + Protection::Normal(protection) => Some(protection), + Protection::Invincible => None, + }) + .sum::>(); - const FIFTY_PERCENT_DR_THRESHOLD: f32 = 60.0; + const FIFTY_PERCENT_DR_THRESHOLD: f32 = 60.0; - match protection { - Some(dr) => dr / (FIFTY_PERCENT_DR_THRESHOLD + dr.abs()), - None => 1.0, - } + match protection { + Some(dr) => dr / (FIFTY_PERCENT_DR_THRESHOLD + dr.abs()), + None => 1.0, + } + } else { + 0.0 + }; + let stats_dr = if let Some(stats) = stats { + stats.damage_reduction + } else { + 0.0 + }; + 1.0 - (1.0 - inventory_dr) * (1.0 - stats_dr) } pub fn calculate_health_change( self, - inventory: Option<&Inventory>, + damage_reduction: f32, uid: Option, is_crit: bool, crit_mult: f32, damage_modifier: f32, ) -> HealthChange { let mut damage = self.value * damage_modifier; - let damage_reduction = inventory.map_or(0.0, Damage::compute_damage_reduction); match self.source { DamageSource::Melee => { // Critical hit @@ -705,7 +721,7 @@ pub fn combat_rating( let defensive_weighting = 1.0; let offensive_weighting = 1.0; let defensive_rating = health.maximum() as f32 - / (1.0 - Damage::compute_damage_reduction(inventory)).max(0.00001) + / (1.0 - Damage::compute_damage_reduction(Some(inventory), Some(stats))).max(0.00001) / 100.0; let offensive_rating = offensive_rating(inventory, &stats.skill_set, msm).max(0.1) + 0.05 * stats.skill_set.earned_sp(SkillGroupKind::General) as f32; diff --git a/common/src/comp/aura.rs b/common/src/comp/aura.rs index 30162d19ed..eb82775cdb 100644 --- a/common/src/comp/aura.rs +++ b/common/src/comp/aura.rs @@ -91,10 +91,12 @@ pub struct Auras { } impl Auras { - pub fn new(aura: Aura) -> Self { - let mut auras: SlotMap = SlotMap::with_key(); - auras.insert(aura); - Self { auras } + pub fn new(auras: Vec) -> Self { + let mut auras_comp: SlotMap = SlotMap::with_key(); + for aura in auras { + auras_comp.insert(aura); + } + Self { auras: auras_comp } } pub fn insert(&mut self, aura: Aura) { self.auras.insert(aura); } diff --git a/common/src/comp/buff.rs b/common/src/comp/buff.rs index 5b4ec2d542..7dc9fd0dd0 100644 --- a/common/src/comp/buff.rs +++ b/common/src/comp/buff.rs @@ -31,6 +31,8 @@ pub enum BuffKind { IncreaseMaxEnergy, /// Raises maximum health IncreaseMaxHealth, + /// Makes you immune to attacks + Invulnerability, } #[cfg(not(target_arch = "wasm32"))] @@ -46,6 +48,7 @@ impl BuffKind { BuffKind::CampfireHeal => true, BuffKind::IncreaseMaxEnergy => true, BuffKind::IncreaseMaxHealth => true, + BuffKind::Invulnerability => true, } } @@ -98,9 +101,16 @@ pub enum BuffEffect { kind: ModifierKind, }, /// Changes maximum health by a certain amount - MaxHealthModifier { value: f32, kind: ModifierKind }, + MaxHealthModifier { + value: f32, + kind: ModifierKind, + }, /// Changes maximum stamina by a certain amount - MaxEnergyModifier { value: f32, kind: ModifierKind }, + MaxEnergyModifier { + value: f32, + kind: ModifierKind, + }, + ImmuneToAttacks, } /// Actual de/buff. @@ -203,6 +213,7 @@ impl Buff { }], data.duration, ), + BuffKind::Invulnerability => (vec![BuffEffect::ImmuneToAttacks], data.duration), }; Buff { kind, diff --git a/common/src/comp/controller.rs b/common/src/comp/controller.rs index 733d47ef2e..000c13de57 100644 --- a/common/src/comp/controller.rs +++ b/common/src/comp/controller.rs @@ -18,53 +18,59 @@ use vek::*; pub const DEFAULT_HOLD_DURATION: Duration = Duration::from_millis(200); #[derive(Clone, Debug, PartialEq, Serialize, Deserialize)] -pub enum InventoryManip { +pub enum InventoryEvent { Pickup(Uid), Collect(Vec3), - Use(InvSlotId), Swap(InvSlotId, InvSlotId), + SplitSwap(InvSlotId, InvSlotId), Drop(InvSlotId), + SplitDrop(InvSlotId), CraftRecipe(String), } #[derive(Clone, Copy, Debug, PartialEq, Serialize, Deserialize)] -pub enum LoadoutManip { - Use(EquipSlot), +pub enum InventoryAction { Swap(EquipSlot, Slot), Drop(EquipSlot), + Use(Slot), } #[derive(Clone, Debug, PartialEq, Serialize, Deserialize)] -pub enum SlotManip { +pub enum InventoryManip { Pickup(Uid), Collect(Vec3), Use(Slot), Swap(Slot, Slot), + SplitSwap(Slot, Slot), Drop(Slot), + SplitDrop(Slot), CraftRecipe(String), } -impl From for SlotManip { - fn from(loadout_manip: LoadoutManip) -> Self { - match loadout_manip { - LoadoutManip::Use(equip) => Self::Use(Slot::Equip(equip)), - LoadoutManip::Swap(equip, slot) => Self::Swap(Slot::Equip(equip), slot), - LoadoutManip::Drop(equip) => Self::Drop(Slot::Equip(equip)), +impl From for InventoryManip { + fn from(inv_action: InventoryAction) -> Self { + match inv_action { + InventoryAction::Use(slot) => Self::Use(slot), + InventoryAction::Swap(equip, slot) => Self::Swap(Slot::Equip(equip), slot), + InventoryAction::Drop(equip) => Self::Drop(Slot::Equip(equip)), } } } -impl From for SlotManip { - fn from(inv_manip: InventoryManip) -> Self { - match inv_manip { - InventoryManip::Pickup(pickup) => Self::Pickup(pickup), - InventoryManip::Collect(collect) => Self::Collect(collect), - InventoryManip::Use(inv) => Self::Use(Slot::Inventory(inv)), - InventoryManip::Swap(inv1, inv2) => { +impl From for InventoryManip { + fn from(inv_event: InventoryEvent) -> Self { + match inv_event { + InventoryEvent::Pickup(pickup) => Self::Pickup(pickup), + InventoryEvent::Collect(collect) => Self::Collect(collect), + InventoryEvent::Swap(inv1, inv2) => { Self::Swap(Slot::Inventory(inv1), Slot::Inventory(inv2)) }, - InventoryManip::Drop(inv) => Self::Drop(Slot::Inventory(inv)), - InventoryManip::CraftRecipe(recipe) => Self::CraftRecipe(recipe), + InventoryEvent::SplitSwap(inv1, inv2) => { + Self::SplitSwap(Slot::Inventory(inv1), Slot::Inventory(inv2)) + }, + InventoryEvent::Drop(inv) => Self::Drop(Slot::Inventory(inv)), + InventoryEvent::SplitDrop(inv) => Self::SplitDrop(Slot::Inventory(inv)), + InventoryEvent::CraftRecipe(recipe) => Self::CraftRecipe(recipe), } } } @@ -87,7 +93,7 @@ pub enum ControlEvent { PerformTradeAction(TradeId, TradeAction), Mount(Uid), Unmount, - InventoryManip(InventoryManip), + InventoryEvent(InventoryEvent), GroupManip(GroupManip), RemoveBuff(BuffKind), Respawn, @@ -96,7 +102,7 @@ pub enum ControlEvent { #[derive(Clone, Copy, Debug, PartialEq, Serialize, Deserialize)] pub enum ControlAction { SwapEquippedWeapons, - LoadoutManip(LoadoutManip), + InventoryAction(InventoryAction), Wield, GlideWield, Unwield, diff --git a/common/src/comp/inventory/item/modular.rs b/common/src/comp/inventory/item/modular.rs index 89f2d7eff4..4a17daaf6e 100644 --- a/common/src/comp/inventory/item/modular.rs +++ b/common/src/comp/inventory/item/modular.rs @@ -165,7 +165,7 @@ fn make_component_def( toolkind, modkind, stats: tool::Stats { - equip_time_millis: 250, + equip_time_secs: 0.25, power: if matches!(modkind, ModularComponentKind::Damage) { AVERAGE_STAT_VALUE[tier] } else { diff --git a/common/src/comp/inventory/item/tool.rs b/common/src/comp/inventory/item/tool.rs index 55bc5f7139..bdbadd77d5 100644 --- a/common/src/comp/inventory/item/tool.rs +++ b/common/src/comp/inventory/item/tool.rs @@ -69,7 +69,7 @@ pub enum Hands { #[derive(Clone, Copy, Debug, PartialEq, Serialize, Deserialize)] pub struct Stats { - pub equip_time_millis: u32, + pub equip_time_secs: f32, pub power: f32, pub poise_strength: f32, pub speed: f32, @@ -78,7 +78,7 @@ pub struct Stats { impl Stats { pub fn zeroed() -> Stats { Stats { - equip_time_millis: 0, + equip_time_secs: 0.0, power: 0.0, poise_strength: 0.0, speed: 0.0, @@ -101,7 +101,7 @@ impl Asset for Stats { impl AddAssign for Stats { fn add_assign(&mut self, other: Stats) { - self.equip_time_millis += other.equip_time_millis; + self.equip_time_secs += other.equip_time_secs; self.power += other.power; self.poise_strength += other.poise_strength; self.speed += other.speed; @@ -109,10 +109,7 @@ impl AddAssign for Stats { } impl MulAssign for Stats { fn mul_assign(&mut self, other: Stats) { - // equip_time_millis doesn't quite work with mul since it's u32, so we can't - // scale delay down, only up, so it needs to be balanced carefully in - // multiplicative contexts - self.equip_time_millis *= other.equip_time_millis; + self.equip_time_secs *= other.equip_time_secs; self.power *= other.power; self.poise_strength *= other.poise_strength; self.speed *= other.speed; @@ -120,10 +117,10 @@ impl MulAssign for Stats { } impl DivAssign for Stats { fn div_assign(&mut self, scalar: usize) { - self.equip_time_millis /= scalar as u32; + self.equip_time_secs /= scalar as f32; // since averaging occurs when the stats are used multiplicatively, don't permit - // multiplying an equip_time_millis by 0, since that would be overpowered - self.equip_time_millis = self.equip_time_millis.max(1); + // multiplying an equip_time_secs by 0, since that would be overpowered + self.equip_time_secs = self.equip_time_secs.max(0.001); self.power /= scalar as f32; self.poise_strength /= scalar as f32; self.speed /= scalar as f32; @@ -199,7 +196,7 @@ impl From<(&MaterialStatManifest, &[Item], &Tool)> for Stats { Hands::Two => (1.0, 1.0), }; Self { - equip_time_millis: raw_stats.equip_time_millis, + equip_time_secs: raw_stats.equip_time_secs, power: raw_stats.power * power, poise_strength: raw_stats.poise_strength, speed: raw_stats.speed * speed, @@ -221,7 +218,7 @@ impl Tool { pub fn new( kind: ToolKind, hands: Hands, - equip_time_millis: u32, + equip_time_secs: f32, power: f32, poise_strength: f32, speed: f32, @@ -230,7 +227,7 @@ impl Tool { kind, hands, stats: StatKind::Direct(Stats { - equip_time_millis, + equip_time_secs, power, poise_strength, speed, @@ -243,7 +240,7 @@ impl Tool { kind: ToolKind::Empty, hands: Hands::One, stats: StatKind::Direct(Stats { - equip_time_millis: 0, + equip_time_secs: 0.0, power: 1.00, poise_strength: 1.00, speed: 1.00, @@ -268,7 +265,7 @@ impl Tool { } pub fn equip_time(&self, msm: &MaterialStatManifest, components: &[Item]) -> Duration { - Duration::from_millis(self.stats.resolve_stats(msm, components).equip_time_millis as u64) + Duration::from_secs_f32(self.stats.resolve_stats(msm, components).equip_time_secs) } pub fn get_abilities( diff --git a/common/src/comp/inventory/loadout_builder.rs b/common/src/comp/inventory/loadout_builder.rs index 242f696139..fb603fd8cc 100644 --- a/common/src/comp/inventory/loadout_builder.rs +++ b/common/src/comp/inventory/loadout_builder.rs @@ -56,13 +56,13 @@ impl LoadoutBuilder { /// updates, but should be safe defaults for a new character. pub fn defaults(self) -> Self { self.chest(Some(Item::new_from_asset_expect( - "common.items.armor.chest.rugged", + "common.items.armor.rugged.chest", ))) .pants(Some(Item::new_from_asset_expect( - "common.items.armor.pants.rugged", + "common.items.armor.rugged.pants", ))) .feet(Some(Item::new_from_asset_expect( - "common.items.armor.foot.sandals_0", + "common.items.armor.misc.foot.sandals", ))) .lantern(Some(Item::new_from_asset_expect( "common.items.lantern.black_0", @@ -478,22 +478,22 @@ impl LoadoutBuilder { Guard => LoadoutBuilder::new() .active_item(active_item) .shoulder(Some(Item::new_from_asset_expect( - "common.items.armor.shoulder.plate_leather_0", + "common.items.armor.leather_plate.shoulder", ))) .chest(Some(Item::new_from_asset_expect( - "common.items.armor.chest.plate_leather_0", + "common.items.armor.leather_plate.chest", ))) .belt(Some(Item::new_from_asset_expect( - "common.items.armor.belt.plate_leather_0", + "common.items.armor.leather_plate.belt", ))) .hands(Some(Item::new_from_asset_expect( - "common.items.armor.hand.plate_leather_0", + "common.items.armor.leather_plate.hand", ))) .pants(Some(Item::new_from_asset_expect( - "common.items.armor.pants.plate_leather_0", + "common.items.armor.leather_plate.pants", ))) .feet(Some(Item::new_from_asset_expect( - "common.items.armor.foot.plate_leather_0", + "common.items.armor.leather_plate.foot", ))) .lantern(match rand::thread_rng().gen_range(0..3) { 0 => Some(Item::new_from_asset_expect("common.items.lantern.black_0")), @@ -503,22 +503,22 @@ impl LoadoutBuilder { Outcast => LoadoutBuilder::new() .active_item(active_item) .shoulder(Some(Item::new_from_asset_expect( - "common.items.armor.shoulder.cloth_purple_0", + "common.items.armor.cloth_purple.shoulder", ))) .chest(Some(Item::new_from_asset_expect( - "common.items.armor.chest.cloth_purple_0", + "common.items.armor.cloth_purple.chest", ))) .belt(Some(Item::new_from_asset_expect( - "common.items.armor.belt.cloth_purple_0", + "common.items.armor.cloth_purple.belt", ))) .hands(Some(Item::new_from_asset_expect( - "common.items.armor.hand.cloth_purple_0", + "common.items.armor.cloth_purple.hand", ))) .pants(Some(Item::new_from_asset_expect( - "common.items.armor.pants.cloth_purple_0", + "common.items.armor.cloth_purple.pants", ))) .feet(Some(Item::new_from_asset_expect( - "common.items.armor.foot.cloth_purple_0", + "common.items.armor.cloth_purple.foot", ))) .lantern(match rand::thread_rng().gen_range(0..3) { 0 => Some(Item::new_from_asset_expect("common.items.lantern.black_0")), @@ -528,22 +528,22 @@ impl LoadoutBuilder { Highwayman => LoadoutBuilder::new() .active_item(active_item) .shoulder(Some(Item::new_from_asset_expect( - "common.items.armor.shoulder.leather_0", + "common.items.armor.swift.shoulder", ))) .chest(Some(Item::new_from_asset_expect( - "common.items.armor.chest.leather_0", + "common.items.armor.swift.chest", ))) .belt(Some(Item::new_from_asset_expect( - "common.items.armor.belt.leather_0", + "common.items.armor.swift.belt", ))) .hands(Some(Item::new_from_asset_expect( - "common.items.armor.hand.leather_0", + "common.items.armor.swift.hand", ))) .pants(Some(Item::new_from_asset_expect( - "common.items.armor.pants.leather_0", + "common.items.armor.swift.pants", ))) .feet(Some(Item::new_from_asset_expect( - "common.items.armor.foot.leather_0", + "common.items.armor.swift.foot", ))) .lantern(match rand::thread_rng().gen_range(0..3) { 0 => Some(Item::new_from_asset_expect("common.items.lantern.black_0")), @@ -556,22 +556,22 @@ impl LoadoutBuilder { Bandit => LoadoutBuilder::new() .active_item(active_item) .shoulder(Some(Item::new_from_asset_expect( - "common.items.armor.shoulder.assassin", + "common.items.armor.assassin.shoulder", ))) .chest(Some(Item::new_from_asset_expect( - "common.items.armor.chest.assassin", + "common.items.armor.assassin.chest", ))) .belt(Some(Item::new_from_asset_expect( - "common.items.armor.belt.assassin", + "common.items.armor.assassin.belt", ))) .hands(Some(Item::new_from_asset_expect( - "common.items.armor.hand.assassin", + "common.items.armor.assassin.hand", ))) .pants(Some(Item::new_from_asset_expect( - "common.items.armor.pants.assassin", + "common.items.armor.assassin.pants", ))) .feet(Some(Item::new_from_asset_expect( - "common.items.armor.foot.assassin", + "common.items.armor.assassin.foot", ))) .lantern(match rand::thread_rng().gen_range(0..3) { 0 => Some(Item::new_from_asset_expect("common.items.lantern.black_0")), @@ -584,25 +584,25 @@ impl LoadoutBuilder { CultistNovice => LoadoutBuilder::new() .active_item(active_item) .shoulder(Some(Item::new_from_asset_expect( - "common.items.armor.shoulder.steel_0", + "common.items.armor.steel.shoulder", ))) .chest(Some(Item::new_from_asset_expect( - "common.items.armor.chest.steel_0", + "common.items.armor.steel.chest", ))) .belt(Some(Item::new_from_asset_expect( - "common.items.armor.belt.steel_0", + "common.items.armor.steel.belt", ))) .hands(Some(Item::new_from_asset_expect( - "common.items.armor.hand.steel_0", + "common.items.armor.steel.hand", ))) .pants(Some(Item::new_from_asset_expect( - "common.items.armor.pants.steel_0", + "common.items.armor.steel.pants", ))) .feet(Some(Item::new_from_asset_expect( - "common.items.armor.foot.steel_0", + "common.items.armor.steel.foot", ))) .back(Some(Item::new_from_asset_expect( - "common.items.armor.back.dungeon_purple-0", + "common.items.armor.misc.back.dungeon_purple", ))) .lantern(match rand::thread_rng().gen_range(0..3) { 0 => Some(Item::new_from_asset_expect("common.items.lantern.black_0")), @@ -615,25 +615,25 @@ impl LoadoutBuilder { CultistAcolyte => LoadoutBuilder::new() .active_item(active_item) .shoulder(Some(Item::new_from_asset_expect( - "common.items.armor.shoulder.cultist_shoulder_purple", + "common.items.armor.cultist.shoulder", ))) .chest(Some(Item::new_from_asset_expect( - "common.items.armor.chest.cultist_chest_purple", + "common.items.armor.cultist.chest", ))) .belt(Some(Item::new_from_asset_expect( - "common.items.armor.belt.cultist_belt", + "common.items.armor.cultist.belt", ))) .hands(Some(Item::new_from_asset_expect( - "common.items.armor.hand.cultist_hands_purple", + "common.items.armor.cultist.hand", ))) .pants(Some(Item::new_from_asset_expect( - "common.items.armor.pants.cultist_legs_purple", + "common.items.armor.cultist.pants", ))) .feet(Some(Item::new_from_asset_expect( - "common.items.armor.foot.cultist_boots", + "common.items.armor.cultist.foot", ))) .back(Some(Item::new_from_asset_expect( - "common.items.armor.back.dungeon_purple-0", + "common.items.armor.misc.back.dungeon_purple", ))) .lantern(match rand::thread_rng().gen_range(0..3) { 0 => Some(Item::new_from_asset_expect("common.items.lantern.black_0")), @@ -646,25 +646,25 @@ impl LoadoutBuilder { Warlord => LoadoutBuilder::new() .active_item(active_item) .shoulder(Some(Item::new_from_asset_expect( - "common.items.armor.shoulder.warlord", + "common.items.armor.warlord.shoulder", ))) .chest(Some(Item::new_from_asset_expect( - "common.items.armor.chest.warlord", + "common.items.armor.warlord.chest", ))) .belt(Some(Item::new_from_asset_expect( - "common.items.armor.belt.warlord", + "common.items.armor.warlord.belt", ))) .hands(Some(Item::new_from_asset_expect( - "common.items.armor.hand.warlord", + "common.items.armor.warlord.hand", ))) .pants(Some(Item::new_from_asset_expect( - "common.items.armor.pants.warlord", + "common.items.armor.warlord.pants", ))) .feet(Some(Item::new_from_asset_expect( - "common.items.armor.foot.warlord", + "common.items.armor.warlord.foot", ))) .back(Some(Item::new_from_asset_expect( - "common.items.armor.back.warlord", + "common.items.armor.warlord.back", ))) .lantern(match rand::thread_rng().gen_range(0..3) { 0 => Some(Item::new_from_asset_expect("common.items.lantern.black_0")), @@ -677,25 +677,25 @@ impl LoadoutBuilder { Warlock => LoadoutBuilder::new() .active_item(active_item) .shoulder(Some(Item::new_from_asset_expect( - "common.items.armor.shoulder.warlock", + "common.items.armor.warlock.shoulder", ))) .chest(Some(Item::new_from_asset_expect( - "common.items.armor.chest.warlock", + "common.items.armor.warlock.chest", ))) .belt(Some(Item::new_from_asset_expect( - "common.items.armor.belt.warlock", + "common.items.armor.warlock.belt", ))) .hands(Some(Item::new_from_asset_expect( - "common.items.armor.hand.warlock", + "common.items.armor.warlock.hand", ))) .pants(Some(Item::new_from_asset_expect( - "common.items.armor.pants.warlock", + "common.items.armor.warlock.pants", ))) .feet(Some(Item::new_from_asset_expect( - "common.items.armor.foot.warlock", + "common.items.armor.warlock.foot", ))) .back(Some(Item::new_from_asset_expect( - "common.items.armor.back.warlock", + "common.items.armor.warlock.back", ))) .lantern(match rand::thread_rng().gen_range(0..3) { 0 => Some(Item::new_from_asset_expect("common.items.lantern.black_0")), @@ -709,28 +709,28 @@ impl LoadoutBuilder { .active_item(active_item) .chest(Some(Item::new_from_asset_expect( match rand::thread_rng().gen_range(0..10) { - 0 => "common.items.armor.chest.worker_green_0", - 1 => "common.items.armor.chest.worker_green_1", - 2 => "common.items.armor.chest.worker_red_0", - 3 => "common.items.armor.chest.worker_red_1", - 4 => "common.items.armor.chest.worker_purple_0", - 5 => "common.items.armor.chest.worker_purple_1", - 6 => "common.items.armor.chest.worker_yellow_0", - 7 => "common.items.armor.chest.worker_yellow_1", - 8 => "common.items.armor.chest.worker_orange_0", - _ => "common.items.armor.chest.worker_orange_1", + 0 => "common.items.armor.misc.chest.worker_green_0", + 1 => "common.items.armor.misc.chest.worker_green_1", + 2 => "common.items.armor.misc.chest.worker_red_0", + 3 => "common.items.armor.misc.chest.worker_red_1", + 4 => "common.items.armor.misc.chest.worker_purple_0", + 5 => "common.items.armor.misc.chest.worker_purple_1", + 6 => "common.items.armor.misc.chest.worker_yellow_0", + 7 => "common.items.armor.misc.chest.worker_yellow_1", + 8 => "common.items.armor.misc.chest.worker_orange_0", + _ => "common.items.armor.misc.chest.worker_orange_1", }, ))) .belt(Some(Item::new_from_asset_expect( - "common.items.armor.belt.leather_0", + "common.items.armor.swift.belt", ))) .pants(Some(Item::new_from_asset_expect( - "common.items.armor.pants.worker_blue_0", + "common.items.armor.misc.pants.worker_blue", ))) .feet(Some(Item::new_from_asset_expect( match rand::thread_rng().gen_range(0..2) { - 0 => "common.items.armor.foot.leather_0", - _ => "common.items.armor.foot.sandals_0", + 0 => "common.items.armor.swift.foot", + _ => "common.items.armor.misc.foot.sandals", }, ))) .build(), diff --git a/common/src/comp/inventory/mod.rs b/common/src/comp/inventory/mod.rs index df78f961a5..666de975d7 100644 --- a/common/src/comp/inventory/mod.rs +++ b/common/src/comp/inventory/mod.rs @@ -167,6 +167,32 @@ impl Inventory { } } + /// Merge the stack of items at src into the stack at dst if the items are + /// compatible and stackable, and return whether anything was changed + pub fn merge_stack_into(&mut self, src: InvSlotId, dst: InvSlotId) -> bool { + let mut amount = None; + if let (Some(srcitem), Some(dstitem)) = (self.get(src), self.get(dst)) { + // The equality check ensures the items have the same definition, to avoid e.g. + // transmuting coins to diamonds, and the stackable check avoids creating a + // stack of swords + if srcitem == dstitem && srcitem.is_stackable() { + amount = Some(srcitem.amount()); + } + } + if let Some(amount) = amount { + self.remove(src); + let dstitem = self + .get_mut(dst) + .expect("self.get(dst) was Some right above this"); + dstitem + .increase_amount(amount) + .expect("already checked is_stackable"); + true + } else { + false + } + } + /// Checks if inserting item exists in given cell. Inserts an item if it /// exists. pub fn insert_or_stack_at( @@ -215,6 +241,11 @@ impl Inventory { self.slot(inv_slot_id).and_then(Option::as_ref) } + /// Mutably get content of a slot + fn get_mut(&mut self, inv_slot_id: InvSlotId) -> Option<&mut Item> { + self.slot_mut(inv_slot_id).and_then(Option::as_mut) + } + /// Returns a reference to the item (if any) equipped in the given EquipSlot pub fn equipped(&self, equip_slot: EquipSlot) -> Option<&Item> { self.loadout.equipped(equip_slot) @@ -275,6 +306,29 @@ impl Inventory { } } + /// Takes half of the items from a slot in the inventory + pub fn take_half( + &mut self, + inv_slot_id: InvSlotId, + msm: &MaterialStatManifest, + ) -> Option { + if let Some(Some(item)) = self.slot_mut(inv_slot_id) { + if item.is_stackable() && item.amount() > 1 { + let mut return_item = item.duplicate(msm); + let returning_amount = item.amount() / 2; + item.decrease_amount(returning_amount).ok()?; + return_item + .set_amount(returning_amount) + .expect("Items duplicated from a stackable item must be stackable."); + Some(return_item) + } else { + self.remove(inv_slot_id) + } + } else { + None + } + } + /// Takes all items from the inventory pub fn drain(&mut self) -> impl Iterator + '_ { self.slots_mut() diff --git a/common/src/comp/inventory/test.rs b/common/src/comp/inventory/test.rs index d35aefadea..3b15c8dfee 100644 --- a/common/src/comp/inventory/test.rs +++ b/common/src/comp/inventory/test.rs @@ -203,7 +203,7 @@ fn equip_replace_already_equipped_item() { let boots = Item::new_from_asset_expect("common.items.testing.test_boots"); let starting_sandles = Some(Item::new_from_asset_expect( - "common.items.armor.foot.sandals_0", + "common.items.armor.misc.foot.sandals", )); let mut inv = Inventory::new_empty(); diff --git a/common/src/comp/mod.rs b/common/src/comp/mod.rs index f54f44abed..420f16fea4 100644 --- a/common/src/comp/mod.rs +++ b/common/src/comp/mod.rs @@ -62,7 +62,7 @@ pub use self::{ combo::Combo, controller::{ Climb, ControlAction, ControlEvent, Controller, ControllerInputs, GroupManip, Input, - InventoryManip, LoadoutManip, MountState, Mounting, SlotManip, + InventoryAction, InventoryEvent, InventoryManip, MountState, Mounting, }, energy::{Energy, EnergyChange, EnergySource}, group::Group, diff --git a/common/src/comp/stats.rs b/common/src/comp/stats.rs index e333420e5e..a233b99c12 100644 --- a/common/src/comp/stats.rs +++ b/common/src/comp/stats.rs @@ -23,7 +23,10 @@ impl Error for StatChangeError {} #[derive(Clone, Debug, Serialize, Deserialize)] pub struct Stats { pub name: String, + // TODO: Make skillset a separate component, probably too heavy for something that will + // potentially be updated every tick (especially as more buffs are added) pub skill_set: SkillSet, + pub damage_reduction: f32, } impl Stats { @@ -31,6 +34,7 @@ impl Stats { Self { name, skill_set: SkillSet::default(), + damage_reduction: 0.0, } } @@ -40,6 +44,7 @@ impl Stats { Self { name: "".to_owned(), skill_set: SkillSet::default(), + damage_reduction: 0.0, } } } diff --git a/common/src/event.rs b/common/src/event.rs index ecf2f784ea..f4b97f95e1 100644 --- a/common/src/event.rs +++ b/common/src/event.rs @@ -54,7 +54,7 @@ pub enum ServerEvent { entity: EcsEntity, cause: comp::HealthSource, }, - InventoryManip(EcsEntity, comp::SlotManip), + InventoryManip(EcsEntity, comp::InventoryManip), GroupManip(EcsEntity, comp::GroupManip), Respawn(EcsEntity), Shoot { diff --git a/common/src/states/behavior.rs b/common/src/states/behavior.rs index f791dd13d1..cbc31ec5de 100644 --- a/common/src/states/behavior.rs +++ b/common/src/states/behavior.rs @@ -1,8 +1,8 @@ use crate::{ comp::{ item::MaterialStatManifest, Beam, Body, CharacterState, Combo, ControlAction, Controller, - ControllerInputs, Energy, Health, Inventory, LoadoutManip, Melee, Ori, PhysicsState, Pos, - StateUpdate, Stats, Vel, + ControllerInputs, Energy, Health, Inventory, InventoryAction, Melee, Ori, PhysicsState, + Pos, StateUpdate, Stats, Vel, }, resources::DeltaTime, uid::Uid, @@ -18,7 +18,7 @@ pub trait CharacterBehavior { fn behavior(&self, data: &JoinData) -> StateUpdate; // Impl these to provide behavior for these inputs fn swap_equipped_weapons(&self, data: &JoinData) -> StateUpdate { StateUpdate::from(data) } - fn manipulate_loadout(&self, data: &JoinData, _loadout_manip: LoadoutManip) -> StateUpdate { + fn manipulate_loadout(&self, data: &JoinData, _inv_action: InventoryAction) -> StateUpdate { StateUpdate::from(data) } fn wield(&self, data: &JoinData) -> StateUpdate { StateUpdate::from(data) } @@ -32,9 +32,7 @@ pub trait CharacterBehavior { fn handle_event(&self, data: &JoinData, event: ControlAction) -> StateUpdate { match event { ControlAction::SwapEquippedWeapons => self.swap_equipped_weapons(data), - ControlAction::LoadoutManip(loadout_manip) => { - self.manipulate_loadout(data, loadout_manip) - }, + ControlAction::InventoryAction(inv_action) => self.manipulate_loadout(data, inv_action), ControlAction::Wield => self.wield(data), ControlAction::GlideWield => self.glide_wield(data), ControlAction::Unwield => self.unwield(data), diff --git a/common/src/states/dance.rs b/common/src/states/dance.rs index d5a039ac1e..2966600bfd 100644 --- a/common/src/states/dance.rs +++ b/common/src/states/dance.rs @@ -1,6 +1,6 @@ use super::utils::*; use crate::{ - comp::{CharacterState, LoadoutManip, StateUpdate}, + comp::{CharacterState, InventoryAction, StateUpdate}, states::behavior::{CharacterBehavior, JoinData}, }; use serde::{Deserialize, Serialize}; @@ -42,9 +42,9 @@ impl CharacterBehavior for Data { update } - fn manipulate_loadout(&self, data: &JoinData, loadout_manip: LoadoutManip) -> StateUpdate { + fn manipulate_loadout(&self, data: &JoinData, inv_action: InventoryAction) -> StateUpdate { let mut update = StateUpdate::from(data); - handle_manipulate_loadout(&data, &mut update, loadout_manip); + handle_manipulate_loadout(&data, &mut update, inv_action); update } } diff --git a/common/src/states/glide_wield.rs b/common/src/states/glide_wield.rs index 2cd42d6313..ffc1568d64 100644 --- a/common/src/states/glide_wield.rs +++ b/common/src/states/glide_wield.rs @@ -1,6 +1,6 @@ use super::utils::*; use crate::{ - comp::{slot::EquipSlot, CharacterState, EnergySource, LoadoutManip, StateUpdate}, + comp::{slot::EquipSlot, CharacterState, EnergySource, InventoryAction, StateUpdate}, states::behavior::{CharacterBehavior, JoinData}, }; @@ -69,9 +69,9 @@ impl CharacterBehavior for Data { update } - fn manipulate_loadout(&self, data: &JoinData, loadout_manip: LoadoutManip) -> StateUpdate { + fn manipulate_loadout(&self, data: &JoinData, inv_action: InventoryAction) -> StateUpdate { let mut update = StateUpdate::from(data); - handle_manipulate_loadout(&data, &mut update, loadout_manip); + handle_manipulate_loadout(&data, &mut update, inv_action); update } } diff --git a/common/src/states/idle.rs b/common/src/states/idle.rs index 7ffa0f351e..a32728844e 100644 --- a/common/src/states/idle.rs +++ b/common/src/states/idle.rs @@ -1,6 +1,6 @@ use super::utils::*; use crate::{ - comp::{LoadoutManip, StateUpdate}, + comp::{InventoryAction, StateUpdate}, states::behavior::{CharacterBehavior, JoinData}, }; @@ -61,9 +61,9 @@ impl CharacterBehavior for Data { update } - fn manipulate_loadout(&self, data: &JoinData, loadout_manip: LoadoutManip) -> StateUpdate { + fn manipulate_loadout(&self, data: &JoinData, inv_action: InventoryAction) -> StateUpdate { let mut update = StateUpdate::from(data); - handle_manipulate_loadout(&data, &mut update, loadout_manip); + handle_manipulate_loadout(&data, &mut update, inv_action); update } } diff --git a/common/src/states/sit.rs b/common/src/states/sit.rs index 07ddbf1eb3..5091e0be45 100644 --- a/common/src/states/sit.rs +++ b/common/src/states/sit.rs @@ -1,6 +1,6 @@ use super::utils::*; use crate::{ - comp::{CharacterState, LoadoutManip, StateUpdate}, + comp::{CharacterState, InventoryAction, StateUpdate}, states::behavior::{CharacterBehavior, JoinData}, }; use serde::{Deserialize, Serialize}; @@ -42,9 +42,9 @@ impl CharacterBehavior for Data { update } - fn manipulate_loadout(&self, data: &JoinData, loadout_manip: LoadoutManip) -> StateUpdate { + fn manipulate_loadout(&self, data: &JoinData, inv_action: InventoryAction) -> StateUpdate { let mut update = StateUpdate::from(data); - handle_manipulate_loadout(&data, &mut update, loadout_manip); + handle_manipulate_loadout(&data, &mut update, inv_action); update } } diff --git a/common/src/states/sneak.rs b/common/src/states/sneak.rs index 4a1b13e444..03fe51772a 100644 --- a/common/src/states/sneak.rs +++ b/common/src/states/sneak.rs @@ -1,6 +1,6 @@ use super::utils::*; use crate::{ - comp::{CharacterState, LoadoutManip, StateUpdate}, + comp::{CharacterState, InventoryAction, StateUpdate}, states::behavior::{CharacterBehavior, JoinData}, }; @@ -60,9 +60,9 @@ impl CharacterBehavior for Data { update } - fn manipulate_loadout(&self, data: &JoinData, loadout_manip: LoadoutManip) -> StateUpdate { + fn manipulate_loadout(&self, data: &JoinData, inv_action: InventoryAction) -> StateUpdate { let mut update = StateUpdate::from(data); - handle_manipulate_loadout(&data, &mut update, loadout_manip); + handle_manipulate_loadout(&data, &mut update, inv_action); update } } diff --git a/common/src/states/talk.rs b/common/src/states/talk.rs index 9519865815..9017ef16e0 100644 --- a/common/src/states/talk.rs +++ b/common/src/states/talk.rs @@ -1,6 +1,6 @@ use super::utils::*; use crate::{ - comp::{CharacterState, LoadoutManip, StateUpdate}, + comp::{CharacterState, InventoryAction, StateUpdate}, states::behavior::{CharacterBehavior, JoinData}, }; use serde::{Deserialize, Serialize}; @@ -47,9 +47,9 @@ impl CharacterBehavior for Data { update } - fn manipulate_loadout(&self, data: &JoinData, loadout_manip: LoadoutManip) -> StateUpdate { + fn manipulate_loadout(&self, data: &JoinData, inv_action: InventoryAction) -> StateUpdate { let mut update = StateUpdate::from(data); - handle_manipulate_loadout(&data, &mut update, loadout_manip); + handle_manipulate_loadout(&data, &mut update, inv_action); update } } diff --git a/common/src/states/utils.rs b/common/src/states/utils.rs index 032173629d..e2913acbe7 100644 --- a/common/src/states/utils.rs +++ b/common/src/states/utils.rs @@ -5,7 +5,7 @@ use crate::{ item::{Hands, ItemKind, Tool, ToolKind}, quadruped_low, quadruped_medium, quadruped_small, skills::Skill, - theropod, Body, CharacterAbility, CharacterState, LoadoutManip, StateUpdate, + theropod, Body, CharacterAbility, CharacterState, InventoryAction, StateUpdate, }, consts::{FRIC_GROUND, GRAVITY}, event::{LocalEvent, ServerEvent}, @@ -395,12 +395,11 @@ pub fn attempt_swap_equipped_weapons(data: &JoinData, update: &mut StateUpdate) pub fn handle_manipulate_loadout( data: &JoinData, update: &mut StateUpdate, - loadout_manip: LoadoutManip, + inv_action: InventoryAction, ) { - update.server_events.push_front(ServerEvent::InventoryManip( - data.entity, - loadout_manip.into(), - )); + update + .server_events + .push_front(ServerEvent::InventoryManip(data.entity, inv_action.into())); } /// Checks that player can wield the glider and updates `CharacterState` if so diff --git a/common/src/states/wielding.rs b/common/src/states/wielding.rs index dc21ae44d7..d0a67f9ec9 100644 --- a/common/src/states/wielding.rs +++ b/common/src/states/wielding.rs @@ -2,7 +2,7 @@ use super::utils::*; use crate::{ comp::{ slot::{EquipSlot, Slot}, - CharacterState, LoadoutManip, StateUpdate, + CharacterState, InventoryAction, StateUpdate, }, states::behavior::{CharacterBehavior, JoinData}, }; @@ -61,17 +61,17 @@ impl CharacterBehavior for Data { update } - fn manipulate_loadout(&self, data: &JoinData, loadout_manip: LoadoutManip) -> StateUpdate { + fn manipulate_loadout(&self, data: &JoinData, inv_action: InventoryAction) -> StateUpdate { let mut update = StateUpdate::from(data); - match loadout_manip { - LoadoutManip::Drop(EquipSlot::Mainhand) - | LoadoutManip::Swap(EquipSlot::Mainhand, _) - | LoadoutManip::Swap(_, Slot::Equip(EquipSlot::Mainhand)) => { + match inv_action { + InventoryAction::Drop(EquipSlot::Mainhand) + | InventoryAction::Swap(EquipSlot::Mainhand, _) + | InventoryAction::Swap(_, Slot::Equip(EquipSlot::Mainhand)) => { update.character = CharacterState::Idle; }, _ => (), } - handle_manipulate_loadout(&data, &mut update, loadout_manip); + handle_manipulate_loadout(&data, &mut update, inv_action); update } } diff --git a/common/src/trade.rs b/common/src/trade.rs index aa40506a01..d82b085bde 100644 --- a/common/src/trade.rs +++ b/common/src/trade.rs @@ -21,10 +21,12 @@ pub enum TradeAction { AddItem { item: InvSlotId, quantity: u32, + ours: bool, }, RemoveItem { item: InvSlotId, quantity: u32, + ours: bool, }, /// Accept needs the phase indicator to avoid progressing too far in the /// trade if there's latency and a player presses the accept button @@ -118,16 +120,26 @@ impl PendingTrade { /// - Modifications can only happen in phase 1 /// - Whenever a trade is modified, both accept flags get reset /// - Accept flags only get set for the current phase - pub fn process_trade_action(&mut self, who: usize, action: TradeAction, inventory: &Inventory) { + pub fn process_trade_action( + &mut self, + mut who: usize, + action: TradeAction, + inventories: &[&Inventory], + ) { use TradeAction::*; match action { AddItem { item, quantity: delta, + ours, } => { if self.phase() == TradePhase::Mutate && delta > 0 { + if !ours { + who = 1 - who; + } let total = self.offers[who].entry(item).or_insert(0); - let owned_quantity = inventory.get(item).map(|i| i.amount()).unwrap_or(0); + let owned_quantity = + inventories[who].get(item).map(|i| i.amount()).unwrap_or(0); *total = total.saturating_add(delta).min(owned_quantity); self.accept_flags = [false, false]; } @@ -135,8 +147,12 @@ impl PendingTrade { RemoveItem { item, quantity: delta, + ours, } => { if self.phase() == TradePhase::Mutate { + if !ours { + who = 1 - who; + } self.offers[who] .entry(item) .and_replace_entry_with(|_, mut total| { @@ -180,17 +196,24 @@ impl Trades { id } - pub fn process_trade_action( + pub fn process_trade_action<'a, F: Fn(Uid) -> Option<&'a Inventory>>( &mut self, id: TradeId, who: Uid, action: TradeAction, - inventory: &Inventory, + get_inventory: F, ) { trace!("for trade id {:?}, message {:?}", id, action); if let Some(trade) = self.trades.get_mut(&id) { if let Some(party) = trade.which_party(who) { - trade.process_trade_action(party, action, inventory); + let mut inventories = Vec::new(); + for party in trade.parties.iter() { + match get_inventory(*party) { + Some(inventory) => inventories.push(inventory), + None => return, + } + } + trade.process_trade_action(party, action, &*inventories); } else { warn!( "An entity who is not a party to trade {:?} tried to modify it", diff --git a/common/sys/src/beam.rs b/common/sys/src/beam.rs index c4c2b863ea..0f4cdf130d 100644 --- a/common/sys/src/beam.rs +++ b/common/sys/src/beam.rs @@ -1,8 +1,8 @@ use common::{ - combat::AttackerInfo, + combat::{AttackerInfo, TargetInfo}, comp::{ Beam, BeamSegment, Body, Energy, Group, Health, HealthSource, Inventory, Last, Ori, Pos, - Scale, + Scale, Stats, }, event::{EventBus, ServerEvent}, resources::{DeltaTime, Time}, @@ -33,6 +33,7 @@ pub struct ReadData<'a> { inventories: ReadStorage<'a, Inventory>, groups: ReadStorage<'a, Group>, energies: ReadStorage<'a, Energy>, + stats: ReadStorage<'a, Stats>, } /// This system is responsible for handling beams that heal or do damage @@ -157,11 +158,16 @@ impl<'a> System<'a> for Sys { energy: read_data.energies.get(entity), }); + let target_info = TargetInfo { + entity: target, + inventory: read_data.inventories.get(target), + stats: read_data.stats.get(target), + }; + beam_segment.properties.attack.apply_attack( target_group, attacker_info, - target, - read_data.inventories.get(target), + target_info, ori.look_dir(), false, 1.0, diff --git a/common/sys/src/buff.rs b/common/sys/src/buff.rs index 7e5e6ebe7e..2a2aaa8c05 100644 --- a/common/sys/src/buff.rs +++ b/common/sys/src/buff.rs @@ -1,7 +1,7 @@ use common::{ comp::{ Buff, BuffCategory, BuffChange, BuffEffect, BuffId, BuffSource, Buffs, Energy, Health, - HealthChange, HealthSource, Inventory, ModifierKind, + HealthChange, HealthSource, Inventory, ModifierKind, Stats, }, event::{EventBus, ServerEvent}, resources::DeltaTime, @@ -27,17 +27,29 @@ impl<'a> System<'a> for Sys { WriteStorage<'a, Health>, WriteStorage<'a, Energy>, WriteStorage<'a, Buffs>, + WriteStorage<'a, Stats>, ); - fn run(&mut self, (read_data, mut healths, mut energies, mut buffs): Self::SystemData) { + fn run( + &mut self, + (read_data, mut healths, mut energies, mut buffs, mut stats): Self::SystemData, + ) { let mut server_emitter = read_data.server_bus.emitter(); let dt = read_data.dt.0; // Set to false to avoid spamming server buffs.set_event_emission(false); healths.set_event_emission(false); energies.set_event_emission(false); - for (entity, mut buff_comp, mut health, mut energy) in - (&read_data.entities, &mut buffs, &mut healths, &mut energies).join() + healths.set_event_emission(false); + stats.set_event_emission(false); + for (entity, mut buff_comp, mut health, mut energy, mut stat) in ( + &read_data.entities, + &mut buffs, + &mut healths, + &mut energies, + &mut stats, + ) + .join() { let (buff_comp_kinds, buff_comp_buffs) = buff_comp.parts(); let mut expired_buffs = Vec::::new(); @@ -61,13 +73,12 @@ impl<'a> System<'a> for Sys { } } - if let Some(inventory) = read_data.inventories.get(entity) { - let damage_reduction = Damage::compute_damage_reduction(inventory); - if (damage_reduction - 1.0).abs() < f32::EPSILON { - for (id, buff) in buff_comp.buffs.iter() { - if !buff.kind.is_buff() { - expired_buffs.push(*id); - } + let damage_reduction = + Damage::compute_damage_reduction(read_data.inventories.get(entity), Some(&stat)); + if (damage_reduction - 1.0).abs() < f32::EPSILON { + for (id, buff) in buff_comp.buffs.iter() { + if !buff.kind.is_buff() { + expired_buffs.push(*id); } } } @@ -77,6 +88,7 @@ impl<'a> System<'a> for Sys { energy.last_set(); health.reset_max(); energy.reset_max(); + stat.damage_reduction = 0.0; // Iterator over the lists of buffs by kind let buff_comp = &mut *buff_comp; @@ -147,6 +159,9 @@ impl<'a> System<'a> for Sys { energy.set_maximum(new_max); }, }, + BuffEffect::ImmuneToAttacks => { + stat.damage_reduction = 1.0; + }, }; } } @@ -176,6 +191,7 @@ impl<'a> System<'a> for Sys { buffs.set_event_emission(true); healths.set_event_emission(true); energies.set_event_emission(true); + stats.set_event_emission(true); } } diff --git a/common/sys/src/controller.rs b/common/sys/src/controller.rs index 9289c5d497..8618c55e97 100644 --- a/common/sys/src/controller.rs +++ b/common/sys/src/controller.rs @@ -93,8 +93,8 @@ impl<'a> System<'a> for Sys { server_emitter .emit(ServerEvent::ProcessTradeAction(entity, trade_id, action)); }, - ControlEvent::InventoryManip(manip) => { - server_emitter.emit(ServerEvent::InventoryManip(entity, manip.into())); + ControlEvent::InventoryEvent(event) => { + server_emitter.emit(ServerEvent::InventoryManip(entity, event.into())); }, ControlEvent::GroupManip(manip) => { server_emitter.emit(ServerEvent::GroupManip(entity, manip)) diff --git a/common/sys/src/melee.rs b/common/sys/src/melee.rs index d9e248c720..548b76f143 100644 --- a/common/sys/src/melee.rs +++ b/common/sys/src/melee.rs @@ -1,6 +1,6 @@ use common::{ - combat::AttackerInfo, - comp::{Body, CharacterState, Energy, Group, Health, Inventory, Melee, Ori, Pos, Scale}, + combat::{AttackerInfo, TargetInfo}, + comp::{Body, CharacterState, Energy, Group, Health, Inventory, Melee, Ori, Pos, Scale, Stats}, event::{EventBus, ServerEvent}, metrics::SysMetrics, span, @@ -29,6 +29,7 @@ pub struct ReadData<'a> { char_states: ReadStorage<'a, CharacterState>, server_bus: Read<'a, EventBus>, metrics: ReadExpect<'a, SysMetrics>, + stats: ReadStorage<'a, Stats>, } /// This system is responsible for handling accepted inputs like moving or @@ -114,11 +115,16 @@ impl<'a> System<'a> for Sys { energy: read_data.energies.get(attacker), }); + let target_info = TargetInfo { + entity: target, + inventory: read_data.inventories.get(target), + stats: read_data.stats.get(target), + }; + melee_attack.attack.apply_attack( target_group, attacker_info, - target, - read_data.inventories.get(target), + target_info, dir, is_dodge, 1.0, diff --git a/common/sys/src/projectile.rs b/common/sys/src/projectile.rs index 329ad2df36..45701c3cb3 100644 --- a/common/sys/src/projectile.rs +++ b/common/sys/src/projectile.rs @@ -1,7 +1,8 @@ use common::{ - combat::AttackerInfo, + combat::{AttackerInfo, TargetInfo}, comp::{ - projectile, Energy, Group, HealthSource, Inventory, Ori, PhysicsState, Pos, Projectile, Vel, + projectile, Energy, Group, HealthSource, Inventory, Ori, PhysicsState, Pos, Projectile, + Stats, Vel, }, event::{EventBus, ServerEvent}, metrics::SysMetrics, @@ -30,6 +31,7 @@ pub struct ReadData<'a> { inventories: ReadStorage<'a, Inventory>, groups: ReadStorage<'a, Group>, energies: ReadStorage<'a, Energy>, + stats: ReadStorage<'a, Stats>, } /// This system is responsible for handling projectile effect triggers @@ -93,7 +95,7 @@ impl<'a> System<'a> for Sys { for effect in projectile.hit_entity.drain(..) { match effect { projectile::Effect::Attack(attack) => { - if let Some(target_entity) = read_data + if let Some(target) = read_data .uid_allocator .retrieve_entity_internal(other.into()) { @@ -110,11 +112,16 @@ impl<'a> System<'a> for Sys { } }); + let target_info = TargetInfo { + entity: target, + inventory: read_data.inventories.get(target), + stats: read_data.stats.get(target), + }; + attack.apply_attack( target_group, attacker_info, - target_entity, - read_data.inventories.get(target_entity), + target_info, ori.look_dir(), false, 1.0, diff --git a/common/sys/src/shockwave.rs b/common/sys/src/shockwave.rs index 0085125f75..80b5a12efa 100644 --- a/common/sys/src/shockwave.rs +++ b/common/sys/src/shockwave.rs @@ -1,8 +1,8 @@ use common::{ - combat::AttackerInfo, + combat::{AttackerInfo, TargetInfo}, comp::{ Body, Energy, Group, Health, HealthSource, Inventory, Last, Ori, PhysicsState, Pos, Scale, - Shockwave, ShockwaveHitEntities, + Shockwave, ShockwaveHitEntities, Stats, }, event::{EventBus, ServerEvent}, resources::{DeltaTime, Time}, @@ -34,6 +34,7 @@ pub struct ReadData<'a> { groups: ReadStorage<'a, Group>, physics_states: ReadStorage<'a, PhysicsState>, energies: ReadStorage<'a, Energy>, + stats: ReadStorage<'a, Stats>, } /// This system is responsible for handling accepted inputs like moving or @@ -176,11 +177,16 @@ impl<'a> System<'a> for Sys { energy: read_data.energies.get(entity), }); + let target_info = TargetInfo { + entity: target, + inventory: read_data.inventories.get(target), + stats: read_data.stats.get(target), + }; + shockwave.properties.attack.apply_attack( target_group, attacker_info, - target, - read_data.inventories.get(target), + target_info, dir, false, 1.0, diff --git a/plugin/api/src/lib.rs b/plugin/api/src/lib.rs index c506fcf699..3794310313 100644 --- a/plugin/api/src/lib.rs +++ b/plugin/api/src/lib.rs @@ -8,7 +8,27 @@ pub use common::{resources::GameMode, uid::Uid}; mod errors; pub use errors::*; +pub use event::*; +/// The [`Action`] enum represents a push modification that will be made in the +/// ECS in the next tick Note that all actions when sent are async and will not +/// be executed in order like [`Retrieve`] that are sync. All actions sent will +/// be executed in the send order in the ticking before the rest of the logic +/// applies. +/// +/// # Usage: +/// ```rust +/// # use veloren_plugin_api::*; +/// # pub fn emit_action(action: Action) { emit_actions(vec![action]) } +/// # pub fn emit_actions(_actions: Vec) {} +/// // Packing actions is better than sending multiple ones at the same time! +/// emit_actions(vec![ +/// Action::KillEntity(Uid(1)), +/// Action::PlayerSendMessage(Uid(0), "This is a test message".to_owned()), +/// ]); +/// // You can also use this to only send one action +/// emit_action(Action::KillEntity(Uid(1))); +/// ``` #[derive(Deserialize, Serialize, Debug)] pub enum Action { ServerClose, @@ -17,28 +37,100 @@ pub enum Action { KillEntity(Uid), } +/// The [`Retrieve`] enum represents read of the ECS is sync and blocking. +/// This enum shouldn't be used by itself. You should always prefer `get` +/// methods on Plugin API Types For instance, prefer this method: +/// ```rust +/// # use veloren_plugin_api::*; +/// # let entityid = Player {id: Uid(0)}; +/// # trait G { fn get_entity_health(&self) -> Option; } +/// # impl G for Player {fn get_entity_health(&self) -> Option {Some(1)}} +/// let life = entityid.get_entity_health().unwrap(); +/// // Do something with life +/// ``` +/// Over this one: +/// ```rust +/// # use veloren_plugin_api::*; +/// # let entityid = Uid(0); +/// # fn retrieve_action(r: &Retrieve) -> Result { Ok(RetrieveResult::GetEntityHealth(Health::empty()))} +/// let life = if let RetrieveResult::GetEntityHealth(e) = +/// retrieve_action(&Retrieve::GetEntityHealth(entityid)).unwrap() +/// { +/// e +/// } else { +/// unreachable!() +/// }; +/// // Do something with life +/// ``` #[derive(Deserialize, Serialize, Debug)] pub enum Retrieve { GetPlayerName(Uid), GetEntityHealth(Uid), } +/// The [`RetrieveResult`] struct is generated while using the `retrieve_action` +/// function +/// +/// You should always prefer using `get` methods available in Plugin API types. +/// +/// Example: +/// ```rust +/// # use veloren_plugin_api::*; +/// # let entityid = Uid(0); +/// # fn retrieve_action(r: &Retrieve) -> Result { Ok(RetrieveResult::GetEntityHealth(Health::empty()))} +/// let life = if let RetrieveResult::GetEntityHealth(e) = +/// retrieve_action(&Retrieve::GetEntityHealth(entityid)).unwrap() +/// { +/// e +/// } else { +/// unreachable!() +/// }; +/// // Do something with life +/// ``` #[derive(Serialize, Deserialize, Debug)] pub enum RetrieveResult { GetPlayerName(String), GetEntityHealth(Health), } +/// This trait is implement by all events and ensure type safety of FFI. pub trait Event: Serialize + DeserializeOwned + Send + Sync { type Response: Serialize + DeserializeOwned + Send + Sync; fn get_event_name(&self) -> String; } +/// This module contains all events from the api pub mod event { use super::*; use serde::{Deserialize, Serialize}; + /// This event is called when a chat command is run. + /// Your event should be named `on_command_` + /// + /// If you return an Error the displayed message will be the error message + /// in red You can return a Vec that will be print to player + /// chat as info + /// + /// # Example + /// ```ignore + /// #[event_handler] + /// pub fn on_command_testplugin(command: ChatCommandEvent) -> Result, String> { + /// Ok(vec![format!( + /// "Player of id {:?} named {} with {:?} sended command with args {:?}", + /// command.player.id, + /// command + /// .player + /// .get_player_name() + /// .expect("Can't get player name"), + /// command + /// .player + /// .get_entity_health() + /// .expect("Can't get player health"), + /// command.command_args + /// )]) + /// } + /// ``` #[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)] pub struct ChatCommandEvent { pub command: String, @@ -52,11 +144,25 @@ pub mod event { fn get_event_name(&self) -> String { format!("on_command_{}", self.command) } } + /// This struct represent a player #[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)] pub struct Player { pub id: Uid, } + /// This event is called when a player connects. + /// Your event should be named `on_join` + /// + /// You can either return `CloseConnection` or `None` + /// If `CloseConnection` is returned the player will be kicked + /// + /// # Example + /// ```ignore + /// #[event_handler] + /// pub fn on_join(command: PlayerJoinEvent) -> PlayerJoinResult { + /// PlayerJoinResult::CloseConnection + /// } + /// ``` #[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)] pub struct PlayerJoinEvent { pub player_name: String, @@ -69,6 +175,11 @@ pub mod event { fn get_event_name(&self) -> String { "on_join".to_owned() } } + /// This is the return type of an `on_join` event. See [`PlayerJoinEvent`] + /// + /// Variants: + /// - `CloseConnection` will kick the player. + /// - `None` will let the player join the server. #[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)] #[repr(u8)] pub enum PlayerJoinResult { @@ -80,6 +191,20 @@ pub mod event { fn default() -> Self { Self::None } } + /// This event is called when the plugin is loaded + /// Your event should be named `on_load` + /// + /// # Example + /// ```ignore + /// #[event_handler] + /// pub fn on_load(load: PluginLoadEvent) { + /// match load.game_mode { + /// GameMode::Server => emit_action(Action::Print("Hello, server!".to_owned())), + /// GameMode::Client => emit_action(Action::Print("Hello, client!".to_owned())), + /// GameMode::Singleplayer => emit_action(Action::Print("Hello, singleplayer!".to_owned())), + /// } + /// } + /// ``` #[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)] pub struct PluginLoadEvent { pub game_mode: GameMode, @@ -91,9 +216,6 @@ pub mod event { fn get_event_name(&self) -> String { "on_load".to_owned() } } - // #[derive(Serialize, Deserialize, Debug)] - // pub struct EmptyResult; - // impl Default for PlayerJoinResult { // fn default() -> Self { // Self::None diff --git a/server/src/cmd.rs b/server/src/cmd.rs index 0cd6ed1c7d..09a51eeec5 100644 --- a/server/src/cmd.rs +++ b/server/src/cmd.rs @@ -111,6 +111,7 @@ fn get_handler(cmd: &ChatCommand) -> CommandHandler { ChatCommand::Players => handle_players, ChatCommand::Region => handle_region, ChatCommand::RemoveLights => handle_remove_lights, + ChatCommand::Safezone => handle_safezone, ChatCommand::Say => handle_say, ChatCommand::SetMotd => handle_set_motd, ChatCommand::SkillPoint => handle_skill_point, @@ -975,7 +976,7 @@ fn handle_spawn_campfire( animated: true, }) .with(WaypointArea::default()) - .with(comp::Auras::new(Aura::new( + .with(comp::Auras::new(vec![Aura::new( AuraKind::Buff { kind: BuffKind::CampfireHeal, data: BuffData::new(0.02, Some(Duration::from_secs(1))), @@ -985,7 +986,7 @@ fn handle_spawn_campfire( 5.0, None, AuraTarget::All, - ))) + )])) .build(); server.notify_client( @@ -1000,6 +1001,45 @@ fn handle_spawn_campfire( } } +fn handle_safezone( + server: &mut Server, + client: EcsEntity, + target: EcsEntity, + args: String, + action: &ChatCommand, +) { + let range = scan_fmt_some!(&args, &action.arg_fmt(), f32); + + match server.state.read_component_copied::(target) { + Some(pos) => { + server + .state + .create_object(pos, comp::object::Body::BoltNature) + .with(comp::Auras::new(vec![Aura::new( + AuraKind::Buff { + kind: BuffKind::Invulnerability, + data: BuffData::new(1.0, Some(Duration::from_secs(1))), + category: BuffCategory::Natural, + source: BuffSource::World, + }, + range.unwrap_or(100.0), + None, + AuraTarget::All, + )])) + .build(); + + server.notify_client( + client, + ServerGeneral::server_msg(ChatType::CommandInfo, "Spawned a safe zone"), + ); + }, + None => server.notify_client( + client, + ServerGeneral::server_msg(ChatType::CommandError, "You have no position!"), + ), + } +} + fn handle_players( server: &mut Server, client: EcsEntity, diff --git a/server/src/events/entity_creation.rs b/server/src/events/entity_creation.rs index 6f7bab4552..0f02d79cb4 100644 --- a/server/src/events/entity_creation.rs +++ b/server/src/events/entity_creation.rs @@ -191,7 +191,7 @@ pub fn handle_create_waypoint(server: &mut Server, pos: Vec3) { }) .with(WaypointArea::default()) .with(comp::Mass(10_f32.powi(10))) - .with(comp::Auras::new(Aura::new( + .with(comp::Auras::new(vec![Aura::new( AuraKind::Buff { kind: BuffKind::CampfireHeal, data: BuffData::new(0.02, Some(Duration::from_secs(1))), @@ -201,6 +201,6 @@ pub fn handle_create_waypoint(server: &mut Server, pos: Vec3) { 5.0, None, AuraTarget::All, - ))) + )])) .build(); } diff --git a/server/src/events/entity_manipulation.rs b/server/src/events/entity_manipulation.rs index cb4762e5a9..2a42c497ab 100644 --- a/server/src/events/entity_manipulation.rs +++ b/server/src/events/entity_manipulation.rs @@ -511,14 +511,16 @@ pub fn handle_land_on_ground(server: &Server, entity: EcsEntity, vel: Vec3) if vel.z <= -30.0 { let falldmg = (vel.z.powi(2) / 20.0 - 40.0) * 10.0; let inventories = state.ecs().read_storage::(); + let stats = state.ecs().read_storage::(); // Handle health change if let Some(mut health) = state.ecs().write_storage::().get_mut(entity) { let damage = Damage { source: DamageSource::Falling, value: falldmg, }; - let change = - damage.calculate_health_change(inventories.get(entity), None, false, 0.0, 1.0); + let damage_reduction = + Damage::compute_damage_reduction(inventories.get(entity), stats.get(entity)); + let change = damage.calculate_health_change(damage_reduction, None, false, 0.0, 1.0); health.change_by(change); } // Handle poise change @@ -674,14 +676,15 @@ pub fn handle_explosion(server: &Server, pos: Vec3, explosion: Explosion, o }, RadiusEffect::Attack(attack) => { let energies = &ecs.read_storage::(); - for (entity_b, pos_b, _health_b, inventory_b_maybe) in ( + for (entity_b, pos_b, _health_b, inventory_b_maybe, stats_b_maybe) in ( &ecs.entities(), &ecs.read_storage::(), &ecs.read_storage::(), ecs.read_storage::().maybe(), + ecs.read_storage::().maybe(), ) .join() - .filter(|(_, _, h, _)| !h.is_dead) + .filter(|(_, _, h, _, _)| !h.is_dead) { // Check if it is a hit let distance_squared = pos.distance_squared(pos_b.0); @@ -714,13 +717,18 @@ pub fn handle_explosion(server: &Server, pos: Vec3, explosion: Explosion, o energy: energies.get(entity), }); + let target_info = combat::TargetInfo { + entity: entity_b, + inventory: inventory_b_maybe, + stats: stats_b_maybe, + }; + let server_eventbus = ecs.read_resource::>(); attack.apply_attack( target_group, attacker_info, - entity_b, - inventory_b_maybe, + target_info, dir, false, strength, diff --git a/server/src/events/inventory_manip.rs b/server/src/events/inventory_manip.rs index 48cc8c0ede..f1adfee1f9 100644 --- a/server/src/events/inventory_manip.rs +++ b/server/src/events/inventory_manip.rs @@ -5,7 +5,8 @@ use vek::{Rgb, Vec3}; use common::{ comp::{ - self, item, + self, + item::{self, MaterialStatManifest}, slot::{self, Slot}, }, consts::MAX_PICKUP_RANGE, @@ -38,7 +39,7 @@ pub fn snuff_lantern(storage: &mut WriteStorage, entity: Ecs #[allow(clippy::blocks_in_if_conditions)] #[allow(clippy::same_item_push)] // TODO: Pending review in #587 -pub fn handle_inventory(server: &mut Server, entity: EcsEntity, manip: comp::SlotManip) { +pub fn handle_inventory(server: &mut Server, entity: EcsEntity, manip: comp::InventoryManip) { let state = server.state_mut(); let uid = state @@ -75,7 +76,7 @@ pub fn handle_inventory(server: &mut Server, entity: EcsEntity, manip: comp::Slo }; match manip { - comp::SlotManip::Pickup(uid) => { + comp::InventoryManip::Pickup(uid) => { let picked_up_item: Option; let item_entity = if let (Some((item, item_entity)), Some(mut inv)) = ( state @@ -147,8 +148,7 @@ pub fn handle_inventory(server: &mut Server, entity: EcsEntity, manip: comp::Slo state.write_component(entity, event); }, - - comp::SlotManip::Collect(pos) => { + comp::InventoryManip::Collect(pos) => { let block = state.terrain().get(pos).ok().copied(); if let Some(block) = block { @@ -218,8 +218,7 @@ pub fn handle_inventory(server: &mut Server, entity: EcsEntity, manip: comp::Slo } } }, - - comp::SlotManip::Use(slot) => { + comp::InventoryManip::Use(slot) => { let mut inventories = state.ecs().write_storage::(); let mut inventory = if let Some(inventory) = inventories.get_mut(entity) { inventory @@ -422,22 +421,32 @@ pub fn handle_inventory(server: &mut Server, entity: EcsEntity, manip: comp::Slo state.write_component(entity, comp::InventoryUpdate::new(event)); } }, - - comp::SlotManip::Swap(a, b) => { + comp::InventoryManip::Swap(a, b) => { let ecs = state.ecs(); if let Some(pos) = ecs.read_storage::().get(entity) { if let Some(mut inventory) = ecs.write_storage::().get_mut(entity) { - dropped_items.extend(inventory.swap(a, b).into_iter().map(|x| { - ( - *pos, - state - .read_component_copied::(entity) - .unwrap_or_default(), - x, - ) - })); + let mut merged_stacks = false; + + // If both slots have items and we're attemping to drag from one stack + // into another, stack the items. + if let (Slot::Inventory(slot_a), Slot::Inventory(slot_b)) = (a, b) { + merged_stacks |= inventory.merge_stack_into(slot_a, slot_b); + } + + // If the stacks weren't mergable carry out a swap. + if !merged_stacks { + dropped_items.extend(inventory.swap(a, b).into_iter().map(|x| { + ( + *pos, + state + .read_component_copied::(entity) + .unwrap_or_default(), + x, + ) + })); + } } } @@ -446,8 +455,55 @@ pub fn handle_inventory(server: &mut Server, entity: EcsEntity, manip: comp::Slo comp::InventoryUpdate::new(comp::InventoryUpdateEvent::Swapped), ); }, + comp::InventoryManip::SplitSwap(slot, target) => { + let msm = state.ecs().read_resource::(); + let mut inventories = state.ecs().write_storage::(); + let mut inventory = if let Some(inventory) = inventories.get_mut(entity) { + inventory + } else { + error!( + ?entity, + "Can't manipulate inventory, entity doesn't have one" + ); + return; + }; - comp::SlotManip::Drop(slot) => { + // If both slots have items and we're attemping to split from one stack + // into another, ensure that they are the same type of item. If they are + // the same type do nothing, as you don't want to overwrite the existing item. + + if let (Slot::Inventory(source_inv_slot_id), Slot::Inventory(target_inv_slot_id)) = + (slot, target) + { + if let Some(source_item) = inventory.get(source_inv_slot_id) { + if let Some(target_item) = inventory.get(target_inv_slot_id) { + if source_item != target_item { + return; + } + } + } + } + + let item = match slot { + Slot::Inventory(slot) => inventory.take_half(slot, &msm), + Slot::Equip(_) => None, + }; + + if let Some(item) = item { + if let Slot::Inventory(target) = target { + inventory.insert_or_stack_at(target, item).ok(); + } + } + drop(inventory); + drop(inventories); + drop(msm); + + state.write_component( + entity, + comp::InventoryUpdate::new(comp::InventoryUpdateEvent::Swapped), + ); + }, + comp::InventoryManip::Drop(slot) => { let item = match slot { Slot::Inventory(slot) => state .ecs() @@ -479,8 +535,37 @@ pub fn handle_inventory(server: &mut Server, entity: EcsEntity, manip: comp::Slo comp::InventoryUpdate::new(comp::InventoryUpdateEvent::Dropped), ); }, + comp::InventoryManip::SplitDrop(slot) => { + let msm = state.ecs().read_resource::(); + let item = match slot { + Slot::Inventory(slot) => state + .ecs() + .write_storage::() + .get_mut(entity) + .and_then(|mut inv| inv.take_half(slot, &msm)), + Slot::Equip(_) => None, + }; - comp::SlotManip::CraftRecipe(recipe) => { + // FIXME: We should really require the drop and write to be atomic! + if let (Some(mut item), Some(pos)) = + (item, state.ecs().read_storage::().get(entity)) + { + item.put_in_world(); + dropped_items.push(( + *pos, + state + .read_component_copied::(entity) + .unwrap_or_default(), + item, + )); + } + drop(msm); + state.write_component( + entity, + comp::InventoryUpdate::new(comp::InventoryUpdateEvent::Dropped), + ); + }, + comp::InventoryManip::CraftRecipe(recipe) => { if let Some(mut inv) = state .ecs() .write_storage::() diff --git a/server/src/events/trade.rs b/server/src/events/trade.rs index f1ba619e6d..12190921ed 100644 --- a/server/src/events/trade.rs +++ b/server/src/events/trade.rs @@ -3,7 +3,10 @@ use common::{ comp::inventory::{item::MaterialStatManifest, Inventory}, trade::{PendingTrade, TradeAction, TradeId, TradeResult, Trades}, }; -use common_net::{msg::ServerGeneral, sync::WorldSyncExt}; +use common_net::{ + msg::ServerGeneral, + sync::{Uid, WorldSyncExt}, +}; use hashbrown::hash_map::Entry; use specs::{world::WorldExt, Entity as EcsEntity}; use std::cmp::Ordering; @@ -26,8 +29,17 @@ pub fn handle_process_trade_action( server.notify_client(e, ServerGeneral::FinishedTrade(TradeResult::Declined)) }); } else { - if let Some(inv) = server.state.ecs().read_component::().get(entity) { - trades.process_trade_action(trade_id, uid, action, inv); + { + let ecs = server.state.ecs(); + let inventories = ecs.read_component::(); + let get_inventory = |uid: Uid| { + if let Some(entity) = ecs.entity_from_uid(uid.0) { + inventories.get(entity) + } else { + None + } + }; + trades.process_trade_action(trade_id, uid, action, get_inventory); } if let Entry::Occupied(entry) = trades.trades.entry(trade_id) { let parties = entry.get().parties; diff --git a/server/src/migrations/2021-03-01-053817_armor-reorganization/down.sql b/server/src/migrations/2021-03-01-053817_armor-reorganization/down.sql new file mode 100644 index 0000000000..291a97c5ce --- /dev/null +++ b/server/src/migrations/2021-03-01-053817_armor-reorganization/down.sql @@ -0,0 +1 @@ +-- This file should undo anything in `up.sql` \ No newline at end of file diff --git a/server/src/migrations/2021-03-01-053817_armor-reorganization/up.sql b/server/src/migrations/2021-03-01-053817_armor-reorganization/up.sql new file mode 100644 index 0000000000..9394ceb4c1 --- /dev/null +++ b/server/src/migrations/2021-03-01-053817_armor-reorganization/up.sql @@ -0,0 +1,336 @@ +UPDATE item +SET item_definition_id = 'common.items.armor.misc.back.admin' WHERE item_definition_id = 'common.items.armor.back.admin'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.back.backpack' WHERE item_definition_id = 'common.items.armor.back.backpack_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.back.dungeon_purple' WHERE item_definition_id = 'common.items.armor.back.dungeon_purple-0'; +UPDATE item +SET item_definition_id = 'common.items.armor.agile.back' WHERE item_definition_id = 'common.items.armor.back.leather_adventurer'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.back.short_0' WHERE item_definition_id = 'common.items.armor.back.short_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.back.short_1' WHERE item_definition_id = 'common.items.armor.back.short_1'; +UPDATE item +SET item_definition_id = 'common.items.armor.velorite_mage.back' WHERE item_definition_id = 'common.items.armor.back.velorite_mage_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlock.back' WHERE item_definition_id = 'common.items.armor.back.warlock'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlord.back' WHERE item_definition_id = 'common.items.armor.back.warlord'; +UPDATE item +SET item_definition_id = 'common.items.armor.assassin.belt' WHERE item_definition_id = 'common.items.armor.belt.assassin'; +UPDATE item +SET item_definition_id = 'common.items.armor.bonerattler.belt' WHERE item_definition_id = 'common.items.armor.belt.bonerattler'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_blue.belt' WHERE item_definition_id = 'common.items.armor.belt.cloth_blue_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_green.belt' WHERE item_definition_id = 'common.items.armor.belt.cloth_green_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_purple.belt' WHERE item_definition_id = 'common.items.armor.belt.cloth_purple_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.belt' WHERE item_definition_id = 'common.items.armor.belt.cultist_belt'; +UPDATE item +SET item_definition_id = 'common.items.armor.druid.belt' WHERE item_definition_id = 'common.items.armor.belt.druid'; +UPDATE item +SET item_definition_id = 'common.items.armor.swift.belt' WHERE item_definition_id = 'common.items.armor.belt.leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather.belt' WHERE item_definition_id = 'common.items.armor.belt.leather_2'; +UPDATE item +SET item_definition_id = 'common.items.armor.agile.belt' WHERE item_definition_id = 'common.items.armor.belt.leather_adventurer'; +UPDATE item +SET item_definition_id = 'common.items.armor.plate.belt' WHERE item_definition_id = 'common.items.armor.belt.plate_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather_plate.belt' WHERE item_definition_id = 'common.items.armor.belt.plate_leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.steel.belt' WHERE item_definition_id = 'common.items.armor.belt.steel_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.tarasque.belt' WHERE item_definition_id = 'common.items.armor.belt.tarasque'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigs.belt' WHERE item_definition_id = 'common.items.armor.belt.twig'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsflowers.belt' WHERE item_definition_id = 'common.items.armor.belt.twigsflowers'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsleaves.belt' WHERE item_definition_id = 'common.items.armor.belt.twigsleaves'; +UPDATE item +SET item_definition_id = 'common.items.armor.velorite_mage.belt' WHERE item_definition_id = 'common.items.armor.belt.velorite_mage_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlock.belt' WHERE item_definition_id = 'common.items.armor.belt.warlock'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlord.belt' WHERE item_definition_id = 'common.items.armor.belt.warlord'; +UPDATE item +SET item_definition_id = 'common.items.armor.assassin.chest' WHERE item_definition_id = 'common.items.armor.chest.assassin'; +UPDATE item +SET item_definition_id = 'common.items.armor.bonerattler.chest' WHERE item_definition_id = 'common.items.armor.chest.bonerattler'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_blue.chest' WHERE item_definition_id = 'common.items.armor.chest.cloth_blue_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_green.chest' WHERE item_definition_id = 'common.items.armor.chest.cloth_green_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_purple.chest' WHERE item_definition_id = 'common.items.armor.chest.cloth_purple_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.chest' WHERE item_definition_id = 'common.items.armor.chest.cultist_chest_blue'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.chest' WHERE item_definition_id = 'common.items.armor.chest.cultist_chest_purple'; +UPDATE item +SET item_definition_id = 'common.items.armor.druid.chest' WHERE item_definition_id = 'common.items.armor.chest.druid'; +UPDATE item +SET item_definition_id = 'common.items.armor.swift.chest' WHERE item_definition_id = 'common.items.armor.chest.leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather.chest' WHERE item_definition_id = 'common.items.armor.chest.leather_2'; +UPDATE item +SET item_definition_id = 'common.items.armor.agile.chest' WHERE item_definition_id = 'common.items.armor.chest.leather_adventurer'; +UPDATE item +SET item_definition_id = 'common.items.armor.plate.chest' WHERE item_definition_id = 'common.items.armor.chest.plate_green_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather_plate.chest' WHERE item_definition_id = 'common.items.armor.chest.plate_leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.rugged.chest' WHERE item_definition_id = 'common.items.armor.chest.rugged'; +UPDATE item +SET item_definition_id = 'common.items.armor.steel.chest' WHERE item_definition_id = 'common.items.armor.chest.steel_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.tarasque.chest' WHERE item_definition_id = 'common.items.armor.chest.tarasque'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigs.chest' WHERE item_definition_id = 'common.items.armor.chest.twig'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsflowers.chest' WHERE item_definition_id = 'common.items.armor.chest.twigsflowers'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsleaves.chest' WHERE item_definition_id = 'common.items.armor.chest.twigsleaves'; +UPDATE item +SET item_definition_id = 'common.items.armor.velorite_mage.chest' WHERE item_definition_id = 'common.items.armor.chest.velorite_mage_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlock.chest' WHERE item_definition_id = 'common.items.armor.chest.warlock'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlord.chest' WHERE item_definition_id = 'common.items.armor.chest.warlord'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.chest.worker_green_0' WHERE item_definition_id = 'common.items.armor.chest.worker_green_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.chest.worker_green_1' WHERE item_definition_id = 'common.items.armor.chest.worker_green_1'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.chest.worker_orange_0' WHERE item_definition_id = 'common.items.armor.chest.worker_orange_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.chest.worker_orange_1' WHERE item_definition_id = 'common.items.armor.chest.worker_orange_1'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.chest.worker_purple_0' WHERE item_definition_id = 'common.items.armor.chest.worker_purple_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.chest.worker_purple_1' WHERE item_definition_id = 'common.items.armor.chest.worker_purple_1'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.chest.worker_red_0' WHERE item_definition_id = 'common.items.armor.chest.worker_red_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.chest.worker_red_1' WHERE item_definition_id = 'common.items.armor.chest.worker_red_1'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.chest.worker_yellow_0' WHERE item_definition_id = 'common.items.armor.chest.worker_yellow_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.chest.worker_yellow_1' WHERE item_definition_id = 'common.items.armor.chest.worker_yellow_1'; +UPDATE item +SET item_definition_id = 'common.items.armor.assassin.foot' WHERE item_definition_id = 'common.items.armor.foot.assassin'; +UPDATE item +SET item_definition_id = 'common.items.armor.bonerattler.foot' WHERE item_definition_id = 'common.items.armor.foot.bonerattler'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_blue.foot' WHERE item_definition_id = 'common.items.armor.foot.cloth_blue_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_green.foot' WHERE item_definition_id = 'common.items.armor.foot.cloth_green_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_purple.foot' WHERE item_definition_id = 'common.items.armor.foot.cloth_purple_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.foot' WHERE item_definition_id = 'common.items.armor.foot.cultist_boots'; +UPDATE item +SET item_definition_id = 'common.items.armor.druid.foot' WHERE item_definition_id = 'common.items.armor.foot.druid'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.foot.jackalope_slippers' WHERE item_definition_id = 'common.items.armor.foot.jackalope_slippers'; +UPDATE item +SET item_definition_id = 'common.items.armor.swift.foot' WHERE item_definition_id = 'common.items.armor.foot.leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather.foot' WHERE item_definition_id = 'common.items.armor.foot.leather_2'; +UPDATE item +SET item_definition_id = 'common.items.armor.agile.foot' WHERE item_definition_id = 'common.items.armor.foot.leather_adventurer'; +UPDATE item +SET item_definition_id = 'common.items.armor.plate.foot' WHERE item_definition_id = 'common.items.armor.foot.plate_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather_plate.foot' WHERE item_definition_id = 'common.items.armor.foot.plate_leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.foot.sandals' WHERE item_definition_id = 'common.items.armor.foot.sandals_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.steel.foot' WHERE item_definition_id = 'common.items.armor.foot.steel_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.tarasque.foot' WHERE item_definition_id = 'common.items.armor.foot.tarasque'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigs.foot' WHERE item_definition_id = 'common.items.armor.foot.twig'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsflowers.foot' WHERE item_definition_id = 'common.items.armor.foot.twigsflowers'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsleaves.foot' WHERE item_definition_id = 'common.items.armor.foot.twigsleaves'; +UPDATE item +SET item_definition_id = 'common.items.armor.velorite_mage.foot' WHERE item_definition_id = 'common.items.armor.foot.velorite_mage_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlock.foot' WHERE item_definition_id = 'common.items.armor.foot.warlock'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlord.foot' WHERE item_definition_id = 'common.items.armor.foot.warlord'; +UPDATE item +SET item_definition_id = 'common.items.armor.assassin.hand' WHERE item_definition_id = 'common.items.armor.hand.assassin'; +UPDATE item +SET item_definition_id = 'common.items.armor.bonerattler.hand' WHERE item_definition_id = 'common.items.armor.hand.bonerattler'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_blue.hand' WHERE item_definition_id = 'common.items.armor.hand.cloth_blue_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_green.hand' WHERE item_definition_id = 'common.items.armor.hand.cloth_green_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_purple.hand' WHERE item_definition_id = 'common.items.armor.hand.cloth_purple_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.hand' WHERE item_definition_id = 'common.items.armor.hand.cultist_hands_blue'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.hand' WHERE item_definition_id = 'common.items.armor.hand.cultist_hands_purple'; +UPDATE item +SET item_definition_id = 'common.items.armor.druid.hand' WHERE item_definition_id = 'common.items.armor.hand.druid'; +UPDATE item +SET item_definition_id = 'common.items.armor.swift.hand' WHERE item_definition_id = 'common.items.armor.hand.leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather.hand' WHERE item_definition_id = 'common.items.armor.hand.leather_2'; +UPDATE item +SET item_definition_id = 'common.items.armor.agile.hand' WHERE item_definition_id = 'common.items.armor.hand.leather_adventurer'; +UPDATE item +SET item_definition_id = 'common.items.armor.plate.hand' WHERE item_definition_id = 'common.items.armor.hand.plate_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather_plate.hand' WHERE item_definition_id = 'common.items.armor.hand.plate_leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.steel.hand' WHERE item_definition_id = 'common.items.armor.hand.steel_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.tarasque.hand' WHERE item_definition_id = 'common.items.armor.hand.tarasque'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigs.hand' WHERE item_definition_id = 'common.items.armor.hand.twig'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsflowers.hand' WHERE item_definition_id = 'common.items.armor.hand.twigsflowers'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsleaves.hand' WHERE item_definition_id = 'common.items.armor.hand.twigsleaves'; +UPDATE item +SET item_definition_id = 'common.items.armor.velorite_mage.hand' WHERE item_definition_id = 'common.items.armor.hand.velorite_mage_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlock.hand' WHERE item_definition_id = 'common.items.armor.hand.warlock'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlord.hand' WHERE item_definition_id = 'common.items.armor.hand.warlord'; +UPDATE item +SET item_definition_id = 'common.items.armor.assassin.head' WHERE item_definition_id = 'common.items.armor.head.assa_mask_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.swift.head' WHERE item_definition_id = 'common.items.armor.head.leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlock.head' WHERE item_definition_id = 'common.items.armor.head.warlock'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlord.head' WHERE item_definition_id = 'common.items.armor.head.warlord'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.neck.plain_0' WHERE item_definition_id = 'common.items.armor.neck.neck_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.neck.plain_1' WHERE item_definition_id = 'common.items.armor.neck.neck_1'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.neck.shell' WHERE item_definition_id = 'common.items.armor.neck.neck_2'; +UPDATE item +SET item_definition_id = 'common.items.armor.assassin.pants' WHERE item_definition_id = 'common.items.armor.pants.assassin'; +UPDATE item +SET item_definition_id = 'common.items.armor.bonerattler.pants' WHERE item_definition_id = 'common.items.armor.pants.bonerattler'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_blue.pants' WHERE item_definition_id = 'common.items.armor.pants.cloth_blue_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_green.pants' WHERE item_definition_id = 'common.items.armor.pants.cloth_green_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_purple.pants' WHERE item_definition_id = 'common.items.armor.pants.cloth_purple_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.pants' WHERE item_definition_id = 'common.items.armor.pants.cultist_legs_blue'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.pants' WHERE item_definition_id = 'common.items.armor.pants.cultist_legs_purple'; +UPDATE item +SET item_definition_id = 'common.items.armor.druid.pants' WHERE item_definition_id = 'common.items.armor.pants.druid'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.pants.hunting' WHERE item_definition_id = 'common.items.armor.pants.hunting'; +UPDATE item +SET item_definition_id = 'common.items.armor.swift.pants' WHERE item_definition_id = 'common.items.armor.pants.leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather.pants' WHERE item_definition_id = 'common.items.armor.pants.leather_2'; +UPDATE item +SET item_definition_id = 'common.items.armor.agile.pants' WHERE item_definition_id = 'common.items.armor.pants.leather_adventurer'; +UPDATE item +SET item_definition_id = 'common.items.armor.plate.pants' WHERE item_definition_id = 'common.items.armor.pants.plate_green_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather_plate.pants' WHERE item_definition_id = 'common.items.armor.pants.plate_leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.rugged.pants' WHERE item_definition_id = 'common.items.armor.pants.rugged'; +UPDATE item +SET item_definition_id = 'common.items.armor.steel.pants' WHERE item_definition_id = 'common.items.armor.pants.steel_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.tarasque.pants' WHERE item_definition_id = 'common.items.armor.pants.tarasque'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigs.pants' WHERE item_definition_id = 'common.items.armor.pants.twig'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsflowers.pants' WHERE item_definition_id = 'common.items.armor.pants.twigsflowers'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsleaves.pants' WHERE item_definition_id = 'common.items.armor.pants.twigsleaves'; +UPDATE item +SET item_definition_id = 'common.items.armor.velorite_mage.pants' WHERE item_definition_id = 'common.items.armor.pants.velorite_mage_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlock.pants' WHERE item_definition_id = 'common.items.armor.pants.warlock'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlord.pants' WHERE item_definition_id = 'common.items.armor.pants.warlord'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.pants.worker_blue' WHERE item_definition_id = 'common.items.armor.pants.worker_blue_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.ring.scratched' WHERE item_definition_id = 'common.items.armor.ring.ring_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.ring.gold' WHERE item_definition_id = 'common.items.armor.ring.ring_gold_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.ring.skull' WHERE item_definition_id = 'common.items.armor.ring.ring_purp_high_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.assassin.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.assassin'; +UPDATE item +SET item_definition_id = 'common.items.armor.bonerattler.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.bonerattler'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_blue.shoulder_0' WHERE item_definition_id = 'common.items.armor.shoulder.cloth_blue_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_blue.shoulder_1' WHERE item_definition_id = 'common.items.armor.shoulder.cloth_blue_1'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_green.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.cloth_green_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cloth_purple.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.cloth_purple_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.cultist_shoulder_blue'; +UPDATE item +SET item_definition_id = 'common.items.armor.cultist.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.cultist_shoulder_purple'; +UPDATE item +SET item_definition_id = 'common.items.armor.druid.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.druidshoulder'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.shoulder.iron_spikes' WHERE item_definition_id = 'common.items.armor.shoulder.iron_spikes'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.shoulder.leather_3' WHERE item_definition_id = 'common.items.armor.shoulder.leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.swift.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.leather_1'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.leather_2'; +UPDATE item +SET item_definition_id = 'common.items.armor.agile.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.leather_adventurer'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.shoulder.leather_iron_0' WHERE item_definition_id = 'common.items.armor.shoulder.leather_iron_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.shoulder.leather_iron_1' WHERE item_definition_id = 'common.items.armor.shoulder.leather_iron_1'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.shoulder.leather_iron_2' WHERE item_definition_id = 'common.items.armor.shoulder.leather_iron_2'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.shoulder.leather_iron_3' WHERE item_definition_id = 'common.items.armor.shoulder.leather_iron_3'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.shoulder.leather_strip' WHERE item_definition_id = 'common.items.armor.shoulder.leather_strips'; +UPDATE item +SET item_definition_id = 'common.items.armor.plate.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.plate_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.leather_plate.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.plate_leather_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.steel.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.steel_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.tarasque.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.tarasque'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigs.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.twigs'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsflowers.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.twigsflowers'; +UPDATE item +SET item_definition_id = 'common.items.armor.twigsleaves.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.twigsleaves'; +UPDATE item +SET item_definition_id = 'common.items.armor.velorite_mage.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.velorite_mage_0'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlock.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.warlock'; +UPDATE item +SET item_definition_id = 'common.items.armor.warlord.shoulder' WHERE item_definition_id = 'common.items.armor.shoulder.warlord'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.tabard.admin' WHERE item_definition_id = 'common.items.armor.tabard.admin'; \ No newline at end of file diff --git a/server/src/migrations/2021-03-02-023541_fix-sturdy-red-backpack/down.sql b/server/src/migrations/2021-03-02-023541_fix-sturdy-red-backpack/down.sql new file mode 100644 index 0000000000..291a97c5ce --- /dev/null +++ b/server/src/migrations/2021-03-02-023541_fix-sturdy-red-backpack/down.sql @@ -0,0 +1 @@ +-- This file should undo anything in `up.sql` \ No newline at end of file diff --git a/server/src/migrations/2021-03-02-023541_fix-sturdy-red-backpack/up.sql b/server/src/migrations/2021-03-02-023541_fix-sturdy-red-backpack/up.sql new file mode 100644 index 0000000000..366b3d137b --- /dev/null +++ b/server/src/migrations/2021-03-02-023541_fix-sturdy-red-backpack/up.sql @@ -0,0 +1,2 @@ +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.sturdy_red_backpack' WHERE item_definition_id = 'common.items.armor.bag.sturdy_red_backpack'; \ No newline at end of file diff --git a/server/src/migrations/2021-03-02-041950_fix-other-backpacks/down.sql b/server/src/migrations/2021-03-02-041950_fix-other-backpacks/down.sql new file mode 100644 index 0000000000..291a97c5ce --- /dev/null +++ b/server/src/migrations/2021-03-02-041950_fix-other-backpacks/down.sql @@ -0,0 +1 @@ +-- This file should undo anything in `up.sql` \ No newline at end of file diff --git a/server/src/migrations/2021-03-02-041950_fix-other-backpacks/up.sql b/server/src/migrations/2021-03-02-041950_fix-other-backpacks/up.sql new file mode 100644 index 0000000000..7152dd0fc8 --- /dev/null +++ b/server/src/migrations/2021-03-02-041950_fix-other-backpacks/up.sql @@ -0,0 +1,22 @@ +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.heavy_seabag' WHERE item_definition_id = 'common.items.armor.bag.heavy_seabag'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.knitted_red_pouch' WHERE item_definition_id = 'common.items.armor.bag.knitted_red_pouch'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.liana_kit' WHERE item_definition_id = 'common.items.armor.bag.liana_kit'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.mindflayer_spellbag' WHERE item_definition_id = 'common.items.armor.bag.mindflayer_spellbag'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.reliable_backpack' WHERE item_definition_id = 'common.items.armor.bag.reliable_backpack'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.soulkeeper_cursed' WHERE item_definition_id = 'common.items.armor.bag.soulkeeper_cursed'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.soulkeeper_pure' WHERE item_definition_id = 'common.items.armor.bag.soulkeeper_pure'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.tiny_leather_pouch' WHERE item_definition_id = 'common.items.armor.bag.tiny_leather_pouch'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.tiny_red_pouch' WHERE item_definition_id = 'common.items.armor.bag.tiny_red_pouch'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.troll_hide_pack' WHERE item_definition_id = 'common.items.armor.bag.troll_hide_pack'; +UPDATE item +SET item_definition_id = 'common.items.armor.misc.bag.woven_red_bag' WHERE item_definition_id = 'common.items.armor.bag.woven_red_bag'; \ No newline at end of file diff --git a/server/src/rtsim/entity.rs b/server/src/rtsim/entity.rs index 9020e67c8f..cfd29f9a3e 100644 --- a/server/src/rtsim/entity.rs +++ b/server/src/rtsim/entity.rs @@ -78,16 +78,16 @@ impl Entity { let back = match rng.gen_range(0..5) { 0 => Some(comp::Item::new_from_asset_expect( - "common.items.armor.back.leather_adventurer", + "common.items.armor.agile.back", )), 1 => Some(comp::Item::new_from_asset_expect( - "common.items.npc_armor.back.backpack_0", + "common.items.npc_armor.back.backpack", )), 2 => Some(comp::Item::new_from_asset_expect( - "common.items.npc_armor.back.backpack_blue_0", + "common.items.npc_armor.back.backpack_blue", )), 3 => Some(comp::Item::new_from_asset_expect( - "common.items.npc_armor.back.leather_blue_0", + "common.items.npc_armor.back.leather_blue", )), _ => None, }; @@ -105,13 +105,13 @@ impl Entity { }; let chest = Some(comp::Item::new_from_asset_expect( - "common.items.npc_armor.chest.leather_blue_0", + "common.items.npc_armor.chest.leather_blue", )); let pants = Some(comp::Item::new_from_asset_expect( - "common.items.npc_armor.pants.leather_blue_0", + "common.items.npc_armor.pants.leather_blue", )); let shoulder = Some(comp::Item::new_from_asset_expect( - "common.items.armor.shoulder.leather_0", + "common.items.armor.swift.shoulder", )); LoadoutBuilder::build_loadout(self.get_body(), Some(main_tool), None) diff --git a/server/src/state_ext.rs b/server/src/state_ext.rs index ad1dae6fe9..6f2c5fc852 100644 --- a/server/src/state_ext.rs +++ b/server/src/state_ext.rs @@ -4,6 +4,7 @@ use crate::{ }; use common::{ character::CharacterId, + combat, comp::{ self, skills::{GeneralSkill, Skill}, @@ -89,8 +90,12 @@ impl StateExt for State { }, Effect::Damage(damage) => { let inventories = self.ecs().read_storage::(); + let stats = self.ecs().read_storage::(); let change = damage.calculate_health_change( - inventories.get(entity), + combat::Damage::compute_damage_reduction( + inventories.get(entity), + stats.get(entity), + ), source, false, 0.0, diff --git a/voxygen/anim/src/character/gliding.rs b/voxygen/anim/src/character/gliding.rs index 5eb7900bbf..68276ad03a 100644 --- a/voxygen/anim/src/character/gliding.rs +++ b/voxygen/anim/src/character/gliding.rs @@ -44,8 +44,8 @@ impl Animation for GlidingAnimation { let slowa = (anim_time * 3.0 + PI / 2.0).sin(); let head_look = Vec2::new( - (global_time + anim_time / 4.0).floor().mul(7331.0).sin() * 0.5, - (global_time + anim_time / 4.0).floor().mul(1337.0).sin() * 0.25, + ((global_time + anim_time) / 5.0).floor().mul(7331.0).sin() * 0.5, + ((global_time + anim_time) / 5.0).floor().mul(1337.0).sin() * 0.25, ); let ori: Vec2 = Vec2::from(orientation); @@ -71,8 +71,10 @@ impl Animation for GlidingAnimation { next.chest.orientation = Quaternion::rotation_z(slowa * 0.02); next.belt.orientation = Quaternion::rotation_z(slowa * 0.1 + tilt * tiltcancel * 12.0); + next.belt.position = Vec3::new(0.0, s_a.belt.0, s_a.belt.1); next.shorts.orientation = Quaternion::rotation_z(slowa * 0.12 + tilt * tiltcancel * 16.0); + next.shorts.position = Vec3::new(0.0, s_a.shorts.0, s_a.shorts.1); next.hand_l.position = Vec3::new(-9.5, -3.0, 10.0); next.hand_l.orientation = @@ -105,8 +107,8 @@ impl Animation for GlidingAnimation { Quaternion::rotation_x(0.8) * Quaternion::rotation_y(slowa * 0.04); next.glider.scale = Vec3::one(); - next.torso.position = Vec3::new(0.0, -4.0, 10.0) / 11.0 * s_a.scaler; - next.torso.orientation = Quaternion::rotation_x(-0.06 * speed.max(12.0) + slow * 0.04) + next.torso.position = Vec3::new(0.0, -1.0, 0.0) / 11.0 * s_a.scaler; + next.torso.orientation = Quaternion::rotation_x(-0.03 * speed.max(12.0) + slow * 0.04) * Quaternion::rotation_y(tilt * tiltcancel * 32.0); next diff --git a/voxygen/anim/src/character/jump.rs b/voxygen/anim/src/character/jump.rs index e606262f10..fae86e1af7 100644 --- a/voxygen/anim/src/character/jump.rs +++ b/voxygen/anim/src/character/jump.rs @@ -43,7 +43,7 @@ impl Animation for JumpAnimation { let switch = if random > 0.5 { 1.0 } else { -1.0 }; let speed = Vec2::::from(velocity).magnitude(); - let speednorm = speed / 10.0; + let speednorm = (speed / 10.0).min(1.0); let ori: Vec2 = Vec2::from(orientation); let last_ori = Vec2::from(last_ori); diff --git a/voxygen/anim/src/character/stand.rs b/voxygen/anim/src/character/stand.rs index 0cb8c118ad..30e4e2407d 100644 --- a/voxygen/anim/src/character/stand.rs +++ b/voxygen/anim/src/character/stand.rs @@ -34,8 +34,8 @@ impl Animation for StandAnimation { let slow = (anim_time * 1.0).sin(); let impact = (avg_vel.z).max(-15.0); let head_look = Vec2::new( - (global_time + anim_time / 12.0).floor().mul(7331.0).sin() * 0.3, - (global_time + anim_time / 12.0).floor().mul(1337.0).sin() * 0.15, + ((global_time + anim_time) / 10.0).floor().mul(7331.0).sin() * 0.15, + ((global_time + anim_time) / 10.0).floor().mul(1337.0).sin() * 0.07, ); next.head.scale = Vec3::one() * s_a.head_scale; next.chest.scale = Vec3::one() * 1.01; diff --git a/voxygen/src/hud/bag.rs b/voxygen/src/hud/bag.rs index f5a5db77ba..9a71b5e5fe 100644 --- a/voxygen/src/hud/bag.rs +++ b/voxygen/src/hud/bag.rs @@ -17,23 +17,25 @@ use crate::{ }; use client::Client; use common::{ + assets::AssetExt, combat::{combat_rating, Damage}, comp::{ - item::{MaterialStatManifest, Quality}, - Body, Energy, Health, Stats, + item::{ItemDef, MaterialStatManifest, Quality}, + Body, Energy, Health, Inventory, Stats, }, }; use conrod_core::{ color, - widget::{self, Button, Image, Rectangle, Scrollbar, Text}, - widget_ids, Color, Colorable, Positionable, Sizeable, Widget, WidgetCommon, + widget::{self, Button, Image, Rectangle, Scrollbar, State as ConrodState, Text}, + widget_ids, Color, Colorable, Positionable, Sizeable, UiCell, Widget, WidgetCommon, }; use crate::hud::slots::SlotKind; +use std::sync::Arc; use vek::Vec2; widget_ids! { - pub struct Ids { + pub struct InventoryScrollerIds { test, bag_close, inv_alignment, @@ -53,6 +55,351 @@ widget_ids! { inventory_title_bg, scrollbar_bg, scrollbar_slots, + } +} + +pub struct InventoryScrollerState { + ids: InventoryScrollerIds, +} + +#[derive(WidgetCommon)] +pub struct InventoryScroller<'a> { + imgs: &'a Imgs, + item_imgs: &'a ItemImgs, + fonts: &'a Fonts, + #[conrod(common_builder)] + common: widget::CommonBuilder, + tooltip_manager: &'a mut TooltipManager, + slot_manager: &'a mut SlotManager, + pulse: f32, + localized_strings: &'a Localization, + show_stats: bool, + show_bag_inv: bool, + msm: &'a MaterialStatManifest, + on_right: bool, + item_tooltip: &'a Tooltip<'a>, + playername: String, + is_us: bool, + inventory: &'a Inventory, + bg_ids: &'a BackgroundIds, +} + +impl<'a> InventoryScroller<'a> { + #[allow(clippy::too_many_arguments)] + pub fn new( + imgs: &'a Imgs, + item_imgs: &'a ItemImgs, + fonts: &'a Fonts, + tooltip_manager: &'a mut TooltipManager, + slot_manager: &'a mut SlotManager, + pulse: f32, + localized_strings: &'a Localization, + show_stats: bool, + show_bag_inv: bool, + msm: &'a MaterialStatManifest, + on_right: bool, + item_tooltip: &'a Tooltip<'a>, + playername: String, + is_us: bool, + inventory: &'a Inventory, + bg_ids: &'a BackgroundIds, + ) -> Self { + InventoryScroller { + imgs, + item_imgs, + fonts, + common: widget::CommonBuilder::default(), + tooltip_manager, + slot_manager, + pulse, + localized_strings, + show_stats, + show_bag_inv, + msm, + on_right, + item_tooltip, + playername, + is_us, + inventory, + bg_ids, + } + } + + fn background(&mut self, ui: &mut UiCell<'_>) { + let mut bg = Image::new(if self.show_stats { + self.imgs.inv_bg_stats + } else if self.show_bag_inv { + self.imgs.inv_bg_bag + } else { + self.imgs.inv_bg_armor + }) + .w_h(424.0, 708.0); + if self.on_right { + bg = bg.bottom_right_with_margins_on(ui.window, 60.0, 5.0); + } else { + bg = bg.bottom_left_with_margins_on(ui.window, 60.0, 5.0); + } + bg.color(Some(UI_MAIN)).set(self.bg_ids.bg, ui); + Image::new(if self.show_bag_inv { + self.imgs.inv_frame_bag + } else { + self.imgs.inv_frame + }) + .w_h(424.0, 708.0) + .middle_of(self.bg_ids.bg) + .color(Some(UI_HIGHLIGHT_0)) + .set(self.bg_ids.bg_frame, ui); + } + + fn title(&mut self, state: &mut ConrodState<'_, InventoryScrollerState>, ui: &mut UiCell<'_>) { + Text::new( + &self + .localized_strings + .get("hud.bag.inventory") + .replace("{playername}", &*self.playername), + ) + .mid_top_with_margin_on(self.bg_ids.bg_frame, 9.0) + .font_id(self.fonts.cyri.conrod_id) + .font_size(self.fonts.cyri.scale(22)) + .color(Color::Rgba(0.0, 0.0, 0.0, 1.0)) + .set(state.ids.inventory_title_bg, ui); + Text::new( + &self + .localized_strings + .get("hud.bag.inventory") + .replace("{playername}", &*self.playername), + ) + .top_left_with_margins_on(state.ids.inventory_title_bg, 2.0, 2.0) + .font_id(self.fonts.cyri.conrod_id) + .font_size(self.fonts.cyri.scale(22)) + .color(TEXT_COLOR) + .set(state.ids.inventory_title, ui); + } + + fn scrollbar_and_slots( + &mut self, + state: &mut ConrodState<'_, InventoryScrollerState>, + ui: &mut UiCell<'_>, + ) { + let space_max = self.inventory.slots().count(); + // Slots Scrollbar + if space_max > 45 && !self.show_bag_inv { + // Scrollbar-BG + Image::new(self.imgs.scrollbar_bg) + .w_h(9.0, 173.0) + .bottom_right_with_margins_on(self.bg_ids.bg_frame, 42.0, 3.0) + .color(Some(UI_HIGHLIGHT_0)) + .set(state.ids.scrollbar_bg, ui); + // Scrollbar + Scrollbar::y_axis(state.ids.inv_alignment) + .thickness(5.0) + .h(123.0) + .color(UI_MAIN) + .middle_of(state.ids.scrollbar_bg) + .set(state.ids.scrollbar_slots, ui); + } else if space_max > 135 { + // Scrollbar-BG + Image::new(self.imgs.scrollbar_bg_big) + .w_h(9.0, 592.0) + .bottom_right_with_margins_on(self.bg_ids.bg_frame, 42.0, 3.0) + .color(Some(UI_HIGHLIGHT_0)) + .set(state.ids.scrollbar_bg, ui); + // Scrollbar + Scrollbar::y_axis(state.ids.inv_alignment) + .thickness(5.0) + .h(542.0) + .color(UI_MAIN) + .middle_of(state.ids.scrollbar_bg) + .set(state.ids.scrollbar_slots, ui); + }; + // Alignment for Grid + Rectangle::fill_with( + [362.0, if self.show_bag_inv { 600.0 } else { 200.0 }], + color::TRANSPARENT, + ) + .bottom_left_with_margins_on(self.bg_ids.bg_frame, 29.0, 46.5) + .scroll_kids_vertically() + .set(state.ids.inv_alignment, ui); + + // Bag Slots + // Create available inventory slot widgets + if state.ids.inv_slots.len() < self.inventory.capacity() { + state.update(|s| { + s.ids + .inv_slots + .resize(self.inventory.capacity(), &mut ui.widget_id_generator()); + }); + } + // Determine the range of inventory slots that are provided by the loadout item + // that the mouse is over + let mouseover_loadout_slots = self + .slot_manager + .mouse_over_slot + .and_then(|x| { + if let SlotKind::Equip(e) = x { + self.inventory.get_slot_range_for_equip_slot(e) + } else { + None + } + }) + .unwrap_or(0usize..0usize); + + // Display inventory contents + let mut slot_maker = SlotMaker { + empty_slot: self.imgs.inv_slot, + filled_slot: self.imgs.inv_slot, + selected_slot: self.imgs.inv_slot_sel, + background_color: Some(UI_MAIN), + content_size: ContentSize { + width_height_ratio: 1.0, + max_fraction: 0.75, + }, + selected_content_scale: 1.067, + amount_font: self.fonts.cyri.conrod_id, + amount_margins: Vec2::new(-4.0, 0.0), + amount_font_size: self.fonts.cyri.scale(12), + amount_text_color: TEXT_COLOR, + content_source: self.inventory, + image_source: self.item_imgs, + slot_manager: Some(self.slot_manager), + pulse: self.pulse, + }; + + for (i, (pos, item)) in self.inventory.slots_with_id().enumerate() { + let x = i % 9; + let y = i / 9; + + // Slot + let mut slot_widget = slot_maker + .fabricate( + InventorySlot { + slot: pos, + ours: self.is_us, + }, + [40.0; 2], + ) + .top_left_with_margins_on( + state.ids.inv_alignment, + 0.0 + y as f64 * (40.0), + 0.0 + x as f64 * (40.0), + ); + + // Highlight slots are provided by the loadout item that the mouse is over + if mouseover_loadout_slots.contains(&i) { + slot_widget = slot_widget.with_background_color(Color::Rgba(1.0, 1.0, 1.0, 1.0)); + } + + if let Some(item) = item { + let (title, desc) = super::util::item_text(item, &self.msm); + let quality_col = get_quality_col(item); + let quality_col_img = match item.quality() { + Quality::Low => self.imgs.inv_slot_grey, + Quality::Common => self.imgs.inv_slot, + Quality::Moderate => self.imgs.inv_slot_green, + Quality::High => self.imgs.inv_slot_blue, + Quality::Epic => self.imgs.inv_slot_purple, + Quality::Legendary => self.imgs.inv_slot_gold, + Quality::Artifact => self.imgs.inv_slot_orange, + _ => self.imgs.inv_slot_red, + }; + slot_widget + .filled_slot(quality_col_img) + .with_tooltip( + self.tooltip_manager, + title, + &*desc, + self.item_tooltip, + quality_col, + ) + .set(state.ids.inv_slots[i], ui); + } else { + slot_widget.set(state.ids.inv_slots[i], ui); + } + } + } + + fn footer_metrics( + &mut self, + state: &mut ConrodState<'_, InventoryScrollerState>, + ui: &mut UiCell<'_>, + ) { + let space_used = self.inventory.populated_slots(); + let space_max = self.inventory.slots().count(); + let bag_space = format!("{}/{}", space_used, space_max); + let bag_space_percentage = space_used as f32 / space_max as f32; + let coin_itemdef = Arc::::load_expect_cloned("common.items.utility.coins"); + let currency = self.inventory.item_count(&coin_itemdef); + + // Coin Icon and Currency Text + Image::new(self.imgs.coin_ico) + .w_h(16.0, 17.0) + .bottom_left_with_margins_on(self.bg_ids.bg_frame, 2.0, 43.0) + .set(state.ids.coin_ico, ui); + Text::new(&format!("{}", currency)) + .bottom_left_with_margins_on(self.bg_ids.bg_frame, 6.0, 64.0) + .font_id(self.fonts.cyri.conrod_id) + .font_size(self.fonts.cyri.scale(14)) + .color(Color::Rgba(0.871, 0.863, 0.05, 1.0)) + .set(state.ids.currency_txt, ui); + //Free Bag-Space + Text::new(&bag_space) + .bottom_right_with_margins_on(self.bg_ids.bg_frame, 6.0, 43.0) + .font_id(self.fonts.cyri.conrod_id) + .font_size(self.fonts.cyri.scale(14)) + .color(if bag_space_percentage < 0.8 { + TEXT_COLOR + } else if bag_space_percentage < 1.0 { + LOW_HP_COLOR + } else { + CRITICAL_HP_COLOR + }) + .set(state.ids.space_txt, ui); + } +} + +impl<'a> Widget for InventoryScroller<'a> { + type Event = (); + type State = InventoryScrollerState; + type Style = (); + + fn init_state(&self, id_gen: widget::id::Generator) -> Self::State { + InventoryScrollerState { + ids: InventoryScrollerIds::new(id_gen), + } + } + + fn style(&self) -> Self::Style {} + + fn update(mut self, args: widget::UpdateArgs) -> Self::Event { + let widget::UpdateArgs { state, ui, .. } = args; + self.background(ui); + self.title(state, ui); + self.scrollbar_and_slots(state, ui); + self.footer_metrics(state, ui); + } +} + +widget_ids! { + pub struct BackgroundIds { + bg, + bg_frame, + } +} + +widget_ids! { + pub struct BagIds { + test, + inventory_scroller, + bag_close, + //tooltip[], + char_ico, + coin_ico, + space_txt, + currency_txt, + inventory_title, + inventory_title_bg, + scrollbar_bg, + scrollbar_slots, tab_1, tab_2, tab_3, @@ -148,8 +495,9 @@ impl<'a> Bag<'a> { } const STATS: [&str; 4] = ["Health", "Stamina", "Protection", "Combat Rating"]; -pub struct State { - ids: Ids, +pub struct BagState { + ids: BagIds, + bg_ids: BackgroundIds, } pub enum Event { @@ -159,12 +507,16 @@ pub enum Event { impl<'a> Widget for Bag<'a> { type Event = Option; - type State = State; + type State = BagState; type Style = (); - fn init_state(&self, id_gen: widget::id::Generator) -> Self::State { - State { - ids: Ids::new(id_gen), + fn init_state(&self, mut id_gen: widget::id::Generator) -> Self::State { + BagState { + bg_ids: BackgroundIds { + bg: id_gen.next(), + bg_frame: id_gen.next(), + }, + ids: BagIds::new(id_gen), } } @@ -199,12 +551,6 @@ impl<'a> Widget for Bag<'a> { None => return None, }; - let space_used = inventory.populated_slots(); - let space_max = inventory.slots().count(); - let bag_space = format!("{}/{}", space_used, space_max); - let bag_space_percentage = space_used as f32 / space_max as f32; - let currency = 0; // TODO: Add as a Stat - // Tooltips let item_tooltip = Tooltip::new({ // Edge images [t, b, r, l] @@ -223,117 +569,32 @@ impl<'a> Widget for Bag<'a> { .desc_font_size(self.fonts.cyri.scale(12)) .font_id(self.fonts.cyri.conrod_id) .desc_text_color(TEXT_COLOR); - // BG - Image::new(if self.show.stats { - self.imgs.inv_bg_stats - } else if self.show.bag_inv { - self.imgs.inv_bg_bag - } else { - self.imgs.inv_bg_armor - }) - .w_h(424.0, 708.0) - .bottom_right_with_margins_on(ui.window, 60.0, 5.0) - .color(Some(UI_MAIN)) - .set(state.ids.bg, ui); - Image::new(if self.show.bag_inv { - self.imgs.inv_frame_bag - } else { - self.imgs.inv_frame - }) - .w_h(424.0, 708.0) - .middle_of(state.ids.bg) - .color(Some(UI_HIGHLIGHT_0)) - .set(state.ids.bg_frame, ui); - // Title - Text::new( - &self - .localized_strings - .get("hud.bag.inventory") - .replace("{playername}", &self.stats.name.to_string().as_str()), + + InventoryScroller::new( + self.imgs, + self.item_imgs, + self.fonts, + self.tooltip_manager, + self.slot_manager, + self.pulse, + self.localized_strings, + self.show.stats, + self.show.bag_inv, + self.msm, + true, + &item_tooltip, + self.stats.name.to_string(), + true, + &inventory, + &state.bg_ids, ) - .mid_top_with_margin_on(state.ids.bg_frame, 9.0) - .font_id(self.fonts.cyri.conrod_id) - .font_size(self.fonts.cyri.scale(20)) - .color(Color::Rgba(0.0, 0.0, 0.0, 1.0)) - .set(state.ids.inventory_title_bg, ui); - Text::new( - &self - .localized_strings - .get("hud.bag.inventory") - .replace("{playername}", &self.stats.name.to_string().as_str()), - ) - .top_left_with_margins_on(state.ids.inventory_title_bg, 2.0, 2.0) - .font_id(self.fonts.cyri.conrod_id) - .font_size(self.fonts.cyri.scale(20)) - .color(TEXT_COLOR) - .set(state.ids.inventory_title, ui); - // Slots Scrollbar - if space_max > 45 && !self.show.bag_inv { - // Scrollbar-BG - Image::new(self.imgs.scrollbar_bg) - .w_h(9.0, 173.0) - .bottom_right_with_margins_on(state.ids.bg_frame, 42.0, 3.0) - .color(Some(UI_HIGHLIGHT_0)) - .set(state.ids.scrollbar_bg, ui); - // Scrollbar - Scrollbar::y_axis(state.ids.inv_alignment) - .thickness(5.0) - .h(123.0) - .color(UI_MAIN) - .middle_of(state.ids.scrollbar_bg) - .set(state.ids.scrollbar_slots, ui); - } else if space_max > 135 { - // Scrollbar-BG - Image::new(self.imgs.scrollbar_bg_big) - .w_h(9.0, 592.0) - .bottom_right_with_margins_on(state.ids.bg_frame, 42.0, 3.0) - .color(Some(UI_HIGHLIGHT_0)) - .set(state.ids.scrollbar_bg, ui); - // Scrollbar - Scrollbar::y_axis(state.ids.inv_alignment) - .thickness(5.0) - .h(542.0) - .color(UI_MAIN) - .middle_of(state.ids.scrollbar_bg) - .set(state.ids.scrollbar_slots, ui); - }; + .set(state.ids.inventory_scroller, ui); + // Char Pixel-Art Image::new(self.imgs.char_art) .w_h(40.0, 37.0) - .top_left_with_margins_on(state.ids.bg, 4.0, 2.0) + .top_left_with_margins_on(state.bg_ids.bg, 4.0, 2.0) .set(state.ids.char_ico, ui); - // Coin Icon and Currency Text - Image::new(self.imgs.coin_ico) - .w_h(16.0, 17.0) - .bottom_left_with_margins_on(state.ids.bg_frame, 2.0, 43.0) - .set(state.ids.coin_ico, ui); - Text::new(&format!("{}", currency)) - .bottom_left_with_margins_on(state.ids.bg_frame, 6.0, 64.0) - .font_id(self.fonts.cyri.conrod_id) - .font_size(self.fonts.cyri.scale(14)) - .color(Color::Rgba(0.871, 0.863, 0.05, 1.0)) - .set(state.ids.currency_txt, ui); - //Free Bag-Space - Text::new(&bag_space) - .bottom_right_with_margins_on(state.ids.bg_frame, 6.0, 43.0) - .font_id(self.fonts.cyri.conrod_id) - .font_size(self.fonts.cyri.scale(14)) - .color(if bag_space_percentage < 0.8 { - TEXT_COLOR - } else if bag_space_percentage < 1.0 { - LOW_HP_COLOR - } else { - CRITICAL_HP_COLOR - }) - .set(state.ids.space_txt, ui); - // Alignment for Grid - Rectangle::fill_with( - [362.0, if self.show.bag_inv { 600.0 } else { 200.0 }], - color::TRANSPARENT, - ) - .bottom_left_with_margins_on(state.ids.bg_frame, 29.0, 46.5) - .scroll_kids_vertically() - .set(state.ids.inv_alignment, ui); // Button to expand bag let txt = if self.show.bag_inv { "Show Loadout" @@ -357,9 +618,10 @@ impl<'a> Widget for Bag<'a> { self.imgs.expand_btn_press }); // Only show expand button when it's needed... + let space_max = inventory.slots().count(); if space_max > 45 && !self.show.bag_inv { if expand_btn - .top_left_with_margins_on(state.ids.bg_frame, 460.0, 211.5) + .top_left_with_margins_on(state.bg_ids.bg_frame, 460.0, 211.5) .with_tooltip(self.tooltip_manager, &txt, "", &bag_tooltip, TEXT_COLOR) .set(state.ids.bag_expand_btn, ui) .was_clicked() @@ -369,7 +631,7 @@ impl<'a> Widget for Bag<'a> { } else if self.show.bag_inv { //... but always show it when the bag is expanded if expand_btn - .top_left_with_margins_on(state.ids.bg_frame, 53.0, 211.5) + .top_left_with_margins_on(state.bg_ids.bg_frame, 53.0, 211.5) .with_tooltip(self.tooltip_manager, &txt, "", &bag_tooltip, TEXT_COLOR) .set(state.ids.bag_expand_btn, ui) .was_clicked() @@ -378,29 +640,6 @@ impl<'a> Widget for Bag<'a> { } } - // Title - Text::new( - &self - .localized_strings - .get("hud.bag.inventory") - .replace("{playername}", &self.stats.name.to_string().as_str()), - ) - .mid_top_with_margin_on(state.ids.bg_frame, 9.0) - .font_id(self.fonts.cyri.conrod_id) - .font_size(self.fonts.cyri.scale(22)) - .color(Color::Rgba(0.0, 0.0, 0.0, 1.0)) - .set(state.ids.inventory_title_bg, ui); - Text::new( - &self - .localized_strings - .get("hud.bag.inventory") - .replace("{playername}", &self.stats.name.to_string().as_str()), - ) - .top_left_with_margins_on(state.ids.inventory_title_bg, 2.0, 2.0) - .font_id(self.fonts.cyri.conrod_id) - .font_size(self.fonts.cyri.scale(22)) - .color(TEXT_COLOR) - .set(state.ids.inventory_title, ui); // Armor Slots let mut slot_maker = SlotMaker { empty_slot: self.imgs.armor_slot_empty, @@ -457,14 +696,15 @@ impl<'a> Widget for Bag<'a> { }); let protection_txt = format!( "{}%", - (100.0 * Damage::compute_damage_reduction(inventory)) as i32 + (100.0 * Damage::compute_damage_reduction(Some(inventory), Some(self.stats))) + as i32 ); let health_txt = format!("{}", (self.health.maximum() as f32 / 10.0) as usize); let stamina_txt = format!("{}", (self.energy.maximum() as f32 / 10.0) as usize); let combat_rating_txt = format!("{}", (combat_rating * 10.0) as usize); let btn = if i.0 == 0 { - btn.top_left_with_margins_on(state.ids.bg_frame, 55.0, 10.0) + btn.top_left_with_margins_on(state.bg_ids.bg_frame, 55.0, 10.0) } else { btn.down_from(state.ids.stat_icons[i.0 - 1], 7.0) }; @@ -517,7 +757,7 @@ impl<'a> Widget for Bag<'a> { .unwrap_or(QUALITY_COMMON); slot_maker .fabricate(EquipSlot::Armor(ArmorSlot::Head), [45.0; 2]) - .mid_top_with_margin_on(state.ids.bg_frame, 60.0) + .mid_top_with_margin_on(state.bg_ids.bg_frame, 60.0) .with_icon(self.imgs.head_bg, Vec2::new(32.0, 40.0), Some(UI_MAIN)) .filled_slot(filled_slot) .with_tooltip( @@ -771,7 +1011,7 @@ impl<'a> Widget for Bag<'a> { .unwrap_or(QUALITY_COMMON); slot_maker .fabricate(EquipSlot::Lantern, [45.0; 2]) - .top_right_with_margins_on(state.ids.bg_frame, 60.0, 5.0) + .top_right_with_margins_on(state.bg_ids.bg_frame, 60.0, 5.0) .with_icon(self.imgs.lantern_bg, Vec2::new(24.0, 38.0), Some(UI_MAIN)) .filled_slot(filled_slot) .with_tooltip( @@ -888,7 +1128,7 @@ impl<'a> Widget for Bag<'a> { slot_maker .fabricate(EquipSlot::Armor(ArmorSlot::Bag1), [35.0; 2]) .bottom_left_with_margins_on( - state.ids.bg_frame, + state.bg_ids.bg_frame, if self.show.bag_inv { 600.0 } else { 167.0 }, 3.0, ) @@ -971,102 +1211,13 @@ impl<'a> Widget for Bag<'a> { bag4_q_col, ) .set(state.ids.bag4_slot, ui); - // Bag Slots - // Create available inventory slot widgets - if state.ids.inv_slots.len() < inventory.capacity() { - state.update(|s| { - s.ids - .inv_slots - .resize(inventory.capacity(), &mut ui.widget_id_generator()); - }); - } - // Determine the range of inventory slots that are provided by the loadout item - // that the mouse is over - let mouseover_loadout_slots = self - .slot_manager - .mouse_over_slot - .and_then(|x| { - if let SlotKind::Equip(e) = x { - inventory.get_slot_range_for_equip_slot(e) - } else { - None - } - }) - .unwrap_or(0usize..0usize); - - // Display inventory contents - let mut slot_maker = SlotMaker { - empty_slot: self.imgs.inv_slot, - filled_slot: self.imgs.inv_slot, - selected_slot: self.imgs.inv_slot_sel, - background_color: Some(UI_MAIN), - content_size: ContentSize { - width_height_ratio: 1.0, - max_fraction: 0.75, - }, - selected_content_scale: 1.067, - amount_font: self.fonts.cyri.conrod_id, - amount_margins: Vec2::new(-4.0, 0.0), - amount_font_size: self.fonts.cyri.scale(12), - amount_text_color: TEXT_COLOR, - content_source: inventory, - image_source: self.item_imgs, - slot_manager: Some(self.slot_manager), - pulse: self.pulse, - }; - - for (i, (pos, item)) in inventory.slots_with_id().enumerate() { - let x = i % 9; - let y = i / 9; - - // Slot - let mut slot_widget = slot_maker - .fabricate(InventorySlot(pos), [40.0; 2]) - .top_left_with_margins_on( - state.ids.inv_alignment, - 0.0 + y as f64 * (40.0), - 0.0 + x as f64 * (40.0), - ); - - // Highlight slots are provided by the loadout item that the mouse is over - if mouseover_loadout_slots.contains(&i) { - slot_widget = slot_widget.with_background_color(Color::Rgba(1.0, 1.0, 1.0, 1.0)); - } - - if let Some(item) = item { - let (title, desc) = super::util::item_text(item, &self.msm); - let quality_col = get_quality_col(item); - let quality_col_img = match item.quality() { - Quality::Low => self.imgs.inv_slot_grey, - Quality::Common => self.imgs.inv_slot, - Quality::Moderate => self.imgs.inv_slot_green, - Quality::High => self.imgs.inv_slot_blue, - Quality::Epic => self.imgs.inv_slot_purple, - Quality::Legendary => self.imgs.inv_slot_gold, - Quality::Artifact => self.imgs.inv_slot_orange, - _ => self.imgs.inv_slot_red, - }; - slot_widget - .filled_slot(quality_col_img) - .with_tooltip( - self.tooltip_manager, - title, - &*desc, - &item_tooltip, - quality_col, - ) - .set(state.ids.inv_slots[i], ui); - } else { - slot_widget.set(state.ids.inv_slots[i], ui); - } - } // Close button if Button::image(self.imgs.close_btn) .w_h(24.0, 25.0) .hover_image(self.imgs.close_btn_hover) .press_image(self.imgs.close_btn_press) - .top_right_with_margins_on(state.ids.bg, 0.0, 0.0) + .top_right_with_margins_on(state.bg_ids.bg, 0.0, 0.0) .set(state.ids.bag_close, ui) .was_clicked() { diff --git a/voxygen/src/hud/buffs.rs b/voxygen/src/hud/buffs.rs index 62c6056818..ed351b905c 100644 --- a/voxygen/src/hud/buffs.rs +++ b/voxygen/src/hud/buffs.rs @@ -3,7 +3,7 @@ use super::{ BUFF_COLOR, DEBUFF_COLOR, TEXT_COLOR, }; use crate::{ - hud::{get_buff_info, BuffPosition}, + hud::{self, BuffPosition}, i18n::Localization, ui::{fonts::Fonts, ImageFrame, Tooltip, TooltipManager, Tooltipable}, GlobalState, @@ -145,7 +145,7 @@ impl<'a> Widget for BuffsBar<'a> { .set(state.ids.buffs_align, ui); // Buffs and Debuffs - let (buff_count, debuff_count) = buffs.iter_active().map(get_buff_info).fold( + let (buff_count, debuff_count) = buffs.iter_active().map(hud::get_buff_info).fold( (0, 0), |(buff_count, debuff_count), info| { if info.is_buff { @@ -183,7 +183,7 @@ impl<'a> Widget for BuffsBar<'a> { .zip( buffs .iter_active() - .map(get_buff_info) + .map(hud::get_buff_info) .filter(|info| info.is_buff), ) .collect::>(); @@ -201,15 +201,7 @@ impl<'a> Widget for BuffsBar<'a> { max_duration .map_or(1000.0, |max| cur.as_secs_f32() / max.as_secs_f32() * 1000.0) }) as u32; // Percentage to determine which frame of the timer overlay is displayed - let buff_img = match buff.kind { - BuffKind::Regeneration { .. } => self.imgs.buff_plus_0, - BuffKind::Saturation { .. } => self.imgs.buff_saturation_0, - BuffKind::Potion { .. } => self.imgs.buff_potion_0, - BuffKind::CampfireHeal { .. } => self.imgs.buff_campfire_heal_0, - BuffKind::IncreaseMaxHealth { .. } => self.imgs.buff_healthplus_0, - BuffKind::IncreaseMaxEnergy { .. } => self.imgs.buff_energyplus_0, - _ => self.imgs.missing_icon, - }; + let buff_img = hud::get_buff_image(buff.kind, self.imgs); let buff_widget = Image::new(buff_img).w_h(40.0, 40.0); // Sort buffs into rows of 11 slots let x = i % 6; @@ -229,46 +221,10 @@ impl<'a> Widget for BuffsBar<'a> { ) .set(*id, ui); // Create Buff tooltip - let title = match buff.kind { - BuffKind::Regeneration { .. } => localized_strings.get("buff.title.heal"), - BuffKind::Saturation { .. } => { - localized_strings.get("buff.title.saturation") - }, - BuffKind::Potion { .. } => localized_strings.get("buff.title.potion"), - BuffKind::CampfireHeal { .. } => { - localized_strings.get("buff.title.campfire_heal") - }, - BuffKind::IncreaseMaxHealth { .. } => { - localized_strings.get("buff.title.IncreaseMaxHealth") - }, - BuffKind::IncreaseMaxEnergy { .. } => { - localized_strings.get("buff.title.staminaup") - }, - _ => localized_strings.get("buff.title.missing"), - }; - let remaining_time = if current_duration.is_none() { - "Permanent".to_string() - } else { - format!("Remaining: {:.0}s", current_duration.unwrap().as_secs_f32()) - }; + let title = hud::get_buff_title(buff.kind, localized_strings); + let desc_txt = hud::get_buff_desc(buff.kind, localized_strings); + let remaining_time = hud::get_buff_time(*buff); let click_to_remove = format!("<{}>", &localized_strings.get("buff.remove")); - let desc_txt = match buff.kind { - BuffKind::Regeneration { .. } => localized_strings.get("buff.desc.heal"), - BuffKind::Saturation { .. } => { - localized_strings.get("buff.desc.saturation") - }, - BuffKind::Potion { .. } => localized_strings.get("buff.desc.potion"), - BuffKind::CampfireHeal { .. } => { - localized_strings.get("buff.desc.campfire_heal") - }, - BuffKind::IncreaseMaxHealth { .. } => { - localized_strings.get("buff.desc.IncreaseMaxHealth") - }, - BuffKind::IncreaseMaxEnergy { .. } => { - localized_strings.get("buff.desc.IncreaseMaxEnergy") - }, - _ => localized_strings.get("buff.desc.missing"), - }; let desc = format!("{}\n\n{}\n\n{}", desc_txt, remaining_time, click_to_remove); // Timer overlay if Button::image(match duration_percentage as u64 { @@ -308,7 +264,7 @@ impl<'a> Widget for BuffsBar<'a> { .zip( buffs .iter_active() - .map(get_buff_info) + .map(hud::get_buff_info) .filter(|info| !info.is_buff), ) .collect::>(); @@ -351,19 +307,9 @@ impl<'a> Widget for BuffsBar<'a> { ) .set(*id, ui); // Create Debuff tooltip - let title = match debuff.kind { - BuffKind::Bleeding { .. } => localized_strings.get("debuff.title.bleed"), - _ => localized_strings.get("buff.title.missing"), - }; - let remaining_time = if current_duration.is_none() { - "Permanent".to_string() - } else { - format!("Remaining: {:.0}s", current_duration.unwrap().as_secs_f32()) - }; - let desc_txt = match debuff.kind { - BuffKind::Bleeding { .. } => localized_strings.get("debuff.desc.bleed"), - _ => localized_strings.get("debuff.desc.missing"), - }; + let title = hud::get_buff_title(debuff.kind, localized_strings); + let desc_txt = hud::get_buff_desc(debuff.kind, localized_strings); + let remaining_time = hud::get_buff_time(*debuff); let desc = format!("{}\n\n{}", desc_txt, remaining_time); Image::new(match duration_percentage as u64 { 875..=1000 => self.imgs.nothing, // 8/8 @@ -420,7 +366,7 @@ impl<'a> Widget for BuffsBar<'a> { .copied() .zip(state.ids.buff_timers.iter().copied()) .zip(state.ids.buff_txts.iter().copied()) - .zip(buffs.iter_active().map(get_buff_info)) + .zip(buffs.iter_active().map(hud::get_buff_info)) .collect::>(); // Sort the buffs by kind @@ -437,16 +383,7 @@ impl<'a> Widget for BuffsBar<'a> { max_duration .map_or(1000.0, |max| cur.as_secs_f32() / max.as_secs_f32() * 1000.0) }) as u32; - let buff_img = match buff.kind { - BuffKind::Regeneration { .. } => self.imgs.buff_plus_0, - BuffKind::Saturation { .. } => self.imgs.buff_saturation_0, - BuffKind::Bleeding { .. } => self.imgs.debuff_bleed_0, - BuffKind::Cursed { .. } => self.imgs.debuff_skull_0, - BuffKind::Potion { .. } => self.imgs.buff_potion_0, - BuffKind::CampfireHeal { .. } => self.imgs.buff_campfire_heal_0, - BuffKind::IncreaseMaxEnergy { .. } => self.imgs.buff_energyplus_0, - BuffKind::IncreaseMaxHealth { .. } => self.imgs.buff_healthplus_0, - }; + let buff_img = hud::get_buff_image(buff.kind, &self.imgs); let buff_widget = Image::new(buff_img).w_h(40.0, 40.0); // Sort buffs into rows of 6 slots let x = i % 6; @@ -466,36 +403,10 @@ impl<'a> Widget for BuffsBar<'a> { ) .set(*id, ui); // Create Buff tooltip - let title = match buff.kind { - BuffKind::Regeneration { .. } => localized_strings.get("buff.title.heal"), - BuffKind::Saturation { .. } => { - localized_strings.get("buff.title.saturation") - }, - BuffKind::Potion { .. } => localized_strings.get("buff.title.potion"), - BuffKind::Bleeding { .. } => localized_strings.get("debuff.title.bleed"), - BuffKind::CampfireHeal { .. } => { - localized_strings.get("buff.title.campfire_heal") - }, - _ => localized_strings.get("buff.title.missing"), - }; - let remaining_time = if current_duration.is_none() { - "".to_string() - } else { - format!("{:.0}s", current_duration.unwrap().as_secs_f32()) - }; + let title = hud::get_buff_title(buff.kind, localized_strings); + let desc_txt = hud::get_buff_desc(buff.kind, localized_strings); + let remaining_time = hud::get_buff_time(*buff); let click_to_remove = format!("<{}>", &localized_strings.get("buff.remove")); - let desc_txt = match buff.kind { - BuffKind::Regeneration { .. } => localized_strings.get("buff.desc.heal"), - BuffKind::Saturation { .. } => { - localized_strings.get("buff.desc.saturation") - }, - BuffKind::Potion { .. } => localized_strings.get("buff.desc.potion"), - BuffKind::Bleeding { .. } => localized_strings.get("debuff.desc.bleed"), - BuffKind::CampfireHeal { .. } => { - localized_strings.get("buff.desc.campfire_heal") - }, - _ => localized_strings.get("buff.desc.missing"), - }; let desc = if buff.is_buff { format!("{}\n\n{}", desc_txt, click_to_remove) } else { diff --git a/voxygen/src/hud/group.rs b/voxygen/src/hud/group.rs index d199b5c5b2..ab756dd06d 100644 --- a/voxygen/src/hud/group.rs +++ b/voxygen/src/hud/group.rs @@ -6,7 +6,7 @@ use super::{ }; use crate::{ - hud::get_buff_info, + hud, i18n::Localization, settings::Settings, ui::{fonts::Fonts, ImageFrame, Tooltip, TooltipManager, Tooltipable}, @@ -16,9 +16,7 @@ use crate::{ use client::{self, Client}; use common::{ combat, - comp::{ - group::Role, inventory::item::MaterialStatManifest, invite::InviteKind, BuffKind, Stats, - }, + comp::{group::Role, inventory::item::MaterialStatManifest, invite::InviteKind, Stats}, uid::{Uid, UidAllocator}, }; use common_net::sync::WorldSyncExt; @@ -493,7 +491,7 @@ impl<'a> Widget for Group<'a> { .copied() .zip(state.ids.buff_timers.iter().copied()) .skip(total_buff_count - buff_count) - .zip(buffs.iter_active().map(get_buff_info)) + .zip(buffs.iter_active().map(hud::get_buff_info)) .for_each(|((id, timer_id), buff)| { let max_duration = buff.data.duration; let pulsating_col = Color::Rgba(1.0, 1.0, 1.0, buff_ani); @@ -504,20 +502,7 @@ impl<'a> Widget for Group<'a> { cur.as_secs_f32() / max.as_secs_f32() * 1000.0 }) }) as u32; // Percentage to determine which frame of the timer overlay is displayed - let buff_img = match buff.kind { - BuffKind::Regeneration { .. } => self.imgs.buff_plus_0, - BuffKind::Saturation { .. } => self.imgs.buff_saturation_0, - BuffKind::Bleeding { .. } => self.imgs.debuff_bleed_0, - BuffKind::Cursed { .. } => self.imgs.debuff_skull_0, - BuffKind::Potion { .. } => self.imgs.buff_potion_0, - BuffKind::CampfireHeal { .. } => self.imgs.buff_campfire_heal_0, - BuffKind::IncreaseMaxEnergy { .. } => { - self.imgs.buff_energyplus_0 - }, - BuffKind::IncreaseMaxHealth { .. } => { - self.imgs.buff_healthplus_0 - }, - }; + let buff_img = hud::get_buff_image(buff.kind, &self.imgs); let buff_widget = Image::new(buff_img).w_h(15.0, 15.0); let buff_widget = if let Some(id) = prev_id { buff_widget.right_from(id, 1.0) @@ -541,38 +526,9 @@ impl<'a> Widget for Group<'a> { ) .set(id, ui); // Create Buff tooltip - let title = match buff.kind { - BuffKind::Regeneration { .. } => { - localized_strings.get("buff.title.heal") - }, - BuffKind::Saturation { .. } => { - localized_strings.get("buff.title.saturation") - }, - BuffKind::Bleeding { .. } => { - localized_strings.get("debuff.title.bleed") - }, - _ => localized_strings.get("buff.title.missing"), - }; - let remaining_time = if current_duration.is_none() { - "Permanent".to_string() - } else { - format!( - "Remaining: {:.0}s", - current_duration.unwrap().as_secs_f32() - ) - }; - let desc_txt = match buff.kind { - BuffKind::Regeneration { .. } => { - localized_strings.get("buff.desc.heal") - }, - BuffKind::Saturation { .. } => { - localized_strings.get("buff.desc.saturation") - }, - BuffKind::Bleeding { .. } => { - localized_strings.get("debuff.desc.bleed") - }, - _ => localized_strings.get("buff.desc.missing"), - }; + let title = hud::get_buff_title(buff.kind, localized_strings); + let desc_txt = hud::get_buff_desc(buff.kind, localized_strings); + let remaining_time = hud::get_buff_time(buff); let desc = format!("{}\n\n{}", desc_txt, remaining_time); Image::new(match duration_percentage as u64 { 875..=1000 => self.imgs.nothing, // 8/8 diff --git a/voxygen/src/hud/img_ids.rs b/voxygen/src/hud/img_ids.rs index 9c031af1fb..d7da861e52 100644 --- a/voxygen/src/hud/img_ids.rs +++ b/voxygen/src/hud/img_ids.rs @@ -447,6 +447,7 @@ image_ids! { buff_campfire_heal_0: "voxygen.element.icons.de_buffs.buff_campfire_heal_0", buff_energyplus_0: "voxygen.element.icons.de_buffs.buff_energyplus_0", buff_healthplus_0: "voxygen.element.icons.de_buffs.buff_healthplus_0", + buff_invincibility_0: "voxygen.element.icons.de_buffs.buff_invincibility_0", // Debuffs debuff_skull_0: "voxygen.element.icons.de_buffs.debuff_skull_0", diff --git a/voxygen/src/hud/mod.rs b/voxygen/src/hud/mod.rs index c55aaba51a..7550b7bbf6 100644 --- a/voxygen/src/hud/mod.rs +++ b/voxygen/src/hud/mod.rs @@ -391,7 +391,13 @@ pub enum Event { slot_b: comp::slot::Slot, bypass_dialog: bool, }, + SplitSwapSlots { + slot_a: comp::slot::Slot, + slot_b: comp::slot::Slot, + bypass_dialog: bool, + }, DropSlot(comp::slot::Slot), + SplitDropSlot(comp::slot::Slot), ChangeHotbarState(Box), TradeAction(TradeAction), Ability3(bool), @@ -769,7 +775,15 @@ impl Hud { let hotbar_state = HotbarState::new(global_state.profile.get_hotbar_slots(server, character_id)); - let slot_manager = slots::SlotManager::new(ui.id_generator(), Vec2::broadcast(40.0)); + let slot_manager = slots::SlotManager::new( + ui.id_generator(), + Vec2::broadcast(40.0) + // TODO(heyzoos) Will be useful for whoever works on rendering the number of items "in hand". + // fonts.cyri.conrod_id, + // Vec2::new(1.0, 1.0), + // fonts.cyri.scale(12), + // TEXT_COLOR, + ); Self { ui, @@ -2720,9 +2734,10 @@ impl Hud { // Maintain slot manager for event in self.slot_manager.maintain(ui_widgets) { use comp::slot::Slot; - use slots::SlotKind::*; + use slots::{InventorySlot, SlotKind::*}; let to_slot = |slot_kind| match slot_kind { - Inventory(i) => Some(Slot::Inventory(i.0)), + Inventory(InventorySlot { slot, ours: true }) => Some(Slot::Inventory(slot)), + Inventory(InventorySlot { ours: false, .. }) => None, Equip(e) => Some(Slot::Equip(e)), Hotbar(_) => None, Trade(_) => None, @@ -2736,28 +2751,36 @@ impl Hud { slot_b: b, bypass_dialog: false, }); - } else if let (Inventory(i), Hotbar(h)) = (a, b) { - self.hotbar.add_inventory_link(h, i.0); + } else if let (Inventory(InventorySlot { slot, ours: true }), Hotbar(h)) = + (a, b) + { + self.hotbar.add_inventory_link(h, slot); events.push(Event::ChangeHotbarState(Box::new(self.hotbar.to_owned()))); } else if let (Hotbar(a), Hotbar(b)) = (a, b) { self.hotbar.swap(a, b); events.push(Event::ChangeHotbarState(Box::new(self.hotbar.to_owned()))); - } else if let (Inventory(i), Trade(_)) = (a, b) { - if let Some(inventory) = inventories.get(entity) { - events.push(Event::TradeAction(TradeAction::AddItem { - item: i.0, - quantity: i.amount(inventory).unwrap_or(1), - })); - } - } else if let (Trade(t), Inventory(_)) = (a, b) { - if let Some(inventory) = inventories.get(entity) { - if let Some(invslot) = t.invslot { - events.push(Event::TradeAction(TradeAction::RemoveItem { - item: invslot, - quantity: t.amount(inventory).unwrap_or(1), + } else if let (Inventory(i), Trade(t)) = (a, b) { + if i.ours == t.ours { + if let Some(inventory) = inventories.get(t.entity) { + events.push(Event::TradeAction(TradeAction::AddItem { + item: i.slot, + quantity: i.amount(inventory).unwrap_or(1), + ours: i.ours, })); } } + } else if let (Trade(t), Inventory(i)) = (a, b) { + if i.ours == t.ours { + if let Some(inventory) = inventories.get(t.entity) { + if let Some(invslot) = t.invslot { + events.push(Event::TradeAction(TradeAction::RemoveItem { + item: invslot, + quantity: t.amount(inventory).unwrap_or(1), + ours: t.ours, + })); + } + } + } } }, slot::Event::Dropped(from) => { @@ -2767,6 +2790,41 @@ impl Hud { } else if let Hotbar(h) = from { self.hotbar.clear_slot(h); events.push(Event::ChangeHotbarState(Box::new(self.hotbar.to_owned()))); + } else if let Trade(t) = from { + if let Some(inventory) = inventories.get(t.entity) { + if let Some(invslot) = t.invslot { + events.push(Event::TradeAction(TradeAction::RemoveItem { + item: invslot, + quantity: t.amount(inventory).unwrap_or(1), + ours: t.ours, + })); + } + } + } + }, + slot::Event::SplitDropped(from) => { + // Drop item + if let Some(from) = to_slot(from) { + events.push(Event::SplitDropSlot(from)); + } else if let Hotbar(h) = from { + self.hotbar.clear_slot(h); + events.push(Event::ChangeHotbarState(Box::new(self.hotbar.to_owned()))); + } + }, + slot::Event::SplitDragged(a, b) => { + // Swap between slots + if let (Some(a), Some(b)) = (to_slot(a), to_slot(b)) { + events.push(Event::SplitSwapSlots { + slot_a: a, + slot_b: b, + bypass_dialog: false, + }); + } else if let (Inventory(i), Hotbar(h)) = (a, b) { + self.hotbar.add_inventory_link(h, i.slot); + events.push(Event::ChangeHotbarState(Box::new(self.hotbar.to_owned()))); + } else if let (Hotbar(a), Hotbar(b)) = (a, b) { + self.hotbar.swap(a, b); + events.push(Event::ChangeHotbarState(Box::new(self.hotbar.to_owned()))); } }, slot::Event::Used(from) => { @@ -2839,8 +2897,13 @@ impl Hud { slot_manager: &mut slots::SlotManager, hotbar: &mut hotbar::State, ) { - if let Some(slots::SlotKind::Inventory(i)) = slot_manager.selected() { - hotbar.add_inventory_link(slot, i.0); + use slots::InventorySlot; + if let Some(slots::SlotKind::Inventory(InventorySlot { + slot: i, + ours: true, + })) = slot_manager.selected() + { + hotbar.add_inventory_link(slot, i); events.push(Event::ChangeHotbarState(Box::new(hotbar.to_owned()))); slot_manager.idle(); } else { @@ -3174,3 +3237,59 @@ pub fn cr_color(combat_rating: f32) -> Color { _ => XP_COLOR, } } + +pub fn get_buff_image(buff: BuffKind, imgs: &Imgs) -> conrod_core::image::Id { + match buff { + // Buffs + BuffKind::Regeneration { .. } => imgs.buff_plus_0, + BuffKind::Saturation { .. } => imgs.buff_saturation_0, + BuffKind::Potion { .. } => imgs.buff_potion_0, + BuffKind::CampfireHeal { .. } => imgs.buff_campfire_heal_0, + BuffKind::IncreaseMaxEnergy { .. } => imgs.buff_energyplus_0, + BuffKind::IncreaseMaxHealth { .. } => imgs.buff_healthplus_0, + BuffKind::Invulnerability => imgs.buff_invincibility_0, + // Debuffs + BuffKind::Bleeding { .. } => imgs.debuff_bleed_0, + BuffKind::Cursed { .. } => imgs.debuff_skull_0, + } +} + +pub fn get_buff_title(buff: BuffKind, localized_strings: &Localization) -> &str { + match buff { + // Buffs + BuffKind::Regeneration { .. } => localized_strings.get("buff.title.heal"), + BuffKind::Saturation { .. } => localized_strings.get("buff.title.saturation"), + BuffKind::Potion { .. } => localized_strings.get("buff.title.potion"), + BuffKind::CampfireHeal { .. } => localized_strings.get("buff.title.campfire_heal"), + BuffKind::IncreaseMaxHealth { .. } => localized_strings.get("buff.title.IncreaseMaxHealth"), + BuffKind::IncreaseMaxEnergy { .. } => localized_strings.get("buff.title.staminaup"), + BuffKind::Invulnerability => localized_strings.get("buff.title.invulnerability"), + // Debuffs + BuffKind::Bleeding { .. } => localized_strings.get("buff.title.bleed"), + BuffKind::Cursed { .. } => localized_strings.get("buff.title.cursed"), + } +} + +pub fn get_buff_desc(buff: BuffKind, localized_strings: &Localization) -> &str { + match buff { + // Buffs + BuffKind::Regeneration { .. } => localized_strings.get("buff.desc.heal"), + BuffKind::Saturation { .. } => localized_strings.get("buff.desc.saturation"), + BuffKind::Potion { .. } => localized_strings.get("buff.desc.potion"), + BuffKind::CampfireHeal { .. } => localized_strings.get("buff.desc.campfire_heal"), + BuffKind::IncreaseMaxHealth { .. } => localized_strings.get("buff.desc.IncreaseMaxHealth"), + BuffKind::IncreaseMaxEnergy { .. } => localized_strings.get("buff.desc.IncreaseMaxEnergy"), + BuffKind::Invulnerability => localized_strings.get("buff.desc.invulnerability"), + // Debuffs + BuffKind::Bleeding { .. } => localized_strings.get("buff.desc.bleed"), + BuffKind::Cursed { .. } => localized_strings.get("buff.desc.cursed"), + } +} + +pub fn get_buff_time(buff: BuffInfo) -> String { + if let Some(dur) = buff.dur { + format!("Remaining: {:.0}s", dur.as_secs_f32()) + } else { + "Permanent".to_string() + } +} diff --git a/voxygen/src/hud/overhead.rs b/voxygen/src/hud/overhead.rs index c5376f0248..d9a62e05e2 100644 --- a/voxygen/src/hud/overhead.rs +++ b/voxygen/src/hud/overhead.rs @@ -4,12 +4,12 @@ use super::{ TEXT_COLOR, }; use crate::{ - hud::get_buff_info, + hud::{get_buff_image, get_buff_info}, i18n::Localization, settings::GameplaySettings, ui::{fonts::Fonts, Ingameable}, }; -use common::comp::{BuffKind, Buffs, Energy, Health, SpeechBubble, SpeechBubbleType}; +use common::comp::{Buffs, Energy, Health, SpeechBubble, SpeechBubbleType}; use conrod_core::{ color, position::Align, @@ -236,16 +236,7 @@ impl<'a> Widget for Overhead<'a> { cur.as_secs_f32() / max.as_secs_f32() * 1000.0 }) }) as u32; // Percentage to determine which frame of the timer overlay is displayed - let buff_img = match buff.kind { - BuffKind::Regeneration { .. } => self.imgs.buff_plus_0, - BuffKind::Saturation { .. } => self.imgs.buff_saturation_0, - BuffKind::Bleeding { .. } => self.imgs.debuff_bleed_0, - BuffKind::Cursed { .. } => self.imgs.debuff_skull_0, - BuffKind::Potion { .. } => self.imgs.buff_potion_0, - BuffKind::CampfireHeal { .. } => self.imgs.buff_campfire_heal_0, - BuffKind::IncreaseMaxEnergy { .. } => self.imgs.buff_energyplus_0, - BuffKind::IncreaseMaxHealth { .. } => self.imgs.buff_healthplus_0, - }; + let buff_img = get_buff_image(buff.kind, &self.imgs); let buff_widget = Image::new(buff_img).w_h(20.0, 20.0); // Sort buffs into rows of 5 slots let x = i % 5; diff --git a/voxygen/src/hud/slots.rs b/voxygen/src/hud/slots.rs index bd8e4446d9..b6228e343e 100644 --- a/voxygen/src/hud/slots.rs +++ b/voxygen/src/hud/slots.rs @@ -13,6 +13,7 @@ use common::comp::{ Energy, Inventory, }; use conrod_core::{image, Color}; +use specs::Entity as EcsEntity; pub use common::comp::slot::{ArmorSlot, EquipSlot}; @@ -28,18 +29,21 @@ pub enum SlotKind { pub type SlotManager = slot::SlotManager; #[derive(Clone, Copy, Debug, PartialEq)] -pub struct InventorySlot(pub InvSlotId); +pub struct InventorySlot { + pub slot: InvSlotId, + pub ours: bool, +} impl SlotKey for InventorySlot { type ImageKey = ItemKey; fn image_key(&self, source: &Inventory) -> Option<(Self::ImageKey, Option)> { - source.get(self.0).map(|i| (i.into(), None)) + source.get(self.slot).map(|i| (i.into(), None)) } fn amount(&self, source: &Inventory) -> Option { source - .get(self.0) + .get(self.slot) .map(|item| item.amount()) .filter(|amount| *amount > 1) } @@ -69,19 +73,32 @@ pub struct TradeSlot { pub index: usize, pub quantity: u32, pub invslot: Option, + pub entity: EcsEntity, + pub ours: bool, } impl SlotKey for TradeSlot { type ImageKey = ItemKey; fn image_key(&self, source: &Inventory) -> Option<(Self::ImageKey, Option)> { - self.invslot - .and_then(|inv_id| InventorySlot(inv_id).image_key(source)) + self.invslot.and_then(|inv_id| { + InventorySlot { + slot: inv_id, + ours: self.ours, + } + .image_key(source) + }) } fn amount(&self, source: &Inventory) -> Option { self.invslot - .and_then(|inv_id| InventorySlot(inv_id).amount(source)) + .and_then(|inv_id| { + InventorySlot { + slot: inv_id, + ours: self.ours, + } + .amount(source) + }) .map(|x| x.min(self.quantity)) } diff --git a/voxygen/src/hud/trade.rs b/voxygen/src/hud/trade.rs index 150082e625..5716dc5bbe 100644 --- a/voxygen/src/hud/trade.rs +++ b/voxygen/src/hud/trade.rs @@ -6,6 +6,7 @@ use super::{ TEXT_COLOR, UI_HIGHLIGHT_0, UI_MAIN, }; use crate::{ + hud::bag::{BackgroundIds, InventoryScroller}, i18n::Localization, ui::{ fonts::Fonts, @@ -28,10 +29,12 @@ use conrod_core::{ widget::{self, Button, Image, Rectangle, State as ConrodState, Text}, widget_ids, Color, Colorable, Labelable, Positionable, Sizeable, UiCell, Widget, WidgetCommon, }; +use specs::Entity as EcsEntity; use vek::*; pub struct State { ids: Ids, + bg_ids: BackgroundIds, } widget_ids! { @@ -49,6 +52,7 @@ widget_ids! { phase_indicator, accept_button, decline_button, + inventory_scroller, } } @@ -157,6 +161,7 @@ impl<'a> Trade<'a> { let inventories = self.client.inventories(); let uid = trade.parties[who]; let entity = self.client.state().ecs().entity_from_uid(uid.0)?; + let ours = entity == self.client.entity(); // TODO: update in accordence with https://gitlab.com/veloren/veloren/-/issues/960 let inventory = inventories.get(entity)?; @@ -215,13 +220,15 @@ impl<'a> Trade<'a> { index, quantity, invslot: Some(k), + ours, + entity, }) .collect(); if matches!(trade.phase(), TradePhase::Mutate) { - self.phase1_itemwidget(state, ui, inventory, who, &tradeslots); + self.phase1_itemwidget(state, ui, inventory, who, ours, entity, name, &tradeslots); } else { - self.phase2_itemwidget(state, ui, inventory, who, &tradeslots); + self.phase2_itemwidget(state, ui, inventory, who, ours, entity, &tradeslots); } None @@ -233,6 +240,9 @@ impl<'a> Trade<'a> { ui: &mut UiCell<'_>, inventory: &Inventory, who: usize, + ours: bool, + entity: EcsEntity, + name: String, tradeslots: &[TradeSlot], ) { let item_tooltip = Tooltip::new({ @@ -253,6 +263,28 @@ impl<'a> Trade<'a> { .font_id(self.fonts.cyri.conrod_id) .desc_text_color(TEXT_COLOR); + if !ours { + InventoryScroller::new( + self.imgs, + self.item_imgs, + self.fonts, + self.tooltip_manager, + self.slot_manager, + self.pulse, + self.localized_strings, + false, + true, + self.msm, + false, + &item_tooltip, + name, + false, + &inventory, + &state.bg_ids, + ) + .set(state.ids.inventory_scroller, ui); + } + let mut slot_maker = SlotMaker { empty_slot: self.imgs.inv_slot, filled_slot: self.imgs.inv_slot, @@ -289,6 +321,8 @@ impl<'a> Trade<'a> { index: i, quantity: 0, invslot: None, + ours, + entity, }); // Slot let slot_widget = slot_maker @@ -334,6 +368,8 @@ impl<'a> Trade<'a> { ui: &mut UiCell<'_>, inventory: &Inventory, who: usize, + ours: bool, + entity: EcsEntity, tradeslots: &[TradeSlot], ) { if state.ids.inv_textslots.len() < 2 * MAX_TRADE_SLOTS { @@ -348,6 +384,8 @@ impl<'a> Trade<'a> { index: i, quantity: 0, invslot: None, + ours, + entity, }); let itemname = slot .invslot @@ -435,8 +473,12 @@ impl<'a> Widget for Trade<'a> { type State = State; type Style = (); - fn init_state(&self, id_gen: widget::id::Generator) -> Self::State { + fn init_state(&self, mut id_gen: widget::id::Generator) -> Self::State { State { + bg_ids: BackgroundIds { + bg: id_gen.next(), + bg_frame: id_gen.next(), + }, ids: Ids::new(id_gen), } } diff --git a/voxygen/src/hud/util.rs b/voxygen/src/hud/util.rs index 0056771305..7a470feaff 100644 --- a/voxygen/src/hud/util.rs +++ b/voxygen/src/hud/util.rs @@ -254,7 +254,7 @@ mod tests { testmsm.0.insert( "common.items.crafting_ing.bronze_ingot".to_string(), Stats { - equip_time_millis: 0, + equip_time_secs: 0.0, power: 3.0, poise_strength: 5.0, speed: 7.0, diff --git a/voxygen/src/session.rs b/voxygen/src/session.rs index b37dec9d5e..a7e863c183 100644 --- a/voxygen/src/session.rs +++ b/voxygen/src/session.rs @@ -1136,6 +1136,57 @@ impl PlayState for SessionState { self.client.borrow_mut().swap_slots(slot_a, slot_b); } }, + HudEvent::SplitSwapSlots { + slot_a, + slot_b, + bypass_dialog, + } => { + let mut move_allowed = true; + if !bypass_dialog { + if let Some(inventory) = self + .client + .borrow() + .state() + .ecs() + .read_storage::() + .get(self.client.borrow().entity()) + { + match (slot_a, slot_b) { + (Slot::Inventory(inv_slot), Slot::Equip(equip_slot)) + | (Slot::Equip(equip_slot), Slot::Inventory(inv_slot)) => { + if !inventory.can_swap(inv_slot, equip_slot) { + move_allowed = false; + } else { + let slot_deficit = + inventory.free_after_swap(equip_slot, inv_slot); + if slot_deficit < 0 { + self.hud.set_prompt_dialog( + PromptDialogSettings::new( + format!( + "This will result in dropping {} \ + item(s) on the ground. Are you sure?", + slot_deficit.abs() + ), + HudEvent::SwapSlots { + slot_a, + slot_b, + bypass_dialog: true, + }, + None, + ), + ); + move_allowed = false; + } + } + }, + _ => {}, + } + } + }; + if move_allowed { + self.client.borrow_mut().split_swap_slots(slot_a, slot_b); + } + }, HudEvent::DropSlot(x) => { let mut client = self.client.borrow_mut(); client.drop_slot(x); @@ -1143,6 +1194,13 @@ impl PlayState for SessionState { client.disable_lantern(); } }, + HudEvent::SplitDropSlot(x) => { + let mut client = self.client.borrow_mut(); + client.split_drop_slot(x); + if let comp::slot::Slot::Equip(comp::slot::EquipSlot::Lantern) = x { + client.disable_lantern(); + } + }, HudEvent::ChangeHotbarState(state) => { let client = self.client.borrow(); diff --git a/voxygen/src/ui/widgets/slot.rs b/voxygen/src/ui/widgets/slot.rs index b190acb5c4..2a936c6712 100644 --- a/voxygen/src/ui/widgets/slot.rs +++ b/voxygen/src/ui/widgets/slot.rs @@ -94,7 +94,13 @@ where #[derive(Clone, Copy)] enum ManagerState { - Dragging(widget::Id, K, image::Id), + Dragging( + widget::Id, + K, + image::Id, + /// Amount of items being dragged in the stack. + Option, + ), Selected(widget::Id, K), Idle, } @@ -110,6 +116,10 @@ pub enum Event { Dragged(K, K), // Dragged to open space Dropped(K), + // Dropped half of the stack + SplitDropped(K), + // Dragged half of the stack + SplitDragged(K, K), // Clicked while selected Used(K), } @@ -127,21 +137,56 @@ pub struct SlotManager { // Note: could potentially be specialized for each slot if needed drag_img_size: Vec2, pub mouse_over_slot: Option, + /* TODO(heyzoos) Will be useful for whoever works on rendering the number of items "in + * hand". + * + * drag_amount_id: widget::Id, + * drag_amount_shadow_id: widget::Id, */ + + /* Asset ID pointing to a font set. + * amount_font: font::Id, */ + + /* Specifies the size of the font used to display number of items held in + * a stack when dragging. + * amount_font_size: u32, */ + + /* Specifies how much space should be used in the margins of the item + * amount relative to the slot. + * amount_margins: Vec2, */ + + /* Specifies the color of the text used to display the number of items held + * in a stack when dragging. + * amount_text_color: Color, */ } impl SlotManager where S: SumSlot, { - pub fn new(mut gen: widget::id::Generator, drag_img_size: Vec2) -> Self { + pub fn new( + mut gen: widget::id::Generator, + drag_img_size: Vec2, + /* TODO(heyzoos) Will be useful for whoever works on rendering the number of items "in + * hand". amount_font: font::Id, + * amount_margins: Vec2, + * amount_font_size: u32, + * amount_text_color: Color, */ + ) -> Self { Self { state: ManagerState::Idle, slot_ids: Vec::new(), slots: Vec::new(), events: Vec::new(), drag_id: gen.next(), - drag_img_size, mouse_over_slot: None, + // TODO(heyzoos) Will be useful for whoever works on rendering the number of items "in + // hand". drag_amount_id: gen.next(), + // drag_amount_shadow_id: gen.next(), + // amount_font, + // amount_font_size, + // amount_margins, + // amount_text_color, + drag_img_size, } } @@ -166,8 +211,32 @@ where // If dragging and mouse is released check if there is a slot widget under the // mouse - if let ManagerState::Dragging(_, slot, content_img) = &self.state { + if let ManagerState::Dragging(_, slot, content_img, drag_amount) = &self.state { let content_img = *content_img; + let drag_amount = *drag_amount; + + // If we are dragging and we right click, drop half the stack + // on the ground or into the slot under the cursor. This only + // works with open slots or slots containing the same kind of + // item. + + if drag_amount.is_some() { + if let Some(id) = input.widget_under_mouse { + if ui.widget_input(id).clicks().right().next().is_some() { + if id == ui.window { + let temp_slot = *slot; + self.events.push(Event::SplitDropped(temp_slot)); + } else if let Some(idx) = slot_ids.iter().position(|slot_id| *slot_id == id) + { + let (from, to) = (*slot, slots[idx]); + if from != to { + self.events.push(Event::SplitDragged(from, to)); + } + } + } + } + } + if let mouse::ButtonPosition::Up = input.mouse.buttons.left() { // Get widget under the mouse if let Some(id) = input.widget_under_mouse { @@ -186,6 +255,7 @@ where // Mouse released stop dragging self.state = ManagerState::Idle; } + // Draw image of contents being dragged let [mouse_x, mouse_y] = input.mouse.xy; let size = self.drag_img_size.map(|e| e as f64).into_array(); @@ -193,6 +263,34 @@ where .wh(size) .xy([mouse_x, mouse_y]) .set(self.drag_id, ui); + + // TODO(heyzoos) Will be useful for whoever works on rendering the + // number of items "in hand". + // + // if let Some(drag_amount) = drag_amount { + // Text::new(format!("{}", drag_amount).as_str()) + // .parent(self.drag_id) + // .font_id(self.amount_font) + // .font_size(self.amount_font_size) + // .bottom_right_with_margins_on( + // self.drag_id, + // self.amount_margins.x as f64, + // self.amount_margins.y as f64, + // ) + // .color(Color::Rgba(0.0, 0.0, 0.0, 1.0)) + // .set(self.drag_amount_shadow_id, ui); + // Text::new(format!("{}", drag_amount).as_str()) + // .parent(self.drag_id) + // .font_id(self.amount_font) + // .font_size(self.amount_font_size) + // .bottom_right_with_margins_on( + // self.drag_id, + // self.amount_margins.x as f64, + // self.amount_margins.y as f64, + // ) + // .color(self.amount_text_color) + // .set(self.drag_amount_id, ui); + // } } std::mem::replace(&mut self.events, Vec::new()) @@ -204,6 +302,7 @@ where slot: S, ui: &conrod_core::Ui, content_img: Option>, + drag_amount: Option, ) -> Interaction { // Add to list of slots self.slot_ids.push(widget); @@ -212,7 +311,7 @@ where let filled = content_img.is_some(); // If the slot is no longer filled deselect it or cancel dragging match &self.state { - ManagerState::Selected(id, _) | ManagerState::Dragging(id, _, _) + ManagerState::Selected(id, _) | ManagerState::Dragging(id, _, _, _) if *id == widget && !filled => { self.state = ManagerState::Idle; @@ -223,7 +322,7 @@ where // If this is the selected/dragged widget make sure the slot value is up to date match &mut self.state { ManagerState::Selected(id, stored_slot) - | ManagerState::Dragging(id, stored_slot, _) + | ManagerState::Dragging(id, stored_slot, _, _) if *id == widget => { *stored_slot = slot @@ -278,24 +377,26 @@ where // If something is selected, deselect self.state = ManagerState::Idle; }, - ManagerState::Dragging(_, _, _) => {}, + ManagerState::Dragging(_, _, _, _) => {}, } } // If not dragging and there is a drag event on this slot start dragging if input.drags().left().next().is_some() - && !matches!(self.state, ManagerState::Dragging(_, _, _)) + && !matches!(self.state, ManagerState::Dragging(_, _, _, _)) { // Start dragging if widget is filled - if let Some(img) = content_img { - self.state = ManagerState::Dragging(widget, slot, img[0]); + if let Some(images) = content_img { + if !images.is_empty() { + self.state = ManagerState::Dragging(widget, slot, images[0], drag_amount); + } } } // Determine whether this slot is being interacted with match self.state { ManagerState::Selected(id, _) if id == widget => Interaction::Selected, - ManagerState::Dragging(id, _, _) if id == widget => Interaction::Dragging, + ManagerState::Dragging(id, _, _, _) if id == widget => Interaction::Dragging, _ => Interaction::None, } } @@ -488,7 +589,13 @@ where let content_images = state.cached_images.as_ref().map(|c| c.1.clone()); // Get whether this slot is selected let interaction = self.slot_manager.map_or(Interaction::None, |m| { - m.update(id, slot_key.into(), ui, content_images.clone()) + m.update( + id, + slot_key.into(), + ui, + content_images.clone(), + slot_key.amount(content_source), + ) }); // No content if it is being dragged let content_images = if let Interaction::Dragging = interaction {