Заполнение контейнера(инвентаря) предмета при его создании

Версия Minecraft
1.7.10
129
6
18
У меня есть предмет в котором я могу хранить предметы. Но мне нужна когда я беру этот предмет из креатива( или создаётся предмет) в него добавлялись(при создании) другие предметы. Как такое реализовать?
Заранее спасибо.
 
Решение
Смотря как используешь, у меня к примеру можно сделать так:
Java:
ItemStack itemStack = new ItemStack(SMTCommon.item.backpack);
InventoryItemStorage inv = new InventoryItemStorage(itemStack);
inv.setInventorySlotContents(0, new ItemStack(Blocks.stone));
И этот itemStack добавить в креативную вкладку.
Java:
@SideOnly(Side.CLIENT)
@Override
public void getSubItems(Item id, CreativeTabs table, List list) {
ItemStack itemStack = new ItemStack(SMTCommon.item.backpack);
InventoryItemStorage inv = new InventoryItemStorage(itemStack);
inv.setInventorySlotContents(0, new ItemStack(Blocks.stone));
inv.save(itemStack);//если есть что-то подобное, некоторые используют markDirt();
    list.add(itemStack);
}
3,005
192
592
В крафт эвенте копировать вещи из одного предмета в другой?
Или я не о том подумал и аффтор плохо объяснил суть?
 
129
6
18
В крафт эвенте копировать вещи из одного предмета в другой?
Или я не о том подумал и аффтор плохо объяснил суть?
Представь в предмете есть инвентарь. В который ты можешь класть предметы так и убирать. А мне надо чтоб когда ты берёшь предмет из креатива там сразу были предметы(которые мне нужно туда добавлять). Понятно?
 
3,005
192
592
129
6
18

timaxa007

Модератор
5,831
409
672
Смотря как используешь, у меня к примеру можно сделать так:
Java:
ItemStack itemStack = new ItemStack(SMTCommon.item.backpack);
InventoryItemStorage inv = new InventoryItemStorage(itemStack);
inv.setInventorySlotContents(0, new ItemStack(Blocks.stone));
И этот itemStack добавить в креативную вкладку.
Java:
@SideOnly(Side.CLIENT)
@Override
public void getSubItems(Item id, CreativeTabs table, List list) {
ItemStack itemStack = new ItemStack(SMTCommon.item.backpack);
InventoryItemStorage inv = new InventoryItemStorage(itemStack);
inv.setInventorySlotContents(0, new ItemStack(Blocks.stone));
inv.save(itemStack);//если есть что-то подобное, некоторые используют markDirt();
    list.add(itemStack);
}
 
129
6
18
Смотря как используешь, у меня к примеру можно сделать так:
Java:
ItemStack itemStack = new ItemStack(SMTCommon.item.backpack);
InventoryItemStorage inv = new InventoryItemStorage(itemStack);
inv.setInventorySlotContents(0, new ItemStack(Blocks.stone));
И этот itemStack добавить в креативную вкладку.
Java:
@SideOnly(Side.CLIENT)
@Override
public void getSubItems(Item id, CreativeTabs table, List list) {
ItemStack itemStack = new ItemStack(SMTCommon.item.backpack);
InventoryItemStorage inv = new InventoryItemStorage(itemStack);
inv.setInventorySlotContents(0, new ItemStack(Blocks.stone));
inv.save(itemStack);//если есть что-то подобное, некоторые используют markDirt();
list.add(itemStack);
}
Спасибо сработало!
 
Сверху