From 70a8734bb94dad3f47be07de779a866195325b04 Mon Sep 17 00:00:00 2001 From: Maya <10861407+serenibyss@users.noreply.github.com> Date: Thu, 12 Sep 2024 14:48:44 -0500 Subject: [PATCH] 2.7 Stargate (#980) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Martin Robertz Co-authored-by: NotAPenguin Co-authored-by: 初夏同学 <30284813+wohaopa@users.noreply.github.com> Co-authored-by: GDCloud --- .../auxiliary/NEIGTNewHorizonsConfig.java | 4 - .../dreammaster/gthandler/CustomItemList.java | 7 +- .../gthandler/GT_CraftingRecipeLoader.java | 2 +- .../gthandler/GT_Loader_Items.java | 22 +- .../gthandler/recipes/AssemblerRecipes.java | 2 +- .../recipes/AssemblingLineRecipes.java | 99 +++++ .../gthandler/recipes/AutoclaveRecipes.java | 14 +- .../recipes/BlastFurnaceRecipes.java | 20 + .../gthandler/recipes/DTPFRecipes.java | 2 +- .../gthandler/recipes/ExtractorRecipes.java | 2 +- .../gthandler/recipes/MixerRecipes.java | 36 +- .../java/com/dreammaster/item/ItemList.java | 5 + .../dreammaster/scripts/ScriptSGCraft.java | 416 ++++++++++-------- .../assets/dreamcraft/lang/en_US.lang | 9 +- .../textures/items/itemHarmonicChevron.png | Bin 0 -> 3869 bytes .../items/itemHarmonicChevron.png.mcmeta | 5 + .../textures/items/itemHarmonicFramePart.png | Bin 0 -> 6705 bytes .../items/itemHarmonicFramePart.png.mcmeta | 5 + .../textures/items/itemHarmonicGatePlate.png | Bin 0 -> 4423 bytes .../items/itemHarmonicGatePlate.png.mcmeta | 5 + .../items/itemStargateCrystalAncients.png | Bin 0 -> 304 bytes .../items/itemStargateCrystalDust.png | Bin 536 -> 397 bytes .../items/itemStargateDustAncients.png | Bin 0 -> 536 bytes 23 files changed, 423 insertions(+), 232 deletions(-) create mode 100644 src/main/resources/assets/dreamcraft/textures/items/itemHarmonicChevron.png create mode 100644 src/main/resources/assets/dreamcraft/textures/items/itemHarmonicChevron.png.mcmeta create mode 100644 src/main/resources/assets/dreamcraft/textures/items/itemHarmonicFramePart.png create mode 100644 src/main/resources/assets/dreamcraft/textures/items/itemHarmonicFramePart.png.mcmeta create mode 100644 src/main/resources/assets/dreamcraft/textures/items/itemHarmonicGatePlate.png create mode 100644 src/main/resources/assets/dreamcraft/textures/items/itemHarmonicGatePlate.png.mcmeta create mode 100644 src/main/resources/assets/dreamcraft/textures/items/itemStargateCrystalAncients.png create mode 100644 src/main/resources/assets/dreamcraft/textures/items/itemStargateDustAncients.png diff --git a/src/main/java/com/dreammaster/auxiliary/NEIGTNewHorizonsConfig.java b/src/main/java/com/dreammaster/auxiliary/NEIGTNewHorizonsConfig.java index ab6993971..9aaf97a31 100644 --- a/src/main/java/com/dreammaster/auxiliary/NEIGTNewHorizonsConfig.java +++ b/src/main/java/com/dreammaster/auxiliary/NEIGTNewHorizonsConfig.java @@ -154,10 +154,6 @@ public void loadConfig() { API.hideItem(GTModHandler.getModItem(Natura.ID, "barleyFood", 1, 8, missing)); } - if (SGCraft.isModLoaded()) { - API.hideItem(GTModHandler.getModItem(SGCraft.ID, "sgControllerCrystal", 1, 0, missing)); - } - if (EnderIO.isModLoaded()) { ItemStack creativeBank = GTModHandler.getModItem(EnderIO.ID, "blockCapBank", 1, 0, missing); creativeBank.setTagInfo("type", new NBTTagString("CREATIVE")); diff --git a/src/main/java/com/dreammaster/gthandler/CustomItemList.java b/src/main/java/com/dreammaster/gthandler/CustomItemList.java index 6153702c5..bceabc533 100644 --- a/src/main/java/com/dreammaster/gthandler/CustomItemList.java +++ b/src/main/java/com/dreammaster/gthandler/CustomItemList.java @@ -429,7 +429,12 @@ public enum CustomItemList implements IItemContainer { QuantumCircuitDimensional, GatePlateDimensional, ChevronDimensional, - FramePartDimensional; + FramePartDimensional, + GatePlateHarmonic, + ChevronHarmonic, + FramePartHarmonic, + StargateDustAncients, + StargateCrystalAncients; private ItemStack mStack; private boolean mHasNotBeenSet = true; diff --git a/src/main/java/com/dreammaster/gthandler/GT_CraftingRecipeLoader.java b/src/main/java/com/dreammaster/gthandler/GT_CraftingRecipeLoader.java index 9e8719d86..330ddb7c4 100644 --- a/src/main/java/com/dreammaster/gthandler/GT_CraftingRecipeLoader.java +++ b/src/main/java/com/dreammaster/gthandler/GT_CraftingRecipeLoader.java @@ -120,7 +120,7 @@ public void run() { GTModHandler.RecipeBits.BUFFERED | GTModHandler.RecipeBits.NOT_REMOVABLE, new Object[] { "PSP", "SwS", "PSP", 'P', OrePrefixes.plate.get(MaterialsUEVplus.MagnetohydrodynamicallyConstrainedStarMatter), 'S', - GTOreDictUnificator.get("plateShirabon", 1) }); + OrePrefixes.plate.get(MaterialsUEVplus.MagMatter) }); // Mine and Blade Battlegear remove recipes NBT? Object[] o = new Object[0]; diff --git a/src/main/java/com/dreammaster/gthandler/GT_Loader_Items.java b/src/main/java/com/dreammaster/gthandler/GT_Loader_Items.java index cc53e198c..b8dd4bf2f 100644 --- a/src/main/java/com/dreammaster/gthandler/GT_Loader_Items.java +++ b/src/main/java/com/dreammaster/gthandler/GT_Loader_Items.java @@ -448,6 +448,11 @@ private void registerItems() { CustomItemList.GatePlateDimensional.set(ItemList.GatePlateDimensional.getIS()); CustomItemList.ChevronDimensional.set(ItemList.ChevronDimensional.getIS()); CustomItemList.FramePartDimensional.set(ItemList.FramePartDimensional.getIS()); + CustomItemList.GatePlateHarmonic.set(ItemList.GatePlateHarmonic.getIS()); + CustomItemList.ChevronHarmonic.set(ItemList.ChevronHarmonic.getIS()); + CustomItemList.FramePartHarmonic.set(ItemList.FramePartHarmonic.getIS()); + CustomItemList.StargateDustAncients.set(ItemList.StargateDustAncients.getIS()); + CustomItemList.StargateCrystalAncients.set(ItemList.StargateCrystalAncients.getIS()); } private void registerTooltips() { @@ -457,7 +462,9 @@ private void registerTooltips() { ItemList.ChevronOrigin.getIS(), ItemList.FramePartOrigin.getIS(), ItemList.GatePlateOrigin.getIS(), - ItemList.NanoCircuitOrigin.getIS()); + ItemList.NanoCircuitOrigin.getIS(), + ItemList.StargateDustAncients.getIS(), + ItemList.StargateCrystalAncients.getIS()); List polychrome = Arrays.asList( ItemList.PikoCircuitPolychrome.getIS(), ItemList.QuantumCircuitPolychrome.getIS(), @@ -470,6 +477,10 @@ private void registerTooltips() { ItemList.GatePlateDimensional.getIS(), ItemList.ChevronDimensional.getIS(), ItemList.FramePartDimensional.getIS()); + List harmonic = Arrays.asList( + ItemList.GatePlateHarmonic.getIS(), + ItemList.ChevronHarmonic.getIS(), + ItemList.FramePartHarmonic.getIS()); for (ItemStack itemStack : origin) { addItemTooltip( itemStack, @@ -500,5 +511,14 @@ private void registerTooltips() { + StatCollector.translateToLocal("item.Dimensional.version")); } + for (ItemStack itemStack : harmonic) { + addItemTooltip( + itemStack, + () -> EnumChatFormatting.DARK_PURPLE + StatCollector.translateToLocal("item.Harmonic.tooltip") + + EnumChatFormatting.RESET + + EnumChatFormatting.BLUE + + " " + + StatCollector.translateToLocal("item.Harmonic.version")); + } } } diff --git a/src/main/java/com/dreammaster/gthandler/recipes/AssemblerRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/AssemblerRecipes.java index cde7b4d4a..a50c9f4c5 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/AssemblerRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/AssemblerRecipes.java @@ -831,7 +831,7 @@ public void run() { GTValues.RA.stdBuilder().itemInputs( GTOreDictUnificator .get(OrePrefixes.plate, MaterialsUEVplus.MagnetohydrodynamicallyConstrainedStarMatter, 4L), - GTOreDictUnificator.get("plateShirabon", 4), + GTOreDictUnificator.get(OrePrefixes.plate, MaterialsUEVplus.MagMatter, 4L), GTUtility.getIntegratedCircuit(8)).itemOutputs(CustomItemList.Casing_UXV.get(1L)) .duration(2 * SECONDS + 10 * TICKS).eut(16).addTo(assemblerRecipes); diff --git a/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java index 5444d7318..0d37ccbe3 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/AssemblingLineRecipes.java @@ -47,6 +47,7 @@ import appeng.api.AEApi; import bartworks.common.loaders.ItemRegistry; +import bartworks.system.material.WerkstoffLoader; import goodgenerator.items.GGMaterial; import goodgenerator.util.ItemRefer; import gregtech.api.GregTechAPI; @@ -877,6 +878,104 @@ public void run() { com.dreammaster.item.ItemList.FramePartDimensional.getIS(1), 1 * HOURS, (int) TierEU.RECIPE_UXV); + + // EOH Gate + TTRecipeAdder.addResearchableAssemblylineRecipe( + com.dreammaster.item.ItemList.GatePlateDimensional.getIS(1), + (int) TierEU.RECIPE_MAX, + 32768, + (int) TierEU.RECIPE_UXV, + 64, + new ItemStack[] { ItemList.Casing_Dim_Bridge.get(64), + tectech.thing.CustomItemList.StabilisationFieldGeneratorTier8.get(64), + GTOreDictUnificator.get("blockShirabon", 64L), + GTOreDictUnificator.get("blockShirabon", 64L), + GTOreDictUnificator.get(OrePrefixes.block, MaterialsUEVplus.SpaceTime, 64L), + GTOreDictUnificator.get(OrePrefixes.circuit, Materials.UXV, 16L), + GTOreDictUnificator.get(OrePrefixes.plateDense, MaterialsUEVplus.SpaceTime, 8L), + GTOreDictUnificator.get(OrePrefixes.plateDense, MaterialsUEVplus.Universium, 8L), + GTOreDictUnificator.get(OrePrefixes.plateDense, Materials.Infinity, 8L), + GTOreDictUnificator.get("plateDenseShirabon", 8L), ItemList.Sensor_UXV.get(16L), + ItemList.Emitter_UXV.get(16L), + getModItem(EternalSingularity.ID, "eternal_singularity", 16L), + MaterialsUEVplus.Universium.getNanite(16), MaterialsUEVplus.BlackDwarfMatter.getNanite(16), + MaterialsUEVplus.WhiteDwarfMatter.getNanite(16) }, + new FluidStack[] { Materials.Neutronium.getMolten(32_768_000L), + MaterialsUEVplus.SpaceTime.getMolten(4 * 36864L), + Materials.SuperconductorUMVBase.getMolten(4 * 36864L), + MaterialsUEVplus.ExcitedDTEC.getFluid(4 * 36864L) }, + com.dreammaster.item.ItemList.GatePlateHarmonic.getIS(1), + 125_000 * SECONDS, + (int) TierEU.RECIPE_UMV); + + TTRecipeAdder.addResearchableAssemblylineRecipe( + com.dreammaster.item.ItemList.ChevronDimensional.getIS(1), + (int) TierEU.RECIPE_MAX, + 32_768, + (int) TierEU.RECIPE_UXV, + 64, + new ItemStack[] { + GTOreDictUnificator.get(OrePrefixes.block, MaterialsUEVplus.TranscendentMetal, 64L), + GTOreDictUnificator.get("blockShirabon", 64), + tectech.thing.CustomItemList.EOH_Reinforced_Spatial_Casing.get(64), + tectech.thing.CustomItemList.EOH_Reinforced_Spatial_Casing.get(64), + GTOreDictUnificator.get(OrePrefixes.frameGt, MaterialsUEVplus.SpaceTime, 16L), + GTOreDictUnificator.get( + OrePrefixes.frameGt, + MaterialsUEVplus.MagnetohydrodynamicallyConstrainedStarMatter, + 16L), + GTOreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Ruby, 16L), + GTOreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Jasper, 16L), + GTOreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Opal, 16L), + GTOreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Sapphire, 16L), + GTOreDictUnificator.get( + OrePrefixes.plateDense, + MaterialsUEVplus.MagnetohydrodynamicallyConstrainedStarMatter, + 8L), + GTOreDictUnificator.get("plateDenseShirabon", 8), ItemList.Electric_Motor_UXV.get(64L), + ItemList.Electric_Piston_UXV.get(64L), ItemList.Field_Generator_UXV.get(16L), + GTOreDictUnificator.get(OrePrefixes.circuit, Materials.UXV, 1L).splitStack(32) }, + new FluidStack[] { Materials.Neutronium.getMolten(32_768_000L), + MaterialsUEVplus.SpaceTime.getMolten(4 * 36864L), + MaterialsUEVplus.MagnetohydrodynamicallyConstrainedStarMatter.getMolten(36864L), + MaterialsUEVplus.ExcitedDTEC.getFluid(4 * 36864L) }, + com.dreammaster.item.ItemList.ChevronHarmonic.getIS(1), + 125_000 * SECONDS, + (int) TierEU.RECIPE_UMV); + + TTRecipeAdder.addResearchableAssemblylineRecipe( + com.dreammaster.item.ItemList.FramePartDimensional.getIS(1), + (int) TierEU.RECIPE_MAX, + 32_768, + (int) TierEU.RECIPE_UXV, + 64, + new ItemStack[] { GTOreDictUnificator.get(OrePrefixes.stickLong, Materials.Infinity, 64L), + GTOreDictUnificator.get(OrePrefixes.stickLong, MaterialsUEVplus.SpaceTime, 64L), + GTOreDictUnificator.get( + OrePrefixes.stickLong, + MaterialsUEVplus.MagnetohydrodynamicallyConstrainedStarMatter, + 64L), + GTOreDictUnificator.get(OrePrefixes.stickLong, Materials.Neutronium, 64L), + + GTOreDictUnificator.get(OrePrefixes.stickLong, Materials.Osmiridium, 64L), + GTOreDictUnificator.get("stickLongShirabon", 64), + new ItemStack(WerkstoffLoader.items.get(OrePrefixes.stickLong), 64, 39), + MaterialsAlloy.QUANTUM.getLongRod(64), MaterialsElements.STANDALONE.HYPOGEN.getLongRod(64), + MaterialsElements.STANDALONE.CELESTIAL_TUNGSTEN.getLongRod(64), + new ItemStack(WerkstoffLoader.items.get(OrePrefixes.stickLong), 64, 10106), + MaterialsElements.STANDALONE.ASTRAL_TITANIUM.getLongRod(64), + + GTOreDictUnificator.get(OrePrefixes.stickLong, Materials.SuperconductorUMVBase, 64L), + GTOreDictUnificator.get(OrePrefixes.stickLong, MaterialsUEVplus.Universium, 64L), + MaterialsAlloy.ABYSSAL.getLongRod(64), + GTOreDictUnificator.get(OrePrefixes.stickLong, MaterialsUEVplus.TranscendentMetal, 64L), }, + new FluidStack[] { Materials.Neutronium.getMolten(32_768_000L), + MaterialsUEVplus.SpaceTime.getMolten(4 * 36864L), + MaterialsUEVplus.Universium.getMolten(4 * 36864L), + MaterialsUEVplus.ExcitedDTEC.getFluid(4 * 36864L) }, + com.dreammaster.item.ItemList.FramePartHarmonic.getIS(1), + 125_000 * SECONDS, + (int) TierEU.RECIPE_UMV); } GTValues.RA.stdBuilder().metadata(RESEARCH_ITEM, ItemList.Hatch_Input_Bus_ME_Advanced.get(1L)) diff --git a/src/main/java/com/dreammaster/gthandler/recipes/AutoclaveRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/AutoclaveRecipes.java index 025df1c03..f2147d6eb 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/AutoclaveRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/AutoclaveRecipes.java @@ -151,15 +151,9 @@ public static void spaceRecipes() { .fluidInputs(Materials.UUMatter.getFluid(250L)).requiresCleanRoom().requiresLowGravity() .duration(10 * MINUTES).eut(TierEU.RECIPE_EV).addTo(autoclaveRecipes); - if (SGCraft.isModLoaded()) { - - GTValues.RA.stdBuilder() - .itemInputs(com.dreammaster.item.ItemList.StargateCrystalDust.getIS().splitStack(64)) - .itemOutputs(GTModHandler.getModItem(SGCraft.ID, "sgCoreCrystal", 1L)).outputChances(10000) - .fluidInputs(Materials.Silver.getPlasma(8000L)).requiresCleanRoom().requiresLowGravity() - .duration(3 * MINUTES).eut(TierEU.RECIPE_ZPM).addTo(autoclaveRecipes); - - } - + GTValues.RA.stdBuilder().itemInputs(com.dreammaster.item.ItemList.StargateDustAncients.getIS().splitStack(64)) + .itemOutputs(com.dreammaster.item.ItemList.StargateCrystalAncients.getIS()).outputChances(10000) + .fluidInputs(Materials.Silver.getPlasma(8000L)).requiresCleanRoom().requiresLowGravity() + .duration(3 * MINUTES).eut(TierEU.RECIPE_ZPM).addTo(autoclaveRecipes); } } diff --git a/src/main/java/com/dreammaster/gthandler/recipes/BlastFurnaceRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/BlastFurnaceRecipes.java index 261e7d811..591f60f6b 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/BlastFurnaceRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/BlastFurnaceRecipes.java @@ -1,8 +1,10 @@ package com.dreammaster.gthandler.recipes; import static gregtech.api.enums.Mods.EnderIO; +import static gregtech.api.enums.Mods.SGCraft; import static gregtech.api.enums.Mods.TinkerConstruct; import static gregtech.api.recipe.RecipeMaps.blastFurnaceRecipes; +import static gregtech.api.util.GTRecipeBuilder.HOURS; import static gregtech.api.util.GTRecipeBuilder.MINUTES; import static gregtech.api.util.GTRecipeBuilder.SECONDS; import static gregtech.api.util.GTRecipeBuilder.TICKS; @@ -16,6 +18,7 @@ import gregtech.api.enums.GTValues; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; +import gregtech.api.enums.MaterialsUEVplus; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.TierEU; import gregtech.api.util.GTModHandler; @@ -1617,5 +1620,22 @@ public void run() { .eut(TierEU.RECIPE_MV).metadata(COIL_HEAT, 1000).addTo(blastFurnaceRecipes); } + + if (SGCraft.isModLoaded()) { + + GTValues.RA.stdBuilder() + .itemInputs(com.dreammaster.item.ItemList.StargateCrystalDust.getIS().splitStack(64)) + .fluidInputs(MaterialsUEVplus.StargateCrystalSlurry.getFluid(128_000_000L)) + .itemOutputs(GTModHandler.getModItem(SGCraft.ID, "sgCoreCrystal", 1L)).duration(7 * 24 * HOURS * 2) + .eut(TierEU.RECIPE_MAX).metadata(COIL_HEAT, 100_000).addTo(blastFurnaceRecipes); // ^ 2 weeks + + GTValues.RA.stdBuilder() + .itemInputs(com.dreammaster.item.ItemList.StargateCrystalDust.getIS().splitStack(64)) + .fluidInputs(MaterialsUEVplus.MagnetohydrodynamicallyConstrainedStarMatter.getMolten(128_000_000L)) + .itemOutputs(GTModHandler.getModItem(SGCraft.ID, "sgControllerCrystal", 1L)) + .duration(7 * 24 * HOURS * 2).eut(TierEU.RECIPE_MAX).metadata(COIL_HEAT, 100_000) + .addTo(blastFurnaceRecipes); + + } } } diff --git a/src/main/java/com/dreammaster/gthandler/recipes/DTPFRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/DTPFRecipes.java index 51b014e72..733c85102 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/DTPFRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/DTPFRecipes.java @@ -746,7 +746,7 @@ public void run() { GTValues.RA.stdBuilder() .itemInputs( GTOreDictUnificator.get(OrePrefixes.block, MaterialsUEVplus.TranscendentMetal, 16), - GTModHandler.getModItem(Avaritia.ID, "Resource", 32L, 8), + GTModHandler.getModItem(Avaritia.ID, "Resource", 16L, 8), GTUtility.copyAmount(0, Particle.getBaseParticle(Particle.HIGGS_BOSON))) .fluidInputs( MaterialsUEVplus.ExcitedDTEC.getFluid(1797693L), diff --git a/src/main/java/com/dreammaster/gthandler/recipes/ExtractorRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/ExtractorRecipes.java index 6935f5aa0..a5893ea76 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/ExtractorRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/ExtractorRecipes.java @@ -173,7 +173,7 @@ public void run() { if (GalacticraftAmunRa.isModLoaded()) { GTValues.RA.stdBuilder() .itemInputs(GTModHandler.getModItem(GalacticraftAmunRa.ID, "tile.baseBlockRock", 1L, 14)) - .itemOutputs(GTModHandler.getModItem(GalacticraftAmunRa.ID, "item.baseItem", 8L, 26)) + .itemOutputs(GTModHandler.getModItem(GalacticraftAmunRa.ID, "item.baseItem", 64L, 26)) .duration(15 * SECONDS).eut(TierEU.RECIPE_UMV).addTo(extractorRecipes); } diff --git a/src/main/java/com/dreammaster/gthandler/recipes/MixerRecipes.java b/src/main/java/com/dreammaster/gthandler/recipes/MixerRecipes.java index df5dcbad4..d741f6127 100644 --- a/src/main/java/com/dreammaster/gthandler/recipes/MixerRecipes.java +++ b/src/main/java/com/dreammaster/gthandler/recipes/MixerRecipes.java @@ -1,6 +1,5 @@ package com.dreammaster.gthandler.recipes; -import static com.dreammaster.bartworksHandler.BartWorksMaterials.getBartWorksMaterialByIGNName; import static gregtech.api.enums.Mods.AppliedEnergistics2; import static gregtech.api.enums.Mods.Avaritia; import static gregtech.api.enums.Mods.BiomesOPlenty; @@ -43,8 +42,8 @@ import gregtech.api.util.GTModHandler; import gregtech.api.util.GTOreDictUnificator; import gregtech.api.util.GTUtility; -import gtPlusPlus.core.material.MaterialsAlloy; import gtPlusPlus.core.material.MaterialsElements; +import gtPlusPlus.core.material.Particle; public class MixerRecipes implements Runnable { @@ -969,6 +968,23 @@ public void run() { GTUtility.getIntegratedCircuit(1)) .itemOutputs(CustomItemList.BioBall.get(1L)).duration(10 * SECONDS).eut(16).addTo(mixerRecipes); + // Stargate-Crystal Dust + GTValues.RA.stdBuilder() + .itemInputs( + ItemList.StableAdhesive.get(64), + ItemList.SuperconductorComposite.get(64), + ItemList.NaquadriaSupersolid.get(64), + ItemList.Timepiece.get(64), + GTUtility.copyAmount(64, Particle.getBaseParticle(Particle.Z_BOSON)), + GTUtility.copyAmount(64, Particle.getBaseParticle(Particle.ETA_MESON)), + GTUtility.copyAmount(64, Particle.getBaseParticle(Particle.LAMBDA)), + GTUtility.copyAmount(64, Particle.getBaseParticle(Particle.OMEGA)), + GTOreDictUnificator.get(OrePrefixes.gem, MaterialsUEVplus.GravitonShard, 4)) + .fluidInputs(Materials.Grade8PurifiedWater.getFluid(1_000_000_000L)) + .itemOutputs(com.dreammaster.item.ItemList.StargateCrystalDust.getIS()).duration(3 * MINUTES) + .eut(TierEU.RECIPE_UXV).addTo(mixerRecipes); + + // Legacy Stargate Crystal Dust GTValues.RA.stdBuilder() .itemInputs( com.dreammaster.item.ItemList.TCetiESeaweedExtract.getIS().splitStack(64), @@ -977,7 +993,7 @@ public void run() { Materials.ChromiumDioxide.getDust(64), GTOreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Jasper, 54L), GTOreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Opal, 47L)) - .itemOutputs(com.dreammaster.item.ItemList.StargateCrystalDust.getIS()).duration(3 * MINUTES) + .itemOutputs(com.dreammaster.item.ItemList.StargateDustAncients.getIS()).duration(3 * MINUTES) .eut(262144).addTo(mixerRecipes); // Astral Silver & Soldering Alloy + reverse @@ -1023,20 +1039,6 @@ public void run() { } - // UMV Superconductor dust recipe. - - GTValues.RA.stdBuilder() - .itemInputs( - GTOreDictUnificator.get(OrePrefixes.dust, MaterialsUEVplus.SpaceTime, 6L), - GTOreDictUnificator.get(OrePrefixes.dust, getBartWorksMaterialByIGNName("Orundum"), 3L), - MaterialsElements.STANDALONE.HYPOGEN.getDust(11), - MaterialsAlloy.TITANSTEEL.getDust(5), - MaterialsElements.STANDALONE.DRAGON_METAL.getDust(2), - GTUtility.getIntegratedCircuit(2)) - .itemOutputs(GTOreDictUnificator.get(OrePrefixes.dust, Materials.SuperconductorUMVBase, 27L)) - .fluidInputs(Materials.Oxygen.getPlasma(144L)).duration(10 * 20).eut(TierEU.RECIPE_UMV) - .addTo(mixerRecipes); - if (EnderIO.isModLoaded()) { GTValues.RA.stdBuilder() diff --git a/src/main/java/com/dreammaster/item/ItemList.java b/src/main/java/com/dreammaster/item/ItemList.java index 710517b36..5d02f2936 100644 --- a/src/main/java/com/dreammaster/item/ItemList.java +++ b/src/main/java/com/dreammaster/item/ItemList.java @@ -611,6 +611,11 @@ public enum ItemList { GatePlateDimensional(new ModSimpleBaseItem("DimensionalGatePlate", ModTabList.ModSpaceTab)), ChevronDimensional(new ModSimpleBaseItem("DimensionalChevron", ModTabList.ModSpaceTab)), FramePartDimensional(new ModSimpleBaseItem("DimensionalFramePart", ModTabList.ModSpaceTab)), + GatePlateHarmonic(new ModSimpleBaseItem("HarmonicGatePlate", ModTabList.ModSpaceTab)), + ChevronHarmonic(new ModSimpleBaseItem("HarmonicChevron", ModTabList.ModSpaceTab)), + FramePartHarmonic(new ModSimpleBaseItem("HarmonicFramePart", ModTabList.ModSpaceTab)), + StargateDustAncients(new ModSimpleBaseItem("StargateDustAncients", ModTabList.ModSpaceTab)), + StargateCrystalAncients(new ModSimpleBaseItem("StargateCrystalAncients", ModTabList.ModSpaceTab)), // Do not delete this EndOfList(null); diff --git a/src/main/java/com/dreammaster/scripts/ScriptSGCraft.java b/src/main/java/com/dreammaster/scripts/ScriptSGCraft.java index 1351d5228..003135b3a 100644 --- a/src/main/java/com/dreammaster/scripts/ScriptSGCraft.java +++ b/src/main/java/com/dreammaster/scripts/ScriptSGCraft.java @@ -1,8 +1,12 @@ package com.dreammaster.scripts; +import static gregtech.api.enums.Mods.AE2FluidCraft; +import static gregtech.api.enums.Mods.AppliedEnergistics2; import static gregtech.api.enums.Mods.BartWorks; import static gregtech.api.enums.Mods.EnderIO; +import static gregtech.api.enums.Mods.GalacticraftAmunRa; import static gregtech.api.enums.Mods.GoodGenerator; +import static gregtech.api.enums.Mods.OpenComputers; import static gregtech.api.enums.Mods.SGCraft; import static gregtech.api.enums.Mods.TecTech; import static gregtech.api.util.GTModHandler.getModItem; @@ -13,15 +17,15 @@ import net.minecraft.item.ItemStack; import com.dreammaster.gthandler.CustomItemList; +import com.gtnewhorizons.gtnhintergalactic.item.IGItems; +import com.gtnewhorizons.gtnhintergalactic.item.ItemMiningDrones; import fox.spiteful.avaritia.crafting.ExtremeCraftingManager; -import goodgenerator.items.GGMaterial; import goodgenerator.loader.Loaders; import gregtech.api.enums.ItemList; import gregtech.api.enums.MaterialsUEVplus; import gregtech.api.enums.OrePrefixes; import gregtech.api.util.GTOreDictUnificator; -import tectech.thing.casing.TTCasingsContainer; public class ScriptSGCraft implements IScriptLoader { @@ -37,216 +41,240 @@ public List getDependencies() { @Override public void loadRecipes() { + + // spotless:off + + ItemStack darkMatterBlock = getModItem(GalacticraftAmunRa.ID, "tile.baseBlockRock", 1, 14, missing); + ItemStack magmatterBlock = GTOreDictUnificator.get(OrePrefixes.block, MaterialsUEVplus.MagMatter, 1L); + ItemStack magmatterSuperdensePlate = GTOreDictUnificator.get(OrePrefixes.plateSuperdense, MaterialsUEVplus.MagMatter, 1L); + ItemStack magmatterNanite = GTOreDictUnificator.get(OrePrefixes.nanite, MaterialsUEVplus.MagMatter, 1L); + ItemStack compact5Coil = new ItemStack(Loaders.compactFusionCoil, 1, 4); + + ItemStack ringBlock = getModItem(SGCraft.ID, "stargateRing", 1, 0, missing); + ItemStack chevronBlock = getModItem(SGCraft.ID, "stargateRing", 1, 1, missing); + ItemStack chevronUpgrade = getModItem(SGCraft.ID, "sgChevronUpgrade", 1, 0, missing); + ItemStack stargateCrystal = getModItem(SGCraft.ID, "sgCoreCrystal", 1, 0, missing); + ItemStack stargateControllerCrystal = getModItem(SGCraft.ID, "sgControllerCrystal", 1, 0, missing); + ItemStack stargateCapacitor = getModItem(SGCraft.ID, "ic2Capacitor", 1, 0, missing); + ItemStack stargateBase = getModItem(SGCraft.ID, "stargateBase", 1, 0, missing); + ItemStack irisBlade = getModItem(SGCraft.ID, "sgIrisBlade", 1, 0, missing); + ItemStack irisUpgrade = getModItem(SGCraft.ID, "sgIrisUpgrade", 1, 0, missing); + ItemStack rfUnit = getModItem(SGCraft.ID, "rfPowerUnit", 1, 0, missing); + ItemStack ocInterface = getModItem(SGCraft.ID, "ocInterface", 1, 0, missing); + ItemStack stargateController = getModItem(SGCraft.ID, "stargateController", 1, 0, missing); + + ItemStack universeCell = getModItem(AppliedEnergistics2.ID, "item.ItemExtremeStorageCell.Universe", 1, 0, missing); + ItemStack universeFluidCell = getModItem(AE2FluidCraft.ID, "fluid_storage.Universe", 1, 0, missing); + ItemStack singularityStorage = getModItem(AppliedEnergistics2.ID, "tile.BlockSingularityCraftingStorage", 1, 0, missing); + ItemStack chaoticCapacitor = createItemStack(EnderIO.ID, "blockCapBank", 1, 0, "{type:\"CREATIVE\",storedEnergyRF:2500000}", missing); + ItemStack keyboard = getModItem(OpenComputers.ID, "keyboard", 1, 0, missing); + + // Stargate Ring Block ExtremeCraftingManager.getInstance().addExtremeShapedOreRecipe( - getModItem(SGCraft.ID, "stargateRing", 1, 0, missing), - "aaabcbbdd", - "aaabbbdee", - "aaabbde--", - "fffbbde--", - "fffbcde--", - "fffbbde--", - "aaabbde--", - "aaabbbdee", - "aaabcbbdd", - 'a', - GTOreDictUnificator.get(OrePrefixes.block, MaterialsUEVplus.BlackDwarfMatter, 1L), - 'b', - CustomItemList.StargateFramePart.get(1L), - 'c', - CustomItemList.StargateChevron.get(1L), - 'd', - CustomItemList.StargateShieldingFoil.get(1L), - 'e', - ItemList.Field_Generator_UXV.get(1L), - 'f', - GTOreDictUnificator.get(OrePrefixes.block, MaterialsUEVplus.TranscendentMetal, 1L)); + ringBlock, + "mmmfcffpp", + "mmmfffpgg", + "mmmffpg--", + "dddffpg--", + "dddfcpg--", + "dddffpg--", + "mmmffpg--", + "mmmfffpgg", + "mmmfcffpp", + 'm', magmatterBlock, + 'd', darkMatterBlock, + 'f', CustomItemList.StargateFramePart.get(1L), + 'c', CustomItemList.StargateChevron.get(1L), + 'p', CustomItemList.StargateShieldingFoil.get(1L), + 'g', ItemList.Field_Generator_UXV.get(1L)); + + // Stargate Chevron Upgrade ExtremeCraftingManager.getInstance().addExtremeShapedOreRecipe( - getModItem(SGCraft.ID, "sgChevronUpgrade", 1, 0, missing), + chevronUpgrade, "---------", - "---aba---", - "---cac---", - "---dbd---", - "---cec---", - "---dcd---", - "---cac---", - "---aba---", + "fpfgfpf--", + "-fcpcf---", + "--sgs----", + "--fpfgfpf", + "---fcpcf-", + "----ege--", + "-----f---", "---------", - 'a', - ItemList.Electric_Piston_UXV.get(1L), - 'b', - CustomItemList.StargateChevron.get(1L), - 'c', - CustomItemList.StargateFramePart.get(1L), - 'd', - ItemList.Field_Generator_UXV.get(1L), - 'e', - ItemList.Sensor_UXV.get(1L)); + 'f', CustomItemList.StargateFramePart.get(1L), + 'c', CustomItemList.StargateChevron.get(1L), + 'p', ItemList.Electric_Piston_UXV.get(1L), + 'g', ItemList.Field_Generator_UXV.get(1L), + 's', ItemList.Sensor_UXV.get(1L), + 'e', ItemList.Emitter_UXV.get(1L)); + + // Stargate Chevron Block ExtremeCraftingManager.getInstance().addExtremeShapedOreRecipe( - getModItem(SGCraft.ID, "stargateRing", 1, 1, missing), - "---------", - "----a----", - "---aba---", - "--acdca--", - "-abdedba-", - "--acdca--", - "---aba---", - "----a----", - "---------", - 'a', - GTOreDictUnificator.get(OrePrefixes.block, MaterialsUEVplus.BlackDwarfMatter, 1L), - 'b', - ItemList.Field_Generator_UXV.get(1L), - 'c', - CustomItemList.QuantumCircuit.get(1L), - 'd', - getModItem(SGCraft.ID, "sgChevronUpgrade", 1, 0, missing), - 'e', - getModItem(SGCraft.ID, "stargateRing", 1, 0, missing)); + chevronBlock, + "----m----", + "---mdm---", + "--mdgdm--", + "-mdfufdm-", + "mdgusugdm", + "-mdfufdm-", + "--mdgdm--", + "---mdm---", + "----m----", + 'm', magmatterBlock, + 'd', darkMatterBlock, + 'u', chevronUpgrade, + 's', ringBlock, + 'g', ItemList.Field_Generator_UXV.get(1L), + 'f', tectech.thing.CustomItemList.Godforge_GravitonFlowModulatorTier3.get(1L)); + + // Stargate Base ExtremeCraftingManager.getInstance().addExtremeShapedOreRecipe( - getModItem(SGCraft.ID, "stargateBase", 1, 0, missing), + stargateBase, "abbcdcbba", "befghgfeb", "beigjgieb", - "cklmnmlkc", - "dklnonlkd", - "cklmnmlkc", - "beigjgieb", + "cklmmmlkc", + "dkpmompkd", + "cklmmmlkc", + "beigngieb", "befghgfeb", "abbcdcbba", - 'a', - ItemList.Sensor_UXV.get(1L), - 'b', - ItemList.Field_Generator_UXV.get(1L), - 'c', - ItemList.Emitter_UXV.get(1L), - 'd', - GTOreDictUnificator.get(OrePrefixes.nanite, MaterialsUEVplus.Universium, 1L), - 'e', - new ItemStack(TTCasingsContainer.SpacetimeCompressionFieldGenerators, 1, 8), - 'f', - GGMaterial.shirabon.get(OrePrefixes.block, 1), - 'g', - CustomItemList.StargateShieldingFoil.get(1L), - 'h', - CustomItemList.StargateFramePart.get(1L), - 'i', - ItemList.ZPM4.get(1L), - 'j', - GTOreDictUnificator - .get(OrePrefixes.plateDense, MaterialsUEVplus.MagnetohydrodynamicallyConstrainedStarMatter, 1L), - 'k', - new ItemStack(TTCasingsContainer.StabilisationFieldGenerators, 1, 8), - 'l', - tectech.thing.CustomItemList.Machine_Multi_EyeOfHarmony.get(1), - 'm', - getModItem(SGCraft.ID, "stargateRing", 1, 0, missing), - 'n', - getModItem(SGCraft.ID, "stargateRing", 1, 1, missing), - 'o', - getModItem(SGCraft.ID, "sgCoreCrystal", 1, 0, missing)); + 'a', ItemList.Transdimensional_Alignment_Matrix.get(1L), + 'b', ItemList.Field_Generator_UXV.get(1L), + 'c', ItemList.Emitter_UXV.get(1L), + 'd', magmatterNanite, + 'e', tectech.thing.CustomItemList.Godforge_GravitonFlowModulatorTier3.get(1L), + 'f', magmatterSuperdensePlate, + 'g', CustomItemList.StargateShieldingFoil.get(1L), + 'h', new ItemStack(IGItems.MiningDrones, 1, ItemMiningDrones.DroneTiers.UXV.ordinal()), + 'i', ItemList.ZPM6.get(1L), + 'j', universeCell, + 'k', tectech.thing.CustomItemList.astralArrayFabricator.get(1L), + 'l', tectech.thing.CustomItemList.Machine_Multi_EyeOfHarmony.get(1L), + 'm', chevronBlock, + 'n', universeFluidCell, + 'o', stargateCrystal, + 'p', IGItems.SpaceElevatorModuleAssemblerT3); + + // Ridiculously Large Capacitor ExtremeCraftingManager.getInstance().addExtremeShapedOreRecipe( - getModItem(SGCraft.ID, "ic2Capacitor", 1, 0, missing), - "---------", + stargateCapacitor, "---------", - "---aaa---", - "--abcba--", - "--acbca--", - "--abcba--", - "---aaa---", + "----e----", + "--pgpgp--", + "-pcscscp-", + "-pbcbcbp-", + "-pcscscp-", + "--pgpgp--", + "----e----", "---------", - "---------", - 'a', - CustomItemList.StargateShieldingFoil.get(1L), - 'b', - ItemList.Field_Generator_UXV.get(1L), - 'c', - createItemStack( - EnderIO.ID, - "blockCapBank", - 1, - 0, - "{type:\"CREATIVE\",storedEnergyRF:2500000}", - missing)); + 'p', CustomItemList.StargateShieldingFoil.get(1L), + 's', tectech.thing.CustomItemList.Godforge_StellarEnergySiphonCasing.get(1), + 'g', ItemList.Field_Generator_UXV.get(1L), + 'e', ItemList.Emitter_UXV.get(1L), + 'b', ItemList.ZPM6.get(1L), + 'c', chaoticCapacitor); + + // Stargate Iris Blade ExtremeCraftingManager.getInstance().addExtremeShapedOreRecipe( - getModItem(SGCraft.ID, "sgIrisBlade", 1, 0, missing), - "-----aaaa", - "----aaaa-", - "---aaaa--", - "--aaaa---", - "-aaaaa---", - "abaaaa---", - "abaaaaa--", - "acbbaaaa-", - "daaaaaaaa", - 'a', - GTOreDictUnificator.get(OrePrefixes.plateDense, MaterialsUEVplus.WhiteDwarfMatter, 1L), - 'b', - ItemList.Electric_Piston_UXV.get(1L), - 'c', - ItemList.ZPM4.get(1L), - 'd', - new ItemStack(Loaders.compactFusionCoil, 1, 3)); + irisBlade, + "-----wwww", + "----wmmw-", + "---wmmw--", + "--wmmw---", + "-wmmmw---", + "wpmmmw---", + "wpmmmmw--", + "wbppmmmw-", + "cwwwwwwww", + 'w', GTOreDictUnificator.get(OrePrefixes.plateSuperdense, MaterialsUEVplus.WhiteDwarfMatter, 1L), + 'm', magmatterSuperdensePlate, + 'p', ItemList.Electric_Piston_UXV.get(1L), + 'b', ItemList.ZPM6.get(1L), + 'c', compact5Coil); + + // Stargate Iris Upgrade ExtremeCraftingManager.getInstance().addExtremeShapedOreRecipe( - getModItem(SGCraft.ID, "sgIrisUpgrade", 1, 0, missing), - "--aaaaa--", - "-b-----b-", - "a-------a", - "a-------a", - "a-------a", - "a-------a", - "a-------a", - "-b-----b-", - "--aaaaa--", - 'a', - getModItem(SGCraft.ID, "sgIrisBlade", 1, 0, missing), - 'b', - new ItemStack(Loaders.compactFusionCoil, 1, 3)); + irisUpgrade, + "ddbbbbbdd", + "db--n--bd", + "b----n--b", + "b-nn-n--b", + "bn--s--nb", + "b--n-nn-b", + "b--n----b", + "db--n--bd", + "ddbbbbbdd", + 'b', irisBlade, + 'd', darkMatterBlock, + 'n', magmatterNanite, + 's', magmatterSuperdensePlate); + + // RF Stargate Power Unit ExtremeCraftingManager.getInstance().addExtremeShapedOreRecipe( - getModItem(SGCraft.ID, "rfPowerUnit", 1, 0, missing), - "aabcccbaa", - "a-b---b-a", - "a-b-d-b-a", - "c--beb--c", - "c-defed-c", - "c--beb--c", - "agg-d-gga", - "a-g---g-a", - "aaacccaaa", - 'a', - GTOreDictUnificator.get(OrePrefixes.block, MaterialsUEVplus.BlackDwarfMatter, 1L), - 'b', - new ItemStack(Loaders.compactFusionCoil, 1, 3), - 'c', - GTOreDictUnificator.get(OrePrefixes.block, MaterialsUEVplus.TranscendentMetal, 1L), - 'd', - CustomItemList.QuantumCircuit.get(1L), - 'e', - getModItem(SGCraft.ID, "ic2Capacitor", 1, 0, missing), - 'f', - getModItem(SGCraft.ID, "stargateRing", 1, 0, missing), - 'g', - GTOreDictUnificator.get(OrePrefixes.nanite, MaterialsUEVplus.BlackDwarfMatter, 1L)); + rfUnit, + "mmcdddcmm", + "m-c---c-m", + "m-c-b-c-m", + "d--cpc--d", + "d-bprpb-d", + "d--cpc--d", + "mnn-b-nnm", + "mgn---ngm", + "mmmdddmmm", + 'm', magmatterBlock, + 'd', darkMatterBlock, + 'c', compact5Coil, + 'b', ItemList.ZPM6.get(1L), + 'p', stargateCapacitor, + 'r', ringBlock, + 'n', magmatterNanite, + 'g', ItemList.GigaChad.get(1L)); + + // OpenComputers Stargate Interface + ExtremeCraftingManager.getInstance().addExtremeShapedOreRecipe( + ocInterface, + "mmcdddcmm", + "m-c---c-m", + "m-c-w-c-m", + "d--csc--d", + "d-wsrsw-d", + "d--csc--d", + "mnn-w-nnm", + "mgn---ngm", + "mmmdddmmm", + 'm', magmatterBlock, + 'd', darkMatterBlock, + 'c', compact5Coil, + 'w', tectech.thing.CustomItemList.dataIn_Wireless_Hatch.get(1L), + 's', singularityStorage, + 'r', ringBlock, + 'n', magmatterNanite, + 'g', ItemList.GigaChad.get(1L)); + + // Stargate Controller ExtremeCraftingManager.getInstance().addExtremeShapedOreRecipe( - getModItem(SGCraft.ID, "ocInterface", 1, 0, missing), - "abccdccea", - "ed--d--db", - "c-d-d-d-c", - "c--ddd--c", - "ddddadddd", - "c--ddd--c", - "c-d-d-d-c", - "bd--d--de", - "aeccdccba", - 'a', - CustomItemList.QuantumCircuit.get(1L), - 'b', - ItemList.Emitter_UXV.get(1L), - 'c', - GTOreDictUnificator.get(OrePrefixes.block, MaterialsUEVplus.BlackDwarfMatter, 1L), - 'd', - new ItemStack(Loaders.compactFusionCoil, 1, 3), - 'e', - ItemList.Sensor_UXV.get(1L)); + stargateController, + "---mmm---", + "--dkfkd--", + "-mkfsfkm-", + "-mfecefm-", + "-mkfsfkm-", + "--dkfkd--", + "--mpbpm--", + "--mpopm--", + "--mpupm--", + 'm', magmatterBlock, + 'd', darkMatterBlock, + 'k', keyboard, + 'f', CustomItemList.StargateFramePart.get(1L), + 's', ItemList.Sensor_UXV.get(1L), + 'e', ItemList.Emitter_UXV.get(1L), + 'c', stargateControllerCrystal, + 'p', CustomItemList.StargateShieldingFoil.get(1L), + 'b', ItemList.ZPM6.get(1L), + 'o', ocInterface, + 'u', universeFluidCell); + // spotless:on } } diff --git a/src/main/resources/assets/dreamcraft/lang/en_US.lang b/src/main/resources/assets/dreamcraft/lang/en_US.lang index 18c58e3d5..83dd65a2f 100644 --- a/src/main/resources/assets/dreamcraft/lang/en_US.lang +++ b/src/main/resources/assets/dreamcraft/lang/en_US.lang @@ -670,6 +670,13 @@ item.DimensionalQuantumCircuit.name=Quantum Circuit of Dimensional Duplicity item.DimensionalGatePlate.name=Stargate Plate of Dimensional Duplicity item.DimensionalChevron.name=Stargate Chevron of Dimensional Duplicity item.DimensionalFramePart.name=Stargate Frame Part of Dimensional Duplicity +item.Harmonic.tooltip=Universes torn apart +item.Harmonic.version=(2.3.0) +item.HarmonicGatePlate.name=Stargate Plate of Harmonic Breakthrough +item.HarmonicChevron.name=Stargate Chevron of Harmonic Breakthrough +item.HarmonicFramePart.name=Stargate Frame Part of Harmonic Breakthrough +item.StargateDustAncients.name=Stargate-Crystal Dust of the Ancients +item.StargateCrystalAncients.name=Stargate Core Crystal of the Ancients tc.aspect.custom1=Equality, Balance, Uniformity tc.aspect.custom2=Insanity, Madness, Craziness @@ -1773,4 +1780,4 @@ item.tconstruct.manual.weaponry.part_materials=\n\nValid Shaft Materials:\n* Sti item.tconstruct.manual.weaponry.bolts=\n\nBolts:\nCrafting bolts is a delicate process. First you need a core in the form of a tool rod.\nTake this tool rod to a smeltery and put it into a Casting Table. Pour some metal onto it to coat the tip with a more damaging material.\nAfter this process, add a fletching and your bolts are ready to be used.\n\nSince the bolts consist of a harder core and tip they carry more weight than regular arrows, making them perfect to fight armored targets. dreamcraft.mobsinfocompat.limitedropcount=Drops only %s times per person -dreamcraft.gui.quitmessage=Are you sure you want to exit the game ? \ No newline at end of file +dreamcraft.gui.quitmessage=Are you sure you want to exit the game ? diff --git a/src/main/resources/assets/dreamcraft/textures/items/itemHarmonicChevron.png b/src/main/resources/assets/dreamcraft/textures/items/itemHarmonicChevron.png new file mode 100644 index 0000000000000000000000000000000000000000..4746bdcb6783346da5f09c106c81f27df4eac0d6 GIT binary patch literal 3869 zcmZvfc{r5o|Ho;V$Chz0jO~$3&R84USbB1BY-7uoin3=(+2SzB_HYo&zJ)B2WEU+I zV_yc7A}WksM>=EB$^LV`=eo}IyRPr|ulxS@{@m~P>;3*DT9_N2#hneKaiMKLF79(BX(94&`EW#DO9guXVL%kUR&T%LWlV6uo)3c zVJl_+_-dvT2q=-TasvDQFO zOFA-MFSftThzVm58Mf&-^ECYYRW%+vC;T^wCz=^Ccy@{XcExv>a^$y`nolqspFTr)t>jQ_)}iJNmDjGSdx^- z;_P!U)rI`5m)p(!4m<8{O)WC`Wl3mt?<(T8hYEFgUKAq0ZaU_+%1%eJY)#ma;J4d1 z5qIvfO^&Sw+)Jy-7sDopp&yIcs$ZGIiQXz*(n4JuR`Dxie-0xb{Bbco&xR{EwxlcY z)pX+h31Zhty8%;Sr0GJ+c3`!ltx|^4l`dRMOSiVX3i?j*jM3#M*Zrzq`%9uMYUg9) z1uwIpr0iTbPg$gb0|-6Z0LYj%(D<_jJAk;fAq8Q4XF3o^vILH-&KFAO6v2Hbf>a-T z!E&swTxbYV`1xq9vHT;QHX(=jCXne+SSJ;#ZNe(Lr1x!<^OMyCBT%x=kk*D5Um& zw?r@&#o~()ju%L;Qu@-Mn&NZVX&MdmD4{^KC9O#&4*+iBR%C1z+1OtLWg&j0DVOG~ zRX&uY2Qu2-%Q{lRIs8By>;5ZxI^Du3B)7qa(^fqNcA*!`73v0ESv-QX_9JB~sP{xE zwiGNgZeydEo1N`9sgk=lcQIvKDJS?61-I!=9t!96+cVWs6`#ocU$G?oipf2Ivj~}g zd;NYI<&o(G{%(!Dq6Md!zIde?uk8&X%0iO>VDZ=aS|iZ3SPi3Hhes-G(PsPZV2i}C z{_6QaAz%b0=7rq>S(7XW+YKV=mKrtTDL?qHA4C`K=dAO8?vrW6=&S0Q)STpi9m4+- z)Fgh)NwOl8ge#|6m_~=iCActVtBR=(Hmfso=>3#DH(Nr@lSFL=m zEjA70t4!x&FVh#X67j~)aT(}))#HK}$d9CQYTcx|;GUwzkW+z#H0n6NWF9fE+L_

6ysJRK``5qTY+J%Qkbdh#Rbs#C>;qBDfl1pPgCVQ3H??G>=g; z6RWh}d2bEJk6DkjdW0O$+a zIF+nMr)fngeF>n}`+$_^3{~5S-7_OFxvM*u=io0R=?v9m7jF};_qx_^fj?4Wv+R(a z_^ORe-)2Ml;3mt2NWr(1MKVA5keTn*CE$T7EX|}RnoY7mfNjx)BcfQ%ervvMQKkj0 zDo)`@E(cr@*}3sheX+EGt=P2VKot2tbkhL*@s`ox8uXc&n`#v{iQq!zvCCKNhA$utT`f;!oKs zcAow>`2WLWx%zQ?N(udUrQ~5IsfDj*)>(I%Gnf$m{146BliUmcVR0u8PpE47T9WzS zEbc&>_$zXQ$fElR0K3zuGcp ztFcFGwjATv|Cl4kQs7JdTWT0!tETmpGNf$^9Y0ck1`#?Ij z$!>vcV`4Sv^xX_r>r25GQAr#YxC9Rod;7UM4^rq9)%Gdzn*>3uD zE(=QFND#_B(Yq_+idFt!vduJc2y{`M?fHJHm!|XZ*Em3I&pE2j2W@{&S&u;*Dpe1m zo`e+ziRWxdQ8I2dS}WwB%x#mGTV)y`m>_u^bS?^U)yOx7(&iv#Xf2Tgg!D_f!L7j$ zf}K!D(`@tUm!mZ>pv(dC53K>aBz#{!S8zIn(J+ef4Lc%N{5?GF+*@;NCpR}Hk5E zGBbOEnNSqb1=KZrz~M6zp~%V}PCQ-V1|XOXAnr>BY!j&v`2yUhN>!SIs!5!?kkW45^OwO&N^9 zoIgT+7nwykdx&%=pg7&U8QMAk7Y0BqZH0nZOyC=0_W`16j zYfwmgEa=#rc7&FVlTlid*YA;v$SJ4tzIN20!0?U|>Noe)qhM0tdK@$YpXErsdQale zO^v;eKiE3%Ny#goQ$5^9j0B#YOI3m=g{kWnLhQs^h<~2x{Vm#0)fo)$})_ri(7$ zm=8W#vq9^de#RKR!SPudd*o~Bv~*=36mNMc!8kNHgOWi*sT|UN4{rU|Vp%z(OTOlw z{{8Y!p1uNQxSByTMa@zvBn$5oD7nCcoPbDr=J_yd=8Xs9EW-zbPa&thtS+dszqBt` z)~J*8yq8_#{RXoLLR=^CP>f@6vb-Rw)NRdqY)Liz{=QvQ$AKgP5iHs zz=rck2h#bU96bor=*Nq*=Mrel_SV)6r?*eZut)CMaC^h(`!WMZzZb>?;XHspbVUtj zt0xsj$?(`ku+5#7lksIBa6TqF07ls>Zp}&+!I{> zxRiTS;-@m+*1G5oTJ`;P9eO(T@r!F3F@WdVhY-3My8W><{l&fg55H9(YFTM;_!Pvl zUkZoVKC_@|8)tugQeHg74d1}9$+X9JhIA0NEFIr>ulMx%-ub3oWiRj*Hn^45%KxWFDjpwvCfp5e|(Y-d>!mH zZOV`ebaZ4wP5xOT*R1Ka7 BB|HEC literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/dreamcraft/textures/items/itemHarmonicChevron.png.mcmeta b/src/main/resources/assets/dreamcraft/textures/items/itemHarmonicChevron.png.mcmeta new file mode 100644 index 000000000..0645f48c6 --- /dev/null +++ b/src/main/resources/assets/dreamcraft/textures/items/itemHarmonicChevron.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 2 + } +} diff --git a/src/main/resources/assets/dreamcraft/textures/items/itemHarmonicFramePart.png b/src/main/resources/assets/dreamcraft/textures/items/itemHarmonicFramePart.png new file mode 100644 index 0000000000000000000000000000000000000000..fa20739f6ed458b94bd1b37cc51616ff69a2ac97 GIT binary patch literal 6705 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/dreamcraft/textures/items/itemHarmonicGatePlate.png.mcmeta b/src/main/resources/assets/dreamcraft/textures/items/itemHarmonicGatePlate.png.mcmeta new file mode 100644 index 000000000..0645f48c6 --- /dev/null +++ b/src/main/resources/assets/dreamcraft/textures/items/itemHarmonicGatePlate.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation": { + "frametime": 2 + } +} diff --git a/src/main/resources/assets/dreamcraft/textures/items/itemStargateCrystalAncients.png b/src/main/resources/assets/dreamcraft/textures/items/itemStargateCrystalAncients.png new file mode 100644 index 0000000000000000000000000000000000000000..4e3bd13a43f161aad9169627939261010129215c GIT binary patch literal 304 zcmV-00nh%4P)* zzyWku`$RLO%KQgm^@Z-U(d7vO*@?E-7&_JeGfdI?&z!CBPj8LCFS;6>Kxd<$I7_bL zKZa8l{~5L!|7Vz}@t?0+_lL&1Kw)&XSb^FCx5Z%FpE&$y*k|^iVWT0~5a~Xv+vsYs z0>OHNFJRk227qXg0dsZ0;eoCeI{+zs?)abKqSb$f^Hvbe)3r%7;IA73gEWsC@SmYa z{l7@F@q2Wo*a5l$Q#JoHczDt`sW(+q51S_ZNUs_{!-&L!B}SwgUm!rhNJT z3`fi%NjXiHc-vtBY$MR$3@xgp*$x9>8==`5pX~qy%(5Cbr&3n{0000^dUO6&$% zwFxETLlWxWLz2lwIAk1{%We-&=?=^|g(f$kD-Gn7eQHvRh6utMncv`feN1{iuwnBu#vmamkXo&Hf0U&UbZ>Oq*M%iClQ=h(%f=NU{R5(wilFduP02szSXFBZ|b5paWE={2iYo=xylz&2{MiE(Hbg&K;nFd`H zD(KuHx`hQnAD5s`5_Y0wh1qL2k|z!% zPDR8H?eLMQcby{ukMORI?qN^@+TsQTiyTt71i0}aUU+hnSwQqaK-UtB&SjSFKvU2v zwrGidwphrdiEwkLsx5`1H(YXL4 z@BUU+8&C~XzaD&;p{q0WHyRZM3cz2bn*6<>c>#JV6~9!=wG#jU002ovPDHLkV1mlh B*)jkC diff --git a/src/main/resources/assets/dreamcraft/textures/items/itemStargateDustAncients.png b/src/main/resources/assets/dreamcraft/textures/items/itemStargateDustAncients.png new file mode 100644 index 0000000000000000000000000000000000000000..fc189c21a4a4d1b69656990103c0d24f74c4d1d8 GIT binary patch literal 536 zcmV+z0_XjSP)h(%f=NU{R5(wilFduP02szSXFBZ| zb5paWE={2iYo=xyltQIO5m{h#unrZO23-^?=-eT?g#|$$m!M7(K}6I)_4K;3sLjfH z;bG(5`~2PyrUCFTsV3`@YO)@Eyr_gYV}NB?r~2_nfF;t1xjQ?O7Xq4lw2Fdn0j)7T z79K>T?_C%ynlZFvg?UK-si-D^l^W#EnP(5uWjChIod^}o=*_aQM40zNRY1##j*K0$ zdGXPM>C1ME?hBA|9Q-*R(k2fs^g4+GU{5f}JXOqIGJBCMIWT!9V&d2d-x>>lo=0Dv zL-&da`~X9iF9253V!rG`>dJ-LYd4Z74kS)R#18H7k*Rl`BLI)^u8rN?Y%!putx@=o9ek97~zAWv(VWB6F z!M)e+syC>HDWFG1{w=fI&9}-yqS3hkBk%rJRvS