From 8896414a5153886c417a96a3b314bdbe2a94d313 Mon Sep 17 00:00:00 2001 From: Arcaratus Date: Mon, 10 Aug 2015 22:03:08 -0400 Subject: [PATCH] Vacation commit --- build.gradle | 2 +- build.properties | 9 ++--- .../api/bindingRegistry/UnbindingRecipe.java | 24 +++++++----- .../bindingRegistry/UnbindingRegistry.java | 25 ++++++++++--- .../rituals/RitualEffectContainment.java | 16 ++++---- .../common/rituals/RitualEffectUnbinding.java | 37 +++++++++++++++---- .../common/thread/CommandDownloadGAPI.java | 10 +++++ .../common/thread/GAPIChecker.java | 2 +- .../common/thread/ThreadDownloadGAPI.java | 10 +++++ 9 files changed, 98 insertions(+), 37 deletions(-) diff --git a/build.gradle b/build.gradle index 35d2e817..5123f7e6 100644 --- a/build.gradle +++ b/build.gradle @@ -51,7 +51,7 @@ repositories { } dependencies { - compile "codechicken:CodeChickenLib:1.7.10-1.1.1.99:dev" + compile "codechicken:CodeChickenLib:" + config.mc_version + "-" + config.cclib_version + ":dev" compile "codechicken:CodeChickenCore:" + config.mc_version + "-" + config.ccc_version + ":dev" compile "codechicken:NotEnoughItems:" + config.mc_version + "-" + config.nei_version + ":dev" compile name: 'MineTweaker3', version: config.minetweaker_version, ext: 'jar' diff --git a/build.properties b/build.properties index 2498a91e..3e62d1dc 100644 --- a/build.properties +++ b/build.properties @@ -1,9 +1,8 @@ -# -#Mon Jul 20 20:59:46 EDT 2015 mod_name=BloodMagic -forge_version=10.13.4.1448-1.7.10 -ccc_version=1.0.4.29 -nei_version=1.0.3.64 +forge_version=10.13.4.1492-1.7.10 +cclib_version=1.1.3.138 +ccc_version=1.0.7.47 +nei_version=1.0.5.111 //=Dependency Information guideapi_version=1.0.1-20 package_group=com.wayoftime.bloodmagic diff --git a/src/main/java/WayofTime/alchemicalWizardry/api/bindingRegistry/UnbindingRecipe.java b/src/main/java/WayofTime/alchemicalWizardry/api/bindingRegistry/UnbindingRecipe.java index c2ce032a..a9649d50 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/api/bindingRegistry/UnbindingRecipe.java +++ b/src/main/java/WayofTime/alchemicalWizardry/api/bindingRegistry/UnbindingRecipe.java @@ -2,28 +2,34 @@ package WayofTime.alchemicalWizardry.api.bindingRegistry; import net.minecraft.item.ItemStack; +import java.util.ArrayList; +import java.util.List; + public class UnbindingRecipe { public ItemStack requiredItem; - public ItemStack outputItem; + public List outputItem; - public UnbindingRecipe(ItemStack outputItem, ItemStack requiredItem) + public UnbindingRecipe(ItemStack inputItem, List outputItem) { - this.requiredItem = requiredItem; + this.requiredItem = inputItem; this.outputItem = outputItem; } + public UnbindingRecipe(ItemStack inputItem, ItemStack outputItem) + { + this.requiredItem = inputItem; + List newList = new ArrayList(); + newList.add(outputItem); + this.outputItem = newList; + } + public boolean doesRequiredItemMatch(ItemStack testStack) { return !(testStack == null || this.requiredItem == null) && this.requiredItem.isItemEqual(testStack); } - public ItemStack getResult(ItemStack inputItem) - { - return this.getResult(); - } - - public ItemStack getResult() + public List getResult() { return this.outputItem; } diff --git a/src/main/java/WayofTime/alchemicalWizardry/api/bindingRegistry/UnbindingRegistry.java b/src/main/java/WayofTime/alchemicalWizardry/api/bindingRegistry/UnbindingRegistry.java index 3ae2eaf2..a4b44c83 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/api/bindingRegistry/UnbindingRegistry.java +++ b/src/main/java/WayofTime/alchemicalWizardry/api/bindingRegistry/UnbindingRegistry.java @@ -1,25 +1,40 @@ package WayofTime.alchemicalWizardry.api.bindingRegistry; +import net.minecraft.block.Block; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import java.util.ArrayList; import java.util.LinkedList; import java.util.List; public class UnbindingRegistry { - public static List unbindingRecipes = new LinkedList(); + public static List unbindingRecipes = new LinkedList(); public static void addAllUnbindingRecipesFromBinding() { for (BindingRecipe bindingRecipe : BindingRegistry.bindingRecipes) { - unbindingRecipes.add(new UnbindingRecipe(bindingRecipe.requiredItem, bindingRecipe.outputItem)); + List subList = new ArrayList(); + subList.add(bindingRecipe.outputItem); + unbindingRecipes.add(new UnbindingRecipe(bindingRecipe.requiredItem, subList)); } } - public static void registerRecipe(ItemStack output, ItemStack input) + public static void registerRecipe(ItemStack input, List output) { - unbindingRecipes.add(new UnbindingRecipe(output, input)); + unbindingRecipes.add(new UnbindingRecipe(input, output)); + } + + public static void registerRecipe(Item input, List output) + { + unbindingRecipes.add(new UnbindingRecipe(new ItemStack(input), output)); + } + + public static void registerRecipe(Block input, List output) + { + unbindingRecipes.add(new UnbindingRecipe(new ItemStack(input), output)); } public static boolean isRequiredItemValid(ItemStack testItem) @@ -50,7 +65,7 @@ public class UnbindingRegistry return -1; } - public static ItemStack getOutputForIndex(int index) + public static List getOutputForIndex(int index) { if (unbindingRecipes.size() <= index) { diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectContainment.java b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectContainment.java index 1a6b225a..d7a089ad 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectContainment.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectContainment.java @@ -20,10 +20,7 @@ import java.util.List; public class RitualEffectContainment extends RitualEffect { - public static final String[] TIME_SINCE_IGNITED = new String[]{"timeSinceIgnited", "field_70833_d", "bq"}; - public static final int crepitousDrain = 1; - public static final int terraeDrain = 3; - public static final int magicalesDrain = 10; + public final String[] TIME_SINCE_IGNITED = new String[]{"timeSinceIgnited", "field_70833_d", "bq"}; @Override public void performEffect(IMasterRitualStone ritualStone) @@ -41,12 +38,16 @@ public class RitualEffectContainment extends RitualEffect SoulNetworkHandler.causeNauseaToPlayer(owner); } else { - int d0 = 5; - List entityList = SpellHelper.getEntitiesInRange(world, x + 0.5, y + 0.5, z + 0.5, d0, d0); + final int crepitousDrain = 1; + final int terraeDrain = 5; + final int magicalesDrain = 10; + boolean flag = false; boolean hasCrepitous = this.canDrainReagent(ritualStone, ReagentRegistry.crepitousReagent, crepitousDrain, false); boolean hasTerrae = this.canDrainReagent(ritualStone, ReagentRegistry.terraeReagent, terraeDrain, false); boolean hasMagicales = this.canDrainReagent(ritualStone, ReagentRegistry.magicalesReagent, magicalesDrain, false); + int d0 = hasTerrae ? 10 : 5; + List entityList = SpellHelper.getEntitiesInRange(world, x + 0.5, y + 0.5, z + 0.5, d0, d0); for (Entity entity : entityList) { @@ -62,7 +63,6 @@ public class RitualEffectContainment extends RitualEffect continue; } - double xDif = livingEntity.posX - (x + 0.5); double yDif = livingEntity.posY - (y + 3); double zDif = livingEntity.posZ - (z + 0.5); @@ -109,7 +109,7 @@ public class RitualEffectContainment extends RitualEffect @Override public List getRitualComponentList() { - ArrayList containmentRitual = new ArrayList(); + ArrayList containmentRitual = new ArrayList(); containmentRitual.add(new RitualComponent(1, 0, 0, 3)); containmentRitual.add(new RitualComponent(-1, 0, 0, 3)); containmentRitual.add(new RitualComponent(0, 0, 1, 3)); diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectUnbinding.java b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectUnbinding.java index 8193dbf4..c50b31be 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectUnbinding.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectUnbinding.java @@ -19,13 +19,12 @@ import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.World; import java.util.ArrayList; +import java.util.Collections; import java.util.Iterator; import java.util.List; public class RitualEffectUnbinding extends RitualEffect { - public static final int sanctusDrain = 1000; - @Override public void performEffect(IMasterRitualStone ritualStone) { @@ -52,6 +51,7 @@ public class RitualEffectUnbinding extends RitualEffect while (iterator.hasNext()) { + final int sanctusDrain = 1000; item = (EntityItem) iterator.next(); ItemStack itemStack = item.getEntityItem(); @@ -101,7 +101,20 @@ public class RitualEffectUnbinding extends RitualEffect item.setDead(); doLightning(world, x, y, z); ItemStack[] inv = ((BoundArmour) itemStack.getItem()).getInternalInventory(itemStack); - + int bloodSockets = 0; + if (itemStack.getItem() == ModItems.boundHelmet) + { + bloodSockets = 5; + } else if (itemStack.getItem() == ModItems.boundPlate) + { + bloodSockets = 8; + } else if (itemStack.getItem() == ModItems.boundLeggings) + { + bloodSockets = 7; + } else if (itemStack.getItem() == ModItems.boundBoots) + { + bloodSockets = 4; + } if (inv != null) { for (ItemStack internalItem : inv) @@ -115,7 +128,7 @@ public class RitualEffectUnbinding extends RitualEffect } } - EntityItem newItem = new EntityItem(world, x + 0.5, y + 1, z + 0.5, new ItemStack(ModBlocks.bloodSocket, ritualStone.getVar1())); + EntityItem newItem = new EntityItem(world, x + 0.5, y + 1, z + 0.5, new ItemStack(ModBlocks.bloodSocket, bloodSockets)); world.spawnEntityInWorld(newItem); ritualStone.setActive(false); drain = true; @@ -125,9 +138,17 @@ public class RitualEffectUnbinding extends RitualEffect { item.setDead(); doLightning(world, x, y, z); - ItemStack spawnedItem = UnbindingRegistry.getOutputForIndex(ritualStone.getVar1() - 9); - EntityItem newItem = new EntityItem(world, x + 0.5, y + 1, z + 0.5, spawnedItem.copy()); - world.spawnEntityInWorld(newItem); + List spawnedItem = UnbindingRegistry.getOutputForIndex(ritualStone.getVar1() - 9); + + if (spawnedItem != null) + { + for (ItemStack itemStack1 : spawnedItem) + { + EntityItem newItem = new EntityItem(world, x + 0.5, y + 1, z + 0.5, itemStack1.copy()); + world.spawnEntityInWorld(newItem); + } + } + ritualStone.setActive(false); drain = true; break; @@ -163,7 +184,7 @@ public class RitualEffectUnbinding extends RitualEffect @Override public List getRitualComponentList() { - ArrayList unbindingRitual = new ArrayList(); + ArrayList unbindingRitual = new ArrayList(); unbindingRitual.add(new RitualComponent(-2, 0, 0, 4)); unbindingRitual.add(new RitualComponent(2, 0, 0, 4)); unbindingRitual.add(new RitualComponent(0, 0, 2, 4)); diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/thread/CommandDownloadGAPI.java b/src/main/java/WayofTime/alchemicalWizardry/common/thread/CommandDownloadGAPI.java index 0c57dc79..97f5f683 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/thread/CommandDownloadGAPI.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/thread/CommandDownloadGAPI.java @@ -1,3 +1,13 @@ +/** + * This class was created by . It's distributed as + * part of the Botania Mod. Get the Source Code in github: + * https://github.com/Vazkii/Botania + * + * Botania is Open Source and distributed under the + * Botania License: http://botaniamod.net/license.php + * + * File Created @ [May 31, 2014, 10:22:44 PM (GMT)] + */ package WayofTime.alchemicalWizardry.common.thread; import net.minecraft.command.CommandBase; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/thread/GAPIChecker.java b/src/main/java/WayofTime/alchemicalWizardry/common/thread/GAPIChecker.java index 70d02550..a8a063d5 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/thread/GAPIChecker.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/thread/GAPIChecker.java @@ -72,7 +72,7 @@ public class GAPIChecker private List modFiles() { - List list = new LinkedList(); + List list = new LinkedList(); list.addAll(Arrays.asList(this.modsDir.listFiles())); return list; } diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/thread/ThreadDownloadGAPI.java b/src/main/java/WayofTime/alchemicalWizardry/common/thread/ThreadDownloadGAPI.java index cafaf35d..7ea67b5c 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/thread/ThreadDownloadGAPI.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/thread/ThreadDownloadGAPI.java @@ -1,3 +1,13 @@ +/** + * This class was created by . It's distributed as + * part of the Botania Mod. Get the Source Code in github: + * https://github.com/Vazkii/Botania + * + * Botania is Open Source and distributed under the + * Botania License: http://botaniamod.net/license.php + * + * File Created @ [May 31, 2014, 10:22:44 PM (GMT)] + */ package WayofTime.alchemicalWizardry.common.thread; import net.minecraft.client.Minecraft;