ACTOR WasteBin 28971
{
  Game Doom
  Radius 8
  Height 24
  Scale .5
  +SOLID
  States
  {
  Spawn:
    WBIN A -1
    Stop
  }
}

ACTOR WasteBinFilthy 28972
{
  Game Doom
  Radius 8
  Height 24
  Scale .5
  +SOLID
  States
  {
  Spawn:
    WBIN B -1
    Stop
  }
}

ACTOR FireExtinguisher 28973
{
	//$Title Fire Extinguisher (Wall Mounted)
	//$Category Obstacles/Fire Extinguishers

	Health 20
	Radius 5.5
	Height 28
	Scale 0.6
	Mass 0x7FFFFFFF
	
	+SHOOTABLE
	+NOBLOOD
	+DONTGIB
	+NOICEDEATH
	+NOGRAVITY
	+FIXMAPTHINGPOS
	+DONTFALL
	//+DONTTHRUST // Zandronum does not support this flag. Using Mass 0x7FFFFFFF instead.
  
	DeathSound "world/barrelx"
	Obituary "%o was extinguished."

		States
		{
			Spawn:
				FEXT A -1 
				Stop
			Death:
				FEXT B 4
				FEXT C 4 A_Scream
				FEXT DDDDD 0 A_SpawnItemEx ("ExtinguisherCloud", random(-32,32), 0, random(0, 32), 0, 0, 0, random(1,360))
				FEXT D 5 A_Explode (75, 96, XF_NOTMISSILE)
				FEXT EF 5
				Stop
		}
}

ACTOR FireExtinguisherFloor : FireExtinguisher 28974
{
	//$Title Fire Extinguisher (Floor)
	//$Arg0 Pushable
	//$Arg0Default 1
	//$Arg0Type 11
	//$Arg0Enum falsetrue

	Mass 500
	
	+SOLID
	-NOGRAVITY
	-FIXMAPTHINGPOS
	-DONTFALL
	//-DONTTHRUST

		States
		{
			Spawn:
				FEXT A 0 NoDelay A_JumpIf(args[0] == 1, "MakePushable")
			Spawn2:
				FEXT A -1
				Stop
			MakePushable:
				FEXT A 0 A_ChangeFlag ("PUSHABLE", TRUE)
				FEXT A 0 A_ChangeFlag ("SLIDESONWALLS", TRUE)
				goto Spawn2
			Death:
				FEXT B 4
				FEXT C 4 A_Scream
				FEXT DDDDD 0 A_SpawnItemEx ("ExtinguisherCloud", random(-32,32), 0, random(0, 32), 0, 0, 0, random(1,360))
				FEXT D 5 A_Explode (75, 96, XF_NOTMISSILE)
				FEXT EF 5
				Stop
		}
}

ACTOR ExtinguisherCloud
{
	+NOINTERACTION

		States
		{
			Spawn:
				EXTS A 0 NoDelay A_Jump (256, "FadeAwayA", "FadeAwayB", "FadeAwayC", "FadeAwayD") //Zandronum does not support XFLIP/YFLIP flags yet so doing it this way
			FadeAwayA:
				EXTS A 1 A_FadeOut (0.02)
				EXTS A 0 A_SetScale (scalex+0.01,scaley+0.01)
				Loop
			FadeAwayB:
				EXTS B 1 A_FadeOut (0.02)
				EXTS B 0 A_SetScale (scalex+0.01,scaley+0.01)
				Loop
			FadeAwayC:
				EXTS C 1 A_FadeOut (0.02)
				EXTS C 0 A_SetScale (scalex+0.01,scaley+0.01)
				Loop
			FadeAwayD:
				EXTS D 1 A_FadeOut (0.02)
				EXTS D 0 A_SetScale (scalex+0.01,scaley+0.01)
				Loop
		}
}

Actor Chair 28975
{
  +FloorClip
  +Solid
  Height 30
  Radius 15
  States
  {
  Spawn:
    CHAI A -1
    Stop
  }
}

ACTOR RAMPTrainTicket : Key 28976
{
   +ALWAYSPICKUP
   Scale 1.0
   Inventory.PickupMessage "Collected a train ticket."
   States
   {
   Spawn:
      RTKT A -1
      Stop
   }
}

Actor SittingCorpse 28977
{
Height 32
Radius 20
States
	{
	Spawn:
		SIT2 A -1
		Stop
	}
}