gzdoom/wadsrc/static/zscript/shared/bridge.txt
Christoph Oelckers 89b7cf4262 - fixed: RenderRadius needs to be serialized.
- fixed: CustomBridge can be visible so it shouldn't be completely excluded from the render lists.
2016-12-25 14:35:35 +01:00

130 lines
1.6 KiB
Text

// Bridge ball -------------------------------------------------------------
class BridgeBall : Actor
{
default
{
+NOBLOCKMAP
+NOTELEPORT
+NOGRAVITY
}
native void A_BridgeOrbit();
States
{
Spawn:
TLGL A 2 Bright;
TLGL A 1 Bright A_BridgeOrbit;
Wait;
}
}
// The bridge itself -------------------------------------------------------
class CustomBridge : Actor native
{
default
{
+SOLID
+NOGRAVITY
+NOLIFTDROP
+ACTLIKEBRIDGE
Radius 32;
Height 2;
RenderStyle "None";
}
native void 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 -------------------------------------------------------
class Bridge : CustomBridge
{
default
{
RenderStyle "None";
Args 32, 2, 3, 0;
}
}
// The ZDoom bridge -------------------------------------------------------
class ZBridge : CustomBridge
{
default
{
Args 36, 4, 0, 0;
}
}
// Invisible bridge --------------------------------------------------------
class InvisibleBridge : Actor native
{
default
{
RenderStyle "None";
Radius 32;
RenderRadius -1;
Height 4;
+SOLID
+NOGRAVITY
+NOLIFTDROP
+ACTLIKEBRIDGE
}
States
{
Spawn:
TNT1 A -1;
Stop;
}
}
// And some invisible bridges from Skull Tag -------------------------------
class InvisibleBridge32 : InvisibleBridge
{
default
{
Radius 32;
Height 8;
}
}
class InvisibleBridge16 : InvisibleBridge
{
default
{
Radius 16;
Height 8;
}
}
class InvisibleBridge8 : InvisibleBridge
{
default
{
Radius 8;
Height 8;
}
}