User Tools

Site Tools


tutorial:itemgroup

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tutorial:itemgroup [2024/07/03 06:02] solidblocktutorial:itemgroup [2024/08/23 13:03] (current) solidblock
Line 1: Line 1:
 +~~REDIRECT>https://docs.fabricmc.net/develop/items/custom-item-groups~~
 +
 ====== Item Groups ====== ====== Item Groups ======
  
Line 16: Line 18:
  
 <yarncode java [enable_line_numbers="true"]> <yarncode java [enable_line_numbers="true"]>
-ItemGroupEvents.modifyEntriesEvent(class_7706.field_40195).register(content -> { +public class ExampleMod implements ModInitializer { 
- content.add(CUSTOM_ITEM); +    @Override 
-});+    public void onInitialize() { 
 +        ItemGroupEvents.modifyEntriesEvent(class_7706.field_40195).register(content -> { 
 +            content.add(TutorialItems.CUSTOM_ITEM); 
 +        }); 
 +    } 
 +}
 </yarncode> </yarncode>
  
Line 38: Line 45:
 </yarncode> </yarncode>
  
-In practice, considering items you register are in large quantities, it's recommended to place then in a particular method. This is an example:+In practice, considering items you register may be in large quantities, it's recommended to place then in a particular method, instead of directly in your ''ModInitializer''See the following example (if write like this, remember to undo the codes above): 
 <yarncode java [enable_line_numbers="true"]> <yarncode java [enable_line_numbers="true"]>
 public final class TutorialItems { public final class TutorialItems {
     // [...]     // [...]
          
-    public static void registerItemGroups() {+    public static void registerToVanillaItemGroups() {
         ItemGroupEvents.modifyEntriesEvent(class_7706.field_40195).register(content -> {         ItemGroupEvents.modifyEntriesEvent(class_7706.field_40195).register(content -> {
             content.addAfter(class_1802.field_8691, CUSTOM_ITEM);             content.addAfter(class_1802.field_8691, CUSTOM_ITEM);
Line 52: Line 60:
 Then, remember to refer to that method in your ''ModInitializer'': Then, remember to refer to that method in your ''ModInitializer'':
 <yarncode java [enable_line_numbers="true"]> <yarncode java [enable_line_numbers="true"]>
-public class ExampleMod implements ModInitializer+public class ExampleMod implements ModInitializer {
     @Override     @Override
     public void onInitialize() {     public void onInitialize() {
-        TutorialItems.registerItemGroups();+        TutorialItems.registerToVanillaItemGroups();
     }     }
 +}
 </yarncode> </yarncode>
  
Line 66: Line 75:
  
 <yarncode java [enable_line_numbers="true"]> <yarncode java [enable_line_numbers="true"]>
-public static final class TutorialItemGroups {+public final class TutorialItemGroups {
     public static final class_1761 TEST_GROUP = FabricItemGroup.builder()     public static final class_1761 TEST_GROUP = FabricItemGroup.builder()
-        .icon(() -> new class_1799(CUSTOM_ITEM))+        .icon(() -> new class_1799(TutorialItems.CUSTOM_ITEM))
         .displayName(class_2561.method_43469("itemGroup.tutorial.test_group"))         .displayName(class_2561.method_43469("itemGroup.tutorial.test_group"))
         .entries((context, entries) -> {         .entries((context, entries) -> {
-            entries.add(CUSTOM_ITEM);+            entries.add(TutorialItems.CUSTOM_ITEM);
         })         })
         .build();         .build();
Line 84: Line 93:
  
 <yarncode java [enable_line_numbers="true"]> <yarncode java [enable_line_numbers="true"]>
-public static final class TutorialItemGroups {+public final class TutorialItemGroups {
     // ....     // ....
          
Line 99: Line 108:
 Of course, you can directly register them when assigning the fields: Of course, you can directly register them when assigning the fields:
 <yarncode java [enable_line_numbers="true"]> <yarncode java [enable_line_numbers="true"]>
-public static final class TutorialItemGroups {+public final class TutorialItemGroups {
     public static final class_1761 TEST_GROUP = class_2378.method_10230(class_7923.field_44687, new class_2960("tutorial", "test_group"), FabricItemGroup.builder()     public static final class_1761 TEST_GROUP = class_2378.method_10230(class_7923.field_44687, new class_2960("tutorial", "test_group"), FabricItemGroup.builder()
         .icon(() -> new class_1799(CUSTOM_ITEM))         .icon(() -> new class_1799(CUSTOM_ITEM))
         .displayName(class_2561.method_43469("itemGroup.tutorial.test_group"))         .displayName(class_2561.method_43469("itemGroup.tutorial.test_group"))
         .entries((context, entries) -> {         .entries((context, entries) -> {
-            entries.add(CUSTOM_ITEM);+            entries.add(TutorialItems.CUSTOM_ITEM);
         })         })
         .build());         .build());
Line 122: Line 131:
 } }
 </yarncode> </yarncode>
 +
 +:!: The screenshot below is outdated.
  
 {{:tutorial:item_group_append_items.png?nolink&400|}} {{:tutorial:item_group_append_items.png?nolink&400|}}
tutorial/itemgroup.1719986521.txt.gz · Last modified: 2024/07/03 06:02 by solidblock