Чтобы ваша ItemGroup
правильно отображалась в меню креатива, используйте FabricItemGroupBuilder
для их создания:
public class ExampleMod implements ModInitializer {
public static final ItemGroup ITEM_GROUP = FabricItemGroupBuilder.build(
new Identifier("tutorial", "general"),
() -> new ItemStack(Blocks.COBBLESTONE));
public static final ItemGroup OTHER_GROUP = FabricItemGroupBuilder.create(
new Identifier("tutorial", "other"))
.icon(() -> new ItemStack(Items.BOWL))
.build();
// ...
}
Как только будет вызван FabricItemGroupBuilder#build
, ваша группа будет добавлена в список групп предметов в меню креатива.
Убедитесь, что вы заменили аргументы 1), вы переходите к конструктору Identifier
с вашим фактическим идентификатором мода и ключом перевода, который вы хотите предоставить своей группе предметов для локализации 2) позже.
При создании своего предмета вызовите команду Item.Settings#group
в ваших настройках и перейдите в свою группу:
public static final Item YOUR_ITEM = new Item(new Item.Settings().group(ExampleMod.ITEM_GROUP));
Вызовите FabricItemGroupBuilder#appendItems
и передайте любой Consumer<List<ItemStack>>
. Затем вы можете добавить любые стаки, которые вы хотите, в данный список в определенном порядке. ItemStack.EMPTY
можно использовать для размещения пустых мест в вашей группе.
public class ExampleMod implements ModInitializer {
public static final ItemGroup ITEM_GROUP = FabricItemGroupBuilder.build(
new Identifier("tutorial", "general"),
() -> new ItemStack(Blocks.COBBLESTONE));
public static final ItemGroup OTHER_GROUP = FabricItemGroupBuilder.create(
new Identifier("tutorial", "other"))
.icon(() -> new ItemStack(Items.BOWL))
.appendItems(stacks -> {
stacks.add(new ItemStack(Blocks.BONE_BLOCK));
stacks.add(new ItemStack(Items.APPLE));
stacks.add(PotionUtil.setPotion(new ItemStack(Items.POTION), Potions.WATER));
stacks.add(ItemStack.EMPTY);
stacks.add(new ItemStack(Items.IRON_SHOVEL));
})
.build();
// ...
}