From 6086bc0f0ce82871d392b37404a25f777b93f991 Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Tue, 17 Dec 2019 01:58:51 +0000 Subject: [PATCH] Quantum Armor Have fun, sorry it took years --- .../java/techreborn/events/ModRegistry.java | 6 + .../java/techreborn/init/TRArmorMaterial.java | 5 +- src/main/java/techreborn/init/TRContent.java | 7 + .../items/armor/ItemQuantumSuit.java | 160 ++++++++++++++++++ .../techreborn/items/armor/ItemTRArmour.java | 10 ++ .../textures/models/armor/quantum_layer_1.png | Bin 0 -> 1162 bytes .../textures/models/armor/quantum_layer_2.png | Bin 0 -> 672 bytes .../assets/techreborn/lang/en_us.json | 5 + .../techreborn/models/item/quantum_boots.json | 6 + .../models/item/quantum_chestplate.json | 6 + .../models/item/quantum_helmet.json | 6 + .../models/item/quantum_leggings.json | 6 + .../textures/item/armor/quantum_boots.png | Bin 0 -> 312 bytes .../item/armor/quantum_chestplate.png | Bin 0 -> 328 bytes .../textures/item/armor/quantum_helmet.png | Bin 0 -> 290 bytes .../textures/item/armor/quantum_leggings.png | Bin 0 -> 319 bytes .../crafting_table/armor/quantum_boots.json | 22 +++ .../armor/quantum_chestplate.json | 28 +++ .../crafting_table/armor/quantum_helmet.json | 22 +++ .../armor/quantum_leggings.json | 25 +++ 20 files changed, 312 insertions(+), 2 deletions(-) create mode 100644 src/main/java/techreborn/items/armor/ItemQuantumSuit.java create mode 100644 src/main/resources/assets/minecraft/textures/models/armor/quantum_layer_1.png create mode 100644 src/main/resources/assets/minecraft/textures/models/armor/quantum_layer_2.png create mode 100644 src/main/resources/assets/techreborn/models/item/quantum_boots.json create mode 100644 src/main/resources/assets/techreborn/models/item/quantum_chestplate.json create mode 100644 src/main/resources/assets/techreborn/models/item/quantum_helmet.json create mode 100644 src/main/resources/assets/techreborn/models/item/quantum_leggings.json create mode 100644 src/main/resources/assets/techreborn/textures/item/armor/quantum_boots.png create mode 100644 src/main/resources/assets/techreborn/textures/item/armor/quantum_chestplate.png create mode 100644 src/main/resources/assets/techreborn/textures/item/armor/quantum_helmet.png create mode 100644 src/main/resources/assets/techreborn/textures/item/armor/quantum_leggings.png create mode 100644 src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_boots.json create mode 100644 src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_chestplate.json create mode 100644 src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_helmet.json create mode 100644 src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_leggings.json diff --git a/src/main/java/techreborn/events/ModRegistry.java b/src/main/java/techreborn/events/ModRegistry.java index c773fa117..f3346c729 100644 --- a/src/main/java/techreborn/events/ModRegistry.java +++ b/src/main/java/techreborn/events/ModRegistry.java @@ -61,6 +61,7 @@ import techreborn.items.ItemScrapBox; import techreborn.items.armor.ItemCloakingDevice; import techreborn.items.armor.ItemLapotronicOrbpack; import techreborn.items.armor.ItemLithiumIonBatpack; +import techreborn.items.armor.ItemQuantumSuit; import techreborn.items.armor.ItemTRArmour; import techreborn.items.battery.*; import techreborn.items.tool.ItemDebugTool; @@ -138,6 +139,11 @@ public class ModRegistry { Arrays.stream(Parts.values()).forEach(value -> RebornRegistry.registerItem(value.item)); Arrays.stream(Upgrades.values()).forEach(value -> RebornRegistry.registerItem(value.item)); + RebornRegistry.registerItem(TRContent.QUANTUM_HELMET = InitUtils.setup(new ItemQuantumSuit(TRArmorMaterial.QUANTUM, EquipmentSlot.HEAD), "quantum_helmet")); + RebornRegistry.registerItem(TRContent.QUANTUM_CHESTPLATE = InitUtils.setup(new ItemQuantumSuit(TRArmorMaterial.QUANTUM, EquipmentSlot.CHEST), "quantum_chestplate")); + RebornRegistry.registerItem(TRContent.QUANTUM_LEGGINGS = InitUtils.setup(new ItemQuantumSuit(TRArmorMaterial.QUANTUM, EquipmentSlot.LEGS), "quantum_leggings")); + RebornRegistry.registerItem(TRContent.QUANTUM_BOOTS = InitUtils.setup(new ItemQuantumSuit(TRArmorMaterial.QUANTUM, EquipmentSlot.FEET), "quantum_boots")); + // Gem armor & tools if (TechRebornConfig.enableGemArmorAndTools) { // Todo: repair with tags diff --git a/src/main/java/techreborn/init/TRArmorMaterial.java b/src/main/java/techreborn/init/TRArmorMaterial.java index 32721e9ba..430fab9c1 100644 --- a/src/main/java/techreborn/init/TRArmorMaterial.java +++ b/src/main/java/techreborn/init/TRArmorMaterial.java @@ -42,13 +42,14 @@ public enum TRArmorMaterial implements ArmorMaterial { }), RUBY(16, new int[] { 2, 7, 5, 2 }, 10, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 0.0F, () -> { return Ingredient.ofItems(TRContent.Gems.RUBY.asItem()); - }), + }), SAPPHIRE(19, new int[] { 4, 4, 4, 4 }, 8, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 0.0F, () -> { return Ingredient.ofItems(TRContent.Gems.SAPPHIRE.asItem()); }), PERIDOT(17, new int[] { 3, 8, 3, 2 }, 16, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 0.0F, () -> { return Ingredient.ofItems(TRContent.Gems.PERIDOT.asItem()); - }), + }), + QUANTUM(75, new int[] { 3, 6, 8, 3 }, 10, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 0.0F, () -> Ingredient.EMPTY), CLOAKING(5, new int[] { 1, 2, 3, 1 }, 0, SoundEvents.ITEM_ARMOR_EQUIP_GOLD, 0.0F, () -> Ingredient.EMPTY), LITHIUMBATPACK(25, new int[]{2, 5, 6, 2}, 10, SoundEvents.ITEM_ARMOR_EQUIP_TURTLE, 0.0F, () -> Ingredient.EMPTY), LAPOTRONPACK(33, new int[]{3, 6, 8, 3}, 10, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 2.0F, () -> Ingredient.EMPTY); diff --git a/src/main/java/techreborn/init/TRContent.java b/src/main/java/techreborn/init/TRContent.java index 9f0f963f0..2a1fb693f 100644 --- a/src/main/java/techreborn/init/TRContent.java +++ b/src/main/java/techreborn/init/TRContent.java @@ -67,6 +67,7 @@ import techreborn.config.TechRebornConfig; import techreborn.entities.EntityNukePrimed; import techreborn.items.ItemDynamicCell; import techreborn.items.ItemUpgrade; +import techreborn.items.armor.ItemQuantumSuit; import techreborn.utils.InitUtils; import javax.annotation.Nullable; @@ -135,6 +136,12 @@ public class TRContent { public static Item MANUAL; public static ItemDynamicCell CELL; + //Quantum Suit + public static ItemQuantumSuit QUANTUM_HELMET; + public static ItemQuantumSuit QUANTUM_CHESTPLATE; + public static ItemQuantumSuit QUANTUM_LEGGINGS; + public static ItemQuantumSuit QUANTUM_BOOTS; + // Gem armor & tools @Nullable public static Item BRONZE_SWORD; diff --git a/src/main/java/techreborn/items/armor/ItemQuantumSuit.java b/src/main/java/techreborn/items/armor/ItemQuantumSuit.java new file mode 100644 index 000000000..b9b2f5b21 --- /dev/null +++ b/src/main/java/techreborn/items/armor/ItemQuantumSuit.java @@ -0,0 +1,160 @@ +package techreborn.items.armor; + +import com.google.common.collect.HashMultimap; +import com.google.common.collect.Multimap; +import net.fabricmc.api.EnvType; +import net.fabricmc.api.Environment; +import net.minecraft.entity.EquipmentSlot; +import net.minecraft.entity.attribute.EntityAttributeModifier; +import net.minecraft.entity.attribute.EntityAttributes; +import net.minecraft.entity.effect.StatusEffectInstance; +import net.minecraft.entity.effect.StatusEffects; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.item.ArmorMaterial; +import net.minecraft.item.ItemGroup; +import net.minecraft.item.ItemStack; +import net.minecraft.util.DefaultedList; +import reborncore.api.items.ArmorFovHandler; +import reborncore.api.items.ArmorRemoveHandler; +import reborncore.api.items.ArmorTickable; +import reborncore.api.items.ItemStackModifiers; +import reborncore.common.powerSystem.PowerSystem; +import reborncore.common.util.ItemUtils; +import team.reborn.energy.Energy; +import team.reborn.energy.EnergyHolder; +import team.reborn.energy.EnergySide; +import team.reborn.energy.EnergyTier; +import techreborn.utils.InitUtils; + +public class ItemQuantumSuit extends ItemTRArmour implements ItemStackModifiers, ArmorTickable, ArmorRemoveHandler, ArmorFovHandler, EnergyHolder { + + public static final double ENERGY_FLY = 50; + public static final double ENERGY_SWIM = 20; + public static final double ENERGY_BREATHING = 20; + public static final double ENERGY_SPRINTING = 20; + + public ItemQuantumSuit(ArmorMaterial material, EquipmentSlot slot) { + super(material, slot); + } + + @Override + public void getAttributeModifiers(EquipmentSlot equipmentSlot, ItemStack stack, Multimap attributes) { + attributes.removeAll(EntityAttributes.MOVEMENT_SPEED.getId()); + + if (this.slot == EquipmentSlot.LEGS && equipmentSlot == EquipmentSlot.LEGS) { + if (Energy.of(stack).getEnergy() > ENERGY_SPRINTING) { + attributes.put(EntityAttributes.MOVEMENT_SPEED.getId(), new EntityAttributeModifier(MODIFIERS[equipmentSlot.getEntitySlotId()],"Movement Speed", 0.15, EntityAttributeModifier.Operation.ADDITION)); + } + } + + if(equipmentSlot == this.slot && Energy.of(stack).getEnergy() > 0) { + attributes.put(EntityAttributes.ARMOR.getId(), new EntityAttributeModifier(MODIFIERS[slot.getEntitySlotId()], "Armor modifier", 20, EntityAttributeModifier.Operation.ADDITION)); + attributes.put(EntityAttributes.KNOCKBACK_RESISTANCE.getId(), new EntityAttributeModifier(MODIFIERS[slot.getEntitySlotId()], "Knockback modifier", 2, EntityAttributeModifier.Operation.ADDITION)); + } + } + + @Override + public void tickArmor(ItemStack stack, PlayerEntity playerEntity) { + switch (this.slot) { + case HEAD: + if (playerEntity.isInWater()) { + if (Energy.of(stack).use(ENERGY_BREATHING)) { + playerEntity.addStatusEffect(new StatusEffectInstance(StatusEffects.WATER_BREATHING, 5, 1)); + } + } + break; + case CHEST: + if (Energy.of(stack).getEnergy() > ENERGY_FLY) { + playerEntity.abilities.allowFlying = true; + if (playerEntity.abilities.flying) { + Energy.of(stack).use(ENERGY_FLY); + } + } else { + playerEntity.abilities.allowFlying = false; + playerEntity.abilities.flying = false; + } + break; + case LEGS: + if (playerEntity.isSprinting()) { + Energy.of(stack).use(ENERGY_SPRINTING); + } + break; + case FEET: + if (playerEntity.isSwimming()) { + if (Energy.of(stack).use(ENERGY_SWIM)) { + playerEntity.addStatusEffect(new StatusEffectInstance(StatusEffects.DOLPHINS_GRACE, 5, 1)); + } + } + break; + default: + + } + } + + @Override + public Multimap getModifiers(EquipmentSlot slot) { + return HashMultimap.create(); + } + + @Override + public void onRemoved(PlayerEntity playerEntity) { + if (this.slot == EquipmentSlot.CHEST) { + if (!playerEntity.isCreative() && !playerEntity.isSpectator()) { + playerEntity.abilities.allowFlying = false; + playerEntity.abilities.flying = false; + } + } + } + + @Override + public float changeFov(float old, ItemStack stack, PlayerEntity playerEntity) { + if (this.slot == EquipmentSlot.LEGS && Energy.of(stack).getEnergy() > ENERGY_SPRINTING) { + old -= 0.6; //TODO possibly make it better + } + return old; + } + + @Override + public double getDurability(ItemStack stack) { + return 1 - ItemUtils.getPowerForDurabilityBar(stack); + } + + @Override + public boolean showDurability(ItemStack stack) { + return true; + } + + @Override + public int getDurabilityColor(ItemStack stack) { + return PowerSystem.getDisplayPower().colour; + } + + @Override + public boolean canRepair(ItemStack itemStack_1, ItemStack itemStack_2) { + return false; + } + + @Override + public double getMaxStoredPower() { + return 40_000_000; + } + + @Override + public EnergyTier getTier() { + return EnergyTier.HIGH; + } + + @Override + public double getMaxInput(EnergySide side) { + return 2048; + } + + @Environment(EnvType.CLIENT) + @Override + public void appendStacks(ItemGroup group, DefaultedList itemList) { + if (!isIn(group)) { + return; + } + InitUtils.initPoweredItems(this, itemList); + } +} diff --git a/src/main/java/techreborn/items/armor/ItemTRArmour.java b/src/main/java/techreborn/items/armor/ItemTRArmour.java index 25efb34fe..fa03a0388 100644 --- a/src/main/java/techreborn/items/armor/ItemTRArmour.java +++ b/src/main/java/techreborn/items/armor/ItemTRArmour.java @@ -33,11 +33,21 @@ import reborncore.common.util.ItemDurabilityExtensions; import reborncore.common.util.ItemUtils; import techreborn.TechReborn; +import java.util.UUID; + /** * Created by modmuss50 on 26/02/2016. */ public class ItemTRArmour extends ArmorItem implements ItemDurabilityExtensions { + //Thanks for being private + public static final UUID[] MODIFIERS = new UUID[] { + UUID.fromString("845DB27C-C624-495F-8C9F-6020A9A58B6B"), + UUID.fromString("D8499B04-0E66-4726-AB29-64469D734E0D"), + UUID.fromString("9F3D476D-C118-4544-8365-64846904B48E"), + UUID.fromString("2AD3F246-FEE1-4E67-B886-69FD380BB150") + }; + String repairOreDict = ""; public ItemTRArmour(ArmorMaterial material, EquipmentSlot slot) { diff --git a/src/main/resources/assets/minecraft/textures/models/armor/quantum_layer_1.png b/src/main/resources/assets/minecraft/textures/models/armor/quantum_layer_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a6e5ca99c91f4dc44c9be8e5e8af06b4b6f209f9 GIT binary patch literal 1162 zcmV;51aN2bZe?^J zG%hhNF=Hy6O8@`_2uVaiRA@uxm@#TwK@f&@6W_!~a1mE(d;*`rWzJy80RkypyGWT7 z38W09Gzp{#1X37M#V_w$-Y0&IR+66~!gdCJ&+N?X?)XsAZQ4I^o`P;_f*hzCVU4#{Oar7uzdf= zQ*Sq5l87Q=~vP8l^j#7&+!o1vOz@8-Pzc^xB%W ziR^Lp?QZz=a~NKJzH4yo{(w0TX-Insx=1dB2KyRdUM(EBw#`7a!`EFK5N8j`>v!z_ z`X2)RtO`Obn#IAct`aj(qDYWynpp0UzEQes9}4XhA(FsX6Zc`;I#pL+UFXo~IumDS zXT#CaQ3H03S3s=#1Tk+H4!n9~64%)d_qMzl4UM>CQn5Y|BgAhNQoKn#89^(=}elqpa0Y(RI#&&m^1W>0}eIGe$0R z^dXEPzg#YxokCvb&Kz&loaj1dqLFpOECm15h$fk%-?`}P>+5z4(q}U`QEYUcaNzi|wU}ub6eF&PO z^ARvcUXlV3GmdCagxlCgjnb`Kw2!9ybc!5{&}VTLWfR;y|AB&!7&*oz<{J43q`$7C zuogh{J4Pno2A9O@2S*K5xVc3EYy@KZGS;(&r-laP7>$PT-yo7o^= zX1S3zx@_8VC4`L_%Yw0K3OV&tfEYH{-}>?LFmIGDalxN9kxiJ0xFLei=MQ1g zEFSSx(Z-l3A=f3Axk%>cjX{VdskG0}&xg~~)AsEY8||2HuI7!hK{~PaBAa77mbA^# zCZ2?9I_ZLxhd?5n*J cUdOQb3wF|PY_JA)9RL6T07*qoM6N<$f<7iE1poj5 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/minecraft/textures/models/armor/quantum_layer_2.png b/src/main/resources/assets/minecraft/textures/models/armor/quantum_layer_2.png new file mode 100644 index 0000000000000000000000000000000000000000..a1e61fb29986ee499cbecec088d2b9e4b3082186 GIT binary patch literal 672 zcmeAS@N?(olHy`uVBq!ia0vp^4nVBH!3HE3&8=$zQY`6?zK#qG8~eHcB(eheoCO|{ z#S9F5hd`K7RKu$QC@4|l8c`CQpH@J=V8D_^9WJbC^NjONU*DL0 zQ=T*Psejdv^gYS@Bhw>8wWfM44O$tZH8rqBz%A48$(hP65=GB!qIfKe<<6eH{X21r z+GOMB7w-TiN{)W~q4|7w!#+RpiK)#ccJ1;b}hqu>5do%Q_dw(EC}F(y5W28vI8 zQv6cv%ygh@e)BGn^sMXi@0sr07`xi8+efeAPhqH3f-e7=e^q<= zW}khw%9ZEY`*-nG*Y9SPzE+ydZ6N9?#JkC$ruyZc-ld=CIL|R}{JhI|V!b|tea9cO z0}Q_$%sQC9J)gYpxlGh;cc1N=N-Nbx9&Gr!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt3(J;P+JIo?1u+dN$y zLoEE)1{m@kG7vZ|eX}B3KA^Kv++dq?C1di@3k!vvRn@9aD49(cSg;^!(MzVjI?N6`eG&X4Yl zyn9k+w7AJ%Tf)G8-p1$IK8bq1kKtTPPpif-D&ArI5s)s`QFw7W&<6~ju6{1-oD!M< D1Kn^z literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/techreborn/textures/item/armor/quantum_chestplate.png b/src/main/resources/assets/techreborn/textures/item/armor/quantum_chestplate.png new file mode 100644 index 0000000000000000000000000000000000000000..f98ac0dc20bd008fea1a9b0e459b6a360a1420c4 GIT binary patch literal 328 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt3(J;P+JIo?1u$2?se zLoEEy_8IaWa^PWk-&?Y$mt7(71Cy7=1J)^mu3aG_6IUEC2)w4F*x1%Ib1TwYto#yn%Di@s#SfGNIFYs;hWvDPu$80ic2NN_MORDY6aq^ZY{vdBPip6)iz1s{5uSQ1aH zj1TxSOVft)Lwv^K`}>*N9x8rOZdkZYLu0~uHO49JUxnLum_O|oIkr*iSKWf3ce3@- VKdsN}+W~#V;OXk;vd$@?2>@`*diDSS literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/techreborn/textures/item/armor/quantum_helmet.png b/src/main/resources/assets/techreborn/textures/item/armor/quantum_helmet.png new file mode 100644 index 0000000000000000000000000000000000000000..2cb427ebf44bb183b464c2fdf4b06612c953ca6a GIT binary patch literal 290 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt3(J;P+JIo?1u3p`yM zLoEE0CDI=J|NlRs=F^ql{|0+%uF6?RtMv;XFsc9fNp?-*-Np6)mHYp(N`HEFmEEBC zI>U@K0fvo^vzpW78MA9XJdl)Vz7g2 zvbOrq`~Nq$|Np-|_AmP}1G_T{D~fy=f*CINbn}PyaXL&oan9{Ko1;F%UjA~{j^3V$ fN8K5X5)v2~gubi)zLj|texS3j3^P6!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L5ULAh?3y^w370~qEv>0#LT=By}Z;C1rt3(J;P+JIo?1udp%to zLoEE)PT0tI$biS?b8pUHGdqUPh4B{z*?uq`TjkvDBdcZDc+%DObck8%3(sk5uJ87~ zw58kS$lTk16_*!>hyCAu%Be*nr+vH0_3*ov*H$Yz7(8FOCdgaBPDbC9Y*sLu^tfR@t4YBL-ROBQ z#VuOI7Jz2;(d_K{GQ9~_r&Nfb^sy>;`EwZ>BZL$69#hFE*+0zJau M>FVdQ&MBb@0B3)C{Qv*} literal 0 HcmV?d00001 diff --git a/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_boots.json b/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_boots.json new file mode 100644 index 000000000..b050ee3d5 --- /dev/null +++ b/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_boots.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "L L", + "D D", + "S S" + ], + "key": { + "S": { + "item": "techreborn:superconductor" + }, + "L": { + "item": "techreborn:lapotron_crystal" + }, + "D": { + "item": "techreborn:data_storage_chip" + } + }, + "result": { + "item": "techreborn:quantum_boots" + } +} \ No newline at end of file diff --git a/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_chestplate.json b/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_chestplate.json new file mode 100644 index 000000000..17460e379 --- /dev/null +++ b/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_chestplate.json @@ -0,0 +1,28 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "P P", + "SLS", + "DID" + ], + "key": { + "P": { + "item": "techreborn:tungstensteel_plate" + }, + "S": { + "item": "techreborn:superconductor" + }, + "L": { + "item": "techreborn:lapotron_crystal" + }, + "D": { + "item": "techreborn:data_storage_chip" + }, + "I": { + "item": "techreborn:iridium_neutron_reflector" + } + }, + "result": { + "item": "techreborn:quantum_chestplate" + } +} \ No newline at end of file diff --git a/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_helmet.json b/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_helmet.json new file mode 100644 index 000000000..692e3efd8 --- /dev/null +++ b/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_helmet.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "DLD", + "S S", + " " + ], + "key": { + "S": { + "item": "techreborn:superconductor" + }, + "L": { + "item": "techreborn:lapotron_crystal" + }, + "D": { + "item": "techreborn:data_storage_chip" + } + }, + "result": { + "item": "techreborn:quantum_helmet" + } +} \ No newline at end of file diff --git a/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_leggings.json b/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_leggings.json new file mode 100644 index 000000000..1e16303a4 --- /dev/null +++ b/src/main/resources/data/techreborn/recipes/crafting_table/armor/quantum_leggings.json @@ -0,0 +1,25 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "DLD", + "S S", + "P P" + ], + "key": { + "P": { + "item": "techreborn:tungstensteel_plate" + }, + "S": { + "item": "techreborn:superconductor" + }, + "L": { + "item": "techreborn:lapotron_crystal" + }, + "D": { + "item": "techreborn:data_storage_chip" + } + }, + "result": { + "item": "techreborn:quantum_leggings" + } +} \ No newline at end of file