[1.7.10] Не срабатывает GUI. И пару вопросов про initGUI();

Статус
В этой теме нельзя размещать новые ответы.
[font=Verdana, Helvetica, Arial, sans-serif]Majestic во, спасибо.[/font]


[font=Verdana, Helvetica, Arial, sans-serif]Слушай ты не знаешь каким ещё способом можно установить путь к картинке, просто [/font]
Код:
public ResourceLocation locationtexture = new ResourceLocation("mandastrialcraft:thebookofall");
Не видит картинок.
 
905
5
Ну, вообще-то, биндтехтуре один на весь рендер. Если я правильно помню, биндится так:

Код:
FMLClientHandler.instance().getClient().renderEngine.bindTexture(new ResourceLocation("mod:textures/image.png"));

Хотя в гуе вроде есть переменная mc, и можно mc.renderEngine.

И должно валяться в таком случае тут: assets\mod\textures\image.png.
 
[font=Verdana, Helvetica, Arial, sans-serif]laz2727 всё ты выручил, спасибо.[/font]


[font=Verdana, Helvetica, Arial, sans-serif]Теперь остался один последний вопрос про iniGUI();[/font]
[font=Verdana, Helvetica, Arial, sans-serif]чем нужно заменить controlList, а то  он на вот этот код не знает что такое controlList.[/font]
Код:
@Override
    public void initGui()
    {
        super.initGui();
       this.controlList.clear();

    int posX = (this.width - xSizeOfTexture) / 2;
    int posY = (this.height - ySizeOfTexture) / 2;

    this.controlList.add(new GuiButton(0, posX+ 40, posY + 40, 100, 20, "no use"));
    }
 
905
5
Блин, ну поищи листы в суперклассе.
 
Если будете переходить на 1.7: запомните, не controlList, а labelList, хотя не торопитесь.
[merge_posts_bbcode]Добавлено: 08.09.2014 23:42:23[/merge_posts_bbcode]

Лол, там не только лейбел лист есть :D

[merge_posts_bbcode]Добавлено: 08.09.2014 23:50:23[/merge_posts_bbcode]

Лол, ладно спасибо, если знаете можете ответить, а я пойду спать.
Какая функция есть для того что бы создавать кнопки со своими текстурами?
 
771
5
Наследовать кнопку и рендерить по-своему?
 
Хорошо, давайте поменяем вопрос.
Код:
java.lang.NullPointerException: Unexpected error
    at cpw.mods.fml.common.network.NetworkRegistry.getLocalGuiContainer(NetworkRegistry.java:263)
    at cpw.mods.fml.common.network.internal.FMLNetworkHandler.openGui(FMLNetworkHandler.java:93)
    at net.minecraft.entity.player.EntityPlayer.openGui(EntityPlayer.java:2514)
    at last2424.mods.mandastrialcraft.TMTable.onBlockActivated(TMTable.java:19)
    at net.minecraft.client.multiplayer.PlayerControllerMP.onPlayerRightClick(PlayerControllerMP.java:380)
    at net.minecraft.client.Minecraft.func_147121_ag(Minecraft.java:1528)
    at net.minecraft.client.Minecraft.runTick(Minecraft.java:2043)
    at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1038)
    at net.minecraft.client.Minecraft.run(Minecraft.java:961)
    at net.minecraft.client.main.Main.main(Main.java:164)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:134)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at GradleStart.bounce(GradleStart.java:107)
    at GradleStart.startClient(GradleStart.java:100)
    at GradleStart.main(GradleStart.java:55)
Перевидите на русский а? :D
 
675
2
Глянь же в печку, gui наследуется от контейнера, а в него впихиваются слоты.
 
Try4W, да я уже в принципе разобрался, вот только когда вызываю гуи у меня крашит майн с вот таким сообщением(выше глянь).
У меня срабатывает гуи когда нажимаю по блоку, но он крашит.
 
905
5
Ты открываешь несущестующий гуй.
 
Как чёрт возьми он может не существовать если он прописан?
Код:
case 1: if(tileEntity instanceof TileEntityTiny){
    return new TMTableGui(player.inventory, (TileEntityTiny)tileEntity);
}break;
 
675
2
laz2727 написал(а):
Ты открываешь несущестующий гуй.
Помниться, на 1.6.4 это не вызывало ошибок. Серверная и клиентская часть получаю null просто ничего не делали.
[merge_posts_bbcode]Добавлено: 11.09.2014 16:37:19[/merge_posts_bbcode]

last24242 написал(а):
Как чёрт возьми он может не существовать если он прописан?
Код:
case 1: if(tileEntity instanceof TileEntityTiny){
    return new TMTableGui(player.inventory, (TileEntityTiny)tileEntity);
}break;
Скинь весь GuiHandler.
 
ClientProxy
Код:
package last2424.mods.mandastrialcraft;





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)


{


TileEntity tileEntity = world.getTileEntity(x, y, z);


if (tileEntity != null)


{


switch(ID)


{


case 0: return new TheBookOfAllGui(player); 
case 1: if(tileEntity instanceof TileEntityTiny){
    return new TMTableGui(player.inventory, (TileEntityTiny)tileEntity);
}break;


}


}


return null;





}


}

CommonProxy
Код:
package last2424.mods.mandastrialcraft;

import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import cpw.mods.fml.common.network.IGuiHandler;

public class CommonProxy implements IGuiHandler
{
@Override
public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z)
{
return null;
}
@Override
public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z)
{
TileEntity tileEntity = world.getTileEntity(x, y, z);

if(tileEntity != null)
{
switch(ID)
{
case 0: return new TheBookOfAllGui(player);
case 1: if(tileEntity instanceof TileEntityTiny){
    return new TMTableGui(player.inventory, (TileEntityTiny)tileEntity);
}break;
}
}
return null;
}


}
[merge_posts_bbcode]Добавлено: 11.09.2014 18:41:32[/merge_posts_bbcode]

Открыл гуи через:
Код:
Minecraft.getMinecraft().displayGuiScreen(new TMTableGui(player.inventory, (TileEntityTiny)tileEntity));
Открывается и работает, но вот только почему то когда беру предмет из инвентаря от исчезает сразу же.
 
675
2
Какие-то странные вещи у тебя тут. Зачем прокси то приплетать?

Не хватает break'а, слишком много пустых строк, и getServerGuiElement должен возвращать контейнер GUI, а не само GUI.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху