×
Меню
Индекс

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