OsLocalTeleportAgent

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
Line 4: Line 4:
 
|delay=5
 
|delay=5
 
|additional_info=
 
|additional_info=
|function_syntax=void osLocalTeleportAgent(key agent, vector position, vector lookat, integer flags)
+
|function_syntax=void osLocalTeleportAgent(key agent, vector position, vector newVelocity, vector newLookat, integer flags)
 
|ossl_example=<source lang="lsl">
 
|ossl_example=<source lang="lsl">
 
string Destination = "LBSA Plaza"; // your target destination here (SEE NEXT LINES) Can Be
 
string Destination = "LBSA Plaza"; // your target destination here (SEE NEXT LINES) Can Be
Line 35: Line 35:
 
}</source>
 
}</source>
 
|description=Teleports an agent to the specified location within same region.  
 
|description=Teleports an agent to the specified location within same region.  
 
+
For osLocalTeleportAgent() to work, the owner of the prim containing the script must also be owner of the parcel where the avatar is currently on. The Avatar must have rights to enter the target position.  If this isn't the case then the function fails silently. Flags is a bit field:<br>
For osLocalTeleportAgent() to work, the owner of the prim containing the script must also be owner of the parcel where the avatar is currently on. The Avatar must have rights to enter the target position.  If this isn't the case then the function fails silently.
+
bit 0 (mask 1): use newVelocity / keep current <br>
 +
bit 1: use newLookAt / keep current lookAt<br>
  
 
|
 
|
 
}}
 
}}

Revision as of 13:41, 1 May 2019

void osLocalTeleportAgent(key agent, vector position, vector newVelocity, vector newLookat, integer flags)
Teleports an agent to the specified location within same region.

For osLocalTeleportAgent() to work, the owner of the prim containing the script must also be owner of the parcel where the avatar is currently on. The Avatar must have rights to enter the target position. If this isn't the case then the function fails silently. Flags is a bit field:
bit 0 (mask 1): use newVelocity / keep current
bit 1: use newLookAt / keep current lookAt

Threat Level Severe
Permissions ${XEngine|osslParcelO}ESTATE_MANAGER,ESTATE_OWNER
Extra Delay 5 seconds
Example(s)
string Destination = "LBSA Plaza"; // your target destination here (SEE NEXT LINES) Can Be
vector LandingPoint = <128,128,50>; // X,Y,Z landing point for avatar to arrive at
vector LookAt = <1,1,1>; // which way they look at when arriving
//
default
{
  on_rez(integer start_param)
  {
    llResetScript();
  }
  changed(integer change) // something changed, take action
  {
    if(change & CHANGED_OWNER)
      llResetScript();
    else if (change & 256) // that bit is set during a region restart
      llResetScript();
  }
  state_entry()
  {
    llWhisper(0, "OS Teleportal Active");
  }
  touch_start(integer num_detected) 
  {
    key avatar = llDetectedKey(0);
    llInstantMessage(avatar, "Teleporting you to : "+Destination);
    osTeleportAgent(avatar, Destination, LandingPoint, LookAt); 
  }
}
Personal tools
General
About This Wiki