
//==============================================================================
//		Standard Gibs
//==============================================================================

actor RLGib1
{
    +NotOnAutomap
    PROJECTILE
    +DOOMBOUNCE
    +MOVEWITHSECTOR
	+CANNOTPUSH
    -NOGRAVITY
    Radius 3
    Height 6
    Damage 0
    Decal BloodSplat
    bouncefactor 0.4
    SeeSound "gibbage/xgib"
    Speed 5
    States
    {
    Spawn:
        TNT1 A 0
        TNT1 A 0 A_Jump(64,"Alt")
        TNT1 A 0 ThrustThingZ (0, 45, 0, 1)
        TNT1 A 0 A_Jump(256,"SpinA","SpinB","SpinC","SpinD")
        goto SpinA
    Alt:
        TNT1 A 0 A_Jump(256,1,2,3,4,5)
    	TNT1 A 0 A_SpawnItemEx ("RLGib1Splat", 0,0,0, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION, 0)
    	Stop 
    	TNT1 A 0 A_SpawnItemEx ("RLGib2Splat", 0,0,0, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION, 0)
    	Stop 
    	TNT1 A 0 A_SpawnItemEx ("RLGib3Splat", 0,0,0, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION, 0)
    	Stop 
    	TNT1 A 0 A_SpawnItemEx ("RLGib4Splat", 0,0,0, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION, 0)
    	Stop 
    	TNT1 A 0 A_SpawnItemEx ("RLGib5Splat", 0,0,0, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION, 0)
    	Stop 
    SpinA:
        GIB1 A Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB1 C Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB1 DE Random(4,5)
        loop
    SpinB:
        GIB1 E Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB1 A Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB1 CD Random(4,5)
        loop
    SpinC:
        GIB1 D Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB1 E Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB1 AC Random(4,5)
        loop
    SpinD:
        GIB1 C Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB1 D Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB1 EA Random(4,5)
        loop
    Death:
        "####" "#####################" 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        "####" "#" 1 A_FadeOut(0.0025, true)
        loop
    Remove:
        TNT1 A 0
        Stop
    }
}

actor RLGib2 : RLGib1
{
    States
    {
    SpinA:
        GIB1 B Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB1 F Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB1 GH Random(4,5)
        loop
    SpinB:
        GIB1 H Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB1 B Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB1 FG Random(4,5)
        loop
    SpinC:
        GIB1 G Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB1 H Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB1 BF Random(4,5)
        loop
    SpinD:
        GIB1 F Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB1 G Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB1 HB Random(4,5)
        loop
    }
}

actor RLGib3 : RLGib1
{
    States
    {
    SpinA:
        GIB2 A Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 D Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 EF Random(4,5)
        loop
    SpinB:
        GIB2 F Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 A Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 DE Random(4,5)
        loop
    SpinC:
        GIB2 E Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 F Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 AD Random(4,5)
        loop
    SpinD:
        GIB2 D Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 E Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 FA Random(4,5)
        loop
    }
}

actor RLGib4 : RLGib1
{
    States
    {
    SpinA:
        GIB2 B Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 G Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 HI Random(4,5)
        loop
    SpinB:
        GIB2 I Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 B Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 GH Random(4,5)
        loop
    SpinC:
        GIB2 H Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 I Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 BG Random(4,5)
        loop
    SpinD:
        GIB2 G Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 H Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 IB Random(4,5)
        loop
    }
}

actor RLGib5 : RLGib1
{
    States
    {
    SpinA:
        GIB2 C Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 J Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 KL Random(4,5)
        loop
    SpinB:
        GIB2 L Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 C Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 JK Random(4,5)
        loop
    SpinC:
        GIB2 K Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 L Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 CJ Random(4,5)
        loop
    SpinD:
        GIB2 J Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB2 K Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB2 LC Random(4,5)
        loop
    }
}

actor RLGib6 : RLGib1
{
    States
    {
    SpinA:
        GIB3 B Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB3 D Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB3 EF Random(4,5)
        loop
    SpinB:
        GIB3 F Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB3 B Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB3 DE Random(4,5)
        loop
    SpinC:
        GIB3 E Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB3 F Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB3 BD Random(4,5)
        loop
    SpinD:
        GIB3 D Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB3 E Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB3 FB Random(4,5)
        loop
    }
}

actor RLGib7 : RLGib1
{
    States
    {
    SpinA:
        GIB3 C Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB3 G Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB3 HI Random(4,5)
        loop
    SpinB:
        GIB3 I Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB3 C Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB3 GH Random(4,5)
        loop
    SpinC:
        GIB3 H Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB3 I Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB3 CG Random(4,5)
        loop
    SpinD:
        GIB3 G Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB3 H Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB3 IC Random(4,5)
        loop
    }
}

actor RLGib8 : RLGib1
{
    States
    {
    SpinA:
        GIB4 A Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 D Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 EF Random(4,5)
        loop
    SpinB:
        GIB4 F Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 A Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 DE Random(4,5)
        loop
    SpinC:
        GIB4 E Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 F Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 AD Random(4,5)
        loop
    SpinD:
        GIB4 D Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 E Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 FA Random(4,5)
        loop
    }
}

actor RLGib9 : RLGib1
{
    States
    {
    SpinA:
        GIB4 B Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 G Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 HI Random(4,5)
        loop
    SpinB:
        GIB4 I Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 B Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 GH Random(4,5)
        loop
    SpinC:
        GIB4 H Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 I Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 BG Random(4,5)
        loop
    SpinD:
        GIB4 G Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 H Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 IB Random(4,5)
        loop
    }
}

actor RLGib10 : RLGib1
{
    States
    {
    SpinA:
        GIB4 C Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 J Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 KL Random(4,5)
        loop
    SpinB:
        GIB4 L Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 C Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 JK Random(4,5)
        loop
    SpinC:
        GIB4 K Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 L Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 CJ Random(4,5)
        loop
    SpinD:
        GIB4 J Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB4 K Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB4 LC Random(4,5)
        loop
    }
}

actor RLGib11 : RLGib1
{
    States
    {
    SpinA:
        GIB5 A Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 D Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 EF Random(4,5)
        loop
    SpinB:
        GIB5 F Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 A Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 DE Random(4,5)
        loop
    SpinC:
        GIB5 E Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 F Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 AD Random(4,5)
        loop
    SpinD:
        GIB5 D Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 E Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 FA Random(4,5)
        loop
    }
}

actor RLGib12 : RLGib1
{
    States
    {
    SpinA:
        GIB5 B Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 G Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 HI Random(4,5)
        loop
    SpinB:
        GIB5 I Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 B Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 GH Random(4,5)
        loop
    SpinC:
        GIB5 H Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 I Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 BG Random(4,5)
        loop
    SpinD:
        GIB5 G Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 H Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 IB Random(4,5)
        loop
    }
}

actor RLGib13 : RLGib1
{
    States
    {
    SpinA:
        GIB5 C Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 J Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 KL Random(4,5)
        loop
    SpinB:
        GIB5 L Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 C Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 JK Random(4,5)
        loop
    SpinC:
        GIB5 K Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 L Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 CJ Random(4,5)
        loop
    SpinD:
        GIB5 J Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        GIB5 K Random(4,5) ThrustThingZ(0,6,1,1) 
        GIB5 LC Random(4,5)
        loop
    }
}

//==============================================================================
//		The Hungry Gibs
//==============================================================================

actor RLTheHungryGib1
{
    +NotOnAutomap
    PROJECTILE
    +DOOMBOUNCE
    +MOVEWITHSECTOR
	+CANNOTPUSH
    -NOGRAVITY
    Radius 3
    Height 6
    Damage 0
    Decal BloodSplat
	BloodColor "Blue"
    bouncefactor 0.4
    SeeSound "gibbage/xgib"
    Speed 5
    States
    {
    Spawn:
        TNT1 A 0
        TNT1 A 0 ThrustThingZ (0, 45, 0, 1)
        TNT1 A 0 A_Jump (256, "See")
        goto See
    See:
        ASO1 A Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR)
        ASO1 B Random(4,5) ThrustThingZ(0,6,1,1) 
        ASO1 CD Random(4,5)
        loop
    Death:
        ASO1 EEEEEEEEEEEEEEEEEEEEE 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        ASO1 E 1 A_FadeOut(0.0025, true)
        loop
    Remove:
        TNT1 A 0
        Stop
    }
}

actor RLTheHungryGib2 : RLTheHungryGib1
{
    States
    {
    See:
        ASO2 A Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR)
        ASO2 B Random(4,5) ThrustThingZ(0,6,1,1) 
        ASO2 CD Random(4,5)
        loop
    Death:
        ASO2 IIIIIIIIIIIIIIIIIIIII 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        ASO2 I 1 A_FadeOut(0.0025, true)
        loop
    }
}

actor RLTheHungryGib2B : RLTheHungryGib1
{
    States
    {
    See:
        ASO2 E Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR)
        ASO2 F Random(4,5) ThrustThingZ(0,6,1,1) 
        ASO2 GH Random(4,5)
        loop
    Death:
        ASO2 JJJJJJJJJJJJJJJJJJJJJ 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        ASO2 J 1 A_FadeOut(0.0025, true)
        loop
    }
}

actor RLTheHungryGib3 : RLTheHungryGib1
{
    States
    {
    See:
        ASO3 A Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR)
        ASO3 B Random(4,5) ThrustThingZ(0,6,1,1) 
        ASO3 CD Random(4,5)
        loop
    Death:
        ASO3 EEEEEEEEEEEEEEEEEEEEE 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        ASO3 E 1 A_FadeOut(0.0025, true)
        loop
    }
}

actor RLTheHungryGib4 : RLTheHungryGib1
{
    States
    {
    See:
        ASO4 A Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR)
        ASO4 B Random(4,5) ThrustThingZ(0,6,1,1) 
        ASO4 CD Random(4,5)
        loop
    Death:
        ASO4 IIIIIIIIIIIIIIIIIIIII 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        ASO4 I 1 A_FadeOut(0.0025, true)
        loop
    }
}

actor RLTheHungryGib4B : RLTheHungryGib1
{
    States
    {
    See:
        ASO4 E Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR)
        ASO4 F Random(4,5) ThrustThingZ(0,6,1,1) 
        ASO4 GH Random(4,5)
        loop
    Death:
        ASO4 JJJJJJJJJJJJJJJJJJJJJ 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        ASO4 J 1 A_FadeOut(0.0025, true)
        loop
    }
}

actor RLTheHungryGib5 : RLTheHungryGib1
{
    States
    {
    See:
        ASO5 A Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR)
        ASO5 B Random(4,5) ThrustThingZ(0,6,1,1) 
        ASO5 CD Random(4,5)
        loop
    Death:
        ASO5 EEEEEEEEEEEEEEEEEEEEE 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        ASO5 E 1 A_FadeOut(0.0025, true)
        loop
    }
}

actor RLTheHungryGib6 : RLTheHungryGib1
{
    States
    {
    See:
        ASO6 A Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR)
        ASO6 A Random(4,5) ThrustThingZ(0,6,1,1) 
        ASO6 AA Random(4,5)
        loop
    Death:
        ASO6 BC 5
        ASO6 DDDDDDDDDDDDDDDDDDDDD 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        ASO6 D 1 A_FadeOut(0.0025, true)
        loop
    }
}

//==============================================================================
//		Terminator Gibs
//==============================================================================

ACTOR RLTerminatorArm
{
    +NOTONAUTOMAP
    PROJECTILE
    +DOOMBOUNCE
    +MOVEWITHSECTOR
	+CANNOTPUSH
    -NOGRAVITY
	Radius 12
	Height 15
    Damage 0
    Decal BloodSplat
    bouncefactor 0.4
	scale 1.2
    SeeSound "gibbage/xgib"
    Speed 3
    States
    {
    Spawn:
        TNT1 A 0
        TNT1 A 0 A_Jump (256, "See")
        goto See
    See:
        TBT1 A Random(4,5) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR)
        TBT1 B Random(4,5) ThrustThingZ(0,6,1,1) 
        TBT1 C Random(4,5)
        Goto FallLoop
    FallLoop:
        TBT1 C Random(4,12) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR)
		Loop
    Death:
        TBT1 DE Random(4,5)
        TBT1 FFFFFFFFFFFFFFFFFFFFF 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        TBT1 F 1 A_FadeOut(0.0025, true)
        loop
    Remove:
        TNT1 A 0
        Stop
    }
}

actor RLTerminatorHead
{
    +NOTONAUTOMAP
    PROJECTILE
    +DOOMBOUNCE
    +MOVEWITHSECTOR
	+CANNOTPUSH
    -NOGRAVITY
    Radius 6
    Height 8
    Damage 0
    scale 1.2
    bouncefactor 0.4
    SeeSound ""
    Speed 10
    States
    {
    Spawn:
        TNT1 A 0
        TNT1 A 0 A_Jump (256, "See")
        goto See
    See:
        TBT2 DEFGHABC Random(1,2)
        Loop
    Death:
        TBT2 IIIIIIIIIIIIIIIIIIIII 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        TBT2 I 1 A_FadeOut(0.0025, true)
        loop
    Remove:
        TNT1 A 0
        Stop
    }
}

actor RLTerminatorShoulder
{
    +NOTONAUTOMAP
    PROJECTILE
    +DOOMBOUNCE
    +MOVEWITHSECTOR
	+CANNOTPUSH
    -NOGRAVITY
    Radius 8
    Height 8
    Damage 0
    scale 1.2
    bouncefactor 0.4
    SeeSound ""
    Speed 8
    States
    {
    Spawn:
        TNT1 A 0
        TNT1 A 0 A_Jump (256, "See")
        goto See
    See:
        TBT3 ABCDEFGH Random(1,2)
        Loop
    Death:
        TBT3 IIIIIIIIIIIIIIIIIIIII 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        TBT3 I 1 A_FadeOut(0.0025, true)
        loop
    Remove:
        TNT1 A 0
        Stop
    }
}

//==============================================================================
//		Cyber-Imp Gibs
//==============================================================================

ACTOR RLCyberImpArm
{
	Radius 8
	Height 8
	Speed 4
	+DOOMBOUNCE
	+DROPOFF
    +NOTONAUTOMAP
    +MOVEWITHSECTOR
	+CANNOTPUSH
	+Missile
      States
	{
    Spawn:
        TNT1 A 0
        TNT1 A 0 ThrustThingZ (0, 45, 0, 1)
        goto See
    See:
        CARM A Random(2,3) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        CARM B Random(2,3) ThrustThingZ(0,6,1,1) 
        CARM CDE Random(2,3)
        loop
    Death:
        CARM FFFFFFFFFFFFFFFFFFFFF 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        CARM F 1 A_FadeOut(0.0025, true)
        loop
    Remove:
        TNT1 A 0
        Stop
	}
} 

//==============================================================================
//		Mechdemon Gibs
//==============================================================================

ACTOR RLMechDemonArm
{
	Radius 8
	Height 8
	Speed 4
	+DOOMBOUNCE
	+DROPOFF
    +NOTONAUTOMAP
    +MOVEWITHSECTOR
	+CANNOTPUSH
	+Missile
      States
	{
    Spawn:
        TNT1 A 0
        TNT1 A 0 ThrustThingZ (0, 45, 0, 1)
        Goto See
    See:
        CDAR A Random(2,3) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        CDAR B Random(2,3) ThrustThingZ(0,6,1,1) 
        CDAR CD Random(2,3)
        CDAR E Random(2,3) A_SpawnItemEx ("RLNashGore_Blood", 0,0,-5, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        CDAR F Random(2,3) ThrustThingZ(0,6,1,1) 
        CDAR GH Random(2,3)
        Loop
    Death:
        CDAR IIIIIIIIIIIIIIIIIIIII 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        CDAR I 1 A_FadeOut(0.0025, true)
        Loop
    Remove:
        TNT1 A 0
        Stop
	}
} 

//==============================================================================
//		Duke II Gibs
//==============================================================================

actor RLDuke2Gib
{
    PROJECTILE
    +NOTONAUTOMAP
	+THRUACTORS
    +MOVEWITHSECTOR
	+CANNOTPUSH
    -NOGRAVITY
    Radius 3
    Height 6
    Damage 0
    Speed 5
    States
    {
    Spawn:
        DN2G A 0
        DN2G A 0 ThrustThingZ (0, 45, 0, 1)
        DN2G A 0 A_Jump (128, "Alt")
        goto See
    See:
        DN2G ABCDEFGH Random(2,3)
        loop
    Alt:
        DN2G HGFEDCBA Random(2,3)
        loop
    Death:
        TNT1 A 0
        Stop
    }
}

actor RLDuke2RedGib : RLDuke2Gib
{
    Translation "116:126=176:191", "231:231=174:174"
}

actor RLDuke2BlueGib : RLDuke2Gib
{
    Translation "116:126=196:206", "231:231=197:197"
}

//==============================================================================
//		Splatting Gibs
//==============================================================================

actor RLGib1Splat : RLGib1
{
	-DOOMBOUNCE
    States
    {
    Spawn:
        TNT1 A 0 A_Jump(256,"SpinA","SpinB","SpinC","SpinD")
        goto SpinA
    Death:
        SPLT AAA 0 A_SpawnItemEx ("RLNashGore_Blood", 0,0,0, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        SPLT A 4 A_PlaySound("gibbage/xgibst")
        SPLT BCD 4
        SPLT DDDDDDDDDDDDDDDDDDDDD 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        SPLT D 1 A_FadeOut(0.0025, true)
        loop
    }
}

actor RLGib2Splat : RLGib2
{
	-DOOMBOUNCE
    States
    {
        Spawn:
        TNT1 A 0 A_Jump(256,"SpinA","SpinB","SpinC","SpinD")
        goto SpinA
    Death:
        SPLT AAA 0 A_SpawnItemEx ("RLNashGore_Blood", 0,0,0, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        SPLT A 4 A_PlaySound("gibbage/xgibst")
        SPLT BCD 4
        SPLT DDDDDDDDDDDDDDDDDDDDD 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        SPLT D 1 A_FadeOut(0.0025, true)
        loop
    }
}

actor RLGib3Splat : RLGib3
{
	-DOOMBOUNCE
    States
    {
        Spawn:
        TNT1 A 0 A_Jump(256,"SpinA","SpinB","SpinC","SpinD")
        goto SpinA
    Death:
        SPLT AAA 0 A_SpawnItemEx ("RLNashGore_Blood", 0,0,0, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        SPLT A 4 A_PlaySound("gibbage/xgibst")
        SPLT BCD 4
        SPLT DDDDDDDDDDDDDDDDDDDDD 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        SPLT D 1 A_FadeOut(0.0025, true)
        loop
    }
}

actor RLGib4Splat : RLGib4
{
	-DOOMBOUNCE
    States
    {
        Spawn:
        TNT1 A 0 A_Jump(256,"SpinA","SpinB","SpinC","SpinD")
        goto SpinA
    Death:
        SPLT AAA 0 A_SpawnItemEx ("RLNashGore_Blood", 0,0,0, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        SPLT A 4 A_PlaySound("gibbage/xgibst")
        SPLT BCD 4
        SPLT DDDDDDDDDDDDDDDDDDDDD 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        SPLT D 1 A_FadeOut(0.0025, true)
        loop
    }
}

actor RLGib5Splat : RLGib5
{
	-DOOMBOUNCE
    States
    {
        Spawn:
        TNT1 A 0 A_Jump(256,"SpinA","SpinB","SpinC","SpinD")
        goto SpinA
    Death:
        SPLT AAA 0 A_SpawnItemEx ("RLNashGore_Blood", 0,0,0, VelX,VelY,VelZ, 0,
            SXF_ABSOLUTEMOMENTUM | SXF_TRANSFERALPHA | SXF_TRANSFERRENDERSTYLE | SXF_TRANSFERTRANSLATION)
        SPLT A 4 A_PlaySound("gibbage/xgibst")
        SPLT BCD 4
        SPLT DDDDDDDDDDDDDDDDDDDDD 50 A_JumpIf(!CallACS("DRLA_Gibs"), "Remove")
    FadeOut:
        SPLT D 1 A_FadeOut(0.0025, true)
        loop
    }
}

//==============================================================================
//		CRUSHED GIBS
//==============================================================================

// small
actor RLCrushedSmall
{
states
	{
	Spawn:
	 TNT1 A 0 NoDelay A_PlaySound("misc/gibbed")
	 CRS1 A -1
	 loop
	}
}

// medium
actor RLCrushedMedium
{
states
	{
	Spawn:
	 TNT1 A 0 NoDelay A_PlaySound("misc/gibbed")
	 CRS2 A -1
	 loop
	}
}

// large
actor RLCrushedLarge
{
states
	{
	Spawn:
	 TNT1 A 0 NoDelay A_PlaySound("misc/gibbed")
	 CRS3 A -1
	 loop
	}
}

// TRANSLATED CRUSHED BODIES
actor RLCrushedSmallBlack : RLCrushedSmall
{
translation "22:47=111:111", "179:189=5:8"
}

actor RLCrushedMediumGreen : RLCrushedMedium
{
translation "16:47=112:127","168:191=112:127"
}

actor RLCrushedMediumBlue : RLCrushedMedium
{
translation "16:47=192:207","168:191=192:207"
}

actor RLCrushedInvisible : RLCrushedMedium
{
Alpha 0.25
Renderstyle OptFuzzy
}
