Help:Introduction to Movers
Setup
First, some properties you may wanna set after placing a mover in your map.
|
It wouldn't make sense to let the mover cast a shadow on textures since that shadow will remain there when the mover is in motion.
|
- CrushWhenEncroach = Causes damage when encroaching.
- IgnoreWhenEncroach = Moves through pawn when encroaching.
StopWhenEncroach and ReturnWhenEncroach are both known to get stuck so avoid these two.
A few other values you should put some attention to is:
|
Initial States
The InitialState determines which type of mover you want. In short, what type of behavior it will have.
OpenTimed
| Key0 | >> Wait for Trigger | LastKey |
| Wait for StayOpenTime << |
These three states all work the same in movement. When they're triggered they move towards the last key. There they stay for as long as Mover > StayOpenTime is set to, to return to Key0.
TriggerOpenTimed
Starts moving when an event fires that matched its tag.
BumpOpenTimed
Starts moving when a player touches the mover.
StandOpenTimed
Starts moving when a player is standing on top of the mover. From below and side collisions are ignored.
TriggerToggled
| Key0 | >> Wait for Trigger | LastKey |
| Wait for Trigger << |
When triggered, moves from Key0 to LastKey. Triggered again and it moves backwards down to Key0 again.
TriggerPound
This one does some funny stuff, but mainly it's just buggy. Quote from Unreal Wiki:
“Can be thought of as acting like the "Ring The Bell" carnival attraction. You "pound" (trigger) it to the top (open key) and it will fall back down. (closed key) When triggered, begin to Open immediately, and if left alone, Open completely and stay open for OtherTime, not StayOpenTime. If Untriggered, begin to Close immediately, similar to TriggerControl, and as if the "pound" didn't have enough strength to make to the top and ring the bell. Unlike TriggerControl which keeps a constant speed, TriggerPound will always use the MoveTime no matter where the Mover is between keys. So, if Triggered while closing or if UnTriggered in the midst of opening, it will reverse direction and move more slowly to the next key. (Note: Although the code appears to indicate that a TriggerPound Mover can loop from a fully Closed key after StayOpenTime if more Trigger events have been sent to it than UnTrigger events, it doesn't appear to loop in any situation tested.)”
TriggerControl
| Key0 | >> Wait for Trigger | >>> | ... Keeps moving until Untriggered | LastKey |
| Wait for Untrigger << |
Starts moving when triggered and keeps at it while not being untriggered. The easiest way to do this is to place a Trigger in your map and set its Event to the Tag of the Mover. Make sure its RepeatTriggerTime and ReTrigger time is both set to 0(default). Another way to untrigger something is to use the BEUntrigger actor. While a player are within the CollisionRadius of this trigger, the mover will move towards its last key. If the player moves away it will move back towards Key0. Once the mover have reached its last key it will return until triggered again (has been known to get stuck in last key).
TriggerAdvance
| Key0 | >> Wait for Trigger | >>> | ... Keeps moving until Untriggered | LastKey |
Works almost like TriggerControl, except it won't reverse its movement when untriggered. It will simply stop, and wait for it to be triggered again. Has been known to cause visual bugs on a server. Will also stop once it has reached its last key.
RotatingMover
I can't seem to find any use for this. The easiest way to make a constantly rotating mover is to set its Movement > RotatingRate to something other than 0 and Movement > bFixedRotationDir to True. No Keys involved.
LoopMove
| Key0 | >> Wait for Trigger | >>> | ... Keeps moving until Untriggered | LastKey |
| Loops back to Key0 |
Starts looping, from Key0 to LastKey back to Key0 when triggered. Moves directly back towards Key0 when untriggerd, skipping the other keys.
ConstantLoop
Moves from Key0 towards LastKey back to Key0. No triggering involved.
LeadInOutLooper
| Key0 | >> Wait for Trigger | Key1 | >> Moves towards LastKey | LastKey |
| Loops back to Key1 << |
A very useful mover type. When triggered, moves out of its initial key to Key1, then towards KeyX. Once it reaches KeyX it moves back towards Key1 and loops between these keys. When triggered again it moves towards Key0 and stops, skipping the other keys.
BumpButton
<td">| Key0 | >> BumpButton | Key1 | ||
| Key0 | Mover #2. Starts moving when BumpButton is in its Key1 state. | LastKey | ||
| When back at key0, trigger BumpButton << |
Another quite useful one. Triggers when a player touches it. If its Event is empty, it will move directly back. If the Event matches the tag of another mover it will wait in its last key until that Mover has returned to its Key0.