zCMover¶
Quick Infos
Type: Virtual Object
Format Name: ZenGin Archive
File Extension: .ZEN
Class Name: zCMover
Version Identifiers:
— Gothic I: 39936
— Gothic II: 39936
ZenKit Class: VMover
Sources:
— spacerhilfedatei.sph
— gothic-library.ru
A VObject which can move along a pre-determined path in response to an event. Movers can be controlled through a set of
keyframes or the animation of their visuals. If the visual has an attached animation to be used as the mover's animation,
it must have the following animations which are run depending on the mover's state: S_OPEN
, S_CLOSED
, T_CLOSED_2_OPEN
,
T_OPEN_2_CLOSED
, S_LOCKED
, S_UNLOCKED
, T_UNLOCKED_TO_LOCKED
, T_LOCKED_TO_UNLOCKED
.
Each mover is in one of three states, "open", "closed" or "moving". Keyframe 0
(or S_OPEN
when using the visual's
animation) corresponds to the "open" state while the last keyframe (or S_CLOSED
) corresponds to the "closed" state.
When transitioning between the "open" and "closed" states, the mover is in the "moving" state during which it
sequentially moves between its keyframes (or runs the T_CLOSED_2_OPEN
or T_OPEN_TO_CLOSED
animations). Movers with
their moverBehavior
set to NSTATE_SINGLE_KEYS
are an exception to this rule: each keyframe can
individually be addressed as a state.
Movers are specialized triggers. Before beginning their animation, movers first filter the incoming events as per the
zCTrigger
's rules and only start the animation if the event passes through the filters. When the mover reaches
the "open" state after being activated, it emits an OnTrigger
event according to the fire behavior set for the
zCTrigger
. Similarly, when it reaches the "closed" state it emits an OnUntrigger
event.
Movers can be enabled and disabled using the OnEnable
, OnDisable
and OnToggleDisabled
events.
- zCVob
- zCTriggerBase
- zCTrigger
- zCMover
- Mover
- moverBehavior = 2STATE_TOGGLE
- touchBlockerDamage = 0.0
- stayOpenTimeSec = 0.0
- moverLocked = FALSE
- autoLinkEnabled = FALSE
- Keyframe
- numKeyframes = 0
- moveSpeed = 0.0
- posLerpType = CURVE
- speedType = CONST
- Sound
- sfxOpenStart = ""
- sfxOpenEnd = ""
- sfxMoving = ""
- sfxCloseStart = ""
- sfxCloseEnd = ""
- sfxLock = ""
- sfxUnlock = ""
- sfxUseLocked = ""
- Mover
- zCVob
- zCTriggerBase
- zCTrigger
- zCMover
- Mover
- moverBehavior = 2STATE_TOGGLE
- touchBlockerDamage = 0.0
- stayOpenTimeSec = 0.0
- moverLocked = FALSE
- autoLinkEnabled = FALSE
- autoRotate = FALSE
- Keyframe
- numKeyframes = 0
- moveSpeed = 0.0
- posLerpType = CURVE
- speedType = CONST
- Sound
- sfxOpenStart = ""
- sfxOpenEnd = ""
- sfxMoving = ""
- sfxCloseStart = ""
- sfxCloseEnd = ""
- sfxLock = ""
- sfxUnlock = ""
- sfxUseLocked = ""
- Mover
- zCVob
- zCTriggerBase
- zCTrigger
- zCMover
- Mover
- moverBehavior = 2STATE_TOGGLE
- touchBlockerDamage = 0.0
- stayOpenTimeSec = 0.0
- moverLocked = FALSE
- autoLinkEnabled = FALSE
- Keyframe
- numKeyframes = 0
- moveSpeed = 0.0
- posLerpType = CURVE
- speedType = CONST
- actKeyPosDelta = 0 0 0
- actKeyframeF = 0.0
- actKeyframe = 0
- nextKeyframe = 0
- moveSpeedUnit = 0.0
- advanceDir = 0.0
- moverState = ?
- numTriggerEvents = 0
- stayOpenTimeDest = 0.0
- Sound
- sfxOpenStart = ""
- sfxOpenEnd = ""
- sfxMoving = ""
- sfxCloseStart = ""
- sfxCloseEnd = ""
- sfxLock = ""
- sfxUnlock = ""
- sfxUseLocked = ""
- Mover
- zCVob
- zCTriggerBase
- zCTrigger
- zCMover
- Mover
- moverBehavior = 2STATE_TOGGLE
- touchBlockerDamage = 0.0
- stayOpenTimeSec = 0.0
- moverLocked = FALSE
- autoLinkEnabled = FALSE
- autoRotate = FALSE
- Keyframe
- numKeyframes = 0
- moveSpeed = 0.0
- posLerpType = CURVE
- speedType = CONST
- actKeyPosDelta = 0 0 0
- actKeyframeF = 0.0
- actKeyframe = 0
- nextKeyframe = 0
- moveSpeedUnit = 0.0
- advanceDir = 0.0
- moverState = ?
- numTriggerEvents = 0
- stayOpenTimeDest = 0.0
- Sound
- sfxOpenStart = ""
- sfxOpenEnd = ""
- sfxMoving = ""
- sfxCloseStart = ""
- sfxCloseEnd = ""
- sfxLock = ""
- sfxUnlock = ""
- sfxUseLocked = ""
- Mover
Properties¶
moverBehavior
¶
-
Controls how the mover behaves in response to events ("activation").
2STATE_TOGGLE
— Receiving either event causes the state of the mover to swap. The direction of the animation is reversed.2STATE_TRIGGER_CTRL
— AnOnTrigger
causes the mover to transition to the "open" state while anOnUntrigger
event causes the mover to transition to the "closed" state.2STATE_OPEN_TIMED
— AnOnTrigger
event causes the mover to transition to the "open" state. It than transitions to the "closed" state after a fixed amount of time specified bystayOpenTimeSec
.NSTATE_LOOP
— The mover opens and closes in a loop indefinitely.NSTATE_SINGLE_KEYS
— The mover can transition to each keyframe separately. Often used in conjunction with azCMoverController
.
touchBlockerDamage
¶
- The amount of damage to deal to objects in the way of the mover.
stayOpenTimeSec
¶
-
The number of seconds a mover with the
2STATE_OPEN_TIMED
behavior stays in the "open" state until transitioning to the "closed" state again.Warning
Only relevant if
moverBehavior
is2STATE_OPEN_TIMED
.
moverLocked
¶
- Unclear.
autoLinkEnabled
¶
-
Determines whether the position of the object triggering the mover should be tied to the mover's position.
TRUE
— When the mover transitions, the position of the triggering object follows the position of the mover.FALSE
— The triggering object's position is uncoupled from the position of the mover.
autoRotate
¶
-
Whether to automatically rotate the mover along its movement trajectory. For example, this is used for making fish always face in the direction they're moving.
TRUE
— Automatically face the mover forward along its trajectory.FALSE
— Never automatically rotate the mover.
Warning
Only available in Gothic II.
numKeyframes
¶
- Unclear.
moveSpeed
¶
-
The movement speed for transitioning between keyframes in units per millisecond.
Warning
Only relevant if manually specified keyframes are used. Ignored when using the visual for the animation.
posLerpType
¶
-
Defines how the mover should interpolate between the keyframe positions. Only affects the mover's position, never its rotation.
CURVE
— Smoothly transition between keyframes.LINEAR
— Linearly transition between keyframes.
Warning
Only relevant if manually specified keyframes are used. Ignored when using the visual for the animation.
speedType
¶
-
Controls the acceleration and deceleration behavior of the mover.
CONST
— Mover with a constant speed.SLOW_START_END
— Slowly accelerate at the first keyframe and decelerate at the last keyframe.SLOW_START
— Slowly accelerate at the first keyframe but don't decelerate at the end.SLOW_END
— Slowly decelerate at the last keyframe but don't accelerate at the start.SEG_SLOW_START_END
— Slowly accelerate at the beginning of each keyframe and decelerate at the end of each keyframe.SEG_SLOW_START
— Slowly accelerate at the beginning of each keyframe but don't decelerate at the end.SEG_SLOW_END
— Slowly decelerate at the end of each keyframe but don't accelerate at the beginning.
Warning
Only relevant if manually specified keyframes are used. Ignored when using the visual for the animation.
sfxOpenStart
¶
- The name of the sound to play at the beginning of the opening sequence.
sfxOpenEnd
¶
- The name of the sound to play at the end of the opening sequence.
sfxMoving
¶
- The name of the sound to play in a loop while the mover is transitioning between keyframes.
sfxCloseStart
¶
- The name of the sound to play at the beginning of the closing sequence.
sfxCloseEnd
¶
- The name of the sound to play at the end of the closing sequence.
sfxLock
¶
- The name of the sound to play when locking a mover.
sfxUnlock
¶
- The name of the sound to play when unlocking a mover.
sfxUseLocked
¶
- The name of the sound to play when using a locked mover.
actKeyPosDelta
¶
-
Unknown.
Warning
This property is only available in saved games.
actKeyframeF
¶
-
Unknown.
Warning
This property is only available in saved games.
actKeyframe
¶
-
Unknown.
Warning
This property is only available in saved games.
nextKeyframe
¶
-
Unknown.
Warning
This property is only available in saved games.
moveSpeedUnit
¶
-
Unknown.
Warning
This property is only available in saved games.
advanceDir
¶
-
Unknown.
Warning
This property is only available in saved games.
moverState
¶
-
Unknown.
Warning
This property is only available in saved games.
numTriggerEvents
¶
-
Unknown.
Warning
This property is only available in saved games.
stayOpenTimeDest
¶
-
Unknown.
Warning
This property is only available in saved games.