2006-02-24 04:48:15 +00:00
|
|
|
#include "actor.h"
|
|
|
|
#include "info.h"
|
|
|
|
#include "p_enemy.h"
|
|
|
|
#include "p_local.h"
|
|
|
|
#include "a_doomglobal.h"
|
|
|
|
#include "a_sharedglobal.h"
|
|
|
|
#include "m_random.h"
|
|
|
|
#include "gi.h"
|
|
|
|
#include "doomstat.h"
|
|
|
|
#include "gstrings.h"
|
2008-08-10 20:48:55 +00:00
|
|
|
#include "thingdef/thingdef.h"
|
2006-02-24 04:48:15 +00:00
|
|
|
|
|
|
|
// The barrel of green goop ------------------------------------------------
|
|
|
|
|
2008-08-10 20:48:55 +00:00
|
|
|
DEFINE_ACTION_FUNCTION(AActor, A_BarrelDestroy)
|
2006-02-24 04:48:15 +00:00
|
|
|
{
|
|
|
|
if ((dmflags2 & DF2_BARRELS_RESPAWN) &&
|
|
|
|
(deathmatch || alwaysapplydmflags))
|
|
|
|
{
|
2008-08-10 20:48:55 +00:00
|
|
|
self->height = self->GetDefault()->height;
|
|
|
|
self->renderflags |= RF_INVISIBLE;
|
|
|
|
self->flags &= ~MF_SOLID;
|
2006-02-24 04:48:15 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
2008-08-10 20:48:55 +00:00
|
|
|
self->Destroy ();
|
2006-02-24 04:48:15 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|