diff --git a/Changelog.txt b/Changelog.txt index 9b30b70..ee5de03 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,3 +1,6 @@ +Version 1.10: +Added the textures for the Soul Corruption stuff. Also added a utils class, so that I can easily access itemstacks. + Version 1.1.0-Pre4: The worst Soul Corruption effect removes a bit of corruption every time it happens. That is to say, a 1/5000 chance. Added a new effect, illusion. diff --git a/build.gradle b/build.gradle index d69f7bc..95da7cc 100644 --- a/build.gradle +++ b/build.gradle @@ -17,7 +17,7 @@ buildscript { apply plugin: 'forge' -version = "1.7.10-1.1.0-Pre4" +version = "1.7.10-1.1.0" group= "" // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = "Sanguimancy" diff --git a/src/main/java/tombenpotter/sanguimancy/Sanguimancy.java b/src/main/java/tombenpotter/sanguimancy/Sanguimancy.java index 6bd4637..1b81a36 100644 --- a/src/main/java/tombenpotter/sanguimancy/Sanguimancy.java +++ b/src/main/java/tombenpotter/sanguimancy/Sanguimancy.java @@ -61,7 +61,7 @@ public void load(FMLInitializationEvent event) { FMLCommonHandler.instance().bus().register(new EventHandler()); MinecraftForge.EVENT_BUS.register(new EventHandler()); PacketHandler.registerPackets(); - RitualRegistry.addToWoSBlacklist(); + // RitualRegistry.addToWoSBlacklist(); } @Mod.EventHandler diff --git a/src/main/java/tombenpotter/sanguimancy/blocks/ItemBlockIllusion.java b/src/main/java/tombenpotter/sanguimancy/blocks/ItemBlockIllusion.java index de2f2b6..f95245b 100644 --- a/src/main/java/tombenpotter/sanguimancy/blocks/ItemBlockIllusion.java +++ b/src/main/java/tombenpotter/sanguimancy/blocks/ItemBlockIllusion.java @@ -1,8 +1,14 @@ package tombenpotter.sanguimancy.blocks; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; +import net.minecraft.util.StatCollector; + +import java.util.List; public class ItemBlockIllusion extends ItemBlock { @@ -89,4 +95,10 @@ public String getUnlocalizedName(ItemStack stack) { public int getMetadata(int par1) { return par1; } + + @SideOnly(Side.CLIENT) + @Override + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean p_77624_4_) { + list.add(StatCollector.translateToLocal("info.Sanguimancy.tooltip.illusion")); + } } diff --git a/src/main/java/tombenpotter/sanguimancy/items/ItemSoulCorruptionTest.java b/src/main/java/tombenpotter/sanguimancy/items/ItemSoulCorruptionTest.java index ef33a4c..e807471 100644 --- a/src/main/java/tombenpotter/sanguimancy/items/ItemSoulCorruptionTest.java +++ b/src/main/java/tombenpotter/sanguimancy/items/ItemSoulCorruptionTest.java @@ -57,6 +57,10 @@ public String getUnlocalizedName(ItemStack itemstack) { @SideOnly(Side.CLIENT) public void registerIcons(IIconRegister ri) { + this.icon[0] = ri.registerIcon(Sanguimancy.texturePath + ":AddSoulCorruption"); + this.icon[1] = ri.registerIcon(Sanguimancy.texturePath + ":RemoveSoulCorruption"); + this.icon[2] = ri.registerIcon(Sanguimancy.texturePath + ":NegateSoulCorruption"); + this.icon[3] = ri.registerIcon(Sanguimancy.texturePath + ":SoulCorruptionReader"); } @SideOnly(Side.CLIENT) diff --git a/src/main/java/tombenpotter/sanguimancy/registry/BlocksRegistry.java b/src/main/java/tombenpotter/sanguimancy/registry/BlocksRegistry.java index 1a1c2be..ebaed2b 100644 --- a/src/main/java/tombenpotter/sanguimancy/registry/BlocksRegistry.java +++ b/src/main/java/tombenpotter/sanguimancy/registry/BlocksRegistry.java @@ -24,6 +24,6 @@ public static void registerBlocks() { GameRegistry.registerBlock(sacrificeTransfer, "BlockSacrificeTransfer").setBlockName(Sanguimancy.modid + ".sacrificeTransfer"); illusion = new BlockIllusion(Material.iron); - GameRegistry.registerBlock(illusion, ItemBlockIllusion.class, "BlockIllusion").setBlockName(Sanguimancy.modid + ".illusion").setLightLevel(1.5F); + GameRegistry.registerBlock(illusion, ItemBlockIllusion.class, "BlockIllusion").setBlockName(Sanguimancy.modid + ".illusion").setLightLevel(1F); } } diff --git a/src/main/java/tombenpotter/sanguimancy/registry/RecipesRegistry.java b/src/main/java/tombenpotter/sanguimancy/registry/RecipesRegistry.java index f7e9d06..10cffc4 100644 --- a/src/main/java/tombenpotter/sanguimancy/registry/RecipesRegistry.java +++ b/src/main/java/tombenpotter/sanguimancy/registry/RecipesRegistry.java @@ -8,20 +8,22 @@ import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; +import tombenpotter.sanguimancy.util.SanguimancyItemStacks; public class RecipesRegistry { public static void registerShapedRecipes() { - GameRegistry.addShapedRecipe(new ItemStack(BlocksRegistry.altarEmitter), "XYX", "XZX", "XXX", 'X', Blocks.redstone_block, 'Y', Blocks.lever, 'Z', ModBlocks.blockAltar); - GameRegistry.addShapedRecipe(new ItemStack(BlocksRegistry.sacrificeTransfer), "XAX", "YZY", "XYX", 'X', new ItemStack(ModItems.demonicSlate), 'A', new ItemStack(ModItems.lavaCrystal), 'Y', new ItemStack(Items.diamond), 'Z', new ItemStack(Blocks.heavy_weighted_pressure_plate)); + GameRegistry.addShapedRecipe(SanguimancyItemStacks.altarEmitter, "XYX", "XZX", "XXX", 'X', Blocks.redstone_block, 'Y', Blocks.lever, 'Z', ModBlocks.blockAltar); + GameRegistry.addShapedRecipe(SanguimancyItemStacks.sacrificeTransferrer, "XAX", "YZY", "XYX", 'X', new ItemStack(ModItems.demonicSlate), 'A', new ItemStack(ModItems.lavaCrystal), 'Y', new ItemStack(Items.diamond), 'Z', new ItemStack(Blocks.heavy_weighted_pressure_plate)); + GameRegistry.addShapedRecipe(SanguimancyItemStacks.corruptionReader, "AXA", "ZYB", "AXA", 'X', Blocks.soul_sand, 'Y', new ItemStack(ModItems.divinationSigil), 'Z', new ItemStack(Items.skull, 1, 1), 'A', Blocks.nether_brick, 'B', Items.ender_eye); } public static void registerAltarRecipes() { - AltarRecipeRegistry.registerAltarRecipe(new ItemStack(BlocksRegistry.altarDiviner), new ItemStack(ModBlocks.blockAltar), 3, 3000, 10, 10, false); - AltarRecipeRegistry.registerAltarRecipe(new ItemStack(ItemsRegistry.playerSacrificer, 1, 1), new ItemStack(ItemsRegistry.playerSacrificer, 1, 0), 5, 30000, 10, 10, false); + AltarRecipeRegistry.registerAltarRecipe(SanguimancyItemStacks.altarDiviner, new ItemStack(ModBlocks.blockAltar), 3, 3000, 10, 10, false); + AltarRecipeRegistry.registerAltarRecipe(SanguimancyItemStacks.attunnedPlayerSacrificer, SanguimancyItemStacks.unattunedPlayerSacrificer, 5, 30000, 10, 10, false); } public static void registerOrbRecipes() { - GameRegistry.addRecipe(new ShapedBloodOrbRecipe(new ItemStack(ItemsRegistry.playerSacrificer, 1, 0), "XYX", "YOY", "XYX", 'X', new ItemStack(ModItems.demonicSlate), 'Y', new ItemStack(ModBlocks.emptySocket), 'O', new ItemStack(ModItems.archmageBloodOrb))); + GameRegistry.addRecipe(new ShapedBloodOrbRecipe(SanguimancyItemStacks.unattunedPlayerSacrificer, "XYX", "YOY", "XYX", 'X', new ItemStack(ModItems.demonicSlate), 'Y', new ItemStack(ModBlocks.emptySocket), 'O', new ItemStack(ModItems.archmageBloodOrb))); } -} +} \ No newline at end of file diff --git a/src/main/java/tombenpotter/sanguimancy/util/SanguimancyItemStacks.java b/src/main/java/tombenpotter/sanguimancy/util/SanguimancyItemStacks.java new file mode 100644 index 0000000..bfb0b88 --- /dev/null +++ b/src/main/java/tombenpotter/sanguimancy/util/SanguimancyItemStacks.java @@ -0,0 +1,38 @@ +package tombenpotter.sanguimancy.util; + +import net.minecraft.item.ItemStack; +import tombenpotter.sanguimancy.registry.BlocksRegistry; +import tombenpotter.sanguimancy.registry.ItemsRegistry; + +public class SanguimancyItemStacks { + + // Items + public static ItemStack unattunedPlayerSacrificer = new ItemStack(ItemsRegistry.playerSacrificer, 1, 0); + public static ItemStack attunnedPlayerSacrificer = new ItemStack(ItemsRegistry.playerSacrificer, 1, 1); + public static ItemStack focusedPlayerSacrificer = new ItemStack(ItemsRegistry.playerSacrificer, 1, 2); + public static ItemStack addCorruption = new ItemStack(ItemsRegistry.soulCorruptionTest, 1, 0); + public static ItemStack removeCorruption = new ItemStack(ItemsRegistry.soulCorruptionTest, 1, 1); + public static ItemStack negateCorruption = new ItemStack(ItemsRegistry.soulCorruptionTest, 1, 2); + public static ItemStack corruptionReader = new ItemStack(ItemsRegistry.soulCorruptionTest, 1, 3); + + // Blocks + public static ItemStack altarEmitter = new ItemStack(BlocksRegistry.altarEmitter); + public static ItemStack altarDiviner = new ItemStack(BlocksRegistry.altarDiviner); + public static ItemStack sacrificeTransferrer = new ItemStack(BlocksRegistry.sacrificeTransfer); + public static ItemStack diamondOreIllusion = new ItemStack(BlocksRegistry.illusion, 1, 0); + public static ItemStack diamondBlockIllusion = new ItemStack(BlocksRegistry.illusion, 1, 1); + public static ItemStack glowstoneIllusion = new ItemStack(BlocksRegistry.illusion, 1, 2); + public static ItemStack netherrackIllusion = new ItemStack(BlocksRegistry.illusion, 1, 3); + public static ItemStack quartzOreIllusion = new ItemStack(BlocksRegistry.illusion, 1, 4); + public static ItemStack endStoneIllusion = new ItemStack(BlocksRegistry.illusion, 1, 5); + public static ItemStack pinkWoolIllusion = new ItemStack(BlocksRegistry.illusion, 1, 6); + public static ItemStack lavaIllusion = new ItemStack(BlocksRegistry.illusion, 1, 7); + public static ItemStack jackOLanternIllusion = new ItemStack(BlocksRegistry.illusion, 1, 8); + public static ItemStack bedrockIllusion = new ItemStack(BlocksRegistry.illusion, 1, 9); + public static ItemStack obsidianIllusion = new ItemStack(BlocksRegistry.illusion, 1, 10); + public static ItemStack glassIllusion = new ItemStack(BlocksRegistry.illusion, 1, 11); + public static ItemStack snowIllusion = new ItemStack(BlocksRegistry.illusion, 1, 12); + public static ItemStack melonIllusion = new ItemStack(BlocksRegistry.illusion, 1, 13); + public static ItemStack goldBlockIllusion = new ItemStack(BlocksRegistry.illusion, 1, 14); + public static ItemStack clayIllusion = new ItemStack(BlocksRegistry.illusion, 1, 15); +} diff --git a/src/main/resources/assets/sanguimancy/lang/en_US.lang b/src/main/resources/assets/sanguimancy/lang/en_US.lang index 0f033b2..8f7c57b 100644 --- a/src/main/resources/assets/sanguimancy/lang/en_US.lang +++ b/src/main/resources/assets/sanguimancy/lang/en_US.lang @@ -1,7 +1,7 @@ #Blocks tile.Sanguimancy.altarDiviner.name=Altar Diviner tile.Sanguimancy.altarEmitter.name=Altar Emitter -tile.Sanguimancy.sacrificeTransfer.name=Sacrifice Transferrer +tile.Sanguimancy.sacrificeTransfer.name=Soul Transferrer tile.Sanguimancy.illusion.diamond.ore.name=Diamond Ore tile.Sanguimancy.illusion.diamond.block.name=Diamond Block tile.Sanguimancy.illusion.glowstone.name=Glowstone @@ -20,13 +20,13 @@ tile.Sanguimancy.illusion.gold.block.name=Gold Block tile.Sanguimancy.illusion.clay.name=Clay #Items -item.Sanguimancy.playerSacrificer.unattuned.name=Unattuned Player Sacrifice Stone -item.Sanguimancy.playerSacrificer.attuned.name=Attuned Player Sacrifice Stone -item.Sanguimancy.playerSacrificer.focused.name=Focused Player Sacrifice Stone +item.Sanguimancy.playerSacrificer.unattuned.name=Unattuned Player Sacrificing Stone +item.Sanguimancy.playerSacrificer.attuned.name=Attuned Player Sacrificing Stone +item.Sanguimancy.playerSacrificer.focused.name=Focused Player Sacrificing Stone item.Sanguimancy.soulCorruption.add.name=Add Soul Corruption item.Sanguimancy.soulCorruption.remove.name=Remove Soul Corruption item.Sanguimancy.soulCorruption.negate.name=Negate Soul Corruption -item.Sanguimancy.soulCorruption.reader.name=Read Corruption Level +item.Sanguimancy.soulCorruption.reader.name=Soul Corruption Reader #Creative Tab itemGroup.tabSanguimancy=Sanguimancy @@ -50,4 +50,5 @@ info.Sanguimancy.tooltip.sacrifice.transfer=Do not have your dirty work done by info.Sanguimancy.tooltip.sacrifice.player.owner=Blood owner info.Sanguimancy.tooltip.sacrifice.player.stolen=LP stolen info.Sanguimancy.tooltip.sacrifice.player.thief=Thief name -info.Sanguimancy.tooltip.creative.only=Creative Only \ No newline at end of file +info.Sanguimancy.tooltip.creative.only=Creative Only +info.Sanguimancy.tooltip.illusion=The block is a lie. \ No newline at end of file diff --git a/src/main/resources/assets/sanguimancy/textures/items/AddSoulCorruption.png b/src/main/resources/assets/sanguimancy/textures/items/AddSoulCorruption.png new file mode 100644 index 0000000..0f6178b Binary files /dev/null and b/src/main/resources/assets/sanguimancy/textures/items/AddSoulCorruption.png differ diff --git a/src/main/resources/assets/sanguimancy/textures/items/NegateSoulCorruption.png b/src/main/resources/assets/sanguimancy/textures/items/NegateSoulCorruption.png new file mode 100644 index 0000000..460fe0c Binary files /dev/null and b/src/main/resources/assets/sanguimancy/textures/items/NegateSoulCorruption.png differ diff --git a/src/main/resources/assets/sanguimancy/textures/items/RemoveSoulCorruption.png b/src/main/resources/assets/sanguimancy/textures/items/RemoveSoulCorruption.png new file mode 100644 index 0000000..f87b3cb Binary files /dev/null and b/src/main/resources/assets/sanguimancy/textures/items/RemoveSoulCorruption.png differ diff --git a/src/main/resources/assets/sanguimancy/textures/items/SoulCorruptionReader.png b/src/main/resources/assets/sanguimancy/textures/items/SoulCorruptionReader.png new file mode 100644 index 0000000..6f2d217 Binary files /dev/null and b/src/main/resources/assets/sanguimancy/textures/items/SoulCorruptionReader.png differ