llTarget
function
Function syntax
integer llTarget(vector position,// Target position vector in region coordinates.float range// Radius tolerance in meters surrounding the target position.
);- Returns
integer- Energy
- 10
This function is to have the script know when it has reached a position.
It registers a position with a range that triggers at_target and not_at_target events continuously until unregistered.
A similar function exists for rotations: llRotTarget
This function does not move the object, to do that use llSetPos or llMoveToTarget.
Returns an integer to unregister the target with llTargetRemove.
integer result = llTarget(ZERO_VECTOR, 0.0);Caveats
Section titled “Caveats”- The position always references the current region. If you set
llTargetto<100, 100, 100>while in Region A and then move the object to region B, the target automatically becomes<100, 100, 100>in Region B. - The position can be set outside the region boundaries, but
at_targetcan only happen if the range extends into the current region. The part of the range outside the current region will not activateat_target. - Only 8 targets can be active to a script. Additional
llTargetwill remove the oldest target set.
Examples
Section titled “Examples”Example 1
6 collapsed lines
integer target_id;vector target_pos;
default{ state_entry() { target_pos = llGetPos() + <1.0, 0.0, 0.0>; target_id = llTarget(target_pos, 0.5); } at_target(integer tnum, vector targetpos, vector ourpos)18 collapsed lines
{ if (tnum == target_id) { llOwnerSay("object is within range of target"); llOwnerSay("target position: " + (string)targetpos + ", object is now at: " + (string)ourpos); llOwnerSay("this is " + (string)llVecDist(targetpos, ourpos) + " meters from the target"); llTargetRemove(target_id); } } not_at_target() { llOwnerSay( "not there yet - object is at " + (string)llGetPos() + ", which is " + (string)llVecDist(target_pos, llGetPos()) + " meters from the target (" + (string)target_pos + ")" ); }}See also
Section titled “See also”Functions
Section titled “Functions”llTargetRemove— Cancel a target positionllRotTarget— Register a target rotationllRotTargetRemove— Cancel a target rotation
Events
Section titled “Events”at_target—not_at_target— positional target eventsat_rot_target—not_at_rot_target— rotational target events
Original wiki source
Some wiki templates and tables need their original context. View this article on the Second Life Wiki. Technical wording and examples are retained from the source; historical guidance may differ from current behavior.