
actor Green_Blood : Brutal_XBlood
{
translation "168:191=112:127", "16:47=123:127"

Decal GreenBloodSplat
+NOBLOODDECALS
 states
 {
 
  Splash:
        BLOD A 0
		//TNT1 AAA 0 A_CustomMissile ("UnderbloodGreen", 7, 0, random (0, 360), 2, random (30, 150))
        stop
		
		
  Spawn:
	    TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		TNT1 A 0 ACS_ExecuteAlways(799, 0, 0, 0, 0)//Check Blood density
		TNT1 A 0 A_Stop
		TNT1 A 2
		Spawn2:
        TNT1 AAAA 0 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 180))
  	    TNT1 A 0 A_CustomMissile ("Green_FlyingBlood", 7, 0, random (0, 360), 2, random (30, 150))
       stop
	   
	   
	   
	LotsOfBlood:
	   TNT1 AAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 180))
	   TNT1 AAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 180))
	   TNT1 A 0 A_CustomMissile ("GreenXBloodmistSmall", 0, 0, random (0, 360), 2, random (0, 180))
  	   TNT1 AA 0 A_CustomMissile ("Green_FlyingBlood", 7, 0, random (0, 360), 2, random (30, 150))
	   Stop
	AbsurdBlood:
	   TNT1 A 2
	   TNT1 A 0 A_JumpIfInventory("AnimuGore", 1, "AnimuGore")
	   TNT1 AAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 180))
	   TNT1 AAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 180))
	   TNT1 AA 0 A_CustomMissile ("GreenXBloodmistSmall", 0, 0, random (0, 360), 2, random (0, 180))
	   TNT1 AA 0 A_CustomMissile ("GreenXBloodmistBig", 0, 0, random (0, 360), 2, random (0, 180))
  	   TNT1 AAA 0 A_CustomMissile ("Green_FlyingBlood", 7, 0, random (0, 360), 2, random (30, 150))
	   Stop  
	  AnimuGore:
	    TNT1 AAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 180))
	   TNT1 AAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 180))
	   TNT1 AAAAA 0 A_CustomMissile ("GreenXBloodmistSmall", 0, 0, random (0, 360), 2, random (0, 180))
	   TNT1 AAAA 0 A_CustomMissile ("GreenXBloodmistBig", 0, 0, random (0, 360), 2, random (0, 180))
  	   TNT1 AAA 0 A_CustomMissile ("Green_FlyingBlood", 7, 0, random (0, 360), 2, random (30, 150))
	   Stop   
	 LowBlood:
		TNT1 A 0
		TNT1 AA 0 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 180))
  	    TNT1 A 0 A_CustomMissile ("Green_FlyingBlood", 7, 0, random (0, 360), 2, random (30, 150))
		Stop
 }
}

actor Green_FlyingBlood: Brutal_FlyingXBlood
{
translation "168:191=112:127", "16:47=123:127"
Decal GreenBloodSplat

states
{
     Death:
  	    //TNT1 A 0 A_CustomMissile ("SmallBloodSplasher", 0, 0, random (0, 360), 2, random (0, 160))
       TNT1 A 1 A_SpawnItem("Green_BloodSpot",0,0,0,1)
        XDT1 EFGHIJKL 3
       Stop
}
}


actor Green_FlyingBloodTrail: Brutal_FlyingXBloodTrail
{
translation "168:191=112:127", "16:47=123:127"
Decal GreenBloodSplat
}

actor Green_FlyingBloodTrail5: Green_FlyingBloodTrail
{
Decal GreenBloodSplat
}

actor GreenBloodTrails: Green_FlyingBloodTrail
{
Decal GreenBloodSplat
}

actor GreenBloodTr: Green_FlyingBloodTrail
{
Decal GreenBloodSplat
}

actor Green_TinyBlood: TinyBlood
{
translation "168:191=112:127", "16:47=123:127"
Decal GreenBloodSplat
}

actor Green_BloodSpot: Brutal_BloodSpot
{
translation "168:191=112:127", "16:47=123:127"
Decal GreenBloodSplat
Renderstyle Normal
states
 {
 Spawn:
 TNT1 A 0
 TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
 
  TNT1 A 1
  TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)//Check Effects
  TNT1 A 0 A_CheckFloor("SpawnNormally")
  Goto Splash
  
  SpawnNormally:
  TNT1 A 1
  Goto SpawnAFrameOnly
  }
}



ACTOR GreenBloodFootPrintLeft: RedBloodFootPrintLeft
{
translation "168:191=112:127", "16:47=123:127"
Decal GreenBloodSplat
Renderstyle Normal
StencilColor "00 44 00"
}


ACTOR GreenBloodFootPrintRight: RedBloodFootPrintRight
{
translation "168:191=112:127", "16:47=123:127"
Decal GreenBloodSplat
Renderstyle Normal
StencilColor "00 44 00"
}












actor GreenXBloodmist : Green_FlyingBlood
{
Decal GreenBloodSplat
translation "168:191=112:127", "16:47=123:127"
+MISSILE +NOTELEPORT +NOBLOCKMAP +NOBLOCKMONST +DONTSPLASH +CLIENTSIDEONLY +THRUACTORS
scale    0.8
radius    2
height    2
speed    8
Gravity 0.4
RenderStyle    Translucent
alpha    0.9
states
{
Spawn:
MXBL ABCDEFGH 1
MXBL HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 1 A_FadeOut(0.005)
Stop

Death:
TNT1 A 0
TNT1 A 0 A_CheckFloor("Disappear")
MXBL HHHHHHHH 1 A_FadeOut(0.1)
Stop

Disappear:
TNT1 A 2
Stop
}
}


actor GreenXBloodmistBig : GreenXBloodmist
{
scale    0.9
speed    6
GRAVITY 0.4
}


actor GreenXBloodmistSmall : GreenXBloodmist
{
scale    0.45
Gravity 0.8
}


actor GreenXBloodmistExtraBig : GreenXBloodmist
{
scale    1.4
}

actor GreenXBloodmistXXBig : GreenXBloodmist
{
scale    2.2
GRAVITY 0.2
}



ACTOR GreenGuts
{
    Radius 8
    Height 12
    Speed 6
	Mass 1
	BounceFactor 0.4
	Renderstyle Translucent
	Alpha 0.9
	+DOOMBOUNCE
    +NOBLOCKMAP
	+MISSILE
    +NOTELEPORT
    +MOVEWITHSECTOR
    +CLIENTSIDEONLY
    +FORCEXYBILLBOARD
	-EXPLODEONWATER
	translation "168:191=112:127", "16:47=123:127"
    DeathSound "misc/xdeath1"
	Decal GreenBloodSplat
	Scale 1.1
    States
    {
    Spawn:
        GUTS ABCD 8
        Loop
    Death:
	   
        TNT1 A 0 A_Jump(128, 5)
        GUTS E 8
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Water")
        GUTS E 9009
        Stop
        TNT1 AAAAAA 0
        GUTS F 8
		TNT1 A 0 A_JumpIf(waterlevel > 1, "Water")
        GUTS F 9009
        Stop
	
	Water:
	TNT1 A 0
	TNT1 A 0 A_Jump(128, "Water2")
	Goto Water1
	
	Water1:
	GUTS GH 10
	//TNT1 A 0 A_JumpIf(waterlevel == 0, "Death")
	Loop
	
	Water2:
	GUTS IJ 10
	//TNT1 A 0 A_JumpIf(waterlevel == 0, "Death")
	Loop
    }
}



actor GreenSawBlood : Green_Blood
{
Decal GreenBloodSplat
translation "168:191=192:207","16:47=240:247"
Speed 0
 states
 {
  Spawn:
        TNT1 A 0
		TNT1 A 0 A_CheckSight("None")
		TNT1 A 0 A_RadiusGive("ChainsawHitGreen", 200, RGF_PLAYERS | RGF_MONSTERS , 1)
		TNT1 A 0 A_RadiusGive("PowerGreenBloodOnVisor", 200, RGF_PLAYERS | RGF_MONSTERS , 1)
		TNT1 A 0 Radius_Quake (4, 4, 0, 2, 0)
		TNT1 A 0 A_PlaySOund("misc/xdeath4", 1)
	    TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		TNT1 A 0 ACS_ExecuteAlways(799, 0, 0, 0, 0)//Check Blood density
		TNT1 A 3
        Goto Spawn2
	Splash:
        BLOD A 0
		TNT1 AAA 0 A_CustomMissile ("Underblood1", 7, 0, random (0, 360), 2, random (30, 150))
        stop
 }
}




ACTOR Green_LiquidBlood: Green_FlyingBlood 
{
 speed 3
 scale 0.2
 gravity 0.6

    States
    {
     Spawn:
     BLOD A 1 A_SpawnItem("Green_LiquidBloodTrail")
     Loop
	 Death:
  	   TNT1 A 0 A_PlaySound("blooddrop")
	   XDT1 FGHIJKL 2
	   TNT1 A 0
       Stop
    }
}


ACTOR Green_LiquidBlood2: Green_FlyingBlood 
{
 speed 4
 scale 0.4
 gravity 0.6

    States
    {
     Spawn:
     BLOD A 1 A_SpawnItem("Green_LiquidBloodTrail")
     Loop
	 Death:
  	   TNT1 A 0 A_PlaySound("blooddrop")
	   XDT1 FGHIJKL 2
	   TNT1 A 0
       Stop
    }
}

ACTOR Green_LiquidBlood3: Green_FlyingBlood 
{
Speed 3
    States
    {
     Spawn:
     BLOD A 1 A_SpawnItem("Green_LiquidBloodTrail")
     Loop
	 Death:
  	   TNT1 A 0 A_PlaySound("blooddrop")
	   TNT1 A 0 A_CheckFloor("SpawnFloor")
	   TNT1 A 4
	   Stop
	  
	 SpawnFloor:
	   tnt1 a 0 A_SPawnItem("Green_BloodSpot")
	   XDT1 FGHIJKL 2
	   TNT1 A 0
       Stop
    }
}



ACTOR Green_LiquidBloodFast: Green_LiquidBlood2
{
 speed 8
}

ACTOR Green_LiquidBloodTrail: Green_FlyingBlood 
{
 scale 0.4
 gravity 0.4
    States
    {
     Spawn:
	 TNT1 A 0
     BL8D ABCDEEEEE 2
	 Stop
	 Death:
	   TNT1 A 0
       Stop
    }
}








ACTOR CeilGreenBloodLauncher: Green_FLyingBlood
{
    +THRUACTORS
    +BLOODLESSIMPACT 
	-DOOMBOUNCE
damagetype Blood
 Speed 15
 Gravity 0.0
	Decal BrutalBloodSplat
    States
    {
     Spawn:
       TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        TNT1 A 3
        Stop
	Splash:
        BLOD A 0
        stop
     Death:
  	    //TNT1 A 0 A_CustomMissile ("SmallBloodSplasher", 0, 0, random (0, 360), 2, random (0, 160))
       TNT1 A 0 A_CustomMissile ("CeilGreenBloodChecker", -15, 0, 90, 2, 90)
        TNT1 A 0
        stop
	 Melee:
     Xdeath:
	    TNT1 A 1
        Stop
    }
}

ACTOR CeilGreenBloodLauncherLong: CeilGreenBloodLauncher
{
    States
    {
     Spawn:
       TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        TNT1 A 12
        Stop
    }
}

actor MinuscleGreenBloodSpot: Green_BloodSpot
{
Scale 0.25
}


ACTOR Detect_CeilGreenBloodSimpler
{
 game Doom
 scale 0.4
 speed 0
 health 1
 radius 1
 height 1
 Gravity 0.0
 damage 0
 Renderstyle Translucent
 Alpha 0.95
	DamageType Blood
   +MISSILE
   +CLIENTSIDEONLY
   +NOTELEPORT
   +NOBLOCKMAP
   +FORCEXYBILLBOARD
   +NODAMAGETHRUST
   -DONTSPLASH
   +NOGRAVITY
    States
    {
     Spawn:
	 TNT1 A 0
	 TNT1 A 0 ThrustThingZ(0,35,0,1)
	 TNT1 A 2
	 Stop
	 Death:
	 TNT1 A 0
	 TNT1 A 0 A_CustomMissile ("CeilGreenBloodChecker", -15, 0, 90, 2, 90)
  Stop
    }
}



ACTOR Detect_CeilGreenBloodSimplerLarge: Detect_CeilGreenBloodSimpler
{
    States
    {
	 Death:
	 TNT1 A 0
	 TNT1 A 0 A_CustomMissile ("CeilGreenBloodCheckerLarge", -15, 0, 90, 2, 90)
  Stop
    }
}



// Checks if there is a ceiling above, and isn't hitting a monster.
ACTOR CeilGreenBloodChecker: Green_FLyingBlood
{
    +THRUACTORS
    +BLOODLESSIMPACT 
damagetype Blood
damage 0
Radius 0
Height 0
Speed 400

 Gravity 0.0
	Decal BrutalBloodSuper
    States
    {
     Spawn:
       TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        TNT1 A 4
        Stop
	Splash:
        BLOD A 0
        stop
     Death:
       TNT1 A 1 A_SpawnItem("CeilGreenBloodSpot")
                TNT1 A 5
        stop
     Xdeath:
	    TNT1 A 1
        Stop
    }
}


ACTOR CeilGreenBloodCheckerLarge: CeilGreenBloodChecker
{
States
{
     Death:
        TNT1 A 1 A_SpawnItem("CeilGreenBloodSpotLarge",0,0,0,1)
        TNT1 A 5
        stop
}}


// The Ceil Blood Spot.
actor CeilGreenBloodSpot
{
+MISSILE
+CEILINGHUGGER
+THRUACTORS
Height 1
Radius 2
+DontSplash
Mass 0
Scale 0.5
Gravity 0.0
Decal BrutalBloodSplat
Renderstyle Translucent
translation "168:191=112:127", "16:47=123:127"
Alpha 0.9
states
{
Spawn:
Goto Crash
Death:
Crash:
  BPDL A 1
  TNT1 A 0 A_SpawnItem ("DripingGreenBloodLeavesSmallPool")
  TNT1 A 0 A_SpawnItem ("CeilGreenBloodTinyBloodSpawner")
  BPDL A -1
  stop
    }
}
actor CeilGreenBloodSpotLarge: CeilGreenBloodSpot
{
states
{
Spawn:
Goto Crash
Death:
Crash:
  BPDL A 1
  TNT1 A 0 A_SpawnItem ("DripingGreenBloodLeavesSmallPool")
  TNT1 A 0 A_SpawnItem ("CeilGreenBloodLargeBloodSpawner")
  BPDL A 1
  BPDL A -1
  stop
	Splash:
        BLOD A 0
        stop
    }
}


ACTOR CeilGreenBloodTinyBloodSpawner: Green_Blood
{
+NOGRAVITY
+THRUACTORS
+NOCLIP
    States
    {
     Spawn:
		  TNT1 AAAAAAAAAAAAAA 5 A_SpawnItemEx ("BloodGreenDripingFromCeiling", random (-5, 5), random (-5, 5))
		  TNT1 AAAAAAAAAAAAAA 10 A_SpawnItemEx ("BloodGreenDripingFromCeiling", random (-5, 5), random (-5, 5))
		  TNT1 AAAAAAAAAAAAAA 16 A_SpawnItemEx ("BloodGreenDripingFromCeiling", random (-5, 5), random (-5, 5))
		  TNT1 AAAAAAAAAAAAAA 24 A_SpawnItem ("BloodGreenDripingFromCeiling")
		  stop
    }
}

ACTOR CeilGreenBloodLargeBloodSpawner: Green_Blood
{
+NOGRAVITY
+THRUACTORS
+NOCLIP
    States
    {
     Spawn:
		  TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 3 A_SpawnItemEx ("BloodGreenDripingFromCeilingBig", random (-5, 5), random (-5, 5))
		  TNT1 AAAAAAAAAAAAAA 10 A_SpawnItemEx ("BloodGreenDripingFromCeilingBig", random (-5, 5), random (-5, 5))
		  TNT1 AAAAAAAAAAAAAA 15 A_SpawnItemEx ("BloodGreenDripingFromCeiling", random (-5, 5), random (-5, 5))
		  TNT1 AAAAAAAAAAAAAA 20 A_SpawnItemEx ("BloodGreenDripingFromCeiling", random (-5, 5), random (-5, 5))
		  stop
    }
}

ACTOR BloodGreenDripingFromCeiling: Green_TinyBlood
{
+DOOMBOUNCE
+THRUACTORS
+CLIENTSIDEONLY
-FORCEXYBILLBOARD
+FORCEYBILLBOARD
BounceFactor 0.1
    States
    {
     Spawn:
       TNT1 A 0
	   BPDL A 0 ThrustThingZ(0,300,0,1)
	   TNT1 A 0 A_Jump(230, "NoSpawn")
       TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        BLUD Z 500
        loop
		
	NoSpawn:
		TNT1 A 0
		Stop	
    }
}


ACTOR BloodGreenDripingFromCeilingBig: Green_TinyBlood
{
+DOOMBOUNCE
-FORCEXYBILLBOARD
+FORCEYBILLBOARD
BounceFactor 0.1
XScale 0.4
YScale 0.8
    States
    {
     Spawn:
       TNT1 A 0
	   BPDL A 0 ThrustThingZ(0,300,0,1)
	   TNT1 A 0 A_Jump(160, "NoSpawn")
       TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        BLUD Z 500
        loop
		
	NoSpawn:
		TNT1 A 0
		Stop	
    }
}
		

ACTOR DripingGreenBlood: Green_TinyBlood
{
-FORCEXYBILLBOARD
+FORCEYBILLBOARD
 scale 0.3
    States
    {
     Spawn:
       TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        BLUD Z 4
        loop
	Splash:
        BLOD A 0
        stop
     Death:
	 TNT1 A 0
	 TNT1 A 0 A_PlaySound("blooddrop2")
        XDT1 EFGHIJKL 2
        stop
    }
}


ACTOR DripingGreenBloodLeavesPool: Green_TinyBlood
{
-FORCEXYBILLBOARD
+FORCEYBILLBOARD
 scale 0.3
    States
    {
     Spawn:
       TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        BLUD Z 4
        loop
	Splash:
        BLOD A 0
        stop
     Death:
	    TNT1 A 0
		TNT1 A 0 A_SpawnItem("MediumBloodSpot")
		TNT1 A 0 A_PlaySound("blooddrop2")
        XDT1 EFGHIJKL 2
        stop
    }
}

ACTOR DripingGreenBloodLeavesSmallPool: DripingGreenBloodLeavesPool
{
-FORCEXYBILLBOARD
+FORCEYBILLBOARD
-DONTSPLASH
States
{
     Death:
	    TNT1 A 0
		TNT1 A 0 A_SpawnItem("MinuscleGreenBloodSpot")
		TNT1 A 0 A_PlaySound("blooddrop2")
        XDT1 EFGHIJKL 2
        stop
    }
}





ACTOR XDeath1Green
{
    Radius 1
    Height 1
    Speed 10
    Scale 1.2
	Mass 1
    +NOBLOCKMAP
	+MISSILE
    +NOTELEPORT
    +MOVEWITHSECTOR
    +CLIENTSIDEONLY
    +BLOODLESSIMPACT 
	-DONTSPLASH
	+THRUGHOST
	+THRUACTORS
	+FLOORCLIP
	damagetype Blood
    SeeSound "misc/xdeath4"
    DeathSound "misc/xdeath1"
	Decal GreenBloodSuper
	translation "168:191=112:127", "16:47=123:127"
	Mass 1
    States
    {
    Spawn:
	    TNT1 A 0 A_JumpIf(waterlevel > 1, "Underwater")
        BLOD A 4 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
        Loop
    Death:
        TNT1 A 0 A_SpawnItem ("Green_BloodSpot", 0, 1)
		TNT1 A 0 ACS_EXecuteAlways(373, 0, 0, 0, 0)
		XDT1 EF 3
		TNT1 A 0 A_JumpIfInventory("IsOverWater", 1, "IsOverLiquid")
		TNT1 A 0 A_JumpIfInventory("IsOverSlime", 1, "IsOverLiquid")
        XDT1 GHIJKL 3
        Stop
        TNT1 A 1
     Underwater:
	 Splash:
	    BLUD C 0 ThrustThingZ (0,35,1,0)
        XDT1 AB 3 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
		BLUD C 0 ThrustThingZ (0,35,1,0)
		XDT1 CD 3 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
        Loop
		
	IsOverLiquid:
		TNT1 A 1
		TNT1 A 0 A_CheckFloor("SpawnOnWater")
		
	SpawnOnWater:
		TNT1 A 1
		TNT1 A 0 A_SpawnItem ("BD_WaterBloodSpot", 5)
		Stop
    }
}


ACTOR XDeath1bGreen: XDeath1Green
{
Speed 4
}

ACTOR XDeath2Green: XDeath1Green
{
    +CLIENTSIDEONLY
	+DONTSPLASH
    Speed 10
	Radius 2
	Height 2
	Gravity 0.4
    DeathSound "misc/xdeath2"
	Decal GreenBloodSuper
	translation "168:191=112:127", "16:47=123:127"
    Scale 1.1
    States
    {
    Spawn:
	    TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        XME1 ABCD 3 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
        Loop
    Death:
        TNT1 AAAAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail5", 0, 0, random (0, 180), 2, random (0, 180))
        
		
	    TNT1 A 0 A_CheckFloor("SpawnFloor")
		TNT1 A 0 A_SpawnItemEx ("Detect_CeilGreenBloodSimplerLarge",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION,0)
		TNT1 A 0 A_SpawnItemEx ("Detect_CeilXDeath2Green",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION,0)
		Stop
		
	SpawnFloor:
	    XME1 E 1
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)//Check Effects
		TNT1 A 0 
		XME1 E 3
		TNT1 A 0 A_SpawnItem ("Green_BloodSpot", 0, 1)
    Living:
	    XME1 E 600
		TNT1 A 0 A_JumpIfInventory("lowgraphicsmode", 1, "Vanish")
		Loop
	Vanish:
	    TNT1 A 5
		Stop
    }
}


ACTOR XDeath2bGreen: XDeath2Green
{
Speed 4
}

ACTOR XDeath3Green: XDeath2Green
{
    SeeSound "misc/xdeath4"
    DeathSound "misc/xdeath3"
	Decal GreenBloodSuper
	translation "168:191=112:127", "16:47=123:127"
	Scale 1.1
    States
    {
    Spawn:
	    TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        XME2 ABCD 3 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
        Loop
    Death:
        TNT1 AAAAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail5", 0, 0, random (0, 180), 2, random (0, 180))
	    TNT1 A 0 A_CheckFloor("SpawnFloor")
		TNT1 A 0 A_SpawnItemEx ("Detect_CeilGreenBloodSimplerLarge",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION,0)
		TNT1 A 0 A_SpawnItemEx ("Detect_CeilXDeath3Green",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION,0)
		Stop
		
	SpawnFloor:
	    XME2 E 1
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)//Check Effects
		TNT1 A 0 
		XME2 E 3
		TNT1 A 0 A_SpawnItem ("Green_BloodSpot", 0, 1)
        Living:
	    XME2 E 600
		TNT1 A 0 A_JumpIfInventory("lowgraphicsmode", 1, "Vanish")
		Loop
	Vanish:
	    TNT1 A 5
		Stop	
    }
}

ACTOR XDeath3bGreen: XDeath3Green
{
Speed 4
}

ACTOR XDeath4Green: XDeath2
{
    SeeSound "misc/xdeath4"
    DeathSound "misc/xdeath3"
	Scale 1.1
	+DOOMBOUNCE
	BounceFactor 0.3
	wallbouncefactor 0.2
	translation "168:191=112:127", "16:47=123:127"
    States
    {
    Spawn:
	    TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        XME3 ABCDEFGH 3 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
        Loop
    Death:
	TNT1 A 0
	TNT1 A 0 A_Jump(255, "Death1", "Death2")
	GOto Death1
	
	Death1:
	    TNT1 A 0
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)//Check Effects
		TNT1 A 0 
	    XME3 GH 3
	    XME3 A 1
		TNT1 A 0 A_SpawnItem ("Green_BloodSpot", 0, 1)
	Living1:	
		XME3 A 600//duration
		TNT1 A 0 A_JumpIfInventory("lowgraphicsmode", 1, "Vanish")
        Loop
	Death2:
	    XME3 I 1
		TNT1 A 0 A_SpawnItem ("Green_BloodSpot", 0, 1)
		XME3 I 1
    Living2:	
		XME3 I 600//duration
		TNT1 A 0 A_JumpIfInventory("lowgraphicsmode", 1, "Vanish")
        Loop
	Vanish:
	   TNT1 A 1
	   Stop
    }
}


ACTOR XDeath5Green: XDeath2Green
{
    SeeSound "misc/xdeath4"
    DeathSound "misc/xdeath3"
	translation "168:191=112:127", "16:47=123:127"
	Scale 1.1
    States
    {
    Spawn:
	    TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        XME5 ABCD 3 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
        Loop
    Death:
        TNT1 AAAAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail5", 0, 0, random (0, 180), 2, random (0, 180))
        TNT1 A 0 A_SpawnItem ("Green_BloodSpot", 0, 1)
		TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)//Check Effects
        XME5 E 3
    Living:	
		XME5 E 800//duration
		TNT1 A 0 A_JumpIfInventory("lowgraphicsmode", 1, "Vanish")
        Loop
	Vanish:
	    TNT1 A 1
	    Stop
		
    }
}


ACTOR XDeathOrgan1Green: XDeath2Green
{
    SeeSound "misc/xdeath4"
    DeathSound "misc/xdeath3"
	translation "168:191=112:127", "16:47=123:127"
	Scale 0.9
	Speed 4
    States
    {
    Spawn:
	    XME8 A 4 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
        Loop
    Death:
        XME8 A 1
		XME8 A -1
        Stop
    }
}

ACTOR XDeathOrgan1bGreen: XDeathOrgan1Green
{
	XScale -0.7
	YScale 0.5
}

ACTOR XDeathOrgan2Green: XDeathOrgan1Green
{
States
{
    Spawn:
	    XME8 B 4 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
        Loop
    Death:
        XME8 B 1
		XME8 B -1
        Stop
    }
}




actor GreenGrowingBloodPool: Green_BloodSpot
{
 game Doom
 radius 1
 height 1
 mass 1
 Health 600
  Alpha 0.99
 +NOTELEPORT
+CLIENTSIDEONLY
+FORCEXYBILLBOARD
+MOVEWITHSECTOR
+FLOORCLIP
+MISSILE
-DONTSPLASH
Scale 0.5
Decal GreenBloodSplat
Renderstyle Normal
 states
 {
 Spawn:
 TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
  TNT5 A 1
  TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)//Check Effects
  TNT1 A 0 A_SpawnItemEx ("BootSmearerGreen",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION,0)
  TNT5 A 30
  TNT5 BCD 3
  TNT5 EFGHIJKLMNOP 3
  TNT5 QRSTUVWXYZ 3
 Live:
  TNT5 Z 900//duration
  TNT1 A 0 A_JumpIfInventory("lowgraphicsmode", 1, "Splash")
  loop
	Splash:
        BLOD A 0
        stop
 }
}





actor MuchBloodGreen : Blood
{
 states
 {
  Spawn:
	    TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		TNT1 A 0 A_SpawnItem("GreenBLoodSplasher2")
        TNT1 AAAAAAAAAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
        TNT1 AAAAAAAAAAAA 0 A_CustomMissile("Green_FlyingBloodTrail", 0, 0, 180)
		TNT1 AAA 0 A_CustomMissile("GreenXBloodmistSmall", 0, 0, random (0, 360), 2, random (30, 90))
  	    TNT1 AAA 0 A_CustomMissile ("Green_FlyingBlood", 0, 0, random (0, 360), 2, random (0, 160))
	    TNT1 AAA 0 A_CustomMissile ("CeilGreenBloodLauncher", 0, 0, random (0, 360), 2, random (50, 130))
        BLOD BCD 0
        stop
	Splash:
        BLOD A 0
        stop
 }
}


actor MuchBlood2Green : Blood
{
 states
 {
  Spawn:
	    TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		TNT1 A 0 A_SpawnItem("GreenBLoodSplasher2")
		TNT1 A 0 A_PlaySound("misc/xdeath4")
        TNT1 AAA 0 A_CustomMissile("GreenXBloodmistSmall", 0, 0, random (0, 360), 2, random (30, 90))
        TNT1 AAAAAAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
        TNT1 AAAAAAAAA 0 A_CustomMissile("Green_FlyingBloodTrail", 0, 0, 180)
  	    TNT1 AAA 0 A_CustomMissile ("Green_FlyingBlood", 0, 0, random (0, 360), 2, random (0, 160))
		TNT1 AA 0 A_CustomMissile ("GreenXBloodmistBig", 0, 0, random (0, 360), 2, random (30, 90))
		TNT1 AA 0 A_CustomMissile ("CeilGreenBloodLauncher", 0, 0, random (0, 360), 2, random (50, 130))
		BLOD BCD 0
		TNT1 A 10
        stop
	Splash:
        BLOD A 0
        stop
 }
}

actor MuchBlood3Green : Blood
{
 states
 {
  Spawn:
	    TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
		TNT1 A 0 A_SpawnItem("GreenBLoodSplasher2")
		TNT1 A 0 A_PlaySound("misc/xdeath4")
        TNT1 AAAAAAAAA 0 A_CustomMissile ("Green_FlyingBloodTrail", 0, 0, random (0, 360), 2, random (0, 360))
        TNT1 AAAAAAAAA 0 A_CustomMissile("Green_FlyingBloodTrail", 0, 0, 180)
  	    TNT1 AAA 0 A_CustomMissile ("Green_FlyingBlood", 0, 0, random (0, 360), 2, random (0, 160))
		TNT1 AAAAA 0 A_CustomMissile ("GreenXBloodmistBig", 0, 0, random (0, 360), 2, random (30, 90))
		TNT1 AAA 0 A_CustomMissile ("CeilGreenBloodLauncher", 0, 0, random (0, 360), 2, random (50, 130))
        BLOD BCD 0
        stop
	Splash:
        BLOD A 0
        stop
 }
}


actor GreenBloodDying : Brutal_XBlood
{
 states
 {
  Spawn:
        //TNT1 AAAAA 0 A_CustomMissile ("BloodTr2", 7, 0, random (0, 360), 2, random (0, 180))
        //TNT1 AAAAAAAAAAA 0 A_CustomMissile ("BloodTr2", 0, 0, random (0, 180), 2, random (0, 180))
		TNT1 AAAA 3 A_CustomMissile ("Green_LiquidBlood", 10, 0, random (0, 360), 2, random (30, 80))
        BLOD BCD 0
        stop
	Splash:
        BLOD A 0
        stop
 }
}



ACTOR WallGreenBlood
{
 game Doom
 scale 0.6
 speed 7
 health 1
 radius 8
 height 1
 Gravity 0.7
 damage 0
	DamageType Blood
	Decal GreenBloodSuper
   +MISSILE
   +CLIENTSIDEONLY
   +NOTELEPORT
   +NOBLOCKMAP
   +THRUACTORS
    translation "168:191=112:127", "16:47=123:127"
 Decal GreenBloodSplat
    States
    {
     Spawn:
       TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        TNT1 ABCD 4
        loop
	Splash:
        BLOD A 0
        stop
     Death:
  	    TNT1 A 3
        stop
    }
}


ACTOR SuperWallgREENBlood: WallGreenBlood
{
 speed 32
 Gravity 0.1
  translation "168:191=112:127", "16:47=123:127"
 Decal GreenBloodSplat
     States
    {
     Spawn:
       TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        TNT1 ABCD 1
        Stop
	
}
}


ACTOR ShortWallGreenBlood: WallGreenBlood
{
 speed 2
 Gravity 1
 Radius 24
 Height 12
 translation "168:191=112:127", "16:47=123:127"
 Decal GreenBloodSplat
     States
    {
     Spawn:
       TNT1 A 0 A_JumpIf(waterlevel > 1, "Splash")
        TNT1 A 3
        Stop
	Death:
	    TNT1 A 0
		TNT1 A 0 A_SpawnItem("Green_BloodSpot",0,0,0,1)
		TNT1 A 0 A_PlaySound("HEDBON")
	    TNT1 A 20
		Stop
}
}








ACTOR GreenBrainPiece
{
    Radius 2
    Height 2
	Speed 10
	Mass 1
	Scale 0.8
	Decal GreenBloodSuper
	+MISSILE
    +NOBLOCKMAP
    +NOTELEPORT
	+THRUGHOST
	+THRUACTORS
	+CLIENTSIDEONLY
    +DONTSPLASH
    +MOVEWITHSECTOR
	-DONTSPLASH
	+FORCEXYBILLBOARD
	+FLOORCLIP
	translation "16:31=152:159", "168:191=12:12", "32:47=9:12"
	Decal GreenBloodSplat
    States
    {
	Spawn:
	TNT1 A 0
	TNT1 A 0 A_Jump(32, "DoNothing")
	TNT1 A 0 A_ChangeFlag("NOGRAVITY", 0)
	Goto See
    See:
		XDB5 ABCDEFGH 3
		Loop
	Death:
	TNT1 A 0
	TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)//Check Effects
	TNT1 A 0 A_CheckFloor("Rest")
	TNT1 A 0 A_SpawnItem("Detect_CeilBrainGreen")
	TNT1 A 2
	Stop
	
	Rest:
	TNT1 A 0
	TNT1 A 0 A_QueueCorpse
	TNT1 A 0 A_Jump(255, "Rest1", "Rest2")
	Rest1:
        XDT5 B 800
		TNT1 A 0 A_JumpIfInventory("lowgraphicsmode", 1, "DoNothing")
        Loop
		
	Rest2:
		XDT5 O 800
		TNT1 A 0 A_JumpIfInventory("lowgraphicsmode", 1, "DoNothing")
        Loop
	DoNothing:
	TNT1 A 0
	Stop
    }
}



ACTOR Detect_CeilBrainGreen
{
 game Doom
 scale 0.4
 speed 0
 health 1
 radius 1
 height 1
 Gravity 0.0
 damage 0
 Renderstyle Translucent
 translation "16:31=152:159", "168:191=12:12", "32:47=9:12"
 Alpha 0.95
	DamageType Blood
   +MISSILE
   +CLIENTSIDEONLY
   +NOTELEPORT
   +NOBLOCKMAP
   +FORCEXYBILLBOARD
   +NODAMAGETHRUST
   -DONTSPLASH
   +NOGRAVITY
    States
    {
     Spawn:
	 TNT1 A 0
	 TNT1 A 0 ThrustThingZ(0,35,0,1)
	 TNT1 A 2
	 TNT1 A 0 A_SpawnItem("SmearingBrainGreen")
	 Stop
	 Death:
	 TNT1 A 0
	 TNT1 A 0 A_CustomMissile ("GreenBrainPiece", -15, 0, 90, 2, 90)
  Stop
    }
}

ACTOR SmearingBrainGreen
{
    Radius 2
    Height 2
	Speed 10
	Mass 1
	Scale 0.8
    +NOBLOCKMAP
    +NOTELEPORT
	+THRUGHOST
	+CLIENTSIDEONLY
    +DONTSPLASH
    +MOVEWITHSECTOR
	-DONTSPLASH
	+FORCEXYBILLBOARD
	+QUARTERGRAVITY
	translation "16:31=152:159", "168:191=12:12", "32:47=9:12"
    States
    {
	Spawn:
	TNT1 A 0
	TNT1 A 0 A_ChangeFlag("NOGRAVITY", 1)
	TNT1 A 0 A_Jump(255, "Spawn1", "Spawn2", "Spawn3", "Spawn4")
	Goto Spawn1
	
	Spawn1:
	XDB5 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_CheckFloor("Rest")
	Goto Death
	
	Spawn2:
	XDB5 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 A_CheckFloor("Rest")
	Goto Death
	
	Spawn3:
	XDB5 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 1 A_CheckFloor("Rest")
	Goto Death
	
	Spawn4:
	XDB5 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 1 A_CheckFloor("Rest")
	Goto Death
	
	Death:
	Rest:
	    TNT1 A 0
		TNT1 A 0 A_QueueCorpse
	    TNT1 A 0 A_ChangeFlag("QUARTERGRAVITY", 0)
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		XDB5 A 2 ThrustThingZ(0,-2,0,1)
		TNT1 A 0 A_CheckFloor("Sleep")
		Loop
	Sleep:	
        XDT5 B 2002
        Stop
	DoNothing:
	TNT1 A 0
	Stop
    }
}




actor GreenBigBloodSpot: Green_BloodSpot
{
 Scale 0.7
 States
 {
 Spawn:
	TNT1 A 0
	TNT1 A 0 ACS_ExecuteAlways(798, 0, 0, 0, 0)//Check Effects
	TNT1 A 0 ACS_ExecuteAlways(374)//Check Floortype
	TNT1 A 3
	TNT1 A 0 A_JumpIfInventory("IsOverSlimy", 1, "Disappear")
	TNT1 A 0 A_JumpIfInventory("IsOverWater", 1, "Disappear")
	TNT1 A 0 A_JumpIfInventory("IsOverNukage", 1, "Disappear")
	TNT1 A 0 A_JumpIfInventory("IsOverLava", 1, "Disappear")
	TNT1 A 0 A_QueueCorpse
	TNT1 A 0 A_SpawnItemEx ("BootSmearerGreen",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION,0)
	Goto SpawnAFrameOnly
	
	Disappear:
		TNT1 A 0
		Stop
		}
}

actor GreenMediumBloodSpot: GreenBigBloodSpot
{
game Doom
Scale 0.4
}

actor GreenMediumBloodSpot2: GreenBigBloodSpot
{
game Doom
Scale 0.4
}