// Path: src/main/java/com/panicnot42/warpbook/core/IDeclareWarp.java
// public interface IDeclareWarp {
//   /** Used by the warpbook for generating it's listing.  Must be used for warp book pages */
//   String getName(World world, ItemStack stack);
//   
//   /** Gets the waypoint for this object */
//   Waypoint getWaypoint(EntityPlayer player, ItemStack stack);
//   
//   /** Does this stack have valid waypoint data? */
//   boolean hasValidData(ItemStack stack);
//   
// }
// 
// Path: src/main/java/com/panicnot42/warpbook/item/WarpItem.java
// public class WarpItem extends Item implements IDeclareWarp, IColorable {
// 	
// 	public static final String unbound = "§4§kUnbound";
// 	public static final String ttprefix = "§a";
// 	
// 	public Warp warp = new Warp();
// 	public boolean cloneable = false;;
// 	
// 	public WarpItem(String name) {
// 		setUnlocalizedName(name);
// 		setRegistryName(name);
// 	}
// 	
// 	public WarpItem setWarp(Warp warp) {
// 		this.warp = warp;
// 		return this;
// 	}
// 
// 	public WarpItem setCloneable(boolean is) {
// 		this.cloneable = is;
// 		return this;
// 	}
// 	
// 	@Override
// 	public String getName(World world, ItemStack stack) {
// 		return warp.getName(world, stack);
// 	}
// 	
// 	@Override
// 	public Waypoint getWaypoint(EntityPlayer player, ItemStack stack) {
// 		return warp.getWaypoint(player, stack);
// 	}
// 	
// 	@Override
// 	public boolean hasValidData(ItemStack stack) {
// 		return warp.hasValidData(stack);
// 	}
// 
// 	@Override
// 	@SideOnly(Side.CLIENT)
// 	public void addInformation(ItemStack stack, World world, List<String> tooltip, ITooltipFlag flagIn) {
// 		warp.addInformation(stack, world, tooltip, flagIn);
// 	}
// 	
// 	/** Can this be copied to a page? Either in the book cloner or via a copy recipe */
// 	public boolean isWarpCloneable(ItemStack stack) {
// 		return cloneable;
// 	}
// 
// 	public boolean canGoInBook() {
// 		return false;
// 	}
// 
// 	@Override
// 	@SideOnly(Side.CLIENT)
// 	public int getColor(ItemStack stack, int tintIndex) {
// 		return 0xFFFFFFFF;
// 	}
// 	
// 	@SideOnly(Side.CLIENT)
// 	public WarpColors getWarpColor() {
// 		return warp.getColor();
// 	}
// 	
// }


import com.panicnot42.warpbook.core.IDeclareWarp;
import com.panicnot42.warpbook.item.WarpItem;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
package com.panicnot42.warpbook.inventory;



public class SlotWarpBook extends Slot {
	public SlotWarpBook(InventoryWarpBook inventory, int i, int j, int k) {
		super(inventory, i, j, k);
	}
	
	public static boolean itemValid(ItemStack itemStack) {
// Path: src/main/java/com/panicnot42/warpbook/core/IDeclareWarp.java
// public interface IDeclareWarp {
//   /** Used by the warpbook for generating it's listing.  Must be used for warp book pages */
//   String getName(World world, ItemStack stack);
//   
//   /** Gets the waypoint for this object */
//   Waypoint getWaypoint(EntityPlayer player, ItemStack stack);
//   
//   /** Does this stack have valid waypoint data? */
//   boolean hasValidData(ItemStack stack);
//   
// }
// 
// Path: src/main/java/com/panicnot42/warpbook/item/WarpItem.java
// public class WarpItem extends Item implements IDeclareWarp, IColorable {
// 	
// 	public static final String unbound = "§4§kUnbound";
// 	public static final String ttprefix = "§a";
// 	
// 	public Warp warp = new Warp();
// 	public boolean cloneable = false;;
// 	
// 	public WarpItem(String name) {
// 		setUnlocalizedName(name);
// 		setRegistryName(name);
// 	}
// 	
// 	public WarpItem setWarp(Warp warp) {
// 		this.warp = warp;
// 		return this;
// 	}
// 
// 	public WarpItem setCloneable(boolean is) {
// 		this.cloneable = is;
// 		return this;
// 	}
// 	
// 	@Override
// 	public String getName(World world, ItemStack stack) {
// 		return warp.getName(world, stack);
// 	}
// 	
// 	@Override
// 	public Waypoint getWaypoint(EntityPlayer player, ItemStack stack) {
// 		return warp.getWaypoint(player, stack);
// 	}
// 	
// 	@Override
// 	public boolean hasValidData(ItemStack stack) {
// 		return warp.hasValidData(stack);
// 	}
// 
// 	@Override
// 	@SideOnly(Side.CLIENT)
// 	public void addInformation(ItemStack stack, World world, List<String> tooltip, ITooltipFlag flagIn) {
// 		warp.addInformation(stack, world, tooltip, flagIn);
// 	}
// 	
// 	/** Can this be copied to a page? Either in the book cloner or via a copy recipe */
// 	public boolean isWarpCloneable(ItemStack stack) {
// 		return cloneable;
// 	}
// 
// 	public boolean canGoInBook() {
// 		return false;
// 	}
// 
// 	@Override
// 	@SideOnly(Side.CLIENT)
// 	public int getColor(ItemStack stack, int tintIndex) {
// 		return 0xFFFFFFFF;
// 	}
// 	
// 	@SideOnly(Side.CLIENT)
// 	public WarpColors getWarpColor() {
// 		return warp.getColor();
// 	}
// 	
// }


// Path: src/main/java/com/panicnot42/warpbook/inventory/SlotWarpBook.java
import com.panicnot42.warpbook.core.IDeclareWarp;
import com.panicnot42.warpbook.item.WarpItem;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;

package com.panicnot42.warpbook.inventory;



public class SlotWarpBook extends Slot {
	public SlotWarpBook(InventoryWarpBook inventory, int i, int j, int k) {
		super(inventory, i, j, k);
	}
	
	public static boolean itemValid(ItemStack itemStack) {
		return itemStack.getItem() instanceof IDeclareWarp && ((WarpItem)itemStack.getItem()).canGoInBook();