Merge branch 'ballhog-blammo' into 'master'

K_BananaBallhogCollide: Handle use after deletes (resolves #488)

Closes #488

See merge request KartKrew/Kart!1075
This commit is contained in:
toaster 2023-03-23 22:29:50 +00:00
commit 449d330694

View file

@ -113,15 +113,26 @@ boolean K_BananaBallhogCollide(mobj_t *t1, mobj_t *t2)
damageitem = true;
}
if (damageitem)
if (damageitem && P_MobjWasRemoved(t1) == false)
{
// This Item Damage
angle_t bounceangle = K_GetCollideAngle(t2, t1);
angle_t bounceangle;
if (P_MobjWasRemoved(t2) == false)
{
bounceangle = K_GetCollideAngle(t2, t1);
}
else
{
bounceangle = K_MomentumAngle(t1) + ANGLE_90;
t2 = NULL; // handles the arguments to P_KillMobj
}
// This Item Damage
S_StartSound(t1, t1->info->deathsound);
P_KillMobj(t1, t2, t2, DMG_NORMAL);
P_SetObjectMomZ(t1, 24*FRACUNIT, false);
P_InstaThrust(t1, bounceangle, 16*FRACUNIT);
}