Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Ampel.lsl
#3
Licht erweitert für Lichtorgeln und so´n Zeugs.
PHP-Code:
// Farbwechsler, Lichorgel, Psycho
// Variablen für den Farbwechsel
float redValue 0.0;
float greenValue 0.0;
float blueValue 0.0;
float mytime 0.1;
float helligkeit 0.1;
float transparenz 1.0;

// Variablen für Licht Helligkeit und Reichweite etc.
integer anaus TRUE// TRUE Ein, FALSE Aus     
vector lichtfarbe =  <1.01.01.0>; // Lineare Farbe in RGB <R, G, B> (<0.0, 0.0, 0.0> = black, <1.0, 1.0, 1.0> = white) Zufall <redValue, greenValue, blueValue>   
float  intensiv 1.0// Einstellbereich 0.0 to 1.0     
float  radius 20.0// Einstellbereich 0.1 to 20.0     
float  abfallwert 0.1// Einstellbereich 0.01 to 2.0 



// Flag, ob der Farbwechsel aktiv ist
integer isColorCycling FALSE;

// Funktion, um die Farbe zufällig zu setzen
setRandomColor() {
    
// Zufällige Werte für Rot, Grün und Blau im Bereich von 0.001 bis 1.000
    
redValue llFrand(0.999) + 0.001;   // Zufälliger Wert für Rot im Bereich 0.001 bis 1.000
    
greenValue llFrand(0.999) + 0.001// Zufälliger Wert für Grün im Bereich 0.001 bis 1.000
    
blueValue llFrand(0.999) + 0.001;  // Zufälliger Wert für Blau im Bereich 0.001 bis 1.000
    
    // Setzt die zufällige Farbe
    
llSetLinkPrimitiveParamsFast(LINK_ROOT, [ PRIM_COLORALL_SIDES, <redValuegreenValueblueValue>, transparenzPRIM_GLOWALL_SIDEShelligkeit ]);
    
// Licht an
    
llSetLinkPrimitiveParamsFast(LINK_ROOT, [ PRIM_POINT_LIGHTanaus, <redValuegreenValueblueValue>, intensivradiusabfallwert ]);
}

default {
    
state_entry() {
        
// Initiale Farbe auf Schwarz setzen (alle Farben 0.0)
        
llSetLinkPrimitiveParamsFast(LINK_ROOT, [ PRIM_COLORALL_SIDES, <0.00.00.0>, transparenzPRIM_GLOWALL_SIDEShelligkeit ]);
        
// Licht aus
        
llSetLinkPrimitiveParamsFast(LINK_ROOT, [ PRIM_POINT_LIGHTFALSE, <0.00.00.0>, intensivradiusabfallwert ]);
    }

    
touch_start(integer total_number) {
        
// Umschalten des Farbwechselmodus
        
isColorCycling = !isColorCycling;

        if (
isColorCycling) {
            
// Zufällige Farbe sofort setzen
            
setRandomColor();
            
llSetTimerEvent(mytime);  // Timer für kontinuierliche Farbänderung
        
} else {
            
llSetTimerEvent(0.0);  // Timer stoppen
            // Zurück auf schwarze Farbe setzen, wenn der Wechselmodus gestoppt wird
            
llSetLinkPrimitiveParamsFast(LINK_ROOT, [ PRIM_COLORALL_SIDES, <0.00.00.0>, transparenzPRIM_GLOWALL_SIDEShelligkeit ]);
            
// Licht aus
            
llSetLinkPrimitiveParamsFast(LINK_ROOT, [ PRIM_POINT_LIGHTFALSE, <0.00.00.0>, intensivradiusabfallwert ]);
        }
    }

    
timer() {
        
// Wenn der Farbwechselmodus aktiv ist, setze alle Farben zufällig
        
if (isColorCycling) {
            
setRandomColor(); // Zufällige Farbe setzen
        
}
    }

Ein Metaversum sind viele kleine Räume, die nahtlos aneinander passen,
sowie direkt sichtbar und begehbar sind, als wäre es aus einem Guss.



Zitieren


Nachrichten in diesem Thema
Ampel.lsl - von Manfred Aabye - 14.11.2024, 17:27
RE: Ampel.lsl - von Manfred Aabye - 14.11.2024, 19:03
RE: Ampel.lsl - von Manfred Aabye - 14.11.2024, 20:36

Gehe zu:


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