From 734d12cfacba639cbd6f6df304a70dba9ddfb183 Mon Sep 17 00:00:00 2001 From: Ed <96445749+TheShuEd@users.noreply.github.com> Date: Fri, 17 Jan 2025 22:15:54 +0300 Subject: [PATCH] Slots separate (#778) * fix #67 * more all armor to new slot * smart skeletons --- .../human_inventory_template.yml | 8 +- .../Entities/Clothing/Cloak/sort_later.yml | 108 +----------------- .../Entities/Clothing/OuterClothing/base.yml | 13 +++ .../Clothing/OuterClothing/test_armor.yml | 105 +++++++++++++++++ .../_CP14/Entities/Mobs/Species/base.yml | 5 +- .../_CP14/Entities/Mobs/Species/silva.yml | 5 +- .../_CP14/Entities/Mobs/Species/skeleton.yml | 6 +- .../_CP14/Entities/Mobs/Species/zombie.yml | 5 +- .../human_inventory_template.yml | 8 +- .../_CP14/Recipes/Workbench/anvil.yml | 20 ++-- .../Interface/CrystallPunk/Slots/back.png | Bin 414 -> 434 bytes .../Interface/CrystallPunk/Slots/belt.png | Bin 402 -> 415 bytes .../Interface/CrystallPunk/Slots/gloves.png | Bin 438 -> 451 bytes .../Interface/CrystallPunk/Slots/hand_l.png | Bin 396 -> 404 bytes .../CrystallPunk/Slots/hand_l_no_letter.png | Bin 382 -> 390 bytes .../Interface/CrystallPunk/Slots/hand_r.png | Bin 406 -> 423 bytes .../CrystallPunk/Slots/hand_r_no_letter.png | Bin 383 -> 397 bytes .../Interface/CrystallPunk/Slots/head.png | Bin 379 -> 386 bytes .../Interface/CrystallPunk/Slots/mask.png | Bin 376 -> 384 bytes .../Interface/CrystallPunk/Slots/neck.png | Bin 397 -> 407 bytes .../Interface/CrystallPunk/Slots/shoes.png | Bin 371 -> 376 bytes .../Interface/CrystallPunk/Slots/suit.png | Bin 0 -> 403 bytes .../Interface/Default/Slots/cloak.png | Bin 410 -> 423 bytes .../Textures/Interface/Default/Slots/eyes.png | Bin 381 -> 400 bytes .../Textures/Interface/Default/Slots/keys.png | Bin 392 -> 424 bytes .../Interface/Default/Slots/pants.png | Bin 371 -> 381 bytes .../Textures/Interface/Default/Slots/ring.png | Bin 372 -> 391 bytes .../Interface/Default/Slots/shirt.png | Bin 391 -> 402 bytes .../equipped-OUTERCLOTHING.png} | Bin .../brass_armor.rsi/icon.png | Bin .../brass_armor.rsi/inhand-left.png | Bin .../brass_armor.rsi/inhand-right.png | Bin .../brass_armor.rsi/meta.json | 2 +- .../cuirass.rsi/equipped-OUTERCLOTHING.png} | Bin .../cuirass.rsi/icon.png | Bin .../cuirass.rsi/inhand-left.png | Bin .../cuirass.rsi/inhand-right.png | Bin .../cuirass.rsi/meta.json | 2 +- .../equipped-OUTERCLOTHING.png} | Bin .../cuirass_leg.rsi/icon.png | Bin .../cuirass_leg.rsi/inhand-left.png | Bin .../cuirass_leg.rsi/inhand-right.png | Bin .../cuirass_leg.rsi}/meta.json | 2 +- .../equipped-OUTERCLOTHING.png} | Bin .../cuirass_loincloth.rsi/icon.png | Bin .../cuirass_loincloth.rsi/inhand-left.png | Bin .../cuirass_loincloth.rsi/inhand-right.png | Bin .../cuirass_loincloth.rsi}/meta.json | 2 +- .../equipped-OUTERCLOTHING.png} | Bin .../infantry_cuirass.rsi/icon.png | Bin .../infantry_cuirass.rsi/inhand-left.png | Bin .../infantry_cuirass.rsi/inhand-right.png | Bin .../infantry_cuirass.rsi}/meta.json | 2 +- Resources/migration.yml | 7 +- 54 files changed, 164 insertions(+), 136 deletions(-) create mode 100644 Resources/Prototypes/_CP14/Entities/Clothing/OuterClothing/base.yml create mode 100644 Resources/Prototypes/_CP14/Entities/Clothing/OuterClothing/test_armor.yml create mode 100644 Resources/Textures/Interface/CrystallPunk/Slots/suit.png rename Resources/Textures/_CP14/Clothing/{Cloak/Armor/brass_armor.rsi/equipped-CLOAK.png => OuterClothing/brass_armor.rsi/equipped-OUTERCLOTHING.png} (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/brass_armor.rsi/icon.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/brass_armor.rsi/inhand-left.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/brass_armor.rsi/inhand-right.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/brass_armor.rsi/meta.json (90%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor/cuirass.rsi/equipped-CLOAK.png => OuterClothing/cuirass.rsi/equipped-OUTERCLOTHING.png} (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/cuirass.rsi/icon.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/cuirass.rsi/inhand-left.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/cuirass.rsi/inhand-right.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/cuirass.rsi/meta.json (89%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor/cuirass_leg.rsi/equipped-CLOAK.png => OuterClothing/cuirass_leg.rsi/equipped-OUTERCLOTHING.png} (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/cuirass_leg.rsi/icon.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/cuirass_leg.rsi/inhand-left.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/cuirass_leg.rsi/inhand-right.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor/infantry_cuirass.rsi => OuterClothing/cuirass_leg.rsi}/meta.json (89%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor/cuirass_loincloth.rsi/equipped-CLOAK.png => OuterClothing/cuirass_loincloth.rsi/equipped-OUTERCLOTHING.png} (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/cuirass_loincloth.rsi/icon.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/cuirass_loincloth.rsi/inhand-left.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/cuirass_loincloth.rsi/inhand-right.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor/cuirass_leg.rsi => OuterClothing/cuirass_loincloth.rsi}/meta.json (89%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor/infantry_cuirass.rsi/equipped-CLOAK.png => OuterClothing/infantry_cuirass.rsi/equipped-OUTERCLOTHING.png} (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/infantry_cuirass.rsi/icon.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/infantry_cuirass.rsi/inhand-left.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor => OuterClothing}/infantry_cuirass.rsi/inhand-right.png (100%) rename Resources/Textures/_CP14/Clothing/{Cloak/Armor/cuirass_loincloth.rsi => OuterClothing/infantry_cuirass.rsi}/meta.json (89%) diff --git a/Resources/Prototypes/InventoryTemplates/human_inventory_template.yml b/Resources/Prototypes/InventoryTemplates/human_inventory_template.yml index ff1447931f..27304efbaa 100644 --- a/Resources/Prototypes/InventoryTemplates/human_inventory_template.yml +++ b/Resources/Prototypes/InventoryTemplates/human_inventory_template.yml @@ -19,8 +19,8 @@ slotTexture: suit slotFlags: OUTERCLOTHING stripTime: 6 - uiWindowPos: 1,1 - strippingWindowPos: 1,2 + uiWindowPos: 1,2 + strippingWindowPos: 1,1 displayName: Suit - name: gloves slotTexture: gloves @@ -37,8 +37,8 @@ - name: mask slotTexture: mask slotFlags: MASK - uiWindowPos: 1,2 - strippingWindowPos: 1,1 + uiWindowPos: 1,1 + strippingWindowPos: 1,2 displayName: Mask - name: eyes slotTexture: glasses diff --git a/Resources/Prototypes/_CP14/Entities/Clothing/Cloak/sort_later.yml b/Resources/Prototypes/_CP14/Entities/Clothing/Cloak/sort_later.yml index 14c6c572a3..a0dadc197a 100644 --- a/Resources/Prototypes/_CP14/Entities/Clothing/Cloak/sort_later.yml +++ b/Resources/Prototypes/_CP14/Entities/Clothing/Cloak/sort_later.yml @@ -22,110 +22,4 @@ - type: Sprite sprite: _CP14/Clothing/Cloak/Roles/General/maid_apron.rsi - type: Clothing - sprite: _CP14/Clothing/Cloak/Roles/General/maid_apron.rsi - -- type: entity - parent: CP14ClothingCloakBase - id: CP14ClothingCloakBrassArmor - name: brass armor - description: Quality brass armour, has good protection and is not too heavy. - components: - - type: Sprite - sprite: _CP14/Clothing/Cloak/Armor/brass_armor.rsi - - type: Clothing - sprite: _CP14/Clothing/Cloak/Armor/brass_armor.rsi - - type: Armor - modifiers: - coefficients: - Blunt: 0.85 - Slash: 0.85 - Piercing: 0.95 - Heat: 0.90 - Caustic: 0.80 - - type: ClothingSpeedModifier - walkModifier: 0.96 - sprintModifier: 0.95 - -- type: entity - parent: CP14ClothingCloakBase - id: CP14ClothingCloakCuirass - name: cuirass - description: Light armour plate on the chest, little protection, little heaviness. - components: - - type: Sprite - sprite: _CP14/Clothing/Cloak/Armor/cuirass.rsi - - type: Clothing - sprite: _CP14/Clothing/Cloak/Armor/cuirass.rsi - - type: Armor - modifiers: - coefficients: - Blunt: 0.85 - Slash: 0.90 - Piercing: 0.90 - Heat: 0.95 - - type: ClothingSpeedModifier - walkModifier: 0.98 - sprintModifier: 0.98 - -- type: entity - parent: CP14ClothingCloakBase - id: CP14ClothingCloakInfantryCuirass - name: infantry cuirass - description: The light infantry cuirass, unlike the original, also protects from the back. - components: - - type: Sprite - sprite: _CP14/Clothing/Cloak/Armor/infantry_cuirass.rsi - - type: Clothing - sprite: _CP14/Clothing/Cloak/Armor/infantry_cuirass.rsi - - type: Armor - modifiers: - coefficients: - Blunt: 0.85 - Slash: 0.85 - Piercing: 0.90 - Heat: 0.90 - - type: ClothingSpeedModifier - walkModifier: 0.97 - sprintModifier: 0.96 - -- type: entity - parent: CP14ClothingCloakBase - id: CP14ClothingCloakCuirassLoincloth - name: cuirass loincloth - description: A heavier version of the cuirass, covering only the top of the legs. - components: - - type: Sprite - sprite: _CP14/Clothing/Cloak/Armor/cuirass_loincloth.rsi - - type: Clothing - sprite: _CP14/Clothing/Cloak/Armor/cuirass_loincloth.rsi - - type: Armor - modifiers: - coefficients: - Blunt: 0.75 - Slash: 0.80 - Piercing: 0.85 - Heat: 0.90 - - type: ClothingSpeedModifier - walkModifier: 0.96 - sprintModifier: 0.94 - -- type: entity - parent: CP14ClothingCloakBase - id: CP14ClothingCloakCuirassLeg - name: cuirass leg - description: A heavier cuirass that completely covers the legs. - components: - - type: Sprite - sprite: _CP14/Clothing/Cloak/Armor/cuirass_leg.rsi - - type: Clothing - sprite: _CP14/Clothing/Cloak/Armor/cuirass_leg.rsi - - type: Armor - modifiers: - coefficients: - Blunt: 0.75 - Slash: 0.75 - Piercing: 0.80 - Heat: 0.85 - - type: ClothingSpeedModifier - walkModifier: 0.95 - sprintModifier: 0.92 + sprite: _CP14/Clothing/Cloak/Roles/General/maid_apron.rsi \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Clothing/OuterClothing/base.yml b/Resources/Prototypes/_CP14/Entities/Clothing/OuterClothing/base.yml new file mode 100644 index 0000000000..fd809b400e --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Clothing/OuterClothing/base.yml @@ -0,0 +1,13 @@ +- type: entity + abstract: true + parent: Clothing + id: CP14ClothingOuterClothingBase + categories: [ ForkFiltered ] + components: + - type: Clothing + equipDelay: 2 + unequipDelay: 2 + slots: + - outerClothing + - type: Sprite + state: icon \ No newline at end of file diff --git a/Resources/Prototypes/_CP14/Entities/Clothing/OuterClothing/test_armor.yml b/Resources/Prototypes/_CP14/Entities/Clothing/OuterClothing/test_armor.yml new file mode 100644 index 0000000000..b5a946236d --- /dev/null +++ b/Resources/Prototypes/_CP14/Entities/Clothing/OuterClothing/test_armor.yml @@ -0,0 +1,105 @@ +- type: entity + parent: CP14ClothingOuterClothingBase + id: CP14ClothingOuterClothingCopperArmor + name: copper armor + description: Quality copper armour, has good protection and is not too heavy. + components: + - type: Sprite + sprite: _CP14/Clothing/OuterClothing/brass_armor.rsi + - type: Clothing + sprite: _CP14/Clothing/OuterClothing/brass_armor.rsi + - type: Armor + modifiers: + coefficients: + Blunt: 0.85 + Slash: 0.85 + Piercing: 0.95 + Heat: 0.90 + Caustic: 0.80 + - type: ClothingSpeedModifier + walkModifier: 0.96 + sprintModifier: 0.95 + +- type: entity + parent: CP14ClothingOuterClothingBase + id: CP14ClothingOuterClothingCuirass + name: cuirass + description: Light armour plate on the chest, little protection, little heaviness. + components: + - type: Sprite + sprite: _CP14/Clothing/OuterClothing/cuirass.rsi + - type: Clothing + sprite: _CP14/Clothing/OuterClothing/cuirass.rsi + - type: Armor + modifiers: + coefficients: + Blunt: 0.85 + Slash: 0.90 + Piercing: 0.90 + Heat: 0.95 + - type: ClothingSpeedModifier + walkModifier: 0.98 + sprintModifier: 0.98 + +- type: entity + parent: CP14ClothingOuterClothingBase + id: CP14ClothingOuterClothingInfantryCuirass + name: infantry cuirass + description: The light infantry cuirass, unlike the original, also protects from the back. + components: + - type: Sprite + sprite: _CP14/Clothing/OuterClothing/infantry_cuirass.rsi + - type: Clothing + sprite: _CP14/Clothing/OuterClothing/infantry_cuirass.rsi + - type: Armor + modifiers: + coefficients: + Blunt: 0.85 + Slash: 0.85 + Piercing: 0.90 + Heat: 0.90 + - type: ClothingSpeedModifier + walkModifier: 0.97 + sprintModifier: 0.96 + +- type: entity + parent: CP14ClothingOuterClothingBase + id: CP14ClothingOuterClothingCuirassLoincloth + name: cuirass loincloth + description: A heavier version of the cuirass, covering only the top of the legs. + components: + - type: Sprite + sprite: _CP14/Clothing/OuterClothing/cuirass_loincloth.rsi + - type: Clothing + sprite: _CP14/Clothing/OuterClothing/cuirass_loincloth.rsi + - type: Armor + modifiers: + coefficients: + Blunt: 0.75 + Slash: 0.80 + Piercing: 0.85 + Heat: 0.90 + - type: ClothingSpeedModifier + walkModifier: 0.96 + sprintModifier: 0.94 + +- type: entity + parent: CP14ClothingOuterClothingBase + id: CP14ClothingOuterClothingCuirassLeg + name: cuirass leg + description: A heavier cuirass that completely covers the legs. + components: + - type: Sprite + sprite: _CP14/Clothing/OuterClothing/cuirass_leg.rsi + - type: Clothing + sprite: _CP14/Clothing/OuterClothing/cuirass_leg.rsi + - type: Armor + modifiers: + coefficients: + Blunt: 0.75 + Slash: 0.75 + Piercing: 0.80 + Heat: 0.85 + - type: ClothingSpeedModifier + walkModifier: 0.95 + sprintModifier: 0.92 diff --git a/Resources/Prototypes/_CP14/Entities/Mobs/Species/base.yml b/Resources/Prototypes/_CP14/Entities/Mobs/Species/base.yml index d7edbce5bf..9cbbd0374d 100644 --- a/Resources/Prototypes/_CP14/Entities/Mobs/Species/base.yml +++ b/Resources/Prototypes/_CP14/Entities/Mobs/Species/base.yml @@ -26,15 +26,16 @@ sprite: Mobs/Customization/masking_helpers.rsi state: unisex_full visible: false + - map: [ "enum.HumanoidVisualLayers.LFoot" ] + - map: [ "enum.HumanoidVisualLayers.RFoot" ] - map: [ "shoes" ] - map: [ "shirt" ] - map: [ "pants" ] - - map: [ "enum.HumanoidVisualLayers.LFoot" ] - - map: [ "enum.HumanoidVisualLayers.RFoot" ] - map: [ "enum.HumanoidVisualLayers.LHand" ] - map: [ "enum.HumanoidVisualLayers.RHand" ] - map: [ "gloves" ] - map: [ "ears" ] + - map: [ "outerClothing" ] - map: [ "cloak" ] - map: [ "eyes" ] - map: [ "belt1" ] diff --git a/Resources/Prototypes/_CP14/Entities/Mobs/Species/silva.yml b/Resources/Prototypes/_CP14/Entities/Mobs/Species/silva.yml index 89a714086b..04fc7a587b 100644 --- a/Resources/Prototypes/_CP14/Entities/Mobs/Species/silva.yml +++ b/Resources/Prototypes/_CP14/Entities/Mobs/Species/silva.yml @@ -24,17 +24,18 @@ sprite: Mobs/Customization/masking_helpers.rsi state: unisex_full visible: false + - map: [ "enum.HumanoidVisualLayers.LFoot" ] + - map: [ "enum.HumanoidVisualLayers.RFoot" ] - map: [ "shoes" ] - map: [ "shirt" ] - map: [ "pants" ] - - map: [ "enum.HumanoidVisualLayers.LFoot" ] - - map: [ "enum.HumanoidVisualLayers.RFoot" ] - map: [ "enum.HumanoidVisualLayers.LHand" ] - map: [ "enum.HumanoidVisualLayers.RHand" ] - map: [ "enum.HumanoidVisualLayers.HeadSide" ] # Bark Before clothing - map: [ "enum.HumanoidVisualLayers.HeadTop" ] # Bark Before clothing - map: [ "gloves" ] - map: [ "ears" ] + - map: [ "outerClothing" ] - map: [ "cloak" ] - map: [ "eyes" ] - map: [ "belt1" ] diff --git a/Resources/Prototypes/_CP14/Entities/Mobs/Species/skeleton.yml b/Resources/Prototypes/_CP14/Entities/Mobs/Species/skeleton.yml index afcc280ef5..8db122887a 100644 --- a/Resources/Prototypes/_CP14/Entities/Mobs/Species/skeleton.yml +++ b/Resources/Prototypes/_CP14/Entities/Mobs/Species/skeleton.yml @@ -18,15 +18,16 @@ - map: [ "enum.HumanoidVisualLayers.LArm" ] - map: [ "enum.HumanoidVisualLayers.RLeg" ] - map: [ "enum.HumanoidVisualLayers.LLeg" ] + - map: [ "enum.HumanoidVisualLayers.LFoot" ] + - map: [ "enum.HumanoidVisualLayers.RFoot" ] - map: [ "shoes" ] - map: [ "shirt" ] - map: [ "pants" ] - - map: [ "enum.HumanoidVisualLayers.LFoot" ] - - map: [ "enum.HumanoidVisualLayers.RFoot" ] - map: [ "enum.HumanoidVisualLayers.LHand" ] - map: [ "enum.HumanoidVisualLayers.RHand" ] - map: [ "gloves" ] - map: [ "ears" ] + - map: [ "outerClothing" ] - map: [ "cloak" ] - map: [ "eyes" ] - map: [ "belt1" ] @@ -105,6 +106,7 @@ - type: Inventory templateId: CP14Human - type: TransferMindOnGib + - type: CP14KnowledgeStorage - type: entity parent: CP14BaseSpeciesDummy diff --git a/Resources/Prototypes/_CP14/Entities/Mobs/Species/zombie.yml b/Resources/Prototypes/_CP14/Entities/Mobs/Species/zombie.yml index f382633693..d269f82295 100644 --- a/Resources/Prototypes/_CP14/Entities/Mobs/Species/zombie.yml +++ b/Resources/Prototypes/_CP14/Entities/Mobs/Species/zombie.yml @@ -19,16 +19,17 @@ - map: [ "enum.HumanoidVisualLayers.LArm" ] - map: [ "enum.HumanoidVisualLayers.RLeg" ] - map: [ "enum.HumanoidVisualLayers.LLeg" ] + - map: [ "enum.HumanoidVisualLayers.LFoot" ] + - map: [ "enum.HumanoidVisualLayers.RFoot" ] - map: [ "shoes" ] - map: [ "shirt" ] - map: [ "pants" ] - - map: [ "enum.HumanoidVisualLayers.LFoot" ] - - map: [ "enum.HumanoidVisualLayers.RFoot" ] - map: [ "enum.HumanoidVisualLayers.LHand" ] - map: [ "enum.HumanoidVisualLayers.RHand" ] - map: [ "gloves" ] - map: [ "ears" ] - map: [ "cloak" ] + - map: [ "outerClothing" ] - map: [ "eyes" ] - map: [ "belt1" ] - map: [ "belt2" ] diff --git a/Resources/Prototypes/_CP14/InventoryTemplates/human_inventory_template.yml b/Resources/Prototypes/_CP14/InventoryTemplates/human_inventory_template.yml index b457c0e26e..fd91015ad9 100644 --- a/Resources/Prototypes/_CP14/InventoryTemplates/human_inventory_template.yml +++ b/Resources/Prototypes/_CP14/InventoryTemplates/human_inventory_template.yml @@ -60,10 +60,16 @@ uiWindowPos: 2,1 strippingWindowPos: 2,3 displayName: Ring + - name: outerClothing + slotTexture: suit + slotFlags: OUTERCLOTHING + uiWindowPos: 2,2 + strippingWindowPos: 2,1 + displayName: Armor - name: cloak slotTexture: cloak slotFlags: CLOAK - uiWindowPos: 2,2 + uiWindowPos: 2,3 strippingWindowPos: 2,2 displayName: Cloak # Main hotbar diff --git a/Resources/Prototypes/_CP14/Recipes/Workbench/anvil.yml b/Resources/Prototypes/_CP14/Recipes/Workbench/anvil.yml index ec39360192..5cf002da21 100644 --- a/Resources/Prototypes/_CP14/Recipes/Workbench/anvil.yml +++ b/Resources/Prototypes/_CP14/Recipes/Workbench/anvil.yml @@ -27,39 +27,39 @@ knowledgeRequired: MetallForging - type: CP14Recipe - id: CP14ClothingCloakCuirass + id: CP14ClothingOuterClothingCuirass tag: CP14RecipeAnvil craftTime: 4 stacks: CP14IronBar: 5 - result: CP14ClothingCloakCuirass + result: CP14ClothingOuterClothingCuirass knowledgeRequired: MetallForging - type: CP14Recipe - id: CP14ClothingCloakInfantryCuirass + id: CP14ClothingOuterClothingInfantryCuirass tag: CP14RecipeAnvil craftTime: 4 stacks: CP14IronBar: 6 - result: CP14ClothingCloakInfantryCuirass + result: CP14ClothingOuterClothingInfantryCuirass knowledgeRequired: MetallForging - type: CP14Recipe - id: CP14ClothingCloakCuirassLoincloth + id: CP14ClothingOuterClothingCuirassLoincloth tag: CP14RecipeAnvil craftTime: 4 stacks: CP14IronBar: 6 - result: CP14ClothingCloakCuirassLoincloth + result: CP14ClothingOuterClothingCuirassLoincloth knowledgeRequired: MetallForging - type: CP14Recipe - id: CP14ClothingCloakCuirassLeg + id: CP14ClothingOuterClothingCuirassLeg tag: CP14RecipeAnvil craftTime: 4 stacks: CP14IronBar: 7 - result: CP14ClothingCloakCuirassLeg + result: CP14ClothingOuterClothingCuirassLeg knowledgeRequired: MetallForging - type: CP14Recipe @@ -101,12 +101,12 @@ knowledgeRequired: MetallForging - type: CP14Recipe - id: CP14ClothingCloakBrassArmor + id: CP14ClothingOuterClothingCopperArmor tag: CP14RecipeAnvil craftTime: 2 stacks: CP14CopperBar: 6 - result: CP14ClothingCloakBrassArmor + result: CP14ClothingOuterClothingCopperArmor knowledgeRequired: MetallForging - type: CP14Recipe diff --git a/Resources/Textures/Interface/CrystallPunk/Slots/back.png b/Resources/Textures/Interface/CrystallPunk/Slots/back.png index 24eea7cfab8f19decdaff34ba7fc80300ca89ead..2b8ffcb9a35a690156c2ab7b54c694b9432ccf57 100644 GIT binary patch delta 395 zcmV;60d)SJ1F{2f_yQkb(qEYe-3#)dl-J+n z1NlO3D4~~MF=gKCTf{*t%En-E<^E8>2{C0ozM8x=|B7e_>n1#HP67n?BA^-ql z>ZHg!DT9({LO>>j&RbRmz!4zQ22mOsG^ZNQ7#m~QZq_Wnx@kv!tR0v_?&=$bPUsrL z5-=wg7w~cnO;AG>atNISaD})Kvjr%!x@lp%Swr2lRwCtt<0c8f;B>&X3)Uf2)nI!J z*avsQS%4{!Q-7Vw$0maP30$k^V)6gL{}AAFzPT~18K9>jWX#|`K#!2mfZ<$2u@-YMMv1MC2u_Xp%@GRszsIWYdl p)eMWkw$H_M2zb!(<#ciU0vn{iHx#{?(EtDd07*qoLUm#!L1B`c%KFAmNAdcQ0KHwMh z1uAmUQ#v8GC51BRp2(17H*MNU0T#xJ8pr+i%^k|BfJ<|QvMR($ssE+9e*HhxXU(fW zj{EKVbi0d5reL>OYY{6>o~OyIDEXJaIU} z$R_j>AQdv^_znu77ZYA2E+X`iUTDErz;_j#O-Qd!7cq~af`($O0!)FD>P$W^5#lZI ztzL@7?}7giFmL93OJhVmz)wTS80$R1kIWi}THI+sQRcAU9iS+4HYtwZ?+&f! z>+O%#wHKS!;{N@6W{W(7<=4!bm{9R7iANQ`TyG5%Q~c0~r+-R~B3^3^SrS_l002`O zWW;N&2Nh41f>bHXTa-D#79g?<;&fcK6_auFhtxGOH6zJ2XJ}JeV=TJ40IXtMX-6GVIagj@Lm%U z#TZjD_EQv>%im?X9dmPQM3B2|>n7V))9Uo4E;}5OB VmBphbaFqZ6002ovPDHLkV1kPRuW0}P delta 362 zcmV-w0hRur1Cj%fF@H=+L_t(oh0RyN5rQxfTp0%fRv<0V0OQ}M1zCXw`SkDDfGubR zO5~#-lR1KrOEAWL5lC*A%O<%1kujr<-DdSPJ5+Uv^XY=BF4;k8|MTh6`@Y>DHLrfy zZC202^~NTdg7tEtMa)d{B1?mk-ydy9#GHOq}a z1acvC+^Q~tJ&@>zq4e7@V=8kdwDC)*pZ=JEUm}Ud{6^1&LvURgTpzJA;Ik~bW2^$E z>?r{FX>}1jngJTfWpAK;ZDOLY0=58`w7T?l@__A}@Gb zr(nv##2L$)0%H}3n_?Hy-unQZ9`)WQTTTMT1oE$#!UPV!r=-U`3!~g&Q07*qo IM6N<$g6`C?TL1t6 diff --git a/Resources/Textures/Interface/CrystallPunk/Slots/gloves.png b/Resources/Textures/Interface/CrystallPunk/Slots/gloves.png index 3b724b0cbdd0cd89fcd1d705a93aa2bcd85d0d53..b8fed052e093216bb612d68dd02020398ab59cff 100644 GIT binary patch delta 412 zcmV;N0b~BQ1H%K5F@JqYL_t(oh0T{uZi6rog(ndLLwCs{Dp%kFDElsRpq?NH%Ch?^ z7swS-v4CBJlTEs^HB9_71|#~UNEj@?Z^jdA46v|PcyK)IpL9Z1mvA{>p{h&vqImx0 ze0}-;dHUAA`r&xkKfiu{*(Ou;@&2YER@A)6(pk-K_s0Mt!G9l>c`n2(=Dn0qWT}P# z07&R0W!_5})jSshav}7(Rb2v{0M>dyNMnnxsfshf1CDmvjq!ccc0oYS446#SFBHtD zml}w%Xo%KJnmYji!uB<^2D|`G+p)7S*4znz&8HZQ2EgVt6HVJigR=e$lz}Z1>itv@ zZw5@}Ci%_@n}3|=fXmpF4f@Q0euMGdOjw47jigj*<&ySsl*iiGPDi<}sKb|9q0>5DX~AN8%Yht&YP4O` zd=daax2~y)%K{A6ilZ=R*NB#2iESALz~(d(gSFY9*j?ZZxJcxxn9&G?%tMOR2~LxB zV9GcY4f-sJPJa}DlVrA%WfCue)?C^@2_R>IN&?V8;4?s0fS9->4FYJ+1DqM1Wo+gn z0L_s*B%JMZ=3Lculb#g;NsZv-CLOE;((q{@XdaBtg!GT8Wi_S{>V!Z00>D%PDHLkV1k(zx|aX| diff --git a/Resources/Textures/Interface/CrystallPunk/Slots/hand_l.png b/Resources/Textures/Interface/CrystallPunk/Slots/hand_l.png index 0d01216f3a75774c25ad54b7019e64623056074a..430cc533c4fd6202a4ca79cc1e3005055d3ef6f7 100644 GIT binary patch delta 364 zcmV-y0h9iW1C#@hF@H`;L_t(oh0T{SuEH=3hD}wqY1!JLqF3kzDt1N=#0fYMBl{B< z;0hoH*r0(0rbMpWLP8z#{)s4&|Ic;+2f(u?c(Gp2pY%Xgm$2U*psGvbp!ocLcj)Y| zHh@DasqgmQ!K4l6(Wk^93gtHb51s?Nb6av`I1Kbea<^ksu(I>SgA}SYCF^#E`?)(`w zQtAnoTYbZB3*dHtKpIC*ref@Y^*^3w7y_@qd6*6fUv&I9^{y9$HJZ=4nJnG_0000< KMNUMnLSTa4nW75- delta 356 zcmV-q0h|7m1B?TZF@Hu$L_t(oh0RyXaf2`reP$RCxPs6E4KTjv=z>y#3-U2{j~j3c zP6aWtFV0DtWdXCm%E~*jBh9|IABhzZ85?RG_PZzFP&XAW=PT-_5<8{)FXwA-{p)!0 zy#C{`-#x#7e#Inf@cFUzA~u}7%(I~6xBH_bBBhItyf7vRd4Fpy$~^NT03hX?9C>T4 zDtTcH3S+$Ax~YI8ka&YB)du(Jnlqt>CZ@{hf*#DkJCQ_Veun_pc(2eq1zM0ca`Y02 zGccCQwMSMY;8h*z+7dCUC6F{-Pytkks(?AEom&QR2BePZ4@XtN6ey{B35Ljclyf6r zC4kNhJn|uNYFz@x9Iv^IQefUZpe-WWJP>>$nnGtH;s`MnbDu8g-p{DDcF~0)_*SF@HcwL_t(oh3%I;5`r)gg%`$wfE^T!T!9NP_LdyT6L26(dxr~n z1sx0RlxU-k$t=sy5KWAQuOeh;-?vF%HUO68;6Yg|A2cA#Q`pse$ntb@QXIdl_nrB5 zwUxf|p)8h<&EYcHo zaIV!nUU@S{O5&*Z{qb}* z4=`j-=Tu>|Z$T1Aqp-#SFo;$Fm8DgQRa$|miIX^*9IJH;u&MSf=rf~Ls#N|lfT)my z2nb_aFqHV+pI4F6pU?z^wSJ%lV51-St&WJwL|066ilRG*u;E;Gu)5XP?6v@|w>yNs wXQV5}9$3F|HNy~i{LaO6Ncf=R%c*re0n-kbRsXdYs{jB107*qoM6N<$f|@g?jsO4v delta 342 zcmV-c0jd6m1O5V#F@HEoL_t(oh3%Kk5rQxfg;$1wfE7p!G{AWGXhBv$K^(n1Hb4tl zfe^Xq#blP{#{?3>!FM8)%)W0!ST+ETwZnt_e0uOP$OY1K{5_&3p*X7{FNI zxy4AU654=p)=v*~09^C~+v5N@WB>pF07*qoM6N<$g8Uqp3;+NC diff --git a/Resources/Textures/Interface/CrystallPunk/Slots/hand_r.png b/Resources/Textures/Interface/CrystallPunk/Slots/hand_r.png index fc05bb4b498e9b2460f3c17e13643f5170b972bb..e73cd250087741b91ee7955ef3b7298a877d7d16 100644 GIT binary patch delta 383 zcmV-_0f7FN1E&L!F@Ir6L_t(oh0T{iZo)7SML$uLIOz@+sJTKe5V7x)1N8(Ph-LQ` z7vKt1StL7%VMAB8CMIrd*CTim5>`h3-{Y}02A<4<4tCqk-3+Lk3dh3d-rux|g(+U<8LRl^dK;NY>3>HhUI@V=K1hi&&$I~u zNX;N6K1dl=ybuC~5PIIasenC@=z-xhHs+kFI1@TBS+AD*7aO(c$qZ21u1DMTEGB@7 z8Zc49ZP&9HNag~#Gcap_n?DWEv~z92Yz@p|+ZtEHK?YpvVZB;9neZ~eQHah(_!6hU zrx0CZoelWh1$aJ2gSH^%k@UWZrZS;!%MhGTffBG~BD6?@uVUMZeKU~)_I`j}sXN%%Of|bB1DER!WuCEg#Z-gx8c#E7f{sHTrZ#Ay d)5q!4`2}i>rd!45my`ei002ovPDHLkV1fu(vjG4A delta 366 zcmV-!0g?Wv1C|4jF@I1=L_t(oh0RyXZNo4OeK8DMb|#;FS8D%$;^26Vrx_Q)$2kvEAGp!^2H<$Q%KPuYv&_{;g) zncp8znyViUyUpwOc4tGTXuDo$6Eg}=qR=V4emq+y=6F)UV}Bu>z#Azci9&4x0ANmo z6ugnrDm)efVj=XpS)KwM0RlZBPHl^>sfshegLg`8x;F#wRN#&LHSn*_F*MO?`P2Kp zC@XgchM+WtYl3Zn10Ew*4Y-1{4FH&ZSCd$lfugL~SulaK4Pdw_z={D3rQRE_a00000NkvXXu0mjf D%|)pA delta 343 zcmV-d0jU0s1OEb$F@HHpL_t(oh3!|t5rQxfTp0%fRv<0V0OQ}M1zCXw`SkDDfGuDJ zLhz#>lQ{y+(AjCYdtcl2kkJfAYREO>*p{jKsB8HN+BcN_y$dcI0R7^Q2 pmhm*BBItU`!*mQZ(dpwfI6iF_l4mZ_4e$T}002ovPDHLkV1n&OoHqaf diff --git a/Resources/Textures/Interface/CrystallPunk/Slots/head.png b/Resources/Textures/Interface/CrystallPunk/Slots/head.png index 21baabc5dc044b04521d6ce6e803f7c9f3b2936d..fc4e31d19fb218619f4b9fe639e119ecef2d72f9 100644 GIT binary patch delta 346 zcmV-g0j2)?0)hjOF@HQsL_t(oh3%I+5`r)ghF8XcfSneOT!9NP_Ld&V6L=s?d&diK z1sn_QlxU-k$t=rbHbRJnf0dAB|1YnZ4S-{faA&(-zGy&_#*iIzNYa>{6vt=ByfVJo z9kj1*Y}d=z{&ZuTbkS-t(GVkQ9tFNt^ZVmjf*9jLWgZG)#eckz5~9G@5C8yU8l=n% zDSI^!g@8~9oi|BifE|FRJA|}v(VXgVdbl&B)TC=yU`Tn+oc{nHRjwgd^Vw9l&zI|P z0N9v*`v$~l3+l{G#ybPpkkJ-&+3Q{aI7@5_$pSFhThjyC3eaR+mz>6OL0BumnGKEM zu39TVmqW+>*Hig5bXE_P09@1qzf}=Y*{F(XPBrPuEhwba6>Q(CD|Sl&_s0{Wz_(Hr sV-Kv~c$#4d-2dib+9Z6?@#ECF-dJ0NKTCpY&j0`b07*qoM6N<$f~Z=dOaK4? delta 339 zcmV-Z0j&Ol1N#DyF@H5lL_t(oh3!{M5`r)c4U7W?Pas#|0*rf?9>^1TAeQbOFW?pQ z1VUk>8`}xtV=9#5jBiD!A@4O!GAV##czAK#Z=cj4%@Vj?ZjfdP+bOocUT&@ZLw?r0 z`s29YK2P@tn`8`jo3$3&gA z_h08_=xiQn2uyG>4=igUqOdU)Q=jV4ttu#`)D!H~=&Fo{fTF4)4g)JaA9G+V<7tLP l;Pp2T(>~xt$B$FzcmX6IgdEfGkm3LU002ovPDHLkV1g(7l-vLS diff --git a/Resources/Textures/Interface/CrystallPunk/Slots/mask.png b/Resources/Textures/Interface/CrystallPunk/Slots/mask.png index f8cee2994245e52831166822a2e676d9159c0668..166bff19ba831ec58b0fe2326b38802b43b78aad 100644 GIT binary patch delta 344 zcmV-e0jK`>0)PXMF@HKqL_t(oh3%Iy5`r)gMOTJ_fSneOT!9NP_Ld&V6L26(d&diK z1sx0NgkXbJGRp!Ak`M}im1Q&gUor`^0Whou4&uYEq7%X>fb?>OFbaAX#q-n4wUIw2 zXXz^k@nKh;ZqME(W3=BcCB%Z7`>vzaJTG502pcDbxyP6m^M8VK@Lfkj007u@k}xkg zS8DDt1|DOwZWsjs34kR7LaJJ{rZ}7y4yKe?bn6aGDa)AiA7Cy3jsL({ZPqI}zCSWG z0Jta?HQ20IwQn>Y4A5mv^VD>RJ_5ASw;A+VX_p2c!uuoZ4W58!j q);ykO7y`$?JWRWU4?2FF8rK{B7K{yOY0YT>0000NMMq;4?Fs4?ynu1vr3dN>Jdn%o8!zA$ z>7)oLCR z0wE!M-z1FzN&uG!0;z6^d$Pyr;^0WJLrZVqNV(RW{{UwJnAL&3!bMCaos|HVDx+wC z3ymz^46s&`WmR))8UG3(qn8<|oODT>A7MwSGMEtn45CB3(s1cE@cf#zq~V_1uwIDH z0brvam;l)52T9J=5s5O<6^nbaL(kH%qm*~Bx+P232|(Kq5Cy)Gt{8h@o#ShUA#nW5 i$8<^fq2te~b$tN;4UCx&wL_t(oh0T{Sj>0eyML!WroNNaL+FT(Qi0HTEK%9UBQEtED z0$hO=1$0Xc4OF(q6Htc41N*B?Jo0}YJIWY%vqm&nE#_CAP}L>2n;ojU6i-U?x0_vS ze7XMdzW!mgm|wqt|HLLk^!54SAx7N1$Wm4F)AkCzk)<920LDDY znK#x(HP4MfZj7I|s!L!EBtBrIvBl?fhcltUE9Dk_w*pkN=>)UsL=7a7CTc-+0_+b* zRR~c9G$F)WpamfY(1LghKm+1wfY=bd0AfP)28abQ2%rl>0yP+bLpWn;MOwe(SP+li zsR00C$tC7Mq-ZVRa^~VQ5ThS(X573BqO%{6YJWHeW$)U8mvlrNiYn-cxHP(AKBrrB z>nmui^&M<%-D`FOfYbScB1=`eV(LNlKdxpJg2sI=rjJAqI=!5}T{i`>p7*g^e53#X N002ovPDHLkV1kzKqU-UDdAq&^c0dsVL7H1~PTHIW4_+x+^xX__QR=KzXa`zBBmsEsEFe@Fu!K;T zzzRYQUkR zL;&Z@6-`x|bj93*>wjF$I0TQUTudK{Z*+b+eY^euOoyKLs5Ll500000NkvXXu0mjf DW{sSF diff --git a/Resources/Textures/Interface/CrystallPunk/Slots/shoes.png b/Resources/Textures/Interface/CrystallPunk/Slots/shoes.png index aa491cee6064365c58c12ba4cbbabb577a0b4db2..da6ea6a63c6098823ba7e78865dec1289e63276a 100644 GIT binary patch delta 336 zcmV-W0k8h^0{8-uF@G{iL_t(oh3!{65`r)gT^I%ec3L=c1unqQTXG;zz=0_39WUS& zbS$(Jf{ivNvxHBG5~4G{iY3dwm*v5101U&zL6#;DF(HaWIP8xQ#o^$hIRCIeHr6-! zj`Q-1EKMHU(`_)xCs?m$T!bZ(2cD~yyr}Lq5e{Bt8RvBA>b3j>qc=1kOSB}5R{G$u_iO8je{w{Hr?8RDPbF9exYH)E-V-G#=Z09DqWMo zcnAIhen-GiQ>o@kzk)W0t2`qU)7yb}$W?3njt6w1*8@Y%q+&WH0kZek_bYD8Qx-5q z2aL@FH325(fl2S0h(zd^ip832(+v}rl=2C7Y_tu#H33C+hrn~SOvRW3<2#OKSOkvW iIhb|<8yz1`jpGUaSA$7*f3Lg%0000uYA$ve5jy6>?pumD(wgN-~pHKIe3#&9nmkfib8pxFOjK04!<;>LOT zN1mOU>+?03WDd^90~g_l!6q%uz?yKaG5^ph!am4$23uFvm=4x6@E5Qj z0b>rQF}~VeFy&sr|LDXhGqA*^q>Hhi8ZZTA4Gb-&Ik%@$fNuR%N3qOrw171-V67i$ z39!)*Y^x&@VML-U7GttWcZ#s0ly|U8LsqOU0q;)@QQ#ZtiZKVqHlAi!1h%IP)Px$O-V#SR9J=8S21$JFc4fk9$PkDQe@&U_yZn#N*=@uco1d!3?JYNWKx6rX6?HOTO1(+g*4&^0mpwP(9*xT#UB6w002ovPDHLkV1mGbuBHG0 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Interface/Default/Slots/cloak.png b/Resources/Textures/Interface/Default/Slots/cloak.png index 0a456e773c0ea590279471308464597166ff231a..6f257e797578a8ef795436850e684c814b868cdc 100644 GIT binary patch delta 383 zcmV-_0f7FR1E&L!F@Ir6L_t(oh1FL(Zo@DPWrDz#oh==T`U<{)k-cLM)Dz@D8M_y` zK(3I&gS|CYvZRv)T2^9`QhpCGU|E#jBSpy+z=JWtjrD4Ib`8p^fZcWvWmS+T#rC`H ze$fB5`LVqAWxZOSzkmP8Bq8|xm|GDOmpo6Co01=nr=Exz?te7onNl|)@3e+IO{@q2 zfSGG#$UCj0l4nXmrj(txtO|e)z|=MzrDJ%1TlAhWxO1B1oZ0@&KrFBYT=P^C1-5`|i6%+H!9he7Q8%rK&;=_3nD7!g zSJdkzAx6mlXLt+XgqCCb+DiZsz6>M*lI=zv6BL1H=K!}JhzU|XAX(?JG3<)SEj~i+ zjMLtK0WKbW1e9;SIWdgW0|A}Zwt|ffpHn>nhvNzIG>Kl4yBrwLaW%sta9eUQy#$=- d_;UJi`~wfzpBky_F8Tlf002ovPDHLkV1oa`toHx_ delta 370 zcmV-&0ge8r1DXSnF@ID^L_t(oh1FNf4Z<)CeN?DT%LH_VE>Lmj$UscMKpeRv7GMRK z02+FMQzADFV5cdcCm}V|@q2dM!~wpH2_0-!i@R%3)g_LH6RNsoJEiu=!>RXvz1>@0 z`><_`OJ!#xa38aj!J&LwH*;t`qGf+N{vF^Xn&0&ORWe1n7T%WywN%; zd9D<4rL5noE`cqO*ny*z>(Kn(!S!j1Gob@6e1y_vGeLVZz$I_A?nD++JBfG(A@@Ch zM1YSlR77wFVnHn6Riq(V5DR!!Xdy+|+laU#8m*)3n4%0&!e``CQU6zj6fw>Vwg5?L zCAR;)1inV)UXTZ+y#ACA zyWOr~PB*3Rs*pfTVW8yXz;yN7xpFEX4@7vx1|T$G+apDvyJ z=kZ(e%7?>#_xSqxH71#ZkM}nzVxy8rfxjsE^>%NG*wUmR4}Te3guLM#QQ%7v0I*dL z3G#+>tK=bL2pN-g^CAO|fF}b*scon=#d3NycqT;C+6g=po-^i`6p$t{(j=aopDh3Y z%Bt3qq)Cjjs>hZy7eEPgL^L;M3a_yPW5+vY3Y}kZp9qztFK-GX0lJQc2u&w8YX{1z zp0xSa1lWMF0AaOL8u#UfV7!Dwg{QuXb-V%>exN15g&$a#BT})1D^_cYraNCj!?|>@ zwxKh-Edkft9Z}#f;)*E;#X7ELR0NHuTulE1U37Xmb&fx93*I6z244@K1;0$j`k%bJK(*qDmdnqt$PQy{*2Hbm%7N=v}=RU?T)D^oG$pjgJ$ njEbP~l#A&%P@~h!sdKym{C=B!`8^yM00000NkvXXu0mjfh|QUQ diff --git a/Resources/Textures/Interface/Default/Slots/keys.png b/Resources/Textures/Interface/Default/Slots/keys.png index 0c6de30506390cf616f2ca679265f59899addc4e..6e80219f1b0692af2c36d65bfaf159bdb983adbb 100644 GIT binary patch delta 384 zcmV-`0e}981E>R#F@Iu7L_t(oh3%KIZo)7Sh7W`iC*5E`%`4;uBKD3v5KqA4bYNt! zcmbyFR1B~|3=3Vbbv_5nK0BgF{iR58?D+q3@mXhpCu@Kk%lYg^2h>dk+szK@rt+Q? zkKb-~R{vu4rG53yaz4AQe@@;eG5UCa(+~q{UglY^=I6`RfPWa_PGw#Q(TjO2C6sxl zApihIbdWM{rA%sG2myrO5Dmb|eG4F@9-vARfsm4$iW>oT zMMTAofKd@q`Budt=5$W=(bh(!ipM@m^R8mo061T+Q07_klAL;A{f(m;hQMvk!Ss>v eLdS>Gr|TE4S)#Sr6mQ7@0000Q93$v{lNKs@=QF2D*f z0j2Zf(%lHgKQ1I8$o4Mxq_kkFL2u2mLeyF60~%5k`OyY{w(1 z8*c%z@fYxW0&G<->7ZT$Y*$U%K_{))MZ~MlC%J~+0;EJy1pw1ykc#@fTcANB4mpzG z420H0uz=9%$ys|I;E0j|pOKqGngQ`d#39YVXd>cpjmn3d`_w^C8j-ElhT@svk$~QL;6+vyu!}Jwsq0`6d$MFDXke=YK7=RQ200000ey9HJ<3LPrX8`9eMr(O=1fcmWThq(AWi zzQBnBI*6g+DqEXPA}nLaa8r3@XJ@>-QpP}FOlYuPE*|_qRhQWB4yfwVI4M29-yJ&p ztIdz*)r<9V@!0-ej7eU>_t#X5m~iquO}vs{Z}*mnm~JZaOn(S3MNC!-*Yw(8tH4vP19 nno$unwt1Kifet!-oCe1qgN}?#Nl6A{00000NkvXXu0mjf>=&H) delta 331 zcmV-R0kr=80`mfpF@G&dL_t(oh22-d5rQxfTo?udRv<0V0OQ}M1z7awnHUJVFK!ZUm%9ZnKwv~PXm*Dt?%2T=G7O? zZu2;tFV-aAV7p#v5fLXZvUF1N>+Sv`BB6_lJQrdT@>Ki<#GG|PKIiVifSb;e)@_;S4QC-_+Ex`0AqTF@HfxL_t(oh2>X44uUWcT!?{!H#iXa0v{mWJ@O!5;DbDRH-5k` zXgI)4sb2KdW?5~>1F0G8q4U{|bPbVHV>a6Vli%hTRT@&5Da(plf` zkD6D1?27g4aJ}^=`39TSQj2gXdFXqSlHVWCmWTyjROEpWlYfvmQbOo^S_A;Vf^Jge zjg+I32SPv~gwC7gDZn1U)d5jDHfT;|P8SEigeuzDfnUP4#yl4Rom5ycc!G0mxp?wGKVQctjB!!+!+1l%7_ x2z_sosTgx$%;RZ>Mc|n8F#QBYl4TCTYbWsI?PEb~00mQ#g2I>SIh-d#*7hnZC zK_T#=uSCX#3QR+gdaqiEeCKdZ9RSBT;NX^LJ>8I`F_g~=k~E&36z?ye)oA@%JT$NV zam%y*{(8?QS%b^@q(vMkc@+3o$?LWoh&bX!MIH)ag}jjxqJO~GA^-r6bdw@)r2Hv) zCzJ8 z3eM(%fdCitz(u|$A_^N*G0mxp9+~i)%h$qW-hqI+?H~$#D^oG%z}Uyr42!@q=V3Yp eY;^oMb&d~z--hI7C^5wV00000uN;Q`#)a5 zE9m^<+bPk;U+vDiND>kdUX>+b-^*jeYybwvga^Cr`Y9I_We&%~35qgzPRiFG52xDv z*ZzliX|UU_pWo-JGf4NeT24fzJfZ8cAVY!&o`1kMP zJZFNl1Drs{ra2p0Ibajz11ASeL`` zPzS8Xu+46K-eYU+fGM$$Sg#)u5~2ORE|CD=ejtPxF<3t^u8v5ekFHqe#7)?ze9~p{xpAFE^A`;hdDtzg}*g@k4#qy!zs} z-@Z@xhcn3->^5sHV#UexG?|qA`D(vJ#B@-RXF^Ou-bjf&O@Fiq0Eqb{Mczmmlsppx znGiZ}SrtGHL^@zfLxbm3#Tn7ypHMH|>%cz|&BnYG0i9J~0$rZGs7zxfI6J`i1{#~j zZ1~9mnnU6xcEI9yNFx90}4am+QpS10){Zw0qZjK{WH2g z_p<}0#6DuZHdrD>6ry>F0snp=MB_4BKd`Khh+~SbnCDb4-6_IGO5MSRMqkZ*33$F* x CrystallEdge migration zone end