Classes:ExplosiveBarrel

From ZDoom Wiki
Jump to navigation Jump to search
Note: Wait! Stop! You do not need to copy this actor's code into your project! Here's why:
  1. This actor is already defined in GZDoom, there's no reason to define it again.
  2. In fact, trying to define an actor with the same name will cause an error (because it already exists).
  3. If you want to make your own version of this actor, use inheritance.
  4. Definitions for existing actors are put on the wiki for reference purpose only.
Explosive barrel
Actor type Hazard Game MiniDoomLogoIcon.png (Doom)
DoomEd Number 2035 Class Name ExplosiveBarrel
Spawn ID 125 Identifier T_BARREL


Classes: ExplosiveBarrel

A barrel full of green goop that can be destroyed, causing explosive damage. Several barrels near each other can be used to create large chain-reactions, as shown in the Doom 2 map "Barrels O' Fun". Barrels will respawn in multiplayer games if the sv_barrelrespawn CVAR is set.

ZScript definition

Note: The ZScript definition below is for reference and may be different in the current version of GZDoom.The most up-to-date version of this code can be found on GZDoom GitHub.
class ExplosiveBarrel : Actor
{
	Default
	{
		Health 20;
		Radius 10;
		Height 42;
		+SOLID
		+SHOOTABLE
		+NOBLOOD
		+ACTIVATEMCROSS
		+DONTGIB
		+NOICEDEATH
		+OLDRADIUSDMG
		DeathSound "world/barrelx";
		Obituary "$OB_BARREL";
	}
	States
	{
	Spawn:
		BAR1 AB 6;
		Loop;
	Death:
		BEXP A 5 BRIGHT;
		BEXP B 5 BRIGHT A_Scream;
		BEXP C 5 BRIGHT;
		BEXP D 10 BRIGHT A_Explode;
		BEXP E 10 BRIGHT;
		TNT1 A 1050 BRIGHT A_BarrelDestroy;
		TNT1 A 5 A_Respawn;
		Wait;
	}
}

DECORATE definition

Note: This is legacy code, kept for archival purposes only. DECORATE is deprecated in GZDoom and is completely superseded by ZScript. GZDoom internally uses the ZScript definition above.
ACTOR ExplosiveBarrel
{
  Health 20
  Radius 10
  Height 42
  +SOLID
  +SHOOTABLE
  +NOBLOOD
  +ACTIVATEMCROSS
  +DONTGIB
  +NOICEDEATH
  +OLDRADIUSDMG
  DeathSound "world/barrelx"
  Obituary "$OB_BARREL" // "%o went boom."
  States
  {
  Spawn:
    BAR1 AB 6
    Loop
  Death:
    BEXP A 5 Bright
    BEXP B 5 Bright A_Scream
    BEXP C 5 Bright
    BEXP D 5 Bright A_Explode
    BEXP E 10 Bright
    TNT1 A 1050 Bright A_BarrelDestroy
    TNT1 A 5 A_Respawn
    Wait
  }
}

See also