Record Class StoreItemDefinition<M>

java.lang.Object
java.lang.Record
net.blueva.arcade.api.store.StoreItemDefinition<M>
Type Parameters:
M - the material/icon type (platform-specific)
Record Components:
id - the unique identifier of this item
displayName - the user-friendly name displayed in the store interface
icon - the icon/material representing this item in menus
description - a list of description lines shown to players
price - the cost of this item in coins (0 for free items)
enabled - whether this item is currently active and available for purchase
defaultUnlocked - whether players have this item unlocked by default without purchasing

public record StoreItemDefinition<M>(String id, String displayName, M icon, List<String> description, int price, boolean enabled, boolean defaultUnlocked) extends Record
Defines a purchasable store item.

Store items represent cosmetics, effects, or other purchasable content that players can buy using in-game currency. Items belong to categories and can be unlocked by default or require purchase.

  • Constructor Details

    • StoreItemDefinition

      public StoreItemDefinition(String id, String displayName, M icon, List<String> description, int price, boolean enabled, boolean defaultUnlocked)
      Creates an instance of a StoreItemDefinition record class.
      Parameters:
      id - the value for the id record component
      displayName - the value for the displayName record component
      icon - the value for the icon record component
      description - the value for the description record component
      price - the value for the price record component
      enabled - the value for the enabled record component
      defaultUnlocked - the value for the defaultUnlocked record component
  • Method Details

    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with Objects::equals(Object,Object); primitive components are compared with the compare method from their corresponding wrapper classes.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • id

      public String id()
      Returns the value of the id record component.
      Returns:
      the value of the id record component
    • displayName

      public String displayName()
      Returns the value of the displayName record component.
      Returns:
      the value of the displayName record component
    • icon

      public M icon()
      Returns the value of the icon record component.
      Returns:
      the value of the icon record component
    • description

      public List<String> description()
      Returns the value of the description record component.
      Returns:
      the value of the description record component
    • price

      public int price()
      Returns the value of the price record component.
      Returns:
      the value of the price record component
    • enabled

      public boolean enabled()
      Returns the value of the enabled record component.
      Returns:
      the value of the enabled record component
    • defaultUnlocked

      public boolean defaultUnlocked()
      Returns the value of the defaultUnlocked record component.
      Returns:
      the value of the defaultUnlocked record component