diff --git a/src/k_objects.h b/src/k_objects.h index b5cbb6e70..9cc199bb0 100644 --- a/src/k_objects.h +++ b/src/k_objects.h @@ -151,7 +151,7 @@ void Obj_SpawnSuperFlickySwarm(player_t *owner, tic_t time); void Obj_SuperFlickyControllerThink(mobj_t *controller); void Obj_EndSuperFlickySwarm(mobj_t *controller); void Obj_ExtendSuperFlickySwarm(mobj_t *controller, tic_t time); -tic_t Obj_SuperFlickySwarmTime(const mobj_t *controller); +tic_t Obj_SuperFlickySwarmTime(mobj_t *controller); /* Super Flicky */ void Obj_SuperFlickyThink(mobj_t *flicky); diff --git a/src/objects/super-flicky.cpp b/src/objects/super-flicky.cpp index f48590df3..287fa7c7f 100644 --- a/src/objects/super-flicky.cpp +++ b/src/objects/super-flicky.cpp @@ -754,11 +754,11 @@ void Obj_ExtendSuperFlickySwarm(mobj_t* mobj, tic_t time) x->expiry(x->expiry() + time); } -tic_t Obj_SuperFlickySwarmTime(const mobj_t* mobj) +tic_t Obj_SuperFlickySwarmTime(mobj_t* mobj) { - const Controller* x = static_cast(mobj); + Controller* x = static_cast(mobj); - return x ? x->powerup_remaining() : 0u; + return !P_MobjWasRemoved(x) ? x->powerup_remaining() : 0u; } boolean Obj_IsSuperFlickyWhippable(const mobj_t* mobj)