Record Class KineticWeapon

java.lang.Object
java.lang.Record
net.minecraft.world.item.component.KineticWeapon

public record KineticWeapon(int contactCooldownTicks, int delayTicks, Optional<KineticWeapon.Condition> dismountConditions, Optional<KineticWeapon.Condition> knockbackConditions, Optional<KineticWeapon.Condition> damageConditions, float forwardMovement, float damageMultiplier, Optional<Holder<SoundEvent>> sound, Optional<Holder<SoundEvent>> hitSound) extends Record
  • Field Details

    • contactCooldownTicks

      private final int contactCooldownTicks
      The field for the contactCooldownTicks record component.
    • delayTicks

      private final int delayTicks
      The field for the delayTicks record component.
    • dismountConditions

      private final Optional<KineticWeapon.Condition> dismountConditions
      The field for the dismountConditions record component.
    • knockbackConditions

      private final Optional<KineticWeapon.Condition> knockbackConditions
      The field for the knockbackConditions record component.
    • damageConditions

      private final Optional<KineticWeapon.Condition> damageConditions
      The field for the damageConditions record component.
    • forwardMovement

      private final float forwardMovement
      The field for the forwardMovement record component.
    • damageMultiplier

      private final float damageMultiplier
      The field for the damageMultiplier record component.
    • sound

      private final Optional<Holder<SoundEvent>> sound
      The field for the sound record component.
    • hitSound

      private final Optional<Holder<SoundEvent>> hitSound
      The field for the hitSound record component.
    • HIT_FEEDBACK_TICKS

      public static final int HIT_FEEDBACK_TICKS
      See Also:
    • CODEC

      public static final com.mojang.serialization.Codec<KineticWeapon> CODEC
    • STREAM_CODEC

      public static final StreamCodec<RegistryFriendlyByteBuf,KineticWeapon> STREAM_CODEC
  • Constructor Details

    • KineticWeapon

      public KineticWeapon(int contactCooldownTicks, int delayTicks, Optional<KineticWeapon.Condition> dismountConditions, Optional<KineticWeapon.Condition> knockbackConditions, Optional<KineticWeapon.Condition> damageConditions, float forwardMovement, float damageMultiplier, Optional<Holder<SoundEvent>> sound, Optional<Holder<SoundEvent>> hitSound)
      Creates an instance of a KineticWeapon record class.
      Parameters:
      contactCooldownTicks - the value for the contactCooldownTicks record component
      delayTicks - the value for the delayTicks record component
      dismountConditions - the value for the dismountConditions record component
      knockbackConditions - the value for the knockbackConditions record component
      damageConditions - the value for the damageConditions record component
      forwardMovement - the value for the forwardMovement record component
      damageMultiplier - the value for the damageMultiplier record component
      sound - the value for the sound record component
      hitSound - the value for the hitSound record component
  • Method Details

    • getMotion

      public static Vec3 getMotion(Entity pEntity)
    • makeSound

      public void makeSound(Entity pEntity)
    • makeLocalHitSound

      public void makeLocalHitSound(Entity pEntity)
    • computeDamageUseDuration

      public int computeDamageUseDuration()
    • damageEntities

      public void damageEntities(ItemStack pStack, int pRemainingUseDuration, LivingEntity pEntity, EquipmentSlot pSlot)
    • 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.
    • contactCooldownTicks

      public int contactCooldownTicks()
      Returns the value of the contactCooldownTicks record component.
      Returns:
      the value of the contactCooldownTicks record component
    • delayTicks

      public int delayTicks()
      Returns the value of the delayTicks record component.
      Returns:
      the value of the delayTicks record component
    • dismountConditions

      public Optional<KineticWeapon.Condition> dismountConditions()
      Returns the value of the dismountConditions record component.
      Returns:
      the value of the dismountConditions record component
    • knockbackConditions

      public Optional<KineticWeapon.Condition> knockbackConditions()
      Returns the value of the knockbackConditions record component.
      Returns:
      the value of the knockbackConditions record component
    • damageConditions

      public Optional<KineticWeapon.Condition> damageConditions()
      Returns the value of the damageConditions record component.
      Returns:
      the value of the damageConditions record component
    • forwardMovement

      public float forwardMovement()
      Returns the value of the forwardMovement record component.
      Returns:
      the value of the forwardMovement record component
    • damageMultiplier

      public float damageMultiplier()
      Returns the value of the damageMultiplier record component.
      Returns:
      the value of the damageMultiplier record component
    • sound

      public Optional<Holder<SoundEvent>> sound()
      Returns the value of the sound record component.
      Returns:
      the value of the sound record component
    • hitSound

      public Optional<Holder<SoundEvent>> hitSound()
      Returns the value of the hitSound record component.
      Returns:
      the value of the hitSound record component