From fb7192cda458bbf8bcf67cae9ce5e2d4daa72cac Mon Sep 17 00:00:00 2001 From: Aleksey Date: Thu, 1 Oct 2020 17:53:03 +0300 Subject: [PATCH 1/2] Equipment --- psd/armor_items.psd | Bin 0 -> 30801 bytes psd/armor_models.psd | Bin 0 -> 41294 bytes .../ru/betterend/item/EndArmorMaterial.java | 89 ++++++++++++++++++ src/main/java/ru/betterend/item/EndAxe.java | 11 +++ src/main/java/ru/betterend/item/EndHoe.java | 11 +++ .../java/ru/betterend/item/EndPickaxe.java | 11 +++ .../ru/betterend/item/EndToolMaterial.java | 67 +++++++++++++ .../ru/betterend/registry/ItemRegistry.java | 36 +++++++ .../assets/betterend/lang/en_us.json | 18 ++++ .../assets/betterend/lang/ru_ru.json | 20 +++- .../models/item/aeternium_boots.json | 6 ++ .../models/item/aeternium_chestplate.json | 6 ++ .../models/item/aeternium_helmet.json | 6 ++ .../models/item/aeternium_leggings.json | 6 ++ .../betterend/models/item/terminite_axe.json | 6 ++ .../models/item/terminite_boots.json | 6 ++ .../models/item/terminite_chestplate.json | 6 ++ .../models/item/terminite_helmet.json | 6 ++ .../betterend/models/item/terminite_hoe.json | 6 ++ .../models/item/terminite_leggings.json | 6 ++ .../models/item/terminite_pickaxe.json | 6 ++ .../models/item/terminite_shovel.json | 6 ++ .../models/item/terminite_sword.json | 6 ++ .../textures/item/aeternium_boots.png | Bin 0 -> 539 bytes .../textures/item/aeternium_chestplate.png | Bin 0 -> 689 bytes .../textures/item/aeternium_helmet.png | Bin 0 -> 639 bytes .../textures/item/aeternium_leggings.png | Bin 0 -> 503 bytes .../betterend/textures/item/terminite_axe.png | Bin 0 -> 2078 bytes .../textures/item/terminite_boots.png | Bin 0 -> 338 bytes .../textures/item/terminite_chestplate.png | Bin 0 -> 561 bytes .../textures/item/terminite_helmet.png | Bin 0 -> 381 bytes .../betterend/textures/item/terminite_hoe.png | Bin 0 -> 289 bytes .../textures/item/terminite_leggings.png | Bin 0 -> 356 bytes .../textures/item/terminite_pickaxe.png | Bin 0 -> 2016 bytes .../textures/item/terminite_shovel.png | Bin 0 -> 1824 bytes .../textures/item/terminite_sword.png | Bin 0 -> 2116 bytes .../models/armor/aeternium_layer_1.png | Bin 0 -> 2685 bytes .../models/armor/aeternium_layer_2.png | Bin 0 -> 1132 bytes .../models/armor/terminite_layer_1.png | Bin 0 -> 1781 bytes .../models/armor/terminite_layer_2.png | Bin 0 -> 711 bytes 40 files changed, 340 insertions(+), 1 deletion(-) create mode 100644 psd/armor_items.psd create mode 100644 psd/armor_models.psd create mode 100644 src/main/java/ru/betterend/item/EndArmorMaterial.java create mode 100644 src/main/java/ru/betterend/item/EndAxe.java create mode 100644 src/main/java/ru/betterend/item/EndHoe.java create mode 100644 src/main/java/ru/betterend/item/EndPickaxe.java create mode 100644 src/main/java/ru/betterend/item/EndToolMaterial.java create mode 100644 src/main/resources/assets/betterend/models/item/aeternium_boots.json create mode 100644 src/main/resources/assets/betterend/models/item/aeternium_chestplate.json create mode 100644 src/main/resources/assets/betterend/models/item/aeternium_helmet.json create mode 100644 src/main/resources/assets/betterend/models/item/aeternium_leggings.json create mode 100644 src/main/resources/assets/betterend/models/item/terminite_axe.json create mode 100644 src/main/resources/assets/betterend/models/item/terminite_boots.json create mode 100644 src/main/resources/assets/betterend/models/item/terminite_chestplate.json create mode 100644 src/main/resources/assets/betterend/models/item/terminite_helmet.json create mode 100644 src/main/resources/assets/betterend/models/item/terminite_hoe.json create mode 100644 src/main/resources/assets/betterend/models/item/terminite_leggings.json create mode 100644 src/main/resources/assets/betterend/models/item/terminite_pickaxe.json create mode 100644 src/main/resources/assets/betterend/models/item/terminite_shovel.json create mode 100644 src/main/resources/assets/betterend/models/item/terminite_sword.json create mode 100644 src/main/resources/assets/betterend/textures/item/aeternium_boots.png create mode 100644 src/main/resources/assets/betterend/textures/item/aeternium_chestplate.png create mode 100644 src/main/resources/assets/betterend/textures/item/aeternium_helmet.png create mode 100644 src/main/resources/assets/betterend/textures/item/aeternium_leggings.png create mode 100644 src/main/resources/assets/betterend/textures/item/terminite_axe.png create mode 100644 src/main/resources/assets/betterend/textures/item/terminite_boots.png create mode 100644 src/main/resources/assets/betterend/textures/item/terminite_chestplate.png create mode 100644 src/main/resources/assets/betterend/textures/item/terminite_helmet.png create mode 100644 src/main/resources/assets/betterend/textures/item/terminite_hoe.png create mode 100644 src/main/resources/assets/betterend/textures/item/terminite_leggings.png create mode 100644 src/main/resources/assets/betterend/textures/item/terminite_pickaxe.png create mode 100644 src/main/resources/assets/betterend/textures/item/terminite_shovel.png create mode 100644 src/main/resources/assets/betterend/textures/item/terminite_sword.png create mode 100644 src/main/resources/assets/minecraft/textures/models/armor/aeternium_layer_1.png create mode 100644 src/main/resources/assets/minecraft/textures/models/armor/aeternium_layer_2.png create mode 100644 src/main/resources/assets/minecraft/textures/models/armor/terminite_layer_1.png create mode 100644 src/main/resources/assets/minecraft/textures/models/armor/terminite_layer_2.png diff --git a/psd/armor_items.psd b/psd/armor_items.psd new file mode 100644 index 0000000000000000000000000000000000000000..e1f9a09bca77617395ebbadc1a1a5f1598902c1c GIT binary patch literal 30801 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 E3(E|FmH+?% literal 0 HcmV?d00001 diff --git a/src/main/java/ru/betterend/item/EndArmorMaterial.java b/src/main/java/ru/betterend/item/EndArmorMaterial.java new file mode 100644 index 00000000..219b4896 --- /dev/null +++ b/src/main/java/ru/betterend/item/EndArmorMaterial.java @@ -0,0 +1,89 @@ +package ru.betterend.item; + +import java.util.function.Supplier; + +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; + +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.item.ArmorMaterial; +import net.minecraft.recipe.Ingredient; +import net.minecraft.sound.SoundEvent; +import net.minecraft.sound.SoundEvents; +import net.minecraft.util.Lazy; +import ru.betterend.registry.ItemRegistry; + +public enum EndArmorMaterial implements ArmorMaterial { + TERMINITE("terminite", 26, new int[] { 3, 6, 7, 3 }, 14, SoundEvents.ITEM_ARMOR_EQUIP_IRON, 1.0F, 0.05F, () -> { + return Ingredient.ofItems(ItemRegistry.TERMINITE_INGOT); + }), + AETERNIUM("aeternium", 40, new int[] { 4, 7, 9, 4 }, 18, SoundEvents.ITEM_ARMOR_EQUIP_NETHERITE, 3.5F, 0.2F, () -> { + return Ingredient.ofItems(ItemRegistry.AETERNIUM_INGOT); + }); + + private static final int[] BASE_DURABILITY = new int[] { 13, 15, 16, 11 }; + private final String name; + private final int durabilityMultiplier; + private final int[] protectionAmounts; + private final int enchantability; + private final SoundEvent equipSound; + private final float toughness; + private final float knockbackResistance; + private final Lazy repairIngredient; + + private EndArmorMaterial(String name, int durabilityMultiplier, int[] protectionAmounts, int enchantability, + SoundEvent equipSound, float toughness, float knockbackResistance, + Supplier repairIngredient) { + + this.name = name; + this.durabilityMultiplier = durabilityMultiplier; + this.protectionAmounts = protectionAmounts; + this.enchantability = enchantability; + this.equipSound = equipSound; + this.toughness = toughness; + this.knockbackResistance = knockbackResistance; + this.repairIngredient = new Lazy<>(repairIngredient); + } + + @Override + public int getDurability(EquipmentSlot slot) { + return BASE_DURABILITY[slot.getEntitySlotId()] * this.durabilityMultiplier; + } + + @Override + public int getProtectionAmount(EquipmentSlot slot) { + return this.protectionAmounts[slot.getEntitySlotId()]; + } + + @Override + public int getEnchantability() { + return this.enchantability; + } + + @Override + public SoundEvent getEquipSound() { + return this.equipSound; + } + + @Override + public Ingredient getRepairIngredient() { + return this.repairIngredient.get(); + } + + @Override + @Environment(EnvType.CLIENT) + public String getName() { + return this.name; + } + + @Override + public float getToughness() { + return this.toughness; + } + + @Override + public float getKnockbackResistance() { + return this.knockbackResistance; + } + +} diff --git a/src/main/java/ru/betterend/item/EndAxe.java b/src/main/java/ru/betterend/item/EndAxe.java new file mode 100644 index 00000000..fb1f36f8 --- /dev/null +++ b/src/main/java/ru/betterend/item/EndAxe.java @@ -0,0 +1,11 @@ +package ru.betterend.item; + +import net.minecraft.item.AxeItem; +import net.minecraft.item.ToolMaterial; + +public class EndAxe extends AxeItem { + + public EndAxe(ToolMaterial material, float attackDamage, float attackSpeed, Settings settings) { + super(material, attackDamage, attackSpeed, settings); + } +} diff --git a/src/main/java/ru/betterend/item/EndHoe.java b/src/main/java/ru/betterend/item/EndHoe.java new file mode 100644 index 00000000..78bc3993 --- /dev/null +++ b/src/main/java/ru/betterend/item/EndHoe.java @@ -0,0 +1,11 @@ +package ru.betterend.item; + +import net.minecraft.item.HoeItem; +import net.minecraft.item.ToolMaterial; + +public class EndHoe extends HoeItem { + + public EndHoe(ToolMaterial material, int attackDamage, float attackSpeed, Settings settings) { + super(material, attackDamage, attackSpeed, settings); + } +} diff --git a/src/main/java/ru/betterend/item/EndPickaxe.java b/src/main/java/ru/betterend/item/EndPickaxe.java new file mode 100644 index 00000000..3e15f23d --- /dev/null +++ b/src/main/java/ru/betterend/item/EndPickaxe.java @@ -0,0 +1,11 @@ +package ru.betterend.item; + +import net.minecraft.item.PickaxeItem; +import net.minecraft.item.ToolMaterial; + +public class EndPickaxe extends PickaxeItem { + + public EndPickaxe(ToolMaterial material, int attackDamage, float attackSpeed, Settings settings) { + super(material, attackDamage, attackSpeed, settings); + } +} diff --git a/src/main/java/ru/betterend/item/EndToolMaterial.java b/src/main/java/ru/betterend/item/EndToolMaterial.java new file mode 100644 index 00000000..bb48477a --- /dev/null +++ b/src/main/java/ru/betterend/item/EndToolMaterial.java @@ -0,0 +1,67 @@ +package ru.betterend.item; + +import java.util.function.Supplier; + +import net.minecraft.item.ToolMaterial; +import net.minecraft.recipe.Ingredient; +import net.minecraft.util.Lazy; + +import ru.betterend.registry.ItemRegistry; + +public enum EndToolMaterial implements ToolMaterial { + TERMINITE(3, 1230, 8.5F, 3.0F, 14, () -> { + return Ingredient.ofItems(ItemRegistry.TERMINITE_INGOT); + }), + AETERNIUM(5, 2196, 10.0F, 4.5F, 18, () -> { + return Ingredient.ofItems(ItemRegistry.AETERNIUM_INGOT); + }); + + private final int durability; + private final float miningSpeed; + private final float attackDamage; + private final int miningLevel; + private final int enchantability; + private final Lazy repairIngredient; + + private EndToolMaterial(int miningLevel, int durability, float miningSpeed, float attackDamage, int enchantability, + Supplier repairIngredient) { + + this.durability = durability; + this.miningSpeed = miningSpeed; + this.attackDamage = attackDamage; + this.miningLevel = miningLevel; + this.enchantability = enchantability; + this.repairIngredient = new Lazy<>(repairIngredient); + } + + @Override + public int getDurability() { + return this.durability; + } + + @Override + public float getMiningSpeedMultiplier() { + return this.miningSpeed; + } + + @Override + public float getAttackDamage() { + return this.attackDamage; + } + + @Override + public int getMiningLevel() { + return this.miningLevel; + } + + @Override + public int getEnchantability() { + return this.enchantability; + } + + @Override + public Ingredient getRepairIngredient() { + return this.repairIngredient.get(); + } + +} diff --git a/src/main/java/ru/betterend/registry/ItemRegistry.java b/src/main/java/ru/betterend/registry/ItemRegistry.java index 08101d5a..308591c1 100644 --- a/src/main/java/ru/betterend/registry/ItemRegistry.java +++ b/src/main/java/ru/betterend/registry/ItemRegistry.java @@ -4,20 +4,48 @@ import java.util.List; import com.google.common.collect.Lists; +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.item.ArmorItem; import net.minecraft.item.BlockItem; import net.minecraft.item.Item; import net.minecraft.item.ItemGroup; import net.minecraft.item.Items; +import net.minecraft.item.ShovelItem; +import net.minecraft.item.SwordItem; +import net.minecraft.item.ToolItem; import net.minecraft.util.registry.Registry; import ru.betterend.BetterEnd; +import ru.betterend.item.EndArmorMaterial; +import ru.betterend.item.EndAxe; +import ru.betterend.item.EndHoe; +import ru.betterend.item.EndPickaxe; +import ru.betterend.item.EndToolMaterial; public class ItemRegistry { private static final List MOD_BLOCKS = Lists.newArrayList(); private static final List MOD_ITEMS = Lists.newArrayList(); + //Materials public final static Item ENDER_DUST = registerItem("ender_dust", new Item((new Item.Settings()).group(ItemGroup.MATERIALS))); public final static Item TERMINITE_INGOT = registerItem("terminite_ingot", new Item((new Item.Settings()).group(ItemGroup.MATERIALS))); public final static Item AETERNIUM_INGOT = registerItem("aeternium_ingot", new Item((new Item.Settings()).group(ItemGroup.MATERIALS))); + + //Armor + public static final Item TERMINITE_HELMET = registerItem("terminite_helmet", new ArmorItem(EndArmorMaterial.TERMINITE, EquipmentSlot.HEAD,new Item.Settings().group(ItemGroup.COMBAT))); + public static final Item TERMINITE_CHESTPLATE = registerItem("terminite_chestplate", new ArmorItem(EndArmorMaterial.TERMINITE, EquipmentSlot.CHEST, new Item.Settings().group(ItemGroup.COMBAT))); + public static final Item TERMINITE_LEGGINGS = registerItem("terminite_leggings", new ArmorItem(EndArmorMaterial.TERMINITE, EquipmentSlot.LEGS, new Item.Settings().group(ItemGroup.COMBAT))); + public static final Item TERMINITE_BOOTS = registerItem("terminite_boots", new ArmorItem(EndArmorMaterial.TERMINITE, EquipmentSlot.FEET, new Item.Settings().group(ItemGroup.COMBAT))); + public static final Item AETERNIUM_HELMET = registerItem("aeternium_helmet", new ArmorItem(EndArmorMaterial.AETERNIUM, EquipmentSlot.HEAD,new Item.Settings().group(ItemGroup.COMBAT))); + public static final Item AETERNIUM_CHESTPLATE = registerItem("aeternium_chestplate", new ArmorItem(EndArmorMaterial.AETERNIUM, EquipmentSlot.CHEST, new Item.Settings().group(ItemGroup.COMBAT))); + public static final Item AETERNIUM_LEGGINGS = registerItem("aeternium_leggings", new ArmorItem(EndArmorMaterial.AETERNIUM, EquipmentSlot.LEGS, new Item.Settings().group(ItemGroup.COMBAT))); + public static final Item AETERNIUM_BOOTS = registerItem("aeternium_boots", new ArmorItem(EndArmorMaterial.AETERNIUM, EquipmentSlot.FEET, new Item.Settings().group(ItemGroup.COMBAT))); + + //Tools + public static ToolItem TERMINITE_SHOVEL = registerTool("terminite_shovel", new ShovelItem(EndToolMaterial.TERMINITE, 1.5F, -3.0F, new Item.Settings().group(ItemGroup.TOOLS))); + public static ToolItem TERMINITE_SWORD = registerTool("terminite_sword", new SwordItem(EndToolMaterial.TERMINITE, 3, -2.4F, new Item.Settings().group(ItemGroup.COMBAT))); + public static ToolItem TERMINITE_PICKAXE = registerTool("terminite_pickaxe", new EndPickaxe(EndToolMaterial.TERMINITE, 1, -2.8F, new Item.Settings().group(ItemGroup.TOOLS))); + public static ToolItem TERMINITE_AXE = registerTool("terminite_axe", new EndAxe(EndToolMaterial.TERMINITE, 5.0F, -3.0F, new Item.Settings().group(ItemGroup.TOOLS))); + public static ToolItem TERMINITE_HOE = registerTool("terminite_hoe", new EndHoe(EndToolMaterial.TERMINITE, -3, 0.0F, new Item.Settings().group(ItemGroup.TOOLS))); protected static Item registerItem(String name, Item item) { if (item != Items.AIR) { @@ -29,6 +57,14 @@ public class ItemRegistry { } return item; } + + protected static ToolItem registerTool(String name, ToolItem item) { + if (item != Items.AIR) { + Registry.register(Registry.ITEM, BetterEnd.getResId(name), item); + MOD_ITEMS.add(item); + } + return item; + } public static void register() {} diff --git a/src/main/resources/assets/betterend/lang/en_us.json b/src/main/resources/assets/betterend/lang/en_us.json index d0091ed9..3f3cd060 100644 --- a/src/main/resources/assets/betterend/lang/en_us.json +++ b/src/main/resources/assets/betterend/lang/en_us.json @@ -13,6 +13,24 @@ "item.betterend.ender_dust": "Ender Dust", "item.betterend.terminite_ingot": "Terminite Ingot", "item.betterend.aeternium_ingot": "Aeternium Ingot", + "item.betterend.terminite_helmet": "Terminite Helmet", + "item.betterend.terminite_chestplate": "Terminite Chestplate", + "item.betterend.terminite_leggings": "Terminite Leggings", + "item.betterend.terminite_boots": "Terminite Boots", + "item.betterend.terminite_shovel": "Terminite Shovel", + "item.betterend.terminite_sword": "Terminite Sword", + "item.betterend.terminite_pickaxe": "Terminite Pickaxe", + "item.betterend.terminite_axe": "Terminite Axe", + "item.betterend.terminite_hoe": "Terminite Hoe", + "item.betterend.aeternium_helmet": "Aeternium Helmet", + "item.betterend.aeternium_chestplate": "Aeternium Chestplate", + "item.betterend.aeternium_leggings": "Aeternium Leggings", + "item.betterend.aeternium_boots": "Aeternium Boots", + "item.betterend.aeternium_shovel": "Aeternium Shovel", + "item.betterend.aeternium_sword": "Aeternium Sword", + "item.betterend.aeternium_pickaxe": "Aeternium Pickaxe", + "item.betterend.aeternium_axe": "Aeternium Axe", + "item.betterend.aeternium_hoe": "Aeternium Hoe", "block.betterend.mossy_glowshroom_sapling": "Mossy Glowshroom Sapling", "block.betterend.mossy_glowshroom_cap": "Mossy Glowshroom Cap", diff --git a/src/main/resources/assets/betterend/lang/ru_ru.json b/src/main/resources/assets/betterend/lang/ru_ru.json index f67be4be..7e7eb115 100644 --- a/src/main/resources/assets/betterend/lang/ru_ru.json +++ b/src/main/resources/assets/betterend/lang/ru_ru.json @@ -11,8 +11,26 @@ "block.betterend.end_stone_smelter": "Плавильня из камня Края", "item.betterend.ender_dust": "Пыль Края", - "item.betterend.terminite_ingot": "Терминитовый слиток", + "item.betterend.terminite_ingot": "Слиток Терминита", "item.betterend.aeternium_ingot": "Этериевый слиток", + "item.betterend.terminite_helmet": "Шлем из Терминита", + "item.betterend.terminite_chestplate": "Кираса из Терминита", + "item.betterend.terminite_leggings": "Поножи из Терминита", + "item.betterend.terminite_boots": "Сапоги из Терминита", + "item.betterend.terminite_shovel": "Лопата из Терминита", + "item.betterend.terminite_sword": "Меч из Терминита", + "item.betterend.terminite_pickaxe": "Кирка из Терминита", + "item.betterend.terminite_axe": "Топор из Терминита", + "item.betterend.terminite_hoe": "Мотыга из Терминита", + "item.betterend.aeternium_helmet": "Этериевый Шлем", + "item.betterend.aeternium_chestplate": "Этериевая Кираса", + "item.betterend.aeternium_leggings": "Этериевые Поножи", + "item.betterend.aeternium_boots": "Этериевые Сапоги", + "item.betterend.aeternium_shovel": "Этериевая Лопата", + "item.betterend.aeternium_sword": "Этериевый Меч", + "item.betterend.aeternium_pickaxe": "Этериевая Кирка", + "item.betterend.aeternium_axe": "Этериевый Топор", + "item.betterend.aeternium_hoe": "Этериевая Мотыга", "block.betterend.mossy_glowshroom_sapling": "Саженец мшистого светогриба", "block.betterend.mossy_glowshroom_cap": "Шляпка мшистого светогриба", diff --git a/src/main/resources/assets/betterend/models/item/aeternium_boots.json b/src/main/resources/assets/betterend/models/item/aeternium_boots.json new file mode 100644 index 00000000..3b37ac91 --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/aeternium_boots.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/aeternium_boots" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/aeternium_chestplate.json b/src/main/resources/assets/betterend/models/item/aeternium_chestplate.json new file mode 100644 index 00000000..f9935ff5 --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/aeternium_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/aeternium_chestplate" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/aeternium_helmet.json b/src/main/resources/assets/betterend/models/item/aeternium_helmet.json new file mode 100644 index 00000000..fa02fa89 --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/aeternium_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/aeternium_helmet" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/aeternium_leggings.json b/src/main/resources/assets/betterend/models/item/aeternium_leggings.json new file mode 100644 index 00000000..697c0a8d --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/aeternium_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/aeternium_leggings" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/terminite_axe.json b/src/main/resources/assets/betterend/models/item/terminite_axe.json new file mode 100644 index 00000000..f9f00a57 --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/terminite_axe.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/terminite_axe" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/terminite_boots.json b/src/main/resources/assets/betterend/models/item/terminite_boots.json new file mode 100644 index 00000000..9edb943b --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/terminite_boots.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/terminite_boots" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/terminite_chestplate.json b/src/main/resources/assets/betterend/models/item/terminite_chestplate.json new file mode 100644 index 00000000..2ed53231 --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/terminite_chestplate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/terminite_chestplate" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/terminite_helmet.json b/src/main/resources/assets/betterend/models/item/terminite_helmet.json new file mode 100644 index 00000000..42a9f7b9 --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/terminite_helmet.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/terminite_helmet" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/terminite_hoe.json b/src/main/resources/assets/betterend/models/item/terminite_hoe.json new file mode 100644 index 00000000..819b7864 --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/terminite_hoe.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/terminite_hoe" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/terminite_leggings.json b/src/main/resources/assets/betterend/models/item/terminite_leggings.json new file mode 100644 index 00000000..3eeace78 --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/terminite_leggings.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/terminite_leggings" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/terminite_pickaxe.json b/src/main/resources/assets/betterend/models/item/terminite_pickaxe.json new file mode 100644 index 00000000..c994eb9e --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/terminite_pickaxe.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/terminite_pickaxe" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/terminite_shovel.json b/src/main/resources/assets/betterend/models/item/terminite_shovel.json new file mode 100644 index 00000000..ebc6e16d --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/terminite_shovel.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/terminite_shovel" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/models/item/terminite_sword.json b/src/main/resources/assets/betterend/models/item/terminite_sword.json new file mode 100644 index 00000000..9e065aae --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/terminite_sword.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "betterend:item/terminite_sword" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/betterend/textures/item/aeternium_boots.png b/src/main/resources/assets/betterend/textures/item/aeternium_boots.png new file mode 100644 index 0000000000000000000000000000000000000000..b7f5543f8f94ba3dc70d1c72e90a1b0b2f51e1a5 GIT binary patch literal 539 zcmV+$0_6RPP)ZTi9CUA%|qJnwnoUqljKp&*Kfk@VN1vqM39 zI{y&9Ep@I6_hPS8oP6s zHbJtV+?vnp#I>thTB+;Vt2w!JT03{SV@I{TQrFCz*E)aWy4pHAM34m_wW}sEe0hKi zw{8-qT5z^EC7t#e9vNY6b&X2zX(sMfan5VD@PdH!p+GaUvwAQ&A(!!Y4LZwR8lRq4 z_3^k|ON-784wA{`nhm^P=k2j7UdC^F-q)=y?oT}>-rNR>zMdW?M@O4~VS8f(%eGQE zbp{e)`?l0~vWGCA2j{q0sqk%my&2G1?$VQokC^|sNc~G4C3^%lVqVTKAVJ@ye!Sln zYyd$NYG7!H?|v)Gi|_d~_mh9)vu?UD&-{Zr?6f|NpfJ{^rXM5SK z)xc7?=Pyu_phm+0ER~W;MCCF*M$HnaeTF2lpB_;tGHH?VMJBE8EBzc4b572A!gIoz d4s81W@&h7V)ribDK6?NF002ovPDHLkV1jC^_Xq$0 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/item/aeternium_chestplate.png b/src/main/resources/assets/betterend/textures/item/aeternium_chestplate.png new file mode 100644 index 0000000000000000000000000000000000000000..ca84dd076fdcdd094cde938d5237cbfbc1271741 GIT binary patch literal 689 zcmV;i0#5yjP)j#d_YqTg5%L1% z(XIMn=nX-Ip6;i4CgcBynpI!l4Gs}i=(uqci9{5@0Wgk*x4uDYF2z7<28T1(kGJ76Iy_9swo5LA zs;X37S8|z*?mynfskS!e7Zzx!u3>i~!Q}K5#`o!Y-B17HC*11nl-t*@YbKo*3&3(L zu_9rxZH^plAKLyRxXGyZLk#IGe*)>Z*wX>oyYd4$YHCcpJRAu9<0wo&|*--L6@ z%)|t0On$%;63xx5IyOcCOTcK!#$v7=M+H!nKx3o0SrsEMJb*{-cnw64FUMT=~gMJOTEE>MC*4e2ikgo-{Ewp295G%}*{ zBQ*xi@uRNZnLBgu`<@o#*TPoyz}Xylew_211OF%iP*uF9Cbi-~5M9gt-O$pglq{Jj zmcaMRfa&yn;q!>L>_?i44$9oc2^g*EoUk02Kd(T ze0Uf?2>86T$j60w`Ud)0UR~k+_~hYA2>_Ey-J716;L?SQ6xC5F5QhbFd%NVew+O-_ zVIjnZCEm@=F+TE^s8|H&?i&Dcj%zpCWuUj0;%b&`Hp|uP?JTZ*XKrbM2c4a`$T2cH z%J_?y#2`ilfHJ`IWav>J04qD2JnZSA^lOK2OUrELHi>P_)4_g9VF7gxb&g~@Er%Hx z&!EXPs>)te00nXIZ0O1UqJkAv-w@l zU%AZs{JdsAeSs)qVRBN>wY6dM0jQ!;>12RG0Oe~ci4j3<%#WE_Kv8q>`2wZrWPn}U z5T-wni7ld#u;o(;LcNz_eRTyVloLHJRXwb9Z7o$b)hd|`q*ACV7z4&Atu0^#M9TgD Zp+CGPHsdM{s0RQ5002ovPDHLkV1kK#FDL*2 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/item/aeternium_leggings.png b/src/main/resources/assets/betterend/textures/item/aeternium_leggings.png new file mode 100644 index 0000000000000000000000000000000000000000..32868956b26400adc7ff62815a5d257c0aec7e8e GIT binary patch literal 503 zcmV-UwI18B9W zOFX`Ck=*1YsU0cyrgu@PRXLi;QVoBC?*?!H@yN1TDpOfq;rzsDieX4H2-w!!N4?RY zQvMFs34n1X8!_Atw(A{aNc zqdooodhl#k`^QFPdU`f*N~F^|FgB`v!^4i>m0-n2Jer#$Hksdd*ZD3_I|F`^it?TV-T727LilUl&x>J4R+8iA>){*nd=^02a4PN)gfTC`?H9BgjiG3?5 zs_w9z=@0wU59`Ry$DrvNI9AMi1Wi$G?L`lwAso^M&e~3bId}LdL)&J8*$_{Iw3oz# zcK4`{*N^sQ(C84-Os0J`-B#2IK^}*YF6MJipcfNNiB~7<=rPC8B}h1wU^*g$bbops zopgOn$73>!cuAlYEyl}06Ql=d0q_b36pj~J!0SNPMUAff7-G#gExj+bwqlFiC78i5 z^mL9Z6bi9|7<2tB$7`C#0f7?)mLS+*#0g=Mb%NGeh7=BvZ+oHbI&{Pc4R<(9FhptD zg}hg#b%IKmNWi!v^f*2SB9}@)6IF5Eu%9a#HxY+(IFFq$AXvVN^#ovzxLS4%!$H4%iJTZkK#fXs^yG9w=5`f%V5`v`Y#Au?MdZ#+HeV;H)A#&vVE ziCQ-+nNB97#HjSW8*ImP3&DMJ_TUr@ae@(m09c@~f{@|kI{8cT{Xox*O{80{pNGU}I}fv%^PDV0S0kw>-JI(a!$h4}Qjt#U zJx&lp2jQMnf+23lY}?easF^&1fYmI3SVfRj)&Q!^VpHU0h%K3~ctQ53Tr?adH`-sW zbJInHKjT1s{)Y(#uP;h#zh=g;jEfRe4Dfy%*|zuRGEZP(?mn# zWra0y++sCJ5?D=DEEZ~(id3i}EDBLUU$H#P(n0(SNG^j)!>obX$|`5Co?kRCNk~yG zjYTrgvj9n$H7t@)4I7fCD4L;ad>a?_3ZW>s;WfETEQulp8jBS*&RVKuu_^+XRYYW9 zORy|MGv;uWSj!T*g?%Y?gWhdNzKv8=tjC+HdgxLE=nzGXonTN@(b!}vkL`Ife_b)I z>@N&rLb^bim#qh`6&9e6JF=uouBVf@Yv~W*mW9<{U)`2v%~3yp=lxIhmEfR3=wvaO z6&w@!Q_5*MHQc|mR(dz*3p@)apY>>2ohRg`I+3tLsC_bTmY;PK6jjsElj_K*&!EdQ zGwrpj#%{5w*4EaiZg}hX(=XJ`oca0L$LUkl?jH|6`ud9Bj%@$flM}U*&F|OIL)-rT zzGm|6KW_e^Y2e`JU0+;2d#O-2eZ;RDY3LpQ>GqYvQapD4(-!a4xdV^Ef#Ss-9q7-s zr^WGK-#gIQ_~p{Zeay>^r}w-$K#e}}+)Fj|@|~|<{HtEObnMA@ z8kan@X@&aX2QA;F_jXTFyASPocWQfm^3L%K-|Pq9dcSAQL!-;y=zopge?DJiwsFOY zT_^J67hW9l>!%jcV_#9ZiOn^QwGU3f&+dMuWs>U4eFUgg$L`pQ?~hv04zbR_W%F@ literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/item/terminite_boots.png b/src/main/resources/assets/betterend/textures/item/terminite_boots.png new file mode 100644 index 0000000000000000000000000000000000000000..5626388566ea682360d03d139e9b8fec533f2a43 GIT binary patch literal 338 zcmV-Y0j>UtP)8G$C4=gcwt3XJhB%SPB+mVc}Ew3ffq&h1M1#Hb&7!qL8qVK#bXqjln`x z$g#L#f9~c5bYNiaxpU^8IT!wXI60(I6HH9~GBWp#st|x+@RsK!=8ifhk!8uU$(ZWBBY`gFo!?#;Q(X)3cFh1LYITM`@Vu(k@4k$U36*N+o>aMzs@!I0B2{($RdLbfb|<+3Oh klHA#v=>f%gW%7T-FS03lUm(pv!2kdN07*qoM6N<$g3ExEm;e9( literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/item/terminite_chestplate.png b/src/main/resources/assets/betterend/textures/item/terminite_chestplate.png new file mode 100644 index 0000000000000000000000000000000000000000..e88fb9e14ada451519d96d51e17c2f2b58efb0e9 GIT binary patch literal 561 zcmV-10?z%3P)NG%mh-nYfQGxMZ&^@V$R@80wMp6@y5!vBCIBtchFbS34!8|RJt zbV6>~|EK_6NlnbnYGQ6yq?00@+?^$zP^nhY<5%M%6<1xL1;BK7sx0s3&hMqm13>T=)2c-Me6`ye#w%*1}hBS zxC)Xbrs6{Iq)=eGR<^!2H|qSlK**(w7cde>I$|gkx$9SKkl<;dfLEd7!&D`N!DK6o(poczQ4X6)8&;RnV!kg1n_BHPF4 z?9SM%b^@m9V1L~5SJyOf=Oz-o|1{HV<=%Y^^c(_2apWG_+%~2& z27chCu)0S6(F4XVUqiB^${p)-*&uYyC@%XDy6zo441VAo0PJZ4A@b+R^<*MMi{kPk zR4VXts_A_DmvaEH`4igPV9CexeK>G1@`wbLGOVssC+?m?6zy$d=s4``GO!uC9zjMBudtlrV`8AtLiofvmeCaiGKU^S{l&hO-mf{J@%?1yZGTG+> zmxV_-JOQh(F%vpGFMCI6I%b!0vq8tQuv8yYDR6Aq+JwoN3?tE?K)zK&BEnQB#=BA& z^%_s@CO8TlHzceZ2xQA8vPFa4?H%rm2AS#$x%~sM`k=ZXdVzp}kbA3;OP@lk&8?C5 z)de`efQ_|~K{UXF`7ziZpXnWyGok>1X+oq0DIZ>6jevkB;JR>^5o{Y~ zr=eT_=LtO<;xnKW;Q6!UdOm2oAiA19NQ-j<0`irw3_7up_-+B!#t#?x#v%B(SXuu2 bY;5rf;8K)H2X}Wn00000NkvXXu0mjf@Exh+ literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/item/terminite_hoe.png b/src/main/resources/assets/betterend/textures/item/terminite_hoe.png new file mode 100644 index 0000000000000000000000000000000000000000..897311498f75edaf2040e07994322703d63df434 GIT binary patch literal 289 zcmV++0p9+JP)SU?xkLEFc6okWzP{?!X;bn^Fm+)6(gZb|518DMLC> z8h_ClMZvFo_r811x$nV=n6!o@%-xOF?`k++9Zc%zoG{Qs@~%oe)OD{b!a#%pl8{!q z=`vveAb_hzoeOK3G+RWo39e)5JSXN5f#pWF_Q>D&7ko_d20h-A-)w>T8*G&DeJDE6 ze}PfFUtq!gZ9%SM>3m);N`_IK8h(SQnpgX&EU%Q)u72iUMAf`p$MQP00000NkvXXu0mjff*64N literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/item/terminite_leggings.png b/src/main/resources/assets/betterend/textures/item/terminite_leggings.png new file mode 100644 index 0000000000000000000000000000000000000000..64ea6030f2fb34d592e57ffb50daed14e40ffd42 GIT binary patch literal 356 zcmV-q0h|7bP)k)fk}t5W>zYK{vBvD*XzSuW@t>naz&0B4OW*b0Ng!2q6Cg_ zTLA30E@Af&(jjEp+(HAw$;~wg_)(YhPJj~lMnDT7hN1+3b`;@9U6M5AK913&0$pBR z21wpCg8&fRnghVv&K61pp2M;MrYI3)(7QENYGcpaclRe*i$c-z#=&R_jA&0tNZ65|k#dcQle$3jf;7StWR#hup3eGS-243&{)K z)rEanTJX+J$5Bf!aemg6zJKQVxfydl`?9~l#Nr3i`id0KT!oDQ000035C=v}r%?mFK7G0Cwb^Zs-R7nq%y9`Ajp6Cjr+0u zMsRNM0Wh%4#9%V{;wKY74E$u2@FEyvVn8Fl1!G`|iUt#d1T+YoPw$Ok#W`(=uuSj(%=YDlLsE6 zsIXyXHu@XW&#TBTM4@hLI9e(=1Wi$G9VG{%E!d|uoHeZ^^T*+13~lO3W`!Ph#)eUtZ)l<_VcS$Da z`;N+S#bPm96r;AA<#z!C)O4O>1ev6k0bXGmcWxu)ZrwnYbwP_qa9Btx85 zLnt^6TFa}Yi6o3GL5Jg`APA`f)KLTH47&M>xQ;lS#|3Qp9>MYrtdp~S+soN^pl-ar zO@O2}oo;B%>ZMRr+=e49qeCCgjnt89*lq!mXw3r5V$QL$4Bg0~+GXc$mq-#{VnsilR{Jc^ zhZe$psU$-Jj+&;fA|L@plQlM$5P243$zU}sE3B*_pdj zgyWW~jwMmVKw+_*h_Ob3uq6<{tSll88-ihIidJV^=bB`Z!Te0tz?DuI4I?hdm~^gz zf}HY_&L)EFLI{DZ@HnBMSkTJ1l=BtDN+(W@<$H85Kn<<0ilP4kk37NK^@r=fen zOV3hNi0(^uW)h#H>*aDs)8nIWYz_lKIB`#>ws(KH{Qi3#BV&g`k!9D)`?9Au{e9`m zs+0eGcd%t-dwKD)5g9T&FC5E8{(Rs-|f0CuXU-?;lYfm@W{@UfqvFYEM!~1?* z(K6L>eaAU!qIuK#n^!JIetGrh@&^|`5L#PuZ}g_EsyN~ z8aS`-*?FW%8eQ^k2%N{!tLHxM-wkhGeIg>ie50jh>XjQ@W@6oe5Pb@~Jv|csbbP>D zdh*Cw^?I28A#x@nK7IJ$Thp6g;H{>%Qz<^*6Q>?Lo;@QTT0woa_muHi)A8}Um!By0 zd~sK7*+k*!rC(RIzN1IR*`KJLyW&eG`N)@VUI>Z1zu60^4=HNb!{1J?o?3Y=_y+fN LuT4#@*|g(d7!aOL literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/item/terminite_shovel.png b/src/main/resources/assets/betterend/textures/item/terminite_shovel.png new file mode 100644 index 0000000000000000000000000000000000000000..02ef83ed5bb50254af04e9d37e5855bfde0f9ffe GIT binary patch literal 1824 zcmbVNUufKP9FHrz*>zLF3bhJ`jLEdio51uPC8dSE|*`D z&+qg3eE;No)BSyCjvj75Oc2D;-h?)Q&(8$MlOg>3(t{m?%0`jv$}ZQP#9#)W(+!6loeUYABLqlTIAv z%*2F?1}FMbaAE{12G#W%*;!ICK>_)IEEV#Wrc-=T z1aNAT$%e+BUJ8YVgy;8+;V^0m*%R%h#vQ~AAkQ9kA?g{!Hjf3-IBMKQz_;C$ZRhKS z>aSZS~o9v9c7|$fO##^R|nHu{)vSBAHZs zEzbuQM7>&!!eNI^(@-Ihc_>8tKdPK4LOGgIXee3mGThqP>1sMYHT!mm<#~N*aph8a&uH=DoTeJ*tTt;x%i^P^gO`jedt*S?ruzxCti={u+1RFAx0 zE+5H$C%h*S+IH6QPOqL!U0L~4>YR1jO6BS8BHOB;SXf#l+~%cU$$RO+=7ZGP2V1|L zYqJv9rdqcS{jg&M;Y zH*PgufByb~d?@|>%%Q7oKcjFclb-)*xGAwZv)0n?{*->|eCSFG@v=F;zOmMEJNOUl M?dj7#JC(lpHzb`~TmS$7 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/item/terminite_sword.png b/src/main/resources/assets/betterend/textures/item/terminite_sword.png new file mode 100644 index 0000000000000000000000000000000000000000..857c6b3119641e13ab52ea66e748878f40c4e638 GIT binary patch literal 2116 zcmbVNTWB0r7@jntX=?(OwDbbD)2T>HJv(Ra7qd;%-Do1+7}CY2BG@x$&g>4|of&5) z*-c-%C!*mY~W=HAu!Q@!AlAgEzK8xsObuf4^VweYdlB10|`Nl?u z>Fjj#WARvSpNai)3faCzQq^)m(G1huR}Bz8Ok&m|1=mY+ccwq)Sl3Q-2b3Jl1sPIw z2akkg|B>N5K5`fvHrKbC?X8-WpiE-KR?8(XGOKB>&TG{xDu z&G;c>P9ml3!`!@X=ePAA5z0qom5wm%b7!7 z6eAClp=_F?Zl_$=Hf>9Sl7eO6sEQ0EA`8IMp$Y_BF=Pj0)e`Nw{aGK6C&^9rH|pH> zG3B^tRS+D@B9x6_%K(BVivY_vs4NWsF-4J^Dq*o|KqYW43(j;O*6)8Y~Ds6BiTR?}@1<{ry2PqO!bhKP9 zo5+$xpaF=cE5OlZ2k00Qph?&wj_5d+Va?;JD{Q#SFCCY9XPJX;5~s+9 z{qlOCA#0xcg}eBFs&57d7m-&Wbnft6;!i!Njnwe}&RYH5ys!BjoQ{ZO*_uuCrZwG& zN2x<3{cP>}x6HX?ujbqLoSb?3UF%l#+m4y()jdNJ zbMV4jryrU5{*SJoy04tx^zgpd+AhgG>sQ{DPi?HN`{4NOE6=e{N`nu*-R6DO)iwR+ zr|Z^!cl`E>^ZJV)s_ip3-|70Sc(q)+*wH?7V?)=~$;(v*cW_hNR^2&t^Ej%#e)-nX z$<@PCo8If#bY-f>eDl~BZ7<(oPB@*JZBu{!@Fx86#AsV5H@0Huq4z(keX@7!mSFSO zx8bu#@4mG5*Y%gKT|c$qX6=_Vv*-7;?>c#5ozXkO^lxC?OKru3h8Z|>@tJ*JraF>2 OKQu6$J-7GJ3;zHb2dy{& literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/minecraft/textures/models/armor/aeternium_layer_1.png b/src/main/resources/assets/minecraft/textures/models/armor/aeternium_layer_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a2d59127e006330b1154f3440a1471b49906ea1f GIT binary patch literal 2685 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/minecraft/textures/models/armor/terminite_layer_2.png b/src/main/resources/assets/minecraft/textures/models/armor/terminite_layer_2.png new file mode 100644 index 0000000000000000000000000000000000000000..40136116c17aef28a033009954b195fb9ef9e305 GIT binary patch literal 711 zcmV;&0yzDNP)QiZ_fT9}C^)l`QBa7`YGBC*W&pAB< zqKF&A6@vOSL=qf93%Gu<0&)|SqWXP~5pPi2N1P0IZYn>X>b14Frz5E=E%Fd;f&$+g zqPDgIfPY5c7`1R-`#}2&O>DW#j%2*wj_1zrGrN3}_ImxktJiF`GpmFex2ag$>7$;Z^L1`Oce0GMVjrH`$g2fO-zU^P1O4ldsToWvYT@#*=painGLk|Se*TjKj7ry*~_lZfIr}@8VLgT&1e7s002ovPDHLkV1kflQaS(t literal 0 HcmV?d00001 From 26b95bb250d19f89db006c46bb2357d6921fe1ca Mon Sep 17 00:00:00 2001 From: Aleksey Date: Thu, 1 Oct 2020 17:57:52 +0300 Subject: [PATCH 2/2] Update armor_models.psd --- psd/armor_models.psd | Bin 41294 -> 39260 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/psd/armor_models.psd b/psd/armor_models.psd index ebdb817c18791355dcae0f15195a1be5bdb4c83e..9261dca5983940ebba24cebfd9118e8dff960e4a 100644 GIT binary patch delta 1927 zcmb`Fdu&r>7{*Umw*XEG5gp)=c6M~@g|6%Ev|TT!Yqy@Zr?<6T*WJ1ux{YmJ$LJVr zt;cN)WMgyg$XvuYKt)A`Kt<0 z`<(CO{PLZCH{-&wjB(}?^Ej+WvD@+?h#YsUII78_XG*0?2~47NB(35P(ML1bGI9azPQ?P%I6K8exe7j_b0%$ox-9lCelac4lYa{6c?rhm=Mq ze?SmgZoF83n7*3Mfgp$mS_hg5`fUhW2_E#@M(I;;lx&GE~;ZIjlP!3U5`*N2^(tNP- zJZ?Ym{T3DR)=QsxmkMmJzBw`Rayutlf*MHb{kLj3^vF#$iZRV%*Qy1}?OE(_9 ze(y6+9a8YWe>wNsjS~qL`VHfmr(VBGLG$F)h2H6k zXXTpx_|)$`$M;R{oDEHfz6!tc_4Kjhmv^z3fxl)yN}Yq?_2MX1kK4aXz9m_7OQ`VHz*1*A zptu=WOfp@WagM7#b-1Jj*lXg?R@gF9$2|SlF{72)aiLd~PJQ{O9UrYkQkFD3Wiee@ z@#{Wr3E2>3u3ZeJ>rUv_;z2xUO|r;9l=XjQNL}~p%q$2Lxi88j7AShDMP@ij0inFI zOPLbv7_3bSibE3u!6+>^@;OME%3rBe*vmPrGZaJ1>yQ~XcE~-%Hq6>tTnH>7ZzGBg zZMUj+k87lZ;WA)ZJ3|KPrcFxQrmhOOf1n&#*vN>~&>_dLO@kIoJJFVm$)!DrRWxXl zbV&5tCJ_oOb4X~@?<^9Qw)PiFbA!S&6bB7&)S^leBH%Tt#9lv3V-Rprn~1O16{_y# zt_FKO7tHwyier|PBl%#@<0+)Mck$NC5`%~`F>`<*dZnUEohxODnVBbI1NuZIHBaTN z>=PL|djlKt*@1ib;k!92r`y{(YXho8a=30yGau>AS(WSe3s+=&@|V?e`TR!Ts??B? z!&+C+;4fIlU@T`W&c1`;3#bb6Ru?45{ZSTROI6WI-6^E?b9=CquuXbBDPebb{D7^) z?KWaKUe(!Rvj;p%d6F93W2hMzaJ22-QD57qRRBvXk5pEZlem3qugy5tTLG-P=vKEO zM%eNGe%v@bQVFbvsYzo+pQ*N<7_X^{5Zzwj*_^vve*IWg={CLFy+xO_@IhCrb6l%& zc0H)D%C{N-+otW?gF&+zQ@~-=*wTqq*Ew9lS~YCLWT*&{gFWs7b2vdUaYthV=69N9 zu-V8j(3w1Qdl~|Bvj>NE4jGXIA@SUpqaPg~HmBK&hfUSxFGNDZ;*d}mP8d;F49kUu!Dbz|patQzs?^%&SYIrbh1+%cti1c!`8H>igbUm z_0kYmill#T0!;}s>2#!p#pwlX?QT!0sjlAJ(PXvORw!iP-z{)YX%#_WExU(mt9!LD zur%;yPu0U@optgtn_+ZYl5I`2$Av`i$LeB4W7+VC2Uzt}dkoI4#_HPGSQTI!NyaR; z9S)y%v{JtnaXBIycQQs`P4=;p5(i+5io5lIE#6NAa8zZ5tTBmPlUB zqFrS^WY0s1zpZ}& DARqPt delta 4127 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