Package net.glowstone.entity
Class GlowAnimal
- All Implemented Interfaces:
net.kyori.adventure.audience.Audience
,net.kyori.adventure.text.event.HoverEventSource<net.kyori.adventure.text.event.HoverEvent.ShowEntity>
,org.bukkit.attribute.Attributable
,org.bukkit.command.CommandSender
,org.bukkit.entity.Ageable
,org.bukkit.entity.Animals
,org.bukkit.entity.Breedable
,org.bukkit.entity.Creature
,org.bukkit.entity.Damageable
,org.bukkit.entity.Entity
,org.bukkit.entity.LivingEntity
,org.bukkit.entity.Mob
,org.bukkit.loot.Lootable
,org.bukkit.metadata.Metadatable
,org.bukkit.Nameable
,org.bukkit.permissions.Permissible
,org.bukkit.permissions.ServerOperator
,org.bukkit.persistence.PersistentDataHolder
,org.bukkit.projectiles.ProjectileSource
- Direct Known Subclasses:
GlowChicken
,GlowCow
,GlowMooshroom
,GlowPig
,GlowPolarBear
,GlowRabbit
,GlowSheep
,GlowTameable
Represents an Animal, such as a Cow.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.bukkit.entity.Entity
org.bukkit.entity.Entity.Spigot
-
Field Summary
Fields inherited from class net.glowstone.entity.GlowAgeable
height, width
Fields inherited from class net.glowstone.entity.GlowLivingEntity
deathTicks, health, maxHealth, movement, speed, taskManager
Fields inherited from class net.glowstone.entity.GlowEntity
active, airDrag, applyDragBeforeAccel, boundingBox, ENTITY_ID_NOBODY, entityId, gravityAccel, liquidDrag, location, metadata, passengerChanged, previousLocation, removed, server, slipMultiplier, teleported, ticksLived, vehicle, velocity, velocityChanged, world, worldLock
-
Constructor Summary
ConstructorDescriptionGlowAnimal
(org.bukkit.Location location, org.bukkit.entity.EntityType type, double maxHealth) Creates a new ageable animal. -
Method Summary
Modifier and TypeMethodDescriptionprotected int
computeGrowthAmount
(org.bukkit.Material material) Computes the growth amount using a specific material for the current ageable creature.boolean
entityInteract
(GlowPlayer player, InteractEntityMessage message) protected int
Get the minimal delay until the entity can produce an ambient sound.@Nullable UUID
Set<org.bukkit.Material>
Returns an immutable set containing the breeding foods for the current animal.boolean
void
setBreedCause
(@Nullable UUID uuid) protected boolean
tryFeed
(org.bukkit.Material type, GlowPlayer player) Determines whether this entity can eat an item while healthy, and if so, applies the effects of eating it.Methods inherited from class net.glowstone.entity.GlowAgeable
canBreed, canGrow, createBaby, createSpawnMessage, getAge, getAgeLock, getForcedAge, getLoveModeTicks, getParent, getSoundPitch, grow, isAdult, pulse, setAdult, setAge, setAgeLock, setBaby, setBreed, setForcedAge, setLoveModeTicks, setParent, setScale, setScaleForAge
Methods inherited from class net.glowstone.entity.GlowCreature
getLootTable, getPathfinder, getSeed, getTarget, getType, isInDaylight, setLootTable, setSeed, setTarget
Methods inherited from class net.glowstone.entity.GlowLivingEntity
addPotionEffect, addPotionEffect, addPotionEffects, attack, canTakeDamage, clearActiveItem, clearActivePotionEffects, createUpdateMessage, damage, getAbsorptionAmount, getActiveItem, getActivePotionEffects, getAmbientSound, getArrowCooldown, getArrowsInBody, getArrowsStuck, getAttribute, getAttributeManager, getCanPickupItems, getCategory, getCollidableExemptions, getDeathSound, getDeathTicks, getEquipment, getEquipmentMonitor, getEyeHeight, getEyeHeight, getEyeLocation, getHandRaisedTime, getHeadYaw, getHealth, getHurtDirection, getHurtSound, getItemUseRemainingTime, getKiller, getLastDamage, getLastDamager, getLastTwoTargetBlocks, getLineOfSight, getMaxHealth, getMaximumAir, getMaximumNoDamageTicks, getMemory, getMovement, getNoDamageTicks, getPlayerDamageTick, getPotionEffect, getRemainingAir, getRemoveWhenFarAway, getShieldBlockingDelay, getSoundVolume, getSpeed, getState, getTargetBlock, getTargetBlock, getTargetBlockExact, getTargetBlockExact, getTargetBlockFace, getTargetBlockInfo, getTargetEntity, getTargetEntityInfo, getTaskManager, getVelocityFromMovement, hasAI, hasLineOfSight, hasPotionEffect, isArthropod, isCollidable, isFallFlying, isGliding, isHandRaised, isInvisible, isJumping, isRiptiding, isSleeping, isSwimming, isUndead, isWithinSolidBlock, jump, launchProjectile, launchProjectile, launchProjectile, launchProjectile, playAnimation, playPickupItemAnimation, pulsePhysics, rayTraceBlocks, rayTraceBlocks, registerAttribute, removePotionEffect, reset, resetMaxHealth, setAbsorptionAmount, setAI, setArrowCooldown, setArrowsInBody, setArrowsStuck, setCanPickupItems, setCollidable, setFallFlying, setGliding, setHeadYaw, setHealth, setHurtDirection, setInvisible, setJumping, setKiller, setLastDamage, setLastDamager, setMaxHealth, setMaximumAir, setMaximumNoDamageTicks, setMemory, setMovement, setNoDamageTicks, setOnGround, setPlayerDamageTick, setRemainingAir, setRemoveWhenFarAway, setShieldBlockingDelay, setSpeed, setState, setSwimming, swingMainHand, swingOffHand, tryUseTotem, updatePotionEffectsMetadata
Methods inherited from class net.glowstone.entity.GlowEntity
addAttachment, addAttachment, addAttachment, addAttachment, addPassenger, addScoreboardTag, collide, createAfterSpawnMessage, customName, customName, damage, damage, damage, eject, equals, fromMobSpawner, getBoundingBox, getCardinalFacing, getChunk, getCustomName, getCustomTags, getDismountLocation, getEffectivePermissions, getEntityId, getEntitySpawnReason, getFacing, getFallDistance, getFireTicks, getGravityAccel, getHeight, getLastDamageCause, getLeashedEntities, getLeashHolder, getLocation, getLocation, getMaxFireTicks, getMetadata, getMetadata, getMountLocation, getName, getNearbyEntities, getOrigin, getPassenger, getPassengers, getPersistentDataContainer, getPistonMoveReaction, getPortalCooldown, getPose, getScoreboardTags, getServer, getTicksLived, getUniqueId, getVehicle, getVelocity, getWidth, getWorld, hasDefaultLandingBehavior, hasFriction, hasGravity, hashCode, hasMetadata, hasMoved, hasPermission, hasPermission, hasRotated, intersects, isCustomNameVisible, isDead, isEmpty, isGlowing, isInBubbleColumn, isInLava, isInMaterial, isInRain, isInsideVehicle, isInvulnerable, isInWater, isInWaterOrBubbleColumn, isInWaterOrRain, isInWaterOrRainOrBubbleColumn, isLeashed, isOnGround, isOp, isPermissionSet, isPermissionSet, isPersistent, isRemoved, isSilent, isTeleported, isTicking, isTouchingMaterial, isValid, isWithinDistance, isWithinDistance, leaveVehicle, playEffect, playEffectKnownAndSelf, recalculatePermissions, remove, removeAttachment, removeMetadata, removePassenger, removeScoreboardTag, sendMessage, sendMessage, sendMessage, sendMessage, setAirDrag, setApplyDragBeforeAccel, setBoundingBox, setCustomName, setCustomNameVisible, setFallDistance, setFireTicks, setFriction, setGlowing, setGravity, setGravityAccel, setInvulnerable, setLastDamageCause, setLeashHolder, setLeashHolderUniqueId, setLiquidDrag, setMetadata, setOp, setPassenger, setPersistent, setPortalCooldown, setRawLocation, setRawLocation, setRotation, setSilent, setSize, setTicksLived, setUniqueId, setVelocity, shouldSave, spigot, teleport, teleport, teleport, teleport, teleportToEnd, teleportToSpawn, toString, updateBoundingBox
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.bukkit.entity.Ageable
getAge, isAdult, setAdult, setAge, setBaby
Methods inherited from interface org.bukkit.entity.Animals
getLoveModeTicks, setLoveModeTicks
Methods inherited from interface org.bukkit.attribute.Attributable
getAttribute, registerAttribute
Methods inherited from interface net.kyori.adventure.audience.Audience
clearTitle, hideBossBar, openBook, openBook, playSound, playSound, resetTitle, sendActionBar, sendActionBar, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendPlayerListFooter, sendPlayerListFooter, sendPlayerListHeader, sendPlayerListHeader, sendPlayerListHeaderAndFooter, sendPlayerListHeaderAndFooter, showBossBar, showTitle, stopSound
Methods inherited from interface org.bukkit.entity.Breedable
canBreed, getAgeLock, setAgeLock, setBreed
Methods inherited from interface org.bukkit.command.CommandSender
getName, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage, sendMessage
Methods inherited from interface org.bukkit.entity.Damageable
damage, damage, damage, damage, getAbsorptionAmount, getHealth, getMaxHealth, resetMaxHealth, setAbsorptionAmount, setHealth, setMaxHealth
Methods inherited from interface org.bukkit.entity.Entity
addPassenger, addScoreboardTag, asHoverEvent, eject, fromMobSpawner, getBoundingBox, getChunk, getEntityId, getEntitySpawnReason, getFacing, getFallDistance, getFireTicks, getHeight, getLastDamageCause, getLocation, getLocation, getMaxFireTicks, getNearbyEntities, getOrigin, getPassenger, getPassengers, getPistonMoveReaction, getPortalCooldown, getPose, getScoreboardTags, getServer, getTicksLived, getType, getUniqueId, getVehicle, getVelocity, getWidth, getWorld, hasGravity, isCustomNameVisible, isDead, isEmpty, isGlowing, isInBubbleColumn, isInLava, isInRain, isInsideVehicle, isInvulnerable, isInWater, isInWaterOrBubbleColumn, isInWaterOrRain, isInWaterOrRainOrBubbleColumn, isOnGround, isPersistent, isSilent, isTicking, isValid, leaveVehicle, playEffect, remove, removePassenger, removeScoreboardTag, setCustomNameVisible, setFallDistance, setFireTicks, setGlowing, setGravity, setInvulnerable, setLastDamageCause, setPassenger, setPersistent, setPortalCooldown, setRotation, setSilent, setTicksLived, setVelocity, spigot, teleport, teleport, teleport, teleport, teleportAsync, teleportAsync
Methods inherited from interface net.kyori.adventure.text.event.HoverEventSource
asHoverEvent
Methods inherited from interface org.bukkit.entity.LivingEntity
addPotionEffect, addPotionEffect, addPotionEffects, attack, clearActiveItem, getActiveItem, getActivePotionEffects, getArrowCooldown, getArrowsInBody, getArrowsStuck, getCanPickupItems, getCategory, getCollidableExemptions, getEquipment, getEyeHeight, getEyeHeight, getEyeLocation, getHandRaisedTime, getHurtDirection, getItemUseRemainingTime, getKiller, getLastDamage, getLastTwoTargetBlocks, getLeashHolder, getLineOfSight, getMaximumAir, getMaximumNoDamageTicks, getMemory, getNoDamageTicks, getPotionEffect, getRemainingAir, getRemoveWhenFarAway, getShieldBlockingDelay, getTargetBlock, getTargetBlock, getTargetBlock, getTargetBlockExact, getTargetBlockExact, getTargetBlockFace, getTargetBlockFace, getTargetBlockInfo, getTargetBlockInfo, getTargetEntity, getTargetEntity, getTargetEntityInfo, getTargetEntityInfo, hasAI, hasLineOfSight, hasPotionEffect, isCollidable, isGliding, isHandRaised, isInvisible, isJumping, isLeashed, isRiptiding, isSleeping, isSwimming, playAnimation, playPickupItemAnimation, playPickupItemAnimation, rayTraceBlocks, rayTraceBlocks, removePotionEffect, setAI, setArrowCooldown, setArrowsInBody, setArrowsStuck, setCanPickupItems, setCollidable, setGliding, setHurtDirection, setInvisible, setJumping, setKiller, setLastDamage, setLeashHolder, setMaximumAir, setMaximumNoDamageTicks, setMemory, setNoDamageTicks, setRemainingAir, setRemoveWhenFarAway, setShieldBlockingDelay, setSwimming, swingMainHand, swingOffHand
Methods inherited from interface org.bukkit.loot.Lootable
clearLootTable, getLootTable, getSeed, hasLootTable, setLootTable, setLootTable, setSeed
Methods inherited from interface org.bukkit.metadata.Metadatable
getMetadata, hasMetadata, removeMetadata, setMetadata
Methods inherited from interface org.bukkit.entity.Mob
getPathfinder, getTarget, isAware, isInDaylight, setAware, setTarget
Methods inherited from interface org.bukkit.Nameable
customName, customName, getCustomName, setCustomName
Methods inherited from interface org.bukkit.permissions.Permissible
addAttachment, addAttachment, addAttachment, addAttachment, getEffectivePermissions, hasPermission, hasPermission, isPermissionSet, isPermissionSet, recalculatePermissions, removeAttachment
Methods inherited from interface org.bukkit.persistence.PersistentDataHolder
getPersistentDataContainer
Methods inherited from interface org.bukkit.projectiles.ProjectileSource
launchProjectile, launchProjectile
Methods inherited from interface org.bukkit.permissions.ServerOperator
isOp, setOp
-
Constructor Details
-
GlowAnimal
public GlowAnimal(org.bukkit.Location location, org.bukkit.entity.EntityType type, double maxHealth) Creates a new ageable animal.- Parameters:
location
- The location of the animal.type
- The type of animal.maxHealth
- The max health of this animal.
-
-
Method Details
-
getAmbientDelay
protected int getAmbientDelay()Description copied from class:GlowLivingEntity
Get the minimal delay until the entity can produce an ambient sound.- Overrides:
getAmbientDelay
in classGlowLivingEntity
- Returns:
- the minimal delay until the entity can produce an ambient sound
-
tryFeed
Determines whether this entity can eat an item while healthy, and if so, applies the effects of eating it.- Parameters:
player
- the player feeding the entity, for statistical purposestype
- an item that may be food- Returns:
- true if the item should be consumed; false otherwise
-
entityInteract
- Overrides:
entityInteract
in classGlowAgeable
-
getBreedingFoods
Returns an immutable set containing the breeding foods for the current animal.- Returns:
- an immutable set containing Material
-
computeGrowthAmount
protected int computeGrowthAmount(org.bukkit.Material material) Description copied from class:GlowAgeable
Computes the growth amount using a specific material for the current ageable creature. Always returns 0 for an adult or if the material is not food for the creature.- Overrides:
computeGrowthAmount
in classGlowAgeable
- Parameters:
material
- The food used to compute the growth amount.- Returns:
- The age gained using the given food.
-
getBreedCause
- Specified by:
getBreedCause
in interfaceorg.bukkit.entity.Animals
-
setBreedCause
- Specified by:
setBreedCause
in interfaceorg.bukkit.entity.Animals
-
isLoveMode
public boolean isLoveMode()- Specified by:
isLoveMode
in interfaceorg.bukkit.entity.Animals
-