[ci skip] Fix docs for Spawner class and cleanup (#12710)

This commit is contained in:
Pedro
2025-06-21 11:54:24 -04:00
committed by GitHub
parent e714de6365
commit 6d0821d2b5
3 changed files with 38 additions and 38 deletions

View File

@@ -8,13 +8,14 @@ import org.bukkit.block.spawner.SpawnerEntry;
import org.bukkit.entity.EntitySnapshot; import org.bukkit.entity.EntitySnapshot;
import org.bukkit.entity.EntityType; import org.bukkit.entity.EntityType;
import org.bukkit.entity.minecart.SpawnerMinecart; import org.bukkit.entity.minecart.SpawnerMinecart;
import org.jetbrains.annotations.NotNull; import org.jspecify.annotations.NullMarked;
import org.jetbrains.annotations.Nullable; import org.jspecify.annotations.Nullable;
/** /**
* Represents a basic entity spawner. <br> * Represents a basic entity spawner. <br>
* May be a {@link SpawnerMinecart}, {@link CreatureSpawner} or {@link TrialSpawnerConfiguration}. * May be a {@link SpawnerMinecart}, {@link CreatureSpawner} or {@link TrialSpawnerConfiguration}.
*/ */
@NullMarked
public interface BaseSpawner { public interface BaseSpawner {
/** /**
@@ -23,7 +24,7 @@ public interface BaseSpawner {
* @return The creature type or null if it not set. * @return The creature type or null if it not set.
*/ */
@Nullable @Nullable
public EntityType getSpawnedType(); EntityType getSpawnedType();
/** /**
* Set the spawner's creature type. <br> * Set the spawner's creature type. <br>
@@ -31,7 +32,7 @@ public interface BaseSpawner {
* *
* @param creatureType The creature type or null to clear. * @param creatureType The creature type or null to clear.
*/ */
public void setSpawnedType(@Nullable EntityType creatureType); void setSpawnedType(@Nullable EntityType creatureType);
/** /**
* Get the spawner's delay. * Get the spawner's delay.
@@ -40,14 +41,14 @@ public interface BaseSpawner {
* *
* @return The delay. * @return The delay.
*/ */
public int getDelay(); int getDelay();
/** /**
* Set the spawner's delay. * Set the spawner's delay.
* *
* @param delay The delay. * @param delay The delay.
*/ */
public void setDelay(int delay); void setDelay(int delay);
/** /**
* Get the maximum distance(squared) a player can be in order for this * Get the maximum distance(squared) a player can be in order for this
@@ -61,7 +62,7 @@ public interface BaseSpawner {
* @return the maximum distance(squared) a player can be in order for this * @return the maximum distance(squared) a player can be in order for this
* spawner to be active. * spawner to be active.
*/ */
public int getRequiredPlayerRange(); int getRequiredPlayerRange();
/** /**
* Set the maximum distance (squared) a player can be in order for this * Set the maximum distance (squared) a player can be in order for this
@@ -73,7 +74,7 @@ public interface BaseSpawner {
* @param requiredPlayerRange the maximum distance (squared) a player can be * @param requiredPlayerRange the maximum distance (squared) a player can be
* in order for this spawner to be active. * in order for this spawner to be active.
*/ */
public void setRequiredPlayerRange(int requiredPlayerRange); void setRequiredPlayerRange(int requiredPlayerRange);
/** /**
* Get the radius around which the spawner will attempt to spawn mobs in. * Get the radius around which the spawner will attempt to spawn mobs in.
@@ -89,7 +90,7 @@ public interface BaseSpawner {
* *
* @return the spawn range * @return the spawn range
*/ */
public int getSpawnRange(); int getSpawnRange();
/** /**
* Set the new spawn range. * Set the new spawn range.
@@ -98,7 +99,7 @@ public interface BaseSpawner {
* @param spawnRange the new spawn range * @param spawnRange the new spawn range
* @see #getSpawnRange() * @see #getSpawnRange()
*/ */
public void setSpawnRange(int spawnRange); void setSpawnRange(int spawnRange);
/** /**
* Gets the {@link EntitySnapshot} that will be spawned by this spawner or null * Gets the {@link EntitySnapshot} that will be spawned by this spawner or null
@@ -111,7 +112,7 @@ public interface BaseSpawner {
* spawner. * spawner.
*/ */
@Nullable @Nullable
public EntitySnapshot getSpawnedEntity(); EntitySnapshot getSpawnedEntity();
/** /**
* Sets the entity that will be spawned by this spawner. <br> * Sets the entity that will be spawned by this spawner. <br>
@@ -123,7 +124,7 @@ public interface BaseSpawner {
* *
* @param snapshot the entity snapshot or null to clear * @param snapshot the entity snapshot or null to clear
*/ */
public void setSpawnedEntity(@Nullable EntitySnapshot snapshot); void setSpawnedEntity(@Nullable EntitySnapshot snapshot);
/** /**
* Sets the {@link SpawnerEntry} that will be spawned by this spawner. <br> * Sets the {@link SpawnerEntry} that will be spawned by this spawner. <br>
@@ -132,14 +133,14 @@ public interface BaseSpawner {
* *
* @param spawnerEntry the spawner entry to use * @param spawnerEntry the spawner entry to use
*/ */
public void setSpawnedEntity(@NotNull SpawnerEntry spawnerEntry); void setSpawnedEntity(SpawnerEntry spawnerEntry);
/** /**
* Adds a new {@link EntitySnapshot} to the list of entities this spawner can * Adds a new {@link EntitySnapshot} to the list of entities this spawner can
* spawn. * spawn.
* <p> * <p>
* The weight will determine how often this entry is chosen to spawn, higher * The weight will determine how often this entry is chosen to spawn, higher
* weighted entries will spawn more often than lower weighted ones. <br> * weighted entries will spawn more often than lower-weighted ones. <br>
* The {@link SpawnRule} will determine under what conditions this entry can * The {@link SpawnRule} will determine under what conditions this entry can
* spawn, passing null will use the default conditions for the given entity. * spawn, passing null will use the default conditions for the given entity.
* *
@@ -147,7 +148,7 @@ public interface BaseSpawner {
* @param weight the weight * @param weight the weight
* @param spawnRule the spawn rule for this entity, or null * @param spawnRule the spawn rule for this entity, or null
*/ */
public void addPotentialSpawn(@NotNull EntitySnapshot snapshot, int weight, @Nullable SpawnRule spawnRule); void addPotentialSpawn(EntitySnapshot snapshot, int weight, @Nullable SpawnRule spawnRule);
/** /**
* Adds a new {@link SpawnerEntry} to the list of entities this spawner can * Adds a new {@link SpawnerEntry} to the list of entities this spawner can
@@ -156,7 +157,7 @@ public interface BaseSpawner {
* @param spawnerEntry the spawner entry to use * @param spawnerEntry the spawner entry to use
* @see #addPotentialSpawn(EntitySnapshot, int, SpawnRule) * @see #addPotentialSpawn(EntitySnapshot, int, SpawnRule)
*/ */
public void addPotentialSpawn(@NotNull final SpawnerEntry spawnerEntry); void addPotentialSpawn(final SpawnerEntry spawnerEntry);
/** /**
* Sets the list of {@link SpawnerEntry} this spawner can spawn. <br> * Sets the list of {@link SpawnerEntry} this spawner can spawn. <br>
@@ -165,7 +166,7 @@ public interface BaseSpawner {
* *
* @param entries the list of entries * @param entries the list of entries
*/ */
public void setPotentialSpawns(@NotNull final Collection<SpawnerEntry> entries); void setPotentialSpawns(final Collection<SpawnerEntry> entries);
/** /**
* Gets a list of potential spawns from this spawner or an empty list if no * Gets a list of potential spawns from this spawner or an empty list if no
@@ -177,6 +178,5 @@ public interface BaseSpawner {
* entities have been assigned to this spawner * entities have been assigned to this spawner
* @see #getSpawnedType() * @see #getSpawnedType()
*/ */
@NotNull List<SpawnerEntry> getPotentialSpawns();
public List<SpawnerEntry> getPotentialSpawns();
} }

View File

@@ -3,11 +3,14 @@ package org.bukkit.spawner;
import org.bukkit.block.CreatureSpawner; import org.bukkit.block.CreatureSpawner;
import org.bukkit.entity.EntityType; import org.bukkit.entity.EntityType;
import org.bukkit.entity.minecart.SpawnerMinecart; import org.bukkit.entity.minecart.SpawnerMinecart;
import org.bukkit.inventory.ItemStack;
import org.jspecify.annotations.NullMarked;
/** /**
* Represents an entity spawner. <br> * Represents an entity spawner. <br>
* May be a {@link SpawnerMinecart} or a {@link CreatureSpawner}. * May be a {@link SpawnerMinecart} or a {@link CreatureSpawner}.
*/ */
@NullMarked
public interface Spawner extends BaseSpawner { public interface Spawner extends BaseSpawner {
/** /**
@@ -19,7 +22,7 @@ public interface Spawner extends BaseSpawner {
* @param delay The delay. * @param delay The delay.
*/ */
@Override @Override
public void setDelay(int delay); void setDelay(int delay);
/** /**
* The minimum spawn delay amount (in ticks). * The minimum spawn delay amount (in ticks).
@@ -32,7 +35,7 @@ public interface Spawner extends BaseSpawner {
* *
* @return the minimum spawn delay amount * @return the minimum spawn delay amount
*/ */
public int getMinSpawnDelay(); int getMinSpawnDelay();
/** /**
* Set the minimum spawn delay amount (in ticks). * Set the minimum spawn delay amount (in ticks).
@@ -40,7 +43,7 @@ public interface Spawner extends BaseSpawner {
* @param delay the minimum spawn delay amount * @param delay the minimum spawn delay amount
* @see #getMinSpawnDelay() * @see #getMinSpawnDelay()
*/ */
public void setMinSpawnDelay(int delay); void setMinSpawnDelay(int delay);
/** /**
* The maximum spawn delay amount (in ticks). * The maximum spawn delay amount (in ticks).
@@ -56,7 +59,7 @@ public interface Spawner extends BaseSpawner {
* *
* @return the maximum spawn delay amount * @return the maximum spawn delay amount
*/ */
public int getMaxSpawnDelay(); int getMaxSpawnDelay();
/** /**
* Set the maximum spawn delay amount (in ticks). * Set the maximum spawn delay amount (in ticks).
@@ -67,7 +70,7 @@ public interface Spawner extends BaseSpawner {
* @param delay the new maximum spawn delay amount * @param delay the new maximum spawn delay amount
* @see #getMaxSpawnDelay() * @see #getMaxSpawnDelay()
*/ */
public void setMaxSpawnDelay(int delay); void setMaxSpawnDelay(int delay);
/** /**
* Get how many mobs attempt to spawn. * Get how many mobs attempt to spawn.
@@ -76,27 +79,27 @@ public interface Spawner extends BaseSpawner {
* *
* @return the current spawn count * @return the current spawn count
*/ */
public int getSpawnCount(); int getSpawnCount();
/** /**
* Set how many mobs attempt to spawn. * Set how many mobs attempt to spawn.
* *
* @param spawnCount the new spawn count * @param spawnCount the new spawn count
*/ */
public void setSpawnCount(int spawnCount); void setSpawnCount(int spawnCount);
/** /**
* Set the new maximum amount of similar entities that are allowed to be * Get the maximum number of similar entities that are allowed to be
* within spawning range of this spawner. * within the spawning range of this spawner.
* <br> * <br>
* If more than the maximum number of entities are within range, the spawner * If more than the maximum number of entities are within range, the spawner
* will not spawn and try again with a new {@link #getDelay()}. * will not spawn and try again with a new {@link #getDelay()}.
* <br> * <br>
* Default value is 16. * Default value is 6.
* *
* @return the maximum number of nearby, similar, entities * @return the maximum number of nearby, similar, entities
*/ */
public int getMaxNearbyEntities(); int getMaxNearbyEntities();
/** /**
* Set the maximum number of similar entities that are allowed to be within * Set the maximum number of similar entities that are allowed to be within
@@ -106,20 +109,19 @@ public interface Spawner extends BaseSpawner {
* *
* @param maxNearbyEntities the maximum number of nearby, similar, entities * @param maxNearbyEntities the maximum number of nearby, similar, entities
*/ */
public void setMaxNearbyEntities(int maxNearbyEntities); void setMaxNearbyEntities(int maxNearbyEntities);
// Paper start
/** /**
* Check if spawner is activated (a player is close enough) * Check if spawner is activated (a player is close enough)
* *
* @return True if a player is close enough to activate it * @return True if a player is close enough to activate it
*/ */
public boolean isActivated(); boolean isActivated();
/** /**
* Resets the spawn delay timer within the min/max range * Resets the spawn delay timer within the min/max range
*/ */
public void resetTimer(); void resetTimer();
/** /**
* Sets the {@link EntityType} to {@link EntityType#ITEM} and sets the data to the given * Sets the {@link EntityType} to {@link EntityType#ITEM} and sets the data to the given
@@ -128,9 +130,8 @@ public interface Spawner extends BaseSpawner {
* {@link #setSpawnCount(int)} does not dictate the amount of items in the stack spawned, but rather how many * {@link #setSpawnCount(int)} does not dictate the amount of items in the stack spawned, but rather how many
* stacks should be spawned. * stacks should be spawned.
* *
* @param itemStack The item to spawn. Must not {@link org.bukkit.Material#isAir be air}. * @param itemStack The item to spawn. Must not {@link ItemStack#isEmpty() be empty}.
* @see #setSpawnedType(EntityType) * @see #setSpawnedType(EntityType)
*/ */
void setSpawnedItem(org.bukkit.inventory.@org.jetbrains.annotations.NotNull ItemStack itemStack); void setSpawnedItem(ItemStack itemStack);
// Paper end
} }

View File

@@ -8,7 +8,6 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Optional; import java.util.Optional;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import net.minecraft.core.RegistryAccess;
import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.CompoundTag;
import net.minecraft.util.InclusiveRange; import net.minecraft.util.InclusiveRange;
import net.minecraft.util.ProblemReporter; import net.minecraft.util.ProblemReporter;