[1.7.10] Предмет открывает GUI

здравствуйте.
Сделал свой GuiScreen. Нужно открывать его при onItemRightClick или onItemUse предмета.
Если делать Minecraft.getMinecraft().displayGuiScreen(new MyGui());, то такой мод будет крашить сервер.
А как еще можно открыть GuiScreen, будучи в мультиплеере?
Пробовал делать с использованием IGuiHandler http://www.youtube.com/watch?v=7F-uvqkt5iw, но тоже не получилось. Наверное из-за того, что версия другая.
 
эм.. есть способ и проще чем твой..
player.openGui(ModBase.MODID, 1, null, -1, -1, -1);
[merge_posts_bbcode]Добавлено: 06.08.2014 14:27:13[/merge_posts_bbcode]

Код:
public boolean onBlockActivated(World par1World, int par2, int par3, int par4, EntityPlayer player, int par6, float par7, float par8, float par9) {
         player.openGui(ModBase.MODID, 1, null, -1, -1, -1);
         return true;
    }
типо этого же
 
Да, открывать надо через player.openGui, и в гуи хандлере на клиенте возвращать свой GuiScreen.
 
Код:
//@Anti344
public class OBGuiHandler implements IGuiHandler {

    public Object getServerGuiElement(int id, EntityPlayer player, World wrd, int x, int y, int z){
        switch(id){//В зависимости от id выбираем контейнер
            case 1://
                return new MatterHandler(player);//Вместо player можем дать что угодно, TileEntity, ItemStack предмета(сумки например), это же ваш класс с вашим конструктором
            default:
                return null;
        }
    }

    public Object getClientGuiElement(int id, EntityPlayer player, World wrd, int x, int y, int z){
        switch(id){//В зависимости от id выбираем gui
            case 1:
                return new MHGui(player);//Важно, дать те же параметры, что и контейнеру, в классе GUI увидите
            default:
                return null;
        }
    }
 А еще хандлер нужно регать:

Код:
     @EventHandler
    public void init(FMLInitializationEvent event)
    {
        NetworkRegistry.INSTANCE.registerGuiHandler(MODID, new OBGuiHandler());
    }
[merge_posts_bbcode]Добавлено: 06.08.2014 14:42:58[/merge_posts_bbcode]

О, круто
 
Ну хоть блин автора указывайте(или ссылку), когда мои статьи цитируете.
 
Если ты про код, то я его брал из древних своих кодов, и даже не помню, чей тутор я юзал. Сори
 
Назад
Сверху