Record Class BuiltinTemperatureSourcesImpl

java.lang.Object
java.lang.Record
com.github.thedeathlycow.thermoo.impl.core.BuiltinTemperatureSourcesImpl
All Implemented Interfaces:
BuiltinTemperatureSources

public record BuiltinTemperatureSourcesImpl(TemperatureChange absolute, TemperatureChange active, TemperatureChange passive, TemperatureChange environment, net.minecraft.core.RegistryAccess access) extends Record implements BuiltinTemperatureSources
  • Constructor Details

    • BuiltinTemperatureSourcesImpl

      public BuiltinTemperatureSourcesImpl(net.minecraft.core.RegistryAccess access)
    • BuiltinTemperatureSourcesImpl

      public BuiltinTemperatureSourcesImpl(TemperatureChange absolute, TemperatureChange active, TemperatureChange passive, TemperatureChange environment, net.minecraft.core.RegistryAccess access)
      Creates an instance of a BuiltinTemperatureSourcesImpl record class.
      Parameters:
      absolute - the value for the absolute record component
      active - the value for the active record component
      passive - the value for the passive record component
      environment - the value for the environment record component
      access - the value for the access record component
  • Method Details

    • create

      public TemperatureChange create(net.minecraft.resources.ResourceKey<TemperatureSource> sourceKey)
      Description copied from interface: BuiltinTemperatureSources
      Creates a simple temperature change context with only a type and no cause or position.
      Specified by:
      create in interface BuiltinTemperatureSources
      Parameters:
      sourceKey - The key of the change source, may not be null.
    • create

      public TemperatureChange create(net.minecraft.resources.ResourceKey<TemperatureSource> sourceKey, net.minecraft.world.phys.Vec3 position)
      Description copied from interface: BuiltinTemperatureSources
      Creates a temperature change context with a type and a position, but no cause.
      Specified by:
      create in interface BuiltinTemperatureSources
      Parameters:
      sourceKey - The key of the change source, may not be null.
      position - The position of the temperature change source, may not be null.
    • create

      public TemperatureChange create(net.minecraft.resources.ResourceKey<TemperatureSource> sourceKey, net.minecraft.world.entity.Entity directCause)
      Description copied from interface: BuiltinTemperatureSources
      Creates a temperature change context with a type and a directCause entity. If the directCause is a TraceableEntity and has a non-null owner, then the TemperatureChange.cause() will refer to the owner. Otherwise, the TemperatureChange.directCause() and TemperatureChange.cause() will refer to the same entity. In either case, the TemperatureChange.position() will be the directCause's position.
      Specified by:
      create in interface BuiltinTemperatureSources
      Parameters:
      sourceKey - The key of the change source, may not be null.
      directCause - The entity directly responsible for the change, may not be null.
    • create

      public TemperatureChange create(net.minecraft.resources.ResourceKey<TemperatureSource> sourceKey, net.minecraft.world.entity.Entity cause, net.minecraft.world.entity.Entity directCause)
      Description copied from interface: BuiltinTemperatureSources
      Creates a temperature change context with a type, a cause entity, and a direct cause entity. The TemperatureChange.position() will be the direct cause's position.
      Specified by:
      create in interface BuiltinTemperatureSources
      Parameters:
      sourceKey - The key of the change source, may not be null.
      cause - The entity responsible for the change, may not be null.
      directCause - The entity directly responsible for the change, may not be null.
    • 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. All components in this record class are compared with Objects::equals(Object,Object).
      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.
    • absolute

      public TemperatureChange absolute()
      Returns the value of the absolute record component.
      Specified by:
      absolute in interface BuiltinTemperatureSources
      Returns:
      the value of the absolute record component
    • active

      public TemperatureChange active()
      Returns the value of the active record component.
      Specified by:
      active in interface BuiltinTemperatureSources
      Returns:
      the value of the active record component
    • passive

      public TemperatureChange passive()
      Returns the value of the passive record component.
      Specified by:
      passive in interface BuiltinTemperatureSources
      Returns:
      the value of the passive record component
    • environment

      public TemperatureChange environment()
      Returns the value of the environment record component.
      Specified by:
      environment in interface BuiltinTemperatureSources
      Returns:
      the value of the environment record component
    • access

      public net.minecraft.core.RegistryAccess access()
      Returns the value of the access record component.
      Returns:
      the value of the access record component