MovingPlatform

The MovingPlatform entity is used to turn an animated world model into a platform capable of carrying the player and other actors. These platforms can be activated (i.e. started moving) by player collision, triggers, shooting or some combination of these. The activation of a platform can also trigger the activation of other platforms.

Field Descriptions

The fields for the MovingPlatform entity are:

Field Description
AnimationSpeed Speed of platform model animation, with 1.0 = 100% of defined speed
bAllowInside If True then don't check entire bounding box, allowing player to go inside
bAudioLoops If True then sound file loops until moving is done, if False play only once
bAutoStart If True start model animation at level load regardless of trigger state
bLooping If True model animation never stops after first activation
bNoCollide If True then platform does not need collision to activate but is controlled by the trigger only
bOneShot If True platform only activates once, if False platform can be activated multiple times
bReverse If True then animation reverses at end
bRunFromList Animation runs to next time in provided list each time triggered
bRunTimed Animation runs specified time increment each time trigger goes from off to on
bRunToNextEvent Animation runs until the next event time is reached each time triggered
bRunWhileTrig If True animation only runs while trigger is on
bShoot If True the platform is activated only by shooting, not by player collision
Model Model to animate when platform is activated
NextToTrigger Model of next platform to trigger when this platform is activated
ParentModel Name of parent model
PlayerOnly If True then only the player can activate by collision
Rideable  
szEntityName Entity name of platform
szSoundFile Name of sound file to play when platform is activated
TimeEachTrig Time animation will run each trigger, only valid if bRunTimed is true
TimeList List of times to run animation to each time triggered in the form (1.0 3.5 ...) only valid if bRunFromList is true
TriggerName Name of triggering entity
UseKey if True then platform can be activated by the Use key

When chaining platforms together using the NextToTrigger entry, the model pointed to by this entry must be a model used by another MovingPlatform entity. Otherwise the entry will be ignored. If that MovingPlatform entity has a NextToTrigger entry it too will be activated, and so on.

If there is an entity name in the TriggerName entry then the state of that entity is checked to see if the platform should be activated. See the Trigger entity for more details about triggered platforms.

The bShoot flag is used to switch the collision activation from the player actor to a Projectile actor. This allows platforms to be activated only by shooting them.

The bAutoStart flag is used to make a platform that will run immediately upon level load. This allows platforms to already be running when the player first sees them. In conjunction with the bLooping flag you can make a platform that starts immediately and runs continuously.

If bRunToNextEvent is true then the platform will animate to the next Event time as set by the SetEvent button in the Model tab in the Level editor. The Event String can contain commands to play a sound or cause a trigger. If the Event String contains "S sound.wav" then sound.wav will be played at that Event time. If the Event String contains "T trigger1" then the Trigger entity named trigger1 will be activated the same as if it had been collided with.

Examples

Here are some examples of platforms in varying different configurations.

MovingPlatform Example 1
Example #1
MovingPlatform Example 2
Example #2
MovingPlatform Example 3
Example #3

Example #1 is your ordinary platform. It activates upon player collision, cycles through its animation and then stops. It can be activated multiple times.

Example #2 is an auto start, continuously running platform. It plays a looping sound when activated at level load and while running.

Example #3 is a platform that is solely controlled by a trigger and does not require a collision to activate. It also plays a looping sound while it is running. It can be activated multiple times.