// Bridge ball -------------------------------------------------------------

ACTOR BridgeBall
{
	+NOBLOCKMAP
	+NOTELEPORT
	+NOGRAVITY
	
	action native A_BridgeOrbit();
	
	States
	{
	Spawn:
		TLGL A 2 Bright 
		TLGL A 1 Bright A_BridgeOrbit
		Wait
	}

}

// The bridge itself -------------------------------------------------------

ACTOR CustomBridge native
{
	+SOLID
	+NOGRAVITY
	+NOLIFTDROP
	+ACTLIKEBRIDGE
	Radius 32
	Height 2
	RenderStyle None

	action native A_BridgeInit(class<Actor> balltype = "BridgeBall");

	states
	{
	Spawn:
		TLGL ABCDE 3 Bright 
		Loop
	See:
		TLGL A 2
		TLGL A 2 A_BridgeInit
		TLGL A -1
		Stop
	Death:
		TLGL A 2
		TLGL A 300
		Stop
	}
}

// The Hexen bridge -------------------------------------------------------

ACTOR Bridge : CustomBridge
{
	RenderStyle None
	Args 32, 2, 3, 0
}

// The ZDoom bridge -------------------------------------------------------

ACTOR ZBridge : CustomBridge
{
	Args 36, 4, 0, 0
}


// Invisible bridge --------------------------------------------------------

ACTOR InvisibleBridge native
{
	RenderStyle None
	Radius 32
	Height 4
	+SOLID
	+NOGRAVITY
	+NOLIFTDROP
	+ACTLIKEBRIDGE
	States
	{
	Spawn:
		TNT1 A -1
		Stop
	}
}

// And some invisible bridges from Skull Tag -------------------------------

ACTOR InvisibleBridge32 : InvisibleBridge
{
	Radius 32
	Height 8
}

ACTOR InvisibleBridge16 : InvisibleBridge
{
	Radius 16
	Height 8
}

ACTOR InvisibleBridge8 : InvisibleBridge
{
	Radius 8
	Height 8
}
