This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

OSSL Teleporter
#1
Opensim Teleporter mit OSSL Befehl

Das folgende Script dient als Teleporter nur innerhalb Opensim.
Es nutzt OSSL Befehle die auf dem Grid freigeschalten sein müssen.

Der Teleporter funktioniert dann für beliebige User, und frägt vor dem Teleport nicht nach.
Als Optionen kann die Aktivierung des Teleports per Berührung (Click) oder per Kollision mit dem Ava ausgelöst werden.

Teleports funktionieren im eigenen Grid , aber auch in fremde Grids hinein.
Details zur Einstellung stehen im Script.

Code:
// P504 Teleport bei Berührung oder Kollision    V1.0 by Tron
// Damit dies Script funktioniert müssen OSSL Befehle im Grid freigesschalten sein!


// gewünschte Modi einstellen
integer Beruehrungs_Teleporter  = TRUE;    // TRUE / FALSE je nach Wunsch
integer Kollisions_Teleporter   = TRUE;    // TRUE / FALSE je nach Wunsch

// Teleport Ziel einstellen
// string Zielsim = "Isla Bonita";          // vereinfachte Zielsim Eingabe, geht nur wenn Ziel im gleichen Grid liegt
string Zielsim = "135.181.6.163:9000:Isla Bonita";  // Zielsim Eingabe über GRID IP. Geht wenn Ziel im gleichen Grid oder fremden Grid liegt
// string Zielsim = "Virtualafrica.spdns.org:9000:Isla Bonita";   // Zielsim Eingabe über Domänene Namen. Geht wenn Ziel im gleichen Grid oder fremden Grid liegt


vector Landepunkt = <128,128,50>;         // X,Y,Z Landepunkt des Avatars auf Zielsim
vector Blickrichtung = <0,0,0>;         // Blickrichtung des Avas nach dem Teleport

// ENDE BENUTZER PARAMETER

key    avatar;

default
{
    on_rez(integer start_param)
    {
        llResetScript();
    }

    state_entry()
    {
        if ( Beruehrungs_Teleporter) llVolumeDetect(TRUE); // Startet llVolumeDetect für Kollisions Erkennung
        else llVolumeDetect(FALSE);
    }

    // Teleport bei Kollision mit dem Objekt.
    collision_start(integer total_number)
    {
        if ( Kollisions_Teleporter )
        {
            avatar = llDetectedKey(0);
            llInstantMessage(avatar, "Teleportiere dich nach : "+Zielsim);
            osTeleportAgent(avatar, Zielsim, Landepunkt, Blickrichtung);
        }
    }

    // Oder Teleport bei Berührung
    touch_start(integer total_num)
    {
        avatar = llDetectedKey(0);
        llInstantMessage(avatar, "Teleportiere dich nach : "+Zielsim);
        osTeleportAgent(avatar, Zielsim, Landepunkt, Blickrichtung);
    }
}


Wie immer ist das Script schlank gehalten und dokumentiert damit es als Basis für eure eigenen Entwicklungen dienen kann.

Viel Spaß

Tron
Zitieren


Nachrichten in diesem Thema
OSSL Teleporter - von Tron Mcp - 19.10.2021, 20:19
RE: OSSL Teleporter - von ThunderTower - 20.10.2021, 09:56
RE: OSSL Teleporter - von Tron Mcp - 21.10.2021, 11:02

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste