Skriptsammlung

Aus Emu Wiki deutsch
Wechseln zu: Navigation, Suche

Hier entsteht eine Sammlung einfacher Skripte für Second Life. Ihr möchte eure Skripte hier veröffentlichen? Schreibt dazu einfach in Second Life eine IM an Nelli Bayn.


Drehungen

[Top]

Prims oder Objekte in SL können sich per Skript drehen.

Drehung Simple - Geschwindigkeit im Skript anpassbar
Dieses Skript findet ihr auch in euren Inventat in der Bibliothek unter dem Namen Rotation Script
default
{
    state_entry(){
       // <0,0,1> ist die Achse, um die sich das Objekt dreht, in diesem Fall also die z-Achse
       // PI ist die Geschwindigkeit
       // 1.0 ist der Geschwindigkeitszuwachs
       // nachzulesen unter: http://wiki.secondlife.com/wiki/LlTargetOmega
       llTargetOmega(<0,0,1>,PI,1.0);
    }
}


Hovertexte

[Top]

Hovertexte eigenen sich für Nachrichten über dem Kopf des Avatar oder auch über Objekten.

Hovertext Simple - Text und Farbe im Skript anpassbar
// ----------------------------------------------------------
//
// <EMU> Hovertext Simple
// 
// ----------------------------------------------------------
//
// scripted by Nelli Bayn 2012-07, any questions IM me
// 
// ----------------------------------------------------------
// - zeigt einen einfachen Hovertext über dem Objekt
// - Text und Farbe im Skript veränderbar
// ----------------------------------------------------------
 
string text = "asds"; // hier kann eingetragen werden, welcher Text über dem Prim erscheinen soll
vector color = <1,1,1>; // hier kann die Farbe eingetragen werden
 
//***********************************************************************************
// nach dieser Zeile nichts mehr verändern, wenn ihr nicht wisst was ihr tut
//***********************************************************************************
 
 
default
{
    state_entry(){
       llSetText(text, color, 1.0);
    }
}
Hovertext Color & Text - Farbe und Text durch den Besitzer veränderbar per Chat-Kommando (blue, orange, cyan, pink, green, red, white, yellow, purple)
// ----------------------------------------------------------
//
// <EMU> Hovertext Simple 2
// 
// ----------------------------------------------------------
//
// scripted by Nelli Bayn 2012-07, any questions IM me
// 
// ----------------------------------------------------------
// - zeigt einen einfachen Hovertext über dem Objekt
// - text und Farbe durch Chat-Kommandos veränderbar
// ----------------------------------------------------------
string command = "";
string person = "";
key owner;
 
default 
{
    state_entry(){
        owner = ;
        llListen(0, "", owner, "");
        llSetText("Setze einen neuen Text mit: title <Farbname> <Text>", <0,1,0>, 1.0);   
    }
 
    attach(key attached){
        if(attached != NULL_KEY){
            llInstantMessage(owner, "Setze einen neuen Text mit: title <Farbname> <Text>");
            llInstantMessage(owner, "Um den Text zu löschen: title off");
            llInstantMessage(owner, "<Farbname> kann sein: weiss, schwarz, rot, grün, blau, pink, türkis, lila, gelb, orange");
            llResetScript();
        }
    }
 
    listen(integer channel, string name, key id, string message){
 
        list strings = llParseString2List(message,[" "],[]);
        string command = llList2String(strings,0);
        string string1 = llList2String(strings,1);
 
        if(command=="title"){
            vector color=<0,0,0>;
            if(string1=="blau") color=<0,0,1>;
            else if(string1=="orange") color=<1,0.5,0>;
            else if(string1=="türkis") color=<0,1,1>;
            else if(string1=="pink") color=<1,0,1>;
            else if(string1=="grün") color=<0,1,0>;
            else if(string1=="rot") color=<1,0,0>;
            else if(string1=="weiss") color=<1,1,1>;
            else if(string1=="gelb") color=<1,1,0.1>;
            else if(string1=="lila") color=<0.7,0,0.7>;
            else color=<0,0,0>;
 
            string title = "";
            integer i;
            for(i=2; i<=12; i++){
                if(llStringLength(llList2String(strings,i)))
                    title = title + llList2String(strings,i) + " ";
            }
            if(title == "off") llSetText("",<0,0,0>,1.0);
            else llSetText(title, color, 1.0);  
        }   
    }
}


Texturen

[Top]

Texturen sind Bilder auf Prims, Sculpties oder Meshes und können mit Skripten gesetzt, verändert oder bewegt werden.

Texturanimation Simple - bewegt die Textur auf dem Prim
Dieses Skript findet ihr auch in euren Inventat in der Bibliothek unter dem Namen anim SMOOTH
// anim SMOOTH Script
// von Doug Linden
// Übersetzung von Nelli Bayn
 
// Die // bedeuten alles dahinter sind Kommentare die das Skript ignoriert
default
{
    state_entry(){   ist eine Funktion, die eine Textur auf einem prim bewegt
        llSetTextureAnim(ANIM_ON | SMOOTH | LOOP, ALL_SIDES,1,1,1.0, 1,0.25);
        // Diese Einstellungen bewegen die Textur auf allen Faces (Seiten) des Prims
    }
}


Uhrzeit

[Top]
Anzeige der Sl Uhrzeit als Hovertext
Dieses Skript findet ihr auch in euren Inventat in der Bibliothek unter dem Namen HoverText Clock
// HoverText Clock Script
// von Ben Linden
// übersetzt von Nelli Bayn
//
// Packe dieses Skript in ein Objekt um die SL Zeit anzuzeigen
 
 
// Variablen
string smin; // Minunten
string sseconds; //Sekunden
 
default
{
    state_entry(){
        // llSetTimerEvent() ist eine Funktion die einen
        // Zeitintervall beginnt
        llSetTimerEvent(2.0);  // rufe einen Intervall von 2 Sekunden auf
    }
 
    // alles in dieser Funktion wird nach dem Zeitintervall ausgeführt:
    timer(){
       // llFloor rundet die übergebeben Zahl ab.
       // llGetWallClock gibt die aktuelle Zeit zurück
       integer seconds = llFloor(llGetWallclock());
 
       // Minunten ausrechnen
       integer min = llFloor(seconds/60);
 
       // verbleibende Sekunden ausrechnen
       seconds = seconds - (min*60);
 
       // Stunden ausrechnen
       integer hour = llFloor(min/60);
 
       // verbleibende Minunten ausrechnen
       min = min - (hour*60);
 
       if(hour > 12) {hour = hour - 12;} // Wenn die Stunden größer sind als 12 dann 12 abziehen (13 Uhr wird zu 1 Uhr)
       string shour = (string)hour; // aus der Zahl der Stunden machen wir eine Zeichenkette
       if(min < 10) smin = "0"+(string)min; // Wenn es weniger als 10 Minunten sind, eine 0 davorpacken (aus 9 wird 09)
       else smin = (string)min;
       if(seconds < 10) sseconds = "0"+(string)seconds; // Wenn es weniger als 10 Sekundensind, eine 0 davorpacken (aus 9 wird 09)
       else sseconds = (string)seconds;
 
 
       string time = shour + ":" + smin + ":" + sseconds; // Zeichenkette zusammenbauen
 
       // llSetText zeigt die zeit über dem Objekt in schwarz an
       llSetText(time, ZERO_VECTOR, 1.0); 
    }
 
}