mirror of
https://github.com/ZDoom/gzdoom-last-svn.git
synced 2025-06-04 03:00:47 +00:00
- updated to ZDoom r791
- fixed: Mod playback through ModPlug only worked for music that was stored within Zips. git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@53 b0f79afe-0144-0410-b225-9a4edf0717df
This commit is contained in:
parent
0a5adaea62
commit
e8e77c8122
40 changed files with 3152 additions and 4067 deletions
|
@ -613,7 +613,7 @@ void AActor::Die (AActor *source, AActor *inflictor)
|
|||
|
||||
|
||||
|
||||
FState *diestate=NULL;
|
||||
FState *diestate = NULL;
|
||||
|
||||
if (DamageType != NAME_None)
|
||||
{
|
||||
|
@ -637,16 +637,27 @@ void AActor::Die (AActor *source, AActor *inflictor)
|
|||
int gibhealth = -abs(GetClass()->Meta.GetMetaInt (AMETA_GibHealth,
|
||||
gameinfo.gametype == GAME_Doom ? -GetDefault()->health : -GetDefault()->health/2));
|
||||
|
||||
// Don't pass on a damage type this actor cannot handle
|
||||
// (most importantly prevent barrels from passing on ice damage)
|
||||
// Don't pass on a damage type this actor cannot handle.
|
||||
// (most importantly, prevent barrels from passing on ice damage.)
|
||||
// Massacre must be preserved though.
|
||||
if (DamageType != NAME_Massacre) DamageType =NAME_None;
|
||||
if (DamageType != NAME_Massacre)
|
||||
{
|
||||
DamageType = NAME_None;
|
||||
}
|
||||
|
||||
if ((health<gibhealth || flags4 & MF4_EXTREMEDEATH) && !(flags4 & MF4_NOEXTREMEDEATH))
|
||||
if ((health < gibhealth || flags4 & MF4_EXTREMEDEATH) && !(flags4 & MF4_NOEXTREMEDEATH))
|
||||
{ // Extreme death
|
||||
diestate = FindState (NAME_Death, NAME_Extreme, true);
|
||||
// if a non-player mark as extremely dead for the crash state.
|
||||
if (diestate != NULL && player == NULL && health >= gibhealth) health = gibhealth-1;
|
||||
// If a non-player, mark as extremely dead for the crash state.
|
||||
if (diestate != NULL && player == NULL && health >= gibhealth)
|
||||
{
|
||||
health = gibhealth - 1;
|
||||
}
|
||||
// For players, mark the appropriate flag.
|
||||
else if (player != NULL)
|
||||
{
|
||||
player->cheats |= CF_EXTREMELYDEAD;
|
||||
}
|
||||
}
|
||||
if (diestate == NULL)
|
||||
{ // Normal death
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue