OsSetPrimitiveParams

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
m (Robot: Cosmetic changes)
m (Change See Also)
 
(8 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
{{osslfunc
 
{{osslfunc
|threat_level=High
+
|threat_level=None
|function_syntax=void osSetPrimitiveParams(key prim, list rules)
+
|permissions=false
 +
|delay=0
 +
|additional_info=This function was added in 0.7
 +
|function_syntax= osSetPrimitiveParams(key prim, list rules)
 
|ossl_example=<source lang="lsl">
 
|ossl_example=<source lang="lsl">
// change target_uuid to any uuid of the prim you wish to change visibility by clicking.
+
//
 +
// osSetPrimitiveParams Script Exemple
 +
//
 +
 
 +
// Change target_uuid to any uuid of the prim you wish to change visibility by clicking.
 
string target_uuid = "69031c69-36a5-4031-bdc8-8ca8c37f8eda";
 
string target_uuid = "69031c69-36a5-4031-bdc8-8ca8c37f8eda";
 
vector default_color;
 
vector default_color;
 
+
 
default
 
default
 
{
 
{
 
     state_entry()
 
     state_entry()
 
     {
 
     {
 +
        llSay(PUBLIC_CHANNEL, "Touch to see osSetPrimitiveParams usage.");
 
         list prim_params = osGetPrimitiveParams(target_uuid, [PRIM_COLOR, ALL_SIDES]);
 
         list prim_params = osGetPrimitiveParams(target_uuid, [PRIM_COLOR, ALL_SIDES]);
 
         default_color = llList2Vector(prim_params, 0);
 
         default_color = llList2Vector(prim_params, 0);
 
     }     
 
     }     
   
+
 
     touch_start(integer number)
 
     touch_start(integer number)
 
     {
 
     {
Line 22: Line 30:
 
     }
 
     }
 
}
 
}
 
+
 
state alpha
 
state alpha
 
{
 
{
Line 36: Line 44:
 
* This function has the same behave as llSetPrimitiveParams except you can specify target prim anywhere in the scene.
 
* This function has the same behave as llSetPrimitiveParams except you can specify target prim anywhere in the scene.
 
* For general information about '''rules''', see [http://wiki.secondlife.com/wiki/LlSetPrimitiveParams llSetPrimitiveParams in SecondLife Wiki].
 
* For general information about '''rules''', see [http://wiki.secondlife.com/wiki/LlSetPrimitiveParams llSetPrimitiveParams in SecondLife Wiki].
* Check [[LSL Status/Functions|llSetPrimitiveParams implementation status]] to see the differences from llSetPrimitiveParams.
+
* If there is no prim with id '''prim_uuid''' in the scene, or the owner of the target prim is different from the owner of the scripted prim, it will fail without error.
* If there is no '''prim_uuid''' prim in the scene, or the owner of the target prim is differ from the owner of the scripted prim, it will fail without error.
+
* NOTE: As of OpenSimulator 0.7.1.1, this function don't work, results in script error([http://opensimulator.org/mantis/view.php?id=5560 #5560]).  It will be enable on 0.7.2-dev or later.
+
 
|
 
|
 
}}
 
}}
 +
== See Also ==
 +
* [[osSetPrimitiveParams]]
 +
* [[osGetPrimitiveParams]]

Latest revision as of 19:02, 5 December 2020

osSetPrimitiveParams(key prim, list rules)
  • Sets the parameters for the prim specified by prim_uuid according to rules.
  • This function has the same behave as llSetPrimitiveParams except you can specify target prim anywhere in the scene.
  • For general information about rules, see llSetPrimitiveParams in SecondLife Wiki.
  • If there is no prim with id prim_uuid in the scene, or the owner of the target prim is different from the owner of the scripted prim, it will fail without error.
Threat Level None
Permissions Use of this function is always disabled by default
Extra Delay 0 seconds
Example(s)
//
// osSetPrimitiveParams Script Exemple
//
 
// Change target_uuid to any uuid of the prim you wish to change visibility by clicking.
string target_uuid = "69031c69-36a5-4031-bdc8-8ca8c37f8eda";
vector default_color;
 
default
{
    state_entry()
    {
        llSay(PUBLIC_CHANNEL, "Touch to see osSetPrimitiveParams usage.");
        list prim_params = osGetPrimitiveParams(target_uuid, [PRIM_COLOR, ALL_SIDES]);
        default_color = llList2Vector(prim_params, 0);
    }     
 
    touch_start(integer number)
    {
        list rules = [PRIM_NAME, "HIDDEN", PRIM_COLOR, ALL_SIDES, default_color, 0.0];
        osSetPrimitiveParams(target_uuid, rules);
        state alpha;
    }
}
 
state alpha
{
    touch_start(integer number)
    {
        list rules = [PRIM_NAME, "VISIBLE", PRIM_COLOR, ALL_SIDES, default_color, 1.0];
        osSetPrimitiveParams(target_uuid, rules);
        state default;
    }
}
Notes
This function was added in 0.7


[edit] See Also

Personal tools
General
About This Wiki