// Dirt clump (spawned by spike) -------------------------------------------- ACTOR DirtClump { +NOBLOCKMAP +NOTELEPORT States { Spawn: TSPK C 20 Loop } } // Spike (thrust floor) ----------------------------------------------------- ACTOR ThrustFloor native { Radius 20 Height 128 action native A_ThrustRaise(); action native A_ThrustImpale(); action native A_ThrustLower(); action native A_ThrustInitDn(); action native A_ThrustInitUp(); States { ThrustRaising: TSPK A 2 A_ThrustRaise Loop BloodThrustRaising: TSPK B 2 A_ThrustRaise Loop ThrustLower: TSPK A 2 A_ThrustLower Loop BloodThrustLower: TSPK B 2 A_ThrustLower Loop ThrustInit1: TSPK A 3 TSPK A 4 A_ThrustInitDn TSPK A -1 Loop BloodThrustInit1: TSPK B 3 TSPK B 4 A_ThrustInitDn TSPK B -1 Loop ThrustInit2: TSPK A 3 TSPK A 4 A_ThrustInitUp TSPK A 10 Loop BloodThrustInit2: TSPK B 3 TSPK B 4 A_ThrustInitUp TSPK B 10 Loop ThrustRaise: TSPK A 8 A_ThrustRaise TSPK A 6 A_ThrustRaise TSPK A 4 A_ThrustRaise TSPK A 3 A_SetSolid TSPK A 2 A_ThrustImpale Loop BloodThrustRaise: TSPK B 8 A_ThrustRaise TSPK B 6 A_ThrustRaise TSPK B 4 A_ThrustRaise TSPK B 3 A_SetSolid TSPK B 2 A_ThrustImpale Loop } } // Spike up ----------------------------------------------------------------- ACTOR ThrustFloorUp : ThrustFloor { +SOLID +NOTELEPORT +FLOORCLIP States { Spawn: Goto ThrustInit2 } } // Spike down --------------------------------------------------------------- ACTOR ThrustFloorDown : ThrustFloor { +NOTELEPORT +FLOORCLIP +INVISIBLE States { Spawn: Goto ThrustInit1 } }