Package cn.nukkit.entity.projectile
Class EntityProjectile
java.lang.Object
cn.nukkit.math.Vector3
cn.nukkit.positiontracking.NamedPosition
cn.nukkit.level.Position
cn.nukkit.level.Location
cn.nukkit.entity.Entity
cn.nukkit.entity.projectile.EntityProjectile
- All Implemented Interfaces:
Metadatable
,Cloneable
- Direct Known Subclasses:
EntityEgg
,EntityEnderPearl
,EntityExpBottle
,EntityPotion
,EntitySnowball
,SlenderProjectile
- Author:
- MagicDroidX (Nukkit Project)
-
Field Summary
Modifier and TypeFieldDescriptionboolean
protected double
Deprecated.static final int
boolean
static final int
static final int
static final int
Fields inherited from class cn.nukkit.entity.Entity
absorption, age, blocksAround, boundingBox, chunk, closed, collisionBlocks, DATA_AERIAL_ATTACK, DATA_AGENT, DATA_AIR, DATA_ALWAYS_SHOW_NAMETAG, DATA_AMBIENT_SOUND_EVENT_NAME, DATA_AMBIENT_SOUND_INTERVAL, DATA_AMBIENT_SOUND_INTERVAL_RANGE, DATA_AREA_EFFECT_CLOUD_PARTICLE_ID, DATA_AREA_EFFECT_CLOUD_RADIUS, DATA_AREA_EFFECT_CLOUD_WAITING, DATA_ARMOR_STAND_POSE_INDEX, DATA_AUX_POWER, DATA_BALLOON_ATTACHED_ENTITY, DATA_BASE_RUNTIME_ID, DATA_BLOCK_TARGET, DATA_BOUNDING_BOX_HEIGHT, DATA_BOUNDING_BOX_WIDTH, DATA_BUBBLE_TIME, DATA_BUOYANCY_DATA, DATA_CAN_RIDE_TARGET, DATA_CHANGE_ON_PICKUP, DATA_CHANGE_RATE, DATA_CHARGE_AMOUNT, DATA_CLIENT_EVENT, DATA_COLOR, DATA_COLOR_2, DATA_COLOUR, DATA_COMMAND_BLOCK_COMMAND, DATA_COMMAND_BLOCK_EXECUTE_ON_FIRST_TICK, DATA_COMMAND_BLOCK_LAST_OUTPUT, DATA_COMMAND_BLOCK_TICK_DELAY, DATA_COMMAND_BLOCK_TRACK_OUTPUT, DATA_CONTAINER_BASE_SIZE, DATA_CONTAINER_EXTRA_SLOTS_PER_STRENGTH, DATA_CONTAINER_TYPE, DATA_CONTROLLING_RIDER_SEAT_NUMBER, DATA_DISPLAY_ITEM, DATA_DISPLAY_OFFSET, DATA_DURATION, DATA_EATING_COUNTER, DATA_ENDER_CRYSTAL_TIME_OFFSET, DATA_ENDERMAN_HELD_RUNTIME_ID, DATA_ENTITY_AGE, DATA_EXPERIENCE_VALUE, DATA_FALL_DAMAGE_MULTIPLIER, DATA_FIREBALL_POWER_X, DATA_FIREBALL_POWER_Y, DATA_FIREBALL_POWER_Z, DATA_FISH_ANGLE, DATA_FISH_X, DATA_FISH_Z, DATA_FLAG_ACTION, DATA_FLAG_ADMIRING, DATA_FLAG_ALWAYS_SHOW_NAMETAG, DATA_FLAG_ANGRY, DATA_FLAG_BABY, DATA_FLAG_BLOCKED_USING_DAMAGED_SHIELD, DATA_FLAG_BLOCKED_USING_SHIELD, DATA_FLAG_BLOCKING, DATA_FLAG_BREAKING_OBSTRUCTION, DATA_FLAG_BREATHING, DATA_FLAG_BRIBED, DATA_FLAG_CAN_CLIMB, DATA_FLAG_CAN_FLY, DATA_FLAG_CAN_POWER_JUMP, DATA_FLAG_CAN_SHOW_NAMETAG, DATA_FLAG_CELEBRATING, DATA_FLAG_CELEBRATING_SPECIAL, DATA_FLAG_CHARGE_ATTACK, DATA_FLAG_CHARGED, DATA_FLAG_CHESTED, DATA_FLAG_CONTAINER_PRIVATE, DATA_FLAG_CONVERTING, DATA_FLAG_CRITICAL, DATA_FLAG_CROAKING, DATA_FLAG_DANCING, DATA_FLAG_DELAYED_ATTACK, DATA_FLAG_DIGGING, DATA_FLAG_DOOR_BREAKER, DATA_FLAG_DOOR_OPENER, DATA_FLAG_EAT_MOB, DATA_FLAG_EATING, DATA_FLAG_ELDER, DATA_FLAG_EMERGING, DATA_FLAG_EMOTING, DATA_FLAG_ENCHANTED, DATA_FLAG_ENTITY_GROW_UP, DATA_FLAG_EVOKER_SPELL, DATA_FLAG_FACING_TARGET_TO_RANGE_ATTACK, DATA_FLAG_FALL_THROUGH_SCAFFOLDING, DATA_FLAG_FIRE_IMMUNE, DATA_FLAG_GLIDING, DATA_FLAG_GRAVITY, DATA_FLAG_HAS_COLLISION, DATA_FLAG_HIDDEN_WHEN_INVISIBLE, DATA_FLAG_IDLING, DATA_FLAG_IGNITED, DATA_FLAG_IMMOBILE, DATA_FLAG_IN_ASCENDABLE_BLOCK, DATA_FLAG_IN_SCAFFOLDING, DATA_FLAG_INLOVE, DATA_FLAG_INTERESTED, DATA_FLAG_INVISIBLE, DATA_FLAG_IS_AVOIDING_BLOCKS, DATA_FLAG_IS_AVOIDING_MOBS, DATA_FLAG_IS_ILLAGER_CAPTAIN, DATA_FLAG_IS_IN_UI, DATA_FLAG_IS_TRANSFORMING, DATA_FLAG_JUMP_GOAL_JUMP, DATA_FLAG_LAYING_DOWN, DATA_FLAG_LAYING_EGG, DATA_FLAG_LEASHED, DATA_FLAG_LINGER, DATA_FLAG_MOVING, DATA_FLAG_NO_AI, DATA_FLAG_ONFIRE, DATA_FLAG_ORPHANED, DATA_FLAG_OVER_DESCENDABLE_BLOCK, DATA_FLAG_OVER_SCAFFOLDING, DATA_FLAG_PLAYING_DEAD, DATA_FLAG_POWERED, DATA_FLAG_PREGNANT, DATA_FLAG_RAM_ATTACK, DATA_FLAG_REARING, DATA_FLAG_RESTING, DATA_FLAG_RIDER_CAN_PICK, DATA_FLAG_RIDING, DATA_FLAG_ROARING, DATA_FLAG_ROLLING, DATA_FLAG_SADDLED, DATA_FLAG_SCARED, DATA_FLAG_SHEARED, DATA_FLAG_SHOW_TRIDENT_ROPE, DATA_FLAG_SHOWBASE, DATA_FLAG_SILENT, DATA_FLAG_SITTING, DATA_FLAG_SLEEPING, DATA_FLAG_SNEAKING, DATA_FLAG_SNEEZING, DATA_FLAG_SNIFFING, DATA_FLAG_SONIC_BOOM, DATA_FLAG_SPIN_ATTACK, DATA_FLAG_SPRINTING, DATA_FLAG_STACKABLE, DATA_FLAG_STALKING, DATA_FLAG_STUNNED, DATA_FLAG_SWIMMER, DATA_FLAG_SWIMMING, DATA_FLAG_TAMED, DATA_FLAG_TEMPTED, DATA_FLAG_TRADE_INTEREST, DATA_FLAG_TRANSITION_BLOCKING, DATA_FLAG_TRANSITION_SETTING, DATA_FLAG_TRANSITION_SITTING, DATA_FLAG_TRUSTING, DATA_FLAG_VIBRATING, DATA_FLAG_WALKER, DATA_FLAG_WALLCLIMBING, DATA_FLAG_WASD_CONTROLLED, DATA_FLAGS, DATA_FLAGS_EXTENDED, DATA_FREEZING_EFFECT_STRENGTH, DATA_FUSE_LENGTH, DATA_GOAT_HORN_COUNT, DATA_HAS_COMMAND_BLOCK, DATA_HAS_DISPLAY, DATA_HAS_NPC_COMPONENT, DATA_HEALTH, DATA_HEARTBEAT_INTERVAL_TICKS, DATA_HEARTBEAT_SOUND_EVENT, DATA_HIGH_TIER_CURED_DISCOUNT, DATA_HITBOX, DATA_HURT_DIRECTION, DATA_HURT_TIME, DATA_INTERACT_TEXT, DATA_INTERACTIVE_TAG, DATA_IS_BUOYANT, DATA_JUMP_DURATION, DATA_LAYING_AMOUNT, DATA_LAYING_AMOUNT_PREVIOUS, DATA_LEAD_HOLDER_EID, DATA_LIMITED_LIFE, DATA_LOW_TIER_CURED_DISCOUNT, DATA_MARK_VARIANT, DATA_MAX_AIR, DATA_MAX_STRENGTH, DATA_MAX_TRADE_TIER, DATA_MOVEMENT_SOUND_DISTANCE_OFFSET, DATA_NAME_AUTHOR, DATA_NAME_RAW_TEXT, DATA_NAMETAG, DATA_NEARBY_CURED_DISCOUNT, DATA_NEARBY_CURED_DISCOUNT_TIMESTAMP, DATA_NPC_ACTIONS, DATA_NPC_SKIN_DATA, DATA_OLD_SWELL, DATA_OWNER_EID, DATA_PADDLE_TIME_LEFT, DATA_PADDLE_TIME_RIGHT, DATA_PICKUP_COUNT, DATA_PLAYER_BED_POSITION, DATA_PLAYER_FLAGS, DATA_PLAYER_HAS_DIED, DATA_PLAYER_INDEX, DATA_PLAYER_LAST_DEATH_DIMENSION, DATA_PLAYER_LAST_DEATH_POS, DATA_POTION_AMBIENT, DATA_POTION_AUX_VALUE, DATA_POTION_COLOR, DATA_PUFFERFISH_SIZE, DATA_RIDER_MAX_ROTATION, DATA_RIDER_MIN_ROTATION, DATA_RIDER_ROTATION_LOCKED, DATA_RIDER_ROTATION_OFFSET, DATA_RIDER_SEAT_POSITION, DATA_SCALE, DATA_SCORE_TAG, DATA_SHULKER_ATTACH_FACE, DATA_SHULKER_ATTACH_POS, DATA_SHULKER_ATTACHED, DATA_SHULKER_PEEK_ID, DATA_SITTING_AMOUNT, DATA_SITTING_AMOUNT_PREVIOUS, DATA_SKIN_ID, DATA_SPAWN_TIME, DATA_SPAWNING_FRAMES, DATA_SPELL_CASTING_COLOR, DATA_STRENGTH, DATA_SWELL, DATA_SWELL_DIR, DATA_TARGET_EID, DATA_TRADE_EXPERIENCE, DATA_TRADE_TIER, DATA_TRADING_CAREER, DATA_TRADING_PLAYER_EID, DATA_TYPE_BYTE, DATA_TYPE_FLOAT, DATA_TYPE_INT, DATA_TYPE_LONG, DATA_TYPE_NBT, DATA_TYPE_POS, DATA_TYPE_SHORT, DATA_TYPE_STRING, DATA_TYPE_VECTOR3F, DATA_USING_ITEM, DATA_VARIANT, DATA_WITHER_INVULNERABLE_TICKS, DATA_WITHER_TARGET_1, DATA_WITHER_TARGET_2, DATA_WITHER_TARGET_3, dataProperties, deadTicks, effects, EMPTY_ARRAY, entityCollisionReduction, entityCount, entityUniqueId, fallDistance, fireProof, fireTicks, firstMove, freezingTicks, hasSpawned, headYawDelta, health, highestPosition, id, inBlock, inEndPortal, inPortalTicks, invulnerable, isCollided, isCollidedHorizontally, isCollidedVertically, isPlayer, isStatic, justCreated, keepMovement, lastDamageCause, lastHeadYaw, lastMotionX, lastMotionY, lastMotionZ, lastPitch, lastUpdate, lastX, lastY, lastYaw, lastZ, maxFireTicks, motionChanged, motionX, motionY, motionZ, namedTag, NETWORK_ID, noClip, noDamageTicks, offsetBoundingBox, onGround, passengers, pitchDelta, positionChanged, riding, scale, server, temporalVector, ticksLived, timing, yawDelta, ySize
-
Constructor Summary
ConstructorDescriptionEntityProjectile
(FullChunk chunk, CompoundTag nbt) EntityProjectile
(FullChunk chunk, CompoundTag nbt, Entity shootingEntity) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
protected void
afterCollisionWithEntity
(Entity entity) boolean
attack
(EntityDamageEvent source) 当一个实体被攻击时(即接受一个实体伤害事件 这个事件可以是由其他实体攻击导致,也可能是自然伤害)调用.boolean
canCollideWith
(Entity entity) protected double
protected double
boolean
int
int
getResultDamage
(Entity entity) boolean
hasAge()
Deprecated.void
inaccurate
(float modifier) protected void
protected void
onCollideWithBlock
(Position position, Vector3 motion) protected boolean
onCollideWithBlock
(Position position, Vector3 motion, Block collisionBlock) void
onCollideWithEntity
(Entity entity) boolean
onUpdate
(int currentTick) void
saveNBT()
void
setAge
(boolean hasAge) Deprecated.void
setHasAge
(boolean hasAge) void
protected void
void
Methods inherited from class cn.nukkit.entity.Entity
addEffect, addFreezingTicks, addMotion, addMovement, addTag, applyEntityCollision, attack, broadcastLinkPacket, canBeMovedByCurrents, canBePushed, canClimb, canClimbWalls, canCollide, canPassThrough, canTriggerWalking, checkBlockCollision, checkChunks, checkGroundState, checkObstruction, close, collideWithBlock, containTag, createAddEntityPacket, createEntity, createEntity, createEntity, createEntity, despawnFrom, despawnFromAll, dismountEntity, dismountEntity, doesTriggerPressurePlate, enableHeadYaw, entityBaseTick, entityBaseTick, equals, extinguish, fall, fastMove, getAbsorption, getAge, getAllTags, getBaseOffset, getBlocksAround, getBoundingBox, getCollisionBlocks, getCurrentHeight, getDataFlag, getDataProperties, getDataProperty, getDataPropertyBoolean, getDataPropertyByte, getDataPropertyFloat, getDataPropertyInt, getDataPropertyLong, getDataPropertyNBT, getDataPropertyPos, getDataPropertyShort, getDataPropertyString, getDataPropertyType, getDataPropertyVector3f, getDefaultNBT, getDefaultNBT, getDefaultNBT, getDirection, getDirectionPlane, getDirectionVector, getDrag, getEffect, getEffects, getEntityDefinitions, getEyeHeight, getFreezingEffectStrength, getFreezingTicks, getGravity, getHealth, getHeight, getHorizontalFacing, getId, getKnownEntities, getKnownEntityIds, getKnownEntityProviders, getLastDamageCause, getLength, getLocation, getMaxHealth, getMetadata, getMotion, getMountedOffset, getName, getNameTag, getNetworkId, getOriginalName, getPassenger, getPassengers, getPosition, getRiding, getSaveId, getSaveId, getSaveId, getSaveIds, getScale, getScoreTag, getSeatPosition, getServer, getStepHeight, getSwimmingHeight, getUniqueId, getViewers, getVisibleName, getWidth, handleLavaMovement, hasControllingPassenger, hasCustomName, hasEffect, hashCode, hasMetadata, hasWaterAt, heal, heal, init, isAlive, isBoss, isClosed, isControlling, isGliding, isImmobile, isInEndPortal, isInsideOfFire, isInsideOfLava, isInsideOfSolid, isInsideOfWater, isNameTagAlwaysVisible, isNameTagVisible, isNoClip, isOnFire, isOnGround, isOnLadder, isPassenger, isPreventingSleep, isSneaking, isSpinAttacking, isSprinting, isSwimming, isTouchingWater, isUndead, isUnderBlock, kill, mountEntity, mountEntity, move, moveFlying, onCollideWithPlayer, onInteract, onInteract, onPushByPiston, onStruckByLightning, recalculateBoundingBox, recalculateBoundingBox, recalculateEffectColor, registerCustomEntity, registerEntity, registerEntity, registerEntity, registerEntity, removeAllEffects, removeEffect, removeMetadata, removeTag, resetFallDistance, respawnToAll, scheduleUpdate, sendData, sendData, sendData, sendData, sendPotionEffects, setAbsorption, setAmbientSoundEvent, setAmbientSoundEventName, setAmbientSoundInterval, setAmbientSoundIntervalRange, setCanClimb, setCanClimb, setCanClimbWalls, setCanClimbWalls, setDataFlag, setDataFlag, setDataProperty, setDataProperty, setFreezingEffectStrength, setFreezingTicks, setGliding, setGliding, setHealth, setImmobile, setImmobile, setLastDamageCause, setMaxHealth, setMetadata, setMotion, setNameTag, setNameTagAlwaysVisible, setNameTagAlwaysVisible, setNameTagVisible, setNameTagVisible, setNoClip, setOnFire, setPosition, setPositionAndRotation, setPositionAndRotation, setRotation, setRotation, setScale, setScoreTag, setSeatPosition, setSneaking, setSneaking, setSpinAttacking, setSpinAttacking, setSprinting, setSprinting, setSwimming, setSwimming, spawnTo, switchLevel, teleport, teleport, teleport, teleport, teleport, teleport, updateFallState, updateMovement, updatePassengerPosition, updatePassengers
Methods inherited from class cn.nukkit.level.Location
abs, add, add, add, add, ceil, clone, divide, floor, fromObject, fromObject, fromObject, fromObject, fromObject, getHeadYaw, getPitch, getYaw, multiply, round, setHeadYaw, setPitch, setYaw, subtract, subtract, subtract, subtract, subtract, toString
Methods inherited from class cn.nukkit.level.Position
getChunk, getLevel, getLevelBlock, getLevelBlock, getLevelBlock, getLevelBlockAround, getLevelBlockAtLayer, getLevelBlockEntity, getLevelBlockState, getLevelBlockState, getLevelName, getSide, getSide, getTickCachedLevelBlock, getTickCachedLevelBlockAtLayer, getTypedBlockEntity, getValidLevel, isValid, setComponents, setComponents, setLevel, setStrong, setWeak
Methods inherited from class cn.nukkit.positiontracking.NamedPosition
matchesNamedPosition
Methods inherited from class cn.nukkit.math.Vector3
asBlockVector3, asVector3f, cross, distance, distance, distanceManhattan, distanceSquared, distanceSquared, dot, down, down, east, east, getAxis, getChunkSectionY, getChunkVector, getChunkX, getChunkZ, getFloorX, getFloorY, getFloorZ, getForward, getIntermediateWithXValue, getIntermediateWithYValue, getIntermediateWithZValue, getRight, getSideVec, getSouth, getUp, getWest, getX, getY, getZ, length, lengthSquared, maxPlainDistance, maxPlainDistance, maxPlainDistance, maxPlainDistance, maxPlainDistance, normalize, north, north, rawHashCode, setComponentsAdding, setComponentsAdding, setX, setY, setZ, south, south, up, up, west, west
-
Field Details
-
DATA_SHOOTER_ID
public static final int DATA_SHOOTER_ID- See Also:
-
PICKUP_NONE
- See Also:
-
PICKUP_ANY
- See Also:
-
PICKUP_CREATIVE
- See Also:
-
shootingEntity
-
hadCollision
public boolean hadCollision -
closeOnCollide
public boolean closeOnCollide -
damage
@Deprecated @DeprecationDetails(since="FUTURE", by="PowerNukkit", reason="Redundant and unused", replaceWith="getDamage()") protected double damageDeprecated.
-
-
Constructor Details
-
EntityProjectile
-
EntityProjectile
-
-
Method Details
-
getDamage
protected double getDamage() -
getBaseDamage
protected double getBaseDamage() -
getResultDamage
@PowerNukkitOnly("Allows to modify the damage based on the entity being damaged") @Since("1.4.0.0-PN") public int getResultDamage(@Nullable Entity entity) -
getResultDamage
public int getResultDamage() -
attack
Description copied from class:Entity
当一个实体被攻击时(即接受一个实体伤害事件 这个事件可以是由其他实体攻击导致,也可能是自然伤害)调用.Called when an entity is attacked (i.e. receives an entity damage event. This event can be caused by an attack by another entity, or it can be a natural damage).
-
onCollideWithEntity
-
afterCollisionWithEntity
-
initEntity
protected void initEntity()- Overrides:
initEntity
in classEntity
-
canCollideWith
- Overrides:
canCollideWith
in classEntity
-
saveNBT
public void saveNBT() -
updateMotion
-
onUpdate
public boolean onUpdate(int currentTick) -
updateRotation
-
inaccurate
-
onCollideWithBlock
@PowerNukkitOnly @Since("1.4.0.0-PN") protected void onCollideWithBlock(Position position, Vector3 motion) -
onCollideWithBlock
@PowerNukkitOnly @Since("1.4.0.0-PN") protected boolean onCollideWithBlock(Position position, Vector3 motion, Block collisionBlock) -
addHitEffect
-
hasAge
@PowerNukkitOnly @Since("1.4.0.0-PN") @Deprecated @DeprecationDetails(by="PowerNukkit", since="FUTURE", reason="Bad method name", replaceWith="getHasAge", toBeRemovedAt="1.7.0.0-PN") public boolean hasAge()Deprecated. -
setAge
@PowerNukkitOnly @Since("1.4.0.0-PN") @Deprecated @DeprecationDetails(by="PowerNukkit", since="FUTURE", reason="Bad method name", replaceWith="setHasAge", toBeRemovedAt="1.7.0.0-PN") public void setAge(boolean hasAge) Deprecated. -
getHasAge
public boolean getHasAge() -
setHasAge
-
spawnToAll
public void spawnToAll()- Overrides:
spawnToAll
in classEntity
-