From b859c72096e63df809c6f9b50caba6d6e9628103 Mon Sep 17 00:00:00 2001 From: Vos Date: Sun, 9 Nov 2025 16:54:44 -0600 Subject: [PATCH] Prisma Steel Armor --- .../models/item/prisma_steel_boots.json | 68 ++++++++++++++++ .../prisma_steel_boots_amethyst_trim.json | 7 ++ .../item/prisma_steel_boots_copper_trim.json | 7 ++ .../item/prisma_steel_boots_diamond_trim.json | 7 ++ .../item/prisma_steel_boots_emerald_trim.json | 7 ++ .../item/prisma_steel_boots_gold_trim.json | 7 ++ .../item/prisma_steel_boots_iron_trim.json | 7 ++ .../item/prisma_steel_boots_lapis_trim.json | 7 ++ .../prisma_steel_boots_netherite_trim.json | 7 ++ .../item/prisma_steel_boots_quartz_trim.json | 7 ++ .../prisma_steel_boots_redstone_trim.json | 7 ++ .../models/item/prisma_steel_chestplate.json | 68 ++++++++++++++++ ...prisma_steel_chestplate_amethyst_trim.json | 7 ++ .../prisma_steel_chestplate_copper_trim.json | 7 ++ .../prisma_steel_chestplate_diamond_trim.json | 7 ++ .../prisma_steel_chestplate_emerald_trim.json | 7 ++ .../prisma_steel_chestplate_gold_trim.json | 7 ++ .../prisma_steel_chestplate_iron_trim.json | 7 ++ .../prisma_steel_chestplate_lapis_trim.json | 7 ++ ...risma_steel_chestplate_netherite_trim.json | 7 ++ .../prisma_steel_chestplate_quartz_trim.json | 7 ++ ...prisma_steel_chestplate_redstone_trim.json | 7 ++ .../models/item/prisma_steel_helmet.json | 68 ++++++++++++++++ .../prisma_steel_helmet_amethyst_trim.json | 7 ++ .../item/prisma_steel_helmet_copper_trim.json | 7 ++ .../prisma_steel_helmet_diamond_trim.json | 7 ++ .../prisma_steel_helmet_emerald_trim.json | 7 ++ .../item/prisma_steel_helmet_gold_trim.json | 7 ++ .../item/prisma_steel_helmet_iron_trim.json | 7 ++ .../item/prisma_steel_helmet_lapis_trim.json | 7 ++ .../prisma_steel_helmet_netherite_trim.json | 7 ++ .../item/prisma_steel_helmet_quartz_trim.json | 7 ++ .../prisma_steel_helmet_redstone_trim.json | 7 ++ .../models/item/prisma_steel_leggings.json | 68 ++++++++++++++++ .../prisma_steel_leggings_amethyst_trim.json | 7 ++ .../prisma_steel_leggings_copper_trim.json | 7 ++ .../prisma_steel_leggings_diamond_trim.json | 7 ++ .../prisma_steel_leggings_emerald_trim.json | 7 ++ .../item/prisma_steel_leggings_gold_trim.json | 7 ++ .../item/prisma_steel_leggings_iron_trim.json | 7 ++ .../prisma_steel_leggings_lapis_trim.json | 7 ++ .../prisma_steel_leggings_netherite_trim.json | 7 ++ .../prisma_steel_leggings_quartz_trim.json | 7 ++ .../prisma_steel_leggings_redstone_trim.json | 7 ++ .../acesbs/loot_table/blocks/entropy_ore.json | 47 +++++++++-- .../minecraft/tags/item/trimmable_armor.json | 8 ++ .../com/acethewildfire/acesbs/AcesBS.java | 3 + .../acesbs/datagen/ModItemTagProvider.java | 6 +- .../acesbs/datagen/ModLootTableProvider.java | 21 ++--- .../acesbs/datagen/ModModelProvider.java | 6 ++ .../acesbs/item/ModArmorMaterials.java | 34 ++++++++ .../acesbs/item/ModItemGroups.java | 6 ++ .../acethewildfire/acesbs/item/ModItems.java | 16 ++++ .../acesbs/item/custom/HammerItem.java | 32 -------- .../acesbs/util/UpdateRecipies.java | 77 ++++++++++++++++++ .../resources/assets/acesbs/lang/en_us.json | 5 ++ .../textures/item/prisma_steel_boots.png | Bin 0 -> 4441 bytes .../textures/item/prisma_steel_chestplate.png | Bin 0 -> 4612 bytes .../textures/item/prisma_steel_helmet.png | Bin 0 -> 4409 bytes .../textures/item/prisma_steel_leggings.png | Bin 0 -> 4464 bytes .../models/armor/prisma_steel_layer_1.png | Bin 0 -> 6054 bytes .../models/armor/prisma_steel_layer_2.png | Bin 0 -> 5012 bytes 62 files changed, 763 insertions(+), 50 deletions(-) create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_boots.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_boots_amethyst_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_boots_copper_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_boots_diamond_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_boots_emerald_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_boots_gold_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_boots_iron_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_boots_lapis_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_boots_netherite_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_boots_quartz_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_boots_redstone_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_amethyst_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_copper_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_diamond_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_emerald_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_gold_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_iron_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_lapis_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_netherite_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_quartz_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_redstone_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_helmet.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_amethyst_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_copper_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_diamond_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_emerald_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_gold_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_iron_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_lapis_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_netherite_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_quartz_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_redstone_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_leggings.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_amethyst_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_copper_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_diamond_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_emerald_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_gold_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_iron_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_lapis_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_netherite_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_quartz_trim.json create mode 100644 src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_redstone_trim.json create mode 100644 src/main/generated/data/minecraft/tags/item/trimmable_armor.json create mode 100644 src/main/java/com/acethewildfire/acesbs/item/ModArmorMaterials.java create mode 100644 src/main/java/com/acethewildfire/acesbs/util/UpdateRecipies.java create mode 100644 src/main/resources/assets/acesbs/textures/item/prisma_steel_boots.png create mode 100644 src/main/resources/assets/acesbs/textures/item/prisma_steel_chestplate.png create mode 100644 src/main/resources/assets/acesbs/textures/item/prisma_steel_helmet.png create mode 100644 src/main/resources/assets/acesbs/textures/item/prisma_steel_leggings.png create mode 100644 src/main/resources/assets/acesbs/textures/models/armor/prisma_steel_layer_1.png create mode 100644 src/main/resources/assets/acesbs/textures/models/armor/prisma_steel_layer_2.png diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_boots.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots.json new file mode 100644 index 0000000..dbe4013 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots.json @@ -0,0 +1,68 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "acesbs:item/prisma_steel_boots_quartz_trim", + "predicate": { + "trim_type": 0.1 + } + }, + { + "model": "acesbs:item/prisma_steel_boots_iron_trim", + "predicate": { + "trim_type": 0.2 + } + }, + { + "model": "acesbs:item/prisma_steel_boots_netherite_trim", + "predicate": { + "trim_type": 0.3 + } + }, + { + "model": "acesbs:item/prisma_steel_boots_redstone_trim", + "predicate": { + "trim_type": 0.4 + } + }, + { + "model": "acesbs:item/prisma_steel_boots_copper_trim", + "predicate": { + "trim_type": 0.5 + } + }, + { + "model": "acesbs:item/prisma_steel_boots_gold_trim", + "predicate": { + "trim_type": 0.6 + } + }, + { + "model": "acesbs:item/prisma_steel_boots_emerald_trim", + "predicate": { + "trim_type": 0.7 + } + }, + { + "model": "acesbs:item/prisma_steel_boots_diamond_trim", + "predicate": { + "trim_type": 0.8 + } + }, + { + "model": "acesbs:item/prisma_steel_boots_lapis_trim", + "predicate": { + "trim_type": 0.9 + } + }, + { + "model": "acesbs:item/prisma_steel_boots_amethyst_trim", + "predicate": { + "trim_type": 1.0 + } + } + ], + "textures": { + "layer0": "acesbs:item/prisma_steel_boots" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_amethyst_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_amethyst_trim.json new file mode 100644 index 0000000..9b4d418 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_amethyst_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_boots", + "layer1": "minecraft:trims/items/boots_trim_amethyst" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_copper_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_copper_trim.json new file mode 100644 index 0000000..f7b5378 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_copper_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_boots", + "layer1": "minecraft:trims/items/boots_trim_copper" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_diamond_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_diamond_trim.json new file mode 100644 index 0000000..317c986 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_diamond_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_boots", + "layer1": "minecraft:trims/items/boots_trim_diamond" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_emerald_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_emerald_trim.json new file mode 100644 index 0000000..18ab76e --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_emerald_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_boots", + "layer1": "minecraft:trims/items/boots_trim_emerald" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_gold_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_gold_trim.json new file mode 100644 index 0000000..f3d5e5f --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_gold_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_boots", + "layer1": "minecraft:trims/items/boots_trim_gold" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_iron_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_iron_trim.json new file mode 100644 index 0000000..9d1067c --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_iron_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_boots", + "layer1": "minecraft:trims/items/boots_trim_iron" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_lapis_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_lapis_trim.json new file mode 100644 index 0000000..4f54acd --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_lapis_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_boots", + "layer1": "minecraft:trims/items/boots_trim_lapis" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_netherite_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_netherite_trim.json new file mode 100644 index 0000000..a55fd76 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_netherite_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_boots", + "layer1": "minecraft:trims/items/boots_trim_netherite" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_quartz_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_quartz_trim.json new file mode 100644 index 0000000..b3eb55e --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_quartz_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_boots", + "layer1": "minecraft:trims/items/boots_trim_quartz" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_redstone_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_redstone_trim.json new file mode 100644 index 0000000..ce92e81 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_boots_redstone_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_boots", + "layer1": "minecraft:trims/items/boots_trim_redstone" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate.json new file mode 100644 index 0000000..28daec8 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate.json @@ -0,0 +1,68 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "acesbs:item/prisma_steel_chestplate_quartz_trim", + "predicate": { + "trim_type": 0.1 + } + }, + { + "model": "acesbs:item/prisma_steel_chestplate_iron_trim", + "predicate": { + "trim_type": 0.2 + } + }, + { + "model": "acesbs:item/prisma_steel_chestplate_netherite_trim", + "predicate": { + "trim_type": 0.3 + } + }, + { + "model": "acesbs:item/prisma_steel_chestplate_redstone_trim", + "predicate": { + "trim_type": 0.4 + } + }, + { + "model": "acesbs:item/prisma_steel_chestplate_copper_trim", + "predicate": { + "trim_type": 0.5 + } + }, + { + "model": "acesbs:item/prisma_steel_chestplate_gold_trim", + "predicate": { + "trim_type": 0.6 + } + }, + { + "model": "acesbs:item/prisma_steel_chestplate_emerald_trim", + "predicate": { + "trim_type": 0.7 + } + }, + { + "model": "acesbs:item/prisma_steel_chestplate_diamond_trim", + "predicate": { + "trim_type": 0.8 + } + }, + { + "model": "acesbs:item/prisma_steel_chestplate_lapis_trim", + "predicate": { + "trim_type": 0.9 + } + }, + { + "model": "acesbs:item/prisma_steel_chestplate_amethyst_trim", + "predicate": { + "trim_type": 1.0 + } + } + ], + "textures": { + "layer0": "acesbs:item/prisma_steel_chestplate" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_amethyst_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_amethyst_trim.json new file mode 100644 index 0000000..adb19e8 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_amethyst_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_chestplate", + "layer1": "minecraft:trims/items/chestplate_trim_amethyst" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_copper_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_copper_trim.json new file mode 100644 index 0000000..8ec68ed --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_copper_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_chestplate", + "layer1": "minecraft:trims/items/chestplate_trim_copper" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_diamond_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_diamond_trim.json new file mode 100644 index 0000000..4d9e411 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_diamond_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_chestplate", + "layer1": "minecraft:trims/items/chestplate_trim_diamond" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_emerald_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_emerald_trim.json new file mode 100644 index 0000000..35bed8b --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_emerald_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_chestplate", + "layer1": "minecraft:trims/items/chestplate_trim_emerald" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_gold_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_gold_trim.json new file mode 100644 index 0000000..1fb2637 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_gold_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_chestplate", + "layer1": "minecraft:trims/items/chestplate_trim_gold" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_iron_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_iron_trim.json new file mode 100644 index 0000000..dd8067b --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_iron_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_chestplate", + "layer1": "minecraft:trims/items/chestplate_trim_iron" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_lapis_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_lapis_trim.json new file mode 100644 index 0000000..848a714 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_lapis_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_chestplate", + "layer1": "minecraft:trims/items/chestplate_trim_lapis" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_netherite_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_netherite_trim.json new file mode 100644 index 0000000..7627167 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_netherite_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_chestplate", + "layer1": "minecraft:trims/items/chestplate_trim_netherite" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_quartz_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_quartz_trim.json new file mode 100644 index 0000000..966a631 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_quartz_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_chestplate", + "layer1": "minecraft:trims/items/chestplate_trim_quartz" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_redstone_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_redstone_trim.json new file mode 100644 index 0000000..e5a4b8c --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_chestplate_redstone_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_chestplate", + "layer1": "minecraft:trims/items/chestplate_trim_redstone" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet.json new file mode 100644 index 0000000..ad71ada --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet.json @@ -0,0 +1,68 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "acesbs:item/prisma_steel_helmet_quartz_trim", + "predicate": { + "trim_type": 0.1 + } + }, + { + "model": "acesbs:item/prisma_steel_helmet_iron_trim", + "predicate": { + "trim_type": 0.2 + } + }, + { + "model": "acesbs:item/prisma_steel_helmet_netherite_trim", + "predicate": { + "trim_type": 0.3 + } + }, + { + "model": "acesbs:item/prisma_steel_helmet_redstone_trim", + "predicate": { + "trim_type": 0.4 + } + }, + { + "model": "acesbs:item/prisma_steel_helmet_copper_trim", + "predicate": { + "trim_type": 0.5 + } + }, + { + "model": "acesbs:item/prisma_steel_helmet_gold_trim", + "predicate": { + "trim_type": 0.6 + } + }, + { + "model": "acesbs:item/prisma_steel_helmet_emerald_trim", + "predicate": { + "trim_type": 0.7 + } + }, + { + "model": "acesbs:item/prisma_steel_helmet_diamond_trim", + "predicate": { + "trim_type": 0.8 + } + }, + { + "model": "acesbs:item/prisma_steel_helmet_lapis_trim", + "predicate": { + "trim_type": 0.9 + } + }, + { + "model": "acesbs:item/prisma_steel_helmet_amethyst_trim", + "predicate": { + "trim_type": 1.0 + } + } + ], + "textures": { + "layer0": "acesbs:item/prisma_steel_helmet" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_amethyst_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_amethyst_trim.json new file mode 100644 index 0000000..3ddfa0e --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_amethyst_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_helmet", + "layer1": "minecraft:trims/items/helmet_trim_amethyst" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_copper_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_copper_trim.json new file mode 100644 index 0000000..e46e791 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_copper_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_helmet", + "layer1": "minecraft:trims/items/helmet_trim_copper" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_diamond_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_diamond_trim.json new file mode 100644 index 0000000..20c79aa --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_diamond_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_helmet", + "layer1": "minecraft:trims/items/helmet_trim_diamond" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_emerald_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_emerald_trim.json new file mode 100644 index 0000000..fe96dbc --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_emerald_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_helmet", + "layer1": "minecraft:trims/items/helmet_trim_emerald" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_gold_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_gold_trim.json new file mode 100644 index 0000000..bd53ca6 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_gold_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_helmet", + "layer1": "minecraft:trims/items/helmet_trim_gold" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_iron_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_iron_trim.json new file mode 100644 index 0000000..83fd430 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_iron_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_helmet", + "layer1": "minecraft:trims/items/helmet_trim_iron" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_lapis_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_lapis_trim.json new file mode 100644 index 0000000..8f1217c --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_lapis_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_helmet", + "layer1": "minecraft:trims/items/helmet_trim_lapis" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_netherite_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_netherite_trim.json new file mode 100644 index 0000000..6845259 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_netherite_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_helmet", + "layer1": "minecraft:trims/items/helmet_trim_netherite" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_quartz_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_quartz_trim.json new file mode 100644 index 0000000..c92b180 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_quartz_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_helmet", + "layer1": "minecraft:trims/items/helmet_trim_quartz" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_redstone_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_redstone_trim.json new file mode 100644 index 0000000..f192d3a --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_helmet_redstone_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_helmet", + "layer1": "minecraft:trims/items/helmet_trim_redstone" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings.json new file mode 100644 index 0000000..9edf975 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings.json @@ -0,0 +1,68 @@ +{ + "parent": "minecraft:item/generated", + "overrides": [ + { + "model": "acesbs:item/prisma_steel_leggings_quartz_trim", + "predicate": { + "trim_type": 0.1 + } + }, + { + "model": "acesbs:item/prisma_steel_leggings_iron_trim", + "predicate": { + "trim_type": 0.2 + } + }, + { + "model": "acesbs:item/prisma_steel_leggings_netherite_trim", + "predicate": { + "trim_type": 0.3 + } + }, + { + "model": "acesbs:item/prisma_steel_leggings_redstone_trim", + "predicate": { + "trim_type": 0.4 + } + }, + { + "model": "acesbs:item/prisma_steel_leggings_copper_trim", + "predicate": { + "trim_type": 0.5 + } + }, + { + "model": "acesbs:item/prisma_steel_leggings_gold_trim", + "predicate": { + "trim_type": 0.6 + } + }, + { + "model": "acesbs:item/prisma_steel_leggings_emerald_trim", + "predicate": { + "trim_type": 0.7 + } + }, + { + "model": "acesbs:item/prisma_steel_leggings_diamond_trim", + "predicate": { + "trim_type": 0.8 + } + }, + { + "model": "acesbs:item/prisma_steel_leggings_lapis_trim", + "predicate": { + "trim_type": 0.9 + } + }, + { + "model": "acesbs:item/prisma_steel_leggings_amethyst_trim", + "predicate": { + "trim_type": 1.0 + } + } + ], + "textures": { + "layer0": "acesbs:item/prisma_steel_leggings" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_amethyst_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_amethyst_trim.json new file mode 100644 index 0000000..b6aa550 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_amethyst_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_leggings", + "layer1": "minecraft:trims/items/leggings_trim_amethyst" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_copper_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_copper_trim.json new file mode 100644 index 0000000..23fa14f --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_copper_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_leggings", + "layer1": "minecraft:trims/items/leggings_trim_copper" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_diamond_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_diamond_trim.json new file mode 100644 index 0000000..9da8f6c --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_diamond_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_leggings", + "layer1": "minecraft:trims/items/leggings_trim_diamond" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_emerald_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_emerald_trim.json new file mode 100644 index 0000000..5fd2bd8 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_emerald_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_leggings", + "layer1": "minecraft:trims/items/leggings_trim_emerald" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_gold_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_gold_trim.json new file mode 100644 index 0000000..3147b3e --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_gold_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_leggings", + "layer1": "minecraft:trims/items/leggings_trim_gold" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_iron_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_iron_trim.json new file mode 100644 index 0000000..e884d0f --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_iron_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_leggings", + "layer1": "minecraft:trims/items/leggings_trim_iron" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_lapis_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_lapis_trim.json new file mode 100644 index 0000000..84d9b73 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_lapis_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_leggings", + "layer1": "minecraft:trims/items/leggings_trim_lapis" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_netherite_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_netherite_trim.json new file mode 100644 index 0000000..d16807f --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_netherite_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_leggings", + "layer1": "minecraft:trims/items/leggings_trim_netherite" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_quartz_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_quartz_trim.json new file mode 100644 index 0000000..826925b --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_quartz_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_leggings", + "layer1": "minecraft:trims/items/leggings_trim_quartz" + } +} \ No newline at end of file diff --git a/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_redstone_trim.json b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_redstone_trim.json new file mode 100644 index 0000000..0a64949 --- /dev/null +++ b/src/main/generated/assets/acesbs/models/item/prisma_steel_leggings_redstone_trim.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "acesbs:item/prisma_steel_leggings", + "layer1": "minecraft:trims/items/leggings_trim_redstone" + } +} \ No newline at end of file diff --git a/src/main/generated/data/acesbs/loot_table/blocks/entropy_ore.json b/src/main/generated/data/acesbs/loot_table/blocks/entropy_ore.json index 31a073e..d4f8ab3 100644 --- a/src/main/generated/data/acesbs/loot_table/blocks/entropy_ore.json +++ b/src/main/generated/data/acesbs/loot_table/blocks/entropy_ore.json @@ -57,21 +57,43 @@ { "condition": "minecraft:match_tool", "predicate": { - "items": "acesbs:prisma_steel_pickaxe" + "items": [ + "acesbs:prisma_steel_pickaxe", + "acesbs:prisma_steel_hammer" + ] } } ], "entries": [ { "type": "minecraft:item", - "name": "acesbs:raw_entropy", - "weight": 20 + "name": "minecraft:air", + "weight": 360 }, { "type": "minecraft:item", - "name": "acesbs:lemon", + "name": "minecraft:coal", + "weight": 14 + }, + { + "type": "minecraft:item", + "name": "minecraft:raw_copper", "weight": 10 }, + { + "type": "minecraft:item", + "name": "minecraft:raw_iron", + "weight": 8 + }, + { + "type": "minecraft:item", + "name": "minecraft:raw_gold", + "weight": 6 + }, + { + "type": "minecraft:item", + "name": "acesbs:raw_entropy" + }, { "type": "minecraft:item", "name": "minecraft:diamond" @@ -87,7 +109,11 @@ "function": "minecraft:explosion_decay" } ], - "rolls": 1.0 + "rolls": { + "type": "minecraft:uniform", + "max": 3.0, + "min": 1.0 + } }, { "bonus_rolls": 0.0, @@ -115,7 +141,10 @@ "term": { "condition": "minecraft:match_tool", "predicate": { - "items": "acesbs:prisma_steel_pickaxe" + "items": [ + "acesbs:prisma_steel_pickaxe", + "acesbs:prisma_steel_hammer" + ] } } } @@ -136,7 +165,11 @@ "function": "minecraft:explosion_decay" } ], - "rolls": 1.0 + "rolls": { + "type": "minecraft:uniform", + "max": 3.0, + "min": 1.0 + } } ] } \ No newline at end of file diff --git a/src/main/generated/data/minecraft/tags/item/trimmable_armor.json b/src/main/generated/data/minecraft/tags/item/trimmable_armor.json new file mode 100644 index 0000000..9b1e0f1 --- /dev/null +++ b/src/main/generated/data/minecraft/tags/item/trimmable_armor.json @@ -0,0 +1,8 @@ +{ + "values": [ + "acesbs:prisma_steel_helmet", + "acesbs:prisma_steel_chestplate", + "acesbs:prisma_steel_leggings", + "acesbs:prisma_steel_boots" + ] +} \ No newline at end of file diff --git a/src/main/java/com/acethewildfire/acesbs/AcesBS.java b/src/main/java/com/acethewildfire/acesbs/AcesBS.java index bd523c4..9890110 100644 --- a/src/main/java/com/acethewildfire/acesbs/AcesBS.java +++ b/src/main/java/com/acethewildfire/acesbs/AcesBS.java @@ -5,6 +5,7 @@ import com.acethewildfire.acesbs.component.ModDataComponentTypes; import com.acethewildfire.acesbs.item.ModItemGroups; import com.acethewildfire.acesbs.item.ModItems; import com.acethewildfire.acesbs.util.HammerUsageEvent; +import com.acethewildfire.acesbs.util.UpdateRecipies; import net.fabricmc.api.ModInitializer; import net.fabricmc.fabric.api.event.player.PlayerBlockBreakEvents; @@ -32,6 +33,8 @@ public class AcesBS implements ModInitializer { ModDataComponentTypes.registerDataComponentsTypes(); + UpdateRecipies.updateVanilla(); + PlayerBlockBreakEvents.BEFORE.register(new HammerUsageEvent()); } } \ No newline at end of file diff --git a/src/main/java/com/acethewildfire/acesbs/datagen/ModItemTagProvider.java b/src/main/java/com/acethewildfire/acesbs/datagen/ModItemTagProvider.java index 6894a83..90f8ae8 100644 --- a/src/main/java/com/acethewildfire/acesbs/datagen/ModItemTagProvider.java +++ b/src/main/java/com/acethewildfire/acesbs/datagen/ModItemTagProvider.java @@ -39,6 +39,10 @@ public class ModItemTagProvider extends FabricTagProvider.ItemTagProvider { .add(ModItems.PRISMA_STEEL_SHOVEL); getOrCreateTagBuilder(ItemTags.HOES) .add(ModItems.PRISMA_STEEL_HOE); - + getOrCreateTagBuilder(ItemTags.TRIMMABLE_ARMOR) + .add(ModItems.PRISMA_STEEL_HELMET) + .add(ModItems.PRISMA_STEEL_CHESTPLATE) + .add(ModItems.PRISMA_STEEL_LEGGINGS) + .add(ModItems.PRISMA_STEEL_BOOTS); } } diff --git a/src/main/java/com/acethewildfire/acesbs/datagen/ModLootTableProvider.java b/src/main/java/com/acethewildfire/acesbs/datagen/ModLootTableProvider.java index dcc84b6..54fed9a 100644 --- a/src/main/java/com/acethewildfire/acesbs/datagen/ModLootTableProvider.java +++ b/src/main/java/com/acethewildfire/acesbs/datagen/ModLootTableProvider.java @@ -1,14 +1,16 @@ package com.acethewildfire.acesbs.datagen; +import com.acethewildfire.acesbs.AcesBS; import com.acethewildfire.acesbs.block.ModBlocks; import com.acethewildfire.acesbs.item.ModItems; import com.acethewildfire.acesbs.util.ModTags; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.provider.FabricBlockLootTableProvider; +import net.fabricmc.fabric.api.loot.v3.LootTableEvents; import net.minecraft.block.Block; +import net.minecraft.block.Blocks; import net.minecraft.enchantment.Enchantment; import net.minecraft.enchantment.Enchantments; -import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.Item; import net.minecraft.item.ItemConvertible; import net.minecraft.item.ItemStack; @@ -21,7 +23,6 @@ import net.minecraft.loot.condition.MatchToolLootCondition; import net.minecraft.loot.entry.ItemEntry; import net.minecraft.loot.entry.LeafEntry; import net.minecraft.loot.function.ApplyBonusLootFunction; -import net.minecraft.loot.function.ConditionalLootFunction; import net.minecraft.loot.function.ExplosionDecayLootFunction; import net.minecraft.loot.function.SetCountLootFunction; import net.minecraft.loot.provider.number.ConstantLootNumberProvider; @@ -31,12 +32,11 @@ import net.minecraft.predicate.item.EnchantmentPredicate; import net.minecraft.predicate.item.EnchantmentsPredicate; import net.minecraft.predicate.item.ItemPredicate; import net.minecraft.predicate.item.ItemSubPredicateTypes; +import net.minecraft.registry.RegistryKey; import net.minecraft.registry.RegistryKeys; import net.minecraft.registry.RegistryWrapper; -import java.util.ArrayList; import java.util.List; -import java.util.Random; import java.util.concurrent.CompletableFuture; public class ModLootTableProvider extends FabricBlockLootTableProvider { @@ -66,7 +66,7 @@ public class ModLootTableProvider extends FabricBlockLootTableProvider { addDrop(ModBlocks.LEMONWOOD_DOOR, doorDrops(ModBlocks.LEMONWOOD_DOOR)); addDrop(ModBlocks.LEMONWOOD_TRAPDOOR); - addDrop(ModBlocks.ENTROPY_ORE, prismaSteelOreDrops(ModBlocks.ENTROPY_ORE, ModItems.RAW_ENTROPY, ModItems.PRISMA_STEEL_PICKAXE, 1, 6)); + addDrop(ModBlocks.ENTROPY_ORE, prismaSteelOreDrops(ModBlocks.ENTROPY_ORE, ModItems.RAW_ENTROPY, 1, 3)); } public LootTable.Builder multipleOreDrops(Block drop, Item item, float minDrops, float maxDrops) { @@ -86,7 +86,7 @@ public class ModLootTableProvider extends FabricBlockLootTableProvider { } - public LootTable.Builder prismaSteelOreDrops(Block block, Item defaultItem, ItemConvertible tools, float minDrops, float maxDrops){ + public LootTable.Builder prismaSteelOreDrops(Block block, Item defaultItem, float minDrops, float maxDrops){ RegistryWrapper.Impl impl = this.registryLookup.getWrapperOrThrow(RegistryKeys.ENCHANTMENT); LootCondition.Builder silkTouchCondition = MatchToolLootCondition.builder( ItemPredicate.Builder.create() @@ -99,7 +99,7 @@ public class ModLootTableProvider extends FabricBlockLootTableProvider { LootPool.Builder defaultPool = LootPool.builder() .rolls(UniformLootNumberProvider.create(minDrops, maxDrops)) .conditionally(InvertedLootCondition.builder(silkTouchCondition)) - .conditionally(InvertedLootCondition.builder(specialToolCondition(tools))) + .conditionally(InvertedLootCondition.builder(specialToolCondition(ModItems.PRISMA_STEEL_PICKAXE, ModItems.PRISMA_STEEL_HAMMER))) .with(ItemEntry.builder(defaultItem).weight(1)) .apply(ApplyBonusLootFunction.oreDrops(impl.getOrThrow(Enchantments.FORTUNE))) .apply(ExplosionDecayLootFunction.builder()); @@ -113,13 +113,14 @@ public class ModLootTableProvider extends FabricBlockLootTableProvider { LootPool.Builder prismaPool = LootPool.builder() .rolls(UniformLootNumberProvider.create(minDrops, maxDrops)) .conditionally(InvertedLootCondition.builder(silkTouchCondition)) - .conditionally(specialToolCondition(tools)) - .with(ItemEntry.builder(defaultItem).weight(360)) + .conditionally(specialToolCondition(ModItems.PRISMA_STEEL_PICKAXE, ModItems.PRISMA_STEEL_HAMMER)) + .with(ItemEntry.builder(Items.AIR).weight(360)) .with(ItemEntry.builder(Items.COAL).weight(14)) .with(ItemEntry.builder(Items.RAW_COPPER).weight(10)) .with(ItemEntry.builder(Items.RAW_IRON).weight(8)) .with(ItemEntry.builder(Items.RAW_GOLD).weight(6)) - .with(ItemEntry.builder(Items.DIAMOND).weight(2)) + .with(ItemEntry.builder(ModItems.RAW_ENTROPY).weight(1)) + .with(ItemEntry.builder(Items.DIAMOND).weight(1)) .apply(ApplyBonusLootFunction.oreDrops(impl.getOrThrow(Enchantments.FORTUNE))) .apply(ExplosionDecayLootFunction.builder()); diff --git a/src/main/java/com/acethewildfire/acesbs/datagen/ModModelProvider.java b/src/main/java/com/acethewildfire/acesbs/datagen/ModModelProvider.java index a7f1e5b..3867a5d 100644 --- a/src/main/java/com/acethewildfire/acesbs/datagen/ModModelProvider.java +++ b/src/main/java/com/acethewildfire/acesbs/datagen/ModModelProvider.java @@ -6,6 +6,7 @@ import com.acethewildfire.acesbs.item.ModItems; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.provider.FabricModelProvider; import net.minecraft.data.client.*; +import net.minecraft.item.ArmorItem; import net.minecraft.util.Identifier; public class ModModelProvider extends FabricModelProvider { @@ -61,5 +62,10 @@ public class ModModelProvider extends FabricModelProvider { itemModelGenerator.register(ModItems.PRISMA_STEEL_AXE, Models.HANDHELD); itemModelGenerator.register(ModItems.PRISMA_STEEL_SHOVEL, Models.HANDHELD); itemModelGenerator.register(ModItems.PRISMA_STEEL_HOE, Models.HANDHELD); + + itemModelGenerator.registerArmor((ArmorItem) ModItems.PRISMA_STEEL_HELMET); + itemModelGenerator.registerArmor((ArmorItem) ModItems.PRISMA_STEEL_CHESTPLATE); + itemModelGenerator.registerArmor((ArmorItem) ModItems.PRISMA_STEEL_LEGGINGS); + itemModelGenerator.registerArmor((ArmorItem) ModItems.PRISMA_STEEL_BOOTS); } } diff --git a/src/main/java/com/acethewildfire/acesbs/item/ModArmorMaterials.java b/src/main/java/com/acethewildfire/acesbs/item/ModArmorMaterials.java new file mode 100644 index 0000000..1e21d67 --- /dev/null +++ b/src/main/java/com/acethewildfire/acesbs/item/ModArmorMaterials.java @@ -0,0 +1,34 @@ +package com.acethewildfire.acesbs.item; + +import com.acethewildfire.acesbs.AcesBS; +import net.minecraft.item.ArmorItem; +import net.minecraft.item.ArmorMaterial; +import net.minecraft.recipe.Ingredient; +import net.minecraft.registry.Registries; +import net.minecraft.registry.Registry; +import net.minecraft.registry.entry.RegistryEntry; +import net.minecraft.sound.SoundEvents; +import net.minecraft.util.Identifier; +import net.minecraft.util.Util; + +import java.util.EnumMap; +import java.util.List; +import java.util.function.Supplier; + +public class ModArmorMaterials { + + public static final RegistryEntry PRISMA_STEEL_ARMOR_MATERIAL = registerArmorMaterial("prisma_steel", + () -> new ArmorMaterial(Util.make(new EnumMap<>(ArmorItem.Type.class), map -> { + map.put(ArmorItem.Type.BOOTS, 2); + map.put(ArmorItem.Type.LEGGINGS, 4); + map.put(ArmorItem.Type.CHESTPLATE, 6); + map.put(ArmorItem.Type.HELMET, 2); + map.put(ArmorItem.Type.BODY, 4); + }), 20, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, () -> Ingredient.ofItems(ModItems.PRISMA_STEEL), + List.of(new ArmorMaterial.Layer(Identifier.of(AcesBS.MOD_ID, "prisma_steel"))), 0, 0)); + + public static RegistryEntry registerArmorMaterial(String name, Supplier material){ + + return Registry.registerReference(Registries.ARMOR_MATERIAL, Identifier.of(AcesBS.MOD_ID, name), material.get()); + } +} diff --git a/src/main/java/com/acethewildfire/acesbs/item/ModItemGroups.java b/src/main/java/com/acethewildfire/acesbs/item/ModItemGroups.java index c2edc7b..c90bc85 100644 --- a/src/main/java/com/acethewildfire/acesbs/item/ModItemGroups.java +++ b/src/main/java/com/acethewildfire/acesbs/item/ModItemGroups.java @@ -63,6 +63,11 @@ public class ModItemGroups { .entries((displayContext, entries) -> { entries.add(ModItems.PRISMA_STEEL); entries.add(ModItems.PRISMA_STEEL_SWORD); + entries.add(ModItems.PRISMA_STEEL_AXE); + entries.add(ModItems.PRISMA_STEEL_HELMET); + entries.add(ModItems.PRISMA_STEEL_CHESTPLATE); + entries.add(ModItems.PRISMA_STEEL_LEGGINGS); + entries.add(ModItems.PRISMA_STEEL_BOOTS); }) @@ -82,6 +87,7 @@ public class ModItemGroups { entries.add(ModItems.PRISMA_STEEL_HOE); + }) .build()); diff --git a/src/main/java/com/acethewildfire/acesbs/item/ModItems.java b/src/main/java/com/acethewildfire/acesbs/item/ModItems.java index 4de25af..4e4d900 100644 --- a/src/main/java/com/acethewildfire/acesbs/item/ModItems.java +++ b/src/main/java/com/acethewildfire/acesbs/item/ModItems.java @@ -70,6 +70,22 @@ public class ModItems { .attributeModifiers(HoeItem.createAttributeModifiers(ModToolMaterials.PRISMA_STEEL, -2.0F, -1.0F))) ); + public static final Item PRISMA_STEEL_HELMET = registerItem("prisma_steel_helmet", + new ArmorItem(ModArmorMaterials.PRISMA_STEEL_ARMOR_MATERIAL, ArmorItem.Type.HELMET, new Item.Settings() + .maxDamage(ArmorItem.Type.HELMET.getMaxDamage(15)))); + + public static final Item PRISMA_STEEL_CHESTPLATE = registerItem("prisma_steel_chestplate", + new ArmorItem(ModArmorMaterials.PRISMA_STEEL_ARMOR_MATERIAL, ArmorItem.Type.CHESTPLATE, new Item.Settings() + .maxDamage(ArmorItem.Type.CHESTPLATE.getMaxDamage(15)))); + + public static final Item PRISMA_STEEL_LEGGINGS = registerItem("prisma_steel_leggings", + new ArmorItem(ModArmorMaterials.PRISMA_STEEL_ARMOR_MATERIAL, ArmorItem.Type.LEGGINGS, new Item.Settings() + .maxDamage(ArmorItem.Type.LEGGINGS.getMaxDamage(15)))); + + public static final Item PRISMA_STEEL_BOOTS = registerItem("prisma_steel_boots", + new ArmorItem(ModArmorMaterials.PRISMA_STEEL_ARMOR_MATERIAL, ArmorItem.Type.BOOTS, new Item.Settings() + .maxDamage(ArmorItem.Type.BOOTS.getMaxDamage(15)))); + private static Item registerItem(String name, Item item){ return Registry.register(Registries.ITEM, Identifier.of(AcesBS.MOD_ID, name), item); } diff --git a/src/main/java/com/acethewildfire/acesbs/item/custom/HammerItem.java b/src/main/java/com/acethewildfire/acesbs/item/custom/HammerItem.java index 0bb5010..ab12fd8 100644 --- a/src/main/java/com/acethewildfire/acesbs/item/custom/HammerItem.java +++ b/src/main/java/com/acethewildfire/acesbs/item/custom/HammerItem.java @@ -33,18 +33,10 @@ import java.util.Random; public class HammerItem extends MiningToolItem { -// private final Random r = new Random(); - -// private List replacementItems = new ArrayList<>(); - public HammerItem(ToolMaterial material, Settings settings) { super(material, BlockTags.PICKAXE_MINEABLE, settings); } -// private boolean isValidItem(ItemStack stack) { -// return stack.isIn(ModTags.Items.PRISMA_CONVERTABLE); -// } - public static List getBlocksToBeDestroyed(int range, BlockPos initalBlockPos, ServerPlayerEntity player) { List positions = new ArrayList<>(); HitResult hit = player.raycast(20, 0, false); @@ -78,28 +70,4 @@ public class HammerItem extends MiningToolItem { return positions; } - - -// @Override -// public boolean postMine(ItemStack stack, World world, BlockState state, BlockPos pos, LivingEntity miner) { -// ItemStack nextItem = stack; -// ItemStack testing = new ItemStack(ModItems.LEMON, 1); -// state.getDroppedStacks(new LootContextParameterSet.Builder(world.getServer().getWorld(world.getRegistryKey())) -// .add(LootContextParameters.ORIGIN, Vec3d.ofCenter(pos)) -// .add(LootContextParameters.TOOL, stack) -// ).removeFirst(); -// if(isValidItem(stack)){ -// int chance = r.nextInt(1,21); // 1-20 -// replacementItems.add(ModItems.RAW_ENTROPY); -// replacementItems.add(ModItems.STABLE_ENTROPY); -// replacementItems.add(ModItems.LEMON); -// int itemIndex = r.nextInt(1, replacementItems.size()+1); -// -// ItemStack replacementStack = new ItemStack(replacementItems.get(itemIndex), stack.getCount()); -// if (chance == 20) { -// nextItem = replacementStack; -// } -// } -// return super.postMine(stack, world, state, pos, miner); -// } } diff --git a/src/main/java/com/acethewildfire/acesbs/util/UpdateRecipies.java b/src/main/java/com/acethewildfire/acesbs/util/UpdateRecipies.java new file mode 100644 index 0000000..1164418 --- /dev/null +++ b/src/main/java/com/acethewildfire/acesbs/util/UpdateRecipies.java @@ -0,0 +1,77 @@ +package com.acethewildfire.acesbs.util; + +import com.acethewildfire.acesbs.AcesBS; +import com.acethewildfire.acesbs.item.ModItems; +import net.fabricmc.fabric.api.loot.v3.LootTableEvents; +import net.minecraft.block.Blocks; +import net.minecraft.enchantment.Enchantment; +import net.minecraft.enchantment.Enchantments; +import net.minecraft.item.ItemConvertible; +import net.minecraft.item.Items; +import net.minecraft.loot.LootPool; +import net.minecraft.loot.LootTable; +import net.minecraft.loot.condition.InvertedLootCondition; +import net.minecraft.loot.condition.LootCondition; +import net.minecraft.loot.condition.MatchToolLootCondition; +import net.minecraft.loot.entry.ItemEntry; +import net.minecraft.loot.function.ApplyBonusLootFunction; +import net.minecraft.loot.function.ExplosionDecayLootFunction; +import net.minecraft.loot.provider.number.UniformLootNumberProvider; +import net.minecraft.predicate.NumberRange; +import net.minecraft.predicate.item.EnchantmentPredicate; +import net.minecraft.predicate.item.EnchantmentsPredicate; +import net.minecraft.predicate.item.ItemPredicate; +import net.minecraft.predicate.item.ItemSubPredicateTypes; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; +import net.minecraft.registry.RegistryWrapper; + +import java.util.List; + +public class UpdateRecipies { + private static LootCondition.Builder specialToolCondition(ItemConvertible... tools){ + return MatchToolLootCondition.builder( + ItemPredicate.Builder.create() + .items(tools) + ); + } + + public static void updateVanilla(){ + AcesBS.LOGGER.info("Updating vanilla Ore Drops for Prisma Steel"); + + RegistryKey ironOreLootId = Blocks.IRON_ORE.getLootTableKey(); + + + + LootTableEvents.MODIFY.register((key, tableBuilder, source, wrapperLookup) -> { + RegistryWrapper.Impl impl = wrapperLookup.getWrapperOrThrow(RegistryKeys.ENCHANTMENT); + LootCondition.Builder silkTouchCondition = MatchToolLootCondition.builder( + ItemPredicate.Builder.create() + .subPredicate( + ItemSubPredicateTypes.ENCHANTMENTS, + EnchantmentsPredicate.enchantments(List.of(new EnchantmentPredicate(impl.getOrThrow(Enchantments.SILK_TOUCH), NumberRange.IntRange.atLeast(1)))) + ) + ); + + // Target only iron ore + if (source.isBuiltin() && ironOreLootId.equals(key)) { + LootPool.Builder extraPool = LootPool.builder() + .rolls(UniformLootNumberProvider.create(1, 2)) + .conditionally(InvertedLootCondition.builder(silkTouchCondition)) + .conditionally(specialToolCondition(ModItems.PRISMA_STEEL_PICKAXE, ModItems.PRISMA_STEEL_HAMMER)) + .with(ItemEntry.builder(Items.AIR).weight(360)) + .with(ItemEntry.builder(Items.COAL).weight(14)) + .with(ItemEntry.builder(Items.RAW_COPPER).weight(10)) + .with(ItemEntry.builder(Items.RAW_IRON).weight(8)) + .with(ItemEntry.builder(Items.RAW_GOLD).weight(6)) + .with(ItemEntry.builder(ModItems.RAW_ENTROPY).weight(1)) + .with(ItemEntry.builder(Items.DIAMOND).weight(1)) + .apply(ApplyBonusLootFunction.oreDrops(impl.getOrThrow(Enchantments.FORTUNE))) + .apply(ExplosionDecayLootFunction.builder()); + + // Add our extra drop pool to loot table + tableBuilder.pool(extraPool); + } + }); + } +} diff --git a/src/main/resources/assets/acesbs/lang/en_us.json b/src/main/resources/assets/acesbs/lang/en_us.json index e4268f7..8e3cebd 100644 --- a/src/main/resources/assets/acesbs/lang/en_us.json +++ b/src/main/resources/assets/acesbs/lang/en_us.json @@ -20,6 +20,11 @@ "item.acesbs.prisma_steel_shovel": "Prisma Steel Shovel", "item.acesbs.prisma_steel_hoe": "Prisma Steel Hoe", + "item.acesbs.prisma_steel_helmet": "Prisma Steel Helmet", + "item.acesbs.prisma_steel_chestplate": "Prisma Steel Chestplate", + "item.acesbs.prisma_steel_leggings": "Prisma Steel Leggings", + "item.acesbs.prisma_steel_boots": "Prisma Steel Boots", + "block.acesbs.entropy_block": "Block of Entropy", "block.acesbs.prisma_steel_block": "Block of Prisma Steel", "block.acesbs.entropy_ore": "Entropic Ore", diff --git a/src/main/resources/assets/acesbs/textures/item/prisma_steel_boots.png b/src/main/resources/assets/acesbs/textures/item/prisma_steel_boots.png new file mode 100644 index 0000000000000000000000000000000000000000..0b1ab4010fc6cc2fb0cac9f050332ae6d0e1528a GIT binary patch literal 4441 zcmeHKeNYtV89zjj4`DD$3j%RH6iUM0?d~o2vEhJ&JK$mt3DAO7BYV5=!H(PqcMErz zh@yxIn5IF2XwVo28eDggGZy&A6$>XzVCt|Z( zO$4@a;>-)D z)Bakbtw*@d751o&^J4b@dN-N5)Kt4w{dQ>V{X28^)a5Hu_jO-6O?CDj@7lxTXIuRr zJvFa*-4IcIJ-NTBeREi_A~}3Ut0sbZUh?;qX&1xZJ5!t-{n>%9-+JjUUq^I2)@%uw zO?b29`tq!#xQbVO+nyw9+mzd}v_Eee?CI3HJkN(L^H2ZyO_@mKQOTvGWa?8=MzeuA zG_HMJoqjASylqu>+aIep2J6C!oaol3mzh5p=frM1nA{u~)ljb4TD7RH?Rguje6T;S z#8!O1>%(6L%}h+X>=mv1dCc8)`nPpkX0;Ewoc+ZEfkC&xyE`K0Bz46`hSpSXzrF9` z{py5!`99*R#im<#&l%_My8hLZ35P%5R8~Lmx5Ts~wX)Ewb6<&kP7&K1(A#ZT^5vnW z;jB)-Fd=#ud1J%z*H$#FEWf_OmUnf#CUR$Ebl?*;o8=RHmA z{f$@7?qvJm)pd7Tm&+2>eNkR}lD@1luiN6evNdV1spm@j!G9_}22UTYJO7{DTSqTP z-#k$NGirwS!HSx%>ZAHS8lE|NVyh&yHu53o_b~oWdFqvIUf$M<&*NHJzDUSeu%0YA z@RDbE_>8$;CtnzFIh`+Bzu(1uJK*^zo&CrHB+UbMT`321#;B}=CWF(*; z^>F0CA(dtUhqc7c09`4t@R1WCSZ2)MR$?!5r^7N*Pz21-)B#t;CoP$#H)M`^2ow}> zW}Dj!l0C_i=S<^dO^Qv>xYL;!2y`FAon$?lyW1FA84Q%x%9IG<>9uOHus+3F8IGmg zkAz8XR1k6&1te`mNhN7QX%%5a7t2I2~aGA!dOPBFe+G72>^kTKrTa- z3I?DUrZUE1N}9m|a7V*3RI1f(reQfbGhG0rHcNq9ArMY!GWBXPA;HEanME{jf(~#7 zI16iaI>uEwoEc>Ew7@5>kP`}m#4#B`s&GO+ZuBc)cfej0P;pEmBi$OIFceG&QcDY+ z3IW`5m<^R;2Q+WB=UA;pYOxR$B6yCe4RD}Xny0li4$Vj;YHjt830hA<^0HpyEaY$Iu;C z6Yr$$KvMvDgj~S}b#sOMVx&|tlcRAK0-+9&G8D(r36zPYBgsmI9b+`xcEm(g*kBcf(_rw{c0DR-_kwAUX|VefB|#uPuFy`vymPp7iU+;aS>SuhrxzPj%IP^6assd7F+@7Jle+HfY} zd$6MS_P?t7beF!l)_UC$Shd*F^4f({v)5lZWoum<7}4-(Z;cmQyz#T1=%+fkf6VsX zn_43Yue2Py=b3)XdTH~wkG&vCBE2p{ K`+jo%hW`SkmQmgS literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/acesbs/textures/item/prisma_steel_chestplate.png b/src/main/resources/assets/acesbs/textures/item/prisma_steel_chestplate.png new file mode 100644 index 0000000000000000000000000000000000000000..c82018f5f800f23e9208417c61a3da8755e5b246 GIT binary patch literal 4612 zcmeHKdsGu=77r@OLl8w=Wuc5=1u0CDnM|G~JVK&LH5xHnu=twHOkfTq6O(~Nq)=Zd zpmr4nbkVNLD%z@bcdOf_$43>PtJw$VE{dYI2wGY9n}CSBJ!g;SZ2u$YOlIbO z_x`?nfA?|bD>Y7?6zCu3&*Sj|^*T)&xCe8WuMhZ-{NV)-ZeJCcGT1cS1=$^ph0diQ zc7dIOC^v24@!VIe#*~pqA>S{5Doga5g>{8D){47RKAt2-uvCvMWTxEaKBAQOw%IAW%}hGow56T@x=|%F%L$sFJE&bH6v?_ zzUyAq^d|wt))5Te^p)>--a$(q+}wJF{h|oJPM18>FVWoDSNynP|AEkjLly1weuqGb zyyLNc*M~@>u^e(#`J#q6+!FBgz>bjCz)R%JkShT-lX*O^rF3elQJ@8aostrd?G4*vTh@IvU@$2@hKM9JiDoUv+`AtK^bUQ5X+Lw`MpMUYf zk>3UnNlL!v9i#nK?4x4+7VXNRC%WCP_W7Mb!FQ?c8zV*}Ux<$yTVA%IZP(?FvcwE-{D<_EajH))hFY83j{KL_rRrAo)p&{t0d+0I*Ul z4!NzlHmB09;(KtF;F%K(`H)A2%~A0)3`QuGaZnH@zyu;#>!$Njexg5=;2sROM4?a!MW_%(VW0s!7uZhH?@P+RoC9 z4dO6yGn2=v_(I|yI8C5Q zg=v(N$#W2tHlMPwQT-uEqR-x*=g9ShLlQzNm$Cv?C)gEvZOch|gR#$oqacg6+C5f) z?AJ6|+VYC5*L>qvJmK_r1eo{XzNY;$c8@a9G8mK^hREaG(`!_GZhs}o5HzXuJX&x> zOvz*zEJ0;57_*>e*es(6m@?0geQfh)4`WVG@&B zV2l!3U^6O}z`z(GaZD4)f^Yz}I9I6v zzyk}SQKmX5oMjv)hRId&IS7ce>{~W~h9Yqm*WfG#Kt-rTi6Bam!h}eaVi|aVMN*}x zpFTsaN_wC>G2a_ z^(+zDxGjqU^P{(5U&`s9DF!Jjr4X@L0m~3n0%MqhfXxU&z<^IoB$1nCGWma?I~fb> z!W~pf7T^(Z1q#%|6*QqYRk5#oxNpzDnocq8S3 z>iWOY<^Sq1McKd?kP94@BvnH0u}@Z6c6QN=z`>C3;(~+c?&q&+?fP`{ak=}+Qw9DcVEWs0ZeE-HxBIP^hCgr1T37n_ z3-{}J)h*`gj^HTol5bYYIxSM46eH8t9;}VscJSER0=05F^se{z!6j!pI?5mB2S^X( ze7LGRV$b_I>pm!*ZThPk9$BdP*V%#-cOE|t=-M>7$+A2rvh(o634ijcG+tIW4iCA# zja1JYbZq|DJ2Dq)W@@j_X*qFy^(GXWK_+PMEc`Zur8sgV*@0TN>k5-ukJi zyQ?|k96z$@(@|lW+2LEVgW?i)x_@jA!pDS({kM-h6FSU#e$Oh?vW1ExKjD&$*IzzA~%>HcQfr)1i+>ru{iN zK)XI?qk4<>)LmmmbnD~v&9cY0Dy(~|-`cHiTr+;Rx?+56=gmXah&}d5H951WsO#hA Z;gYILTUP`}zX18<>9tced(`t5{~Hafo^SvF literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/acesbs/textures/item/prisma_steel_helmet.png b/src/main/resources/assets/acesbs/textures/item/prisma_steel_helmet.png new file mode 100644 index 0000000000000000000000000000000000000000..83816b041d69c4af3b8b1fd0626ba14a677c2d7d GIT binary patch literal 4409 zcmeHKeNYo;8V?{J0y336Qg)6w(u|9&C0uxMPxCl7$4% zgKDi+u=a!^XN#!RUQtHW-iddGDp#dw?^?Br{h*4Kv9?+Uw5`;;I^MhCyVsc;X0HE{ z%w~6=kKg+|zvp?M$-6ZtJ9Ad#f=GctFw2r<$_4j1{1p)feiOcah=beP>umX4F7AU^ z596Sn6vUOW6h!%Hhd|)}#Fb;59kM8*{oj@PAfavj_MR(=4~%;XRvlf@lYKp6Tigb= zz2Qan_Ld}L?uAv}#Aj^>j;`3NJfH2TuF>s_OZs*&rm?nAopJEv-gDT+>!;sq}yCjwL;PG#ijZ z{qJ|^vQ8OxJ z#h1JP{?wcqsfJHOCFY+mxl>`;XWkax^}z2NC?1+U=N9#+m*Zm$-AUrOs>)qo9sKCq zO8qy55u(kD9k=dWvM*@pyZxyC#MS4@b`Je5HS=V(BJSGUt>VYkN!Mpx|Jb_hX8RLD z(rj6zmozB9*m(NIRduV&`&O~}*LE4jyXz&hAE|mSd1ucbV`tU+H*5AcEw~XCR~P&K z)Aik+TGhbWg866Y$Ck8Q6sAWn+afl`pKWT~geGmGyR(oT`yVttUvcS<>wO7P7j{@T#Myx2yGvCg}Tf9krM5F2B|BspQLJ zJAZ}+hqZ2~y1g@TAgFF>$C(;wT($T<9eF=xusoyprO+^D!&TMs^}ATmb^<|4 zs-MM)wG;>0sUq5~6AiST6hSnp6D?O+{8^H6!~vTek=wS<-wrRpP7{1^am zQ5+8WT~4Tj$pU)@tDWr_2NQP*&TA3V`p(qS2U~ie5!~L+^E9N1FF-(+~@X#zr zGj52-#O+K8rxS^Q9vY3$#agXn@NVx23xE%qA7^EVR4#M5WD`BSoVgT$j0E(f9$p*R zq_SMf%anKs%3MmhIq^gYk{I)6OFYg%IwT>ZoRkZgdcms5q$M*g)|@d9o`NFU#Rj|p z*^?|e+A&Vnq}X^(Af1VU0QWK6N!Fve2aJK0)ry%IqJ$66V$zBD^)ZqmXc7xNA}Fb# zT0H^E;`Va5o1l0o04}8gjy%~8j1>+TRVF)N zr5aVixKb^L39T9-6iOl)k!vSFJmH~1SK`izQSneDfKn53RD*zM914{NR@zYnw#x|; zwyV@6_)?TZr3pZh1eU>gTsSBv?ZS&F8S5?zD0sp#V~#~9LZ$L?Nsbfe9KZqW0oqM6 zKJU27M!Tpy4(Itq)XAtCRiY||R;dChj2r!i@_0cn@~DVhs!#?rd|@z<4xkq2I~4!~ zNZ@luKm#0jv5 zRm2+HT||NTG19Q3a{5P_K|?92WJ-&}gqi~V1ga1E3D?33Ij$lRyBb&HKS1{~4$g;r zC}R=e5pV?>G{6<~%aKwonH-I84aL_1PzECiJb^NiY$RD3KQTtLO_BWmj0+UcSHVQ}h;)l*p_!+6gPq+ero?c{1{7%y~P1lqdn3C~ycTLkZB?hKsJl$RY zH@YIn4^xyI`~&iVqf*+D8OOjeE6lzu(B}E(rl9_DQ3a>yAHJ87F1TWXm z2f}d9Vl{_<88tI@@gj>nH4lhBx0sAJ%|H69-}?2boOxXpl34q~_TmHVzW&@D(xLds zxHtb=awk?8Kck@IKsvo=U*XkGgvmJ{ef72dukBs(AzY~6(tIu9{ku2odp}#>v8V3R zu6O1yzbUcgo=t6jtl@+yTFMxthI!fZ4i7B-s{gHJ7rzNV-8`==rsl+FZ>BC9Jj^zB zM8(CR1&1!IY|9XI7+xrT4-ycFjT%C`sdwVf$i(}T3h3fTuG>Ep>|g^e3Ec#e&4&Vgq>gc;lCbk ZWTJOxcC9XHbApTo7IU_#C9QDde*lWXKxqH~ literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/acesbs/textures/item/prisma_steel_leggings.png b/src/main/resources/assets/acesbs/textures/item/prisma_steel_leggings.png new file mode 100644 index 0000000000000000000000000000000000000000..3e5cac7181e8bbd3f4acff5fec89575a62e4e940 GIT binary patch literal 4464 zcmeHKeNYtV89zQn1O`PCP}KE^AT4{hyLa5(UN}DF4!G#Ssb_*wf_r?(sd%Ooy4~KW=7k zcb|{n`#itrdEVK#M4OW2>%GjI$K&~`la-sm-JiR>Ji-5}ub&g(_J=*XGh`YOfDQOJiI@*eAH@FJWWxzs%U)w6!Ot&&wzH$mef# zCSA%=Rzu9q?bfjUOCy?IKPlFx(iN48y5PuXLyJ#U?T{v({bDrpIFsGCYhz2$KyUHh zz|u>t`N198b*Z=duN*F2zS^&__hh+wqo5_d^}O`;y8fb+Q-j^HBXrNp6(8;oS{`KZ zxfaA5J6*8Lb$LK(6jsquaN-$5FB)k+Q!?avTesC`%Z2V{9?zwSNl4JD6A~t~0Xfv} zJ)%gy5*N~uvAN^7rTYU_A($@wa>GILUH#(7qZijT`i0fx$5$SBsiR|~1(to=l$K-3 zzTMTn#os+P?v6*e>cxmB`_y%+Lkq5sIqZ+KhyDB?QNMm?#p1ZG$k5=j(qsQP+x@IG z=9?W}`~z#~M^A3)m!0SzTp9Dx-Qv9J;orw5wN{9N?+28GZjeUy`SyLGS^w~Z)DVM8 zy*eiRg!s!hKYn|AO?rO+c1zm*WAUNKYs3APlod;=dwvnL*rLmZ#Y$iMHVq#$>@>OV-0WZyY(de+M3En_r!7! z-N|*<@9*y$y1Y#kt9TIRaVqX%nQ`ACxAe<#^>oj@s~3A^F5h>yRo#C2+M~8R;REki zzaV$@yjWN^SRMA*rRL?fYn6iFiqH|pdn9@&Kk?pC4^MO9-Kgf~zsIDkDiG(q|8uvH z5Z3^YKfW>Su-kuTetv@a*Rb1pm9=#hl;i@sE|&q_m8RJsC(T9yVKD0{fx~D4ZO7w9 z$2u$oxtn4kJ(bCr6#U1RTlo-UQ1D-i(jXd30=1J#-eaXU?@7^-dv=q!fgc;=9qo_< z03*c`ki(c|vdJ9^z7tmto;k6Q4>?WP-3or1MhhjFtrR2{hy@6&axl3VKgJu1wi;;p zCS~FT1b9>Mce1QSE)?4Bc7a_aFk3T)D30So1QTKy3@l(%79lD?ghr!qriYDHobtEiShJkz7)T+NMHzvq4XldJS~5wk(N1}A6l5|+ zi_;5`JC6lSxKH8EvYyP{X$-718oAO;=5XPul?pz$zT99Y8H3#U zD3*yZ5vC{Ls3Z6=c22!4Awi*dgPR2-NQbLO<)2ZMHm&a?>3O*)4rX|`ef~A22 zm;uIQFxzd@Djj2_HnRlBCn}X-QcR5D2#QDHsASscRmy4uy~v@Wh(IKEYPiD4K{|k1 zg6mWO;FN=G0E%Eyauk Jhyi)3;X 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 T^gtWXUO1s3jDKiB-1`3j+U9mA literal 0 HcmV?d00001