- Fixed: Any kill in multiplayer games that could not be credited to a player

didn't count at all - not even toward the global level statistics.
- ...and removed it again. It was not an accident. The only reason the PowerupGiver
  had its own RespawnTics was to account for the pickup flash delay. 
  But that is better handled by checking the flag and adding the additional 30 
  tics in AInventory::Hide because then it affects all items that have one - 
  and only those. The AT_GAME_SET function didn't work anyway because it was
  called after parsing DECORATE.


SVN r253 (trunk)
This commit is contained in:
Christoph Oelckers 2006-07-14 08:04:17 +00:00
parent 3113037229
commit 1c3153690a
3 changed files with 13 additions and 12 deletions

View File

@ -1,3 +1,13 @@
July 14, 2006 (Changes by Graf Zahl)
- Fixed: Any kill in multiplayer games that could not be credited to a player
didn't count at all - not even toward the global level statistics.
- ...and removed it again. It was not an accident. The only reason the PowerupGiver
had its own RespawnTics was to account for the pickup flash delay.
But that is better handled by checking the flag and adding the additional 30
tics in AInventory::Hide because then it affects all items that have one -
and only those. The AT_GAME_SET function didn't work anyway because it was
called after parsing DECORATE.
July 13, 2006
- Restored the PowerupGiver AT_GAME_SET function. I assume its removal was an
accident from merging in Grubber's custom player classes.

View File

@ -1092,16 +1092,6 @@ IMPLEMENT_STATELESS_ACTOR (APowerupGiver, Any, -1, 0)
PROP_Inventory_PickupSound ("misc/p_pkup")
END_DEFAULTS
AT_GAME_SET(PowerupGiver)
{
APowerupGiver * giver = GetDefault<APowerupGiver>();
if (gameinfo.gametype & GAME_Raven)
{
giver->RespawnTics = 1400+30;
}
}
//===========================================================================
//
// AInventory :: DoRespawn

View File

@ -394,12 +394,14 @@ void AActor::Die (AActor *source, AActor *inflictor)
special = 0;
}
if (CountsAsKill())
level.killed_monsters++;
if (source && source->player)
{
if (CountsAsKill())
{ // count for intermission
source->player->killcount++;
level.killed_monsters++;
}
// Don't count any frags at level start, because they're just telefrags
@ -543,7 +545,6 @@ void AActor::Die (AActor *source, AActor *inflictor)
// count all monster deaths,
// even those caused by other monsters
players[0].killcount++;
level.killed_monsters++;
}
if (player)