Difference between revisions of "LlMoveToTarget"
Jump to navigation
Jump to search
Placid Kidd (talk | contribs) (replace fairly useless example) |
Placid Kidd (talk | contribs) m (add intro for example) |
||
Line 11: | Line 11: | ||
|caveats | |caveats | ||
|constants | |constants | ||
|examples=<pre> | |examples=Drop this script in a prim to have to it follow the prim owner. | ||
<pre> | |||
default | default | ||
{ | { |
Revision as of 19:38, 5 July 2007
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: llMoveToTarget( vector target, float tau );70 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Critically damp to target in tau seconds (if the script is physical)
• vector | target | – | region position | |
• float | tau | – | seconds to critically damp in |
To stop the object from maintaining the target positions use llStopMoveToTarget
To change the rotation in the same manner use llLookAt or llRotLookAt.
Caveats
Examples
Drop this script in a prim to have to it follow the prim owner.
default { state_entry() { vector pos = llGetPos(); llSetStatus(STATUS_PHYSICS, TRUE); // Little pause to allow server to make potentially large linked object physical. llSleep(0.1); llMoveToTarget(pos,0.4); // Look for owner within 20 metres in 360 degree arc every 1 seconds. llSensorRepeat("", llGetOwner(), AGENT, 20.0, PI,1.0); } sensor(integer total_number) { // Get position of detected owner vector pos = llDetectedPos(0); // Offset back one metre in X and up one metre in Z based on world coordinates. // Offset relative to owner is possible but beyond the scope of this example. vector offset =<-1,0,1>; pos+=offset; llMoveToTarget(pos,0.4); } }