Interface Agent
-
- All Superinterfaces:
ArmorEquipable
,AttributeHolder
,CopyableDataHolder
,DataHolder
,DataHolder.Mutable
,DataSerializable
,Entity
,EntityProjectileSource
,Equipable
,HoverEventSource<HoverEvent.ShowEntity>
,Identifiable
,Living
,Locatable
,ProjectileSource
,RandomProvider
,SerializableDataHolder
,SerializableDataHolder.Mutable
,Sound.Emitter
,TeamMember
,ValueContainer
- All Known Subinterfaces:
Aerial
,Ageable
,Ambient
,Animal
,Aquatic
,Bat
,Bee
,Blaze
,Boss
,Cat
,CaveSpider
,Chicken
,Cod
,Cow
,Creature
,Creeper
,Dolphin
,Donkey
,Drowned
,ElderGuardian
,EnderDragon
,Enderman
,Endermite
,Evoker
,Fish
,Fox
,Ghast
,Giant
,Golem
,Guardian
,Hoglin
,Horse
,HorseLike
,Hostile
,Human
,Husk
,Illager
,Illusioner
,IronGolem
,Llama
,LlamaLike
,MagmaCube
,Monster
,Mooshroom
,Mule
,Ocelot
,PackHorse
,Panda
,Parrot
,Patroller
,Phantom
,Pig
,Piglin
,PiglinBrute
,PiglinLike
,Pillager
,PolarBear
,Pufferfish
,Rabbit
,Raider
,Ranger
,Ravager
,Salmon
,SchoolingFish
,Sheep
,Shulker
,Silverfish
,Skeleton
,SkeletonHorse
,SkeletonLike
,Slime
,SnowGolem
,Spellcaster
,Spider
,Squid
,Stray
,Strider
,TameableAnimal
,TameableHorse
,Trader
,TraderLlama
,TropicalFish
,Turtle
,Vex
,Villager
,Vindicator
,WanderingTrader
,Witch
,Wither
,WitherSkeleton
,Wolf
,Zoglin
,Zombie
,ZombieHorse
,ZombieLike
,ZombieVillager
,ZombifiedPiglin
public interface Agent extends Living, ArmorEquipable
An Agent represents aLiving
that has AI. In the future Sponge will allow for custom AIs, but for now vanilla behavior can only be disabled.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.spongepowered.api.data.DataHolder
DataHolder.Immutable<I extends DataHolder.Immutable<I>>, DataHolder.Mutable
-
Nested classes/interfaces inherited from interface org.spongepowered.api.data.SerializableDataHolder
SerializableDataHolder.Immutable<I extends SerializableDataHolder.Immutable<I>>, SerializableDataHolder.Mutable
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default Value.Mutable<java.lang.Boolean>
aiEnabled()
default Value.Mutable<HandPreference>
dominantHand()
<T extends Agent>
java.util.Optional<GoalExecutor<T>>goal(GoalExecutorType type)
Gets aGoalExecutor
based on theGoalExecutorType
.default java.util.Optional<Value.Mutable<Entity>>
leashHolder()
default Value.Mutable<java.lang.Boolean>
persistent()
default java.util.Optional<Value.Mutable<Entity>>
targetEntity()
-
Methods inherited from interface org.spongepowered.api.item.inventory.ArmorEquipable
chest, feet, head, itemInHand, itemInHand, legs, setChest, setFeet, setHead, setItemInHand, setItemInHand, setLegs
-
Methods inherited from interface org.spongepowered.api.entity.attribute.AttributeHolder
attribute, attribute
-
Methods inherited from interface org.spongepowered.api.data.DataHolder.Mutable
copyFrom, copyFrom, offer, offer, offer, offer, offerAll, offerAll, offerAll, offerAll, offerAll, offerAll, offerSingle, offerSingle, offerSingle, offerSingle, remove, remove, remove, removeAll, removeAll, removeAll, removeAll, removeAll, removeAll, removeKey, removeKey, removeSingle, removeSingle, transform, transform, tryOffer, tryOffer, tryOffer, undo
-
Methods inherited from interface org.spongepowered.api.data.persistence.DataSerializable
contentVersion, toContainer
-
Methods inherited from interface org.spongepowered.api.entity.Entity
age, asHoverEvent, baseSize, baseVehicle, boundingBox, canSee, copy, createArchetype, createSnapshot, creator, customName, customNameVisible, damage, damage, direction, displayName, eyeHeight, eyePosition, fallDistance, fireImmuneTicks, fireTicks, glowing, gravityAffected, height, invisible, invulnerabilityTicks, invulnerable, isLoaded, isRemoved, isTransient, lookAt, maxAir, nearbyEntities, nearbyEntities, notifier, onGround, passengers, position, remainingAir, remove, rotation, scale, scoreboardTags, setLocation, setLocationAndRotation, setLocationAndRotation, setPosition, setRotation, setScale, setTransform, silent, sneaking, sprinting, swiftness, transferToWorld, transferToWorld, transform, type, vanish, vanishIgnoresCollision, vanishPreventsTargeting, vanishState, vehicle, velocity, wet
-
Methods inherited from interface org.spongepowered.api.item.inventory.Equipable
canEquip, canEquip, canEquip, canEquip, equip, equip, equipment, equipped, equipped
-
Methods inherited from interface net.kyori.adventure.text.event.HoverEventSource
asHoverEvent
-
Methods inherited from interface org.spongepowered.api.util.Identifiable
uniqueId
-
Methods inherited from interface org.spongepowered.api.entity.living.Living
absorption, activeItem, bodyRotations, canGrief, chestRotation, elytraFlying, headDirection, headRotation, health, lastAttacker, lastDamageReceived, maxHealth, potionEffects, stuckArrows, walkingSpeed
-
Methods inherited from interface org.spongepowered.api.world.Locatable
blockPosition, location, serverLocation, world
-
Methods inherited from interface org.spongepowered.api.projectile.source.ProjectileSource
launchProjectile, launchProjectile, launchProjectile, launchProjectile, launchProjectileTo, launchProjectileTo
-
Methods inherited from interface org.spongepowered.api.util.RandomProvider
random
-
Methods inherited from interface org.spongepowered.api.data.SerializableDataHolder
validateRawData
-
Methods inherited from interface org.spongepowered.api.data.SerializableDataHolder.Mutable
setRawData
-
Methods inherited from interface org.spongepowered.api.scoreboard.TeamMember
teamRepresentation
-
-
-
-
Method Detail
-
targetEntity
default java.util.Optional<Value.Mutable<Entity>> targetEntity()
- Returns:
- The targeted entity
- See Also:
TargetGoal
-
aiEnabled
default Value.Mutable<java.lang.Boolean> aiEnabled()
- Returns:
- Whether AI modules are enabled on this entity or it's a "dumb" entity
-
dominantHand
default Value.Mutable<HandPreference> dominantHand()
- Returns:
- The dominant HandPreference of the agent
-
persistent
default Value.Mutable<java.lang.Boolean> persistent()
- Returns:
- Whether the entity will be prevented from despawning
-
leashHolder
default java.util.Optional<Value.Mutable<Entity>> leashHolder()
- Returns:
- The holder of the leashed agent
-
goal
<T extends Agent> java.util.Optional<GoalExecutor<T>> goal(GoalExecutorType type)
Gets aGoalExecutor
based on theGoalExecutorType
.- Type Parameters:
T
- Inferred agent type- Parameters:
type
- GoalType to lookup- Returns:
- The goal or
Optional.empty()
if not found.
-
-