Difference between revisions of "TranslateToRef - ObjectReference"

From the CreationKit Wiki
Jump to navigation Jump to search
imported>Fg109
(add note)
imported>Thingy Person
Line 9: Line 9:
<source lang="papyrus">
<source lang="papyrus">
Function TranslateToRef(ObjectReference arTarget, float afSpeed, float afMaxRotationSpeed = 0.0)
Function TranslateToRef(ObjectReference arTarget, float afSpeed, float afMaxRotationSpeed = 0.0)
TranslateTo(arTarget.X, arTarget.Y, arTarget.Z, arTarget.GetAngleX(), arTarget.GetAngleY(), arTarget.GetAngleZ(), afSpeed, afMaxRotationSpeed)
endFunction
</source>
</source>



Revision as of 17:03, 29 June 2013

Member of: ObjectReference Script

Makes the object translate to the passed reference (matching position and rotation) at the given speed.

Syntax

Function TranslateToRef(ObjectReference arTarget, float afSpeed, float afMaxRotationSpeed = 0.0)
	TranslateTo(arTarget.X, arTarget.Y, arTarget.Z, arTarget.GetAngleX(), arTarget.GetAngleY(), arTarget.GetAngleZ(), afSpeed, afMaxRotationSpeed)
endFunction

Parameters

  • arTarget: The target to match position and rotation to
  • afSpeed: Movement Speed.
  • afMaxRotationSpeed: The maximum rotation speed (Default is 0 to mean "don't clamp rotation speed") - Negative values can cause unpredictable rotation.
    • Default: 0.0

Return Value

None.

Examples

; Translate the bird ref to the rock with a low speed
Bird.TranslateToRef(Rock, 1.0)


; Translate the bird ref to the rock with a low speed, and low rotation speed
Bird.TranslateToRef(Rock, 1.0, 10.0)

Tips

A movement speed parameter (afSpeed) of 1 is extremely slow - nearly imperceptible to the human eye. Starting at a an afSpeed of 100 and working up or down towards the desired speed is recommended.

Notes

  • The movement speed is in units per second.
  • The rotation speed is in degrees per second.
  • afMaxRotationSpeed equal to 0 means that the object will reach the target's rotation when it reaches the target's position.
  • It is not possible to cause the object to rotate faster than it would with afMaxRotationSpeed equal to 0. (Cannot reach target's rotation before target's position.)
  • The OnTranslationComplete event will fire when the object reaches both the target's position and target's rotation.
  • The OnTranslationAlmostComplete event can fire even when the target's rotation is far from being reached.

See Also