Difference between revisions of "KeepOffsetFromActor - Actor"
Jump to navigation
Jump to search
imported>MoopusMaximus (→Notes) |
imported>Haravikk (Moved example from bethsoft forum as they are closing down soon) |
||
Line 22: | Line 22: | ||
*afOffsetAngleZ: the offset angle from the target actor, Z (degrees - most commonly used) | *afOffsetAngleZ: the offset angle from the target actor, Z (degrees - most commonly used) | ||
**'''Default:''' 0.0 | **'''Default:''' 0.0 | ||
*afCatchUpRadius: the radius at which the actor would run to catch up (anyone | *afCatchUpRadius: the radius at which the actor would run to catch up (anyone outside a radius of 20 will run to catchup) | ||
**'''Default:''' 20.0 | **'''Default:''' 20.0 | ||
*afFollowRadius: the radius at which the actor won't move (anyone | *afFollowRadius: the radius at which the actor won't move (anyone within a radius of 5 will not move) | ||
**'''Default:''' 5.0 | **'''Default:''' 5.0 | ||
Line 39: | Line 39: | ||
; Have the stalker keep close to the player with a larger follow radius | ; Have the stalker keep close to the player with a larger follow radius | ||
Stalker.KeepOffsetFromActor(Game.GetPlayer(), 0.0, 0.0, 20.0, afFollowRadius = 10.0) | Stalker.KeepOffsetFromActor(Game.GetPlayer(), 0.0, 0.0, 20.0, afFollowRadius = 10.0) | ||
</source> | |||
<br> | |||
<source lang="papyrus"> | |||
; Cause Runner to run forwards (lower offset magnitude will reduce speed) | |||
Runner.KeepOffsetFromActor(Runner, 0.0, 0.0, -100.0, afFollowRadius = 0.0) | |||
</source> | </source> | ||
Latest revision as of 07:45, 27 February 2020
Member of: Actor Script
Forces the specified actor into a state where it will attempt to keep a given offset from another actor
Syntax[edit | edit source]
Function KeepOffsetFromActor(Actor arTarget, float afOffsetX, float afOffsetY, float afOffsetZ, float afOffsetAngleX = 0.0, \
float afOffsetAngleY = 0.0, float afOffsetAngleZ = 0.0, float afCatchUpRadius = 20.0, float afFollowRadius = 5.0) native
Parameters[edit | edit source]
- arTarget: the target actor
- afOffsetX: the offset from the target actor, in the actor's body space (so positive X is right of the actor), X
- afOffsetY: the offset from the target actor, in the actor's body space, Y
- afOffsetZ: the offset from the target actor, in the actor's body space, Z
- afOffsetAngleX: the offset angle from the target actor, X (degrees - rarely used)
- Default: 0.0
- afOffsetAngleY: the offset angle from the target actor, Y (degrees - rarely used)
- Default: 0.0
- afOffsetAngleZ: the offset angle from the target actor, Z (degrees - most commonly used)
- Default: 0.0
- afCatchUpRadius: the radius at which the actor would run to catch up (anyone outside a radius of 20 will run to catchup)
- Default: 20.0
- afFollowRadius: the radius at which the actor won't move (anyone within a radius of 5 will not move)
- Default: 5.0
Return Value[edit | edit source]
None.
Examples[edit | edit source]
; Have the stalker keep close to the player
Stalker.KeepOffsetFromActor(Game.GetPlayer(), 0.0, 0.0, 20.0)
; Have the stalker keep close to the player with a larger follow radius
Stalker.KeepOffsetFromActor(Game.GetPlayer(), 0.0, 0.0, 20.0, afFollowRadius = 10.0)
; Cause Runner to run forwards (lower offset magnitude will reduce speed)
Runner.KeepOffsetFromActor(Runner, 0.0, 0.0, -100.0, afFollowRadius = 0.0)
Notes[edit | edit source]
- The default values will cause the follower to continually run into the target, use larger values instead.
- This is nifty if you want an NPC to walk next to another.
- This function can be used as a way to force actors to walk in a direction, similar to Obscript's PlayGroup function. See Here.