- fixed: The newly added checks for printing weapon obituaries failed if the weapon used a puff with a special damage type. To handle this, P_DamageMobj will now pass the damage flags to AActor::Die and from there to ClientObituary so that P_LineAttack - which is a better place to decide this - can flag an attack as coming from a player weapon.

- fixed: The same rules that are used for deciding if a weapon attack took place should be used when checking the PIERCEARMOR flag in P_LineAttack: It should be ignored if the attack doesn't originate from the weapon.

SVN r3649 (trunk)
This commit is contained in:
Christoph Oelckers 2012-05-13 07:54:44 +00:00
commit 3a24790056
12 changed files with 35 additions and 27 deletions

View file

@ -1205,15 +1205,15 @@ void APlayerPawn::ActivateMorphWeapon ()
//
//===========================================================================
void APlayerPawn::Die (AActor *source, AActor *inflictor)
void APlayerPawn::Die (AActor *source, AActor *inflictor, int dmgflags)
{
Super::Die (source, inflictor);
Super::Die (source, inflictor, dmgflags);
if (player != NULL && player->mo == this) player->bonuscount = 0;
if (player != NULL && player->mo != this)
{ // Make the real player die, too
player->mo->Die (source, inflictor);
player->mo->Die (source, inflictor, dmgflags);
}
else
{