diff options
Diffstat (limited to 'src/main/java/gtPlusPlus/australia/item/ItemAustraliaPortalTrigger.java')
-rw-r--r-- | src/main/java/gtPlusPlus/australia/item/ItemAustraliaPortalTrigger.java | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/src/main/java/gtPlusPlus/australia/item/ItemAustraliaPortalTrigger.java b/src/main/java/gtPlusPlus/australia/item/ItemAustraliaPortalTrigger.java new file mode 100644 index 0000000000..5100ed31c5 --- /dev/null +++ b/src/main/java/gtPlusPlus/australia/item/ItemAustraliaPortalTrigger.java @@ -0,0 +1,100 @@ +package gtPlusPlus.australia.item; + +import java.util.List; + +import net.minecraft.block.Block; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.Blocks; +import net.minecraft.item.EnumRarity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.world.World; +import gtPlusPlus.australia.dimension.Dimension_Australia; +import gtPlusPlus.core.block.ModBlocks; +import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.util.Utils; + +public class ItemAustraliaPortalTrigger extends Item { + public ItemAustraliaPortalTrigger() { + super(); + this.maxStackSize = 1; + setMaxDamage(64); + setCreativeTab(CreativeTabs.tabTools); + this.setTextureName(CORE.MODID + ":" + "itemAlkalusDisk"); + } + + @Override + public Item setMaxStackSize(int int1) { + return super.setMaxStackSize(1); + } + + @Override + public EnumRarity getRarity(ItemStack thisItem) { + return EnumRarity.rare; + } + + @Override + public boolean hasEffect(ItemStack par1ItemStack, int pass) { + return false; + } + + @Override + public String getItemStackDisplayName(final ItemStack p_77653_1_) { + return EnumChatFormatting.GOLD+"Alkalus ROM ["+EnumChatFormatting.RED+"Activated"+EnumChatFormatting.GOLD+"]"; + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Override + public void addInformation(final ItemStack stack, final EntityPlayer aPlayer, final List list, final boolean bool) { + list.add(EnumChatFormatting.GREEN+"Shows a glipse of the past."); + list.add(EnumChatFormatting.GREEN+"This item produces such a temperature, that you'd hate to use it incorrectly."); + super.addInformation(stack, aPlayer, list, bool); + } + + @Override + public int getColorFromItemStack(final ItemStack stack, int HEX_OxFFFFFF) { + return Utils.rgbtoHexValue(128, 192, 64); + } + + @Override + public boolean onItemUse(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, World par3World, int par4, int par5, int par6, int par7, + float par8, float par9, float par10) { + if (par7 == 0) { + par5--; + } + if (par7 == 1) { + par5++; + } + if (par7 == 2) { + par6--; + } + if (par7 == 3) { + par6++; + } + if (par7 == 4) { + par4--; + } + if (par7 == 5) { + par4++; + } + if (!par2EntityPlayer.canPlayerEdit(par4, par5, par6, par7, par1ItemStack)) { + return false; + } + Block i1 = par3World.getBlock(par4, par5, par6); + if (i1 == Blocks.air) { + par3World.playSoundEffect(par4 + 0.5D, par5 + 0.5D, par6 + 0.5D, "fire.ignite", 1.0F, itemRand.nextFloat() * 0.4F + 0.8F); + if (Dimension_Australia.portalBlock.tryToCreatePortal(par3World, par4, par5, par6)){ + //Make a Portal + } + else { + if (!par3World.isRemote){ + par3World.setBlock(par4, par5, par6, ModBlocks.blockHellfire, 0, 3); + } + } + } + par1ItemStack.damageItem(1, par2EntityPlayer); + return true; + } +}
\ No newline at end of file |