001/* 002 * Forge Mod Loader 003 * Copyright (c) 2012-2013 cpw. 004 * All rights reserved. This program and the accompanying materials 005 * are made available under the terms of the GNU Lesser Public License v2.1 006 * which accompanies this distribution, and is available at 007 * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html 008 * 009 * Contributors: 010 * cpw - implementation 011 */ 012 013package cpw.mods.fml.common.modloader; 014 015import java.util.Random; 016 017import net.minecraft.entity.player.EntityPlayer; 018import net.minecraft.inventory.IInventory; 019import net.minecraft.item.ItemStack; 020import net.minecraft.network.INetworkManager; 021import net.minecraft.network.NetServerHandler; 022import net.minecraft.network.packet.NetHandler; 023import net.minecraft.network.packet.Packet250CustomPayload; 024import net.minecraft.world.World; 025 026import cpw.mods.fml.common.TickType; 027import cpw.mods.fml.relauncher.Side; 028import cpw.mods.fml.relauncher.SideOnly; 029 030/** 031 * 032 * Marker interface for BaseMod 033 * 034 * @author cpw 035 * 036 */ 037public interface BaseModProxy 038{ 039 void modsLoaded(); 040 041 void load(); 042 043 String getName(); 044 045 String getPriorities(); 046 047 String getVersion(); 048 049 boolean doTickInGUI(TickType type, boolean end, Object... tickData); 050 boolean doTickInGame(TickType type, boolean end, Object... tickData); 051 void generateSurface(World w, Random random, int i, int j); 052 void generateNether(World w, Random random, int i, int j); 053 int addFuel(int itemId, int damage); 054 void takenFromCrafting(EntityPlayer player, ItemStack item, IInventory craftMatrix); 055 void takenFromFurnace(EntityPlayer player, ItemStack item); 056 057 public abstract void onClientLogout(INetworkManager manager); 058 059 public abstract void onClientLogin(EntityPlayer player); 060 061 public abstract void serverDisconnect(); 062 063 public abstract void serverConnect(NetHandler handler); 064 065 public abstract void receiveCustomPacket(Packet250CustomPayload packet); 066 067 public abstract void clientChat(String text); 068 069 public abstract void onItemPickup(EntityPlayer player, ItemStack item); 070 071 public abstract void serverCustomPayload(NetServerHandler handler, Packet250CustomPayload packet); 072 073 public abstract void serverChat(NetServerHandler source, String message); 074}