Second Life Copybot
GLE's Flying Faggot Particle - 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: GLE's Flying Faggot Particle (/thread-9025.html)



GLE's Flying Faggot Particle - NigronPr1m3 - 03-15-2015

Now you too can be a Lantern

PHP Code:
integer effectFlags=0;
integer running=TRUE;


integer colorInterpolation  TRUE;
//////////////////////////////////////////////
vector  startColor          = <0,50,0>;
//////////////////////////////////////////////
vector  endColor            = <0,100,0>;
//////////////////////////////////////////////
float   startAlpha          .3;
/////////////////////////////////
float   endAlpha            0.01;
/////////////////////////////////
integer glowEffect          TRUE;
///////////////////////////////////
integer sizeInterpolation   TRUE;
///////////////////////////////////
vector  startSize           = <6,8,6>;
/////////////////////////////////////////////
vector  endSize             = <6,8,6>;
/////////////////////////////////////////////
integer followVelocity      TRUE;
////////////////////////////////
float   particleLife        .3;
/////////////////////////////////
float   SystemLife          0.0;
/////////////////////////////////
float   emissionRate        0.01;
//////////////////////////////////
integer partPerEmission     3;
///////////////////////////////
float   radius              0.0;
/////////////////////////////////
float   innerAngle          0;
///////////////////////////////
float   outerAngle          0;
///////////////////////////////
vector  omega               = <0.00.00.0>;
/////////////////////////////////////////////
float   minSpeed            0.01;
/////////////////////////////////
float   maxSpeed            0.01;
/////////////////////////////////
vector  acceleration        = <0.00.0.01>;
//////////////////////////////////////////////
integer windEffect          FALSE;
///////////////////////////////////
integer bounceEffect        FALSE;
///////////////////////////////////
integer followSource        TRUE;
///////////////////////////////////
integer followTarget        TRUE;
///////////////////////////////////
key     target              "llGetKey(owner)";


///////////////////////////////////////////////////////
//NOT YET IMPLIMENTED
///////////////////////////////////////////////////////
integer randomAcceleration  FALSE;
integer randomVelocity      FALSE;
integer particleTrails      FALSE;
///////////////////////////////////////////////////////
///////////////////////////////////////////////////////
// Pattern Selection
///////////////////////////////////////////////////////
//   Uncomment the pattern call you would like to use
//   Drop parcles at the container objects' center
//integer pattern = PSYS_SRC_PATTERN_DROP;
//   Burst pattern originating at objects' center
integer pattern PSYS_SRC_PATTERN_EXPLODE;
//   Uses 2D angle between innerAngle and outerAngle
//integer pattern = PSYS_SRC_PATTERN_ANGLE;
//   Uses 3D cone spread between innerAngle and outerAngle
//integer pattern = PSYS_SRC_PATTERN_ANGLE_CONE;
// 
//integer pattern = PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY;



setParticles()
{
// Here is where to set the current target
// llGetKey() targets this script's container object
// llGetOwner() targets the owner of this script
// Feel free to insert any other valid key
    
target="llGetKey()";
// The following block of if statements is used to construct the mask 
    
if (colorInterpolationeffectFlags effectFlags|PSYS_PART_INTERP_COLOR_MASK;
    if (
sizeInterpolation)  effectFlags effectFlags|PSYS_PART_INTERP_SCALE_MASK;
    if (
windEffect)         effectFlags effectFlags|PSYS_PART_WIND_MASK;
    if (
bounceEffect)       effectFlags effectFlags|PSYS_PART_BOUNCE_MASK;
    if (
followSource)       effectFlags effectFlags|PSYS_PART_FOLLOW_SRC_MASK;
    if (
followVelocity)     effectFlags effectFlags|PSYS_PART_FOLLOW_VELOCITY_MASK;
    if (
target!="")       effectFlags effectFlags|PSYS_PART_TARGET_POS_MASK;
    if (
glowEffect)         effectFlags effectFlags|PSYS_PART_EMISSIVE_MASK;
//Uncomment the following selections once they've been implemented
//    if (randomAcceleration) effectFlags = effectFlags|PSYS_PART_RANDOM_ACCEL_MASK;
//    if (randomVelocity)     effectFlags = effectFlags|PSYS_PART_RANDOM_VEL_MASK;
//    if (particleTrails)     effectFlags = effectFlags|PSYS_PART_TRAIL_MASK;
    
llParticleSystem([
        
PSYS_PART_FLAGS,            effectFlags,
        
PSYS_SRC_PATTERN,           pattern,
        
PSYS_PART_START_COLOR,      startColor,
        
PSYS_PART_END_COLOR,        endColor,
        
PSYS_PART_START_ALPHA,      startAlpha,
        
PSYS_PART_END_ALPHA,        endAlpha,
        
PSYS_PART_START_SCALE,      startSize,
        
PSYS_PART_END_SCALE,        endSize,    
        
PSYS_PART_MAX_AGE,          particleLife,
        
PSYS_SRC_ACCEL,             acceleration,
        
PSYS_SRC_TEXTURE,          "fbd147d2-56b0-cc2c-71e0-ca2c00e34b67",
        
PSYS_SRC_BURST_RATE,        emissionRate,
        
PSYS_SRC_INNERANGLE,        innerAngle,
        
PSYS_SRC_OUTERANGLE,        outerAngle,
        
PSYS_SRC_BURST_PART_COUNT,  partPerEmission,      
        
PSYS_SRC_BURST_RADIUS,      radius,
        
PSYS_SRC_BURST_SPEED_MIN,   minSpeed,
        
PSYS_SRC_BURST_SPEED_MAX,   maxSpeed
        
PSYS_SRC_MAX_AGE,           SystemLife,
        
PSYS_SRC_TARGET_KEY,        target,
        
PSYS_SRC_OMEGA,             omega   ]);
}

default
{
    
state_entry()
    {
        
llSetTimerEvent(0.1);
    }

    
timer()
    {
        if(
llGetAgentInfo(llGetOwner())&AGENT_FLYING)
        {
            
setParticles();
        }
        else
        {
            
llParticleSystem([]);
        }
}} 



RE: GLE's Flying Faggot Particle - ELiteRose - 03-14-2018

well this is very different thanks :)