From 389910f716d204a54dad8c779538adf5f2e1ddc0 Mon Sep 17 00:00:00 2001 From: WayofTime <wtime@live.ca> Date: Sat, 24 Jan 2015 08:18:58 -0500 Subject: [PATCH] Book tests and Movage of Int3 --- .../AlchemicalWizardry.java | 4 +- .../{common => api}/Int3.java | 2 +- .../api/RoutingFocusPosAndFacing.java | 1 - .../api/rituals/LocalRitualStorage.java | 2 +- .../common/book/BUEntries.java | 50 ++++++++++++------- .../common/demonVillage/BlockSet.java | 2 +- .../demonVillage/BuildingSchematic.java | 2 +- .../common/demonVillage/DemonBuilding.java | 2 +- .../common/demonVillage/DemonVillagePath.java | 2 +- .../ai/EntityDemonAIHurtByTarget.java | 2 +- .../demon/EntityMinorDemonGrunt.java | 2 +- .../demonHoard/demon/IHoardDemon.java | 2 +- .../demonVillage/tileEntity/TEDemonChest.java | 2 +- .../tileEntity/TEDemonPortal.java | 2 +- .../items/energy/ItemAttunedCrystal.java | 2 +- .../common/items/routing/RoutingFocus.java | 2 +- .../common/items/sigil/ItemFluidSigil.java | 2 +- .../renderer/block/RenderReagentConduit.java | 3 +- .../common/rituals/LocalStorageAlphaPact.java | 2 +- .../rituals/RitualEffectDemonPortal.java | 2 +- .../rituals/RitualEffectItemRouting.java | 2 +- .../common/rituals/RitualEffectMagnetic.java | 2 +- .../common/tileEntity/TEMasterStone.java | 2 +- .../common/tileEntity/TEReagentConduit.java | 2 +- .../assets/alchemicalwizardryBooks/books.txt | 18 ++++--- .../alchemicalwizardryBooks/books/book.txt | 24 ++++++--- .../alchemicalwizardryBooks/lang/en_US.lang | 19 ++++--- 27 files changed, 96 insertions(+), 63 deletions(-) rename src/main/java/WayofTime/alchemicalWizardry/{common => api}/Int3.java (95%) diff --git a/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java b/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java index 19d65e9e..6f1452b4 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java +++ b/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java @@ -1176,8 +1176,8 @@ public class AlchemicalWizardry DemonVillageLootRegistry.init(); -// if(parseTextFiles) -// this.parseTextFile(); + if(parseTextFiles) + this.parseTextFile(); // this.createItemTextureFiles(); } diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/Int3.java b/src/main/java/WayofTime/alchemicalWizardry/api/Int3.java similarity index 95% rename from src/main/java/WayofTime/alchemicalWizardry/common/Int3.java rename to src/main/java/WayofTime/alchemicalWizardry/api/Int3.java index 51be4894..e3b61b8f 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/Int3.java +++ b/src/main/java/WayofTime/alchemicalWizardry/api/Int3.java @@ -1,4 +1,4 @@ -package WayofTime.alchemicalWizardry.common; +package WayofTime.alchemicalWizardry.api; import net.minecraft.nbt.NBTTagCompound; diff --git a/src/main/java/WayofTime/alchemicalWizardry/api/RoutingFocusPosAndFacing.java b/src/main/java/WayofTime/alchemicalWizardry/api/RoutingFocusPosAndFacing.java index e7360874..a6ee34a9 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/api/RoutingFocusPosAndFacing.java +++ b/src/main/java/WayofTime/alchemicalWizardry/api/RoutingFocusPosAndFacing.java @@ -1,7 +1,6 @@ package WayofTime.alchemicalWizardry.api; import net.minecraftforge.common.util.ForgeDirection; -import WayofTime.alchemicalWizardry.common.Int3; public class RoutingFocusPosAndFacing { diff --git a/src/main/java/WayofTime/alchemicalWizardry/api/rituals/LocalRitualStorage.java b/src/main/java/WayofTime/alchemicalWizardry/api/rituals/LocalRitualStorage.java index f5c008d6..e5a3241b 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/api/rituals/LocalRitualStorage.java +++ b/src/main/java/WayofTime/alchemicalWizardry/api/rituals/LocalRitualStorage.java @@ -1,7 +1,7 @@ package WayofTime.alchemicalWizardry.api.rituals; import net.minecraft.nbt.NBTTagCompound; -import WayofTime.alchemicalWizardry.common.Int3; +import WayofTime.alchemicalWizardry.api.Int3; /** * This class is used to pass ritual-specific data into the RitualEffect from the containing Master Ritual Stone. This is basically used as auxillarary storage, diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/book/BUEntries.java b/src/main/java/WayofTime/alchemicalWizardry/common/book/BUEntries.java index 381a52b4..55ce45d0 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/book/BUEntries.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/book/BUEntries.java @@ -37,11 +37,12 @@ public class BUEntries } - public void initEntries(){ + public void initEntries() + { rIntro = new Entry(new IEntry[]{new EntryText(), new EntryText(), new EntryText()}, "Introduction", 1); rWeakRituals = new Entry(new IEntry[]{new EntryText(), new EntryText(), new EntryText(), new EntryText()}, "Weak Rituals", 1); rRituals = new Entry(new IEntry[]{new EntryText(), new EntryText(), new EntryText(), new EntryText()}, "Rituals", 1); - + rRitualWater = this.getPureTextEntry(2, "Ritual of the Full Spring", 1); theAltar = new Entry(new IEntry[]{new EntryItemText(new ItemStack(ModBlocks.blockAltar), "Blood Altar")}, EnumChatFormatting.BLUE + "Blood Altar", 1); runes = new Entry(new IEntry[]{new EntryItemText(new ItemStack(ModBlocks.runeOfSelfSacrifice)), new EntryItemText(new ItemStack(ModBlocks.runeOfSacrifice)), new EntryItemText(new ItemStack(ModBlocks.speedRune))}, "Runes", 1); @@ -73,9 +74,21 @@ public class BUEntries debug = new Entry(new IEntry[]{new EntryText("Debug"), new EntryImage("bloodutils:textures/misc/screenshots/t1.png", 854, 480, "Debug")}, EnumChatFormatting.AQUA + "De" + EnumChatFormatting.RED + "bug", 1); registerEntries(); } + + public Entry getPureTextEntry(int numberOfPages, String name, int pageNumber) + { + IEntry[] entries = new IEntry[numberOfPages]; + for(int i=0; i<numberOfPages; i++) + { + entries[i] = new EntryText(); + } + return new Entry(entries, name, pageNumber); + } + public static Entry rIntro; public static Entry rWeakRituals; - public static Entry rRituals; + public static Entry rRituals; + public static Entry rRitualWater; public static Entry theAltar; public static Entry runes; @@ -112,23 +125,22 @@ public class BUEntries EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.rIntro); EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.rWeakRituals); EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.rRituals); - + EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.rRitualWater); - - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualWater); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualLava); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualGreenGrove); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualInterdiction); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualContainment); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualHighJump); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualSpeed); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualMagnet); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualCrusher); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualShepherd); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualRegeneration); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualFeatheredKnife); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualMoon); - EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualSoul); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualWater); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualLava); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualGreenGrove); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualInterdiction); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualContainment); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualHighJump); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualSpeed); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualMagnet); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualCrusher); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualShepherd); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualRegeneration); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualFeatheredKnife); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualMoon); +// EntryRegistry.registerEntry(BUEntries.categoryRituals, EntryRegistry.rituals, BUEntries.ritualSoul); /** Debug */ EntryRegistry.registerEntry(BUEntries.categoryBasics, EntryRegistry.basics, BUEntries.debug); diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BlockSet.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BlockSet.java index b730ebef..def014c1 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BlockSet.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BlockSet.java @@ -16,7 +16,7 @@ import net.minecraft.inventory.IInventory; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -import WayofTime.alchemicalWizardry.common.Int3; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.common.demonVillage.loot.DemonVillageLootRegistry; import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.IBlockPortalNode; import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.ITilePortalNode; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BuildingSchematic.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BuildingSchematic.java index 56ff7a45..6b20989a 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BuildingSchematic.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/BuildingSchematic.java @@ -7,7 +7,7 @@ import net.minecraft.block.Block; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; import WayofTime.alchemicalWizardry.ModBlocks; -import WayofTime.alchemicalWizardry.common.Int3; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.TEDemonPortal; public class BuildingSchematic diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonBuilding.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonBuilding.java index a02d86da..e62c5eaf 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonBuilding.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonBuilding.java @@ -2,7 +2,7 @@ package WayofTime.alchemicalWizardry.common.demonVillage; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -import WayofTime.alchemicalWizardry.common.Int3; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.TEDemonPortal; public class DemonBuilding diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonVillagePath.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonVillagePath.java index b6a2dada..b80d78bd 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonVillagePath.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/DemonVillagePath.java @@ -7,7 +7,7 @@ import net.minecraft.init.Blocks; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; import WayofTime.alchemicalWizardry.ModBlocks; -import WayofTime.alchemicalWizardry.common.Int3; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.IRoadWard; import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.TEDemonPortal; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/ai/EntityDemonAIHurtByTarget.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/ai/EntityDemonAIHurtByTarget.java index 9ec095dd..b5f6afee 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/ai/EntityDemonAIHurtByTarget.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/ai/EntityDemonAIHurtByTarget.java @@ -3,7 +3,7 @@ package WayofTime.alchemicalWizardry.common.demonVillage.ai; import net.minecraft.entity.EntityCreature; import net.minecraft.entity.ai.EntityAIHurtByTarget; import net.minecraft.tileentity.TileEntity; -import WayofTime.alchemicalWizardry.common.Int3; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.IHoardDemon; import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.TEDemonPortal; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGrunt.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGrunt.java index 654e1a2b..e70fd6f6 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGrunt.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/EntityMinorDemonGrunt.java @@ -25,10 +25,10 @@ import net.minecraft.util.DamageSource; import net.minecraft.world.World; import WayofTime.alchemicalWizardry.AlchemicalWizardry; import WayofTime.alchemicalWizardry.ModItems; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.api.rituals.IMasterRitualStone; import WayofTime.alchemicalWizardry.api.rituals.LocalRitualStorage; import WayofTime.alchemicalWizardry.common.EntityAITargetAggroCloaking; -import WayofTime.alchemicalWizardry.common.Int3; import WayofTime.alchemicalWizardry.common.demonVillage.ai.EntityAIOccasionalRangedAttack; import WayofTime.alchemicalWizardry.common.demonVillage.ai.EntityDemonAIHurtByTarget; import WayofTime.alchemicalWizardry.common.demonVillage.ai.IOccasionalRangedAttackMob; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/IHoardDemon.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/IHoardDemon.java index 9942f519..5087ec51 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/IHoardDemon.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/demonHoard/demon/IHoardDemon.java @@ -1,6 +1,6 @@ package WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon; -import WayofTime.alchemicalWizardry.common.Int3; +import WayofTime.alchemicalWizardry.api.Int3; public interface IHoardDemon { diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonChest.java b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonChest.java index 03fbc173..b56c7b34 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonChest.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonChest.java @@ -3,7 +3,7 @@ package WayofTime.alchemicalWizardry.common.demonVillage.tileEntity; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntityChest; -import WayofTime.alchemicalWizardry.common.Int3; +import WayofTime.alchemicalWizardry.api.Int3; public class TEDemonChest extends TileEntityChest implements ITilePortalNode { 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 8c67e499..6d6ad11d 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonPortal.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/demonVillage/tileEntity/TEDemonPortal.java @@ -26,7 +26,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.util.Constants; import net.minecraftforge.common.util.ForgeDirection; import WayofTime.alchemicalWizardry.AlchemicalWizardry; -import WayofTime.alchemicalWizardry.common.Int3; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.common.block.BlockTeleposer; import WayofTime.alchemicalWizardry.common.demonVillage.BuildingSchematic; import WayofTime.alchemicalWizardry.common.demonVillage.DemonBuilding; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/items/energy/ItemAttunedCrystal.java b/src/main/java/WayofTime/alchemicalWizardry/common/items/energy/ItemAttunedCrystal.java index 110ad6be..d8923262 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/items/energy/ItemAttunedCrystal.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/items/energy/ItemAttunedCrystal.java @@ -1,9 +1,9 @@ package WayofTime.alchemicalWizardry.common.items.energy; import WayofTime.alchemicalWizardry.AlchemicalWizardry; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.api.alchemy.energy.*; import WayofTime.alchemicalWizardry.api.items.interfaces.IReagentManipulator; -import WayofTime.alchemicalWizardry.common.Int3; import WayofTime.alchemicalWizardry.common.tileEntity.TEReagentConduit; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/items/routing/RoutingFocus.java b/src/main/java/WayofTime/alchemicalWizardry/common/items/routing/RoutingFocus.java index 78d5cce7..56818440 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/items/routing/RoutingFocus.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/items/routing/RoutingFocus.java @@ -12,8 +12,8 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; import WayofTime.alchemicalWizardry.AlchemicalWizardry; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.api.RoutingFocusPosAndFacing; -import WayofTime.alchemicalWizardry.common.Int3; public class RoutingFocus extends Item { diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/items/sigil/ItemFluidSigil.java b/src/main/java/WayofTime/alchemicalWizardry/common/items/sigil/ItemFluidSigil.java index d6f64a07..c532bc37 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/items/sigil/ItemFluidSigil.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/items/sigil/ItemFluidSigil.java @@ -1,7 +1,7 @@ package WayofTime.alchemicalWizardry.common.items.sigil; import WayofTime.alchemicalWizardry.AlchemicalWizardry; -import WayofTime.alchemicalWizardry.common.Int3; +import WayofTime.alchemicalWizardry.api.Int3; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/renderer/block/RenderReagentConduit.java b/src/main/java/WayofTime/alchemicalWizardry/common/renderer/block/RenderReagentConduit.java index 97e83417..8e059247 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/renderer/block/RenderReagentConduit.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/renderer/block/RenderReagentConduit.java @@ -1,12 +1,13 @@ package WayofTime.alchemicalWizardry.common.renderer.block; -import WayofTime.alchemicalWizardry.common.Int3; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.common.tileEntity.TEReagentConduit; import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.MathHelper; import net.minecraft.util.ResourceLocation; + import org.lwjgl.opengl.GL11; public class RenderReagentConduit extends TileEntitySpecialRenderer diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/LocalStorageAlphaPact.java b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/LocalStorageAlphaPact.java index 648de623..2c762aa9 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/LocalStorageAlphaPact.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/LocalStorageAlphaPact.java @@ -3,8 +3,8 @@ package WayofTime.alchemicalWizardry.common.rituals; import java.util.HashSet; import java.util.Set; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.api.rituals.LocalRitualStorage; -import WayofTime.alchemicalWizardry.common.Int3; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.IHoardDemon; public class LocalStorageAlphaPact extends LocalRitualStorage diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectDemonPortal.java b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectDemonPortal.java index e414d278..16c6646e 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectDemonPortal.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectDemonPortal.java @@ -12,13 +12,13 @@ import net.minecraft.util.ChatComponentText; import net.minecraft.util.StatCollector; import net.minecraft.world.World; import WayofTime.alchemicalWizardry.ModBlocks; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.api.alchemy.energy.Reagent; import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentRegistry; import WayofTime.alchemicalWizardry.api.rituals.IMasterRitualStone; import WayofTime.alchemicalWizardry.api.rituals.RitualComponent; import WayofTime.alchemicalWizardry.api.rituals.RitualEffect; import WayofTime.alchemicalWizardry.api.soulNetwork.SoulNetworkHandler; -import WayofTime.alchemicalWizardry.common.Int3; import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.TEDemonPortal; import WayofTime.alchemicalWizardry.common.tileEntity.TEAltar; import WayofTime.alchemicalWizardry.common.tileEntity.TEBellJar; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemRouting.java b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemRouting.java index 5af3b0b3..18a997e7 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemRouting.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectItemRouting.java @@ -10,13 +10,13 @@ import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.api.RoutingFocusParadigm; import WayofTime.alchemicalWizardry.api.RoutingFocusPosAndFacing; import WayofTime.alchemicalWizardry.api.rituals.IMasterRitualStone; import WayofTime.alchemicalWizardry.api.rituals.RitualComponent; 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; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectMagnetic.java b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectMagnetic.java index 699286e3..c5e719d6 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectMagnetic.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/rituals/RitualEffectMagnetic.java @@ -8,12 +8,12 @@ import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.world.World; import net.minecraftforge.oredict.OreDictionary; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentRegistry; import WayofTime.alchemicalWizardry.api.rituals.IMasterRitualStone; import WayofTime.alchemicalWizardry.api.rituals.RitualComponent; import WayofTime.alchemicalWizardry.api.rituals.RitualEffect; import WayofTime.alchemicalWizardry.api.soulNetwork.SoulNetworkHandler; -import WayofTime.alchemicalWizardry.common.Int3; import WayofTime.alchemicalWizardry.common.block.BlockTeleposer; public class RitualEffectMagnetic extends RitualEffect diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEMasterStone.java b/src/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEMasterStone.java index f7f96b28..cfb815be 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEMasterStone.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEMasterStone.java @@ -19,6 +19,7 @@ import net.minecraft.world.World; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.common.util.Constants; import net.minecraftforge.common.util.ForgeDirection; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.api.alchemy.energy.Reagent; import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentContainer; import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentContainerInfo; @@ -30,7 +31,6 @@ import WayofTime.alchemicalWizardry.api.rituals.LocalRitualStorage; import WayofTime.alchemicalWizardry.api.rituals.RitualBreakMethod; import WayofTime.alchemicalWizardry.api.rituals.Rituals; import WayofTime.alchemicalWizardry.api.soulNetwork.SoulNetworkHandler; -import WayofTime.alchemicalWizardry.common.Int3; import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper; import cpw.mods.fml.common.eventhandler.Event; diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEReagentConduit.java b/src/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEReagentConduit.java index c45bda00..6efd07e2 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEReagentConduit.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/tileEntity/TEReagentConduit.java @@ -1,8 +1,8 @@ package WayofTime.alchemicalWizardry.common.tileEntity; import WayofTime.alchemicalWizardry.api.ColourAndCoords; +import WayofTime.alchemicalWizardry.api.Int3; import WayofTime.alchemicalWizardry.api.alchemy.energy.*; -import WayofTime.alchemicalWizardry.common.Int3; import WayofTime.alchemicalWizardry.common.entity.projectile.EntityParticleBeam; import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper; import cpw.mods.fml.relauncher.Side; diff --git a/src/main/resources/assets/alchemicalwizardryBooks/books.txt b/src/main/resources/assets/alchemicalwizardryBooks/books.txt index a3303d3e..a5424275 100644 --- a/src/main/resources/assets/alchemicalwizardryBooks/books.txt +++ b/src/main/resources/assets/alchemicalwizardryBooks/books.txt @@ -1,12 +1,16 @@ aw.entry.Magnus.1= -aw.entry.Introduction.1= At the constant demands of my apprentices, I've started writing down my knowledge of blood magic. I've told them time and again that what we do is far too dangerous to write about, and in the wrong hands... I don't want to think of the consequences. But they have made one good point: if more people are going to learn blood magic, word of mouth is far too limited. But I'm getting sidetracked, back to what this is all about. Following their example, I +aw.entry.Introduction.1= At the constant demands of my apprentices, I've started writing down my knowledge of blood magic. I've told them time and again that what we do is far too dangerous to write about, and in the wrong hands... I don't want to think of the consequences. But they have made one good point: if more people are going to learn blood magic, word of mouth is far too limited. But I'm getting sidetracked, back to what this is all about. Following their example, I aw.entry.Introduction.2=will introduce myself. My name is Magus Arcana, and I am the founder of blood magic. I have lived a long life, studying more fields of magic then one could count. When I was younger I moved to the outskirts of a village to start my journeys into the arcane. After several decades of study, I realized there was one source of power few had ever touched: Blood. Many mages claimed that the aw.entry.Introduction.3=use of blood in magic was taboo, yet gave no reason as to why. Eventually, my curiosity grew beyond my reluctance and I started experimenting with the art of blood magic. -aw.entry.Weak Rituals.1= My first breakthrough was with a simple device that used the power of whatever was above it as a template, along with a great deal of blood(25 hearts, or 5k LP if you go by the system one of my apprentices made years later) to perform small miracles. I must also note that at the start of each of the rituals lightning strikes the ritual stone setting it alight, as if the cost of activation wasn't deadly enough. After two weeks of +aw.entry.Weak Rituals.1= My first breakthrough was with a simple device that used the power of whatever was above it as a template, along with a great deal of blood(25 hearts, or 5k LP if you go by the system one of my apprentices made years later ) to perform small miracles. I must also note that at the start of each of the rituals lightning strikes the ritual stone setting it alight, as if the cost of activation wasn't deadly enough. After two weeks of aw.entry.Weak Rituals.2=meditation to strengthen my soul to the point where I could handle the strain of these rituals, I started experimenting with different templates to discover their effects. At that point, I only had the strength to test one template per day before I felt weak. I decided to start training my body and mind again like I did when I was younger, while using a few tricks I had learned over the years to help speed up the process. aw.entry.Weak Rituals.3= With some work I found that water creates a rainstorm with so much lightning that I couldn't sleep that night. A somewhat rare mineral block by the name of Lapis had the very interesting effect of turning day into night. Needless to say, everyone in the village was very confused when the sun suddenly vanished and they couldn't see anything. I was shocked when I found that a coal block summoned a zombie stronger than any other I've -aw.entry.Weak Rituals.4=ever fought in the night. I also lost the coal block to fire from the lightning strike when I was dealing with said zombie. The final effect I found was with bedrock I found at the bottom of a local mine, hardening my skin temporarily. While I looked no different, I could shrug off a blow from an iron sword without a scratch. -aw.entry.Rituals.1= I soon decided that those rituals were far too weak and costly, so I started working on a much larger version. By mixing my blood and a little bit of Mana with an item that was naturally attuned to an element(I found that magma cream worked for fire, a Lapis block for water, obsidian for earth, and a ghast tear for air) I created powerful scribing tools that used blood (100 LP's worth per use) as ink. I used stone fused with blood and obsidian -aw.entry.Rituals.2=to create stones strong enough to withstand more powerful rituals. It took me over two years to perfect the ritual stone. Trust me, you don't want to see what happened with some of the earlier tests. Let us just say they made the holes creepers leave look like potholes, and leave it at that. I also designed a "Master" stone to be what really controls the rituals, with the powerful dust called "Redstone" able to deactivate -aw.entry.Rituals.3=rituals and putting in a few safeguards so that if some fool tries to activate a ritual they don't have the strength or the blood to handle, it doesn't kill them outright. While I was able to weaken the pull that rituals carried on the user�s life force to not cause any lasting harm, I could not quite get rid of the feeling of nausea and unease an unattended Ritual would cause . I eventually got tired of trying to stop it and marked -aw.entry.Rituals.4=it down as an occupational hazard. +aw.entry.Weak Rituals.4=ever fought in the night. I also lost the coal block to fire from the lightning strike when I was dealing with said zombie. The final effect I found was with bedrock I found at the bottom of a local mine , hardening my skin temporarily. While I looked no different, I could shrug off a blow from an iron sword without a scratch. +aw.entry.Rituals.1= I soon decided that those rituals were far too weak and costly, so I started working on a much larger version. By mixing my blood and a little bit of Mana with an item that was naturally attuned to an element(I found that magma cream worked for fire, a Lapis block for water, obsidian for earth, and a ghast tear for air) I created powerful scribing tools that used blood (100 LP's worth per use) as ink. I used stone fused with blood and obsidian +aw.entry.Rituals.2=to create stones strong enough to withstand more powerful rituals. It took me over two years to perfect the ritual stone. Trust me, you don't want to see what happened with some of the earlier tests . Let us just say they made the holes creepers leave look like potholes, and leave it at that. I also designed a "Master" stone to be what really controls the rituals, with the powerful dust called "Redstone" able to deactivate +aw.entry.Rituals.3=rituals and putting in a few safeguards so that if some fool tries to activate a ritual they don't have the strength or the blood to handle, it doesn't kill them outright. While I was able to weaken the pull that rituals carried on the user�s life force to not cause any lasting harm, I could not quite get rid of the feeling of nausea and unease an unattended Ritual would cause . I eventually got tired of trying to stop it and marked +aw.entry.Rituals.4=it down as an occupational hazard. Once I had the stones, I realized that there needed to be a bridge between myself and the "Master" stone of the rituals. I found an old, red crystal in my attic that I bought months ago on the villages market. The trader claimed to have gotten it off the corpse of a demon after a brother of his killed it when it attacked their caravan. I don't know if his story was true, but I could +aw.entry.Rituals.5=tell it was magic. After shaping it a little, I found it made the perfect catalyst for linking my soul into the ritual stones. +aw.entry.Ritual of the Full Spring.1= Among the first rituals I made with these stones was the one I dubbed "The Ritual of Full Spring". I'll be the first to admit that, in terms of magic, it was nothing special. All it did was create an endless spring of water by using a few tricks from other magics and my soul as a fuel source. But when you are pioneering a new form of magic, you take what you can get. And it was cheap, 500 LP to start it and 25 LP for every bucket of water I got +aw.entry.Ritual of the Full Spring.2=out of it. Luckily I made this ritual before the well outside my home dried up. +aw.entry.Serenade of the Nether.1= The next ritual I created was "The Serenade of the Nether", where I tried to make something a bit more useful. I found that the ritual used a large activation cost of 20K LP, to link itself to the nether, then used a much smaller fee of 500 LP to pull a bucket worth of lava to the ritual. I am not sure what part of the nether it is getting the lava from, so it is probably best if we don't think about it too much . diff --git a/src/main/resources/assets/alchemicalwizardryBooks/books/book.txt b/src/main/resources/assets/alchemicalwizardryBooks/books/book.txt index 36f58087..686d0173 100644 --- a/src/main/resources/assets/alchemicalwizardryBooks/books/book.txt +++ b/src/main/resources/assets/alchemicalwizardryBooks/books/book.txt @@ -1,13 +1,25 @@ //TITLE Introduction - At the constant demands of my apprentices, I've started writing down my knowledge of blood magic. I've told them time and again that what we do is far too dangerous to write about, and in the wrong hands... I don't want to think of the consequences. But they have made one good point: if more people are going to learn blood magic, word of mouth is far too limited. But I'm getting sidetracked, back to what this is all about. Following their example, I will introduce myself. +At the constant demands of my apprentices, I've started writing down my knowledge of blood magic. I've told them time and again that what we do is far too dangerous to write about, and in the wrong hands... I don't want to think of the consequences. But they have made one good point: if more people are going to learn blood magic, word of mouth is far too limited. But I'm getting sidetracked, back to what this is all about. Following their example, I will introduce myself. My name is Magus Arcana, and I am the founder of blood magic. I have lived a long life, studying more fields of magic then one could count. When I was younger I moved to the outskirts of a village to start my journeys into the arcane. After several decades of study, I realized there was one source of power few had ever touched: Blood. Many mages claimed that the use of blood in magic was taboo, yet gave no reason as to why. Eventually, my curiosity grew beyond my reluctance and I started experimenting with the art of blood magic. //TITLE Weak Rituals - My first breakthrough was with a simple device that used the power of whatever was above it as a template, along with a great deal of blood(25 hearts, or 5k LP if you go by the system one of my apprentices made years later) to perform small miracles. I must also note that at the start of each of the rituals lightning strikes the ritual stone setting it alight, as if the cost of activation wasn't deadly enough. After two weeks of meditation to strengthen my soul to the point where I could handle the strain of these rituals, I started experimenting with different templates to discover their effects. At that point, I only had the strength to test one template per day before I felt weak. I decided to start training my body and mind again like I did when I was younger, while using a few tricks I had learned over the years to help speed up the process. - With some work I found that water creates a rainstorm with so much lightning that I couldn't sleep that night. A somewhat rare mineral block by the name of Lapis had the very interesting effect of turning day into night. Needless to say, everyone in the village was very confused when the sun suddenly vanished and they couldn't see anything. I was shocked when I found that a coal block summoned a zombie stronger than any other I've ever fought in the night. I also lost the coal block to fire from the lightning strike when I was dealing with said zombie. The final effect I found was with bedrock I found at the bottom of a local mine, hardening my skin temporarily. While I looked no different, I could shrug off a blow from an iron sword without a scratch. -//TITLE Rituals - I soon decided that those rituals were far too weak and costly, so I started working on a much larger version. By mixing my blood and a little bit of Mana with an item that was naturally attuned to an element(I found that magma cream worked for fire, a Lapis block for water, obsidian for earth, and a ghast tear for air) I created powerful scribing tools that used blood (100 LP's worth per use) as ink. I used stone fused with blood and obsidian to create stones strong enough to withstand more powerful rituals. It took me over two years to perfect the ritual stone. Trust me, you don't want to see what happened with some of the earlier tests. Let us just say they made the holes creepers leave look like potholes, and leave it at that. I also designed a �Master� stone to be what really controls the rituals, with the powerful dust called �Redstone� able to deactivate rituals and putting in a few safeguards so that if some fool tries to activate a ritual they don't have the strength or the blood to handle, it doesn't kill them outright. While I was able to weaken the pull that rituals carried on the user�s life force to not cause any lasting harm, I could not quite get rid of the feeling of nausea and unease an unattended Ritual would cause -. I eventually got tired of trying to stop it and marked it down as an occupational hazard. \ No newline at end of file + My first breakthrough was with a simple device that used the power of whatever was above it as a template, along with a great deal of blood(25 hearts, or 5k LP if you go by the system one of my apprentices made years later ) to perform small miracles. I must also note that at the start of each of the rituals lightning strikes the ritual stone setting it alight, as if the cost of activation wasn't deadly enough. After two weeks of meditation to strengthen my soul to the point where I could handle the strain of these rituals, I started experimenting with different templates to discover their effects. At that point, I only had the strength to test one template per day before I felt weak. I decided to start training my body and mind again like I did when I was younger, while using a few tricks I had learned over the years to help speed up the process. + + With some work I found that water creates a rainstorm with so much lightning that I couldn't sleep that night. A somewhat rare mineral block by the name of Lapis had the very interesting effect of turning day into night. Needless to say, everyone in the village was very confused when the sun suddenly vanished and they couldn't see anything. I was shocked when I found that a coal block summoned a zombie stronger than any other I've ever fought in the night. I also lost the coal block to fire from the lightning strike when I was dealing with said zombie. The final effect I found was with bedrock I found at the bottom of a local mine , hardening my skin temporarily. While I looked no different, I could shrug off a blow from an iron sword without a scratch. + + +//TITLE Rituals + + I soon decided that those rituals were far too weak and costly, so I started working on a much larger version. By mixing my blood and a little bit of Mana with an item that was naturally attuned to an element(I found that magma cream worked for fire, a Lapis block for water, obsidian for earth, and a ghast tear for air) I created powerful scribing tools that used blood (100 LP's worth per use) as ink. I used stone fused with blood and obsidian to create stones strong enough to withstand more powerful rituals. It took me over two years to perfect the ritual stone. Trust me, you don't want to see what happened with some of the earlier tests . Let us just say they made the holes creepers leave look like potholes, and leave it at that. I also designed a �Master� stone to be what really controls the rituals, with the powerful dust called �Redstone� able to deactivate rituals and putting in a few safeguards so that if some fool tries to activate a ritual they don't have the strength or the blood to handle, it doesn't kill them outright. While I was able to weaken the pull that rituals carried on the user�s life force to not cause any lasting harm, I could not quite get rid of the feeling of nausea and unease an unattended Ritual would cause + . I eventually got tired of trying to stop it and marked it down as an occupational hazard. + + Once I had the stones, I realized that there needed to be a bridge between myself and the �Master� stone of the rituals. I found an old, red crystal in my attic that I bought months ago on the villages market. The trader claimed to have gotten it off the corpse of a demon after a brother of his killed it when it attacked their caravan. I don't know if his story was true, but I could tell it was magic. After shaping it a little, I found it made the perfect catalyst for linking my soul into the ritual stones. + +//TITLE Ritual of the Full Spring +Among the first rituals I made with these stones was the one I dubbed �The Ritual of Full Spring�. I'll be the first to admit that, in terms of magic, it was nothing special. All it did was create an endless spring of water by using a few tricks from other magics and my soul as a fuel source. But when you are pioneering a new form of magic, you take what you can get. And it was cheap, 500 LP to start it and 25 LP for every bucket of water I got out of it. Luckily I made this ritual before the well outside my home dried up. + +//TITLE Serenade of the Nether + The next ritual I created was �The Serenade of the Nether�, where I tried to make something a bit more useful. I found that the ritual used a large activation cost of 20K LP, to link itself to the nether, then used a much smaller fee of 500 LP to pull a bucket worth of lava to the ritual. I am not sure what part of the nether it is getting the lava from, so it is probably best if we don't think about it too much . diff --git a/src/main/resources/assets/alchemicalwizardryBooks/lang/en_US.lang b/src/main/resources/assets/alchemicalwizardryBooks/lang/en_US.lang index 413412d3..2cd5b2fd 100644 --- a/src/main/resources/assets/alchemicalwizardryBooks/lang/en_US.lang +++ b/src/main/resources/assets/alchemicalwizardryBooks/lang/en_US.lang @@ -38,14 +38,19 @@ aw.entry.Debug.2=Yes Altar Tier explaination will come later :). --book-- -aw.entry.Introduction.1= At the constant demands of my apprentices, I've started writing down my knowledge of blood magic. I've told them time and again that what we do is far too dangerous to write about, and in the wrong hands... I don't want to think of the consequences. But they have made one good point: if more people are going to learn blood magic, word of mouth is far too limited. But I'm getting sidetracked, back to what this is all about. Following their example, I +aw.entry.Introduction.1= At the constant demands of my apprentices, I've started writing down my knowledge of blood magic. I've told them time and again that what we do is far too dangerous to write about, and in the wrong hands... I don't want to think of the consequences. But they have made one good point: if more people are going to learn blood magic, word of mouth is far too limited. But I'm getting sidetracked, back to what this is all about. Following their example, I aw.entry.Introduction.2=will introduce myself. My name is Magus Arcana, and I am the founder of blood magic. I have lived a long life, studying more fields of magic then one could count. When I was younger I moved to the outskirts of a village to start my journeys into the arcane. After several decades of study, I realized there was one source of power few had ever touched: Blood. Many mages claimed that the aw.entry.Introduction.3=use of blood in magic was taboo, yet gave no reason as to why. Eventually, my curiosity grew beyond my reluctance and I started experimenting with the art of blood magic. -aw.entry.Weak Rituals.1= My first breakthrough was with a simple device that used the power of whatever was above it as a template, along with a great deal of blood(25 hearts, or 5k LP if you go by the system one of my apprentices made years later) to perform small miracles. I must also note that at the start of each of the rituals lightning strikes the ritual stone setting it alight, as if the cost of activation wasn't deadly enough. After two weeks of +aw.entry.Weak Rituals.1= My first breakthrough was with a simple device that used the power of whatever was above it as a template, along with a great deal of blood(25 hearts, or 5k LP if you go by the system one of my apprentices made years later ) to perform small miracles. I must also note that at the start of each of the rituals lightning strikes the ritual stone setting it alight, as if the cost of activation wasn't deadly enough. After two weeks of aw.entry.Weak Rituals.2=meditation to strengthen my soul to the point where I could handle the strain of these rituals, I started experimenting with different templates to discover their effects. At that point, I only had the strength to test one template per day before I felt weak. I decided to start training my body and mind again like I did when I was younger, while using a few tricks I had learned over the years to help speed up the process. aw.entry.Weak Rituals.3= With some work I found that water creates a rainstorm with so much lightning that I couldn't sleep that night. A somewhat rare mineral block by the name of Lapis had the very interesting effect of turning day into night. Needless to say, everyone in the village was very confused when the sun suddenly vanished and they couldn't see anything. I was shocked when I found that a coal block summoned a zombie stronger than any other I've -aw.entry.Weak Rituals.4=ever fought in the night. I also lost the coal block to fire from the lightning strike when I was dealing with said zombie. The final effect I found was with bedrock I found at the bottom of a local mine, hardening my skin temporarily. While I looked no different, I could shrug off a blow from an iron sword without a scratch. -aw.entry.Rituals.1= I soon decided that those rituals were far too weak and costly, so I started working on a much larger version. By mixing my blood and a little bit of Mana with an item that was naturally attuned to an element(I found that magma cream worked for fire, a Lapis block for water, obsidian for earth, and a ghast tear for air) I created powerful scribing tools that used blood (100 LP's worth per use) as ink. I used stone fused with blood and obsidian -aw.entry.Rituals.2=to create stones strong enough to withstand more powerful rituals. It took me over two years to perfect the ritual stone. Trust me, you don't want to see what happened with some of the earlier tests. Let us just say they made the holes creepers leave look like potholes, and leave it at that. I also designed a �Master� stone to be what really controls the rituals, with the powerful dust called �Redstone� able to deactivate -aw.entry.Rituals.3=rituals and putting in a few safeguards so that if some fool tries to activate a ritual they don't have the strength or the blood to handle, it doesn't kill them outright. While I was able to weaken the pull that rituals carried on the user�s life force to not cause any lasting harm, I could not quite get rid of the feeling of nausea and unease an unattended Ritual would cause . I eventually got tired of trying to stop it and marked -aw.entry.Rituals.4=it down as an occupational hazard. \ No newline at end of file +aw.entry.Weak Rituals.4=ever fought in the night. I also lost the coal block to fire from the lightning strike when I was dealing with said zombie. The final effect I found was with bedrock I found at the bottom of a local mine , hardening my skin temporarily. While I looked no different, I could shrug off a blow from an iron sword without a scratch. +aw.entry.Rituals.1= I soon decided that those rituals were far too weak and costly, so I started working on a much larger version. By mixing my blood and a little bit of Mana with an item that was naturally attuned to an element(I found that magma cream worked for fire, a Lapis block for water, obsidian for earth, and a ghast tear for air) I created powerful scribing tools that used blood (100 LP's worth per use) as ink. I used stone fused with blood and obsidian +aw.entry.Rituals.2=to create stones strong enough to withstand more powerful rituals. It took me over two years to perfect the ritual stone. Trust me, you don't want to see what happened with some of the earlier tests . Let us just say they made the holes creepers leave look like potholes, and leave it at that. I also designed a "Master" stone to be what really controls the rituals, with the powerful dust called "Redstone" able to deactivate +aw.entry.Rituals.3=rituals and putting in a few safeguards so that if some fool tries to activate a ritual they don't have the strength or the blood to handle, it doesn't kill them outright. While I was able to weaken the pull that rituals carried on the user�s life force to not cause any lasting harm, I could not quite get rid of the feeling of nausea and unease an unattended Ritual would cause . I eventually got tired of trying to stop it and marked +aw.entry.Rituals.4=it down as an occupational hazard. Once I had the stones, I realized that there needed to be a bridge between myself and the "Master" stone of the rituals. I found an old, red crystal in my attic that I bought months ago on the villages market. The trader claimed to have gotten it off the corpse of a demon after a brother of his killed it when it attacked their caravan. I don't know if his story was true, but I could +aw.entry.Rituals.5=tell it was magic. After shaping it a little, I found it made the perfect catalyst for linking my soul into the ritual stones. +aw.entry.Ritual of the Full Spring.1= Among the first rituals I made with these stones was the one I dubbed "The Ritual of Full Spring". I'll be the first to admit that, in terms of magic, it was nothing special. All it did was create an endless spring of water by using a few tricks from other magics and my soul as a fuel source. But when you are pioneering a new form of magic, you take what you can get. And it was cheap, 500 LP to start it and 25 LP for every bucket of water I got +aw.entry.Ritual of the Full Spring.2=out of it. Luckily I made this ritual before the well outside my home dried up. +aw.entry.Serenade of the Nether.1= The next ritual I created was "The Serenade of the Nether", where I tried to make something a bit more useful. I found that the ritual used a large activation cost of 20K LP, to link itself to the nether, then used a much smaller fee of 500 LP to pull a bucket worth of lava to the ritual. I am not sure what part of the nether it is getting the lava from, so it is probably best if we don't think about it too much . +