001 package cpw.mods.fml.common;
002
003 import java.util.List;
004
005 import com.google.common.collect.MapDifference;
006
007 import net.minecraft.entity.Entity;
008 import net.minecraft.network.INetworkManager;
009 import net.minecraft.network.packet.NetHandler;
010 import net.minecraft.network.packet.Packet;
011 import net.minecraft.network.packet.Packet131MapData;
012 import net.minecraft.server.MinecraftServer;
013 import cpw.mods.fml.common.network.EntitySpawnAdjustmentPacket;
014 import cpw.mods.fml.common.network.EntitySpawnPacket;
015 import cpw.mods.fml.common.network.ModMissingPacket;
016 import cpw.mods.fml.common.registry.ItemData;
017 import cpw.mods.fml.common.registry.EntityRegistry.EntityRegistration;
018 import cpw.mods.fml.relauncher.Side;
019
020 public interface IFMLSidedHandler
021 {
022 List<String> getAdditionalBrandingInformation();
023
024 Side getSide();
025
026 void haltGame(String message, Throwable exception);
027
028 void showGuiScreen(Object clientGuiElement);
029
030 Entity spawnEntityIntoClientWorld(EntityRegistration registration, EntitySpawnPacket packet);
031
032 void adjustEntityLocationOnClient(EntitySpawnAdjustmentPacket entitySpawnAdjustmentPacket);
033
034 void beginServerLoading(MinecraftServer server);
035
036 void finishServerLoading();
037
038 MinecraftServer getServer();
039
040 void sendPacket(Packet packet);
041
042 void displayMissingMods(ModMissingPacket modMissingPacket);
043
044 void handleTinyPacket(NetHandler handler, Packet131MapData mapData);
045
046 void setClientCompatibilityLevel(byte compatibilityLevel);
047
048 byte getClientCompatibilityLevel();
049
050 boolean shouldServerShouldBeKilledQuietly();
051
052 void disconnectIDMismatch(MapDifference<Integer, ItemData> s, NetHandler toKill, INetworkManager mgr);
053 }