- 29
- 1
Здравствуйте!
В этом туториале я покажу как получить доступ к предметам я покажу как использовать предметы из IC2 в своих модах. Многие из вас скажут "Нафиг мне этот тутор если есть OreDictionary". А что делать если какой нибудь предмет или блок из IC2 не зарегистрирован в OreDictionary. Тогда вам в помощь этот туториал.
Итак для начала вам нужно скачать IC2 API. Скачиваем версию для вашего Minecraft'а, тобишь 1.6.4, 1.7.2 или 1.7.10. У меня стоит сборка #478 для Minecraft 1.7.2. Распаковываем это в "ПАПКА С Forge\src\main\java".
Теперь можно приступить создавать мод. Для начала создадим главный класс мода. Думаю не нужно объяснять как это делать, но на всякий случай вот ссылка 1.7.2, 1.6.4. Например мы хотим сделать крафт Улучшенной Электросхемы из Алмазного Блока и 8 Измельчённых Промытых Медных Руд. Для начала загрузим их:
Теперь создаём крафт:
Всё бы хорошо, но, что если нам надо скрафтить несколько предметов из IC2. Для этого просто добавляем в конце переменной ItemStack ".splitStack(кол-во предметов)", вот так:
Теперь мы получим 9 Улучшенных Электросхем
Ну вот вообщем то и всё. Надеюсь урок был вам полезен.
В этом туториале я покажу как получить доступ к предметам я покажу как использовать предметы из IC2 в своих модах. Многие из вас скажут "Нафиг мне этот тутор если есть OreDictionary". А что делать если какой нибудь предмет или блок из IC2 не зарегистрирован в OreDictionary. Тогда вам в помощь этот туториал.
Итак для начала вам нужно скачать IC2 API. Скачиваем версию для вашего Minecraft'а, тобишь 1.6.4, 1.7.2 или 1.7.10. У меня стоит сборка #478 для Minecraft 1.7.2. Распаковываем это в "ПАПКА С Forge\src\main\java".
Теперь можно приступить создавать мод. Для начала создадим главный класс мода. Думаю не нужно объяснять как это делать, но на всякий случай вот ссылка 1.7.2, 1.6.4. Например мы хотим сделать крафт Улучшенной Электросхемы из Алмазного Блока и 8 Измельчённых Промытых Медных Руд. Для начала загрузим их:
Код:
package бла.бла;
import ic2.api.item.IC2Items;
import cpw.mods.fml.common.Loader;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.registry.GameRegistry;
@Mod (modid = "test", name = "TestMod", version = "1.0.0", dependencies = "required-after:IC2")
public class TestMod{
public ItemStack PCOre; //Создаём стак и даём ему имя
public ItemStack AdvancedCircuit;
@EventHandler
public void preLoad(FMLPreInitializationEvent event)
{
PCOre = IC2Items.getItem("purifiedCrushedCopperOre"); //Записываем в стак предмет из IC2. Название предметов смотрим в классе ic2.api.item.IC2Items
AdvancedCircuit = IC2Items.getItem("advancedCircuit");
}}
Теперь создаём крафт:
Код:
package бла.бла;
import ic2.api.item.IC2Items;
import cpw.mods.fml.common.Loader;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.registry.GameRegistry;
@Mod (modid = "test", name = "TestMod", version = "1.0.0", dependencies = "required-after:IC2")
public class TestMod{
public ItemStack PCOre;
public ItemStack AdvancedCircuit;
@EventHandler
public void preLoad(FMLPreInitializationEvent event)
{
PCOre = IC2Items.getItem("purifiedCrushedCopperOre");
AdvancedCircuit = IC2Items.getItem("advancedCircuit");
GameRegistry.addRecipe(AdvancedCircuit,
new Object[]{ "KKK", "KIK", "KKK",
('K'), PCOre, ('I'), Blocks.diamond_block});
//Добавляем крафт, если кто ещё не понял.
}}
Всё бы хорошо, но, что если нам надо скрафтить несколько предметов из IC2. Для этого просто добавляем в конце переменной ItemStack ".splitStack(кол-во предметов)", вот так:
Код:
GameRegistry.addRecipe(AdvancedCircuit.splitStack(9),
new Object[]{ "KKK", "KIK", "KKK",
('K'), PCOre, ('I'), Blocks.diamond_block});
Ну вот вообщем то и всё. Надеюсь урок был вам полезен.