Class WaveSummonGoal<T extends net.minecraft.world.entity.Mob & WaveSummoningBoss>

java.lang.Object
net.minecraft.world.entity.ai.goal.Goal
tech.anonymoushacker1279.immersiveweapons.entity.ai.goal.WaveSummonGoal<T>
Direct Known Subclasses:
CelestialTowerSummonGoal, TheCommanderSummonGoal

public abstract class WaveSummonGoal<T extends net.minecraft.world.entity.Mob & WaveSummoningBoss> extends net.minecraft.world.entity.ai.goal.Goal
  • Nested Class Summary

    Nested classes/interfaces inherited from class net.minecraft.world.entity.ai.goal.Goal

    net.minecraft.world.entity.ai.goal.Goal.Flag
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final T
     
    protected final Map<net.minecraft.world.entity.Mob,Boolean>
     
    protected final String
     
    protected int
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    WaveSummonGoal(T mob, String summonedEntityTag)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    addToSpawnQueue(net.minecraft.world.entity.Mob mob, boolean isFodder)
    Add a mob to the spawn queue.
    boolean
     
    protected abstract void
     
    protected int
     
    protected boolean
     
    protected void
    spawnEntity(net.minecraft.server.level.ServerLevel level, net.minecraft.world.entity.Mob mob, net.minecraft.core.BlockPos summonPos, boolean isFodder)
     
    protected void
    spawnEntityParticles(net.minecraft.server.level.ServerLevel level)
     
    protected void
    spawnFromMobQueue(int amount)
    Spawn a given amount of mobs from the spawn queue.
    void
     

    Methods inherited from class net.minecraft.world.entity.ai.goal.Goal

    adjustedTickDelay, canContinueToUse, getFlags, getServerLevel, getServerLevel, isInterruptable, reducedTickDelay, requiresUpdateEveryTick, setFlags, start, stop, toString

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • mob

      protected final T extends net.minecraft.world.entity.Mob & WaveSummoningBoss mob
    • summonedEntityTag

      protected final String summonedEntityTag
    • mobSpawnQueue

      protected final Map<net.minecraft.world.entity.Mob,Boolean> mobSpawnQueue
    • waveSpawnCooldown

      protected int waveSpawnCooldown
  • Constructor Details

    • WaveSummonGoal

      public WaveSummonGoal(T mob, String summonedEntityTag)
  • Method Details

    • canUse

      public boolean canUse()
      Specified by:
      canUse in class net.minecraft.world.entity.ai.goal.Goal
    • tick

      public void tick()
      Overrides:
      tick in class net.minecraft.world.entity.ai.goal.Goal
    • spawnEntityParticles

      protected void spawnEntityParticles(net.minecraft.server.level.ServerLevel level)
    • spawnEntity

      protected void spawnEntity(net.minecraft.server.level.ServerLevel level, net.minecraft.world.entity.Mob mob, net.minecraft.core.BlockPos summonPos, boolean isFodder)
    • addToSpawnQueue

      protected void addToSpawnQueue(net.minecraft.world.entity.Mob mob, boolean isFodder)
      Add a mob to the spawn queue. A wave of entities is not spawned all at once for performance reasons.
      Parameters:
      mob - the Mob to add
    • spawnFromMobQueue

      protected void spawnFromMobQueue(int amount)
      Spawn a given amount of mobs from the spawn queue.
      Parameters:
      amount - the amount of mobs to spawn
    • getEligibleMobsInArea

      protected int getEligibleMobsInArea()
    • isWavesPastHalf

      protected boolean isWavesPastHalf()
    • doWaveSpawnBehavior

      protected abstract void doWaveSpawnBehavior()