Skip to content

Instantly share code, notes, and snippets.

@JayZX535
Last active October 8, 2017 06:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save JayZX535/59bef5022e24aab97bed91027aa3e34b to your computer and use it in GitHub Desktop.
Save JayZX535/59bef5022e24aab97bed91027aa3e34b to your computer and use it in GitHub Desktop.
package com.wildcraft.wildcraft.items.genetics;
import javax.annotation.Nullable;
import net.minecraft.block.Block;
import net.minecraft.block.BlockLiquid;
import net.minecraft.block.state.IBlockState;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.projectile.EntityEgg;
import net.minecraft.init.Blocks;
import net.minecraft.init.SoundEvents;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.stats.StatList;
import net.minecraft.tileentity.MobSpawnerBaseLogic;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.tileentity.TileEntityMobSpawner;
import net.minecraft.util.ActionResult;
import net.minecraft.util.EnumActionResult;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.EnumHand;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.SoundCategory;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.RayTraceResult;
import net.minecraft.world.World;
import net.minecraftforge.common.capabilities.Capability;
import net.minecraftforge.common.capabilities.CapabilityInject;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import net.minecraftforge.items.CapabilityItemHandler;
import net.minecraftforge.items.IItemHandler;
import net.minecraftforge.items.ItemStackHandler;
import com.wildcraft.wildcraft.WildCraft;
import com.wildcraft.wildcraft.client.gui.GuiHandler;
import com.wildcraft.wildcraft.entity.util.container.WCCanineInventoryContainer;
import com.wildcraft.wildcraft.items.WildCraftItem;
import com.wildcraft.wildcraft.items.util.container.WCGeneTesterContainer;
import com.wildcraft.wildcraft.util.ModItems;
import com.wildcraft.wildcraft.util.WCCapabilityProvider;
public class WCGeneTester extends WildCraftItem implements ICapabilityProvider{
private ItemStackHandler handler;
@CapabilityInject(IItemHandler.class)
static Capability<IItemHandler> ITEM_HANDLER_CAPABILITY = null;
private WCGeneTesterContainer canineInv;
public WCGeneTester(String name, CreativeTabs tab) {
super(name, tab);
this.handler = new ItemStackHandler(1);
}
@Override
public <T> T getCapability(Capability<T> capability, EnumFacing facing) {
return (T)handler;
}
/**
* Called when the equipped item is right clicked.
*/
@Override
public ActionResult<ItemStack> onItemRightClick(World world, EntityPlayer player, EnumHand hand)
{
ItemStack itemstack = player.getHeldItem(hand);
System.out.println("onItemRightClick");
player.openGui(WildCraft.instance, GuiHandler.GENE_TESTER, world, hand.ordinal(), player.chunkCoordY, player.chunkCoordZ);
return new ActionResult(EnumActionResult.PASS, itemstack);
}
public void setStackInSlot (ItemStack stack)
{
this.handler.setStackInSlot(0, stack);
}
public ItemStack getStackInSlot ()
{
return this.handler.getStackInSlot(0);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment