status effect source (#2441)

* status effect source

Signed-off-by: liach <liach@users.noreply.github.com>

* improve docs and update legacy packet handler name

* Another effect cause related method

* 2 vec3d methods seen in projectiles

Signed-off-by: liach <liach@users.noreply.github.com>

* Update mappings/net/minecraft/entity/LivingEntity.mapping

Co-authored-by: liach <liach@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
This commit is contained in:
liach 2021-06-01 10:29:19 -05:00 committed by GitHub
parent 10f5de0e61
commit 37f94858b0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 83 additions and 9 deletions

View File

@ -1,12 +1,21 @@
CLASS net/minecraft/class_2027 net/minecraft/advancement/criterion/EffectsChangedCriterion CLASS net/minecraft/class_2027 net/minecraft/advancement/criterion/EffectsChangedCriterion
FIELD field_9558 ID Lnet/minecraft/class_2960; FIELD field_9558 ID Lnet/minecraft/class_2960;
METHOD method_22462 (Lnet/minecraft/class_3222;Lnet/minecraft/class_47;Lnet/minecraft/class_2027$class_2029;)Z
ARG 2 conditions
METHOD method_8863 trigger (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)V METHOD method_8863 trigger (Lnet/minecraft/class_3222;Lnet/minecraft/class_1297;)V
ARG 1 player
ARG 2 source
CLASS class_2029 Conditions CLASS class_2029 Conditions
FIELD field_33909 source Lnet/minecraft/class_2048$class_5258;
FIELD field_9562 effects Lnet/minecraft/class_2102; FIELD field_9562 effects Lnet/minecraft/class_2102;
METHOD <init> (Lnet/minecraft/class_2048$class_5258;Lnet/minecraft/class_2102;Lnet/minecraft/class_2048$class_5258;)V METHOD <init> (Lnet/minecraft/class_2048$class_5258;Lnet/minecraft/class_2102;Lnet/minecraft/class_2048$class_5258;)V
ARG 1 player ARG 1 player
ARG 2 effects ARG 2 effects
ARG 3 source
METHOD method_37224 create (Lnet/minecraft/class_2048;)Lnet/minecraft/class_2027$class_2029;
ARG 0 source
METHOD method_8868 matches (Lnet/minecraft/class_3222;Lnet/minecraft/class_47;)Z METHOD method_8868 matches (Lnet/minecraft/class_3222;Lnet/minecraft/class_47;)Z
ARG 1 player ARG 1 player
ARG 2 context
METHOD method_8869 create (Lnet/minecraft/class_2102;)Lnet/minecraft/class_2027$class_2029; METHOD method_8869 create (Lnet/minecraft/class_2102;)Lnet/minecraft/class_2027$class_2029;
ARG 0 effects ARG 0 effects

View File

@ -196,8 +196,21 @@ CLASS net/minecraft/class_1309 net/minecraft/entity/LivingEntity
METHOD method_24833 getBoundingBox (Lnet/minecraft/class_4050;)Lnet/minecraft/class_238; METHOD method_24833 getBoundingBox (Lnet/minecraft/class_4050;)Lnet/minecraft/class_238;
ARG 1 pose ARG 1 pose
METHOD method_25937 displaySoulSpeedEffects ()V METHOD method_25937 displaySoulSpeedEffects ()V
METHOD method_26082 applyStatusEffect (Lnet/minecraft/class_1293;Lnet/minecraft/class_1297;)V METHOD method_26082 setStatusEffect (Lnet/minecraft/class_1293;Lnet/minecraft/class_1297;)V
COMMENT Sets a status effect in this entity.
COMMENT
COMMENT <p>The preexistent status effect of the same type on this entity, if there is one, is cleared.
COMMENT To actually add a status effect and undergo effect combination logic, call
COMMENT {@link #addStatusEffect(StatusEffectInstance, Entity)}.
COMMENT
COMMENT @apiNote In vanilla, this is exclusively used by the client to set a status
COMMENT effect on the player upon {@linkplain
COMMENT net.minecraft.client.network.ClientPlayNetworkHandler#onEntityStatusEffect
COMMENT reception} of the status effect packet.
ARG 1 effect ARG 1 effect
COMMENT the effect to set
ARG 2 source
COMMENT the source entity or {@code null} for non-entity sources
METHOD method_26084 (Lnet/minecraft/class_1309;)V METHOD method_26084 (Lnet/minecraft/class_1309;)V
ARG 0 player ARG 0 player
METHOD method_26319 canWalkOnFluid (Lnet/minecraft/class_3611;)Z METHOD method_26319 canWalkOnFluid (Lnet/minecraft/class_3611;)Z
@ -271,6 +284,17 @@ CLASS net/minecraft/class_1309 net/minecraft/entity/LivingEntity
METHOD method_36977 damageHelmet (Lnet/minecraft/class_1282;F)V METHOD method_36977 damageHelmet (Lnet/minecraft/class_1282;F)V
ARG 1 source ARG 1 source
ARG 2 amount ARG 2 amount
METHOD method_37222 addStatusEffect (Lnet/minecraft/class_1293;Lnet/minecraft/class_1297;)Z
COMMENT Adds a status effect to this entity.
COMMENT
COMMENT @implNote A status effect may fail to be added due to getting overridden by
COMMENT existing effects or the effect being incompatible with this entity.
COMMENT
COMMENT @return whether the active status effects of this entity has been modified
ARG 1 effect
COMMENT the effect to add
ARG 2 source
COMMENT the source entity or {@code null} for non-entity sources
METHOD method_5973 canTarget (Lnet/minecraft/class_1299;)Z METHOD method_5973 canTarget (Lnet/minecraft/class_1299;)Z
ARG 1 type ARG 1 type
METHOD method_5989 getLootTable ()Lnet/minecraft/class_2960; METHOD method_5989 getLootTable ()Lnet/minecraft/class_2960;
@ -296,6 +320,7 @@ CLASS net/minecraft/class_1309 net/minecraft/entity/LivingEntity
METHOD method_6009 onStatusEffectUpgraded (Lnet/minecraft/class_1293;ZLnet/minecraft/class_1297;)V METHOD method_6009 onStatusEffectUpgraded (Lnet/minecraft/class_1293;ZLnet/minecraft/class_1297;)V
ARG 1 effect ARG 1 effect
ARG 2 reapplyEffect ARG 2 reapplyEffect
ARG 3 source
METHOD method_6010 swimUpward (Lnet/minecraft/class_3494;)V METHOD method_6010 swimUpward (Lnet/minecraft/class_3494;)V
ARG 1 fluid ARG 1 fluid
METHOD method_6011 getHurtSound (Lnet/minecraft/class_1282;)Lnet/minecraft/class_3414; METHOD method_6011 getHurtSound (Lnet/minecraft/class_1282;)Lnet/minecraft/class_3414;
@ -309,10 +334,11 @@ CLASS net/minecraft/class_1309 net/minecraft/entity/LivingEntity
METHOD method_6016 removeStatusEffect (Lnet/minecraft/class_1291;)Z METHOD method_6016 removeStatusEffect (Lnet/minecraft/class_1291;)Z
COMMENT Removes a status effect from this entity. COMMENT Removes a status effect from this entity.
COMMENT COMMENT
COMMENT <p> Calling this method will call cleanup methods on the status effect and trigger synchronization of effect particles with watching clients. If this entity is a player, COMMENT <p>Calling this method will call cleanup methods on the status effect and trigger synchronization of effect particles with watching clients. If this entity is a player,
COMMENT the change in the list of effects will also be synchronized with the corresponding client. COMMENT the change in the list of effects will also be synchronized with the corresponding client.
COMMENT COMMENT
COMMENT @return {@code true} if a {@link net.minecraft.entity.effect.StatusEffectInstance} with the given type was in effect before the removal. COMMENT @return whether the active status effects on this entity has been changed by
COMMENT this call
ARG 1 type ARG 1 type
METHOD method_6017 getSoundPitch ()F METHOD method_6017 getSoundPitch ()F
METHOD method_6018 setRiptideTicks (I)V METHOD method_6018 setRiptideTicks (I)V
@ -321,6 +347,7 @@ CLASS net/minecraft/class_1309 net/minecraft/entity/LivingEntity
ARG 1 hand ARG 1 hand
METHOD method_6020 onStatusEffectApplied (Lnet/minecraft/class_1293;Lnet/minecraft/class_1297;)V METHOD method_6020 onStatusEffectApplied (Lnet/minecraft/class_1293;Lnet/minecraft/class_1297;)V
ARG 1 effect ARG 1 effect
ARG 2 source
METHOD method_6021 clearActiveItem ()V METHOD method_6021 clearActiveItem ()V
METHOD method_6022 getStuckArrowCount ()I METHOD method_6022 getStuckArrowCount ()I
METHOD method_6023 tickNewAi ()V METHOD method_6023 tickNewAi ()V
@ -450,7 +477,15 @@ CLASS net/minecraft/class_1309 net/minecraft/entity/LivingEntity
METHOD method_6091 travel (Lnet/minecraft/class_243;)V METHOD method_6091 travel (Lnet/minecraft/class_243;)V
ARG 1 movementInput ARG 1 movementInput
METHOD method_6092 addStatusEffect (Lnet/minecraft/class_1293;)Z METHOD method_6092 addStatusEffect (Lnet/minecraft/class_1293;)Z
COMMENT Adds a status effect to this entity without specifying a source entity.
COMMENT
COMMENT <p>Consider calling {@link #addStatusEffect(StatusEffectInstance, Entity)}
COMMENT if the {@code effect} is caused by or from an entity.
COMMENT
COMMENT @return whether the active status effects of this entity has been modified
COMMENT @see #addStatusEffect(StatusEffectInstance, Entity)
ARG 1 effect ARG 1 effect
COMMENT the effect to add
METHOD method_6093 knockDownwards ()V METHOD method_6093 knockDownwards ()V
METHOD method_6094 canBreatheInWater ()Z METHOD method_6094 canBreatheInWater ()Z
METHOD method_6095 tryUseTotem (Lnet/minecraft/class_1282;)Z METHOD method_6095 tryUseTotem (Lnet/minecraft/class_1282;)Z
@ -496,8 +531,10 @@ CLASS net/minecraft/class_1309 net/minecraft/entity/LivingEntity
METHOD method_6111 removeStatusEffectInternal (Lnet/minecraft/class_1291;)Lnet/minecraft/class_1293; METHOD method_6111 removeStatusEffectInternal (Lnet/minecraft/class_1291;)Lnet/minecraft/class_1293;
COMMENT Removes a status effect from this entity without calling any listener. COMMENT Removes a status effect from this entity without calling any listener.
COMMENT COMMENT
COMMENT <p> This method does not perform any cleanup or synchronization operation. COMMENT <p>This method does not perform any cleanup or synchronization operation.
COMMENT Under most circumstances, calling {@link net.minecraft.entity.LivingEntity#removeStatusEffect(net.minecraft.entity.effect.StatusEffect)} is highly preferable. COMMENT Under most circumstances, calling {@link #removeStatusEffect(StatusEffect)} is highly preferable.
COMMENT
COMMENT @return the status effect removed
ARG 1 type ARG 1 type
METHOD method_6112 getStatusEffect (Lnet/minecraft/class_1291;)Lnet/minecraft/class_1293; METHOD method_6112 getStatusEffect (Lnet/minecraft/class_1291;)Lnet/minecraft/class_1293;
ARG 1 effect ARG 1 effect

View File

@ -22,6 +22,10 @@ CLASS net/minecraft/class_1676 net/minecraft/entity/projectile/ProjectileEntity
METHOD method_26962 updateRotation ()V METHOD method_26962 updateRotation ()V
METHOD method_34714 isOwner (Lnet/minecraft/class_1297;)Z METHOD method_34714 isOwner (Lnet/minecraft/class_1297;)Z
ARG 1 entity ARG 1 entity
METHOD method_37225 getEffectCause ()Lnet/minecraft/class_1297;
COMMENT {@return the cause entity of any effect applied by this projectile} If this
COMMENT projectile has an owner, the effect is attributed to the owner; otherwise, it
COMMENT is attributed to this projectile itself.
METHOD method_7432 setOwner (Lnet/minecraft/class_1297;)V METHOD method_7432 setOwner (Lnet/minecraft/class_1297;)V
ARG 1 entity ARG 1 entity
METHOD method_7454 onEntityHit (Lnet/minecraft/class_3966;)V METHOD method_7454 onEntityHit (Lnet/minecraft/class_3966;)V

View File

@ -8,9 +8,17 @@ CLASS net/minecraft/class_47 net/minecraft/loot/context/LootContext
FIELD field_927 activeTables Ljava/util/Set; FIELD field_927 activeTables Ljava/util/Set;
FIELD field_928 world Lnet/minecraft/class_3218; FIELD field_928 world Lnet/minecraft/class_3218;
FIELD field_929 drops Ljava/util/Map; FIELD field_929 drops Ljava/util/Map;
METHOD <init> (Ljava/util/Random;FLnet/minecraft/class_3218;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/Map;Ljava/util/Map;)V
ARG 1 random
ARG 2 luck
ARG 3 world
ARG 4 tableGetter
ARG 5 conditionGetter
ARG 6 parameters
ARG 7 drops
METHOD method_22555 addCondition (Lnet/minecraft/class_5341;)Z METHOD method_22555 addCondition (Lnet/minecraft/class_5341;)Z
ARG 1 condition ARG 1 condition
METHOD method_22556 getSupplier (Lnet/minecraft/class_2960;)Lnet/minecraft/class_52; METHOD method_22556 getTable (Lnet/minecraft/class_2960;)Lnet/minecraft/class_52;
ARG 1 id ARG 1 id
METHOD method_22557 removeCondition (Lnet/minecraft/class_5341;)V METHOD method_22557 removeCondition (Lnet/minecraft/class_5341;)V
ARG 1 condition ARG 1 condition
@ -30,6 +38,8 @@ CLASS net/minecraft/class_47 net/minecraft/loot/context/LootContext
METHOD method_300 hasParameter (Lnet/minecraft/class_169;)Z METHOD method_300 hasParameter (Lnet/minecraft/class_169;)Z
ARG 1 parameter ARG 1 parameter
METHOD method_302 getLuck ()F METHOD method_302 getLuck ()F
METHOD method_35508 requireParameter (Lnet/minecraft/class_169;)Ljava/lang/Object;
ARG 1 parameter
CLASS class_48 Builder CLASS class_48 Builder
FIELD field_930 world Lnet/minecraft/class_3218; FIELD field_930 world Lnet/minecraft/class_3218;
FIELD field_931 luck F FIELD field_931 luck F

View File

@ -14,7 +14,7 @@ CLASS net/minecraft/class_2602 net/minecraft/network/listener/ClientPlayPacketLi
ARG 1 packet ARG 1 packet
METHOD method_11083 onDisconnect (Lnet/minecraft/class_2661;)V METHOD method_11083 onDisconnect (Lnet/minecraft/class_2661;)V
ARG 1 packet ARG 1 packet
METHOD method_11084 onEntityPotionEffect (Lnet/minecraft/class_2783;)V METHOD method_11084 onEntityStatusEffect (Lnet/minecraft/class_2783;)V
ARG 1 packet ARG 1 packet
METHOD method_11085 onGameStateChange (Lnet/minecraft/class_2668;)V METHOD method_11085 onGameStateChange (Lnet/minecraft/class_2668;)V
ARG 1 packet ARG 1 packet

View File

@ -75,7 +75,7 @@ CLASS net/minecraft/class_243 net/minecraft/util/math/Vec3d
COMMENT Returns the dot product of this vector and the given vector. COMMENT Returns the dot product of this vector and the given vector.
ARG 1 vec ARG 1 vec
METHOD method_1027 lengthSquared ()D METHOD method_1027 lengthSquared ()D
COMMENT Returns the squared length of this vector. COMMENT {@return the squared length of this vector}
COMMENT COMMENT
COMMENT <p>Can be used for fast comparison between lengths. COMMENT <p>Can be used for fast comparison between lengths.
COMMENT COMMENT
@ -115,7 +115,7 @@ CLASS net/minecraft/class_243 net/minecraft/util/math/Vec3d
COMMENT Applies the floor function to the coordinates chosen by the given axes. COMMENT Applies the floor function to the coordinates chosen by the given axes.
ARG 1 axes ARG 1 axes
METHOD method_1033 length ()D METHOD method_1033 length ()D
COMMENT Returns the length of this vector. COMMENT {@return the length of this vector}
COMMENT COMMENT
COMMENT <p>The length of a vector is equivalent to the distance between that COMMENT <p>The length of a vector is equivalent to the distance between that
COMMENT vector and the {@linkplain #ZERO} vector. COMMENT vector and the {@linkplain #ZERO} vector.
@ -206,3 +206,17 @@ CLASS net/minecraft/class_243 net/minecraft/util/math/Vec3d
COMMENT the vector to interpolate to COMMENT the vector to interpolate to
ARG 2 delta ARG 2 delta
COMMENT the interpolation coefficient in the range between 0 and 1 COMMENT the interpolation coefficient in the range between 0 and 1
METHOD method_37267 horizontalLength ()D
COMMENT {@return the horizontal length of this vector}
COMMENT
COMMENT <p>This length is same as the length of a 2-vector with the {@link #x} and
COMMENT {@link #z} components of this vector, or the euclidean distance between
COMMENT {@code (x, z)} and the origin.
COMMENT
COMMENT @see #horizontalLengthSquared()
METHOD method_37268 horizontalLengthSquared ()D
COMMENT {@return the squared horizontal length of this vector}
COMMENT
COMMENT <p>Can be used for fast comparison between horizontal lengths.
COMMENT
COMMENT @see #horizontalLength()