Difference between revisions of "RegionSitTeleport"

From Second Life Wiki
Jump to navigation Jump to search
m (some minor readability improvements)
m (changed <0.0, 0.0, 0.0, 1.0> to ZERO_ROTATION)
Line 11: Line 11:
//          Released into the Public Domain
//          Released into the Public Domain
//  I'm sick and tired of WarpPos and <0,0,0> bug.
//  I'm sick and tired of WarpPos and <0,0,0> bug.
//                    2/26/2012
//                    Feb 26th 2012
////////////////////////////////////////////////////////
////////////////////////////////////////////////////////


Line 37: Line 37:
     state_entry()
     state_entry()
     {
     {
         llSitTarget(<0.0, 0.0, 0.1>, <0.0, 0.0, 0.0, 1.0>);
         llSitTarget(<0.0, 0.0, 0.1>, ZERO_ROTATION);
     }
     }
}
}
</lsl>
</lsl>
{{LSLC|Library|RegionSitTeleport}}
{{LSLC|Library|RegionSitTeleport}}

Revision as of 13:05, 1 November 2012

RegionSitTeleport

It's a very simple and clean script to make quick sit/unsit teleport to given position based on reading current prim's description. <lsl> //////////////////////////////////////////////////////// // Written by Vincent Nacon // Released into the Public Domain // I'm sick and tired of WarpPos and <0,0,0> bug. // Feb 26th 2012 ////////////////////////////////////////////////////////

//What to do? //Just place position (in vector form) where you want to drop avatar at in the prim's description.

default {

   changed(integer change)
   {
       vector targetPosition = (vector)llGetObjectDesc();
       key sittingAvatar = llAvatarOnSitTarget();
       if(sittingAvatar)
       {
           vector positionToReturnTo = llGetPos();
           llSetRegionPos(targetPosition);
           llUnSit(id);
           llSetRegionPos(positionToReturnTo);
       }
   }
   state_entry()
   {
       llSitTarget(<0.0, 0.0, 0.1>, ZERO_ROTATION);
   }

} </lsl>