Second Life Copybot
Pose Stand With A Nice Hello from You - Printable Version

+- Second Life Copybot (https://secondlifecopybot.com)
+-- Forum: SECOND LIFE PRODUCTS (https://secondlifecopybot.com/forum-1.html)
+--- Forum: SCRIPTS (https://secondlifecopybot.com/forum-1022.html)
+---- Forum: SCRIPTS (https://secondlifecopybot.com/forum-8.html)
+----- Forum: Avatar Augmentation Scripts (https://secondlifecopybot.com/forum-51.html)
+----- Thread: Pose Stand With A Nice Hello from You (/thread-3762.html)



Pose Stand With A Nice Hello from You - YoungMoney - 04-29-2013

PHP Code:
//Pose Stand With A Nice Hello from You
//Second Life Linden Scripting Language Library (http://wiki.secondlife.com/wiki/Category:LSL_Library)
//Minor Addition by Chimera Firecaster (http://chimerafire.wordpress.com/) - 05/11/2010

//Use:
//  1. Rez an cylinder and create a posing stand from it.
//  2. Give the cylinder a name.  For example, if you have a store named Main Street
//     Clothing, you would name it Main Street Clothing Posing Stand.  If you are
//     making this for a friend, then use your name:  Mary Lamb Posing Stand.  The
//     name of the posing stand will appear before the greeting message.
//  3. Place this script into the "Contents" of the Object
//  4. To edit the script, double-click on its name in "Contents'
//  5. Look for "REPLACE YOUR MESSAGE..." below and replace
//     the text with your own message.
//  6. On the script editing dialog you will see "Mono"
//     Make sure it is checked. Then click on Save.

//Note: this is a FREE script.  It is given generously to the Second Life
//   community without the expectation of anything in return. It may be
//   distributed, but please do not charge for it.  That's bad form.  Besides
//   dishonoring the kindness of others will most certainly bring you bad karma.
//-----Do Not Remove Above Header

key mkLoungingAgentKey NULL_KEY;
integer miPermissionsAcquired FALSE;

 default
 {
 
state_entry()
 {
 
//overriden sit target
 //lower them a bit
 
vector vLoungeTarget = <0.000.001.00>;

 
rotation rX;
 
rotation rY;
 
rotation rZ;
 
rotation r;

 
//build rotations
 //Note: this is broken out like this to simplify the
 //        process of finding the correct sit angle.  I
 //        use the following form until I have the rotation
 //        that I want perfect, and then I simply
 //        hardcode the perfected quaterion and remove   
 //        this mess.
 //
 
rX llAxisAngle2Rot( <1,0,0>, DEG_TO_RAD);         //cartwheel
 
rY llAxisAngle2Rot( <0,1,0>, DEG_TO_RAD);       //sumersault
 
rZ llAxisAngle2Rot( <0,0,1>, DEG_TO_RAD);       //turn in place

 //combine rotations
 
rX rY rZ;

 
//override 'sit' on pie menu
 
llSetSitText"Stand" );

 
//override default sit target and rotation on prim
 
llSitTargetvLoungeTarget);
 }

 
changed(integer change)
 {
 if (
change CHANGED_LINK)
 {
 
key agent llAvatarOnSitTarget();
 if ( 
mkLoungingAgentKey == NULL_KEY && agent != NULL_KEY )
 {

 
//changed user
 //cache new user key and request their permissions
 
mkLoungingAgentKey agent;
 
llRequestPermissions(mkLoungingAgentKey,PERMISSION_TRIGGER_ANIMATION);
 }
 else if ( 
mkLoungingAgentKey != NULL_KEY && agent == NULL_KEY)
 {

 
//user is getting up
 
if ( miPermissionsAcquired )
 {

 
//restore anims
 
llStopAnimation("turn_180");

 }

 
//reset the script to release permissions
 
llResetScript();
 }
 }        
 }

 
run_time_permissions(integer parm)
 {
 if(
parm == PERMISSION_TRIGGER_ANIMATION)
 {
 
//REPLACE YOUR MESSAGE IN THE AREAS BETWEEN QUOTES " xxxxx "  " xxxxx "
 //Watch carefully that you only replace the text between quotes
 
llInstantMessage(mkLoungingAgentKey,"Hello " llKey2Name(mkLoungingAgentKey) + ".  Thanks for using our posing stand and have a wonderful day");

 
//set permission flag
 
miPermissionsAcquired TRUE;

 
//cancel the sit anim
 
llStopAnimation("sit");

 
llStartAnimation("turn_180");
 }
 }