ExampleModItems.java
public class ExampleModItems {
// Items
public static Item customItem;
// Others
ItemBuilder generic_item_builder = new ItemBuilder(MOD_ID);
// Function that make the items
public void Initialize() {
customItem = generic_item_builder.build(new Item("exampleItem", 11000));
}
}
CustomItem.java
public class CustomItem extends Item {
// Custom properties
private boolean is_charged = true;
public CustomItem (String name, int id, boolean charged) {
super(name, id);
this.is_charged = charged;
}
}
public class ExampleModItems {
// Items
public static CustomItem customItem;
// Others
ItemBuilder generic_item_builder = new ItemBuilder(MOD_ID); // ItemBuilder is from Halplibe library, available since 7.2pre1
//Function to initialize items
public void Initialize() {
customItem = generic_item_builder.build(new CustomItem ("exampleItem", 11000, true));
}
}
public class ExampleMod implements ModInitializer, GameStartEntrypoint, RecipeEntrypoint {
public static final String MOD_ID = "examplemod";
public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID);
@Override
public void onInitialize() {
LOGGER.info("Fishing Additions initialized. Debug: "+ isDebug);
}
@Override
public void beforeGameStart() {
new ExampleModItems().Initialize();
}
@Override
public void afterGameStart() {
}
@Override
public void onRecipesReady() {
}
@Override
public void initNamespaces() {
}
}
In your YourModRegistries.java, at the function InitNameSpaces()
add something like it:
Registries.ITEM_GROUPS.register(MOD_ID + ":item/yourgroupgere", Registries.stackListOf(YourModItems.yourItem));
- Item Builder Example: https://github.com/Turnip-Labs/halplibe-examples-repo/tree/itemBuilder
https://github.com/LukeisStuff/stardew-farming-bta/blob/7.2/src/main/java/luke/stardew/StardewRecipes.java for the line of code of Using a namespace to group items.