Record Class MembersTeamReward

java.lang.Object
java.lang.Record
com.petrolpark.core.data.reward.team.MembersTeamReward
All Implemented Interfaces:
ITypedReward<TeamRewardType>, ITeamReward, net.minecraft.world.level.storage.loot.LootContextUser

public record MembersTeamReward(IEntityReward reward, com.mojang.datafixers.util.Either<net.minecraft.world.level.storage.loot.providers.number.NumberProvider,net.minecraft.world.level.storage.loot.providers.number.NumberProvider> who, boolean random) extends Record implements ITeamReward
Rewards a proportion of members of a ITeam with an IEntityReward.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final com.mojang.serialization.MapCodec<MembersTeamReward>
     
    static final com.mojang.serialization.Codec<MembersTeamReward>
     

    Fields inherited from interface com.petrolpark.core.data.reward.team.ITeamReward

    TYPED_CODEC
  • Constructor Summary

    Constructors
    Constructor
    Description
    MembersTeamReward(IEntityReward reward, com.mojang.datafixers.util.Either<net.minecraft.world.level.storage.loot.providers.number.NumberProvider,net.minecraft.world.level.storage.loot.providers.number.NumberProvider> who, boolean random)
    Creates an instance of a MembersTeamReward record class.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    final boolean
    Indicates whether some other object is "equal to" this one.
     
    final int
    Returns a hash code value for this object.
    boolean
    Returns the value of the random record component.
    void
    render(net.minecraft.client.gui.GuiGraphics graphics)
     
    Returns the value of the reward record component.
    void
    reward(ITeam team, net.minecraft.world.level.storage.loot.LootContext context, float multiplier)
     
    final String
    Returns a string representation of this record class.
    com.mojang.datafixers.util.Either<net.minecraft.world.level.storage.loot.providers.number.NumberProvider,net.minecraft.world.level.storage.loot.providers.number.NumberProvider>
    who()
    Returns the value of the who record component.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface com.petrolpark.core.data.reward.ITypedReward

    translate, translateSimple

    Methods inherited from interface net.minecraft.world.level.storage.loot.LootContextUser

    getReferencedContextParams, validate
  • Field Details

    • CODEC

      public static final com.mojang.serialization.MapCodec<MembersTeamReward> CODEC
    • INLINE_CODEC

      public static final com.mojang.serialization.Codec<MembersTeamReward> INLINE_CODEC
  • Constructor Details

    • MembersTeamReward

      public MembersTeamReward(IEntityReward reward, com.mojang.datafixers.util.Either<net.minecraft.world.level.storage.loot.providers.number.NumberProvider,net.minecraft.world.level.storage.loot.providers.number.NumberProvider> who, boolean random)
      Creates an instance of a MembersTeamReward record class.
      Parameters:
      reward - the value for the reward record component
      who - the value for the who record component
      random - the value for the random record component
  • Method Details

    • reward

      public void reward(ITeam team, net.minecraft.world.level.storage.loot.LootContext context, float multiplier)
      Specified by:
      reward in interface ITeamReward
    • render

      public void render(net.minecraft.client.gui.GuiGraphics graphics)
      Specified by:
      render in interface ITypedReward<TeamRewardType>
    • addToDescription

      public void addToDescription(Lang.IndentedTooltipBuilder builder)
      Specified by:
      addToDescription in interface ITypedReward<TeamRewardType>
    • getType

      public TeamRewardType getType()
      Specified by:
      getType in interface ITypedReward<TeamRewardType>
    • 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 '=='.
      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.
    • reward

      public IEntityReward reward()
      Returns the value of the reward record component.
      Returns:
      the value of the reward record component
    • who

      public com.mojang.datafixers.util.Either<net.minecraft.world.level.storage.loot.providers.number.NumberProvider,net.minecraft.world.level.storage.loot.providers.number.NumberProvider> who()
      Returns the value of the who record component.
      Returns:
      the value of the who record component
    • random

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