Plumpling
¶
EnemyCheck special logic¶
Before this enemy is loaded, it's possible that StartBattle overrides it to a GoldenSeedling
. See the documentation to learn more.
HardMode changes¶
HardMode being true does the following changes:
- In the jump attack move, the amount of frames this enemy takes to reach its target changes to 38.25 frames from 51.0 frames
Move selection¶
1 moves is possible:
- A single target jump attack
Move 1 is always used.
Move 1 - Jump attack¶
A single target jump attack.
DoDamage calls¶
# | Conditions | attacker | target | damageammount | property | overrides | block |
---|---|---|---|---|---|---|---|
1 | Always happen | This enemy | playertargetID after GetSingleTarget |
4 | Flip1 | {BlockSoundOnly} | commandsuccess |
1: This property gets overriden to null in CalculateBaseDamage as the target is a player party member so it does nothing.
Logic sequence¶
checkingdead
is set to a new HeavyJump coroutine for this enemy with 4 damage and 60.0 speed (45.0 if hardmode is true)- Yield all frames until
checkingdead
is null (the coroutine completed)
Here is what the coroutine effectively ends up doing:
- GetSingleTarget called
- Camera moves to look near
playerdata[playertargetID]
ThumpSoft
sound plays on loop usingsounds[9]
with 0.65 pitch and 0.65 volume using PlayMoveSound- MoveTowards
playertargetentity
position + (3.0, 0.0, -0.1) - Yield all frames until
forcemove
is done sounds[9]
stopped- Yield for 0.3 seconds
Jump
sound plays with 0.8 pitchTurn
sound plays with 0.7 pitch- Over the course of 51.0 frames (38.25 frames instead if hardmode is true), this enemy moves to
playertargetentity
position -0.1 in z via a BeizierCurve3 with a ymax of 5.5 scaled over the course of 60.0 frames (45.0 frames instead if hardmode is true). Before each frame yield, animstate is set to 2 (Jump
) until halfway 30.0 frames passed (27.5 frames instead if harmode is true) where it's set to 3 (Fall
) instead - If
commandsuccess
is false (didn't blocked, ignores FRAMEONE), ShakeScreen is called with ammount (0.075, 0.3, 0.0) and 0.75 time with dontreset - DoDamage 1 call happens
- If
commandsuccess
is false (didn't blocked, ignores FRAMEONE):- Over the course of 9.0 frames (16.75 frames instead if hardmode is true), this enemy moves to
playertargetentity
position -0.1 in z via a BeizierCurve3 with a ymax of 5.5. Before each frame yield, animstate is set to 3 (Fall
) impactsmoke
particles plays atplayertargetentity
positionThud4
sound playsHugeHit3
soud plays
- Over the course of 9.0 frames (16.75 frames instead if hardmode is true), this enemy moves to
- Otherwise (blocked, ignores FRAMEONE):
- Over the course of 41.0 frames, this enemy moves to
playertargetentity
position + (2.0, 0.0, -0.1) via a BeizierCurve3 with a ymax of 3.0. Before each frame yield, animstate is set to 3 (Fall
) Thud4
sound playsimpactsmoke
particles plays atplayertargetentity
position- ShakeScreen is called with ammount (0.05, 0.2, 0.0) and 0.5 time with dontreset
- animstate set to 0 (
Idle
)
- Over the course of 41.0 frames, this enemy moves to
- Yield for 0.5 seconds
checkingdead
is set to null informing the caller that the coroutine completed