From 22afbcbd11ab0d04ef154e8d45cfcb7a91ece697 Mon Sep 17 00:00:00 2001 From: WayofTime Date: Fri, 5 Dec 2014 15:11:05 -0500 Subject: [PATCH] Hoard demons no longer 1HKO'd by dagger --- build.properties | 6 ++-- .../AlchemicalWizardry.java | 21 +++++++------ .../BloodMagicConfiguration.java | 29 ++++++++++-------- .../client/ClientProxy.java | 2 +- .../common/demonVillage/DemonVillagePath.java | 1 + .../common/demonVillage/GridSpaceHolder.java | 5 +++ .../demonHoard/DemonPacketMinorGrunt.java | 2 +- .../demon/EntityMinorDemonGruntFire.java | 1 + .../demon/EntityMinorDemonGruntWind.java | 20 ++++++++++-- .../loot/DemonVillageLootRegistry.java | 29 +++++++++++++++--- .../tileEntity/TEDemonPortal.java | 24 ++++++++------- .../{ => entity/mob}/EntityAirElemental.java | 3 +- .../common/items/DaggerOfSacrifice.java | 7 ++++- .../common/renderer/mob/RenderElemental.java | 1 - .../common/summoning/SummoningHelperAW.java | 26 +++++++++++++++- .../assets/alchemicalwizardry/lang/en_US.lang | 2 ++ .../schematics/building/buildings.zip | Bin 17008 -> 16998 bytes src/main/resources/mcmod.info | 2 +- 18 files changed, 130 insertions(+), 51 deletions(-) rename src/main/java/WayofTime/alchemicalWizardry/common/{ => entity/mob}/EntityAirElemental.java (91%) diff --git a/build.properties b/build.properties index 4dd83b6a..20198283 100644 --- a/build.properties +++ b/build.properties @@ -1,12 +1,12 @@ # -#Sat Nov 29 10:45:33 EST 2014 +#Fri Dec 05 14:08:30 EST 2014 mod_name=BloodMagic forge_version=10.13.2.1232 ccc_version=1.0.4.29 nei_version=1.0.3.64 //=Dependency Information package_group=com.wayoftime.bloodmagic -mod_version=1.2.1b +mod_version=1.3.0Beta minetweaker_version=Dev-1.7.10-3.0.9B -build_number=2 mc_version=1.7.10 +build_number=2 diff --git a/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java b/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java index 4ff55520..2e11cafd 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java +++ b/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java @@ -64,7 +64,6 @@ import WayofTime.alchemicalWizardry.api.summoningRegistry.SummoningRegistry; import WayofTime.alchemicalWizardry.common.AlchemicalWizardryEventHooks; import WayofTime.alchemicalWizardry.common.AlchemicalWizardryFuelHandler; import WayofTime.alchemicalWizardry.common.CommonProxy; -import WayofTime.alchemicalWizardry.common.EntityAirElemental; import WayofTime.alchemicalWizardry.common.LifeBucketHandler; import WayofTime.alchemicalWizardry.common.LifeEssence; import WayofTime.alchemicalWizardry.common.ModLivingDropsEvent; @@ -82,8 +81,10 @@ import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityM import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGruntFire; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGruntIce; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGruntWind; +import WayofTime.alchemicalWizardry.common.demonVillage.loot.DemonVillageLootRegistry; import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.TEDemonChest; import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.TEDemonPortal; +import WayofTime.alchemicalWizardry.common.entity.mob.EntityAirElemental; import WayofTime.alchemicalWizardry.common.entity.mob.EntityBileDemon; import WayofTime.alchemicalWizardry.common.entity.mob.EntityBoulderFist; import WayofTime.alchemicalWizardry.common.entity.mob.EntityEarthElemental; @@ -263,7 +264,7 @@ import cpw.mods.fml.common.network.NetworkRegistry; import cpw.mods.fml.common.registry.EntityRegistry; import cpw.mods.fml.common.registry.GameRegistry; -@Mod(modid = "AWWayofTime", name = "AlchemicalWizardry", version = "v1.2.1b", guiFactory = "WayofTime.alchemicalWizardry.client.gui.ConfigGuiFactory") +@Mod(modid = "AWWayofTime", name = "AlchemicalWizardry", version = "v1.3.0Beta", guiFactory = "WayofTime.alchemicalWizardry.client.gui.ConfigGuiFactory") public class AlchemicalWizardry { @@ -871,13 +872,13 @@ public class AlchemicalWizardry EntityRegistry.registerModEntity(EntityMinorDemonGruntEarth.class, "MinorDemonGruntEarth", 38, this, 80, 3, true); - ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.standardBindingAgent), 1, 3, this.standardBindingAgentDungeonChance)); - ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.mundanePowerCatalyst), 1, 1, this.mundanePowerCatalystDungeonChance)); - ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.mundaneLengtheningCatalyst), 1, 1, this.mundaneLengtheningCatalystDungeonChance)); - ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.averagePowerCatalyst), 1, 1, this.averagePowerCatalystDungeonChance)); - ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.averageLengtheningCatalyst), 1, 1, this.averageLengtheningCatalystDungeonChance)); - ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.greaterPowerCatalyst), 1, 1, this.greaterPowerCatalystDungeonChance)); - ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.greaterLengtheningCatalyst), 1, 1, this.greaterLengtheningCatalystDungeonChance)); + ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.standardBindingAgent), 1, 3, this.standardBindingAgentDungeonChance / 5)); + ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.mundanePowerCatalyst), 1, 1, this.mundanePowerCatalystDungeonChance / 5)); + ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.mundaneLengtheningCatalyst), 1, 1, this.mundaneLengtheningCatalystDungeonChance / 5)); + ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.averagePowerCatalyst), 1, 1, this.averagePowerCatalystDungeonChance / 5)); + ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.averageLengtheningCatalyst), 1, 1, this.averageLengtheningCatalystDungeonChance / 5)); + ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.greaterPowerCatalyst), 1, 1, this.greaterPowerCatalystDungeonChance / 5)); + ChestGenHooks.getInfo(ChestGenHooks.DUNGEON_CHEST).addItem(new WeightedRandomChestContent(new ItemStack(ModItems.greaterLengtheningCatalyst), 1, 1, this.greaterLengtheningCatalystDungeonChance / 5)); //Ore Dictionary Registration OreDictionary.registerOre("oreCoal", Blocks.coal_ore); @@ -1132,6 +1133,8 @@ public class AlchemicalWizardry BloodMagicConfiguration.loadBlacklist(); BloodMagicConfiguration.blacklistRituals(); + DemonVillageLootRegistry.init(); + if(parseTextFiles) this.parseTextFile(); } diff --git a/src/main/java/WayofTime/alchemicalWizardry/BloodMagicConfiguration.java b/src/main/java/WayofTime/alchemicalWizardry/BloodMagicConfiguration.java index 7e04569b..dee7dc16 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/BloodMagicConfiguration.java +++ b/src/main/java/WayofTime/alchemicalWizardry/BloodMagicConfiguration.java @@ -12,6 +12,8 @@ import net.minecraftforge.common.config.Configuration; import WayofTime.alchemicalWizardry.api.rituals.Rituals; import WayofTime.alchemicalWizardry.client.renderer.ColourThreshold; import WayofTime.alchemicalWizardry.client.renderer.RenderHelper; +import WayofTime.alchemicalWizardry.common.demonVillage.DemonVillagePath; +import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.TEDemonPortal; import WayofTime.alchemicalWizardry.common.items.BoundArmour; import WayofTime.alchemicalWizardry.common.summoning.meteor.MeteorParadigm; import cpw.mods.fml.common.FMLCommonHandler; @@ -134,20 +136,21 @@ public class BloodMagicConfiguration AlchemicalWizardry.ritualDisabledVeilOfEvil = config.get("Ritual Blacklist", "Veil of Evil", false).getBoolean(false); AlchemicalWizardry.ritualDisabledFullStomach = config.get("Ritual Blacklist", "Requiem of the Satiated Stomach", false).getBoolean(false); -// String tempDemonConfigs = "Temp Demon Configs"; -// TEDemonPortal.buildingGridDelay = config.get(tempDemonConfigs, "Building Grid Delay", 25).getInt(); -// TEDemonPortal.roadGridDelay = config.get(tempDemonConfigs, "Road Grid Delay", 10).getInt(); -// TEDemonPortal.demonHoardDelay = config.get(tempDemonConfigs, "Demon Hoard Delay", 40).getInt(); -// TEDemonPortal.demonRoadChance = (float)(config.get(tempDemonConfigs, "Demon Road Chance", 0.6f).getDouble()); -// TEDemonPortal.demonHouseChance = (float)(config.get(tempDemonConfigs, "Demon House Chance", 0.6f).getDouble()); -// TEDemonPortal.demonPortalChance = (float)(config.get(tempDemonConfigs, "Demon Portal Chance", 0.5f).getDouble()); -// TEDemonPortal.demonHoardChance = (float)(config.get(tempDemonConfigs, "Demon Hoard Chance", 1.0f).getDouble()); -// TEDemonPortal.portalTickRate = (float)(config.get(tempDemonConfigs, "Portal Tick Rate", 0.1f).getDouble()); -// -// DemonVillagePath.canGoDown = config.get(tempDemonConfigs, "canRoadGoDown", true).getBoolean(); -// DemonVillagePath.tunnelIfObstructed = config.get(tempDemonConfigs, "tunnelIfObstructed", false).getBoolean(); -// DemonVillagePath.createBridgeInAirIfObstructed = config.get(tempDemonConfigs, "createBridgeInAirIfObstructed", false).getBoolean(); + String tempDemonConfigs = "Temp Demon Configs [2]"; + TEDemonPortal.buildingGridDelay = config.get(tempDemonConfigs, "Building Grid Delay", 25).getInt(); + TEDemonPortal.roadGridDelay = config.get(tempDemonConfigs, "Road Grid Delay", 10).getInt(); + TEDemonPortal.demonHoardDelay = config.get(tempDemonConfigs, "Demon Hoard Delay", 40).getInt(); + TEDemonPortal.demonRoadChance = (float)(config.get(tempDemonConfigs, "Demon Road Chance", 0.3f).getDouble()); + TEDemonPortal.demonHouseChance = (float)(config.get(tempDemonConfigs, "Demon House Chance", 0.6f).getDouble()); + TEDemonPortal.demonPortalChance = (float)(config.get(tempDemonConfigs, "Demon Portal Chance", 0.5f).getDouble()); + TEDemonPortal.demonHoardChance = (float)(config.get(tempDemonConfigs, "Demon Hoard Chance", 0.8f).getDouble()); + TEDemonPortal.portalTickRate = (float)(config.get(tempDemonConfigs, "Portal Tick Rate", 0.1f).getDouble()); + + DemonVillagePath.canGoDown = config.get(tempDemonConfigs, "canRoadGoDown", true).getBoolean(); + DemonVillagePath.tunnelIfObstructed = config.get(tempDemonConfigs, "tunnelIfObstructed", false).getBoolean(); + DemonVillagePath.createBridgeInAirIfObstructed = config.get(tempDemonConfigs, "createBridgeInAirIfObstructed", false).getBoolean(); + TEDemonPortal.limit = config.get(tempDemonConfigs, "demonGridSpaceLimit", 100).getInt(); BoundArmour.tryComplexRendering = config.get("WimpySettings", "UseFancyBoundArmour", true).getBoolean(true); Side side = FMLCommonHandler.instance().getSide(); diff --git a/src/main/java/WayofTime/alchemicalWizardry/client/ClientProxy.java b/src/main/java/WayofTime/alchemicalWizardry/client/ClientProxy.java index 7234fc1e..4f32f78b 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/client/ClientProxy.java +++ b/src/main/java/WayofTime/alchemicalWizardry/client/ClientProxy.java @@ -6,12 +6,12 @@ import net.minecraftforge.client.MinecraftForgeClient; import WayofTime.alchemicalWizardry.ModBlocks; import WayofTime.alchemicalWizardry.api.spell.EntitySpellProjectile; import WayofTime.alchemicalWizardry.common.CommonProxy; -import WayofTime.alchemicalWizardry.common.EntityAirElemental; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGrunt; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGruntEarth; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGruntFire; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGruntIce; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGruntWind; +import WayofTime.alchemicalWizardry.common.entity.mob.EntityAirElemental; import WayofTime.alchemicalWizardry.common.entity.mob.EntityBileDemon; import WayofTime.alchemicalWizardry.common.entity.mob.EntityBoulderFist; import WayofTime.alchemicalWizardry.common.entity.mob.EntityEarthElemental; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonVillagePath.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonVillagePath.java index 3f368a66..65322a70 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonVillagePath.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonVillagePath.java @@ -43,6 +43,7 @@ public class DemonVillagePath for (int i = -rad; i <= rad; i++) { value = Math.max(this.constructPartialPath(portal, world, clearance, xPos - rad * dir.offsetX + i * dir.offsetZ, yPos, zPos - rad * dir.offsetZ + i * dir.offsetX, dir, length + 2 * rad, true), value); + if(TEDemonPortal.printDebug) System.out.println("" + (length + 2 * rad) + ", " + value + ""); } diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/GridSpaceHolder.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/GridSpaceHolder.java index 858a5af4..e7f60a4d 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/GridSpaceHolder.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/GridSpaceHolder.java @@ -2,6 +2,7 @@ package WayofTime.alchemicalWizardry.common.demonVillage; import WayofTime.alchemicalWizardry.AlchemicalWizardry; import WayofTime.alchemicalWizardry.ModBlocks; +import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.TEDemonPortal; import net.minecraft.block.Block; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; @@ -146,6 +147,7 @@ public class GridSpaceHolder { if (master != null) { + if(TEDemonPortal.printDebug) AlchemicalWizardry.logger.info("negXRadius: " + negXRadius + " posXRadius: " + posXRadius + " negZRadius: " + negZRadius + " posZRadius: " + posZRadius); for (int i = -negXRadius; i <= posXRadius; i++) { @@ -157,6 +159,7 @@ public class GridSpaceHolder continue; } + if(TEDemonPortal.printDebug) AlchemicalWizardry.logger.info("x: " + i + " z: " + j); int xOff = 0; @@ -194,6 +197,7 @@ public class GridSpaceHolder public void setAllGridSpaces(int xInit, int zInit, int yLevel, ForgeDirection dir, int type, GridSpaceHolder master) { + if(TEDemonPortal.printDebug) AlchemicalWizardry.logger.info("Grid space selected: (" + xInit + "," + zInit + ")"); if (master != null) { @@ -230,6 +234,7 @@ public class GridSpaceHolder break; } + if(TEDemonPortal.printDebug) AlchemicalWizardry.logger.info("Grid space (" + (xInit + xOff) + "," + (zInit + zOff) + ")"); master.setGridSpace(xInit + xOff, zInit + zOff, new GridSpace(type, yLevel)); diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/DemonPacketMinorGrunt.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/DemonPacketMinorGrunt.java index ca30838a..1aa75da8 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/DemonPacketMinorGrunt.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/DemonPacketMinorGrunt.java @@ -56,6 +56,6 @@ public class DemonPacketMinorGrunt extends DemonHoardPacket entity.setAggro(true); entity.setDropCrystal(false); - return 1; + return spawnGuardian ? 3 : 1; } } diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGruntFire.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGruntFire.java index c1b668f8..3159e622 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGruntFire.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGruntFire.java @@ -13,6 +13,7 @@ public class EntityMinorDemonGruntFire extends EntityMinorDemonGrunt { super(par1World); this.setDemonID(AlchemicalWizardry.entityMinorDemonGruntFireID); + this.isImmuneToFire = true; } @Override diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGruntWind.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGruntWind.java index 318dff03..f5ab85ee 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGruntWind.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGruntWind.java @@ -1,11 +1,13 @@ package WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon; -import WayofTime.alchemicalWizardry.AlchemicalWizardry; -import WayofTime.alchemicalWizardry.common.entity.projectile.WindGustProjectile; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.DamageSource; import net.minecraft.world.World; +import WayofTime.alchemicalWizardry.AlchemicalWizardry; +import WayofTime.alchemicalWizardry.common.entity.projectile.WindGustProjectile; +import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper; public class EntityMinorDemonGruntWind extends EntityMinorDemonGrunt { @@ -24,8 +26,22 @@ public class EntityMinorDemonGruntWind extends EntityMinorDemonGrunt return false; } + if (par1Entity instanceof EntityPlayer) + { + SpellHelper.setPlayerSpeedFromServer((EntityPlayer) par1Entity, par1Entity.motionX, par1Entity.motionY + 3, par1Entity.motionZ); + } else if (par1Entity instanceof EntityLivingBase) + { + ((EntityLivingBase) par1Entity).motionY += 3.0D; + } + return par1Entity.attackEntityFrom(DamageSource.causeMobDamage(this), (float) i); } + + @Override + public void onLivingUpdate() + { + this.fallDistance = 0; + } @Override public void attackEntityWithRangedAttack(EntityLivingBase par1EntityLivingBase, float par2) diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/loot/DemonVillageLootRegistry.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/loot/DemonVillageLootRegistry.java index fd75aac0..1dad06cb 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/loot/DemonVillageLootRegistry.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/loot/DemonVillageLootRegistry.java @@ -4,22 +4,41 @@ import java.util.ArrayList; import java.util.List; import java.util.Random; -import net.minecraft.init.Items; import net.minecraft.inventory.IInventory; +import net.minecraft.item.ItemStack; import net.minecraft.util.WeightedRandomChestContent; +import net.minecraftforge.common.ChestGenHooks; +import WayofTime.alchemicalWizardry.ModItems; public class DemonVillageLootRegistry { - public static ArrayList list = new ArrayList(); + public static ArrayList list1 = new ArrayList(); - static + public static void init() { - list.add(new WeightedRandomChestContent(Items.iron_ingot, 0, 1, 5, 10)); + ItemStack lifeShardStack = new ItemStack(ModItems.baseItems, 1, 28); + ItemStack soulShardStack = new ItemStack(ModItems.baseItems, 1, 29); + + String[] tier1Strings = new String[]{ChestGenHooks.DUNGEON_CHEST, ChestGenHooks.PYRAMID_DESERT_CHEST}; + for(String str : tier1Strings) + { + WeightedRandomChestContent[] contents = ChestGenHooks.getItems(str, new Random()); + if(contents != null) + { + for(WeightedRandomChestContent content : contents) + { + list1.add(content); + } + } + } + + list1.add(new WeightedRandomChestContent(ModItems.baseItems, 28, 1, 2, 5)); + list1.add(new WeightedRandomChestContent(ModItems.baseItems, 29, 1, 2, 5)); } public static void populateChest(IInventory tile, int tier) { - WeightedRandomChestContent.generateChestContents(new Random(), toArray(list), tile, 10); + WeightedRandomChestContent.generateChestContents(new Random(), toArray(list1), tile, tile.getSizeInventory() / 3); } public static WeightedRandomChestContent[] toArray(List aList) 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 307432fe..8d5da003 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonPortal.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonPortal.java @@ -46,7 +46,9 @@ public class TEDemonPortal extends TileEntity { public DemonType type = DemonType.FIRE; - public static boolean printDebug = true; + public static boolean printDebug = false; + + public static int limit = 100; public static int buildingGridDelay = 25; public static int roadGridDelay = 10; @@ -54,7 +56,7 @@ public class TEDemonPortal extends TileEntity public static float demonRoadChance = 0.3f; public static float demonHouseChance = 0.6f; public static float demonPortalChance = 0.5f; - public static float demonHoardChance = 1.0f; + public static float demonHoardChance = 0.8f; public static float portalTickRate = 1f; public static int[] tierCostList = new int[]{1000, 5000, 10000}; @@ -717,16 +719,16 @@ public class TEDemonPortal extends TileEntity return maxLength; } - public Int3 findRoadSpaceFromDirection(ForgeDirection dir, int amount) + public Int3 findRoadSpaceFromDirection(ForgeDirection dir, int amount) //TODO { int index = 0; if (dir == ForgeDirection.NORTH) { if(printDebug) System.out.print("NORTH!"); - for (int i = 0; i <= negZRadius + posZRadius; i++) + for (int i = Math.max(0, -limit + negZRadius); i <= negZRadius + Math.min(posZRadius, limit); i++) { - for (int j = 0; j <= negXRadius + posXRadius; j++) + for (int j = Math.max(0, -limit + negXRadius); j <= negXRadius + Math.min(posXRadius, limit); j++) { GridSpace space = area[j][i]; if (space.isRoadSegment()) @@ -741,9 +743,9 @@ public class TEDemonPortal extends TileEntity } } else if (dir == ForgeDirection.SOUTH) { - for (int i = negZRadius + posZRadius; i >= 0; i--) + for (int i = negZRadius + Math.min(posZRadius, limit); i >= Math.max(0, -limit + negZRadius); i--) { - for (int j = 0; j <= negXRadius + posXRadius; j++) + for (int j = Math.max(0, -limit + negXRadius); j <= negXRadius + Math.min(posXRadius, limit); j++) { GridSpace space = area[j][i]; if (space.isRoadSegment()) @@ -758,9 +760,9 @@ public class TEDemonPortal extends TileEntity } } else if (dir == ForgeDirection.EAST) { - for (int i = negXRadius + posXRadius; i >= 0; i--) + for (int i = negXRadius + Math.min(posXRadius, limit); i >= Math.max(0, -limit + negXRadius); i--) { - for (int j = 0; j <= negZRadius + posZRadius; j++) + for (int j = Math.max(0, -limit + negZRadius); j <= negZRadius + Math.min(posZRadius, limit); j++) { GridSpace space = area[i][j]; if (space.isRoadSegment()) @@ -775,9 +777,9 @@ public class TEDemonPortal extends TileEntity } } else if (dir == ForgeDirection.WEST) { - for (int i = 0; i <= negXRadius + posXRadius; i++) + for (int i = Math.max(0, -limit + negXRadius); i <= negXRadius + Math.min(posXRadius, limit); i++) { - for (int j = 0; j <= negZRadius + posZRadius; j++) + for (int j = Math.max(0, -limit + negZRadius); j <= negZRadius + Math.min(posZRadius, limit); j++) { GridSpace space = area[i][j]; if (space.isRoadSegment()) diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/EntityAirElemental.java b/src/main/java/WayofTime/alchemicalWizardry/common/entity/mob/EntityAirElemental.java similarity index 91% rename from src/main/java/WayofTime/alchemicalWizardry/common/EntityAirElemental.java rename to src/main/java/WayofTime/alchemicalWizardry/common/entity/mob/EntityAirElemental.java index 1923e4e7..e1bad7e6 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/EntityAirElemental.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/entity/mob/EntityAirElemental.java @@ -1,7 +1,6 @@ -package WayofTime.alchemicalWizardry.common; +package WayofTime.alchemicalWizardry.common.entity.mob; import WayofTime.alchemicalWizardry.AlchemicalWizardry; -import WayofTime.alchemicalWizardry.common.entity.mob.EntityElemental; import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/items/DaggerOfSacrifice.java b/src/main/java/WayofTime/alchemicalWizardry/common/items/DaggerOfSacrifice.java index 8beca938..0ec9b706 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/items/DaggerOfSacrifice.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/items/DaggerOfSacrifice.java @@ -23,6 +23,7 @@ import net.minecraft.util.DamageSource; import net.minecraft.world.World; import WayofTime.alchemicalWizardry.AlchemicalWizardry; import WayofTime.alchemicalWizardry.common.IDemon; +import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.IHoardDemon; import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper; import WayofTime.alchemicalWizardry.common.tileEntity.TEAltar; @@ -60,6 +61,11 @@ public class DaggerOfSacrifice extends EnergyItems { return false; } + + if(par2EntityLivingBase instanceof IHoardDemon) + { + return false; + } if (par2EntityLivingBase.isChild() || par2EntityLivingBase instanceof EntityWither || par2EntityLivingBase instanceof EntityDragon || par2EntityLivingBase instanceof EntityPlayer || par2EntityLivingBase instanceof IBossDisplayData) { @@ -75,7 +81,6 @@ public class DaggerOfSacrifice extends EnergyItems if(par2EntityLivingBase instanceof IDemon) { - System.out.println("Demon"); ((IDemon)par2EntityLivingBase).setDropCrystal(false); this.findAndNotifyAltarOfDemon(world, par2EntityLivingBase); } diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/renderer/mob/RenderElemental.java b/src/main/java/WayofTime/alchemicalWizardry/common/renderer/mob/RenderElemental.java index 72f22b12..91d92f8d 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/renderer/mob/RenderElemental.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/renderer/mob/RenderElemental.java @@ -1,6 +1,5 @@ package WayofTime.alchemicalWizardry.common.renderer.mob; -import WayofTime.alchemicalWizardry.common.EntityAirElemental; import WayofTime.alchemicalWizardry.common.entity.mob.*; import net.minecraft.client.model.ModelBase; import net.minecraft.client.renderer.entity.RenderLiving; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/summoning/SummoningHelperAW.java b/src/main/java/WayofTime/alchemicalWizardry/common/summoning/SummoningHelperAW.java index b398f2d0..c2df04ad 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/summoning/SummoningHelperAW.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/summoning/SummoningHelperAW.java @@ -5,8 +5,12 @@ import net.minecraft.entity.passive.EntityPig; import net.minecraft.world.World; import WayofTime.alchemicalWizardry.AlchemicalWizardry; import WayofTime.alchemicalWizardry.api.summoningRegistry.SummoningHelper; -import WayofTime.alchemicalWizardry.common.EntityAirElemental; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGrunt; +import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGruntEarth; +import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGruntFire; +import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGruntIce; +import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.EntityMinorDemonGruntWind; +import WayofTime.alchemicalWizardry.common.entity.mob.EntityAirElemental; import WayofTime.alchemicalWizardry.common.entity.mob.EntityBileDemon; import WayofTime.alchemicalWizardry.common.entity.mob.EntityBoulderFist; import WayofTime.alchemicalWizardry.common.entity.mob.EntityEarthElemental; @@ -105,6 +109,26 @@ public class SummoningHelperAW extends SummoningHelper return new EntityMinorDemonGrunt(worldObj); } + if(this.id.equals(AlchemicalWizardry.entityMinorDemonGruntFireID)) + { + return new EntityMinorDemonGruntFire(worldObj); + } + + if(this.id.equals(AlchemicalWizardry.entityMinorDemonGruntEarthID)) + { + return new EntityMinorDemonGruntEarth(worldObj); + } + + if(this.id.equals(AlchemicalWizardry.entityMinorDemonGruntWindID)) + { + return new EntityMinorDemonGruntWind(worldObj); + } + + if(this.id.equals(AlchemicalWizardry.entityMinorDemonGruntIceID)) + { + return new EntityMinorDemonGruntIce(worldObj); + } + return new EntityPig(worldObj); } diff --git a/src/main/resources/assets/alchemicalwizardry/lang/en_US.lang b/src/main/resources/assets/alchemicalwizardry/lang/en_US.lang index b89be434..75a4c551 100644 --- a/src/main/resources/assets/alchemicalwizardry/lang/en_US.lang +++ b/src/main/resources/assets/alchemicalwizardry/lang/en_US.lang @@ -169,6 +169,8 @@ item.bloodMagicBaseItem.ObsidianBrace.name=Obsidian Brace item.bloodMagicBaseItem.EtherealSlate.name=Ethereal Slate item.bloodMagicBaseItem.LifeShard.name=Life Shard item.bloodMagicBaseItem.SoulShard.name=Soul Shard +item.bloodMagicBaseItem.LifeBrace.name=Living Brace +item.bloodMagicBaseItem.SoulRunicPlate.name=Soul Runic Plate item.bloodMagicAlchemyItem.Offensa.name=Offensa item.bloodMagicAlchemyItem.Praesidium.name=Praesidium item.bloodMagicAlchemyItem.OrbisTerrae.name=Orbis Terrae diff --git a/src/main/resources/assets/alchemicalwizardry/schematics/building/buildings.zip b/src/main/resources/assets/alchemicalwizardry/schematics/building/buildings.zip index 1c5f2f3c27e90a7cc8df56189bf85d6fd948af39..eb9a9fad86f81767c8f5faad7579e801b716ba26 100644 GIT binary patch delta 9907 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 delta 9869 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 Gu>K!2x|0V0 diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index e83102bb..20a2c3ce 100644 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -3,7 +3,7 @@ "modid": "AWWayofTime", "name": "Blood Magic: Alchemical Wizardry", "description": "Rituals, spells, and more!", - "version": "v1.2.1b(1.7.10)", + "version": "v1.3.0Beta(1.7.10)", "mcversion": "1.7.10", "url": "http://www.minecraftforum.net/topic/1899223-", "updateUrl": "",