logo

Willkommen Gast! Um alle Funktionen zu aktivieren müssen Sie sich Anmelden.Neue Registrierungen sind deaktiviert.

Mitteilung

Icon
Error

Einloggen


Optionen
Ansicht
Gehe zum aktuellsten Beitrag Gehe zum letzten Ungelesenen
Offline MartinRJ Fayray  
#1 Geschrieben : Mittwoch, 17. September 2014 22:20:58(UTC)
MartinRJ Fayray

Rang: Ehrenmitglied

Ansehen:

Mitglied seit: 05.09.2014(UTC)
Beiträge: 84
Germany
Wohnort: Tulln und Rostock

Dankte: 1 mal(e)
Für ein Lagerfeuer nimmt man ein Prim, flacht es ab und macht die Seitenflächen unsichtbar (auf 100% Transparenz stellen), und gibt das untenstehende Skript hinein.
Nachdem man das Skript reingetan hat, dupliziert man das Prim, und stellt die Kopie quer zu dem ersten Prim auf - wie auf dem angehängten Screenshot dargestellt.
Dann klickt man auf das Prim für ein Menü, und wählt "start fire" aus dem Menü.
Um das Feuer zu stoppen, klickt man nochmal auf das Prim, und wählt "stop fire".

Alle Prims mit dem gleichen Skript, die sich in einem 10 Meter-Radius um das angeklickte Objekt herum befinden, hören auf den gleichen Befehl, damit man ein richtig großes Lagerfeuer machen kann!

Code:

key kT1 = "21eeb911-d57a-6a7b-44cd-b9d905860ac6";
key kT2 = "fcf3ce95-b924-c340-6f16-7f8c25196b1d";
key kT3 = "af80baaf-f7e1-c70b-2b1a-1faa6623d3a0";
key kT4 = "00c3fd93-75fe-3e59-3323-5856256d96c2";
list lFire = [kT1, kT2, kT3, kT4];
key kTEXTURE_INVISIBLE = "bd7d7770-39c2-d4c8-e371-0342ecf20921";
vector vREPEATS = <1.0, 1.0, 0.0>;
float fTimer = 0.03;
integer iStartCounter = 0;
integer iCounter = iStartCounter;
integer iMaxCounter = 3;

integer iCHANNEL = 23498;
string sSTART = "start fire";
string sSTOP = "stop fire";
string sTEXT = "Select an option:";
integer iLISTEN;

integer iCHANNEL_LOCAL = 23499;
default
{
    state_entry()
    {
        llListen(iCHANNEL_LOCAL, "", "", "");
    }
    touch_start(integer num_detected)
    {
        iLISTEN = llListen(iCHANNEL, "", llDetectedKey(0), "");
        llDialog(llDetectedKey(0), sTEXT, [sSTART, sSTOP], iCHANNEL);
    }
    listen(integer channel, string name, key id, string message)
    {
        llListenRemove(iLISTEN);
        if (message == sSTART)
        { //start fire
            if (channel != iCHANNEL_LOCAL)
            {
                llWhisper(iCHANNEL_LOCAL, sSTART);
            }
            llSetTimerEvent(fTimer);
        }
        else if (message == sSTOP)
        { //stop fire
            llSetTimerEvent(0.0);
            if (channel != iCHANNEL_LOCAL)
            {
                llWhisper(iCHANNEL_LOCAL, sSTOP);
            }
            llSetLinkPrimitiveParamsFast(LINK_THIS, [PRIM_TEXTURE, ALL_SIDES, kTEXTURE_INVISIBLE, vREPEATS, ZERO_VECTOR, 0.0]);
        }
    }
    timer()
    {
        key kTexture = llList2Key(lFire, iCounter++);
        llSetLinkPrimitiveParamsFast(LINK_THIS, [PRIM_TEXTURE, ALL_SIDES, kTexture, vREPEATS, ZERO_VECTOR, 0.0]);
        if (iCounter > iMaxCounter)
        {
            iCounter = iStartCounter;
        }
    }
}

Bearbeitet vom Moderator Freitag, 19. September 2014 09:33:41(UTC)  | Grund: Nicht angegeben

MartinRJ Fayray hat die folgenden Dateien hochgeladen:
feuerskript.jpg (71kb) 17x heruntergeladen.

Sie können diese Anhänge NICHT Ansehen/Herunterladen. Sie müssen Sich zunächst Registrieren.-
It is the mark of an educated mind to be able to entertain a thought without accepting it.

Wanna join the discussion?! Login to your forum account.Neue Registrierungen sind deaktiviert.

Rss Feed  Atom Feed
Benutzer, die gerade dieses Thema lesen
OceanSpiders 2.0
Das Forum wechseln  
Du kannst keine neue Themen in diesem Forum eröffnen.
Du kannst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge nicht löschen.
Du darfst deine Beiträge nicht editieren.
Du kannst keine Umfragen in diesem Forum erstellen.
Du kannst nicht an Umfragen teilnehmen.

Powered by YAF.NET | YAF.NET © 2003-2021, Yet Another Forum.NET
Diese Seite wurde in 0.074 Sekunden generiert.

Datenschutzrichtlinie
Haftungsausschluss
Impressum
Datenschutzerklärung
AGB, ToS
Kontakt