Difference between revisions of "LlWater"

From Second Life Wiki
Jump to: navigation, search
m (lsl code tagging)
Line 11: Line 11:
 
|caveats
 
|caveats
 
|constants
 
|constants
|examples=<pre>
+
|examples=
 +
<lsl>
 
// by Konigmann Lippmann & Strife Onizuka
 
// by Konigmann Lippmann & Strife Onizuka
 
FindGroundOrWater()
 
FindGroundOrWater()
Line 36: Line 37:
 
     }
 
     }
 
}
 
}
</pre>
+
</lsl>
 
|helpers
 
|helpers
 
|also_functions={{LSL DefineRow||[[llGround]]|Gets the ground height}}
 
|also_functions={{LSL DefineRow||[[llGround]]|Gets the ground height}}

Revision as of 22:31, 2 April 2008

Summary

Function: float llWater( vector offset );

Returns a float that is the water height below the object position + offset

• vector offset

The requested position needs to be in the same sim.
Water height is constant across each entire sim and is typically 20 meters but not always.

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

•  llGround Gets the ground height
•  llWind Gets the wind velocity
•  llCloud Gets the cloud density

Deep Notes

Search JIRA for related Issues

Signature

function float llWater( vector offset );