Silberwelten Forum

Normale Version: Gruss Bot mit resetfestem Besucherzähler
Sie sehen gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Gruss Bot mit resetfestem Besucherzähler


[attachment=611]


Das Script dient zum Begrüßen neuer Avatare am Sim Eingangspunkt.
Aktiv wird es wenn sich ein Ava in das Volumen des umgebenden Prims bewegt.
Es merkt sich den jeweiligen Avatar um den nicht zweimal zu Grüßen und zu Zählen.

Als dauerhafter Zähler der auch Scriptreset überlebt dient das Beschreibungs Feld des Prims.
Ihr könnt also über Prim Bearbeiten das Feld jederzeit auslesen.

Sollte da kein gültiger Wert drin stehen so schreibt das Script initial 0 hinein.

Anleitung:

Rezzt einen unverformten Primwürfel um den Berechnungsaufwand zu minmimieren (unverformte Würfel haben nur 6 Kollisionsflächen).
Skaliert den so groß das man bei Eintritt in die Sim diesen Berühren muss.
Er kann auch um den TP Eintrittspunkt herum gerezzt werden weil Avas erkannt werden die sich innerhalb befinden.

Da beim chat der Name des Prims mit ausgegeben wird, benennt das Prim sinnvoll um - zum Beispiel in "Waechter der Unterwelt".
Macht den Würfel nun PHANTOM und legt danach das Script hinein.
Nun macht den Würfel 100% transparent.

Im Bild seht ihr rot den Würfel mit dem Script drin.  ( mit Control ALT T temporär sichtbar gemacht)

[attachment=612]

Wenn nun ein Ava in das Volumen des Würfels läuft, per TP hineinkommt, oder gerezzt wird, wird das Script einmalig aktiv.

Zum Test empfiehlt es sich 2 Avas abwechselnd zu verwenden.

Wenn ihr den Zähler nicht mit 0 starten lassen wollt, tragt einen Startwert in die Primbeschreibung ein, und resettet danach das Script.


Code:
// P426 GrussBOT mit resetfesten Besucherzähler by Tron 11/2021   V1.0
// Der dauerhafte BesucherZähler ist im Beschreibungsfeld des Prims untergebracht.
// Bei Scritptart wird dieses ausgelesen, und bei jedem neuen Besucher wieder um 1 erhöht zurückgeschrieben.
// Das Script merkt sich nur den jeweils letzen User um diesen nicht doppelt zu Grüßen und Zählen.

string text1 = "Willkommen and der Pforte des Hades Seele Nr: ";
string text2 = ", Alias ";
string text3 = "Folgt mir zum Fährmann, der bringt euch in die Unterwelt,";

string  lastuser;
integer usercounter = 0;

default
{
    state_entry()
    {
        llVolumeDetect(TRUE);
        usercounter  = (integer)llGetObjectDesc();                   // Prim Beschreibungsfeld auslesen und in Zahl wandeln
        if (!usercounter) {llSetObjectDesc( (string)usercounter );}  // Prim Beschreibungsfeld mit 0 initialisieren wenn kein gültiger Eintrag vorhanden
    }

    collision_start(integer total_number)
    {
        string user = llDetectedKey(0);
        string name = llGetDisplayName(user);

        if(name != lastuser)
        {
            usercounter++;
            llSetObjectDesc( (string)usercounter );
            llSay(0,"\n" + text1  +usercounter + text2 + name);
            llSleep(7.0);
            llSay(0,"\n" + text3 );
            lastuser = name;
        }
    }
}

Besonderheiten:     llVolumedetect(TRUE) ermöglicht auch Kollisions Erkennung bei einem Phantom Prim.


Viel Spaß

Tron

Loru Destiny

Ich habe das script ausprobiert: passt, wackelt und hat Luft :-) begrüße nun damit die Besucher im artdestiny grid.
Super Loru,

und danke für die Rückmeldung, so weiss ich das sich beim posten kein Fehler eingeschlichen hat.
Ja, habe es auch probiert und funktioniert sehr gut. Wäre es denn möglich, statt der Textausgabe einen kleinen Sound abzuspielen?
ja klar läßt sich machen Lukas. 
Aber ich poste das als neues Thema weil man es sonst nicht unter dieser Überschrift vermutet, und daher nie findet.

Hier ist der Link:  https://service-silberwelten.de/showthread.php?tid=165