Difference between revisions of "LlGround"

From Second Life Wiki
Jump to navigation Jump to search
m (typos)
m (I think this wording is a bit better.)
Line 5: Line 5:
|func_footnote=The requested position needs to be in the same sim, only the X & Y of the '''offset''' are important.
|func_footnote=The requested position needs to be in the same sim, only the X & Y of the '''offset''' are important.
|func_desc
|func_desc
|return_text=that is the ground height below the object [[llGetPos|position]] + '''offset'''  
|return_text=that is the ground height directly below the prim plus an '''offset'''
|spec
|spec
|caveats
|caveats
|constants
|constants
|examples=
|examples=
<lsl>
<lsl>// by Konigmann Lippmann & Strife Onizuka
// by Konigmann Lippmann & Strife Onizuka
FindGroundOrWater()
FindGroundOrWater()
{
{
Line 34: Line 33:
         FindGroundOrWater();
         FindGroundOrWater();
     }
     }
}
}</lsl>
</lsl>
|helpers
|helpers
|also_functions=
|also_functions=

Revision as of 16:02, 4 April 2008

Summary

Function: float llGround( vector offset );

Returns a float that is the ground height directly below the prim plus an offset

• vector offset

The requested position needs to be in the same sim, only the X & Y of the offset are important.

Examples

<lsl>// by Konigmann Lippmann & Strife Onizuka FindGroundOrWater() {

   float fHeight = llGround( ZERO_VECTOR );
   float fWaterLevel = llWater( ZERO_VECTOR );
   if( fHeight < fWaterLevel )
       fHeight = fWaterLevel;
   vector vTarget = llGetPos();
   //llSetPos can only move 10m at a time.
   integer iCounter = 1 + llAbs((integer)(vTarget.z - fHeight) / 10);
   vTarget.z = fHeight;
   do
       llSetPos( vTarget );
   while( --iCounter );

}

default {

   touch_start(integer total_number)
   {
       FindGroundOrWater();
   }
}</lsl>

See Also

Functions

•  llGroundContour Gets the ground contour
•  llGroundNormal Gets the ground normal
•  llGroundSlope Gets the ground slope
•  llEdgeOfWorld Returns existence of neighboring sims

Deep Notes

Search JIRA for related Issues

Signature

function float llGround( vector offset );