Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

archiv:opensim:downloads:scripts:fireworks [2024/01/09 22:25] – Externe Bearbeitung 127.0.0.1archiv:opensim:downloads:scripts:fireworks [Unbekanntes Datum] (aktuell) – Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1
Zeile 1: Zeile 1:
 +===== Fireworks =====
 +
 +<code>
 +//inspired by Xah Lee (http://xahlee.org/sl/)
 + 
 + 
 +default
 +{
 +    state_entry() {
 +    llListen(0, "", NULL_KEY, "");
 +    }
 +    listen(integer channel, string name, key id, string message) {
 +        if (message == "off") {
 +        llParticleSystem([]);
 +        }
 +        else {
 +            if (message == "on") {
 +            integer bounce = 0;
 +            integer glow = 1;        
 +            integer interpColor = 1;    
 +            integer interpSize = 1;    
 +            integer followSource = 0;    
 +            integer followVel = 1;
 +            integer wind = 1;        
 +            integer pattern = PSYS_SRC_PATTERN_EXPLODE;
 +            key target = "";
 +            float age = 9.0;
 +            float maxSpeed = 3.0;            
 +            float minSpeed = 3.0;            
 +            string texture = "168e6813-096e-07ea-97ae-fd416826f627";           
 +            float startAlpha = 0.9;           
 +            float endAlpha = 0.0;            
 +            float SC1 = llFrand(1.0);                //makes the color random
 +            float SC2 = llFrand(1.0);               //you can comment out this section
 +            float SC3 = llFrand(1.0);                //and set the start color to your choice
 +            vector startColor = <SC1,SC2,SC3>;       //change this to set a particular start color
 +            vector endColor = <0.0,0.0,1.0>;      
 +            vector startSize = <0.3,0.3,0>;     
 +            vector endSize = <0.1,0.1,0>;       
 +            vector push = <0.0,0.0,-0.8>;          
 +            float life = 0;           
 +            integer count = 100;       
 +            float rate = 3.5;                         //sets the rate of bursts
 +            float radius = 0.1;       
 +            float outerAngle = 1;   
 +            float innerAngle = 0.9;    
 +            vector omega = <0,0,1>;
 +            integer flags = 0;
 +            if (target == "owner") target = llGetOwner();
 +            if (target == "self") target = llGetKey();
 +            if (glow == 1) flags = flags | PSYS_PART_EMISSIVE_MASK;
 +            if (bounce == 1) flags = flags | PSYS_PART_BOUNCE_MASK;
 +            if (interpColor == 1) flags = flags | PSYS_PART_INTERP_COLOR_MASK;
 +            if (interpSize == 1) flags = flags | PSYS_PART_INTERP_SCALE_MASK;
 +            if (wind == 1) flags = flags | PSYS_PART_WIND_MASK;
 +            if (followSource == 1) flags = flags | PSYS_PART_FOLLOW_SRC_MASK;
 +            if (followVel == 1) flags = flags | PSYS_PART_FOLLOW_VELOCITY_MASK;
 +            if (target != "") flags = flags | PSYS_PART_TARGET_POS_MASK;
 +            llParticleSystem([  PSYS_PART_MAX_AGE,7,
 +                PSYS_PART_FLAGS,flags,
 +                PSYS_PART_START_COLOR, startColor,
 +                PSYS_PART_END_COLOR, endColor,
 +                PSYS_PART_START_SCALE,startSize,
 +                PSYS_PART_END_SCALE,endSize,
 +                PSYS_SRC_PATTERN, pattern,
 +                PSYS_SRC_BURST_RATE,(float)rate,
 +                PSYS_SRC_ACCEL, push,
 +                PSYS_SRC_BURST_PART_COUNT,count,
 +                PSYS_SRC_BURST_RADIUS,(float)radius,
 +                PSYS_SRC_BURST_SPEED_MIN,(float)minSpeed,
 +                PSYS_SRC_BURST_SPEED_MAX,(float)maxSpeed,
 +                PSYS_SRC_TARGET_KEY,target,
 +                PSYS_SRC_INNERANGLE,(float)innerAngle,
 +                PSYS_SRC_OUTERANGLE,(float)outerAngle,
 +                PSYS_SRC_OMEGA, omega,
 +                PSYS_SRC_MAX_AGE, (float)life,
 +                PSYS_SRC_TEXTURE, texture,
 +                PSYS_PART_START_ALPHA, (float)startAlpha,
 +                PSYS_PART_END_ALPHA, (float)endAlpha]);
 +            }
 +        }
 +    }
 +}
 +</code>
  
Navigation

Alternative Startseite
Helpdesk
Links
Maps
Radio
Suchmaschine


Drucken/exportieren