MSFD Движение вдоль оси мира
MoveWorld axis(x/y/z), units/sec_enum
MoveWorld z, 100
Object_ID->MoveWorld Z, 30
Двигает объект вдоль выбранной оси мира (x, y, или z) с выбранной скоростью.
Скорость исчисляется в пунктах в секунду (21.3 пункта в футе).
Это движение основано на координатах оси мира.
Таким образом, положительное движение по оси z всегда будет двигать объект вверх, вне зависимости от его локального положения:
Z – наверх/вниз,
X – на запад/восток,
Y – на север/юг.
Примечание: MoveWorld не работает с актерами, включая игрока. Используйте SetPos для актеров.
Это пример скрипта, обнаруженного мной на форуме, который заставляет платформу медленно двигаться вперед и назад, пока игрок стоит на ней:
Begin platform_script
Short PlatformMoving
Short ActivateMe
Float Timer
If ( GetStandingPC == 1 )
Set ActivateMe to 1
Endif
If ( ActivateMe == 1 )
If ( PlatformMoving == 0 )
Set Timer to Timer + GetSecondsPassed
If ( Timer <= 15 )
"floating_platform_01"->MoveWorld X 10
Else
Set Timer to 0
Set PlatformMoving to -1
Endif
Endif
If ( PlatformMoving == -1 )
Set Timer to Timer + GetSecondsPassed
If ( Timer <= 15 )
"floating_platform_01"->MoveWorld X -10
Else
Set Timer to 0
Set PlatformMoving to 0
Set ActivateMe to -1
Endif
Endif
Else
"floating_platform_01"->SetAtStart
Endif
End platform_script