- added submission for raising master/children/siblings.
- added submission for no decals on wall option. - removed some useless code from SpawnMissile function. SVN r1716 (trunk)
This commit is contained in:
parent
19f8b03738
commit
8e5b7373b8
11 changed files with 148 additions and 79 deletions
|
|
@ -424,6 +424,60 @@ void P_RemoveThing(AActor * actor)
|
|||
}
|
||||
}
|
||||
|
||||
bool P_Thing_Raise(AActor *thing)
|
||||
{
|
||||
if (thing == NULL)
|
||||
return false; // not valid
|
||||
|
||||
if (!(thing->flags & MF_CORPSE) )
|
||||
return true; // not a corpse
|
||||
|
||||
if (thing->tics != -1)
|
||||
return true; // not lying still yet
|
||||
|
||||
FState * RaiseState = thing->FindState(NAME_Raise);
|
||||
if (RaiseState == NULL)
|
||||
return true; // monster doesn't have a raise state
|
||||
|
||||
AActor *info = thing->GetDefault ();
|
||||
|
||||
thing->velx = thing->vely = 0;
|
||||
|
||||
// [RH] Check against real height and radius
|
||||
fixed_t oldheight = thing->height;
|
||||
fixed_t oldradius = thing->radius;
|
||||
int oldflags = thing->flags;
|
||||
|
||||
thing->flags |= MF_SOLID;
|
||||
thing->height = info->height; // [RH] Use real height
|
||||
thing->radius = info->radius; // [RH] Use real radius
|
||||
if (!P_CheckPosition (thing, thing->x, thing->y))
|
||||
{
|
||||
thing->flags = oldflags;
|
||||
thing->radius = oldradius;
|
||||
thing->height = oldheight;
|
||||
return false;
|
||||
}
|
||||
|
||||
S_Sound (thing, CHAN_BODY, "vile/raise", 1, ATTN_IDLE);
|
||||
|
||||
thing->SetState (RaiseState);
|
||||
thing->flags = info->flags;
|
||||
thing->flags2 = info->flags2;
|
||||
thing->flags3 = info->flags3;
|
||||
thing->flags4 = info->flags4;
|
||||
thing->health = info->health;
|
||||
thing->target = NULL;
|
||||
thing->lastenemy = NULL;
|
||||
|
||||
// [RH] If it's a monster, it gets to count as another kill
|
||||
if (thing->CountsAsKill())
|
||||
{
|
||||
level.total_monsters++;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
CCMD (dumpspawnables)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue