From 2f0a1c99091e4c809a88eaaddff5d0d9b526756d Mon Sep 17 00:00:00 2001 From: WayofTime Date: Fri, 16 Jan 2015 11:22:50 -0500 Subject: [PATCH] Changed the Meteor paradigm to POTENTIALLY allow GT ores to be spawnable with the meteor. Potentially. --- build.properties | 4 +- .../AlchemicalWizardry.java | 24 ++-- .../alchemicalWizardry/ModItems.java | 61 +++++----- .../tileEntity/TEDemonPortal.java | 2 +- .../items/routing/OutputRoutingFocus.java | 26 +++++ .../rituals/RitualEffectItemRouting.java | 109 ++++++++++++++++++ .../summoning/meteor/MeteorParadigm.java | 26 +++-- 7 files changed, 202 insertions(+), 50 deletions(-) create mode 100644 src/main/java/WayofTime/alchemicalWizardry/common/items/routing/OutputRoutingFocus.java diff --git a/build.properties b/build.properties index d02972cc..6f1f250d 100644 --- a/build.properties +++ b/build.properties @@ -1,5 +1,5 @@ # -#Sat Jan 03 19:36:41 EST 2015 +#Fri Jan 16 10:41:23 EST 2015 mod_name=BloodMagic forge_version=10.13.2.1232 ccc_version=1.0.4.29 @@ -9,4 +9,4 @@ package_group=com.wayoftime.bloodmagic mod_version=1.3.0b minetweaker_version=Dev-1.7.10-3.0.9B mc_version=1.7.10 -build_number=2 +build_number=4 diff --git a/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java b/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java index 3391a473..532dac44 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java +++ b/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java @@ -114,6 +114,10 @@ import WayofTime.alchemicalWizardry.common.harvest.PamHarvestCompatRegistry; import WayofTime.alchemicalWizardry.common.items.ItemRitualDiviner; import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfHolding; import WayofTime.alchemicalWizardry.common.items.thaumcraft.ItemSanguineArmour; +import WayofTime.alchemicalWizardry.common.omega.OmegaParadigmEarth; +import WayofTime.alchemicalWizardry.common.omega.OmegaParadigmWater; +import WayofTime.alchemicalWizardry.common.omega.OmegaParadigmWind; +import WayofTime.alchemicalWizardry.common.omega.OmegaRegistry; import WayofTime.alchemicalWizardry.common.potion.PotionAmphibian; import WayofTime.alchemicalWizardry.common.potion.PotionBoost; import WayofTime.alchemicalWizardry.common.potion.PotionDeaf; @@ -132,6 +136,7 @@ import WayofTime.alchemicalWizardry.common.potion.PotionReciprocation; import WayofTime.alchemicalWizardry.common.potion.PotionSoulFray; import WayofTime.alchemicalWizardry.common.potion.PotionSoulHarden; import WayofTime.alchemicalWizardry.common.renderer.AlchemyCircleRenderer; +import WayofTime.alchemicalWizardry.common.rituals.RitualEffectAlphaPact; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectAnimalGrowth; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectAutoAlchemy; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectBiomeChanger; @@ -149,12 +154,15 @@ import WayofTime.alchemicalWizardry.common.rituals.RitualEffectGrowth; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectHarvest; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectHealing; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectInterdiction; +import WayofTime.alchemicalWizardry.common.rituals.RitualEffectItemRouting; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectItemSuction; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectJumping; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectLava; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectLeap; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectLifeConduit; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectMagnetic; +import WayofTime.alchemicalWizardry.common.rituals.RitualEffectOmegaStalling; +import WayofTime.alchemicalWizardry.common.rituals.RitualEffectOmegaTest; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectSoulBound; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectSpawnWard; import WayofTime.alchemicalWizardry.common.rituals.RitualEffectSummonMeteor; @@ -1271,11 +1279,11 @@ public class AlchemicalWizardry Rituals.registerRitual("AW028SpawnWard", 1, 150000, new RitualEffectSpawnWard(), "Ward of Sacrosanctity", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"), 0, 0, 0, 255, 0, 0.501, 0.501, 0, 1.5, false)); Rituals.registerRitual("AW029VeilOfEvil", 1, 150000, new RitualEffectVeilOfEvil(), "Veil of Evil", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"), 0, 0, 0, 255, 0, 0.501, 0.501, 0, 1.5, false)); Rituals.registerRitual("AW030FullStomach", 1, 100000, new RitualEffectFullStomach(), "Requiem of the Satiated Stomach", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/SimpleTransCircle.png"), 0, 0, 0, 255, 0, 0.501, 0.501, 0, 1.5, false)); - Rituals.registerRitual("AW031Convocation", isDemonRitualCreativeOnly ? 10 : 2, 15000000, new RitualEffectDemonPortal(), "Convocation of the Damned", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/TransCircleDemon.png"), 220, 22, 22, 255, 0, 0.501, 0.501, 0, 5, false)); -// Rituals.registerRitual("AW032", 1, 100, new RitualEffectOmegaTest(), "Symmetry of the Omega"); -// Rituals.registerRitual("AW033", 2, 100, new RitualEffectOmegaStalling(), "Omega Stalling"); -// Rituals.registerRitual("AW034", 2, 100, new RitualEffectAlphaPact(), "Alpha Pact"); -// Rituals.registerRitual("AW035", 1, 100, new RitualEffectItemRouting(), "Ritual of the Phantom Hands"); + Rituals.registerRitual("AW031Convocation",isDemonRitualCreativeOnly ? 10 : 2, 15000000, new RitualEffectDemonPortal(), "Convocation of the Damned", new AlchemyCircleRenderer(new ResourceLocation("alchemicalwizardry:textures/models/TransCircleDemon.png"), 220, 22, 22, 255, 0, 0.501, 0.501, 0, 5, false)); + Rituals.registerRitual("AW032", 1, 100, new RitualEffectOmegaTest(), "Symmetry of the Omega"); + Rituals.registerRitual("AW033", 2, 100, new RitualEffectOmegaStalling(), "Omega Stalling"); + Rituals.registerRitual("AW034", 2, 100, new RitualEffectAlphaPact(), "Alpha Pact"); + Rituals.registerRitual("AW035", 1, 100, new RitualEffectItemRouting(), "Ritual of the Phantom Hands"); //Rituals.registerRitual(1,100,new RitualEffectApiaryOverclock(),"Apiary Overclock")); } @@ -1318,9 +1326,9 @@ public class AlchemicalWizardry ReagentRegistry.registerItemAndReagent(new ItemStack(ModItems.baseAlchemyItems, 1, 7), new ReagentStack(ReagentRegistry.reductusReagent, 1000)); ReagentRegistry.registerItemAndReagent(new ItemStack(ModItems.baseAlchemyItems, 1, 8), new ReagentStack(ReagentRegistry.potentiaReagent, 1000)); -// OmegaRegistry.registerParadigm(ReagentRegistry.aquasalusReagent, new OmegaParadigmWater(ModItems.boundHelmetWater, ModItems.boundPlateWater, ModItems.boundLeggingsWater, ModItems.boundBootsWater)); -// OmegaRegistry.registerParadigm(ReagentRegistry.terraeReagent, new OmegaParadigmEarth(ModItems.boundHelmetEarth, ModItems.boundPlateEarth, ModItems.boundLeggingsEarth, ModItems.boundBootsEarth)); -// OmegaRegistry.registerParadigm(ReagentRegistry.aetherReagent, new OmegaParadigmWind(ModItems.boundHelmetWind, ModItems.boundPlateWind, ModItems.boundLeggingsWind, ModItems.boundBootsWind)); + OmegaRegistry.registerParadigm(ReagentRegistry.aquasalusReagent, new OmegaParadigmWater(ModItems.boundHelmetWater, ModItems.boundPlateWater, ModItems.boundLeggingsWater, ModItems.boundBootsWater)); + OmegaRegistry.registerParadigm(ReagentRegistry.terraeReagent, new OmegaParadigmEarth(ModItems.boundHelmetEarth, ModItems.boundPlateEarth, ModItems.boundLeggingsEarth, ModItems.boundBootsEarth)); + OmegaRegistry.registerParadigm(ReagentRegistry.aetherReagent, new OmegaParadigmWind(ModItems.boundHelmetWind, ModItems.boundPlateWind, ModItems.boundLeggingsWind, ModItems.boundBootsWind)); } public static void initDemonPacketRegistiry() diff --git a/src/main/java/WayofTime/alchemicalWizardry/ModItems.java b/src/main/java/WayofTime/alchemicalWizardry/ModItems.java index 55a4dfe3..db4b71d1 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/ModItems.java +++ b/src/main/java/WayofTime/alchemicalWizardry/ModItems.java @@ -47,6 +47,9 @@ import WayofTime.alchemicalWizardry.common.items.TranscendentBloodOrb; import WayofTime.alchemicalWizardry.common.items.WaterScribeTool; import WayofTime.alchemicalWizardry.common.items.armour.BoundArmour; import WayofTime.alchemicalWizardry.common.items.armour.OmegaArmour; +import WayofTime.alchemicalWizardry.common.items.armour.OmegaArmourEarth; +import WayofTime.alchemicalWizardry.common.items.armour.OmegaArmourWater; +import WayofTime.alchemicalWizardry.common.items.armour.OmegaArmourWind; import WayofTime.alchemicalWizardry.common.items.energy.ItemAttunedCrystal; import WayofTime.alchemicalWizardry.common.items.energy.ItemDestinationClearer; import WayofTime.alchemicalWizardry.common.items.energy.ItemTankSegmenter; @@ -329,21 +332,21 @@ public class ModItems itemCompressionSigil = new ItemPackRatSigil().setUnlocalizedName("itemCompressionSigil"); itemAssassinSigil = new ItemSigilOfTheAssassin().setUnlocalizedName("itemAssassinSigil"); -// boundHelmetWater = (OmegaArmour) new OmegaArmourWater(0).setUnlocalizedName("boundHelmetWater"); -// boundPlateWater = (OmegaArmour) new OmegaArmourWater(1).setUnlocalizedName("boundPlateWater"); -// boundLeggingsWater = (OmegaArmour) new OmegaArmourWater(2).setUnlocalizedName("boundLeggingsWater"); -// boundBootsWater = (OmegaArmour) new OmegaArmourWater(3).setUnlocalizedName("boundBootsWater"); -// -// boundHelmetEarth = (OmegaArmour) new OmegaArmourEarth(0).setUnlocalizedName("boundHelmetEarth"); -// boundPlateEarth = (OmegaArmour) new OmegaArmourEarth(1).setUnlocalizedName("boundPlateEarth"); -// boundLeggingsEarth = (OmegaArmour) new OmegaArmourEarth(2).setUnlocalizedName("boundLeggingsEarth"); -// boundBootsEarth = (OmegaArmour) new OmegaArmourEarth(3).setUnlocalizedName("boundBootsEarth"); -// -// boundHelmetWind = (OmegaArmour) new OmegaArmourWind(0).setUnlocalizedName("boundHelmetWind"); -// boundPlateWind = (OmegaArmour) new OmegaArmourWind(1).setUnlocalizedName("boundPlateWind"); -// boundLeggingsWind = (OmegaArmour) new OmegaArmourWind(2).setUnlocalizedName("boundLeggingsWind"); -// boundBootsWind = (OmegaArmour) new OmegaArmourWind(3).setUnlocalizedName("boundBootsWind"); -// + boundHelmetWater = (OmegaArmour) new OmegaArmourWater(0).setUnlocalizedName("boundHelmetWater"); + boundPlateWater = (OmegaArmour) new OmegaArmourWater(1).setUnlocalizedName("boundPlateWater"); + boundLeggingsWater = (OmegaArmour) new OmegaArmourWater(2).setUnlocalizedName("boundLeggingsWater"); + boundBootsWater = (OmegaArmour) new OmegaArmourWater(3).setUnlocalizedName("boundBootsWater"); + + boundHelmetEarth = (OmegaArmour) new OmegaArmourEarth(0).setUnlocalizedName("boundHelmetEarth"); + boundPlateEarth = (OmegaArmour) new OmegaArmourEarth(1).setUnlocalizedName("boundPlateEarth"); + boundLeggingsEarth = (OmegaArmour) new OmegaArmourEarth(2).setUnlocalizedName("boundLeggingsEarth"); + boundBootsEarth = (OmegaArmour) new OmegaArmourEarth(3).setUnlocalizedName("boundBootsEarth"); + + boundHelmetWind = (OmegaArmour) new OmegaArmourWind(0).setUnlocalizedName("boundHelmetWind"); + boundPlateWind = (OmegaArmour) new OmegaArmourWind(1).setUnlocalizedName("boundPlateWind"); + boundLeggingsWind = (OmegaArmour) new OmegaArmourWind(2).setUnlocalizedName("boundLeggingsWind"); + boundBootsWind = (OmegaArmour) new OmegaArmourWind(3).setUnlocalizedName("boundBootsWind"); + inputRoutingFocus = new InputRoutingFocus().setUnlocalizedName("inputRoutingFocus"); } @@ -454,20 +457,20 @@ public class ModItems GameRegistry.registerItem(ModItems.itemCompressionSigil, "itemCompressionSigil"); GameRegistry.registerItem(ModItems.itemAssassinSigil, "itemAssassinSigil"); -// GameRegistry.registerItem(ModItems.boundHelmetWater, "boundHelmetWater"); -// GameRegistry.registerItem(ModItems.boundPlateWater, "boundPlateWater"); -// GameRegistry.registerItem(ModItems.boundLeggingsWater, "boundLeggingsWater"); -// GameRegistry.registerItem(ModItems.boundBootsWater, "boundBootsWater"); -// -// GameRegistry.registerItem(ModItems.boundHelmetEarth, "boundHelmetEarth"); -// GameRegistry.registerItem(ModItems.boundPlateEarth, "boundPlateEarth"); -// GameRegistry.registerItem(ModItems.boundLeggingsEarth, "boundLeggingsEarth"); -// GameRegistry.registerItem(ModItems.boundBootsEarth, "boundBootsEarth"); -// -// GameRegistry.registerItem(ModItems.boundHelmetWind, "boundHelmetWind"); -// GameRegistry.registerItem(ModItems.boundPlateWind, "boundPlateWind"); -// GameRegistry.registerItem(ModItems.boundLeggingsWind, "boundLeggingsWind"); -// GameRegistry.registerItem(ModItems.boundBootsWind, "boundBootsWind"); + GameRegistry.registerItem(ModItems.boundHelmetWater, "boundHelmetWater"); + GameRegistry.registerItem(ModItems.boundPlateWater, "boundPlateWater"); + GameRegistry.registerItem(ModItems.boundLeggingsWater, "boundLeggingsWater"); + GameRegistry.registerItem(ModItems.boundBootsWater, "boundBootsWater"); + + GameRegistry.registerItem(ModItems.boundHelmetEarth, "boundHelmetEarth"); + GameRegistry.registerItem(ModItems.boundPlateEarth, "boundPlateEarth"); + GameRegistry.registerItem(ModItems.boundLeggingsEarth, "boundLeggingsEarth"); + GameRegistry.registerItem(ModItems.boundBootsEarth, "boundBootsEarth"); + + GameRegistry.registerItem(ModItems.boundHelmetWind, "boundHelmetWind"); + GameRegistry.registerItem(ModItems.boundPlateWind, "boundPlateWind"); + GameRegistry.registerItem(ModItems.boundLeggingsWind, "boundLeggingsWind"); + GameRegistry.registerItem(ModItems.boundBootsWind, "boundBootsWind"); GameRegistry.registerItem(ModItems.inputRoutingFocus, "inputRoutingFocus"); //GameRegistry.registerItem(ModItems.itemBloodFrame, "itemBloodFrame"); diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonPortal.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonPortal.java index 2357dd75..8c67e499 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonPortal.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonPortal.java @@ -61,7 +61,7 @@ public class TEDemonPortal extends TileEntity public static float demonHoardChance = 0.8f; public static float portalTickRate = 1f; - public static int[] tierCostList = new int[]{1000, 5000, 10000}; + public static int[] tierCostList = new int[]{1500}; public static Set hoardList = new HashSet(); diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/items/routing/OutputRoutingFocus.java b/src/main/java/WayofTime/alchemicalWizardry/common/items/routing/OutputRoutingFocus.java new file mode 100644 index 00000000..45e94efd --- /dev/null +++ b/src/main/java/WayofTime/alchemicalWizardry/common/items/routing/OutputRoutingFocus.java @@ -0,0 +1,26 @@ +package WayofTime.alchemicalWizardry.common.items.routing; + +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.item.ItemStack; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +public class OutputRoutingFocus extends RoutingFocus +{ + public OutputRoutingFocus() + { + super(); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerIcons(IIconRegister iconRegister) + { + this.itemIcon = iconRegister.registerIcon("AlchemicalWizardry:HarvestGoddessSigil_deactivated"); + } + + public boolean doesItemMatch(ItemStack keyStack, ItemStack checkedStack) + { + return keyStack != null ? checkedStack != null && keyStack.areItemStacksEqual(keyStack, checkedStack) : false; + } +} diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemRouting.java b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemRouting.java index a78a605d..7e09eeec 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemRouting.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemRouting.java @@ -16,6 +16,7 @@ import WayofTime.alchemicalWizardry.api.rituals.RitualEffect; import WayofTime.alchemicalWizardry.api.soulNetwork.SoulNetworkHandler; import WayofTime.alchemicalWizardry.common.Int3; import WayofTime.alchemicalWizardry.common.items.routing.InputRoutingFocus; +import WayofTime.alchemicalWizardry.common.items.routing.OutputRoutingFocus; import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper; public class RitualEffectItemRouting extends RitualEffect @@ -109,6 +110,98 @@ public class RitualEffectItemRouting extends RitualEffect } } } + + for(int i=0; i<4; i++) + { + Int3 outputFocusChest = this.getOutputBufferChestLocation(i); + TileEntity outputFocusInv = world.getTileEntity(x + outputFocusChest.xCoord, y + outputFocusChest.yCoord, z + outputFocusChest.zCoord); + if(outputFocusInv instanceof IInventory) + { + IInventory outputFocusInventory = (IInventory)outputFocusInv; +// for(int j=0; j<((IInventory) outputFocusInv).getSizeInventory(); j++) + { + ItemStack stack = ((IInventory) outputFocusInv).getStackInSlot(0); + if(stack != null && stack.getItem() instanceof OutputRoutingFocus) //TODO change to output routing focus + { + boolean transferEverything = true; + for(int j=1; j componentList = new ArrayList(); @@ -106,9 +105,16 @@ public class MeteorParadigm if (randNum < 0) { ItemStack blockStack = mpc.getValidBlockParadigm(); - world.setBlock(x + i, y + j, z + k, Block.getBlockById(Item.getIdFromItem(blockStack.getItem())), blockStack.getItemDamage(), 3); - hasPlacedBlock = true; - break; + if(blockStack != null && blockStack.getItem() instanceof ItemBlock) + { + ((ItemBlock)blockStack.getItem()).placeBlockAt(blockStack, null, world, x + i, y + j, z + k, 0, 0, 0, 0, blockStack.getItemDamage()); + world.markBlockForUpdate(x + i, y + j, z + k); + hasPlacedBlock = true; + break; + } +// world.setBlock(x + i, y + j, z + k, Block.getBlockById(Item.getIdFromItem(blockStack.getItem())), blockStack.getItemDamage(), 3); +// hasPlacedBlock = true; +// break; } }