Difference between revisions of "LlEdgeOfWorld"
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
(TODO: make a template for pos parameters (might be interesting).) |
(Does not work diagonally) |
||
Line 11: | Line 11: | ||
|caveats=* Zero direction vector ([[ZERO_VECTOR]]) always returns [[TRUE]]. | |caveats=* Zero direction vector ([[ZERO_VECTOR]]) always returns [[TRUE]]. | ||
* '''pos''' must be in the region. | * '''pos''' must be in the region. | ||
* Can only be used to detect directly adjacent regions, not diagonally adjacent regions | |||
|constants | |constants | ||
|examples= | |examples= |
Revision as of 09:34, 28 November 2010
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: integer llEdgeOfWorld( vector pos, vector dir );205 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Checks to see whether the border hit by dir from pos is the edge of the world (has no neighboring simulator)
Returns an integer that is a boolean.
• vector | pos | |||
• vector | dir |
Caveats
- Zero direction vector (ZERO_VECTOR) always returns TRUE.
- pos must be in the region.
- Can only be used to detect directly adjacent regions, not diagonally adjacent regions
Examples
<lsl> //--// Tells if there are neighboring sims on touch //--//
default{
touch_start( integer vIntTouched ){ vector vPosObject = llGetPos(); if (!llEdgeOfWorld( vPosObject, <0.0, 1.0, 0.0> )){ llOwnerSay( "There is a Sim to the North" ); } if (!llEdgeOfWorld( vPosObject, <1.0, 0.0, 0.0> )){ llOwnerSay( "There is a Sim to the East" ); } if (!llEdgeOfWorld( vPosObject, <0.0, -1.0, 0.0> )){ llOwnerSay( "There is a Sim to the South" ); } if (!llEdgeOfWorld( vPosObject, <-1.0, 0.0, 0.0> )){ llOwnerSay( "There is a Sim to the West" ); } }
}
</lsl>See Also
Constants
• | STATUS_DIE_AT_EDGE | |||
• | STATUS_RETURN_AT_EDGE |