From 084e3dd3485f78a010b496624d1151c750ce4ab4 Mon Sep 17 00:00:00 2001 From: WayofTime Date: Sun, 6 Jul 2014 08:03:22 -0400 Subject: [PATCH] Updating the finished tool paradigm --- .../AlchemicalWizardry.java | 3 ++ .../common/demonVillage/BlockSet.java | 6 +-- .../common/demonVillage/TileBlockSet.java | 8 +++ .../common/items/ItemComponents.java | 2 +- .../rituals/RitualEffectItemSuction.java | 51 ++++++++++++++++-- .../spell/complex/SpellParadigmTool.java | 21 ++++++-- .../spell/complex/effect/SpellEffectFire.java | 27 ++++++---- .../fire/ToolEnvironmentalFire.java | 47 ++++++++++++++++ .../common/tileEntity/TEDemonPortal.java | 36 +++++++++++-- .../common/tileEntity/TESchematicSaver.java | 2 +- .../assets/alchemicalwizardry/lang/en_US.lang | 4 +- .../schematics/building/buildings.zip | Bin 766 -> 11317 bytes .../textures/items/AlchemyFlask.png | Bin 361 -> 0 bytes .../textures/items/ElementalInkAir.png | Bin 439 -> 0 bytes .../textures/items/ElementalInkEarth.png | Bin 442 -> 0 bytes .../textures/items/ElementalInkFire.png | Bin 430 -> 0 bytes .../textures/items/ElementalInkWater.png | Bin 429 -> 0 bytes .../textures/items/baseItemToolCore.png | Bin 0 -> 453 bytes .../textures/models/SpellParadigmTool.png | Bin 594 -> 1180 bytes .../textures/models/baseItemToolCore.png | Bin 0 -> 453 bytes 20 files changed, 181 insertions(+), 26 deletions(-) create mode 100644 1.7.2/main/java/WayofTime/alchemicalWizardry/common/demonVillage/TileBlockSet.java create mode 100644 1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/effect/impactEffects/fire/ToolEnvironmentalFire.java delete mode 100644 1.7.2/main/resources/assets/alchemicalwizardry/textures/items/AlchemyFlask.png delete mode 100644 1.7.2/main/resources/assets/alchemicalwizardry/textures/items/ElementalInkAir.png delete mode 100644 1.7.2/main/resources/assets/alchemicalwizardry/textures/items/ElementalInkEarth.png delete mode 100644 1.7.2/main/resources/assets/alchemicalwizardry/textures/items/ElementalInkFire.png delete mode 100644 1.7.2/main/resources/assets/alchemicalwizardry/textures/items/ElementalInkWater.png create mode 100644 1.7.2/main/resources/assets/alchemicalwizardry/textures/items/baseItemToolCore.png create mode 100644 1.7.2/main/resources/assets/alchemicalwizardry/textures/models/baseItemToolCore.png diff --git a/1.7.2/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java b/1.7.2/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java index d773cb1a..044e06d1 100644 --- a/1.7.2/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java +++ b/1.7.2/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java @@ -743,6 +743,7 @@ public class AlchemicalWizardry ItemStack costCoreStack = new ItemStack(ModItems.baseItems,1,23); ItemStack potencyCoreStack = new ItemStack(ModItems.baseItems,1,24); ItemStack obsidianBraceStack = new ItemStack(ModItems.baseItems,1,25); + ItemStack toolCoreStack = new ItemStack(ModItems.baseItems,1,26); ItemStack magicalesCraftedCableStack = new ItemStack(ModItems.baseItems,5,2); ItemStack crackedRunicPlateStackCrafted = new ItemStack(ModItems.baseItems,2,15); @@ -758,6 +759,7 @@ public class AlchemicalWizardry GameRegistry.addRecipe(new ShapedBloodOrbRecipe(projectileCoreStack, "mbm","aca","mom",'c', emptyCoreStack,'b',weakBloodShardStack,'m', magicalesStack,'o', magicianBloodOrbStack,'a',new ItemStack(Items.arrow))); GameRegistry.addRecipe(new ShapedBloodOrbRecipe(selfCoreStack,"sbs","ncn","sos",'c', emptyCoreStack, 's',sanctusStack,'b', weakBloodShardStack,'o', magicianBloodOrbStack,'n',glowstoneDustStack)); GameRegistry.addRecipe(new ShapedBloodOrbRecipe(meleeCoreStack,"sbs","ncn","sos",'c', emptyCoreStack, 's',incendiumStack,'b', weakBloodShardStack,'o', magicianBloodOrbStack,'n',new ItemStack(Items.fire_charge))); + GameRegistry.addRecipe(new ShapedBloodOrbRecipe(meleeCoreStack,"sbs","ncn","sos",'c', emptyCoreStack, 's',incendiumStack,'b', weakBloodShardStack,'o', magicianBloodOrbStack,'n',new ItemStack(Blocks.obsidian))); GameRegistry.addRecipe(paradigmBackPlateStack,"isi","rgr","isi",'i',ironIngotStack,'r',stoneStack,'g',goldIngotStack,'s',reinforcedSlateStack); GameRegistry.addRecipe(outputCableStack, " si","s c"," si",'s',stoneStack,'i',ironIngotStack,'c',simpleCatalystStack); @@ -787,6 +789,7 @@ public class AlchemicalWizardry GameRegistry.addRecipe(new ItemStack(ModBlocks.blockSpellParadigm,1,0),"gb ","pcw","gb ",'p',paradigmBackPlateStack,'c', projectileCoreStack,'g',goldIngotStack,'b',stoneBraceStack,'w',outputCableStack); GameRegistry.addRecipe(new ItemStack(ModBlocks.blockSpellParadigm,1,1),"gb ","pcw","gb ",'p',paradigmBackPlateStack,'c', selfCoreStack,'g',goldIngotStack,'b',stoneBraceStack,'w',outputCableStack); GameRegistry.addRecipe(new ItemStack(ModBlocks.blockSpellParadigm,1,2),"gb ","pcw","gb ",'p',paradigmBackPlateStack,'c', meleeCoreStack,'g',goldIngotStack,'b',stoneBraceStack,'w',outputCableStack); + GameRegistry.addRecipe(new ItemStack(ModBlocks.blockSpellParadigm,1,3),"gb ","pcw","gb ",'p',paradigmBackPlateStack,'c', meleeCoreStack,'g',goldIngotStack,'b',stoneBraceStack,'w',outputCableStack); GameRegistry.addRecipe(new ItemStack(ModBlocks.blockSpellEffect,1,0),"bgb","ico","bgb",'c',flameCoreStack,'b',stoneBraceStack,'g',goldIngotStack,'i',inputCableStack,'o',outputCableStack); GameRegistry.addRecipe(new ItemStack(ModBlocks.blockSpellEffect,1,1),"bgb","ico","bgb",'c',iceCoreStack,'b',stoneBraceStack,'g',goldIngotStack,'i',inputCableStack,'o',outputCableStack); diff --git a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BlockSet.java b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BlockSet.java index 008ef748..25398812 100644 --- a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BlockSet.java +++ b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BlockSet.java @@ -14,9 +14,9 @@ import cpw.mods.fml.common.registry.GameRegistry.UniqueIdentifier; public class BlockSet { - private String blockid; - private int[] metadata; - private List positions; + protected String blockid; + protected int[] metadata; + protected List positions; public BlockSet() { diff --git a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/demonVillage/TileBlockSet.java b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/demonVillage/TileBlockSet.java new file mode 100644 index 00000000..2209f58c --- /dev/null +++ b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/demonVillage/TileBlockSet.java @@ -0,0 +1,8 @@ +package WayofTime.alchemicalWizardry.common.demonVillage; + +import net.minecraft.nbt.NBTTagCompound; + +public class TileBlockSet extends BlockSet +{ + public NBTTagCompound tag; +} diff --git a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/items/ItemComponents.java b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/items/ItemComponents.java index 9f9d949f..9f8189f4 100644 --- a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/items/ItemComponents.java +++ b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/items/ItemComponents.java @@ -21,7 +21,7 @@ import cpw.mods.fml.relauncher.SideOnly; public class ItemComponents extends Item { - private static final String[] ITEM_NAMES = new String[]{"QuartzRod", "EmptyCore", "MagicalesCable", "WoodBrace", "StoneBrace", "ProjectileCore", "SelfCore","MeleeCore","ParadigmBackPlate","OutputCable","FlameCore","IcyCore","GustCore","EarthenCore","InputCable","CrackedRunicPlate","RunicPlate","ScribedRunicPlate","DefaultCore","OffensiveCore","DefensiveCore","EnvironmentalCore","PowerCore","CostCore","PotencyCore","ObsidianBrace"}; + private static final String[] ITEM_NAMES = new String[]{"QuartzRod", "EmptyCore", "MagicalesCable", "WoodBrace", "StoneBrace", "ProjectileCore", "SelfCore","MeleeCore","ParadigmBackPlate","OutputCable","FlameCore","IcyCore","GustCore","EarthenCore","InputCable","CrackedRunicPlate","RunicPlate","ScribedRunicPlate","DefaultCore","OffensiveCore","DefensiveCore","EnvironmentalCore","PowerCore","CostCore","PotencyCore","ObsidianBrace","ToolCore"}; @SideOnly(Side.CLIENT) private IIcon[] icons; diff --git a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemSuction.java b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemSuction.java index 24915f1c..7c712ec7 100644 --- a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemSuction.java +++ b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemSuction.java @@ -14,7 +14,6 @@ import net.minecraft.potion.PotionEffect; import net.minecraft.server.MinecraftServer; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; -import WayofTime.alchemicalWizardry.ModBlocks; import WayofTime.alchemicalWizardry.api.rituals.IMasterRitualStone; import WayofTime.alchemicalWizardry.api.rituals.RitualComponent; import WayofTime.alchemicalWizardry.api.rituals.RitualEffect; @@ -58,7 +57,11 @@ public class RitualEffectItemSuction extends RitualEffect return; } - if (currentEssence < this.getCostPerRefresh()*100) + Block block = world.getBlock(x, y-1, z); + int range = this.getRange(block); + int refCost = this.getCostMod(block); + + if (currentEssence < this.getCostPerRefresh()*100*refCost) { EntityPlayer entityOwner = MinecraftServer.getServer().getConfigurationManager().getPlayerForUsername(owner); @@ -132,7 +135,7 @@ public class RitualEffectItemSuction extends RitualEffect if(count>0) { - data.currentEssence = currentEssence - this.getCostPerRefresh()*Math.min(count, 100); + data.currentEssence = currentEssence - this.getCostPerRefresh()*Math.min(count, 100)*refCost; data.markDirty(); return; } @@ -144,6 +147,48 @@ public class RitualEffectItemSuction extends RitualEffect { return 5; } + + public int getRange(Block block) + { + if(block == null) + { + return 10; + } + if(block == Blocks.iron_block) + { + return 15; + } + if(block == Blocks.gold_block) + { + return 25; + } + if(block == Blocks.diamond_block) + { + return 40; + } + return 10; + } + + public int getCostMod(Block block) + { + if(block == null) + { + return 1; + } + if(block == Blocks.iron_block) + { + return 2; + } + if(block == Blocks.gold_block) + { + return 3; + } + if(block == Blocks.diamond_block) + { + return 4; + } + return 1; + } @Override public List getRitualComponentList() diff --git a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/SpellParadigmTool.java b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/SpellParadigmTool.java index a9390285..16b1498f 100644 --- a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/SpellParadigmTool.java +++ b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/SpellParadigmTool.java @@ -48,6 +48,7 @@ public class SpellParadigmTool extends SpellParadigm private HashMap digSpeed; private HashMap maxDamageHash; private HashMap critChanceHash; + private HashMap durationHash; //ticks private HashMap toolInfoString; @@ -66,6 +67,8 @@ public class SpellParadigmTool extends SpellParadigm this.breakBlockEffectList = new LinkedList(); this.itemManipulatorEffectList = new LinkedList(); this.digAreaEffectList = new LinkedList(); + this.specialDamageEffectList = new LinkedList(); + this.durationHash = new HashMap(); this.toolInfoString = new HashMap(); this.critChanceHash = new HashMap(); @@ -73,12 +76,12 @@ public class SpellParadigmTool extends SpellParadigm this.maxDamage = 5; this.harvestLevel = new HashMap(); - this.harvestLevel.put("pickaxe", 2); + this.harvestLevel.put("pickaxe", -1); this.harvestLevel.put("shovel", -1); this.harvestLevel.put("axe", -1); this.digSpeed = new HashMap(); - this.digSpeed.put("pickaxe", 6.0f); + this.digSpeed.put("pickaxe", 1.0f); this.digSpeed.put("shovel", 1.0f); this.digSpeed.put("axe", 1.0f); @@ -88,7 +91,9 @@ public class SpellParadigmTool extends SpellParadigm this.fortuneLevel = 0; this.silkTouch = false; - this.duration = 2400; + this.duration = 0; + + this.durationHash.put("default", 2400); //this.addRightClickEffect(new RightClickTunnel(0,0,0)); @@ -178,6 +183,11 @@ public class SpellParadigmTool extends SpellParadigm itemTool.setToolListString(toolStack, toolStringList); + for(Integer integ : this.durationHash.values()) + { + this.duration += integ; + } + itemTool.setDuration(toolStack, world, this.duration); itemTool.loadParadigmIntoStack(toolStack, this.bufferedEffectList); @@ -453,6 +463,11 @@ public class SpellParadigmTool extends SpellParadigm this.critChanceHash.put(key, chance); } + public void addDuration(String key, int dur) + { + this.durationHash.put(key, dur); + } + public float getCritChance() { float chance = 0.0f; diff --git a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/effect/SpellEffectFire.java b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/effect/SpellEffectFire.java index 48595b37..a4027390 100644 --- a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/effect/SpellEffectFire.java +++ b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/effect/SpellEffectFire.java @@ -17,6 +17,7 @@ import WayofTime.alchemicalWizardry.common.spell.complex.effect.impactEffects.fi import WayofTime.alchemicalWizardry.common.spell.complex.effect.impactEffects.fire.SelfEnvironmentalFire; import WayofTime.alchemicalWizardry.common.spell.complex.effect.impactEffects.fire.SelfOffensiveFire; import WayofTime.alchemicalWizardry.common.spell.complex.effect.impactEffects.fire.ToolDefaultFire; +import WayofTime.alchemicalWizardry.common.spell.complex.effect.impactEffects.fire.ToolEnvironmentalFire; import WayofTime.alchemicalWizardry.common.spell.complex.effect.impactEffects.fire.ToolOffensiveFire; public class SpellEffectFire extends SpellEffect @@ -181,15 +182,21 @@ public class SpellEffectFire extends SpellEffect } @Override - public void defensiveModificationTool(SpellParadigmTool parad) { - // TODO Auto-generated method stub + public void defensiveModificationTool(SpellParadigmTool parad) + { + parad.addCritChance("defFire", this.potencyEnhancement); + parad.addDuration("defFire", 1200 * this.powerEnhancement); + + parad.addToolString("defFire", "Unbreaking" + " " + SpellHelper.getNumeralForInt(this.powerEnhancement + 1)); } @Override - public void environmentalModificationTool(SpellParadigmTool parad) { - // TODO Auto-generated method stub + public void environmentalModificationTool(SpellParadigmTool parad) + { + parad.addBlockBreakEffect(new ToolEnvironmentalFire(this.powerEnhancement,this.potencyEnhancement,this.costEnhancement)); + parad.addToolString("envFire", "Magma Plume" + " " + SpellHelper.getNumeralForInt(this.powerEnhancement + 1)); } @Override @@ -201,18 +208,18 @@ public class SpellEffectFire extends SpellEffect @Override protected int getCostForOffenseTool() { - return (int)(0); //TODO + return (int)(1000 * (1 + this.powerEnhancement*0.3f) * (1 + this.potencyEnhancement*0.2f) * Math.pow(0.85, costEnhancement)); } @Override - protected int getCostForDefenseTool() { - // TODO Auto-generated method stub - return 0; + protected int getCostForDefenseTool() + { + return (int)(500 * (1 + this.powerEnhancement*0.5f) * (1 + this.potencyEnhancement) * Math.pow(0.85, costEnhancement)); } @Override - protected int getCostForEnvironmentTool() { - // TODO Auto-generated method stub + protected int getCostForEnvironmentTool() + { return 0; } } diff --git a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/effect/impactEffects/fire/ToolEnvironmentalFire.java b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/effect/impactEffects/fire/ToolEnvironmentalFire.java new file mode 100644 index 00000000..cfa1aa8b --- /dev/null +++ b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/spell/complex/effect/impactEffects/fire/ToolEnvironmentalFire.java @@ -0,0 +1,47 @@ +package WayofTime.alchemicalWizardry.common.spell.complex.effect.impactEffects.fire; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.Blocks; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; +import WayofTime.alchemicalWizardry.common.spell.complex.effect.impactEffects.tool.OnBreakBlockEffect; + +public class ToolEnvironmentalFire extends OnBreakBlockEffect +{ + public ToolEnvironmentalFire(int power, int potency, int cost) + { + super(power, potency, cost); + } + + @Override + public int onBlockBroken(ItemStack container, World world, EntityPlayer player, Block block, int meta, int x, int y, int z, ForgeDirection sideBroken) + { + int amount = 0; + int cost = (int)(250 * (1 - 0.1f*powerUpgrades) * Math.pow(0.85, costUpgrades)); + int radius = this.powerUpgrades; + float chance = 0.35f + 0.15f*this.potencyUpgrades; + + for(int i=-radius; i<=radius; i++) + { + for(int j=-radius; j<=radius; j++) + { + for(int k=-radius; k<=radius; k++) + { + Block blockAffected = world.getBlock(x + i -sideBroken.offsetX, y + j, z + k - sideBroken.offsetZ); + + if((new Random().nextFloat() <= chance) && (blockAffected == Blocks.gravel || blockAffected == Blocks.stone || blockAffected == Blocks.cobblestone)) + { + world.setBlock(x + i -sideBroken.offsetX, y + j, z + k - sideBroken.offsetZ, Blocks.lava); + amount += cost; + } + } + } + } + + return amount; + } +} diff --git a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEDemonPortal.java b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEDemonPortal.java index 4f67ce35..b9273060 100644 --- a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEDemonPortal.java +++ b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEDemonPortal.java @@ -47,6 +47,11 @@ public class TEDemonPortal extends TileEntity private boolean isInitialized; + public int houseCooldown; + public int roadCooldown; + public int tier; //Tier of the demon portal - Should select buildings 2 below to this + public int totalPoints; + public TEDemonPortal() { super(); @@ -71,6 +76,9 @@ public class TEDemonPortal extends TileEntity isInitialized = false; this.setGridSpace(0, 0, new GridSpace(GridSpace.MAIN_PORTAL, yCoord)); + + this.houseCooldown = 0; + this.roadCooldown = 0; } public void initialize() @@ -87,6 +95,9 @@ public class TEDemonPortal extends TileEntity if(Math.abs(xIndex) == 1 || Math.abs(zIndex) == 1) { this.setGridSpace(xIndex, zIndex, new GridSpace(GridSpace.ROAD,yCoord)); + }else if(xIndex == 0 && zIndex == 0) + { + this.setGridSpace(0, 0, new GridSpace(GridSpace.MAIN_PORTAL, yCoord)); }else { this.setGridSpace(xIndex, zIndex, new GridSpace()); @@ -94,6 +105,9 @@ public class TEDemonPortal extends TileEntity } } + this.houseCooldown = 1000; + this.roadCooldown = 100; + isInitialized = true; } @@ -105,6 +119,8 @@ public class TEDemonPortal extends TileEntity this.negZRadius = par1NBTTagCompound.getInteger("negZRadius"); this.posXRadius = par1NBTTagCompound.getInteger("posXRadius"); this.posZRadius = par1NBTTagCompound.getInteger("posZRadius"); + this.houseCooldown = par1NBTTagCompound.getInteger("houseCooldown"); + this.roadCooldown = par1NBTTagCompound.getInteger("roadCooldown"); area = new GridSpace[negXRadius + posXRadius + 1][negZRadius + posZRadius + 1]; @@ -134,6 +150,8 @@ public class TEDemonPortal extends TileEntity par1NBTTagCompound.setInteger("negZRadius", negZRadius); par1NBTTagCompound.setInteger("posXRadius", posXRadius); par1NBTTagCompound.setInteger("posZRadius", posZRadius); + par1NBTTagCompound.setInteger("houseCooldown", houseCooldown); + par1NBTTagCompound.setInteger("roadCooldown", roadCooldown); NBTTagList gridList = new NBTTagList(); @@ -163,7 +181,7 @@ public class TEDemonPortal extends TileEntity par1NBTTagCompound.setBoolean("init", isInitialized); } - public void createRandomRoad() + public int createRandomRoad() //Return the number of road spaces { int next = rand.nextInt(4); ForgeDirection dir; @@ -200,7 +218,7 @@ public class TEDemonPortal extends TileEntity if(directions.size() <= 0) { - return; + return 0; } int maxDistance = 5; @@ -223,12 +241,14 @@ public class TEDemonPortal extends TileEntity if(dominantDirection == null) { - return; + return 0; } System.out.println("I got here!"); System.out.println("Distance: " + distance + " Direction: " + dominantDirection.toString() + " yLevel: " + yLevel); this.createGriddedRoad(x, yLevel, z, dominantDirection, distance+1, true); + + return distance; } public List findValidExtentionDirection(int x, int z) @@ -732,6 +752,9 @@ public class TEDemonPortal extends TileEntity if(ForgeDirection.getOrientation(side) == ForgeDirection.UP) { this.createRandomBuilding(DemonBuilding.BUILDING_HOUSE, 0); + }else if(ForgeDirection.getOrientation(side) == ForgeDirection.DOWN) + { + this.createRandomBuilding(DemonBuilding.BUILDING_PORTAL, 0); }else { this.createRandomRoad(); @@ -766,7 +789,7 @@ public class TEDemonPortal extends TileEntity for(int i=2; i<6; i++) { ForgeDirection testDir = ForgeDirection.getOrientation(i); - if(this.getGridSpace(x + testDir.offsetX, z + testDir.offsetZ).isEmpty()) + //if(this.getGridSpace(x + testDir.offsetX, z + testDir.offsetZ).isEmpty()) { directions.add(testDir); } @@ -783,6 +806,10 @@ public class TEDemonPortal extends TileEntity { for(DemonBuilding build : TEDemonPortal.buildingList) { + if(build.buildingType != DemonBuilding.BUILDING_PORTAL) + { + continue; + } if(schemMap.containsKey(nextDir)) { schemMap.get(nextDir).add(build); @@ -813,6 +840,7 @@ public class TEDemonPortal extends TileEntity if(block == ModBlocks.blockDemonPortal) { BlockTeleposer.swapBlocks(worldObj, worldObj, xCoord, i, zCoord, xCoord, yLevel + yOffset, zCoord); + break; } } diff --git a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TESchematicSaver.java b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TESchematicSaver.java index 8558b667..8accb62e 100644 --- a/1.7.2/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TESchematicSaver.java +++ b/1.7.2/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TESchematicSaver.java @@ -16,7 +16,7 @@ import com.google.gson.GsonBuilder; public class TESchematicSaver extends TileEntity { - public Block targetBlock = ModBlocks.largeBloodStoneBrick; + public Block targetBlock = ModBlocks.blockBuildingSchematicSaver; public void rightClickBlock(EntityPlayer player, int side) { diff --git a/1.7.2/main/resources/assets/alchemicalwizardry/lang/en_US.lang b/1.7.2/main/resources/assets/alchemicalwizardry/lang/en_US.lang index feb12464..a550139b 100644 --- a/1.7.2/main/resources/assets/alchemicalwizardry/lang/en_US.lang +++ b/1.7.2/main/resources/assets/alchemicalwizardry/lang/en_US.lang @@ -25,6 +25,7 @@ tile.blockConduit.name=Spell Conduit tile.blockSpellParadigm.projectile.name=Particle Generator tile.blockSpellParadigm.self.name=Self Augmentator tile.blockSpellParadigm.melee.name=Melee Aggregator +tile.blockSpellParadigm.tool.name=Tool Forger tile.blockSpellEnhancement.power1.name=Unstable Spell Empowerer tile.blockSpellEnhancement.power2.name=Standard Spell Empowerer tile.blockSpellEnhancement.power3.name=Reinforced Spell Empowerer @@ -138,6 +139,7 @@ item.bloodMagicBaseItem.StoneBrace.name=Stone Brace item.bloodMagicBaseItem.ProjectileCore.name=Projectile Core item.bloodMagicBaseItem.SelfCore.name=Self Core item.bloodMagicBaseItem.MeleeCore.name=Melee Core +item.bloodMagicBaseItem.ToolCore.name=Tool Core item.bloodMagicBaseItem.ParadigmBackPlate.name=Paradigm Plate item.bloodMagicBaseItem.OutputCable.name=Output Spell Cable item.bloodMagicBaseItem.InputCable.name=Input Spell Cable @@ -168,7 +170,7 @@ item.bloodMagicAlchemyItem.Potentia.name=Potentia item.sanguineHelmet.name=Sanguine Helmet item.itemSeerSigil.name=Sigil of Sight item.itemFluidSigil.name= - +item.multiTool.name=Dynamic Mace #Creative Tab itemGroup.tabBloodMagic=Blood Magic diff --git a/1.7.2/main/resources/assets/alchemicalwizardry/schematics/building/buildings.zip b/1.7.2/main/resources/assets/alchemicalwizardry/schematics/building/buildings.zip index 795c759598afbd61eb01e1a1a274c1dd9bd29dc7..88db9bbc41e47a980ed65e2ef5515280009d7e74 100644 GIT binary patch literal 11317 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 KhLB|i0Q?_6dW~cN literal 766 zcmWIWW@Zs#U|`^2IOKfYWk&Jqk9AB843U})4E#V*T? zZyUwhY<-`ve`b=^omQ(HfwT83wq)PvO_M(79k{eK>d95}3t7fd@t?}#L{gPse#kJH z6aVe=oI>67EE8yJtX8FwnFBZQ|>6YNi zVE(jmegpgbJpc{>Fw?o95{XE z)7O>#E+?ay0gq%eYdla$HZvrm#5q4VH#M&W$Yo$~E=o--Nlj5G&n(GMaQE~LNYP7W z2a4bKba4!^IK6bTVbLK20oVInlbs~*JYkvQbQKFzb<6$IB@*nrl|O36Jk=YJH$3$FTT&V zjNiewXyUxLe9xn9N3y-YFE+K&_1F3IN!9y5^GlT#{+g_R5g29+44$rjF6*2UngDg_ BhnfHY diff --git a/1.7.2/main/resources/assets/alchemicalwizardry/textures/items/ElementalInkAir.png b/1.7.2/main/resources/assets/alchemicalwizardry/textures/items/ElementalInkAir.png deleted file mode 100644 index e7d3e1ffe103d915dada6610eba50e2d38d12f52..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 439 zcmV;o0Z9IdP)kWqna zrvfPm>r1*DVOEETNQ5E;KSQ^$>_x*|()~{dPm!{QK?8G{ndjk|;Ta_&OcMrEMr2&0 zdUhmTJye%86i%V2ex<-E6jdNXC(vWTf3gB1GBPhKuGF7e(s+K6>r+q0&5cyxmP=x< z=9sZ8-h3aG*~BZCWTF+kvMZ^~2F<%Feh?5dO%`mMbT-HFi7TN5mV(#D4J-K_+P7CM z+BTM9kc!17KjQNG77w)xX4mrEw>tndyItP34kyq+DjEeKVOgY;2>|BeaXz(#6U>_i ztzHj1>wK&CwPwkRgcCT0qUzLZm`d@{?_(JTy}^LTyDHne2R{s@#y!({#S>p^lp138 h_YOz8QT_WjegO^fkWe^7eER?Z002ovPDHLkV1lQ;s{XE z)7O>#F1rMu1*^uSWPhNLY-UJAiF1B#Zfaf$kjuc}T$GwvlA5AWo>`Ki;O^-gkfN8$ z&cMKE;OXKRVsZNDWNU9`M-jL4XYzz5TXn2R5ah0J>}^sq6B6l3(#n1F#+7;6G^L2B zj)PXSPbIu=`XO8+vQePMQDADvvAc7#1wE3@q&*(Cu6%ayaCw`xm&=Q#CbrXL%N~Zw z{9I)_!H1vGU}|houC%MlmpSvNJy}zsFt_TB-^W+|SMQ0uJI@#B^^h-3#mBLoH(ow} zyGXu&S%G$62`i9@kyt~CI&9tJ|Nn(4H?Uy+Onw?*~CuSAnX}%R^|Ts^B1|iqB}UkY&sQK;(!WnZ412B#r7gXreV7G za?=I6(vPc`TsnNQVdkAxQqi|_e;pM*@+*iTW!m-`bD~3H-yZzp6vz0ecHj1(GtaKy ge%JWx`~4r>XXh>GxVy3W0Vq&CUHx3vIVCg!0E!i?E&u=k diff --git a/1.7.2/main/resources/assets/alchemicalwizardry/textures/items/ElementalInkFire.png b/1.7.2/main/resources/assets/alchemicalwizardry/textures/items/ElementalInkFire.png deleted file mode 100644 index 6f69f5ba10567f911aac8b999bb43bedb5ed9e24..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 430 zcmV;f0a5;mP)1fyqK%{?2-2zD>=vDh z58x;r`-GB7@&H*a^bf5d?e1W)5iJ_jcsmrj)Ko?2UGKezbI&=UtaiOYX708q;%yEIZs1A*^J{ltN6mfpwkuoHrAM;fIn z>*0`9zfb+N{G-WEfWY^}%@w(OeMS`uD9d6KhBV6OTS0ySq^46I-(GMpYdkDMlx49V zjaUr^==pp%13jHlE0nl@>fu%|Km=`B=zM;^Ag#|F(v=Dl$He0?$}mudfp(nz0K_y= zw#}7YW;2-}QH085P^P)Rje+lpYudCN7^TA7@KZbtxg6ajF3bE^&t(!YJ< Y7kck>_4OTKZU6uP07*qoM6N<$f|^gSC;$Ke diff --git a/1.7.2/main/resources/assets/alchemicalwizardry/textures/items/ElementalInkWater.png b/1.7.2/main/resources/assets/alchemicalwizardry/textures/items/ElementalInkWater.png deleted file mode 100644 index 35f17a0a4b9adc518d856c9c2e181a81bf4141eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 429 zcmV;e0aE^nP)FUQE+!3p2~8}9 zm61>As$~O5r4H^+T{OnTrP#CvX_cJxbt5tK1jFE)+;Z>Tli&O2VMK&&f@905=n}zb z@B^*W>$5)*bb5W3qzg>qLi_nw0ss&d4#QYe0}+*;@zAF*OehQ!8V`Naz2mz2_YOVG z=L^K~2b@-Sr6<}RTwVHPIj4BIzX1R=o4Zh|!2Z!$sYofoCEJxUyzgxLNHiWrrk#N?{54C XZ5xsAMC4Y-00000NkvXXu0mjf#ICN7 diff --git a/1.7.2/main/resources/assets/alchemicalwizardry/textures/items/baseItemToolCore.png b/1.7.2/main/resources/assets/alchemicalwizardry/textures/items/baseItemToolCore.png new file mode 100644 index 0000000000000000000000000000000000000000..f6dd600bddd489ba11303c56ec21889d40e9cbf6 GIT binary patch literal 453 zcmV;$0XqJPP)VGd000McNliru-Uk8~A{8blF^K0jVN zj=f&nyL%`O5Qo@^E>oQ|=bKmG%p4v%l5G#~PKEXRhcBD8$)>{joRcFC22>R{W6mx& zgOb0CUmjB~nB{ajlojRbR&#cF7t&Ys4ms#^lixb{0|FhI`#5P7L%@$>#T*krPYoSr6EJYftbuj-yL00000NkvXXu0mjfMd84b literal 0 HcmV?d00001 diff --git a/1.7.2/main/resources/assets/alchemicalwizardry/textures/models/SpellParadigmTool.png b/1.7.2/main/resources/assets/alchemicalwizardry/textures/models/SpellParadigmTool.png index 19b5ad2282bf15915138b6e9293b24f9543e5dca..4296e387633a467f65cc7a440a8205f56bc81556 100644 GIT binary patch delta 1113 zcmV-f1g87a1e^(wQhx^l6&(>_O+o(v00b#XL_t(|+U=UXZW~7wg}>P!@n?4_1rnUf zZy`qsf&{9ywR$5#kT(dBA~9SA@EZt53?fBbsGd|QlEQ^0SI#4-bt2Iumw&rEDK5z+ zDKVCWP~wt%0D?=*aG-nU+;i`YsF;Hvzr>^lTnBmsAO+V2&wqy~f;0g?$mV~iQREQL zyn(0#Q5QA?==C57AZp84JCb*0fl@+7USZ7}NDcT^39wd^cYtOKwzowYQ3S?hV=JYA ztxbpr;J6ZGng|ht0oXPq3B<8H=NWSeux&U$hrow+8M1 z-9KPi;8no@wtofv7`lB(Qz(_hBk~IMEW`k`TVi~UEj#S_BKJ6kY8Br74UPpPuWvME z-p4yosmi=K7J>k5N4(*O-hA}y)0;!Q2zr8K4?|CA5lLAJFND}ZW@_(GBuvrsTxGq?>ycA-ZK~2=8 z6tvno@PKkj{!n)S=M6~%+m^Zy;Cs;NKz|@a1RgZrivgC)GH1gTvKlQR$@ihr0B0iy z1X#8>eH=r%Bta=e)-Vh_1+OIOV2miFT!v;_QlJ(HIet~hXh$+9iE}_esRW&2XZPR% zG~Z`~L4Qpg-Wcfj!BVoT8}88Pl#tbG!sZr~QX$UwhWVBA9$_tTsYIRCney(3k5Q{k zz@q-ddl~%x|!%%gYzphiHz*?k$I;&%zzmN~#d^J7z?Qsae(V<>h zLY(I>;7uTbs=B7zfxmX-^CxXhnr1}oHdoINrhhWs^QO=DRZr^wST1UXQ^2y|>&NSt z0!1SF}^Jzz8fY+6f{bBvj>uv9?`hdy$*X?F^0xPY6gD@P&{ir3oZj2mc(gaFn zc;$xtru9lHVX6u^u3T#P!{cq5Laz(Bg;y*k4#Lok6ns|4%yzN2It#3A6*#M7Ms*+H z>3@@-0C@8B`>8J+9cr#K?z|&yHK!+UZ=3?oP4i}Q_a}FL zRtY!R)lsMUP_Jno-qyg@J_Y{QKHxr0aA_K$`$9(O-J8HtnBY?M0gLX~X73fQBJ)FY z7D48nrohW%#)qvx)#c##(Y!o{KajD{dViYTz8+uMEldH6Ho)2S0X`pSUb*4aj{owj zoIEG7+tlOB+C|((SvT>359R-4!2h+*Zc~EaZB5I46#S!>9$&~Ta`*4057;M@wByXz zWxI7pRUngSc4jNETZf@2m>U27eXyB2rC~ zWU}9jG?i**ii@ZMcVdFeTn5$1u&xu>Rk&*I(V@=G{}0ywFjSyGfdT~z6ev)jK!E}U f3KS?%VBPR9FR%5`M@=x+00000NkvXXu0mjf_HPjF delta 523 zcmV+m0`&cy3DN|RQhx>+3^@fcMYBRzR~c9%?fkr%9TIe~6IcZBW{_Zl zEHHCu02+V>m^VqN+J`ds>cAAB0cZdkfXuoK`ZwyLSr(Ts(|>qAcH{# z0br;BOo3-MKwZEd%FD$%Z$5l21pu(m&C?nr)tmf0jqT% z0JfVC0KjJZ-hcSRJ~!yIE<`ibi;vKmNk_m=V0Em2I-c$6cn(g1G&FBq@4KG&BO%1A z+G#G$O!M%s0>(0UkK^zdL~s-acqCVY4le?u5W!LO0kJzaf3DDG%v)<>7<14R(7}ry zuzWHYxFfm@#u?8?jDXkz=)Ye#S3w#cZ_Fp1bvmhvF@KF(glNF6{C79}+k15L{_)%Q zd{?AQx(|pQ(!m;V4J+e@aPJqit?g=QZ*5+myK7>P;s>h&eLU}ny?-683JlQ&`hwS{ zDY|Cuc)hJu-ZcVLu=;GQjkdM>+)U>C0cV1Q5JCtcgb+dqA!KHJ0ammJUgEJNL;wH) N07*qoLw^FQ diff --git a/1.7.2/main/resources/assets/alchemicalwizardry/textures/models/baseItemToolCore.png b/1.7.2/main/resources/assets/alchemicalwizardry/textures/models/baseItemToolCore.png new file mode 100644 index 0000000000000000000000000000000000000000..3c171d981d13689b2ae23f88dcd948eecd7c504c GIT binary patch literal 453 zcmV;$0XqJPP)VGd000McNliru-Uk5|0Uu(-kNf}t0a8gs zK~y-)#nQcQ6HyR`;b;Aq#72%|Q-mTS5=b-=4N^)jgc6C8E25*}3b+X>8blF^K0jVN zj=f&nyL%`O5Qo@^E>oQ|=bKmG%p4v%l5G#~PKEXRhcBD8$)>{joRcFC22>R{W6mx& zgOb0CUmjB~nB{ajlojRbR&#cF7t&Ys4ms#^lixb{0|FhI`#5P7L%@$>#T*krPYoSr6EJYftbuj-yL00000NkvXXu0mjfN;tm9 literal 0 HcmV?d00001