Difference between revisions of "LlWater"
Jump to navigation
Jump to search
m (Explaining what this script does) |
m |
||
Line 1: | Line 1: | ||
{{LSL_Function | {{LSL_Function | ||
|inject-2={{LSL Function/offset|offset|noZ=*|sim=*}} | |||
|func=llWater | |func=llWater | ||
|func_id=153|func_sleep=0.0|func_energy=10.0 | |func_id=153|func_sleep=0.0|func_energy=10.0 | ||
|func_footnote | |func_footnote | ||
Water height is constant across each entire sim and is typically 20 meters but not always. | Water height is constant across each entire sim and is typically 20 meters but not always. | ||
|func_desc | |func_desc | ||
|p1_type=vector|p1_name=offset | |p1_type=vector|p1_name=offset | ||
|return_type=float | |return_type=float | ||
|return_text=that is the water height below the object position + | |return_text=that is the water height below the object position + {{LSLP|offset}} | ||
|spec | |spec | ||
|caveats | |caveats | ||
|constants | |constants | ||
|examples= | |examples= |
Revision as of 11:14, 18 June 2012
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: float llWater( vector offset );153 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns a float that is the water height below the object 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
<lsl>// Gets the object to land on ground or on water // 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>