001 package cpw.mods.fml.common.network;
002
003 import net.minecraft.entity.player.EntityPlayer;
004 import net.minecraft.world.World;
005
006 public interface IGuiHandler
007 {
008 /**
009 * Returns a Server side Container to be displayed to the user.
010 *
011 * @param ID
012 * The Gui ID Number
013 * @param player
014 * The player viewing the Gui
015 * @param world
016 * The current world
017 * @param x
018 * X Position
019 * @param y
020 * Y Position
021 * @param z
022 * Z Position
023 * @return A GuiScreen/Container to be displayed to the user, null if none.
024 */
025 public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z);
026 /**
027 * Returns a Container to be displayed to the user. On the client side, this
028 * needs to return a instance of GuiScreen On the server side, this needs to
029 * return a instance of Container
030 *
031 * @param ID
032 * The Gui ID Number
033 * @param player
034 * The player viewing the Gui
035 * @param world
036 * The current world
037 * @param x
038 * X Position
039 * @param y
040 * Y Position
041 * @param z
042 * Z Position
043 * @return A GuiScreen/Container to be displayed to the user, null if none.
044 */
045 public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z);
046 }