OsSetTerrainTextureHeight
From OpenSimulator
(Difference between revisions)
(The first parameter *is* corner. Updated with mapping between corner value and region corner.) |
|||
(5 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{osslfunc | {{osslfunc | ||
− | |function_syntax= | + | |function_syntax= osSetTerrainTextureHeight(integer corner, float low, float high) |
|csharp_syntax= | |csharp_syntax= | ||
|description=Set the terrain texture height for the estate. The corner values are: 0 (Southwest), 1 (Southeast), 2 (Northwest), 3 (Northeast). The values low and high are float values for the altitude measured in meters. | |description=Set the terrain texture height for the estate. The corner values are: 0 (Southwest), 1 (Southeast), 2 (Northwest), 3 (Northeast). The values low and high are float values for the altitude measured in meters. | ||
Line 6: | Line 6: | ||
|permissions=ESTATE_MANAGER,ESTATE_OWNER | |permissions=ESTATE_MANAGER,ESTATE_OWNER | ||
|delay=0 | |delay=0 | ||
− | |ossl_example= | + | |ossl_example=<source lang = "lsl">// Default Terrain Textures by djphil 2018 |
− | |additional_info= | + | |
+ | default | ||
+ | { | ||
+ | state_entry() | ||
+ | { | ||
+ | osSetTerrainTexture(0, "b8d3965a-ad78-bf43-699b-bff8eca6c975"); | ||
+ | osSetTerrainTextureHeight(0, 10.0, 60.0); | ||
+ | osSetTerrainTexture(1, "abb783e6-3e93-26c0-248a-247666855da3"); | ||
+ | osSetTerrainTextureHeight(1, 10.0, 60.0); | ||
+ | osSetTerrainTexture(2, "179cdabd-398a-9b6b-1391-4dc333ba321f"); | ||
+ | osSetTerrainTextureHeight(2, 10.0, 60.0); | ||
+ | osSetTerrainTexture(3, "beb169c7-11ea-fff2-efe5-0f24dc881df2"); | ||
+ | osSetTerrainTextureHeight(3, 10.0, 60.0); | ||
+ | } | ||
+ | } | ||
+ | </source> | ||
+ | |||
+ | <source lang = "lsl"> | ||
+ | // Terrain elevation animation | ||
+ | |||
+ | float gTimerInterval = 5.0; // Timer interval in seconds | ||
+ | float gTimerDelay = 5.0; // Start the timer after 5 seconds | ||
+ | float gMinHeight = 5.0; | ||
+ | float gMaxHeight = 55.0; | ||
+ | float gStep = 1.0; | ||
+ | integer gDirection = 1; // 1 for ascent, -1 for descent | ||
+ | |||
+ | default | ||
+ | { | ||
+ | state_entry() | ||
+ | { | ||
+ | llSetTimerEvent(gTimerDelay); | ||
+ | } | ||
+ | |||
+ | timer() | ||
+ | { | ||
+ | // Set the height of the current terrain texture | ||
+ | osSetTerrainTextureHeight(0, gMinHeight, gMaxHeight); | ||
+ | osSetTerrainTextureHeight(1, gMinHeight, gMaxHeight); | ||
+ | osSetTerrainTextureHeight(2, gMinHeight, gMaxHeight); | ||
+ | osSetTerrainTextureHeight(3, gMinHeight, gMaxHeight); | ||
+ | |||
+ | // Change the min and max height for the next interval | ||
+ | gMinHeight += gStep * gDirection; | ||
+ | gMaxHeight += gStep * gDirection; | ||
+ | |||
+ | // Check and change the direction upon reaching the maximum or minimum value | ||
+ | if (gMinHeight <= 5.0 || gMaxHeight >= 65.0) | ||
+ | { | ||
+ | gDirection *= -1; // Reverse the direction | ||
+ | gMinHeight += gStep * gDirection; // Correct the min and max height | ||
+ | gMaxHeight += gStep * gDirection; | ||
+ | } | ||
+ | |||
+ | // Set the timer for the next interval | ||
+ | llSetTimerEvent(gTimerInterval); | ||
+ | } | ||
+ | } | ||
+ | </source> | ||
+ | |||
+ | |additional_info=This function was added in 0.7.4-post-fixes | ||
}} | }} |
Latest revision as of 01:47, 31 December 2023
osSetTerrainTextureHeight(integer corner, float low, float high)
| |
Set the terrain texture height for the estate. The corner values are: 0 (Southwest), 1 (Southeast), 2 (Northwest), 3 (Northeast). The values low and high are float values for the altitude measured in meters. | |
Threat Level | High |
Permissions | ESTATE_MANAGER,ESTATE_OWNER |
Extra Delay | 0 seconds |
Example(s) | |
// Default Terrain Textures by djphil 2018 default { state_entry() { osSetTerrainTexture(0, "b8d3965a-ad78-bf43-699b-bff8eca6c975"); osSetTerrainTextureHeight(0, 10.0, 60.0); osSetTerrainTexture(1, "abb783e6-3e93-26c0-248a-247666855da3"); osSetTerrainTextureHeight(1, 10.0, 60.0); osSetTerrainTexture(2, "179cdabd-398a-9b6b-1391-4dc333ba321f"); osSetTerrainTextureHeight(2, 10.0, 60.0); osSetTerrainTexture(3, "beb169c7-11ea-fff2-efe5-0f24dc881df2"); osSetTerrainTextureHeight(3, 10.0, 60.0); } } // Terrain elevation animation float gTimerInterval = 5.0; // Timer interval in seconds float gTimerDelay = 5.0; // Start the timer after 5 seconds float gMinHeight = 5.0; float gMaxHeight = 55.0; float gStep = 1.0; integer gDirection = 1; // 1 for ascent, -1 for descent default { state_entry() { llSetTimerEvent(gTimerDelay); } timer() { // Set the height of the current terrain texture osSetTerrainTextureHeight(0, gMinHeight, gMaxHeight); osSetTerrainTextureHeight(1, gMinHeight, gMaxHeight); osSetTerrainTextureHeight(2, gMinHeight, gMaxHeight); osSetTerrainTextureHeight(3, gMinHeight, gMaxHeight); // Change the min and max height for the next interval gMinHeight += gStep * gDirection; gMaxHeight += gStep * gDirection; // Check and change the direction upon reaching the maximum or minimum value if (gMinHeight <= 5.0 || gMaxHeight >= 65.0) { gDirection *= -1; // Reverse the direction gMinHeight += gStep * gDirection; // Correct the min and max height gMaxHeight += gStep * gDirection; } // Set the timer for the next interval llSetTimerEvent(gTimerInterval); } } | |
Notes | |
This function was added in 0.7.4-post-fixes |