[1.6.4] Не открывается мое GUI

При заходе в игру, не открывается мое GUI. Прошу помочь.

MGC.java
Код:
package ru.mgc.common;

import net.minecraft.entity.player.EntityPlayer;
import ru.mgc.event.OnPlayerLogin;
import ru.mgc.gui.SelectRoleGui;
import ru.mgc.proxy.CommonProxy;
import cpw.mods.fml.common.IPlayerTracker;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.network.FMLNetworkHandler;
import cpw.mods.fml.common.network.NetworkMod;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.registry.GameRegistry;

@Mod (modid = "MGC", name = "MGC", version = "1.0.0")
@NetworkMod (clientSideRequired = true, serverSideRequired = false)
public class MGC{
    @SidedProxy (clientSide = "ru.mgc.proxy.ClientProxy", serverSide = "ru.mgc.proxy.CommonProxy")
    public static CommonProxy proxy;

    @Instance("MGC")
    public static MGC instance;
    
    @EventHandler
    public void init (FMLInitializationEvent event) {
        GameRegistry.registerPlayerTracker(new OnPlayerLogin());
        NetworkRegistry.instance().registerGuiHandler(this, this.proxy);
        instance = this;
    }
    
        
}


SelectRoleGui.java
Код:
package ru.mgc.gui;

import net.minecraft.client.gui.GuiScreen;
import net.minecraft.entity.player.EntityPlayer;

import org.lwjgl.opengl.GL11;

public class SelectRoleGui extends GuiScreen{

    public static final int GUI_ID = 1337;
    public final int xSizeOfTexture = 176;
    public final int ySizeOfTexture = 88;
    
    public SelectRoleGui(EntityPlayer player) {
        
    }
    
    @Override
    public void drawScreen(int x, int y, float f) {
        drawDefaultBackground();
        super.drawScreen(x, y, f);
    }
    
    @Override
    public void initGui(){
        
    }
}

ClientProxy.java
Код:
package ru.mgc.proxy;

import ru.mgc.gui.SelectRoleGui;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;

public class ClientProxy extends CommonProxy{
   @Override
   public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z){
         switch(ID){
         case 1337:
             return new SelectRoleGui(player);
         default:
             return null;
         }
    }
}

CommonProxy.java
Код:
package ru.mgc.proxy;

import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.world.World;
import ru.mgc.gui.SelectRoleGui;
import cpw.mods.fml.common.network.IGuiHandler;

public class CommonProxy implements IGuiHandler {

    public void registerKeyBindings () {}

    @Override
    public Object getServerGuiElement ( int ID, EntityPlayer player, World world, int x, int y, int z ) {
            return null;
    }

    @Override
    public Object getClientGuiElement ( int ID, EntityPlayer player, World world, int x, int y, int z ) {
        switch(ID){
        case 1337:
            return new SelectRoleGui(player);
        default:
            return null;
        }
    }
}

OnPlayerLogin.java
Код:
package ru.mgc.event;

import ru.mgc.common.MGC;
import net.minecraft.entity.player.EntityPlayer;
import cpw.mods.fml.common.IPlayerTracker;

public class OnPlayerLogin implements IPlayerTracker {

    @Override
    public void onPlayerLogin(EntityPlayer player) {
        player.openGui(MGC.instance, 0, player.worldObj, (int)player.posX, (int)player.posY, (int)player.posZ);

    }

    @Override
    public void onPlayerLogout(EntityPlayer player) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onPlayerChangedDimension(EntityPlayer player) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onPlayerRespawn(EntityPlayer player) {
        // TODO Auto-generated method stub

    }

}
 
Нафига гуи хандлер в прокси? Создай отдельный класс.
instance = this; - такое делать нельзя, аннотация сама это сделает.
NetworkRegistry.instance().registerGuiHandler(this, this.proxy); - вместо this напиши instance.
 
Agravaine написал(а):
Нафига гуи хандлер в прокси? Создай отдельный класс.
instance = this; - такое делать нельзя, аннотация сама это сделает.
NetworkRegistry.instance().registerGuiHandler(this, this.proxy); - вместо this напиши instance.

Извини пожалуйста, может быть я идиот, но все равно не открывается. Не мог бы ты дать уже исправленный код, а то видимо у меня руки кривые.
 
Назад
Сверху