Class FrostRay


public class FrostRay extends RaySpell
  • Constructor Details

    • FrostRay

      public FrostRay()
  • Method Details

    • onEntityHit

      protected boolean onEntityHit(CastContext ctx, net.minecraft.world.phys.EntityHitResult entityHit, net.minecraft.world.phys.Vec3 origin)
      Specified by:
      onEntityHit in class RaySpell
    • onMiss

      protected boolean onMiss(CastContext ctx, net.minecraft.world.phys.Vec3 origin, net.minecraft.world.phys.Vec3 direction)
      Specified by:
      onMiss in class RaySpell
    • onBlockHit

      protected boolean onBlockHit(CastContext ctx, net.minecraft.world.phys.BlockHitResult blockHit, net.minecraft.world.phys.Vec3 origin)
      Specified by:
      onBlockHit in class RaySpell
    • getCharge

      public int getCharge()
      Overrides:
      getCharge in class Spell
    • spawnParticle

      protected void spawnParticle(CastContext ctx, double x, double y, double z, double vx, double vy, double vz)
      Overrides:
      spawnParticle in class RaySpell
    • playSound

      protected void playSound(net.minecraft.world.level.Level world, net.minecraft.world.entity.LivingEntity entity, int castTicks, int duration)
      Description copied from class: Spell
      Plays this spell's sound at the given entity in the given world. This calls Spell.playSound(Level, double, double, double, int, int), passing in the given entity's position as the xyz coordinates. Also checks if the given entity is silent, and if so, does not play the sound.

      You should override this is you're trying to implement a custom sound loop, check FrostRaySpell as an example.
      Overrides:
      playSound in class Spell
      Parameters:
      world - The world to play the sound in.
      entity - The entity to play the sound at, provided it is not silent.
      castTicks - The number of ticks this spell has already been cast for, passed in from the cast(...) methods. Not used in the base method, but included for use by subclasses overriding this method.
      duration - The number of ticks this spell will be cast for, passed in from the cast(...) methods. Not used in the base method, but included for use by subclasses overriding this method.
    • playSound

      protected void playSound(net.minecraft.world.level.Level world, double x, double y, double z, int ticksInUse, int duration)
      Description copied from class: Spell
      Plays this spell's sounds at the given position in the given world. This is not called automatically; subclasses should call it at the appropriate point(s) in the cast methods. Extend this method entirely if you want to add extra sounds or change the sound behaviour.
      Overrides:
      playSound in class Spell
      Parameters:
      world - The world to play the sound in.
      x - The x position to play the sound at.
      y - The y position to play the sound at.
      z - The z position to play the sound at.
    • isInstantCast

      public boolean isInstantCast()
      Overrides:
      isInstantCast in class Spell
    • properties

      @NotNull protected @NotNull SpellProperties properties()
      Specified by:
      properties in class Spell