- fixed: A_CountdownArg used 0 based indices although all uses of it assumed
it is 1-based. - added MF5_DONTRIP flag. - added CheckActorFloorTexture, CheckActorCeilingTexture and GetActorLightLevel ACS functions. - added IF_ADDITIVETIME flag to create powerups that add their duration to the one of the currently active item of the same type. - fixed: bouncecount wasn't decreased when bouncing on walls. - Added MF5_ALWAYSRESPAWN and MF5_NEVERRESPAWN flags that selectively enable or disable monster respawning regardless of skill setting. - Prettified deprecated flag handling. SVN r780 (trunk)
This commit is contained in:
parent
03617dc6f0
commit
5589f6b7a1
10 changed files with 107 additions and 25 deletions
|
|
@ -2963,8 +2963,15 @@ void AActor::Tick ()
|
|||
{
|
||||
int respawn_monsters = G_SkillProperty(SKILLP_Respawn);
|
||||
// check for nightmare respawn
|
||||
if (!respawn_monsters || !(flags3 & MF3_ISMONSTER) || (flags2 & MF2_DORMANT))
|
||||
return;
|
||||
if (!(flags5 & MF5_ALWAYSRESPAWN))
|
||||
{
|
||||
if (!respawn_monsters || !(flags3 & MF3_ISMONSTER) || (flags2 & MF2_DORMANT) || (flags5 & MF5_NEVERRESPAWN))
|
||||
return;
|
||||
|
||||
int limit = G_SkillProperty (SKILLP_RespawnLimit);
|
||||
if (limit > 0 && skillrespawncount >= limit)
|
||||
return;
|
||||
}
|
||||
|
||||
movecount++;
|
||||
|
||||
|
|
@ -2977,9 +2984,6 @@ void AActor::Tick ()
|
|||
if (pr_nightmarerespawn() > 4)
|
||||
return;
|
||||
|
||||
if (G_SkillProperty (SKILLP_RespawnLimit) && (this)->skillrespawncount >= G_SkillProperty (SKILLP_RespawnLimit))
|
||||
return;
|
||||
|
||||
P_NightmareRespawn (this);
|
||||
}
|
||||
}
|
||||
|
|
@ -4405,7 +4409,7 @@ bool P_CheckMissileSpawn (AActor* th)
|
|||
if (!P_TryMove (th, th->x, th->y, false))
|
||||
{
|
||||
// [RH] Don't explode ripping missiles that spawn inside something
|
||||
if (BlockingMobj == NULL || !(th->flags2 & MF2_RIP))
|
||||
if (BlockingMobj == NULL || !(th->flags2 & MF2_RIP) || (BlockingMobj->flags5 & MF5_DONTRIP))
|
||||
{
|
||||
// If this is a monster spawned by A_CustomMissile subtract it from the counter.
|
||||
if (th->CountsAsKill())
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue