Difference between revisions of "MoveTo - ObjectReference"
Jump to navigation
Jump to search
imported>Chesko (Added note about actors and furniture.) |
imported>JustinOther m (→Examples: Cached GetPlayer) |
||
Line 39: | Line 39: | ||
<source lang="papyrus"> | <source lang="papyrus"> | ||
; Moves a portal 120 units in front of the player, 35 units under their height | ; Moves a portal 120 units in front of the player, 35 units under their height | ||
Actor PlayerRef = Game.GetPlayer() | |||
Portal.MoveTo(PlayerRef, 120 * Math.Sin(PlayerRef.GetAngleZ()), 120 * Math.Cos(PlayerRef.GetAngleZ()), PlayerRef.GetHeight() - 35) | |||
</source> | </source> | ||
Revision as of 19:00, 11 February 2013
Member of: ObjectReference Script
Moves this reference to the location of the target reference, with the specified offset.
Syntax
Function MoveTo(ObjectReference akTarget, float afXOffset = 0.0,
float afYOffset = 0.0, float afZOffset = 0.0, bool abMatchRotation = true) native
Parameters
- akTarget: The target reference to move this one to.
- afXOffset: How much to offset the move in the X direction.
- Default: 0.0
- afYOffset: How much to offset the move in the Y direction.
- Default: 0.0
- afZOffset: How much to offset the move in the Z direction.
- Default: 0.0
- abMatchRotation: Whether the moved object should match the rotation of the target object or not
- Default: True
Return Value
None.
Examples
; Move Bob to his house, designated by a marker
Bob.MoveTo(BobsHouseMarker)
; Move Bob to his house, but don't match the rotation of the marker
Bob.MoveTo(BobsHouseMarker, abMatchRotation = false)
; Moves a portal 120 units in front of the player, 35 units under their height
Actor PlayerRef = Game.GetPlayer()
Portal.MoveTo(PlayerRef, 120 * Math.Sin(PlayerRef.GetAngleZ()), 120 * Math.Cos(PlayerRef.GetAngleZ()), PlayerRef.GetHeight() - 35)
Notes
- MoveTo() should be avoided for placing other actors in sight of the player, as they will suddenly appear in an unrealistic way. Instead, consider placing them nearby but out of sight, and making them approach the player themselves, using PathToReference or ForceGreet.
- Making an actor MoveTo() a furniture reference will make the actor immediately assume the position of "using" that furniture, without playing the furniture entrance animation. Example: PlayerRef.MoveTo(BedReference) will make the player lie down on the bed reference (without playing the bed entrance animation).