Difference between revisions of "LlGround"
Jump to navigation
Jump to search
m (LSL llGround moved to LlGround) |
m (<lsl> tag to <source>) |
||
(21 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
{{LSL_Function | {{LSL_Function | ||
|inject-2={{LSL Function/offset|offset|noZ=*|sim=*}} | |||
|func_id=42|func_sleep=0.0|func_energy=10.0 | |func_id=42|func_sleep=0.0|func_energy=10.0 | ||
|func=llGround | |sort=Ground | ||
|func=llGround|sort=Ground | |||
|return_type=float|p1_type=vector|p1_name=offset | |return_type=float|p1_type=vector|p1_name=offset | ||
|func_desc | |func_desc | ||
|return_text=that is the ground height below the | |return_text=that is the ground height directly below the [[llGetPos|prim position]] + {{LSLP|offset}} | ||
|spec | |spec | ||
|caveats | |caveats | ||
|constants | |constants | ||
|examples | |examples= | ||
<source lang="lsl2">// Makes the object land on ground or on water | |||
FindGroundOrWater() | |||
{ | |||
vector vTarget = llGetPos(); | |||
vTarget.z = llGround( ZERO_VECTOR ); | |||
float fWaterLevel = llWater( ZERO_VECTOR ); | |||
if( vTarget.z < fWaterLevel ) | |||
vTarget.z = fWaterLevel; | |||
llSetRegionPos(vTarget); | |||
} | |||
default | |||
{ | |||
touch_start(integer total_number) | |||
{ | |||
FindGroundOrWater(); | |||
} | |||
}</source> | |||
|helpers | |helpers | ||
|also_functions | |also_functions= | ||
{{LSL DefineRow||[[llGroundContour]]|Gets the ground contour}} | |||
{{LSL DefineRow||[[llGroundNormal]]|Gets the ground normal}} | |||
{{LSL DefineRow||[[llGroundSlope]]|Gets the ground slope}} | |||
{{LSL DefineRow||[[llEdgeOfWorld]]|Returns existence of neighboring sims}} | |||
|also_tests | |also_tests | ||
|also_events | |also_events | ||
Line 17: | Line 41: | ||
|notes | |notes | ||
|cat1=Ground | |cat1=Ground | ||
|cat2= | |cat2=Region | ||
|cat3 | |cat3 | ||
|cat4 | |cat4 | ||
}} | }} |
Latest revision as of 11:22, 22 January 2015
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: float llGround( vector offset );42 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns a float that is the ground height directly below the prim position + offset
• vector | offset | – | offset relative to the prim's position and expressed in local coordinates |
The requested position needs to be in the same region. Only the x and y coordinates in offset are important, the z component is ignored.
Caveats
Examples
// Makes the object land on ground or on water
FindGroundOrWater()
{
vector vTarget = llGetPos();
vTarget.z = llGround( ZERO_VECTOR );
float fWaterLevel = llWater( ZERO_VECTOR );
if( vTarget.z < fWaterLevel )
vTarget.z = fWaterLevel;
llSetRegionPos(vTarget);
}
default
{
touch_start(integer total_number)
{
FindGroundOrWater();
}
}
See Also
Functions
• | llGroundContour | – | Gets the ground contour | |
• | llGroundNormal | – | Gets the ground normal | |
• | llGroundSlope | – | Gets the ground slope | |
• | llEdgeOfWorld | – | Returns existence of neighboring sims |