Difference between revisions of "At target"

From Second Life Wiki
Jump to navigation Jump to search
m (lsl code tagging)
m
Line 55: Line 55:
|cat1=Target
|cat1=Target
|cat2=Physics
|cat2=Physics
|cat3
|cat3=At Target
|cat4
|cat4
}}
}}

Revision as of 06:23, 20 October 2008

Description

Event: at_target( integer tnum, vector targetpos, vector ourpos ){ ; }

Result of llTarget library function call

• integer tnum llTarget return
• vector targetpos llTarget position parameter
• vector ourpos current position (similar to llGetPos)

Caveats


Examples

<lsl> 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)
   {
       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 + ")"
       );
   }

} </lsl>

See Also

Events

•  not_at_target
•  at_rot_target
•  not_at_rot_target

Functions

•  llTarget Setup a target position
•  llTargetRemove Stop a target position
•  llRotTarget Setup a target rotation
•  llRotTargetRemove Stop a target rotation

Deep Notes

Signature

event void at_target( integer tnum, vector targetpos, vector ourpos );