/*
* Forge Mod Loader
* Copyright (c) 2012-2013 cpw.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the GNU Lesser Public License v2.1
* which accompanies this distribution, and is available at
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
*
* Contributors:
* cpw - implementation
*/
package cpw.mods.fml.common.modloader;
import java.util.Random;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.IInventory;
import net.minecraft.item.ItemStack;
import net.minecraft.network.INetworkManager;
import net.minecraft.network.NetServerHandler;
import net.minecraft.network.packet.NetHandler;
import net.minecraft.network.packet.Packet250CustomPayload;
import net.minecraft.world.World;
import cpw.mods.fml.common.TickType;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
/**
*
* Marker interface for BaseMod
*
* @author cpw
*
*/
public interface BaseModProxy
{
void modsLoaded();
void load();
String getName();
String getPriorities();
String getVersion();
boolean doTickInGUI(TickType type, boolean end, Object... tickData);
boolean doTickInGame(TickType type, boolean end, Object... tickData);
void generateSurface(World w, Random random, int i, int j);
void generateNether(World w, Random random, int i, int j);
int addFuel(int itemId, int damage);
void takenFromCrafting(EntityPlayer player, ItemStack item, IInventory craftMatrix);
void takenFromFurnace(EntityPlayer player, ItemStack item);
public abstract void onClientLogout(INetworkManager manager);
public abstract void onClientLogin(EntityPlayer player);
public abstract void serverDisconnect();
public abstract void serverConnect(NetHandler handler);
public abstract void receiveCustomPacket(Packet250CustomPayload packet);
public abstract void clientChat(String text);
public abstract void onItemPickup(EntityPlayer player, ItemStack item);
public abstract void serverCustomPayload(NetServerHandler handler, Packet250CustomPayload packet);
public abstract void serverChat(NetServerHandler source, String message);
}