mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2024-11-15 01:01:33 +00:00
Move the fireball despawn to later so its target/tracer isn't nulled until AFTER the enemy it touches is killed, allowing for correct point delivery (resolves #373).
This commit is contained in:
parent
05ee9c8a21
commit
fa01a32a7f
1 changed files with 5 additions and 5 deletions
10
src/p_map.c
10
src/p_map.c
|
@ -1303,11 +1303,6 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fireball touched an enemy
|
|
||||||
// Don't bounce though, just despawn right there
|
|
||||||
if ((tmthing->type == MT_FIREBALL) && (thing->flags & MF_ENEMY))
|
|
||||||
P_KillMobj(tmthing, NULL, NULL, 0);
|
|
||||||
|
|
||||||
// damage / explode
|
// damage / explode
|
||||||
if (tmthing->flags & MF_ENEMY) // An actual ENEMY! (Like the deton, for example)
|
if (tmthing->flags & MF_ENEMY) // An actual ENEMY! (Like the deton, for example)
|
||||||
P_DamageMobj(thing, tmthing, tmthing, 1, 0);
|
P_DamageMobj(thing, tmthing, tmthing, 1, 0);
|
||||||
|
@ -1356,6 +1351,11 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
P_DamageMobj(thing, tmthing, tmthing->target, 1, damagetype);
|
P_DamageMobj(thing, tmthing, tmthing->target, 1, damagetype);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Fireball touched an enemy
|
||||||
|
// Don't bounce though, just despawn right there
|
||||||
|
if ((tmthing->type == MT_FIREBALL) && (thing->flags & MF_ENEMY))
|
||||||
|
P_KillMobj(tmthing, NULL, NULL, 0);
|
||||||
|
|
||||||
// don't traverse any more
|
// don't traverse any more
|
||||||
|
|
||||||
if (tmthing->type == MT_SHELL)
|
if (tmthing->type == MT_SHELL)
|
||||||
|
|
Loading…
Reference in a new issue