Package valorless.rarespawns.datamodels
Class EntityData
java.lang.Object
valorless.rarespawns.datamodels.EntityData
Mutable data container representing a rare entity definition and its runtime state.
This structure is populated from configuration (and sometimes dynamically) and then referenced while spawning, updating, running abilities, and handling lifecycle events for rare entities. Unless otherwise stated collections are initialised (never null) to simplify external iteration. Fields may remain null when absence is a meaningful state (e.g., optional strings, numeric overrides, flags).
Runtime maps keyed by LivingEntity (e.g., runnables, abilityRunnables,
bossbars) track per-instance scheduler task ids or UI elements and should be
cleaned up on despawn/death to avoid leaks.
-
Field Summary
FieldsModifier and TypeFieldDescriptionAbility identifiers applied to this entity.Scheduler task ids for ability per-entity periodic runnables.Base absorption value (extra hearts).doubleAggro acquisition range.AI enabled flag.Enable anti-stuck logic (teleport/unstick).Ticks until arrows despawn.Arrow count visually in body.Attribute overrides (GENERIC_* etc.) mapped to values.Axolotl variant.Spawn as baby variant.booleanWhether biome list is a blacklist (true) or whitelist (false).Biome names for spawn condition checking.Enable boss bar UI.org.bukkit.boss.BarColorBoss bar color.Max render distance for boss bar.Boss bar displayed name.HashMap<org.bukkit.entity.LivingEntity, RareEntityBossBar> Active boss bar handles per living entity.org.bukkit.boss.BarStyleBoss bar style (segments, solid).Remaining air supply (breath).Can pick up dropped items.Can use portals.Cat variant/type id.Is collidable with other entities.Single custom name override (if provided) shown by Minecraft.Whether the custom name is always visible.Lines broadcast when entity dies.Radius in blocks for death message distribution.Sound played on death announcement.Allow natural despawn flag.Drop table specification entries (id:chance, etc.).Whether the drop table uses real (natural) drop mechanics.Persistent potion effects with amplifiers.List<org.bukkit.entity.LivingEntity> Active entity instances bound to this definition.Accumulated fall distance.Current fire ticks remaining.Currently gliding (elytra).Glowing outline flag.Gravity enabled flag.Base health value.Horse armor.Horse base color.Horse style (markings).booleanWhether entity is considered hostile (affects AI/targeting logic).Definition identifier (config id).List<org.bukkit.event.entity.EntityDamageEvent.DamageCause> Damage causes this entity is immune to.Inventory / equipment specification.Invisible flag.Whether the entity can be leashed.Multi-line nameplate (raw lines with formatting tokens).Whether a background panel is drawn behind name.Background color (hex / named) for name panel.Billboard mode for name (e.g., fixed, centered) if supported.Maximum line width for wrapped name text.org.bukkit.util.VectorPositional offset applied to the nameplate.Name scale multiplier.Whether the name is visible through walls (see-through).Whether rendered name text uses shadow.View distance (blocks) for name rendering.Whether entity visually on fire.Panda hidden gene.Panda main gene.Parrot variant.Passenger (entity id / config reference).Passenger unique UUID reference.Rabbit variant.Remove when far from players (vanilla despawn).Currently performing riptide.Primary runnable task id per entity (e.g., main tick/update loop).booleanWhether to select a new rare entity if conditions not met.Silent (no sounds) flag.Slime size (for slime/magma cube).booleanWhether slime splits on death.Optional spawn group membership and chance configuration.Lines broadcast to nearby players when spawned.Radius in blocks for spawn message distribution.Sound played on spawn announcement.List<org.bukkit.entity.Spellcaster.Spell> List of spell types this entity can cast.Swimming state.Chance (0-100) of successful tame per attempt.Required item key for taming.Particle count on tame failure.Particle count on tame success.org.bukkit.ParticleParticle effect on tame failure.org.bukkit.ParticleParticle effect on tame success.Sound played on tame failure.Sound played on successful tame.Whether vanilla taming logic applies.Time condition for spawning (e.g., day, night, or custom range i.e.Tropical fish body color.Tropical fish pattern id.Tropical fish pattern color.org.bukkit.entity.EntityTypeMinecraft entity type to spawn.Visible by default to players (not requiring reveal).Weather condition for spawning (e.g., rain, clear).Spawn weight (used in random selection logic).Wolf angry state.Wolf variant/type id. -
Constructor Summary
Constructors -
Method Summary
-
Field Details
-
runnables
Primary runnable task id per entity (e.g., main tick/update loop). -
id
Definition identifier (config id). -
entities
Active entity instances bound to this definition. -
weight
Spawn weight (used in random selection logic). -
spawnGroup
Optional spawn group membership and chance configuration. When set, ties this entity to aSpawnGroupwhich may influence selection/weighting in spawn logic. -
selectNew
public boolean selectNewWhether to select a new rare entity if conditions not met. -
biomes
Biome names for spawn condition checking. -
biomeBlacklist
public boolean biomeBlacklistWhether biome list is a blacklist (true) or whitelist (false). -
weather
Weather condition for spawning (e.g., rain, clear). -
time
Time condition for spawning (e.g., day, night, or custom range i.e. '0-24000'). -
name
Multi-line nameplate (raw lines with formatting tokens). -
customName
Single custom name override (if provided) shown by Minecraft. -
customNameVisible
Whether the custom name is always visible. -
nameTextShadow
Whether rendered name text uses shadow. -
nameLineWidth
Maximum line width for wrapped name text. -
nameBillboard
Billboard mode for name (e.g., fixed, centered) if supported. -
nameScale
Name scale multiplier. -
nameBackgrond
Whether a background panel is drawn behind name. -
nameBackgroundColor
Background color (hex / named) for name panel. -
nameSeeThrough
Whether the name is visible through walls (see-through). -
nameViewDistance
View distance (blocks) for name rendering. -
nameOffset
public org.bukkit.util.Vector nameOffsetPositional offset applied to the nameplate. -
hostile
public boolean hostileWhether entity is considered hostile (affects AI/targeting logic). -
type
public org.bukkit.entity.EntityType typeMinecraft entity type to spawn. -
health
Base health value. -
absorption
Base absorption value (extra hearts). -
effects
Persistent potion effects with amplifiers. -
inventory
Inventory / equipment specification. -
despawn
Allow natural despawn flag. -
antiStuck
Enable anti-stuck logic (teleport/unstick). -
attributes
Attribute overrides (GENERIC_* etc.) mapped to values. -
abilities
Ability identifiers applied to this entity. -
abilityRunnables
Scheduler task ids for ability per-entity periodic runnables. -
spawnMessage
Lines broadcast to nearby players when spawned. -
spawnMessageRadius
Radius in blocks for spawn message distribution. -
spawnMessageSound
Sound played on spawn announcement. -
deathMessage
Lines broadcast when entity dies. -
deathMessageRadius
Radius in blocks for death message distribution. -
deathMessageSound
Sound played on death announcement. -
dropTableReal
Whether the drop table uses real (natural) drop mechanics. -
dropTable
Drop table specification entries (id:chance, etc.). -
bossbar
Enable boss bar UI. -
bossbarName
Boss bar displayed name. -
bossbarColor
public org.bukkit.boss.BarColor bossbarColorBoss bar color. -
bossbarStyle
public org.bukkit.boss.BarStyle bossbarStyleBoss bar style (segments, solid). -
bossbarDistance
Max render distance for boss bar. -
bossbars
Active boss bar handles per living entity. -
ai
AI enabled flag. -
arrowsInBody
Arrow count visually in body. -
arrowsDespawnTicks
Ticks until arrows despawn. -
baby
Spawn as baby variant. -
canPickUpItems
Can pick up dropped items. -
collidable
Is collidable with other entities. -
gliding
Currently gliding (elytra). -
invisible
Invisible flag. -
breath
Remaining air supply (breath). -
removeWhenFarAway
Remove when far from players (vanilla despawn). -
riptiding
Currently performing riptide. -
swimming
Swimming state. -
passenger
Passenger (entity id / config reference). -
passengerUUID
Passenger unique UUID reference. -
fallDistance
Accumulated fall distance. -
fireTicks
Current fire ticks remaining. -
onFire
Whether entity visually on fire. -
glowing
Glowing outline flag. -
gravity
Gravity enabled flag. -
canUsePortals
Can use portals. -
silent
Silent (no sounds) flag. -
visibleByDefault
Visible by default to players (not requiring reveal). -
slimeSize
Slime size (for slime/magma cube). -
slimeSplit
public boolean slimeSplitWhether slime splits on death. -
wolfAngry
Wolf angry state. -
immuneTo
Damage causes this entity is immune to. -
aggroRange
public double aggroRangeAggro acquisition range. -
leadable
Whether the entity can be leashed. -
tameableVanilla
Whether vanilla taming logic applies. -
tameableItem
Required item key for taming. -
tameableChance
Chance (0-100) of successful tame per attempt. -
tameableSoundFail
Sound played on tame failure. -
tameableParticleFail
public org.bukkit.Particle tameableParticleFailParticle effect on tame failure. -
tameableParticleAmountFail
Particle count on tame failure. -
tameableSoundTame
Sound played on successful tame. -
tameableParticleTame
public org.bukkit.Particle tameableParticleTameParticle effect on tame success. -
tameableParticleAmountTame
Particle count on tame success. -
wolfType
Wolf variant/type id. -
catType
Cat variant/type id. -
horseColor
Horse base color. -
horseStyle
Horse style (markings). -
horseArmor
Horse armor. -
parrotType
Parrot variant. -
rabbitType
Rabbit variant. -
axolotlType
Axolotl variant. -
tropicalColor
Tropical fish body color. -
tropicalPattern
Tropical fish pattern id. -
tropicalPatternColor
Tropical fish pattern color. -
pandaMainGene
Panda main gene. -
pandaHiddenGene
Panda hidden gene. -
spells
List of spell types this entity can cast. -
iframes
-
-
Constructor Details
-
EntityData
public EntityData()Constructs a new data container marking it initialised.
-
-
Method Details
-
getInit
Indicates the data object has been constructed (legacy placeholder).
-