Difference between revisions of "LlSensor"

From Second Life Wiki
Jump to: navigation, search
m
m
Line 1: Line 1:
 
{{LSL_Function/object|id|prim or avatar|sim=*}}{{LSL_Function
 
{{LSL_Function/object|id|prim or avatar|sim=*}}{{LSL_Function
 
|func_id=28|func_sleep=0.0|func_energy=10.0
 
|func_id=28|func_sleep=0.0|func_energy=10.0
|sort=Sensor|func=llSensor
+
|sort=Sensor|func=llSensor|constants={{LSL Constants/Sensing|type}}
|p1_type=string|p1_name=name
+
|p1_type=string|p1_name=name|p1_desc=Object or avatar name
 
|p2_type=key|p2_name=id
 
|p2_type=key|p2_name=id
|p3_type=integer|p3_name=type|p3_desc=mask
+
|p3_type=integer|p3_name=type|p3_desc=mask ({{#var:AGENT}}, {{#var:ACTIVE}}, {{#var:PASSIVE}}, and/or {{#var:SCRIPTED}})|p3_hover=mask (AGENT, ACTIVE, PASSIVE, and/or SCRIPTED)
|p4_type=float|p4_name=range|p4_desc
+
|p4_type=float|p4_name=range|p4_desc=range 0.0 to 96.0m
|p5_type=float|p5_name=arc|p5_desc=the max angle between the local x-axis of the prim and detectable objects
+
|p5_type=float|p5_name=arc|p5_desc=the max angle between the local x-axis of the prim and detectable objects, range 0.0 to {{#var:PI}}|p5_hover=the max angle between the local x-axis of the prim and detectable objects, range 0.0 to PI
 
|func_footnote=If '''name''', '''id''', and/or '''type''' are empty or 0, they are ignored.<br/>If '''id''' is an invalid key or [[NULL_KEY]] it is treated as empty.
 
|func_footnote=If '''name''', '''id''', and/or '''type''' are empty or 0, they are ignored.<br/>If '''id''' is an invalid key or [[NULL_KEY]] it is treated as empty.
 
|func_desc=Performs a single scan for '''name''' and '''id''' with '''type''' within '''range''' meters and '''arc''' radians of forward vector
 
|func_desc=Performs a single scan for '''name''' and '''id''' with '''type''' within '''range''' meters and '''arc''' radians of forward vector
Line 12: Line 12:
 
|spec
 
|spec
 
|caveats
 
|caveats
|constants={{LSL Constants/Sensing|type}}
 
 
|examples=
 
|examples=
 
This sensor scans a 45 degree cone about the x-axis.
 
This sensor scans a 45 degree cone about the x-axis.

Revision as of 10:37, 17 May 2008

Deletion Requested
The deletion of this article was requested for the following reason:

Template is no longer used and it's creator thinks it does not function properly.

If there is a need to discuss the deletion of this article, please add your comment(s) here.

Summary

Function: llSensor( string name, key id, integer type, float range, float arc );

Performs a single scan for name and id with type within range meters and arc radians of forward vector

• string name Object or avatar name
• key id
• integer type mask (, , , and/or )
• float range range 0.0 to 96.0m
• float arc the max angle between the local x-axis of the prim and detectable objects, range 0.0 to

If name, id, and/or type are empty or 0, they are ignored.
If id is an invalid key or NULL_KEY it is treated as empty.

type Flag Mask Description (llDetectedType()) Description (llSensor() and llSensorRepeat() mask)
AGENT_BY_LEGACY_NAME 0x1 Agents This is used to find agents by legacy name.
AGENT 0x1 Agents This is also used to find agents by legacy name, and is functionally identical to AGENT_BY_LEGACY_NAME
AGENT_BY_USERNAME 0x10 Reserved This is used to find agents by username.
ACTIVE 0x2 Physical tasks. (Physical objects & agents) Physical objects that are moving or objects containing an active script. Thus, it is using SL server resources now.
PASSIVE 0x4 Non-physical objects. Non-scripted or script is inactive and non-physical or, if physical, not moving. Thus, it is not using SL server resources now.
SCRIPTED 0x8 Objects containing any active script. Objects that has any script, which is doing anything in simulator just now.
llDetectedType() Scripted Not Scripted Agent Standing Agent Sitting
Physical Movement 10 (ACTIVE|SCRIPTED) 2 (ACTIVE) 3 (ACTIVE|AGENT) 3 (ACTIVE|AGENT)
Non-Physical 12 (PASSIVE|SCRIPTED) 4 (PASSIVE) 1 (AGENT) 5 (PASSIVE|AGENT)
Float Constants Arc
PI_BY_TWO A hemisphere scan
PI A full sphere scan

Caveats

  • When searching for an avatar but not by name, it doesn't matter which AGENT flag is used.
All Issues ~ Search JIRA for related Bugs

Examples

This sensor scans a 45 degree cone about the x-axis. <lsl>llSensor( "Gigs Taggart", NULL_KEY, AGENT, 96.0, PI/4 );</lsl>

PI/2 or PI_BY_TWO scans a hemisphere. PI is a spherical scan.

See Also

Events

•  sensor Triggered when a sensor detects something
•  no_sensor Triggered when a sensor detects nothing

Functions

•  llSensorRepeat Runs a sensor on a timer
•  llSensorRemove Stops the llSensorRepeat timer

Articles

•  Object Type

Deep Notes

Search JIRA for related Issues

Signature

function void llSensor( string name, key id, integer type, float range, float arc );