Second Life Copybot
Blue Electric Bling - Printable Version

+- Second Life Copybot (https://secondlifecopybot.com)
+-- Forum: SECOND LIFE PRODUCTS (https://secondlifecopybot.com/forum-1.html)
+--- Forum: SCRIPTS (https://secondlifecopybot.com/forum-1022.html)
+---- Forum: SCRIPTS (https://secondlifecopybot.com/forum-8.html)
+----- Forum: PARTICLES (https://secondlifecopybot.com/forum-52.html)
+----- Thread: Blue Electric Bling (/thread-8139.html)



Blue Electric Bling - machinecode - 09-19-2014

PHP Code:
//BLING PARTICLES FOR BLINGY JEWELS AND STUFF Adapted by Stormy Roentgren

//For those not knowing how to alter particle scripts, the parameters you'll want to alter here (if you choose to) are the "float rate" and the start and end sizes.


// Particle Script 0.3
// Created by Ama Omega
// 10-10-2003

// Mask Flags - set to TRUE to enable
integer glow TRUE;            // Make the particles glow
integer bounce FALSE;          // Make particles bounce on Z plan of object
integer interpColor TRUE;     // Go from start to end color
integer interpSize TRUE;      // Go from start to end size
integer wind FALSE;           // Particles effected by wind
integer followSource FALSE;    // Particles follow the source
integer followVel TRUE;       // Particles turn to velocity direction

// Choose a pattern from the following:
// PSYS_SRC_PATTERN_EXPLODE
// PSYS_SRC_PATTERN_DROP
// PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY
// PSYS_SRC_PATTERN_ANGLE_CONE
// PSYS_SRC_PATTERN_ANGLE
integer pattern PSYS_SRC_PATTERN_EXPLODE;

// Select a target for particles to go towards
// "" for no target, "owner" will follow object owner 
//    and "self" will target this object
//    or put the key of an object for particles to go to
key target "";

// Particle paramaters
float age .2;                  // Life of each particle
float maxSpeed .1;            // Max speed each particle is spit out at
float minSpeed .1;            // Min speed each particle is spit out at
string  texture             "f72c27b9-db37-71c6-eb6c-cac85815e854";                 // Texture used for particles, default used if blank
float startAlpha 10;           // Start alpha (transparency) value
float endAlpha 10;           // End alpha (transparency) value
vector startColor = <1,1,1>;    // Start color of particles <R,G,B>
vector endColor = <1,1,1>;      // End color of particles <R,G,B> (if interpColor == TRUE)
vector startSize = <.04,.25,.01>;     // Start size of particles 
vector endSize = <.03,.25,.01>;       // End size of particles (if interpSize == TRUE)
vector push = <0,0,0>;          // Force pushed on particles

// System paramaters
float rate 5;            // How fast (rate) to emit particles
float radius .0;          // Radius to emit particles for BURST pattern
integer count 5;        // How many particles to emit per BURST 
float outerAngle 1.54;    // Outer angle for all ANGLE patterns
float innerAngle 1.55;    // Inner angle for all ANGLE patterns
vector omega = <0,0,10>;    // Rotation of ANGLE patterns around the source
float life 0;             // Life in seconds for the system to make particles

// Script variables
integer flags

updateParticles()
{
    
flags 0;
    if (
target == "owner"target llGetOwner();
    if (
target == "self"target llGetKey();
    if (
glowflags flags PSYS_PART_EMISSIVE_MASK;
    if (
bounceflags flags PSYS_PART_BOUNCE_MASK;
    if (
interpColorflags flags PSYS_PART_INTERP_COLOR_MASK;
    if (
interpSizeflags flags PSYS_PART_INTERP_SCALE_MASK;
    if (
windflags flags PSYS_PART_WIND_MASK;
    if (
followSourceflags flags PSYS_PART_FOLLOW_SRC_MASK;
    if (
followVelflags flags PSYS_PART_FOLLOW_VELOCITY_MASK;
    if (
target != ""flags flags PSYS_PART_TARGET_POS_MASK;

    
llParticleSystem([  PSYS_PART_MAX_AGE,age,
                        
PSYS_PART_FLAGS,flags,
                        
PSYS_PART_START_COLORstartColor,
                        
PSYS_PART_END_COLORendColor,
                        
PSYS_PART_START_SCALE,startSize,
                        
PSYS_PART_END_SCALE,endSize
                        
PSYS_SRC_PATTERNpattern,
                        
PSYS_SRC_BURST_RATE,rate,
                        
PSYS_SRC_ACCELpush,
                        
PSYS_SRC_BURST_PART_COUNT,count,
                        
PSYS_SRC_BURST_RADIUS,radius,
                        
PSYS_SRC_BURST_SPEED_MIN,minSpeed,
                        
PSYS_SRC_BURST_SPEED_MAX,maxSpeed,
                        
PSYS_SRC_TARGET_KEY,target,
                        
PSYS_SRC_INNERANGLE,innerAngle
                        
PSYS_SRC_OUTERANGLE,outerAngle,
                        
PSYS_SRC_OMEGAomega,
                        
PSYS_SRC_MAX_AGElife,
                        
PSYS_SRC_TEXTUREtexture,
                        
PSYS_PART_START_ALPHAstartAlpha,
                        
PSYS_PART_END_ALPHAendAlpha
                            
]);
}

default
{
    
state_entry()
    {
        
updateParticles();
    }