Как сделать...

Версия Minecraft
1.7.10
Кто нибудь может дать ссылку на гайд по созданию гуи обьяснению как работает тайлэнтити и все такое. Ибо блок итем и все такое я нашел, а вот нормального гайда по созданию гуи нет...
 
igorbukur написал(а):
Кто нибудь может дать ссылку на гайд по созданию гуи
Вот держи:
igorbukur написал(а):
а вот нормальный гайд по созданию гуи нет...
Как это нет? Всё есть, ты как искал? У меня лично всё нормально находит.
gB2WkWlg.png

i4ZcjPL.png
 
Это все на заморском. (хотя я немного все же знаю английский) Но понять что такое тайл энтити как это работает как создаються слоты так и не получилось.


Просто делать мод в котором будут добавляться просто какие то руды и бронь с инструментами как то тупо. Хочется по шаманить с машинками добавить какие нибудь конвертеры энергии, а так же создать свой вид энергии. (тем более идеи есть). Я конечно навряд ли со своими знаниями смогу создать что то масштабное типа thaumcraft или industrial craft но чисто для себя хотя бы что нибудь сварганить.
 
Наверное мало вероятно найти по "обьяснению как работает тайлэнтити", так как не каждый знает его полною работу способность. Смотри в исходники и сам старайся понять.
igorbukur написал(а):
вот нормальный гайд по созданию гуи нет...
"нормальный" понятие растяжимое. Есть много гайдов, по созданию гуи.
http://www.minecraftforge.net/wiki/Containers_and_GUIs
http://bedrockminer.jimdo.com/modding-tutorials/advanced-modding/tile-entity-with-inventory/
Самое простое создание гуи - создать класс с унаследованием от "net.minecraft.client.gui.GuiScreen" и открыть на стороне клиента:
Код:
Minecraft.getMinecraft().displayGuiScreen(new MyGui();
---
Создать гуи в котором будет инвентарь, то это другое дело. Нужно будет сделать:
- создать класс с имплемитацией "cpw.mods.fml.common.network.IGuiHandler" и добавить методов от IGuiHandler, а так-же и его регистрация
Код:
NetworkRegistry.INSTANCE.registerGuiHandler(instance, new MyGuiHandler());
в init'е в "главного класса",
- создать класс с унаследованием от "net.minecraft.inventory.Container" с добавлением нужных методов и конструктора, в конструкторе нужно будет указывать наш инвентарь для слотов,
- создать класс с унаследованием от "net.minecraft.client.gui.inventory.GuiContainer" с добавлением нужных методов и конструктора, в конструкторе нужно будет использовать super в его аргумент указываем нашего Container'а,
- В твоём GuiHandler'е добавить твой GuiContainer в return метода getClientGuiElement и твой Container в return метода getServerGuiElement, с подходящими условиями для их return'ов.
- открывать гуи:
Код:
player.openGui(instance, ID, world, x, y, z);
где:
instance - это инстанция твоего мода,
ID - это ид в int типе, для условия в твоём GuiHandler'е,
world - это World в котором будет открыто,
x, y, z - это координаты в int типе, которые указывают координаты для открытия гуи. Обычно по этим координатам ищем в мире нужный нам инвентарь.
В этом случаи, обычно используют TileEntity, чтобы сохранять вещи из нашего созданного инвентаря, а так-же взаимодействия с этим инвентарём. Чтобы взаимодействовать, нужно для нашего TileEntity имплементировать net.minecraft.inventory.IInventory, добавить нужных методов, в этих методах указывать, что нужно для взаимодействия... Бла-бла-бла (я уже устал писать)...

И это это ещё поверхностно написал. Бывают разные Gui с разными элементами и взаимодействия. Подробно "и все такое" мало вероятно найдёшь.
 
Назад
Сверху