// Teleport Sit Hack // Created by Water Rogers for IBM/Opensource // Purpose // -------------------------------------------------------------- // This is a quick example of how you can make a teleporter type // object using the "Sit Hack". // Requirements // -------------------------------------------------------------- // A single prim is all that is necessary for this example. // Usage // -------------------------------------------------------------- // We set up this object to "Sit on object when left clicked" making // it easier on the user. Otherwise, you could right click and chose // "sit" from the pie menu. // GLOBALS // -------------------------------------------------------------- string g_SitText = "Teleport"; // This changes the text on the pie menue when rightclicked on the object vector g_SitOffset = <0.0, 0.0, 10.0>; // This is the sit offset, also considered the teleport location from the object // EVENTS // -------------------------------------------------------------- default { state_entry() { // Set up the llSitTarget() and sit text first llSetSitText(g_SitText); llSitTarget(g_SitOffset, ZERO_ROTATION); } changed(integer change) { key id = llAvatarOnSitTarget(); if(change & CHANGED_LINK) { // We detect that the avatar sat on the object, so we // unsit them right away thus giving the illusion of a // teleport. // Adjust the sleep time depending on the distance of // the teleport. The further the teleport, the higher // the sleep value should be. Note that the furtherst // 'teleport' distance is 300 meters. llSleep(1); llUnSit(id); } } }