diff --git a/gradlew b/gradlew old mode 100755 new mode 100644 diff --git a/gradlew.bat b/gradlew.bat old mode 100644 new mode 100755 diff --git a/src/main/java/org/modstats/reporter/v1/Reporter.java b/src/main/java/org/modstats/reporter/v1/Reporter.java deleted file mode 100644 index f68308a4..00000000 --- a/src/main/java/org/modstats/reporter/v1/Reporter.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * Copyright (c) <2012-2014>, Oleg Romanovskiy aka Shedar - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of the author nor the - * names of its contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package org.modstats.reporter.v1; - -/** - * Obsolete. - * @deprecated See org.modstats.reporter.v2 - */ -@Deprecated() -public class Reporter -{ -} diff --git a/src/main/java/xreliquary/CreativeTabXR.java b/src/main/java/xreliquary/CreativeTabXR.java old mode 100755 new mode 100644 index e52b75f2..e3244f5b --- a/src/main/java/xreliquary/CreativeTabXR.java +++ b/src/main/java/xreliquary/CreativeTabXR.java @@ -2,7 +2,7 @@ import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; -import xreliquary.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentHandler; import xreliquary.lib.Names; public class CreativeTabXR extends CreativeTabs { diff --git a/src/main/java/xreliquary/Reliquary.java b/src/main/java/xreliquary/Reliquary.java old mode 100755 new mode 100644 index 93e768ba..76301997 --- a/src/main/java/xreliquary/Reliquary.java +++ b/src/main/java/xreliquary/Reliquary.java @@ -1,24 +1,28 @@ package xreliquary; +import java.io.File; + +import lib.enderwizards.sandstone.Sandstone; +import lib.enderwizards.sandstone.mod.SandstoneMod; +import lib.enderwizards.sandstone.mod.config.Configuration; +import lib.enderwizards.sandstone.mod.config.TomlConfig; import net.minecraft.item.Item; + import org.apache.logging.log4j.Level; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; import org.modstats.ModstatInfo; import org.modstats.Modstats; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; - -// TODO: Use jTOML (https://github.com/asafh/jtoml) over Forge's configuration system. This will allow for a better/cleaner syntax, since we only need the config for options now (since IDs don't conflict anymore, because they don't exist). -import net.minecraftforge.common.config.Configuration; import net.minecraftforge.common.MinecraftForge; - import xreliquary.items.ItemDestructionCatalyst; import xreliquary.util.alkahestry.Alkahestry; import xreliquary.lib.Reference; import xreliquary.common.CommonProxy; import xreliquary.util.alkahestry.AlkahestRecipe; -import xreliquary.util.LogHelper; import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; @@ -32,7 +36,8 @@ import cpw.mods.fml.relauncher.Side; @ModstatInfo(prefix = "reliquary") -@Mod(modid = Reference.MOD_ID, name = Reference.MOD_NAME, version = Reference.VERSION) +@Mod(modid = Reference.MOD_ID, name = Reference.MOD_NAME, version = Reference.VERSION, dependencies = "required-after:libsandstone") +@SandstoneMod(basePackage = "xreliquary") public class Reliquary { @Instance(Reference.MOD_ID) @@ -41,31 +46,32 @@ public class Reliquary { @SidedProxy(clientSide = Reference.CLIENT_PROXY, serverSide = Reference.COMMON_PROXY) public static CommonProxy PROXY; - public static Configuration CONFIG; + public static TomlConfig CONFIG; public static CreativeTabs CREATIVE_TAB = new CreativeTabXR(CreativeTabs.getNextID(), Reference.MOD_ID); + public static Logger LOGGER = LogManager.getLogger(Reference.MOD_ID); - @EventHandler + @EventHandler public void preInit(FMLPreInitializationEvent event) { - CONFIG = new Configuration(event.getSuggestedConfigurationFile()); - - CONFIG.load(); + CONFIG = Configuration.toml(new File(event.getModConfigurationDirectory(), Reference.MOD_ID + ".toml")); + + PROXY.initOptions(); + Sandstone.preInit(); PROXY.preInit(); - CONFIG.save(); } @EventHandler - public void load(FMLInitializationEvent event) { - Modstats.instance().getReporter().registerMod(this); + public void init(FMLInitializationEvent event) { + // Modstats.instance().getReporter().registerMod(this); PROXY.init(); MinecraftForge.EVENT_BUS.register(this); } @EventHandler - public void modsLoaded(FMLPostInitializationEvent event) { - LogHelper.log(Level.INFO, "Loaded successfully!"); + public void postInit(FMLPostInitializationEvent event) { + LOGGER.log(Level.INFO, "Loaded successfully!"); if (event.getSide() == Side.CLIENT && Loader.isModLoaded("NotEnoughItems")) { - LogHelper.log(Level.INFO, "Hey NEI! I got a plugin for you! (hopefully in the near future)."); + LOGGER.log(Level.INFO, "Hey NEI! I got a plugin for you! (hopefully in the near future)."); } } @@ -73,7 +79,7 @@ public void modsLoaded(FMLPostInitializationEvent event) { public void onMessage(IMCEvent event) { for (IMCMessage message : event.getMessages()) { if (message.key.equals("DestructionCatalyst")) { - LogHelper.log(Level.INFO, "[IMC] Added block " + message.getStringValue() + " from " + message.getSender() + " was added to the Destruction Catalyst's registry."); + LOGGER.log(Level.INFO, "[IMC] Added block " + message.getStringValue() + " from " + message.getSender() + " was added to the Destruction Catalyst's registry."); ItemDestructionCatalyst.ids.add(message.getStringValue()); } else if (message.key.equals("Alkahest")) { NBTTagCompound tag = message.getNBTValue(); @@ -82,9 +88,9 @@ public void onMessage(IMCEvent event) { Alkahestry.addKey(new AlkahestRecipe(tag.getString("dictionaryName"), tag.getInteger("yield"), tag.getInteger("cost"))); else Alkahestry.addKey(new AlkahestRecipe(ItemStack.loadItemStackFromNBT(tag.getCompoundTag("item")), tag.getInteger("yield"), tag.getInteger("cost"))); - LogHelper.log(Level.INFO, "[IMC] Added AlkahestRecipe ID: " + Item.itemRegistry.getNameForObject(ItemStack.loadItemStackFromNBT(tag.getCompoundTag("item"))) + " from " + message.getSender() + " to registry."); + LOGGER.log(Level.INFO, "[IMC] Added AlkahestRecipe ID: " + Item.itemRegistry.getNameForObject(ItemStack.loadItemStackFromNBT(tag.getCompoundTag("item"))) + " from " + message.getSender() + " to registry."); } else { - LogHelper.log(Level.WARN, "[IMC] Invalid AlkahestRecipe from " + message.getSender() + "! Please contact the mod author if you see this error occurring."); + LOGGER.log(Level.WARN, "[IMC] Invalid AlkahestRecipe from " + message.getSender() + "! Please contact the mod author if you see this error occurring."); } } } diff --git a/src/main/java/xreliquary/blocks/BlockAlkahestryAltar.java b/src/main/java/xreliquary/blocks/BlockAlkahestryAltar.java index de3128b5..56c4b3d7 100644 --- a/src/main/java/xreliquary/blocks/BlockAlkahestryAltar.java +++ b/src/main/java/xreliquary/blocks/BlockAlkahestryAltar.java @@ -14,8 +14,8 @@ import net.minecraft.world.World; import xreliquary.Reliquary; import xreliquary.blocks.tile.TileEntityAltar; -import xreliquary.init.ContentHandler; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; @@ -23,14 +23,14 @@ public class BlockAlkahestryAltar extends BlockContainer { - @XRInit + @ContentInit static public class BlockActiveAlkahestryAltar extends BlockAlkahestryAltar { public BlockActiveAlkahestryAltar() { super(true); } } - @XRInit + @ContentInit static public class BlockIdleAlkahestryAltar extends BlockAlkahestryAltar { public BlockIdleAlkahestryAltar() { super(false); diff --git a/src/main/java/xreliquary/blocks/BlockApothecaryCauldron.java b/src/main/java/xreliquary/blocks/BlockApothecaryCauldron.java index 1f26cdb5..ef20c52f 100644 --- a/src/main/java/xreliquary/blocks/BlockApothecaryCauldron.java +++ b/src/main/java/xreliquary/blocks/BlockApothecaryCauldron.java @@ -22,16 +22,16 @@ import xreliquary.Reliquary; import xreliquary.blocks.tile.TileEntityCauldron; import xreliquary.client.render.RenderApothecaryCauldron; -import xreliquary.init.ContentHandler; -import xreliquary.init.XRInit; -import xreliquary.items.block.ItemBlockBase; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentInit; +import lib.enderwizards.sandstone.items.block.ItemBlockBase; import xreliquary.lib.Names; import xreliquary.lib.Reference; import java.util.List; import java.util.Random; -@XRInit(itemBlock = ItemBlockBase.class) +@ContentInit(itemBlock = ItemBlockBase.class) public class BlockApothecaryCauldron extends BlockContainer { public BlockApothecaryCauldron() { @@ -92,9 +92,8 @@ public void addCollisionBoxesToList(World world, int x, int y, int z, AxisAligne //called by the renderer to get the texture in a static method. @SideOnly(Side.CLIENT) - public static IIcon getCauldronIcon(String textureName) - { - BlockApothecaryCauldron cauldronStatic = (BlockApothecaryCauldron)ContentHandler.getBlock(Names.apothecary_cauldron); + public static IIcon getCauldronIcon(String textureName) { + BlockApothecaryCauldron cauldronStatic = (BlockApothecaryCauldron) ContentHandler.getBlock(Names.apothecary_cauldron); return textureName.equals("inner") ? cauldronStatic.innerTexture : (textureName.equals("bottom") ? cauldronStatic.bottomTexture : textureName.equals("inside") ? cauldronStatic.insideTexture : null); } diff --git a/src/main/java/xreliquary/blocks/BlockApothecaryMortar.java b/src/main/java/xreliquary/blocks/BlockApothecaryMortar.java index 6da4ab8d..6023257b 100644 --- a/src/main/java/xreliquary/blocks/BlockApothecaryMortar.java +++ b/src/main/java/xreliquary/blocks/BlockApothecaryMortar.java @@ -6,34 +6,26 @@ import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; -import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.init.Items; import net.minecraft.item.Item; -import net.minecraft.item.ItemArmor; import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.IIcon; -import net.minecraft.util.MathHelper; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.blocks.tile.TileEntityCauldron; import xreliquary.blocks.tile.TileEntityMortar; -import xreliquary.client.render.RenderApothecaryCauldron; -import xreliquary.client.render.RenderApothecaryMortar; -import xreliquary.init.ContentHandler; -import xreliquary.init.XRInit; -import xreliquary.items.block.ItemBlockBase; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentInit; +import lib.enderwizards.sandstone.items.block.ItemBlockBase; import xreliquary.lib.Names; import xreliquary.lib.Reference; import java.util.List; import java.util.Random; -@XRInit(itemBlock = ItemBlockBase.class) +@ContentInit(itemBlock = ItemBlockBase.class) public class BlockApothecaryMortar extends BlockContainer { public BlockApothecaryMortar() { diff --git a/src/main/java/xreliquary/blocks/BlockFertileLilypad.java b/src/main/java/xreliquary/blocks/BlockFertileLilypad.java old mode 100755 new mode 100644 index 606bf2e6..6f110a12 --- a/src/main/java/xreliquary/blocks/BlockFertileLilypad.java +++ b/src/main/java/xreliquary/blocks/BlockFertileLilypad.java @@ -6,9 +6,9 @@ import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.items.block.ItemFertileLilypad; -import xreliquary.util.ObjectUtils; +import lib.enderwizards.sandstone.util.ContentHelper; import net.minecraft.block.Block; import net.minecraft.block.BlockFlower; import net.minecraft.block.material.Material; @@ -26,7 +26,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit(itemBlock = ItemFertileLilypad.class) +@ContentInit(itemBlock = ItemFertileLilypad.class) public class BlockFertileLilypad extends BlockFlower { public BlockFertileLilypad() { @@ -72,7 +72,7 @@ public void growCropsNearby(World world, int xO, int yO, int zO) { int z = zO + zD; Block block = world.getBlock(x, y, z); - if (block != null && Block.blockRegistry.getNameForObject(block).equals(ObjectUtils.getBlockIdentifier(block))) { + if (block != null && Block.blockRegistry.getNameForObject(block).equals(ContentHelper.getIndent(block))) { continue; } @@ -104,7 +104,7 @@ public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, @Override protected boolean canPlaceBlockOn(Block block) { - return block == null ? false : ObjectUtils.areBlocksEqual(block, Blocks.water); + return block == null ? false : ContentHelper.areBlocksEqual(block, Blocks.water); } @Override diff --git a/src/main/java/xreliquary/blocks/BlockInterdictionTorch.java b/src/main/java/xreliquary/blocks/BlockInterdictionTorch.java index 2aa00fb5..04ef3279 100644 --- a/src/main/java/xreliquary/blocks/BlockInterdictionTorch.java +++ b/src/main/java/xreliquary/blocks/BlockInterdictionTorch.java @@ -4,24 +4,22 @@ import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.BlockTorch; import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.entity.EntityLiving; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.boss.IBossDisplayData; -import net.minecraft.entity.monster.EntityMob; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.Vec3; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.init.XRInit; -import xreliquary.items.block.ItemBlockBase; +import lib.enderwizards.sandstone.init.ContentInit; +import lib.enderwizards.sandstone.items.block.ItemBlockBase; import xreliquary.lib.Names; import xreliquary.lib.Reference; import java.util.List; import java.util.Random; -@XRInit(itemBlock = ItemBlockBase.class) +@ContentInit(itemBlock = ItemBlockBase.class) public class BlockInterdictionTorch extends BlockTorch { public BlockInterdictionTorch() { diff --git a/src/main/java/xreliquary/blocks/BlockWraithNode.java b/src/main/java/xreliquary/blocks/BlockWraithNode.java old mode 100755 new mode 100644 index f781bb18..389f1abc --- a/src/main/java/xreliquary/blocks/BlockWraithNode.java +++ b/src/main/java/xreliquary/blocks/BlockWraithNode.java @@ -5,13 +5,13 @@ import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.util.IIcon; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class BlockWraithNode extends Block { public IIcon topIcon; diff --git a/src/main/java/xreliquary/blocks/tile/TileEntityAltar.java b/src/main/java/xreliquary/blocks/tile/TileEntityAltar.java old mode 100755 new mode 100644 index fd0362fa..c1f6ba73 --- a/src/main/java/xreliquary/blocks/tile/TileEntityAltar.java +++ b/src/main/java/xreliquary/blocks/tile/TileEntityAltar.java @@ -1,11 +1,11 @@ package xreliquary.blocks.tile; +import lib.enderwizards.sandstone.blocks.tile.TileEntityBase; import net.minecraft.init.Blocks; import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntity; import xreliquary.blocks.BlockAlkahestryAltar; -public class TileEntityAltar extends TileEntity { +public class TileEntityAltar extends TileEntityBase { private int cycleTime; private boolean isActive; private int redstoneCount; diff --git a/src/main/java/xreliquary/blocks/tile/TileEntityCauldron.java b/src/main/java/xreliquary/blocks/tile/TileEntityCauldron.java index 924a9f81..b6aafe42 100644 --- a/src/main/java/xreliquary/blocks/tile/TileEntityCauldron.java +++ b/src/main/java/xreliquary/blocks/tile/TileEntityCauldron.java @@ -1,9 +1,9 @@ package xreliquary.blocks.tile; +import lib.enderwizards.sandstone.blocks.tile.TileEntityBase; import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntity; -public class TileEntityCauldron extends TileEntity { +public class TileEntityCauldron extends TileEntityBase { public TileEntityCauldron() { //TODO initialization stuff, as needed. diff --git a/src/main/java/xreliquary/blocks/tile/TileEntityMortar.java b/src/main/java/xreliquary/blocks/tile/TileEntityMortar.java index 9aad50c9..4b7b90c0 100644 --- a/src/main/java/xreliquary/blocks/tile/TileEntityMortar.java +++ b/src/main/java/xreliquary/blocks/tile/TileEntityMortar.java @@ -2,20 +2,15 @@ import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.relauncher.Side; +import lib.enderwizards.sandstone.blocks.tile.TileEntityBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; -import net.minecraft.network.NetworkManager; -import net.minecraft.network.Packet; -import net.minecraft.network.play.server.S35PacketUpdateTileEntity; -import net.minecraft.tileentity.TileEntity; import xreliquary.lib.Reference; -import java.util.List; - -public class TileEntityMortar extends TileEntity implements IInventory { +public class TileEntityMortar extends TileEntityBase implements IInventory { //counts the number of times the player has right clicked the block //arbitrarily setting the number of times the player needs to grind the materials to five. @@ -34,16 +29,6 @@ public void updateEntity() { //do stuff on tick? I don't think we need this to tick. } - public Packet getDescriptionPacket() { - NBTTagCompound nbtTag = new NBTTagCompound(); - this.writeToNBT(nbtTag); - return new S35PacketUpdateTileEntity(this.xCoord, this.yCoord, this.zCoord, 1, nbtTag); - } - - public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity packet) { - readFromNBT(packet.func_148857_g()); - } - @Override public void readFromNBT(NBTTagCompound tag) { super.readFromNBT(tag); diff --git a/src/main/java/xreliquary/client/ClientProxy.java b/src/main/java/xreliquary/client/ClientProxy.java old mode 100755 new mode 100644 index aaad6f36..242affbe --- a/src/main/java/xreliquary/client/ClientProxy.java +++ b/src/main/java/xreliquary/client/ClientProxy.java @@ -12,7 +12,7 @@ import xreliquary.common.CommonProxy; import xreliquary.entities.*; import xreliquary.event.ClientEventHandler; -import xreliquary.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentHandler; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.client.registry.RenderingRegistry; @@ -50,6 +50,7 @@ public void registerRenderers() { RenderingRegistry.registerEntityRenderingHandler(EntityHolyHandGrenade.class, new RenderThrown(12)); RenderingRegistry.registerEntityRenderingHandler(EntitySpecialSnowball.class, new RenderSnowball(Items.snowball)); RenderingRegistry.registerEntityRenderingHandler(EntityEnderStaffProjectile.class, new RenderSnowball(Items.ender_pearl)); + RenderingRegistry.registerEntityRenderingHandler(EntityKrakenSlime.class, new RenderThrown(13)); RenderingRegistry.registerEntityRenderingHandler(EntityGlowingWater.class, new RenderThrown(Reference.WATER_SPRITE)); RenderingRegistry.registerEntityRenderingHandler(EntityCondensedSplashAphrodite.class, new RenderThrown(Reference.SPLASH_POTION_SPRITE + Reference.APHRODITE_META)); RenderingRegistry.registerEntityRenderingHandler(EntityCondensedSplashPoison.class, new RenderThrown(Reference.SPLASH_POTION_SPRITE + Reference.POISON_META)); diff --git a/src/main/java/xreliquary/client/gui/GuiAlkahestTome.java b/src/main/java/xreliquary/client/gui/GuiAlkahestTome.java index 16ecabda..5cb4c906 100644 --- a/src/main/java/xreliquary/client/gui/GuiAlkahestTome.java +++ b/src/main/java/xreliquary/client/gui/GuiAlkahestTome.java @@ -1,11 +1,11 @@ package xreliquary.client.gui; +import lib.enderwizards.sandstone.client.gui.GuiBase; import net.minecraft.init.Blocks; import net.minecraft.init.Items; -import xreliquary.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentHandler; import xreliquary.lib.Names; import xreliquary.lib.Reference; -import xreliquary.util.LanguageHelper; import net.minecraft.inventory.Container; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; @@ -20,18 +20,18 @@ public GuiAlkahestTome(Container container) { @Override protected void drawGuiContainerForegroundLayer(int x, int y) { - this.drawCenteredPositionedString(this.mc.standardGalacticFontRenderer, "Perform basic,;intermediate or;advanced Alkahestry.", 146, 4, 0000000); - this.drawPositionedString(this.fontRendererObj, LanguageHelper.getLocalization("gui.tome.text"), 16, 36, 0000000); + this.drawCenteredPositionedString(this.mc.standardGalacticFontRenderer, "Perform basic,;intermediate or;advanced Alkahestry.", 146, 4, 0); + this.drawPositionedString(this.fontRendererObj, "gui.tome.text", 16, 36, 0); } @Override protected void drawGuiContainerBackgroundLayer(float f, int i, int j) { - this.mc.renderEngine.bindTexture(this.BOOK_TEX); + this.bindTexture(this.BOOK_TEX); this.drawTexturedModalRect((this.width - 146) / 2, (this.height - 179) / 2, 0, 0, 146, 179); this.drawTexturedModalRect(((this.width - 16) / 2) + 19, ((this.height - 179) / 2) + 148, 0, 180, 10, 10); this.drawTexturedModalRect(((this.width - 16) / 2) - 14, ((this.height - 179) / 2) + 148, 10, 180, 10, 10); - this.drawItemStack(new ItemStack(ContentHandler.getItem(Names.alkahest_tome)), (this.width - 16) / 2, ((this.height - 179) / 2) + 145); + this.drawItemStack(new ItemStack(ContentHandler.getItem(Names.alkahestry_tome)), (this.width - 16) / 2, ((this.height - 179) / 2) + 145); this.drawItemStack(new ItemStack(Items.redstone), ((this.width - 16) / 2) - 32, ((this.height - 179) / 2) + 145); this.drawItemStack(new ItemStack(Blocks.redstone_block), ((this.width - 16) / 2) + 32, ((this.height - 179) / 2) + 145); } diff --git a/src/main/java/xreliquary/client/gui/GuiBase.java b/src/main/java/xreliquary/client/gui/GuiBase.java deleted file mode 100644 index 846d9ccc..00000000 --- a/src/main/java/xreliquary/client/gui/GuiBase.java +++ /dev/null @@ -1,75 +0,0 @@ -package xreliquary.client.gui; - -import net.minecraft.client.gui.FontRenderer; -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.inventory.Container; -import net.minecraft.item.ItemStack; -import org.lwjgl.opengl.GL11; - -/** - * GuiBase, a helper class for guis. Handles String parsing and positioning, and easily drawing ItemStacks. - * - * @author TheMike - */ -public abstract class GuiBase extends GuiContainer { - - public GuiBase(Container container) { - super(container); - } - - /** - * Draws a positioned set of strings, with a new line indicated by ';'. - * @param renderer The font renderer. Should be 'mc.fontRenderer' unless your using the Galactic fontRenderer. - * @param values The String to parse. New line indicated by ';'. - * @param x The x position of all of the lines. - * @param baseY The base Y position. This will be modified by 9 each new line. - * @param color The color value. - */ - public void drawPositionedString(FontRenderer renderer, String values, int x, int baseY, int color) { - int count = 1; - for(String value : values.split(";")) { - int y = baseY + (count * renderer.FONT_HEIGHT); - renderer.drawString(value, x + 15, y, color); - count++; - } - } - - /** - * Not much different from drawPositionedString(), but this centers the String on the x axis. - * @param renderer The font renderer. Should be 'mc.fontRenderer' unless your using the Galactic fontRenderer. - * @param values The String to parse. New line indicated by ';'. - * @param xLimit The maximum x value allowed for centering. - * @param baseY The base Y position. This will be modified by 9 each new line. - * @param color The color value. - */ - public void drawCenteredPositionedString(FontRenderer renderer, String values, int xLimit, int baseY, int color) { - int count = 1; - for(String value : values.split(";")) { - int x = (xLimit - renderer.getStringWidth(value)) / 2; - int y = baseY + (count * renderer.FONT_HEIGHT); - renderer.drawString(value, x + 15, y, color); - count++; - } - } - - /** - * Provides an easy way to draw an ItemStack into the inventory. - * @param stack The ItemStack to be drawn. - * @param x Where the stack will be placed on the x axis. - * @param y Where the stack will be placed on the y axis. - */ - public void drawItemStack(ItemStack stack, int x, int y) { - GL11.glDisable(GL11.GL_LIGHTING); - this.zLevel = 200.0F; - itemRender.zLevel = 200.0F; - itemRender.renderItemAndEffectIntoGUI(stack.getItem().getFontRenderer(stack), this.mc.getTextureManager(), stack, x, y); - itemRender.renderItemOverlayIntoGUI(stack.getItem().getFontRenderer(stack), this.mc.getTextureManager(), stack, x, y); - this.zLevel = 0.0F; - itemRender.zLevel = 0.0F; - GL11.glEnable(GL11.GL_LIGHTING); - } - - @Override - abstract protected void drawGuiContainerBackgroundLayer(float f, int i, int j); - -} diff --git a/src/main/java/xreliquary/client/model/ModelHandgun.java b/src/main/java/xreliquary/client/model/ModelHandgun.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/client/render/ItemRendererHandgun.java b/src/main/java/xreliquary/client/render/ItemRendererHandgun.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/common/CommonProxy.java b/src/main/java/xreliquary/common/CommonProxy.java old mode 100755 new mode 100644 index f76e369e..13f09e53 --- a/src/main/java/xreliquary/common/CommonProxy.java +++ b/src/main/java/xreliquary/common/CommonProxy.java @@ -1,21 +1,20 @@ package xreliquary.common; +import lib.enderwizards.sandstone.mod.config.TomlConfig; import cpw.mods.fml.common.FMLCommonHandler; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fluids.FluidContainerRegistry; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; - import xreliquary.Reliquary; import xreliquary.blocks.tile.TileEntityAltar; import xreliquary.blocks.tile.TileEntityMortar; -import xreliquary.init.ContentHandler; import xreliquary.common.gui.GUIHandler; import xreliquary.entities.*; -import xreliquary.entities.EntityStormShot; import xreliquary.event.CommonEventHandler; import xreliquary.init.XRRecipes; import xreliquary.util.alkahestry.Alkahestry; +import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.common.network.NetworkRegistry; import cpw.mods.fml.common.registry.EntityRegistry; @@ -23,18 +22,8 @@ public class CommonProxy { - public int chaliceMultiplier; - public int tomeRedstoneLimit; - public int handgunHUDPosition; - public int heroMedallionLevelThreshold; - public int twilightCloakLightThreshold; - public boolean disableCoinAudio; - - public void preInit() { - this.initOptions(); - + public void preInit() { try { - ContentHandler.init(); XRRecipes.init(); Alkahestry.init(); } catch(Exception e) { e.printStackTrace(); System.exit(1); } @@ -53,12 +42,12 @@ public void init() { } public void initOptions() { - disableCoinAudio = Reliquary.CONFIG.get("Misc_Options", "disableCoinAudio", false).getBoolean(Reference.DISABLE_COIN_AUDIO_DEFAULT); - chaliceMultiplier = Reliquary.CONFIG.get("Misc_Options", "chaliceMultiplier", 1).getInt(1); - tomeRedstoneLimit = Reliquary.CONFIG.get("Misc_Options", "tomeRedstoneLimit", 256).getInt(256); - heroMedallionLevelThreshold = Reliquary.CONFIG.get("Misc_Options", "heroMedallionLevelThreshold", 30).getInt(30); - twilightCloakLightThreshold = Reliquary.CONFIG.get("Misc_Options", "twilightCloakLightThreshold", 4).getInt(4); - handgunHUDPosition = Reliquary.CONFIG.get("Misc_Options", "handgunHUDPosition", 3).getInt(3); + Reliquary.CONFIG.require(Names.fortune_coin, "disableAudio", false); + Reliquary.CONFIG.require(Names.emperor_chalice, "multiplier", 1); + Reliquary.CONFIG.require(Names.alkahestry_tome, "redstoneLimit", 256); + Reliquary.CONFIG.require(Names.hero_medallion, "xpLevelCap", 30); + Reliquary.CONFIG.require(Names.twilight_cloak, "maxLightLevel", 4); + Reliquary.CONFIG.require(Names.handgun, "hudPosition", 3); } public void registerTileEntities() { @@ -67,7 +56,6 @@ public void registerTileEntities() { } public void registerEntities() { - EntityRegistry.registerModEntity(EntityHolyHandGrenade.class, "entityHGrenade", 0, Reliquary.INSTANCE, 128, 5, true); EntityRegistry.registerModEntity(EntityGlowingWater.class, "entityHolyWater", 1, Reliquary.INSTANCE, 128, 5, true); EntityRegistry.registerModEntity(EntitySpecialSnowball.class, "entitySpecialSnowball", 2, Reliquary.INSTANCE, 128, 5, true); @@ -90,6 +78,7 @@ public void registerEntities() { EntityRegistry.registerModEntity(EntityCondensedSplashWeakness.class, "entitySplashWeakness", 19, Reliquary.INSTANCE, 128, 5, true); EntityRegistry.registerModEntity(EntityCondensedSplashWither.class, "entitySplashWither", 20, Reliquary.INSTANCE, 128, 5, true); EntityRegistry.registerModEntity(EntityCondensedFertility.class, "entitySplashFertility", 21, Reliquary.INSTANCE, 128, 5, true); + EntityRegistry.registerModEntity(EntityKrakenSlime.class, "entityKSlime", 22, Reliquary.INSTANCE, 128, 5, true); } } diff --git a/src/main/java/xreliquary/entities/ConcussiveExplosion.java b/src/main/java/xreliquary/entities/ConcussiveExplosion.java old mode 100755 new mode 100644 index 73035dbc..01653657 --- a/src/main/java/xreliquary/entities/ConcussiveExplosion.java +++ b/src/main/java/xreliquary/entities/ConcussiveExplosion.java @@ -1,6 +1,5 @@ package xreliquary.entities; -import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -27,7 +26,6 @@ public class ConcussiveExplosion extends Explosion { public double explosionZ; public Entity exploder; public float explosionSize; - public List field_77281_g = new ArrayList(); private Map field_77288_k = new HashMap(); private EntityPlayer shootingEntity; public boolean hurtsPlayer; diff --git a/src/main/java/xreliquary/entities/EntityBlazeShot.java b/src/main/java/xreliquary/entities/EntityBlazeShot.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityBusterShot.java b/src/main/java/xreliquary/entities/EntityBusterShot.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityConcussiveShot.java b/src/main/java/xreliquary/entities/EntityConcussiveShot.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityCondensedFertility.java b/src/main/java/xreliquary/entities/EntityCondensedFertility.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityCondensedSplashAphrodite.java b/src/main/java/xreliquary/entities/EntityCondensedSplashAphrodite.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityCondensedSplashBlindness.java b/src/main/java/xreliquary/entities/EntityCondensedSplashBlindness.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityCondensedSplashConfusion.java b/src/main/java/xreliquary/entities/EntityCondensedSplashConfusion.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityCondensedSplashHarm.java b/src/main/java/xreliquary/entities/EntityCondensedSplashHarm.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityCondensedSplashPoison.java b/src/main/java/xreliquary/entities/EntityCondensedSplashPoison.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityCondensedSplashRuin.java b/src/main/java/xreliquary/entities/EntityCondensedSplashRuin.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityCondensedSplashSlowness.java b/src/main/java/xreliquary/entities/EntityCondensedSplashSlowness.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityCondensedSplashWeakness.java b/src/main/java/xreliquary/entities/EntityCondensedSplashWeakness.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityCondensedSplashWither.java b/src/main/java/xreliquary/entities/EntityCondensedSplashWither.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityEnderShot.java b/src/main/java/xreliquary/entities/EntityEnderShot.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityExorcismShot.java b/src/main/java/xreliquary/entities/EntityExorcismShot.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityGlowingWater.java b/src/main/java/xreliquary/entities/EntityGlowingWater.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityHolyHandGrenade.java b/src/main/java/xreliquary/entities/EntityHolyHandGrenade.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityKrakenSlime.java b/src/main/java/xreliquary/entities/EntityKrakenSlime.java new file mode 100644 index 00000000..5dfc85c4 --- /dev/null +++ b/src/main/java/xreliquary/entities/EntityKrakenSlime.java @@ -0,0 +1,64 @@ +package xreliquary.entities; + +import net.minecraft.entity.EntityLiving; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.projectile.EntityThrowable; +import net.minecraft.potion.Potion; +import net.minecraft.potion.PotionEffect; +import net.minecraft.util.DamageSource; +import net.minecraft.util.MovingObjectPosition; +import net.minecraft.world.World; + +public class EntityKrakenSlime extends EntityThrowable { + + public static DamageSource SOURCE = new DamageSource("slimed").setDamageIsAbsolute().setProjectile().setMagicDamage(); + + public EntityKrakenSlime(World world) { + super(world); + } + + public EntityKrakenSlime(World world, EntityPlayer player) { + super(world, player); + } + + @Override + protected void onImpact(MovingObjectPosition object) { + if(this.worldObj.isRemote) + return; + if(object.typeOfHit == MovingObjectPosition.MovingObjectType.ENTITY && object.entityHit instanceof EntityLiving) { + EntityLiving living = (EntityLiving) object.entityHit; + living.attackEntityFrom(SOURCE, 7.5f); + } + this.worldObj.playSoundAtEntity(this, "mob.slime.big", 0.5F, 0.4F / (worldObj.rand.nextFloat() * 0.4F + 0.8F)); + this.setDead(); + } + + @Override + protected float getGravityVelocity() { + return 0F; + } + + @Override + public void onUpdate() { + super.onUpdate(); + + if(this.worldObj.isRemote) + return; + + for (int count = 0; count < 4; ++count) { + float amplifier = 0.25F; + worldObj.spawnParticle("bubble", posX - motionX * amplifier, posY - motionY * amplifier, posZ - motionZ * amplifier, motionX, motionY, motionZ); + } + + if(this.motionX == 0 && this.motionY == 0 && this.motionZ == 0) { + this.setDead(); + return; + } + + if(this.posY > this.worldObj.getHeight() || this.posY <= 0) { + this.setDead(); + } + + } + +} diff --git a/src/main/java/xreliquary/entities/EntityNeutralShot.java b/src/main/java/xreliquary/entities/EntityNeutralShot.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntitySandShot.java b/src/main/java/xreliquary/entities/EntitySandShot.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntitySeekerShot.java b/src/main/java/xreliquary/entities/EntitySeekerShot.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntitySpecialSnowball.java b/src/main/java/xreliquary/entities/EntitySpecialSnowball.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/entities/EntityStormShot.java b/src/main/java/xreliquary/entities/EntityStormShot.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/event/ClientEventHandler.java b/src/main/java/xreliquary/event/ClientEventHandler.java index c6b25ccb..4e0450fa 100644 --- a/src/main/java/xreliquary/event/ClientEventHandler.java +++ b/src/main/java/xreliquary/event/ClientEventHandler.java @@ -15,7 +15,7 @@ import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; import xreliquary.Reliquary; -import xreliquary.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentHandler; import xreliquary.items.ItemHandgun; import xreliquary.lib.Names; @@ -80,7 +80,7 @@ private static void renderHandgunHUD(Minecraft minecraft, EntityPlayer player, I int hudOverlayX = 0; int hudOverlayY = 0; - switch (Reliquary.PROXY.handgunHUDPosition) + switch (Reliquary.CONFIG.getInt(Names.handgun, "hudPosition")) { case 0: { diff --git a/src/main/java/xreliquary/event/CommonEventHandler.java b/src/main/java/xreliquary/event/CommonEventHandler.java old mode 100755 new mode 100644 index e7166e54..eb3ed96b --- a/src/main/java/xreliquary/event/CommonEventHandler.java +++ b/src/main/java/xreliquary/event/CommonEventHandler.java @@ -13,9 +13,11 @@ import net.minecraft.util.FoodStats; import net.minecraftforge.event.entity.living.LivingAttackEvent; import net.minecraftforge.event.entity.living.LivingDropsEvent; -import xreliquary.init.ContentHandler; +import net.minecraftforge.event.entity.player.PlayerUseItemEvent; +import lib.enderwizards.sandstone.init.ContentHandler; +import xreliquary.entities.EntityKrakenSlime; import xreliquary.lib.Names; -import xreliquary.util.ObjectUtils; +import lib.enderwizards.sandstone.util.ContentHelper; import net.minecraft.entity.item.EntityItem; import net.minecraft.init.Blocks; import net.minecraft.init.Items; @@ -28,6 +30,7 @@ import java.util.Random; public class CommonEventHandler { + @SubscribeEvent public void onCraftingPotion(PlayerEvent.ItemCraftedEvent event) { for (int slot = 0; slot < event.craftMatrix.getSizeInventory(); slot++) { @@ -283,13 +286,13 @@ public void onCraftingAlkahest(PlayerEvent.ItemCraftedEvent event) { for (int count = 0; count < event.craftMatrix.getSizeInventory(); count++) { ItemStack stack = event.craftMatrix.getStackInSlot(count); if (stack != null) { - if (ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getItemIdentifier(ContentHandler.getItem(Names.alkahest_tome)))) { + if (ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIdent(ContentHandler.getItem(Names.alkahestry_tome)))) { tome = count; - } else if (ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getItemIdentifier(Items.redstone)) || ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getBlockIdentifier(Blocks.redstone_block))) { + } else if (ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIdent(Items.redstone)) || ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIndent(Blocks.redstone_block))) { isCharging = true; } else { if (Alkahestry.getDictionaryKey(stack) == null) { - recipe = Alkahestry.getRegistry().get(ObjectUtils.getItemIdentifier(stack.getItem())); + recipe = Alkahestry.getRegistry().get(ContentHelper.getIdent(stack.getItem())); } else { recipe = Alkahestry.getDictionaryKey(stack); } diff --git a/src/main/java/xreliquary/init/ContentHandler.java b/src/main/java/xreliquary/init/ContentHandler.java deleted file mode 100644 index bfe27d63..00000000 --- a/src/main/java/xreliquary/init/ContentHandler.java +++ /dev/null @@ -1,79 +0,0 @@ -package xreliquary.init; - -import com.google.common.reflect.ClassPath; -import cpw.mods.fml.common.registry.GameRegistry; -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import org.apache.logging.log4j.Level; -import xreliquary.Reliquary; -import xreliquary.lib.Reference; -import xreliquary.util.LogHelper; - -public class ContentHandler { - - private static final String blocksPath = "xreliquary.blocks"; - private static final String itemsPath = "xreliquary.items"; - - public static void init() { - try { - init(blocksPath); - init(itemsPath); - } catch(Exception e) { - e.printStackTrace(); - } - } - - private static void init(String packageName) throws Exception { - // Gets the classpath, and searches it for all classes in packageName. - ClassPath classPath = ClassPath.from(Reliquary.class.getClassLoader()); - for(ClassPath.ClassInfo info : classPath.getTopLevelClasses(packageName)) { - Class objClass = Class.forName(info.getName()); - checkAndRegister(objClass); - for(Class subClass : objClass.getClasses()) { - checkAndRegister(subClass); - } - } - } - - private static void checkAndRegister(Class objClass) throws Exception { - if(objClass.isAnnotationPresent(XRInit.class)) { - Object obj = objClass.newInstance(); - - // We've gotten the object, and confirmed it uses @XRInit, now let's check it for compatible types. - if(obj instanceof Item) { - Item item = (Item) obj; - GameRegistry.registerItem(item, item.getUnlocalizedName().substring(5)); - } else if(obj instanceof Block) { - Block block = (Block) obj; - if(((XRInit) objClass.getAnnotation(XRInit.class)).itemBlock() != XRInit.class) { - GameRegistry.registerBlock(block, ((XRInit) objClass.getAnnotation(XRInit.class)).itemBlock(), block.getUnlocalizedName().substring(5)); - } else - GameRegistry.registerBlock(block, block.getUnlocalizedName().substring(5)); - } else { - LogHelper.log(Level.WARN, "Class '" + objClass.getName() + "' is not a Block or an Item! You shouldn't be calling @XRInit on this! Ignoring!"); - } - } - } - - public static Block getBlock(String blockName) { - String selection = blockName; - if(!selection.contains("!")) - selection = Reference.MOD_ID + ":" + selection; - return (Block) Block.blockRegistry.getObject(selection); - } - - public static Item getItem(String itemName) { - String selection = itemName; - if(!selection.contains("!")) - selection = Reference.MOD_ID + ":" + selection; - return (Item) Item.itemRegistry.getObject(selection); - } - - public static Item getItemBlock(String blockName) { - String selection = blockName; - if(!selection.contains("!")) - selection = Reference.MOD_ID + ":" + selection; - return Item.getItemFromBlock((Block) Block.blockRegistry.getObject(selection)); - } - -} diff --git a/src/main/java/xreliquary/init/XRInit.java b/src/main/java/xreliquary/init/XRInit.java deleted file mode 100644 index 83d918ce..00000000 --- a/src/main/java/xreliquary/init/XRInit.java +++ /dev/null @@ -1,9 +0,0 @@ -package xreliquary.init; - -import java.lang.annotation.*; - -@Retention(RetentionPolicy.RUNTIME) -@Target(ElementType.TYPE) -public @interface XRInit { - Class itemBlock() default XRInit.class; -} diff --git a/src/main/java/xreliquary/init/XRRecipes.java b/src/main/java/xreliquary/init/XRRecipes.java index f4e3b31b..52d72d54 100644 --- a/src/main/java/xreliquary/init/XRRecipes.java +++ b/src/main/java/xreliquary/init/XRRecipes.java @@ -1,6 +1,7 @@ package xreliquary.init; import cpw.mods.fml.common.registry.GameRegistry; +import lib.enderwizards.sandstone.init.ContentHandler; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; @@ -110,8 +111,8 @@ public static void init() { GameRegistry.addRecipe(new ItemStack(ContentHandler.getItem(Names.handgun), 1, 0), new Object[] { "bim", "isi", "igi", 'i', Items.iron_ingot, 'b', gunPart(1, 1), 'm', gunPart(1, 2), 'g', gunPart(1, 0), 's', Items.slime_ball }); // tome and alkahestry recipes - ItemStack tomeStack = new ItemStack(ContentHandler.getItem(Names.alkahest_tome), 1, 0); - tomeStack.setItemDamage(Reliquary.PROXY.tomeRedstoneLimit); + ItemStack tomeStack = new ItemStack(ContentHandler.getItem(Names.alkahestry_tome), 1, 0); + tomeStack.setItemDamage((Integer) Reliquary.CONFIG.get(Names.alkahestry_tome, "redstoneLimit")); GameRegistry.addShapelessRecipe(tomeStack, new Object[] { Items.book, Items.blaze_rod, Items.magma_cream, Items.gold_ingot, Blocks.glowstone, Items.nether_wart, new ItemStack(Items.skull, 1, 1), Items.ghast_tear, Items.lava_bucket }); GameRegistry.addRecipe(new AlkahestryRedstoneRecipe()); @@ -194,6 +195,9 @@ public static void init() { // destruction catalyst GameRegistry.addRecipe(new ItemStack(ContentHandler.getItem(Names.destruction_catalyst), 1, 0), new Object[] { "rrr", "rtr", "rrf", 'f', Items.flint, 't', new ItemStack(ContentHandler.getItem(Names.midas_touchstone), 1, -1), 'r', Items.blaze_rod }); + // serpent staff + GameRegistry.addRecipe(new ItemStack(ContentHandler.getItem(Names.serpent_staff), 1), "oeo", "sks", " s ", 'o', Blocks.obsidian, 'e', Items.ender_eye, 's', Items.stick, 'k', ContentHandler.getItem(Names.kraken_shell)); + /* potions and splash potions */ // empty vial diff --git a/src/main/java/xreliquary/items/IVoidUpgradable.java b/src/main/java/xreliquary/items/IVoidUpgradable.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/items/ItemAlkahestryTome.java b/src/main/java/xreliquary/items/ItemAlkahestryTome.java old mode 100755 new mode 100644 index 76e0335a..ac991906 --- a/src/main/java/xreliquary/items/ItemAlkahestryTome.java +++ b/src/main/java/xreliquary/items/ItemAlkahestryTome.java @@ -4,6 +4,7 @@ import com.google.common.collect.ImmutableMap; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.EnumRarity; @@ -11,19 +12,19 @@ import net.minecraft.item.ItemStack; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemAlkahestryTome extends ItemBase { public ItemAlkahestryTome() { - super(Reference.MOD_ID, Names.alkahest_tome); + super(Names.alkahestry_tome); this.setCreativeTab(Reliquary.CREATIVE_TAB); - this.setMaxDamage(Reliquary.PROXY.tomeRedstoneLimit + 1); + this.setMaxDamage(((Integer) Reliquary.CONFIG.get(Names.alkahestry_tome, "redstoneLimit")) + 1); this.setMaxStackSize(1); this.canRepair = false; this.hasSubtypes = true; @@ -45,7 +46,7 @@ public boolean doesContainerItemLeaveCraftingGrid(ItemStack ist) { @Override public void addInformation(ItemStack stack, EntityPlayer par2EntityPlayer, List list, boolean par4) { - this.formatTooltip(ImmutableMap.of("redstoneAmount", String.valueOf((Reliquary.PROXY.tomeRedstoneLimit - stack.getItemDamage())), "redstoneLimit", String.valueOf(Reliquary.PROXY.tomeRedstoneLimit)), stack, list); + this.formatTooltip(ImmutableMap.of("redstoneAmount", String.valueOf((Reliquary.CONFIG.getInt(Names.alkahestry_tome, "redstoneLimit") - stack.getItemDamage())), "redstoneLimit", String.valueOf(Reliquary.CONFIG.getInt(Names.alkahestry_tome, "redstoneLimit"))), stack, list); } @Override @@ -65,7 +66,7 @@ public ItemStack getContainerItem(ItemStack stack) { @Override public void getSubItems(Item item, CreativeTabs tabs, List list) { ItemStack tomeStack = new ItemStack(item, 1, 0); - tomeStack.setItemDamage(Reliquary.PROXY.tomeRedstoneLimit); + tomeStack.setItemDamage(Reliquary.CONFIG.getInt(Names.alkahestry_tome, "redstoneLimit")); list.add(tomeStack); } diff --git a/src/main/java/xreliquary/items/ItemAngelheartVial.java b/src/main/java/xreliquary/items/ItemAngelheartVial.java index 4d6ad4db..99451e52 100644 --- a/src/main/java/xreliquary/items/ItemAngelheartVial.java +++ b/src/main/java/xreliquary/items/ItemAngelheartVial.java @@ -2,21 +2,19 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.entity.player.EntityPlayer; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.item.ItemStack; -import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.entities.EntityGlowingWater; -import xreliquary.init.ContentHandler; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemAngelheartVial extends ItemBase { public ItemAngelheartVial() { - super(Reference.MOD_ID, Names.angelheart_vial); + super(Names.angelheart_vial); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(64); diff --git a/src/main/java/xreliquary/items/ItemAngelicFeather.java b/src/main/java/xreliquary/items/ItemAngelicFeather.java index ab1c9147..d545639d 100644 --- a/src/main/java/xreliquary/items/ItemAngelicFeather.java +++ b/src/main/java/xreliquary/items/ItemAngelicFeather.java @@ -2,6 +2,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.EnumRarity; @@ -10,27 +11,26 @@ import net.minecraft.potion.PotionEffect; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; -import xreliquary.lib.Reference; /** * Created by Xeno on 5/15/14. */ -@XRInit +@ContentInit public class ItemAngelicFeather extends ItemBase { public ItemAngelicFeather() { - super(Reference.MOD_ID, Names.angelic_feather); + super(Names.angelic_feather); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxStackSize(1); canRepair = false; } //so it can be extended by phoenix down - protected ItemAngelicFeather(String modid, String name) { - super(modid, name); + protected ItemAngelicFeather(String name) { + super(name); } @Override diff --git a/src/main/java/xreliquary/items/ItemBase.java b/src/main/java/xreliquary/items/ItemBase.java deleted file mode 100644 index 2a44cd2c..00000000 --- a/src/main/java/xreliquary/items/ItemBase.java +++ /dev/null @@ -1,88 +0,0 @@ -package xreliquary.items; - -import java.util.Iterator; -import java.util.List; -import java.util.Map.Entry; - -import net.minecraft.client.renderer.texture.*; -import xreliquary.util.LanguageHelper; - -import com.google.common.collect.ImmutableMap; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -/** - * ItemBase, a helper class for items. Handles language names, language - * tooltips, and icon registering. - * - * @author TheMike - */ -public class ItemBase extends Item { - - String modName, textureName; - - public ItemBase(String modName, String textureName) { - this.modName = modName; - this.textureName = textureName; - this.setUnlocalizedName(textureName); - } - - /** - * Just a call to formatTooltip(). If you are overriding this function, call - * formatTooltip() directly and DO NOT call super.addInformation(). - */ - @Override - public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean whatDoesThisEvenDo) { - this.formatTooltip(null, stack, list); - } - - /** - * Used to format tooltips. Grabs tooltip from language registry with the - * entry 'item.unlocalizedName.tooltip'. Has support for Handlebars-style - * templating, and line breaking using '\n'. - * - * @param toFormat - * An ImmutableMap that has all the regex keys and values. Regex - * strings are handled on the tooltip by including '{{regexKey}}' - * with your regex key, of course. - * @param stack - * The ItemStack passed from addInformation. - * @param list - * List of description lines passed from addInformation. - */ - public void formatTooltip(ImmutableMap toFormat, ItemStack stack, List list) { - String langTooltip = LanguageHelper.getLocalization(this.getUnlocalizedName(stack) + ".tooltip"); - if (langTooltip == null) - return; - if (toFormat != null) { - Iterator> entrySet = toFormat.entrySet().iterator(); - while (entrySet.hasNext()) { - Entry toReplace = entrySet.next(); - langTooltip = langTooltip.replace("{{" + toReplace.getKey() + "}}", toReplace.getValue()); - } - } - - for (String descriptionLine : langTooltip.split(";")) { - if (descriptionLine != null && descriptionLine.length() > 0) - list.add(descriptionLine); - } - } - - @Override - @SideOnly(Side.CLIENT) - public String getItemStackDisplayName(ItemStack stack) { - return LanguageHelper.getLocalization(this.getUnlocalizedNameInefficiently(stack) + ".name"); - } - - @Override - @SideOnly(Side.CLIENT) - public void registerIcons(IIconRegister iconRegister) { - itemIcon = iconRegister.registerIcon(this.modName + ":" + this.textureName); - } - -} \ No newline at end of file diff --git a/src/main/java/xreliquary/items/ItemBullet.java b/src/main/java/xreliquary/items/ItemBullet.java old mode 100755 new mode 100644 index d3711897..26a14c28 --- a/src/main/java/xreliquary/items/ItemBullet.java +++ b/src/main/java/xreliquary/items/ItemBullet.java @@ -2,20 +2,21 @@ import java.util.List; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Colors; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemBullet extends ItemBase { // 0 = Empty, 1 = Neutral, 2 = Exorcism, 3 = Blaze @@ -23,7 +24,7 @@ public class ItemBullet extends ItemBase { // 8 = Sand, 9 = Storm public ItemBullet() { - super(Reference.MOD_ID, Names.bullet); + super(Names.bullet); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxStackSize(64); this.setHasSubtypes(true); diff --git a/src/main/java/xreliquary/items/ItemClawsOfTheFiredrinker.java b/src/main/java/xreliquary/items/ItemClawsOfTheFiredrinker.java index 7f667d32..1112ac66 100644 --- a/src/main/java/xreliquary/items/ItemClawsOfTheFiredrinker.java +++ b/src/main/java/xreliquary/items/ItemClawsOfTheFiredrinker.java @@ -2,17 +2,18 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.item.ItemStack; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemClawsOfTheFiredrinker extends ItemBase { public ItemClawsOfTheFiredrinker() { - super(Reference.MOD_ID, Names.claws_of_the_firedrinker); + super(Names.claws_of_the_firedrinker); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(1); diff --git a/src/main/java/xreliquary/items/ItemCondensedPotion.java b/src/main/java/xreliquary/items/ItemCondensedPotion.java old mode 100755 new mode 100644 index 38f7374b..8b4b1582 --- a/src/main/java/xreliquary/items/ItemCondensedPotion.java +++ b/src/main/java/xreliquary/items/ItemCondensedPotion.java @@ -2,6 +2,7 @@ import java.util.List; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; @@ -28,19 +29,19 @@ import xreliquary.entities.EntityCondensedSplashWeakness; import xreliquary.entities.EntityCondensedSplashWither; import xreliquary.event.ClientEventHandler; -import xreliquary.init.ContentHandler; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Colors; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemCondensedPotion extends ItemBase { public ItemCondensedPotion() { - super(Reference.MOD_ID, Names.condensed_potion); + super(Names.condensed_potion); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(16); diff --git a/src/main/java/xreliquary/items/ItemCrimsonCloth.java b/src/main/java/xreliquary/items/ItemCrimsonCloth.java index a30ef237..ac83be7e 100644 --- a/src/main/java/xreliquary/items/ItemCrimsonCloth.java +++ b/src/main/java/xreliquary/items/ItemCrimsonCloth.java @@ -2,16 +2,17 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.item.ItemStack; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemCrimsonCloth extends ItemBase { public ItemCrimsonCloth() { - super(Reference.MOD_ID, Names.crimson_cloth); + super(Names.crimson_cloth); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(64); diff --git a/src/main/java/xreliquary/items/ItemDestructionCatalyst.java b/src/main/java/xreliquary/items/ItemDestructionCatalyst.java old mode 100755 new mode 100644 index 308ad51b..7127444b --- a/src/main/java/xreliquary/items/ItemDestructionCatalyst.java +++ b/src/main/java/xreliquary/items/ItemDestructionCatalyst.java @@ -3,8 +3,9 @@ import java.util.List; import com.google.common.collect.ImmutableList; -import xreliquary.init.XRInit; -import xreliquary.util.ObjectUtils; +import lib.enderwizards.sandstone.init.ContentInit; +import lib.enderwizards.sandstone.items.ItemBase; +import lib.enderwizards.sandstone.util.ContentHelper; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; import net.minecraft.init.Items; @@ -15,13 +16,13 @@ import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemDestructionCatalyst extends ItemBase { public static List ids = ImmutableList.of("minecraft:dirt", "minecraft:grass", "minecraft:gravel", "minecraft:cobblestone", "minecraft:stone", "minecraft:sand", "minecraft:sandstone", "minecraft:snow", "minecraft:soul_sand", "minecraft:netherrack", "minecraft:end_stone"); public ItemDestructionCatalyst() { - super(Reference.MOD_ID, Names.destruction_catalyst); + super(Names.destruction_catalyst); this.setMaxDamage(0); this.setMaxStackSize(1); canRepair = false; @@ -45,7 +46,7 @@ public void doExplosion(World world, int x, int y, int z, int side, EntityPlayer for (int xD = -1; xD <= 1; xD++) { for (int yD = -1; yD <= 1; yD++) { for (int zD = -1; zD <= 1; zD++) { - if (isBreakable(ObjectUtils.getBlockIdentifier(world.getBlock(x + xD, y + yD, z + zD)))) { + if (isBreakable(ContentHelper.getIndent(world.getBlock(x + xD, y + yD, z + zD)))) { world.setBlock(x + xD, y + yD, z + zD, Blocks.air); if (world.rand.nextInt(2) == 0) { world.spawnParticle("largeexplode", x + xD, y + yD, z + zD, 1.0D, 0.0D, 0.0D); diff --git a/src/main/java/xreliquary/items/ItemDragonClaws.java b/src/main/java/xreliquary/items/ItemDragonClaws.java index 07c7fbf4..b36bb328 100644 --- a/src/main/java/xreliquary/items/ItemDragonClaws.java +++ b/src/main/java/xreliquary/items/ItemDragonClaws.java @@ -2,17 +2,18 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.item.ItemStack; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemDragonClaws extends ItemBase { public ItemDragonClaws() { - super(Reference.MOD_ID, Names.dragon_claws); + super(Names.dragon_claws); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(1); diff --git a/src/main/java/xreliquary/items/ItemDragonTalon.java b/src/main/java/xreliquary/items/ItemDragonTalon.java index 8e650fda..4001ff77 100644 --- a/src/main/java/xreliquary/items/ItemDragonTalon.java +++ b/src/main/java/xreliquary/items/ItemDragonTalon.java @@ -2,17 +2,18 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.item.ItemStack; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemDragonTalon extends ItemBase { public ItemDragonTalon() { - super(Reference.MOD_ID, Names.dragon_talon); + super(Names.dragon_talon); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(64); diff --git a/src/main/java/xreliquary/items/ItemElsewhereFlask.java b/src/main/java/xreliquary/items/ItemElsewhereFlask.java index 3e1f8123..29b8c748 100644 --- a/src/main/java/xreliquary/items/ItemElsewhereFlask.java +++ b/src/main/java/xreliquary/items/ItemElsewhereFlask.java @@ -3,27 +3,22 @@ import com.google.common.collect.ImmutableMap; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.creativetab.CreativeTabs; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.EnumRarity; -import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -import xreliquary.util.LanguageHelper; -import java.util.Iterator; import java.util.List; -import java.util.Map; -@XRInit +@ContentInit public class ItemElsewhereFlask extends ItemBase { public ItemElsewhereFlask() { - super(Reference.MOD_ID, Names.elsewhere_flask); + super(Names.elsewhere_flask); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxStackSize(1); this.canRepair = false; diff --git a/src/main/java/xreliquary/items/ItemEmperorChalice.java b/src/main/java/xreliquary/items/ItemEmperorChalice.java old mode 100755 new mode 100644 index 8a3907e7..59d0f7cb --- a/src/main/java/xreliquary/items/ItemEmperorChalice.java +++ b/src/main/java/xreliquary/items/ItemEmperorChalice.java @@ -1,7 +1,8 @@ package xreliquary.items; -import xreliquary.init.XRInit; -import xreliquary.util.ObjectUtils; +import lib.enderwizards.sandstone.init.ContentInit; +import lib.enderwizards.sandstone.items.ItemBase; +import lib.enderwizards.sandstone.util.ContentHelper; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; @@ -18,11 +19,11 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemEmperorChalice extends ItemBase { public ItemEmperorChalice() { - super(Reference.MOD_ID, Names.emperor_chalice); + super(Names.emperor_chalice); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(1); @@ -74,8 +75,9 @@ public ItemStack onEaten(ItemStack ist, World world, EntityPlayer player) { if (world.isRemote) return ist; - player.getFoodStats().addStats(1, (float) (Reliquary.PROXY.chaliceMultiplier / 2)); - player.attackEntityFrom(DamageSource.drown, Reliquary.PROXY.chaliceMultiplier); + int multiplier = (Integer) Reliquary.CONFIG.get(Names.emperor_chalice, "multiplier"); + player.getFoodStats().addStats(1, (float) (multiplier / 2)); + player.attackEntityFrom(DamageSource.drown, multiplier); return new ItemStack(this, 1, 0); } @@ -106,8 +108,8 @@ public ItemStack onItemRightClick(ItemStack ist, World world, EntityPlayer playe if (!player.canPlayerEdit(var13, var14, var15, mop.sideHit, ist)) return ist; - String ident = ObjectUtils.getBlockIdentifier(world.getBlock(var13, var14, var15)); - if ((ident.equals(ObjectUtils.getBlockIdentifier(Blocks.flowing_water)) || ident.equals(ObjectUtils.getBlockIdentifier(Blocks.water))) && world.getBlockMetadata(var13, var14, var15) == 0) { + String ident = ContentHelper.getIndent(world.getBlock(var13, var14, var15)); + if ((ident.equals(ContentHelper.getIndent(Blocks.flowing_water)) || ident.equals(ContentHelper.getIndent(Blocks.water))) && world.getBlockMetadata(var13, var14, var15) == 0) { world.setBlock(var13, var14, var15, Blocks.air); return new ItemStack(ist.getItem(), 1, 1); diff --git a/src/main/java/xreliquary/items/ItemEmptyVoidTear.java b/src/main/java/xreliquary/items/ItemEmptyVoidTear.java old mode 100755 new mode 100644 index c7f2c378..e4d1efa2 --- a/src/main/java/xreliquary/items/ItemEmptyVoidTear.java +++ b/src/main/java/xreliquary/items/ItemEmptyVoidTear.java @@ -1,8 +1,9 @@ package xreliquary.items; -import xreliquary.init.ContentHandler; -import xreliquary.init.XRInit; -import xreliquary.util.ObjectUtils; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentInit; +import lib.enderwizards.sandstone.items.ItemBase; +import lib.enderwizards.sandstone.util.ContentHelper; import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; @@ -12,13 +13,12 @@ import net.minecraft.world.World; import xreliquary.Reliquary; import xreliquary.lib.Names; -import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemEmptyVoidTear extends ItemBase { public ItemEmptyVoidTear() { - super(Reference.MOD_ID, Names.void_tear_empty); + super(Names.void_tear_empty); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(64); @@ -66,7 +66,7 @@ public ItemStack compressInventoryIntoTearForPlayer(IInventory inventory, Entity Item item = target.getItem(); int itemQuantity = getQuantityInInventory(target, inventory); ItemStack tear = new ItemStack(ContentHandler.getItem(Names.void_tear), 1); - tear.setTagCompound(createStackTagCompoundForTear(itemMeta, ObjectUtils.getItemIdentifier(item), itemQuantity)); + tear.setTagCompound(createStackTagCompoundForTear(itemMeta, ContentHelper.getIdent(item), itemQuantity)); findAndRemoveQuantity(inventory, new ItemStack(item, 1, itemMeta), itemQuantity); return tear; } @@ -109,7 +109,7 @@ public ItemStack getTargetItem(IInventory inventory) { if (ist == null) { continue; } - if (ObjectUtils.getItemIdentifier(ist.getItem()).equals(ObjectUtils.getItemIdentifier(this))) { + if (ContentHelper.getIdent(ist.getItem()).equals(ContentHelper.getIdent(this))) { continue; } if (ist.getMaxStackSize() == 1) { diff --git a/src/main/java/xreliquary/items/ItemEnderStaff.java b/src/main/java/xreliquary/items/ItemEnderStaff.java index aa91a75b..d8282a8a 100644 --- a/src/main/java/xreliquary/items/ItemEnderStaff.java +++ b/src/main/java/xreliquary/items/ItemEnderStaff.java @@ -3,8 +3,8 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLiving; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Items; import net.minecraft.item.EnumRarity; @@ -12,16 +12,15 @@ import net.minecraft.world.World; import xreliquary.Reliquary; import xreliquary.entities.EntityEnderStaffProjectile; -import xreliquary.entities.EntitySpecialSnowball; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemEnderStaff extends ItemBase { public ItemEnderStaff() { - super(Reference.MOD_ID, Names.ender_staff); + super(Names.ender_staff); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxStackSize(1); this.setMaxDamage(257); diff --git a/src/main/java/xreliquary/items/ItemFortuneCoin.java b/src/main/java/xreliquary/items/ItemFortuneCoin.java old mode 100755 new mode 100644 index ceb30c92..d95834d0 --- a/src/main/java/xreliquary/items/ItemFortuneCoin.java +++ b/src/main/java/xreliquary/items/ItemFortuneCoin.java @@ -3,6 +3,7 @@ import java.util.Iterator; import java.util.List; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; import net.minecraft.entity.item.EntityItem; @@ -15,18 +16,18 @@ import net.minecraft.util.IIcon; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; import xreliquary.util.NBTHelper; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemFortuneCoin extends ItemBase { public ItemFortuneCoin() { - super(Reference.MOD_ID, Names.fortune_coin); + super(Names.fortune_coin); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(1); @@ -71,7 +72,7 @@ public IIcon getIcon(ItemStack itemStack, int renderPass) { @Override public void onUpdate(ItemStack ist, World world, Entity e, int i, boolean f) { - if (!Reliquary.PROXY.disableCoinAudio) + if (!Reliquary.CONFIG.getBool(Names.fortune_coin, "disableAudio")) if (NBTHelper.getShort("soundTimer", ist) > 0) { if (NBTHelper.getShort("soundTimer", ist) % 2 == 0) { world.playSoundAtEntity(e, "random.orb", 0.1F, 0.5F * ((world.rand.nextFloat() - world.rand.nextFloat()) * 0.7F + 1.8F)); @@ -128,7 +129,7 @@ private void teleportEntityToPlayer(Entity item, EntityPlayer player) { double y = player.posY - player.height / 2F; double z = player.posZ + player.getLookVec().zCoord * 0.2D; item.setPosition(x, y, z); - if (!Reliquary.PROXY.disableCoinAudio) { + if (!Reliquary.CONFIG.getBool(Names.fortune_coin, "disableAudio")) { player.worldObj.playSoundAtEntity(player, "random.orb", 0.1F, 0.5F * ((player.worldObj.rand.nextFloat() - player.worldObj.rand.nextFloat()) * 0.7F + 1.8F)); } } @@ -184,7 +185,7 @@ public ItemStack onItemRightClick(ItemStack ist, World world, EntityPlayer playe if (player.isSneaking()) { player.setItemInUse(ist, this.getMaxItemUseDuration(ist)); } else { - if (!Reliquary.PROXY.disableCoinAudio) { + if (!Reliquary.CONFIG.getBool(Names.fortune_coin, "disableAudio")) { NBTHelper.setShort("soundTimer", ist, 6); } ist.setItemDamage(ist.getItemDamage() == 0 ? 1 : 0); diff --git a/src/main/java/xreliquary/items/ItemGlowingBread.java b/src/main/java/xreliquary/items/ItemGlowingBread.java old mode 100755 new mode 100644 index 6a1db3a4..9200344e --- a/src/main/java/xreliquary/items/ItemGlowingBread.java +++ b/src/main/java/xreliquary/items/ItemGlowingBread.java @@ -10,14 +10,14 @@ import net.minecraft.item.ItemStack; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -import xreliquary.util.LanguageHelper; +import lib.enderwizards.sandstone.util.LanguageHelper; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemGlowingBread extends ItemFood { public ItemGlowingBread() { diff --git a/src/main/java/xreliquary/items/ItemGlowingWater.java b/src/main/java/xreliquary/items/ItemGlowingWater.java old mode 100755 new mode 100644 index 4f09a1ca..e3a826eb --- a/src/main/java/xreliquary/items/ItemGlowingWater.java +++ b/src/main/java/xreliquary/items/ItemGlowingWater.java @@ -2,21 +2,22 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.world.World; import xreliquary.Reliquary; import xreliquary.entities.EntityGlowingWater; -import xreliquary.init.ContentHandler; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemGlowingWater extends ItemBase { public ItemGlowingWater() { - super(Reference.MOD_ID, Names.glowing_water); + super(Names.glowing_water); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(64); diff --git a/src/main/java/xreliquary/items/ItemGunPart.java b/src/main/java/xreliquary/items/ItemGunPart.java old mode 100755 new mode 100644 index 70225abf..5313b8e1 --- a/src/main/java/xreliquary/items/ItemGunPart.java +++ b/src/main/java/xreliquary/items/ItemGunPart.java @@ -2,26 +2,27 @@ import java.util.List; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemGunPart extends ItemBase { @SideOnly(Side.CLIENT) private IIcon[] icons; public ItemGunPart() { - super(Reference.MOD_ID, Names.gun_part); + super(Names.gun_part); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(1); diff --git a/src/main/java/xreliquary/items/ItemHandgun.java b/src/main/java/xreliquary/items/ItemHandgun.java old mode 100755 new mode 100644 index 96d0fbe8..50e9dfb8 --- a/src/main/java/xreliquary/items/ItemHandgun.java +++ b/src/main/java/xreliquary/items/ItemHandgun.java @@ -1,5 +1,6 @@ package xreliquary.items; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; @@ -17,8 +18,8 @@ import xreliquary.entities.EntitySandShot; import xreliquary.entities.EntitySeekerShot; import xreliquary.entities.EntityStormShot; -import xreliquary.init.ContentHandler; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Colors; import xreliquary.lib.Names; import xreliquary.lib.Reference; @@ -26,11 +27,11 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemHandgun extends ItemBase { public ItemHandgun() { - super(Reference.MOD_ID, Names.handgun); + super(Names.handgun); this.setMaxStackSize(1); canRepair = false; this.setCreativeTab(Reliquary.CREATIVE_TAB); diff --git a/src/main/java/xreliquary/items/ItemHeroMedallion.java b/src/main/java/xreliquary/items/ItemHeroMedallion.java index 27874345..eba4e45f 100644 --- a/src/main/java/xreliquary/items/ItemHeroMedallion.java +++ b/src/main/java/xreliquary/items/ItemHeroMedallion.java @@ -6,6 +6,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; @@ -15,16 +16,16 @@ import net.minecraft.util.IIcon; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; import xreliquary.util.NBTHelper; -@XRInit +@ContentInit public class ItemHeroMedallion extends ItemBase { public ItemHeroMedallion() { - super(Reference.MOD_ID, Names.hero_medallion); + super(Names.hero_medallion); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(1); @@ -80,14 +81,14 @@ public void onUpdate(ItemStack ist, World world, Entity e, int i, boolean f) { if (e instanceof EntityPlayer) { EntityPlayer player = (EntityPlayer)e; //in order to make this stop at a specific leve, we will need to do a preemptive check for a specific leve. - if (player.experienceLevel < Reliquary.PROXY.heroMedallionLevelThreshold) { + if (player.experienceLevel < Reliquary.CONFIG.getInt(Names.hero_medallion, "xpLevelCap")) { if (getExperience(ist) > 0) { increasePlayerExperience(player); decreaseMedallionExperience(ist); } } else { - if ((player.experienceLevel > Reliquary.PROXY.heroMedallionLevelThreshold || player.experience > 0F) && getExperience(ist) < Integer.MAX_VALUE){ + if ((player.experienceLevel > Reliquary.CONFIG.getInt(Names.hero_medallion, "xpLevelCap") || player.experience > 0F) && getExperience(ist) < Integer.MAX_VALUE){ decreasePlayerExperience(player); increaseMedallionExperience(ist); } @@ -98,7 +99,7 @@ public void onUpdate(ItemStack ist, World world, Entity e, int i, boolean f) { //I'm not 100% this is needed. You may be able to avoid this whole call by //using the method in the player class, might be worth testing (player.addExperience(-1)?) public void decreasePlayerExperience(EntityPlayer player) { - if (player.experience - (1.0F / (float)player.xpBarCap()) <= 0 && player.experienceLevel > Reliquary.PROXY.heroMedallionLevelThreshold){ + if (player.experience - (1.0F / (float)player.xpBarCap()) <= 0 && player.experienceLevel > Reliquary.CONFIG.getInt(Names.hero_medallion, "xpLevelCap")){ decreasePlayerLevel(player); return; } diff --git a/src/main/java/xreliquary/items/ItemHolyHandGrenade.java b/src/main/java/xreliquary/items/ItemHolyHandGrenade.java old mode 100755 new mode 100644 index e3d53e87..0ccdd032 --- a/src/main/java/xreliquary/items/ItemHolyHandGrenade.java +++ b/src/main/java/xreliquary/items/ItemHolyHandGrenade.java @@ -1,22 +1,23 @@ package xreliquary.items; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.EnumRarity; import net.minecraft.item.ItemStack; import net.minecraft.world.World; import xreliquary.Reliquary; import xreliquary.entities.EntityHolyHandGrenade; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemHolyHandGrenade extends ItemBase { public ItemHolyHandGrenade() { - super(Reference.MOD_ID, Names.holy_hand_grenade); + super(Names.holy_hand_grenade); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(64); diff --git a/src/main/java/xreliquary/items/ItemIceRod.java b/src/main/java/xreliquary/items/ItemIceRod.java old mode 100755 new mode 100644 index 26fd096d..5fee2976 --- a/src/main/java/xreliquary/items/ItemIceRod.java +++ b/src/main/java/xreliquary/items/ItemIceRod.java @@ -1,5 +1,6 @@ package xreliquary.items; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Items; @@ -8,17 +9,17 @@ import net.minecraft.world.World; import xreliquary.Reliquary; import xreliquary.entities.EntitySpecialSnowball; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemIceRod extends ItemBase { public ItemIceRod() { - super(Reference.MOD_ID, Names.ice_magus_rod); + super(Names.ice_magus_rod); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(257); this.setMaxStackSize(1); diff --git a/src/main/java/xreliquary/items/ItemKrakenShell.java b/src/main/java/xreliquary/items/ItemKrakenShell.java index 4c5bfb19..778d68da 100644 --- a/src/main/java/xreliquary/items/ItemKrakenShell.java +++ b/src/main/java/xreliquary/items/ItemKrakenShell.java @@ -2,6 +2,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; @@ -9,15 +10,15 @@ import net.minecraft.potion.PotionEffect; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemKrakenShell extends ItemBase { public ItemKrakenShell() { - super(Reference.MOD_ID, Names.kraken_shell); + super(Names.kraken_shell); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(1); diff --git a/src/main/java/xreliquary/items/ItemKrakenShellFragment.java b/src/main/java/xreliquary/items/ItemKrakenShellFragment.java index 8d44ed42..9b3eedda 100644 --- a/src/main/java/xreliquary/items/ItemKrakenShellFragment.java +++ b/src/main/java/xreliquary/items/ItemKrakenShellFragment.java @@ -2,17 +2,18 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.item.ItemStack; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemKrakenShellFragment extends ItemBase { public ItemKrakenShellFragment() { - super(Reference.MOD_ID, Names.kraken_shell_fragment); + super(Names.kraken_shell_fragment); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(64); diff --git a/src/main/java/xreliquary/items/ItemMagazine.java b/src/main/java/xreliquary/items/ItemMagazine.java old mode 100755 new mode 100644 index 67299c53..acdb0baa --- a/src/main/java/xreliquary/items/ItemMagazine.java +++ b/src/main/java/xreliquary/items/ItemMagazine.java @@ -2,6 +2,7 @@ import java.util.List; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; @@ -9,19 +10,19 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Colors; import xreliquary.lib.Names; import xreliquary.lib.Reference; -import xreliquary.util.LanguageHelper; +import lib.enderwizards.sandstone.util.LanguageHelper; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemMagazine extends ItemBase { public ItemMagazine() { - super(Reference.MOD_ID, Names.magazine); + super(Names.magazine); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxStackSize(64); canRepair = false; diff --git a/src/main/java/xreliquary/items/ItemMagicbane.java b/src/main/java/xreliquary/items/ItemMagicbane.java old mode 100755 new mode 100644 index d74f4e4a..295e4fdb --- a/src/main/java/xreliquary/items/ItemMagicbane.java +++ b/src/main/java/xreliquary/items/ItemMagicbane.java @@ -15,14 +15,14 @@ import net.minecraft.potion.PotionEffect; import net.minecraft.util.DamageSource; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -import xreliquary.util.LanguageHelper; +import lib.enderwizards.sandstone.util.LanguageHelper; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemMagicbane extends ItemSword { public ItemMagicbane() { diff --git a/src/main/java/xreliquary/items/ItemMercyCross.java b/src/main/java/xreliquary/items/ItemMercyCross.java old mode 100755 new mode 100644 index fc178fa4..daf3e9e7 --- a/src/main/java/xreliquary/items/ItemMercyCross.java +++ b/src/main/java/xreliquary/items/ItemMercyCross.java @@ -21,14 +21,14 @@ import net.minecraft.item.ItemStack; import net.minecraft.item.ItemSword; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -import xreliquary.util.LanguageHelper; +import lib.enderwizards.sandstone.util.LanguageHelper; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemMercyCross extends ItemSword { public ItemMercyCross() { diff --git a/src/main/java/xreliquary/items/ItemMidasTouchstone.java b/src/main/java/xreliquary/items/ItemMidasTouchstone.java old mode 100755 new mode 100644 index 735fedc8..b8f75a97 --- a/src/main/java/xreliquary/items/ItemMidasTouchstone.java +++ b/src/main/java/xreliquary/items/ItemMidasTouchstone.java @@ -1,5 +1,6 @@ package xreliquary.items; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Items; @@ -10,18 +11,18 @@ import net.minecraft.item.ItemTool; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; import xreliquary.util.NBTHelper; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemMidasTouchstone extends ItemBase { public ItemMidasTouchstone() { - super(Reference.MOD_ID, Names.midas_touchstone); + super(Names.midas_touchstone); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(257); this.setMaxStackSize(1); diff --git a/src/main/java/xreliquary/items/ItemPhoenixDown.java b/src/main/java/xreliquary/items/ItemPhoenixDown.java index e36e6efb..d2d422ad 100644 --- a/src/main/java/xreliquary/items/ItemPhoenixDown.java +++ b/src/main/java/xreliquary/items/ItemPhoenixDown.java @@ -1,19 +1,19 @@ package xreliquary.items; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; /** * Created by Xeno on 5/15/14. */ -@XRInit +@ContentInit public class ItemPhoenixDown extends ItemAngelicFeather { public ItemPhoenixDown() { - super(Reference.MOD_ID, Names.phoenix_down); + super(Names.phoenix_down); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxStackSize(1); canRepair = false; diff --git a/src/main/java/xreliquary/items/ItemSalamanderEye.java b/src/main/java/xreliquary/items/ItemSalamanderEye.java old mode 100755 new mode 100644 index 62b9c613..56a22f87 --- a/src/main/java/xreliquary/items/ItemSalamanderEye.java +++ b/src/main/java/xreliquary/items/ItemSalamanderEye.java @@ -3,8 +3,9 @@ import java.util.Iterator; import java.util.List; -import xreliquary.init.XRInit; -import xreliquary.util.ObjectUtils; +import lib.enderwizards.sandstone.init.ContentInit; +import lib.enderwizards.sandstone.items.ItemBase; +import lib.enderwizards.sandstone.util.ContentHelper; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; @@ -18,25 +19,23 @@ import net.minecraft.util.IIcon; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.event.ClientEventHandler; import xreliquary.lib.Names; -import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemSalamanderEye extends ItemBase { public ItemSalamanderEye() { - super(Reference.MOD_ID, Names.salamander_eye); + super(Names.salamander_eye); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(1); canRepair = false; } - protected ItemSalamanderEye(String modid, String name) { - super(modid, name); + protected ItemSalamanderEye(String name) { + super(name); } @Override @@ -115,7 +114,7 @@ private void doExtinguishEffect(EntityPlayer player) { for (int xOff = -3; xOff <= 3; xOff++) { for (int yOff = -3; yOff <= 3; yOff++) { for (int zOff = -3; zOff <= 3; zOff++) - if (ObjectUtils.getBlockIdentifier(player.worldObj.getBlock(x + xOff, y + yOff, z + zOff)).equals(ObjectUtils.getBlockIdentifier(Blocks.fire))) { + if (ContentHelper.getIndent(player.worldObj.getBlock(x + xOff, y + yOff, z + zOff)).equals(ContentHelper.getIndent(Blocks.fire))) { player.worldObj.setBlock(x + xOff, y + yOff, z + zOff, Blocks.air); player.worldObj.playSoundEffect(x + xOff + 0.5D, y + yOff + 0.5D, z + zOff + 0.5D, "random.fizz", 0.5F, 2.6F + (player.worldObj.rand.nextFloat() - player.worldObj.rand.nextFloat()) * 0.8F); } diff --git a/src/main/java/xreliquary/items/ItemSerpentStaff.java b/src/main/java/xreliquary/items/ItemSerpentStaff.java index 6b80a067..1f95d150 100644 --- a/src/main/java/xreliquary/items/ItemSerpentStaff.java +++ b/src/main/java/xreliquary/items/ItemSerpentStaff.java @@ -1,20 +1,30 @@ package xreliquary.items; +import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import lib.enderwizards.sandstone.items.ItemBase; +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.EnumAction; import net.minecraft.item.ItemStack; +import net.minecraft.world.World; +import net.minecraftforge.event.entity.player.PlayerUseItemEvent; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentInit; +import xreliquary.entities.EntityKrakenSlime; +import xreliquary.entities.EntitySpecialSnowball; import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemSerpentStaff extends ItemBase { public ItemSerpentStaff() { - super(Reference.MOD_ID, Names.serpent_staff); + super(Names.serpent_staff); this.setCreativeTab(Reliquary.CREATIVE_TAB); - this.setMaxDamage(0); + this.setMaxDamage(200); this.setMaxStackSize(1); canRepair = false; } @@ -24,5 +34,37 @@ public ItemSerpentStaff() { public boolean hasEffect(ItemStack stack) { return true; } + + @Override + @SideOnly(Side.CLIENT) + public boolean isFull3D() { + return true; + } + + @Override + public EnumAction getItemUseAction(ItemStack par1ItemStack) { + return EnumAction.block; + } + + @Override + public void onUsingTick(ItemStack item, EntityPlayer player, int count) { + if(player.worldObj.isRemote || count % 3 != 0) + return; + + player.worldObj.playSoundAtEntity(player, "random.bow", 0.5F, 0.4F / (itemRand.nextFloat() * 0.4F + 0.8F)); + player.worldObj.spawnEntityInWorld(new EntityKrakenSlime(player.worldObj, player)); + item.damageItem(1, player); + } + + @Override + public int getMaxItemUseDuration(ItemStack stack) { + return 72000; + } + + @Override + public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { + player.setItemInUse(stack, 72000); + return stack; + } } diff --git a/src/main/java/xreliquary/items/ItemSojournerStaff.java b/src/main/java/xreliquary/items/ItemSojournerStaff.java old mode 100755 new mode 100644 index cd06d3df..a7b28b38 --- a/src/main/java/xreliquary/items/ItemSojournerStaff.java +++ b/src/main/java/xreliquary/items/ItemSojournerStaff.java @@ -1,7 +1,8 @@ package xreliquary.items; -import xreliquary.init.XRInit; -import xreliquary.util.ObjectUtils; +import lib.enderwizards.sandstone.init.ContentInit; +import lib.enderwizards.sandstone.items.ItemBase; +import lib.enderwizards.sandstone.util.ContentHelper; import net.minecraft.block.Block; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; @@ -15,16 +16,15 @@ import net.minecraft.world.World; import xreliquary.Reliquary; import xreliquary.lib.Names; -import xreliquary.lib.Reference; import xreliquary.util.NBTHelper; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemSojournerStaff extends ItemBase { public ItemSojournerStaff() { - super(Reference.MOD_ID, Names.sojourner_staff); + super(Names.sojourner_staff); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(513); this.setMaxStackSize(1); @@ -84,9 +84,9 @@ public boolean onItemUse(ItemStack ist, EntityPlayer player, World world, int x, return false; Block blockTargetted = world.getBlock(x, y, z); - if (ObjectUtils.areBlocksEqual(blockTargetted, Blocks.snow)) { + if (ContentHelper.areBlocksEqual(blockTargetted, Blocks.snow)) { side = 1; - } else if (!ObjectUtils.areBlocksEqual(blockTargetted, Blocks.vine) && !ObjectUtils.areBlocksEqual(blockTargetted, Blocks.tallgrass) && !ObjectUtils.areBlocksEqual(blockTargetted, Blocks.deadbush) && (blockTargetted == null || !blockTargetted.isReplaceable(world, x, y, z))) { + } else if (!ContentHelper.areBlocksEqual(blockTargetted, Blocks.vine) && !ContentHelper.areBlocksEqual(blockTargetted, Blocks.tallgrass) && !ContentHelper.areBlocksEqual(blockTargetted, Blocks.deadbush) && (blockTargetted == null || !blockTargetted.isReplaceable(world, x, y, z))) { x += side == 4 ? -1 : side == 5 ? 1 : 0; y += side == 0 ? -1 : side == 1 ? 1 : 0; z += side == 2 ? -1 : side == 3 ? 1 : 0; @@ -188,7 +188,7 @@ public boolean placeBlockAt(ItemStack stack, EntityPlayer player, World world, i if (!world.setBlock(x, y, z, Blocks.torch, metadata, 3)) return false; - if (ObjectUtils.areBlocksEqual(world.getBlock(x, y, z), Blocks.torch)) { + if (ContentHelper.areBlocksEqual(world.getBlock(x, y, z), Blocks.torch)) { Blocks.torch.onNeighborBlockChange(world, x, y, z, world.getBlock(x, y, z)); Blocks.torch.onBlockPlacedBy(world, x, y, z, player, stack); } diff --git a/src/main/java/xreliquary/items/ItemSquidBeak.java b/src/main/java/xreliquary/items/ItemSquidBeak.java index d363538d..efb14e78 100644 --- a/src/main/java/xreliquary/items/ItemSquidBeak.java +++ b/src/main/java/xreliquary/items/ItemSquidBeak.java @@ -1,18 +1,16 @@ package xreliquary.items; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.item.ItemStack; +import lib.enderwizards.sandstone.items.ItemBase; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; -@XRInit +@ContentInit public class ItemSquidBeak extends ItemBase { public ItemSquidBeak() { - super(Reference.MOD_ID, Names.squid_beak); + super(Names.squid_beak); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(64); diff --git a/src/main/java/xreliquary/items/ItemTwilightCloak.java b/src/main/java/xreliquary/items/ItemTwilightCloak.java index 33af8262..447d85ac 100644 --- a/src/main/java/xreliquary/items/ItemTwilightCloak.java +++ b/src/main/java/xreliquary/items/ItemTwilightCloak.java @@ -1,13 +1,9 @@ package xreliquary.items; -import java.util.List; - -import com.google.common.collect.ImmutableMap; - +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; import net.minecraft.item.EnumRarity; import net.minecraft.item.ItemStack; import net.minecraft.potion.Potion; @@ -16,18 +12,18 @@ import net.minecraft.world.World; import xreliquary.Reliquary; import xreliquary.event.ClientEventHandler; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Colors; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemTwilightCloak extends ItemBase { public ItemTwilightCloak() { - super(Reference.MOD_ID, Names.twilight_cloak); + super(Names.twilight_cloak); this.setCreativeTab(Reliquary.CREATIVE_TAB); //this.setMaxDamage(2401); this.setMaxStackSize(1); @@ -87,7 +83,7 @@ public void onUpdate(ItemStack ist, World world, Entity e, int i, boolean f) { EntityPlayer player = (EntityPlayer) e; //always on for now, takes effect only at night, or low light (configurable) //if (ist.getItemDamage() == 0) return; - if (world.getWorldTime() % 24000 < 12000 && player.worldObj.getBlockLightValue((int)Math.floor(player.posX), (int)Math.floor(player.posY), (int)Math.floor(player.posZ)) > Reliquary.PROXY.twilightCloakLightThreshold) return; + if (world.getWorldTime() % 24000 < 12000 && player.worldObj.getBlockLightValue((int)Math.floor(player.posX), (int)Math.floor(player.posY), (int)Math.floor(player.posZ)) > Reliquary.CONFIG.getInt(Names.twilight_cloak, "maxLightLevel")) return; //checks if the effect would do anything. PotionEffect quickInvisibility = new PotionEffect(Potion.invisibility.id, 2, 0, true); if (!player.isPotionApplicable(quickInvisibility)) return; diff --git a/src/main/java/xreliquary/items/ItemVoidTear.java b/src/main/java/xreliquary/items/ItemVoidTear.java old mode 100755 new mode 100644 index 66345e28..51f548ff --- a/src/main/java/xreliquary/items/ItemVoidTear.java +++ b/src/main/java/xreliquary/items/ItemVoidTear.java @@ -4,6 +4,7 @@ import com.google.common.collect.ImmutableMap; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; @@ -13,19 +14,18 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; import net.minecraft.world.World; -import xreliquary.Reliquary; -import xreliquary.init.ContentHandler; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemVoidTear extends ItemBase { public ItemVoidTear() { - super(Reference.MOD_ID, Names.void_tear); + super(Names.void_tear); this.setMaxDamage(0); this.setMaxStackSize(1); canRepair = false; diff --git a/src/main/java/xreliquary/items/ItemWitherlessRose.java b/src/main/java/xreliquary/items/ItemWitherlessRose.java old mode 100755 new mode 100644 index 0f40fd70..ffb48e3f --- a/src/main/java/xreliquary/items/ItemWitherlessRose.java +++ b/src/main/java/xreliquary/items/ItemWitherlessRose.java @@ -2,6 +2,7 @@ import java.util.Random; +import lib.enderwizards.sandstone.items.ItemBase; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.EnumRarity; @@ -9,17 +10,17 @@ import net.minecraft.potion.Potion; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.init.XRInit; +import lib.enderwizards.sandstone.init.ContentInit; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemWitherlessRose extends ItemBase { public ItemWitherlessRose() { - super(Reference.MOD_ID, Names.witherless_rose); + super(Names.witherless_rose); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(1); diff --git a/src/main/java/xreliquary/items/ItemWraithEye.java b/src/main/java/xreliquary/items/ItemWraithEye.java old mode 100755 new mode 100644 index 7110bba7..fb9fefc3 --- a/src/main/java/xreliquary/items/ItemWraithEye.java +++ b/src/main/java/xreliquary/items/ItemWraithEye.java @@ -4,9 +4,9 @@ import com.google.common.collect.ImmutableMap; -import xreliquary.init.ContentHandler; -import xreliquary.init.XRInit; -import xreliquary.util.ObjectUtils; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentInit; +import lib.enderwizards.sandstone.util.ContentHelper; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; @@ -17,18 +17,17 @@ import net.minecraft.util.IIcon; import net.minecraft.world.World; import xreliquary.Reliquary; -import xreliquary.event.ClientEventHandler; import xreliquary.lib.Names; import xreliquary.lib.Reference; import xreliquary.util.NBTHelper; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -@XRInit +@ContentInit public class ItemWraithEye extends ItemSalamanderEye { public ItemWraithEye() { - super(Reference.MOD_ID, Names.wraith_eye); + super(Names.wraith_eye); this.setCreativeTab(Reliquary.CREATIVE_TAB); this.setMaxDamage(0); this.setMaxStackSize(1); @@ -72,7 +71,7 @@ public ItemStack onItemRightClick(ItemStack eye, World world, EntityPlayer par2E if (!world.isRemote) { par2EntityPlayer.addChatComponentMessage(new ChatComponentText(EnumChatFormatting.DARK_RED + "Out of range!")); } - } else if (eye.getTagCompound() != null && ObjectUtils.areBlocksEqual(world.getBlock(eye.getTagCompound().getInteger("nodeX" + getWorld(par2EntityPlayer)), eye.getTagCompound().getInteger("nodeY" + getWorld(par2EntityPlayer)), eye.getTagCompound().getInteger("nodeZ" + getWorld(par2EntityPlayer))), ContentHandler.getBlock(Names.wraith_node))) { + } else if (eye.getTagCompound() != null && ContentHelper.areBlocksEqual(world.getBlock(eye.getTagCompound().getInteger("nodeX" + getWorld(par2EntityPlayer)), eye.getTagCompound().getInteger("nodeY" + getWorld(par2EntityPlayer)), eye.getTagCompound().getInteger("nodeZ" + getWorld(par2EntityPlayer))), ContentHandler.getBlock(Names.wraith_node))) { if (canTeleport(world, eye.getTagCompound().getInteger("nodeX" + getWorld(par2EntityPlayer)), eye.getTagCompound().getInteger("nodeY" + getWorld(par2EntityPlayer)), eye.getTagCompound().getInteger("nodeZ" + getWorld(par2EntityPlayer)))) { @@ -147,7 +146,7 @@ public void addInformation(ItemStack eye, EntityPlayer par2EntityPlayer, List li @Override public boolean onItemUse(ItemStack ist, EntityPlayer player, World world, int x, int y, int z, int side, float xOff, float yOff, float zOff) { // if right clicking on a wraith node, bind the eye to that wraith node. - if ((ist.getTagCompound() == null || !(ist.getTagCompound().hasKey("dimensionID"))) && ObjectUtils.areBlocksEqual(world.getBlock(x, y, z), ContentHandler.getBlock(Names.wraith_node))) { + if ((ist.getTagCompound() == null || !(ist.getTagCompound().hasKey("dimensionID"))) && ContentHelper.areBlocksEqual(world.getBlock(x, y, z), ContentHandler.getBlock(Names.wraith_node))) { setWraithNode(ist, x, y, z, Integer.valueOf(getWorld(player)), player); player.playSound("mob.endermen.portal", 1.0f, 1.0f); diff --git a/src/main/java/xreliquary/items/alkahestry/AlkahestryCraftingRecipe.java b/src/main/java/xreliquary/items/alkahestry/AlkahestryCraftingRecipe.java index f4e51244..7550212e 100644 --- a/src/main/java/xreliquary/items/alkahestry/AlkahestryCraftingRecipe.java +++ b/src/main/java/xreliquary/items/alkahestry/AlkahestryCraftingRecipe.java @@ -1,10 +1,10 @@ package xreliquary.items.alkahestry; -import xreliquary.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.util.ContentHelper; import xreliquary.lib.Names; import xreliquary.util.alkahestry.AlkahestRecipe; import xreliquary.util.alkahestry.Alkahestry; -import xreliquary.util.ObjectUtils; import xreliquary.Reliquary; import net.minecraft.inventory.InventoryCrafting; import net.minecraft.item.ItemStack; @@ -21,9 +21,9 @@ public boolean matches(InventoryCrafting inv, World world) { for (int count = 0; count < inv.getSizeInventory(); count++) { ItemStack stack = inv.getStackInSlot(count); if (stack != null) { - if (ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getItemIdentifier(ContentHandler.getItem(Names.alkahest_tome)))) { + if (ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIdent(ContentHandler.getItem(Names.alkahestry_tome)))) { tome = stack.copy(); - } else if (!ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getItemIdentifier(ContentHandler.getItem(Names.alkahest_tome)))) { + } else if (!ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIdent(ContentHandler.getItem(Names.alkahestry_tome)))) { if (valid == 0) { valid = 1; itemStack = stack; @@ -36,10 +36,10 @@ public boolean matches(InventoryCrafting inv, World world) { if (tome != null && valid == 1 && itemStack != null) { AlkahestRecipe recipe = null; if (Alkahestry.getDictionaryKey(itemStack) == null) - recipe = Alkahestry.getRegistry().get(ObjectUtils.getItemIdentifier(itemStack.getItem())); + recipe = Alkahestry.getRegistry().get(ContentHelper.getIdent(itemStack.getItem())); else recipe = Alkahestry.getDictionaryKey(itemStack); - return recipe != null && (tome.getItemDamage() + recipe.cost <= Reliquary.PROXY.tomeRedstoneLimit); + return recipe != null && (tome.getItemDamage() + recipe.cost <= Reliquary.CONFIG.getInt(Names.alkahestry_tome, "redstoneLimit")); } else { return false; } @@ -52,9 +52,9 @@ public ItemStack getCraftingResult(InventoryCrafting inv) { for (int count = 0; count < inv.getSizeInventory(); count++) { ItemStack stack = inv.getStackInSlot(count); if (stack != null) { - if (!(ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getItemIdentifier(ContentHandler.getItem(Names.alkahest_tome))))) { + if (!(ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIdent(ContentHandler.getItem(Names.alkahestry_tome))))) { if (Alkahestry.getDictionaryKey(stack) == null) - returned = Alkahestry.getRegistry().get(ObjectUtils.getItemIdentifier(stack.getItem())); + returned = Alkahestry.getRegistry().get(ContentHelper.getIdent(stack.getItem())); else { returned = Alkahestry.getDictionaryKey(stack); dictStack = stack; @@ -76,7 +76,7 @@ public int getRecipeSize() { @Override public ItemStack getRecipeOutput() { - return new ItemStack(ContentHandler.getItem(Names.alkahest_tome), 1); + return new ItemStack(ContentHandler.getItem(Names.alkahestry_tome), 1); } } diff --git a/src/main/java/xreliquary/items/alkahestry/AlkahestryRedstoneRecipe.java b/src/main/java/xreliquary/items/alkahestry/AlkahestryRedstoneRecipe.java index 6dbba6f3..2a9b0269 100644 --- a/src/main/java/xreliquary/items/alkahestry/AlkahestryRedstoneRecipe.java +++ b/src/main/java/xreliquary/items/alkahestry/AlkahestryRedstoneRecipe.java @@ -1,8 +1,8 @@ package xreliquary.items.alkahestry; -import xreliquary.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentHandler; +import lib.enderwizards.sandstone.util.ContentHelper; import xreliquary.lib.Names; -import xreliquary.util.ObjectUtils; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.inventory.InventoryCrafting; @@ -20,12 +20,12 @@ public boolean matches(InventoryCrafting inv, World world) { for (int count = 0; count < inv.getSizeInventory(); count++) { ItemStack stack = inv.getStackInSlot(count); if (stack != null) { - if (ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getItemIdentifier(ContentHandler.getItem(Names.alkahest_tome)))) { + if (ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIdent(ContentHandler.getItem(Names.alkahestry_tome)))) { tome = stack.copy(); - } else if (ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getItemIdentifier(Items.redstone))) { + } else if (ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIdent(Items.redstone))) { if (valid == 0) valid = 1; amount++; - } else if (ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getBlockIdentifier(Blocks.redstone_block))) { + } else if (ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIndent(Blocks.redstone_block))) { if (valid == 0) valid = 1; amount += 9; } else { @@ -51,11 +51,11 @@ public ItemStack getCraftingResult(InventoryCrafting inv) { for (int count = 0; count < inv.getSizeInventory(); count++) { ItemStack stack = inv.getStackInSlot(count); if (stack != null) { - if (ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getItemIdentifier(ContentHandler.getItem(Names.alkahest_tome)))) { + if (ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIdent(ContentHandler.getItem(Names.alkahestry_tome)))) { tome = stack.copy(); - } else if (ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getBlockIdentifier(Blocks.redstone_block))) { + } else if (ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIndent(Blocks.redstone_block))) { amount += 9; - } else if (ObjectUtils.getItemIdentifier(stack.getItem()).equals(ObjectUtils.getItemIdentifier(Items.redstone))) { + } else if (ContentHelper.getIdent(stack.getItem()).equals(ContentHelper.getIdent(Items.redstone))) { amount++; } } @@ -72,7 +72,7 @@ public int getRecipeSize() { @Override public ItemStack getRecipeOutput() { - return new ItemStack(ContentHandler.getItem(Names.alkahest_tome), 1); + return new ItemStack(ContentHandler.getItem(Names.alkahestry_tome), 1); } } diff --git a/src/main/java/xreliquary/items/block/ItemBlockBase.java b/src/main/java/xreliquary/items/block/ItemBlockBase.java deleted file mode 100644 index 63f31c0b..00000000 --- a/src/main/java/xreliquary/items/block/ItemBlockBase.java +++ /dev/null @@ -1,77 +0,0 @@ -package xreliquary.items.block; - -import com.google.common.collect.ImmutableMap; -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 xreliquary.util.LanguageHelper; - -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -/** - * ItemBlockBase, a helper class for item blocks. Handles language names and language - * parsing (see LanguageHelper). - * - * In most ways, completely similar to xreliquary.items.ItemBase. - * - * @author TheMike - */ -public class ItemBlockBase extends ItemBlock { - - public ItemBlockBase(Block block) { - super(block); - } - - /** - * Just a call to formatTooltip(). If you are overriding this function, call - * formatTooltip() directly and DO NOT call super.addInformation(). - */ - @Override - public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean whatDoesThisEvenDo) { - this.formatTooltip(null, stack, list); - } - - /** - * Used to format tooltips. Grabs tooltip from language registry with the - * entry 'item.unlocalizedName.tooltip'. Has support for Handlebars-style - * templating, and line breaking using '\n'. - * - * @param toFormat - * An ImmutableMap that has all the regex keys and values. Regex - * strings are handled on the tooltip by including '{{regexKey}}' - * with your regex key, of course. - * @param stack - * The ItemStack passed from addInformation. - * @param list - * List of description lines passed from addInformation. - */ - public void formatTooltip(ImmutableMap toFormat, ItemStack stack, List list) { - String langTooltip = LanguageHelper.getLocalization(this.getUnlocalizedNameInefficiently(stack) + ".tooltip"); - if (langTooltip == null) - return; - if (toFormat != null) { - Iterator> entrySet = toFormat.entrySet().iterator(); - while (entrySet.hasNext()) { - Map.Entry toReplace = entrySet.next(); - langTooltip = langTooltip.replace("{{" + toReplace.getKey() + "}}", toReplace.getValue()); - } - } - - for (String descriptionLine : langTooltip.split(";")) { - if (descriptionLine != null && descriptionLine.length() > 0) - list.add(descriptionLine); - } - } - - @Override - @SideOnly(Side.CLIENT) - public String getItemStackDisplayName(ItemStack stack) { - return LanguageHelper.getLocalization(this.getUnlocalizedNameInefficiently(stack) + ".name"); - } - -} \ No newline at end of file diff --git a/src/main/java/xreliquary/items/block/ItemFertileLilypad.java b/src/main/java/xreliquary/items/block/ItemFertileLilypad.java old mode 100755 new mode 100644 index b2ef5021..9bec4b51 --- a/src/main/java/xreliquary/items/block/ItemFertileLilypad.java +++ b/src/main/java/xreliquary/items/block/ItemFertileLilypad.java @@ -10,7 +10,7 @@ import net.minecraft.util.IIcon; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; -import xreliquary.init.ContentHandler; +import lib.enderwizards.sandstone.init.ContentHandler; import xreliquary.lib.Names; import xreliquary.lib.Reference; import cpw.mods.fml.relauncher.Side; diff --git a/src/main/java/xreliquary/lib/Colors.java b/src/main/java/xreliquary/lib/Colors.java old mode 100755 new mode 100644 index 4b80fd65..828bd816 --- a/src/main/java/xreliquary/lib/Colors.java +++ b/src/main/java/xreliquary/lib/Colors.java @@ -48,23 +48,4 @@ public class Colors { public static final String RUINATION_COLOR = "676720"; public static final String FERTILIZER_COLOR = "DDDDDD"; - /* Unicode colors that you can use in the tooltips/names lang files. - * Use by calling {{!name}}, with name being the name of the color without the UNICODE_ prefix. - * Case dosen't matter, can be lowercase (I prefer it). */ - public static final String UNICODE_BLACK = "\u00A70"; - public static final String UNICODE_NAVY = "\u00A71"; - public static final String UNICODE_GREEN = "\u00A72"; - public static final String UNICODE_BLUE = "\u00A73"; - public static final String UNICODE_RED = "\u00A74"; - public static final String UNICODE_PURPLE = "\u00A75"; - public static final String UNICODE_GOLD = "\u00A76"; - public static final String UNICODE_LIGHT_GRAY = "\u00A77"; - public static final String UNICODE_GRAY = "\u00A78"; - public static final String UNICODE_DARK_PURPLE = "\u00A79"; - public static final String UNICODE_LIGHT_GREEN = "\u00A7a"; - public static final String UNICODE_LIGHT_BLUE = "\u00A7b"; - public static final String UNICODE_ROSE = "\u00A7c"; - public static final String UNICODE_LIGHT_PURPLE = "\u00A7d"; - public static final String UNICODE_YELLOW = "\u00A7e"; - public static final String UNICODE_WHITE = "\u00A7f"; } diff --git a/src/main/java/xreliquary/lib/Names.java b/src/main/java/xreliquary/lib/Names.java old mode 100755 new mode 100644 index 91c683c5..7eed85ea --- a/src/main/java/xreliquary/lib/Names.java +++ b/src/main/java/xreliquary/lib/Names.java @@ -11,7 +11,7 @@ public class Names { public static final String magazine = "magazine"; public static final String magazine_overlay = "magazine_overlay"; public static final String sojourner_staff = "sojourner_staff"; - public static final String alkahest_tome = "alkahest_tome"; + public static final String alkahestry_tome = "alkahest_tome"; public static final String holy_hand_grenade = "holy_hand_grenade"; public static final String fortune_coin = "fortune_coin"; public static final String fortune_coin_overlay = "fortune_coin_overlay"; diff --git a/src/main/java/xreliquary/lib/Reference.java b/src/main/java/xreliquary/lib/Reference.java old mode 100755 new mode 100644 diff --git a/src/main/java/xreliquary/util/LanguageHelper.java b/src/main/java/xreliquary/util/LanguageHelper.java deleted file mode 100644 index 466ba225..00000000 --- a/src/main/java/xreliquary/util/LanguageHelper.java +++ /dev/null @@ -1,45 +0,0 @@ -package xreliquary.util; - -import net.minecraft.util.StatCollector; -import xreliquary.lib.Colors; - -import java.util.HashMap; -import java.util.Map; - -public class LanguageHelper { - - public static Map preprocesssed = new HashMap(); - - public static String getLocalization(String key) { - String localization = getLocalization(key, true); - - if(localization.contains("{{!")) { - while(localization.contains("{{!")) { - int startingIndex = localization.indexOf("{{!"); - int endingIndex = localization.substring(startingIndex).indexOf("}}") + startingIndex; - String fragment = localization.substring(startingIndex + 3, endingIndex); - - try { - String replacement = (String) Colors.class.getField("UNICODE_" + fragment.toUpperCase()).get(null); - localization = localization.substring(0, startingIndex) + replacement + localization.substring(endingIndex + 2); - } catch(Exception e) { - localization = localization.substring(0, startingIndex) + localization.substring(endingIndex + 2); - } - } - - preprocesssed.put(key, localization); - } else if(preprocesssed.containsKey(key)) { - return preprocesssed.get(key); - } - return localization; - } - - private static String getLocalization(String key, boolean fallback) { - String localization = StatCollector.translateToLocal(key); - if(localization.equals(key) && fallback) { - localization = StatCollector.translateToFallback(key); - } - return localization; - } - -} diff --git a/src/main/java/xreliquary/util/LogHelper.java b/src/main/java/xreliquary/util/LogHelper.java deleted file mode 100755 index 2c9b3d87..00000000 --- a/src/main/java/xreliquary/util/LogHelper.java +++ /dev/null @@ -1,17 +0,0 @@ -package xreliquary.util; - -import org.apache.logging.log4j.Level; - -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; -import xreliquary.lib.Reference; - -public class LogHelper { - - private static Logger logger = LogManager.getLogger(Reference.MOD_ID); - - public static void log(Level logLevel, String message) { - logger.log(logLevel, message); - } - -} \ No newline at end of file diff --git a/src/main/java/xreliquary/util/ObjectUtils.java b/src/main/java/xreliquary/util/ObjectUtils.java deleted file mode 100644 index b60abe6a..00000000 --- a/src/main/java/xreliquary/util/ObjectUtils.java +++ /dev/null @@ -1,50 +0,0 @@ -package xreliquary.util; - -import net.minecraft.block.Block; -import net.minecraft.item.Item; - -/** - * ItemBase, a helper class for blocks and items, but not manipulating objects themselves. Right now, - * all it does it provide a clean way to get a block identifier (as in, minecraft:water). - * - * @author TheMike - */ -public class ObjectUtils { - - /** - * Returns a block identifier. Examples of these are 'minecraft:water', 'xreliquary:lilypad', etc. Will return null - * if the block itself is null. - * - * @param block - * The block to get the identifier from. - */ - public static String getBlockIdentifier(Block block) { - return block == null ? null : Block.blockRegistry.getNameForObject(block); - } - - /** - * Returns a item identifier. Examples of these are 'minecraft:water', 'xreliquary:lilypad', etc. Will return null - * if the item itself is null. - * - * @param item - * The item to get the identifier from. - */ - public static String getItemIdentifier(Item item) { - return item == null ? null : Item.itemRegistry.getNameForObject(item); - } - - /** - * Returns true if the item identifier of item1 matches that of item2. Returns false otherwise. - */ - public static boolean areItemsEqual(Item item1, Item item2) { - return getItemIdentifier(item1).equals(getItemIdentifier(item2)); - } - - /** - * Returns true if the block identifier of block1 matches that of block2. Returns false otherwise. - */ - public static boolean areBlocksEqual(Block block1, Block block2) { - return getBlockIdentifier(block1).equals(getBlockIdentifier(block2)); - } - -} diff --git a/src/main/java/xreliquary/util/alkahestry/Alkahestry.java b/src/main/java/xreliquary/util/alkahestry/Alkahestry.java index 99b2fbcc..1b8c5392 100644 --- a/src/main/java/xreliquary/util/alkahestry/Alkahestry.java +++ b/src/main/java/xreliquary/util/alkahestry/Alkahestry.java @@ -3,7 +3,7 @@ import java.util.HashMap; import java.util.Map; -import xreliquary.util.ObjectUtils; +import lib.enderwizards.sandstone.util.ContentHelper; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; @@ -20,7 +20,7 @@ public class Alkahestry { public static void addKey(AlkahestRecipe recipe) { if (recipe.dictionaryName == null) - REGISTRY.put(ObjectUtils.getItemIdentifier(recipe.item.getItem()), recipe); + REGISTRY.put(ContentHelper.getIdent(recipe.item.getItem()), recipe); else REGISTRY.put("OreDictionary:" + String.valueOf(OreDictionary.getOreID(recipe.dictionaryName)), recipe); } diff --git a/src/main/java/xreliquary/util/misc/Duo.java b/src/main/java/xreliquary/util/misc/Duo.java deleted file mode 100644 index 703254be..00000000 --- a/src/main/java/xreliquary/util/misc/Duo.java +++ /dev/null @@ -1,13 +0,0 @@ -package xreliquary.util.misc; - -public class Duo { - - public final K one; - public final V two; - - public Duo(K par1, V par2) { - one = par1; - two = par2; - } - -} diff --git a/src/main/java/xreliquary/util/potions/PotionEssence.java b/src/main/java/xreliquary/util/potions/PotionEssence.java index c9d011a6..f0e81750 100644 --- a/src/main/java/xreliquary/util/potions/PotionEssence.java +++ b/src/main/java/xreliquary/util/potions/PotionEssence.java @@ -10,8 +10,6 @@ /** * PotionEssence, the helper class for well, potion essences. * Abstracts away juggling all that NBT data, combining effects, and applying effects. - * - * @author TheMike */ public class PotionEssence { diff --git a/src/main/java/xreliquary/util/potions/PotionIngredient.java b/src/main/java/xreliquary/util/potions/PotionIngredient.java index 3de92208..669170ac 100644 --- a/src/main/java/xreliquary/util/potions/PotionIngredient.java +++ b/src/main/java/xreliquary/util/potions/PotionIngredient.java @@ -2,7 +2,7 @@ import net.minecraft.item.Item; import net.minecraft.potion.PotionEffect; -import xreliquary.util.misc.Duo; +import lib.enderwizards.sandstone.util.misc.Duo; public class PotionIngredient { diff --git a/src/main/resources/assets/xreliquary/lang/en_US.lang b/src/main/resources/assets/xreliquary/lang/en_US.lang index 7fe63efd..b7fe9487 100644 --- a/src/main/resources/assets/xreliquary/lang/en_US.lang +++ b/src/main/resources/assets/xreliquary/lang/en_US.lang @@ -6,7 +6,7 @@ tile.altar_idle.name=Altar of Light tile.altar.name=Altar of Light tile.lilypad.name=Lilypad of Fertility tile.wraith_node.name=Wraith Node -tile.interdiction_torch.name={{!yellow}}Interdiction Torch +tile.interdiction_torch.name={{!colors.yellow}}Interdiction Torch tile.interdiction_torch.tooltip=Seems to repel monsters. Neat. tile.apothecary_cauldron.name=Apothecary Cauldron tile.apothecary_cauldron.tooltip=Used to brew potions, stylishly. @@ -63,7 +63,7 @@ item.mercy_cross.tooltip="Damn, that thing's heavy!";That, my friend, is because item.sojourner_staff.name=Sojourner's Staff item.sojourner_staff.tooltip=Consumes torches, can place them;long distance, but costs extra. item.alkahest_tome.name=Tome of Alkahestry -item.alkahest_tome.tooltip={{!rose}}Redstone: {{redstoneAmount}}/{{redstoneLimit}};It says: perform basic, intermediate or;advanced Alkahestry, whatever that is. +item.alkahest_tome.tooltip={{!colors.rose}}Redstone: {{redstoneAmount}}/{{redstoneLimit}};It says: perform basic, intermediate or;advanced Alkahestry, whatever that is. item.holy_hand_grenade.name=Holy Hand Grenade item.holy_hand_grenade.tooltip=Kills mobs, not blocks;or whoever threw it. item.fortune_coin.name=Coin of Fortune @@ -79,7 +79,7 @@ item.emperor_chalice.tooltip=An infinite water bucket;unless you drink from it.; item.salamander_eye.name=Salamander's Eye item.salamander_eye.tooltip=Dispels blaze fireballs and reflects;ghast fireballs while held.;Puts out fires on and around you. item.destruction_catalyst.name=Destruction Catalyst -item.destruction_catalyst.tooltip=Consumes 3 Gunpowder on right click, no less.;Blows up a 3x3x3 Cube behind target cube.;{{!white}}Destroys mundane blocks only. +item.destruction_catalyst.tooltip=Consumes 3 Gunpowder on right click, no less.;Blows up a 3x3x3 Cube behind target cube.;{{!colors.white}}Destroys mundane blocks only. item.ice_magus_rod.name=Ice Magus Rod item.ice_magus_rod.tooltip=Consumes snowballs in inventory.;Makes snowballs a bit colder... item.magicbane.name=Magicbane @@ -89,13 +89,13 @@ item.witherless_rose.tooltip=With the Nether Stars enchanting this rose;the hold item.twilight_cloak.name=Twilight Cloak item.twilight_cloak.tooltip=Makes you invisible at night. item.wraith_eye.name=Wraith's Eye -item.wraith_eye.tooltip=Right clicking a Wraith Node binds to it;allowing you to return to it at will,;for the cost of an Ender Pearl.;{{!purple}}{{phrase}} {{position}}. +item.wraith_eye.tooltip=Right clicking a Wraith Node binds to it;allowing you to return to it at will,;for the cost of an Ender Pearl.;{{!colors.purple}}{{phrase}} {{position}}. item.void_tear_empty.name=Empty Void Tear item.void_tear_empty.tooltip=An empty void tear, right clicking;absorbs the dominant inventory item. item.void_tear.name=Void Tear item.void_tear.tooltip=This Void Tear currently;holds {{holds}}. item.hero_medallion.name=Hero's Medallion -item.hero_medallion.tooltip={{!green}}Experience: {{experience}};For when you just need;somewhere to put;all that experience. +item.hero_medallion.tooltip={{!colors.green}}Experience: {{experience}};For when you just need;somewhere to put;all that experience. item.ender_staff.name=Ender Staff item.ender_staff.tooltip=Consumes Ender Pearls from inventory.;Throws them a bit farther. item.angelic_feather.name=Angelic Feather @@ -108,7 +108,7 @@ item.dragon_talon.name=Dragon Talon item.dragon_talon.tooltip=An artificed dragon;talon, not much use alone. item.dragon_claws.name=Dragon Claws item.dragon_claws.tooltip=Absorbs fire damage at;the expense of hunger. -item.claws_of_the_firedrinker.name={{!red}}Claws of the Firedrinker +item.claws_of_the_firedrinker.name={{!colors.red}}Claws of the Firedrinker item.claws_of_the_firedrinker.tooltip=Consumes fire damage (yum!);absorbs lava damage at;the expense of hunger. item.squid_beak.name=Squid Beak item.squid_beak.tooltip=Somewhere out there;is a very sad, very;mouthless squid. @@ -120,7 +120,7 @@ item.angelheart_vial.name=Angelheart Vial item.angelheart_vial.tooltip=Resurrects you once;and breaks. item.elsewhere_flask.name=Elsewhere Flask item.elsewhere_flask.tooltip=Imbibe potions within it simultaneously.{{contents}} -item.serpent_staff.name={{!green}}Serpent Staff +item.serpent_staff.name={{!colors.green}}Serpent Staff item.serpent_staff.tooltip=All that nasty stuff;from a Kraken's spit,;thrown at your enemies. item.potion_0.name=Condensed Splash Serum diff --git a/src/main/resources/assets/xreliquary/textures/blocks/._interdiction_torch.png b/src/main/resources/assets/xreliquary/textures/blocks/._interdiction_torch.png new file mode 100644 index 00000000..db28e396 Binary files /dev/null and b/src/main/resources/assets/xreliquary/textures/blocks/._interdiction_torch.png differ diff --git a/src/main/resources/assets/xreliquary/textures/blocks/altar.png b/src/main/resources/assets/xreliquary/textures/blocks/altar.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/blocks/altar_idle.png b/src/main/resources/assets/xreliquary/textures/blocks/altar_idle.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/blocks/apothecary_cauldron_inside.png b/src/main/resources/assets/xreliquary/textures/blocks/apothecary_cauldron_inside.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/blocks/interdiction_torch.png b/src/main/resources/assets/xreliquary/textures/blocks/interdiction_torch.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/blocks/lilypad.png b/src/main/resources/assets/xreliquary/textures/blocks/lilypad.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/blocks/wraith_node.png b/src/main/resources/assets/xreliquary/textures/blocks/wraith_node.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/blocks/wraith_node_top.png b/src/main/resources/assets/xreliquary/textures/blocks/wraith_node_top.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/entities/blazeShot.png b/src/main/resources/assets/xreliquary/textures/entities/blazeShot.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/entities/busterShot.png b/src/main/resources/assets/xreliquary/textures/entities/busterShot.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/entities/concussiveShot.png b/src/main/resources/assets/xreliquary/textures/entities/concussiveShot.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/entities/enderShot.png b/src/main/resources/assets/xreliquary/textures/entities/enderShot.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/entities/exorcismShot.png b/src/main/resources/assets/xreliquary/textures/entities/exorcismShot.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/entities/neutralShot.png b/src/main/resources/assets/xreliquary/textures/entities/neutralShot.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/entities/sandShot.png b/src/main/resources/assets/xreliquary/textures/entities/sandShot.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/entities/seekerShot.png b/src/main/resources/assets/xreliquary/textures/entities/seekerShot.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/entities/stormShot.png b/src/main/resources/assets/xreliquary/textures/entities/stormShot.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/entities/thrownItemsSheet.png b/src/main/resources/assets/xreliquary/textures/entities/thrownItemsSheet.png old mode 100755 new mode 100644 index 56de0556..9931d5f0 Binary files a/src/main/resources/assets/xreliquary/textures/entities/thrownItemsSheet.png and b/src/main/resources/assets/xreliquary/textures/entities/thrownItemsSheet.png differ diff --git a/src/main/resources/assets/xreliquary/textures/gui/book.png b/src/main/resources/assets/xreliquary/textures/gui/book.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/._serpent_staff.png b/src/main/resources/assets/xreliquary/textures/items/._serpent_staff.png new file mode 100644 index 00000000..d12adf6a Binary files /dev/null and b/src/main/resources/assets/xreliquary/textures/items/._serpent_staff.png differ diff --git a/src/main/resources/assets/xreliquary/textures/items/alkahest_tome.png b/src/main/resources/assets/xreliquary/textures/items/alkahest_tome.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/bullet.png b/src/main/resources/assets/xreliquary/textures/items/bullet.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/bullet_overlay.png b/src/main/resources/assets/xreliquary/textures/items/bullet_overlay.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/condensed_potion.png b/src/main/resources/assets/xreliquary/textures/items/condensed_potion.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/condensed_potion_overlay.png b/src/main/resources/assets/xreliquary/textures/items/condensed_potion_overlay.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/condensed_potion_splash.png b/src/main/resources/assets/xreliquary/textures/items/condensed_potion_splash.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/condensed_potion_splash_overlay.png b/src/main/resources/assets/xreliquary/textures/items/condensed_potion_splash_overlay.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/destruction_catalyst.png b/src/main/resources/assets/xreliquary/textures/items/destruction_catalyst.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/emperor_chalice.png b/src/main/resources/assets/xreliquary/textures/items/emperor_chalice.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/emperor_chalice_overlay.png b/src/main/resources/assets/xreliquary/textures/items/emperor_chalice_overlay.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/fortune_coin.png b/src/main/resources/assets/xreliquary/textures/items/fortune_coin.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/fortune_coin_overlay.png b/src/main/resources/assets/xreliquary/textures/items/fortune_coin_overlay.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/glowing_bread.png b/src/main/resources/assets/xreliquary/textures/items/glowing_bread.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/glowing_water.png b/src/main/resources/assets/xreliquary/textures/items/glowing_water.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/gun_part_0.png b/src/main/resources/assets/xreliquary/textures/items/gun_part_0.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/gun_part_1.png b/src/main/resources/assets/xreliquary/textures/items/gun_part_1.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/gun_part_2.png b/src/main/resources/assets/xreliquary/textures/items/gun_part_2.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/handgun.png b/src/main/resources/assets/xreliquary/textures/items/handgun.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/handgun_overlay.png b/src/main/resources/assets/xreliquary/textures/items/handgun_overlay.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/holy_hand_grenade.png b/src/main/resources/assets/xreliquary/textures/items/holy_hand_grenade.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/lilypad.png b/src/main/resources/assets/xreliquary/textures/items/lilypad.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/magazine.png b/src/main/resources/assets/xreliquary/textures/items/magazine.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/magazine_overlay.png b/src/main/resources/assets/xreliquary/textures/items/magazine_overlay.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/magicbane.png b/src/main/resources/assets/xreliquary/textures/items/magicbane.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/mercy_cross.png b/src/main/resources/assets/xreliquary/textures/items/mercy_cross.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/midas_touchstone.png b/src/main/resources/assets/xreliquary/textures/items/midas_touchstone.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/salamander_eye.png b/src/main/resources/assets/xreliquary/textures/items/salamander_eye.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/sojourner_staff.png b/src/main/resources/assets/xreliquary/textures/items/sojourner_staff.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/void_tear.png b/src/main/resources/assets/xreliquary/textures/items/void_tear.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/void_tear_empty.png b/src/main/resources/assets/xreliquary/textures/items/void_tear_empty.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/witherless_rose.png b/src/main/resources/assets/xreliquary/textures/items/witherless_rose.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/items/wraith_eye.png b/src/main/resources/assets/xreliquary/textures/items/wraith_eye.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/logo/xrlogo.png b/src/main/resources/assets/xreliquary/textures/logo/xrlogo.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/models/handgun.png b/src/main/resources/assets/xreliquary/textures/models/handgun.png old mode 100755 new mode 100644 diff --git a/src/main/resources/assets/xreliquary/textures/templates/Blank.png b/src/main/resources/assets/xreliquary/textures/templates/Blank.png old mode 100755 new mode 100644 diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info old mode 100755 new mode 100644