OsLocalTeleportAgent
From OpenSimulator
Line 40: | Line 40: | ||
The avatar must have rights to enter the target position.<br> | The avatar must have rights to enter the target position.<br> | ||
The avatar must had granted PERMISSION_TELEPORT to the script or the owner of the prim containing the script must also be owner of the parcel where the avatar is currently on.<br> | The avatar must had granted PERMISSION_TELEPORT to the script or the owner of the prim containing the script must also be owner of the parcel where the avatar is currently on.<br> | ||
− | The function will | + | The function will fail silently if conditions are not meet.<br> |
<br> | <br> | ||
- If newPosition is outside the region the target will be at nearest region border.<br> | - If newPosition is outside the region the target will be at nearest region border.<br> |
Revision as of 14:16, 1 May 2019
void osLocalTeleportAgent(key agentID, vector newPosition, vector newVelocity, vector newLookat, integer optionFlags)
| |
Caution ! still experimental, subject to changes Teleports an avatar with uuid agentID to the specified newPosition within same region. - OptionFlags is a bit field: | |
Threat Level | None |
Permissions | see description |
Extra Delay | 0 seconds |
Example(s) | |
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 Local Teleport Active"); } touch_start(integer num_detected) { key avatar = llDetectedKey(0); llInstantMessage(avatar, "Teleporting you to : " + (string)LandingPoint); osLocalTeleportAgent(avatar, LandingPoint, ZEROVECTOR, <0,1,0>, 2); } } |