Difference between revisions of "User:Bobbyb30 Swashbuckler/Example"
m (created example page, hopefully this will help someone out) |
m (some code) |
||
Line 76: | Line 76: | ||
</lsl> | </lsl> | ||
The following code will kill a prim after 5 seconds and will also change the color of the prim to random one. | |||
<lsl> | |||
//Modified by Bobbyb30 Swashbuckler March 19, 2009 | |||
//take note that llSetPrimitiveParams has a built in delay of .2 seconds | |||
//you can have several different params in one call | |||
float time = 5.0;//the time | |||
default | |||
{ | |||
on_rez(integer param) | |||
{ | |||
llResetScript(); | |||
} | |||
state_entry() | |||
{ | |||
llSetTimerEvent(time); | |||
//llSetPrimitiveParams([PRIM_PHYSICS, TRUE, PRIM_TEMP_ON_REZ, TRUE]); | |||
//llSetPrimitiveParams([PRIM_COLOR, ALL_SIDES, <llFrand(1),llFrand(1),llFrand(1)>, 1.0]); | |||
llSetPrimitiveParams( | |||
[PRIM_PHYSICS, TRUE, PRIM_TEMP_ON_REZ, TRUE, | |||
PRIM_COLOR, ALL_SIDES, <llFrand(1),llFrand(1),llFrand(1)>, 1.0 | |||
]); | |||
} | |||
timer() | |||
{ | |||
llDie(); | |||
llSleep(.1); | |||
llDie();//sometimes it doesn't die...so do it again | |||
} | |||
} | |||
</lsl> | |||
==License== | |||
All samples, code, documentation on this page are released into public domain. | All samples, code, documentation on this page are released into public domain. |
Latest revision as of 08:36, 19 March 2010
The following is an example of how to take and release controls of the owner on touch regardless of the prim this is in: <lsl> integer currentstate;//true have permissions, false do not have pemrissions
default { state_entry() { llPassTouches(TRUE);//any prim that is touched will trigger the touch here }
touch_start(integer ab) { if(llDetectedKey(0) == llGetOwner())//check if owner { currentstate = ~currentstate;//switch state
if(currentstate)
llRequestPermissions(llGetOwner(), PERMISSION_TAKE_CONTROLS);//request permissions else llReleaseControls();//release controls } } run_time_permissions (integer permission) { if(permission & PERMISSION_TAKE_CONTROLS)//if we were given permission { llOwnerSay("I've got control"); //llTakeControls(.....);//take controls //do stuff here } else//if we weren't given permission { llOwnerSay("I haven't gotten control"); //do stuff here } }
} </lsl>
The following is an example of how to take and release controls of the owner on touch of the prim that this script is in: <lsl> integer currentstate;//true have permissions, false do not have pemrissions
default {
touch_start(integer ab) { if(llDetectedKey(0) == llGetOwner())//check if owner { if(llDetectedLinkNumber(0) == llGetLinkNumber())//check if this prim { currentstate = ~currentstate;//switch state if(currentstate) llRequestPermissions(llGetOwner(), PERMISSION_TAKE_CONTROLS);//request permissions else llReleaseControls();//release controls } } } run_time_permissions (integer permission) { if(permission & PERMISSION_TAKE_CONTROLS)//if we were given permission { llOwnerSay("I've got control"); //llTakeControls(.....);//take controls //do stuff here } else//if we weren't given permission { llOwnerSay("I haven't gotten control"); //do stuff here } }
} </lsl>
The following code will kill a prim after 5 seconds and will also change the color of the prim to random one. <lsl> //Modified by Bobbyb30 Swashbuckler March 19, 2009
//take note that llSetPrimitiveParams has a built in delay of .2 seconds //you can have several different params in one call float time = 5.0;//the time default {
on_rez(integer param) { llResetScript(); } state_entry() { llSetTimerEvent(time); //llSetPrimitiveParams([PRIM_PHYSICS, TRUE, PRIM_TEMP_ON_REZ, TRUE]); //llSetPrimitiveParams([PRIM_COLOR, ALL_SIDES, <llFrand(1),llFrand(1),llFrand(1)>, 1.0]); llSetPrimitiveParams( [PRIM_PHYSICS, TRUE, PRIM_TEMP_ON_REZ, TRUE, PRIM_COLOR, ALL_SIDES, <llFrand(1),llFrand(1),llFrand(1)>, 1.0 ]); } timer() { llDie(); llSleep(.1); llDie();//sometimes it doesn't die...so do it again }
} </lsl>
License
All samples, code, documentation on this page are released into public domain.