package joshie.harvest.api.npc;
import joshie.harvest.api.npc.greeting.IGreeting;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.EntityAgeable;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
public interface IInfoButton<E extends EntityAgeable> extends IGreeting<E> {
/** Get the display name for the button **/
default String getDisplayName(ItemStack stack) { return stack.getDisplayName(); }
/** If this button can be displayed currently **/
default boolean canDisplay(NPC npc, EntityPlayer player) { return true; }
/** Called serverside when this button is clicked
* @return true if we should open a new chat window **/
default boolean onClicked(NPC npc, EntityPlayer player) { return true; }
/** Called to draw the info button **/
@SideOnly(Side.CLIENT)
default void drawIcon(GuiScreen gui, int x, int y) {}
@SideOnly(Side.CLIENT)
default String getTooltip() { return ""; }
}