diff --git a/src/k_collide.cpp b/src/k_collide.cpp index 76917d2b5..568f87338 100644 --- a/src/k_collide.cpp +++ b/src/k_collide.cpp @@ -925,7 +925,7 @@ boolean K_InstaWhipCollide(mobj_t *shield, mobj_t *victim) } else if (victim->type == MT_SUPER_FLICKY) { - if (Obj_IsSuperFlickyWhippable(victim)) + if (Obj_IsSuperFlickyWhippable(victim, attacker)) { K_AddHitLag(victim, victimHitlag, true); K_AddHitLag(attacker, attackerHitlag, false); diff --git a/src/k_objects.h b/src/k_objects.h index bad973f62..186ba9b48 100644 --- a/src/k_objects.h +++ b/src/k_objects.h @@ -168,7 +168,7 @@ void Obj_BlockSuperFlicky(mobj_t *flicky); void Obj_SuperFlickyPlayerCollide(mobj_t *flicky, mobj_t *player); void Obj_SuperFlickyLanding(mobj_t *flicky); mobj_t *Obj_SuperFlickyOwner(const mobj_t *flicky); -boolean Obj_IsSuperFlickyWhippable(const mobj_t *flicky); +boolean Obj_IsSuperFlickyWhippable(const mobj_t *flicky, const mobj_t *target); boolean Obj_IsSuperFlickyTargettingYou(const mobj_t *flicky, mobj_t *player); /* Battle/Power-UP UFO */ diff --git a/src/objects/super-flicky.cpp b/src/objects/super-flicky.cpp index 601ccdf7e..344cbd46c 100644 --- a/src/objects/super-flicky.cpp +++ b/src/objects/super-flicky.cpp @@ -768,11 +768,11 @@ mobj_t *Obj_SuperFlickyOwner(const mobj_t* mobj) return x->valid() ? x->source() : nullptr; } -boolean Obj_IsSuperFlickyWhippable(const mobj_t* mobj) +boolean Obj_IsSuperFlickyWhippable(const mobj_t* mobj, const mobj_t* target) { const Flicky* x = static_cast(mobj); - return mobj == x->chasing() && !x->stunned(); + return target == x->chasing() && !x->stunned(); } boolean Obj_IsSuperFlickyTargettingYou(const mobj_t* mobj, mobj_t *player)