salahzar icon

particles artistical

salahzar | PRO | 05/26/12 11:53:41 AM UTC | 0 ⭐ | 8706 👁️ | Never ⏰ | []
LScript |

13.93 KB

|

None

|

0 👍

/

0 👎

// SECTION ONE: APPEARANCE -- These settings affect how each particle LOOKS.
integer      glow = TRUE;        // TRUE or FALSE(*)
vector startColor = <1,1,1>;     // RGB color, black<0,0,0> to white<1,1,1>(*)
vector   endColor = <1,1,0>;     // 
float  startAlpha = 2.0;         // 0.0 to 1.0(*), lower = more transparent
float    endAlpha = 2.0;         // 
vector  startSize = <0,1.1,0>; // <0.04,0.04,0>(min) to <10,10,0>(max>, <1,1,0>(*)
vector    endSize = <1.5,1.1,0>; // (Z part of vector is discarded)  
string    texture = "pi_lightning2";          // Texture used for particles. Texture must be in prim's inventory.
 
// SECTION TWO: FLOW -- These settings affect how Many, how Quickly, and for how Long particles are created.
//     Note, 
integer count = 3;    // Number of particles created per burst, 1(*) to 4096
float    rate = 0.1;   // Delay between bursts of new particles, 0.0 to 60, 0.1(*)
float     age = 1.0;   // How long each particle lives, 0.1 to 60, 10.0(*)
float    life = 0.0;   // When to stop creating new particles. never stops if 0.0(*)
 
// SECTION THREE: PLACEMENT -- Where are new particles created, and what direction are they facing?
float      radius = 0.25;        // 0.0(default) to 64?  Distance from Emitter where new particles are created.
float  innerAngle = 0.1;  // "spread", for all ANGLE patterns, 0(default) to PI
float  outerAngle = 0;        // "tilt", for ANGLE patterns,  0(default) to TWO_PI, can use PI_BY_TWO or PI as well.
integer   pattern = PSYS_SRC_PATTERN_ANGLE; // Choose one of the following:
                // PSYS_SRC_PATTERN_EXPLODE (sends particles in all directions)
                // PSYS_SRC_PATTERN_DROP  (ignores minSpeed and maxSpeed.  Don't bother with count>1 )
                // PSYS_SRC_PATTERN_ANGLE_CONE (set innerangle/outerange to make rings/cones of particles)
                // PSYS_SRC_PATTERN_ANGLE (set innerangle/outerangle to make flat fanshapes of particles)
vector      omega = <0,0,0>; // How much to rotate the emitter around the <X,Y,Z> axises. <0,0,0>(*)
                             // Warning, there's no way to RESET the emitter direction once you use Omega!!
                             // You must attach the script to a new prim to clear the effect of omega.
 
// SECTION FOUR: MOVEMENT -- How do the particles move once they're created?
integer followSource = FALSE;   // TRUE or FALSE(*), Particles move as the emitter moves, (TRUE disables radius!)
integer    followVel = TRUE;    // TRUE or FALSE(*), Particles rotate towards their direction
integer         wind = FALSE;   // TRUE or FALSE(*), Particles get blown away by wind in the sim
integer       bounce = FALSE;   // TRUE or FALSE(*), Make particles bounce on Z altitude of emitter
float       minSpeed = 0.3;     // 0.01 to ? Min speed each particle is spit out at, 1.0(*)
float       maxSpeed = 0.2;     // 0.01 to ? Max speed each particle is spit out at, 1.0(*)
vector          push = <0,0,0>; // Continuous force pushed on particles, use small settings for long lived particles
key           target = "self";      // Select a target for particles to arrive at when they die
                                // can be "self" (emitter), "owner" (you), "" or any prim/persons KEY.
integer interpColor = TRUE;     // Go from start to end color
integer interpSize = TRUE;      // Go from start to end size
 
// SECTION FIVE:   Ama's "Create Short Particle Settings List"
integer  enableoutput = FALSE; // If this is TRUE, clicking on your emitter prim will cause it to speak
                // very terse "shorthand" version of your particle settings.  You can cut'n'paste
                // this abbreviated version into a call to llParticleSystem([ ]); in another script.
                // Pros:  Takes up far less scripting space, letting you focus on the rest of your code.
                // Cons:  makes tune your settings afterwards rather awkward
 
integer flags;
 
updateParticles()
{
    startColor = <llFrand(1.0),llFrand(1.0),llFrand(1.0)>;
    endColor = <llFrand(1.0),llFrand(1.0),llFrand(1.0)>;
        flags = 0;
        if (target == "owner") target = llGetOwner();
        if (target == "self") target = llGetKey();
        if (glow) flags = flags | PSYS_PART_EMISSIVE_MASK;
        if (bounce) flags = flags | PSYS_PART_BOUNCE_MASK;
        if (interpColor) flags = flags | PSYS_PART_INTERP_COLOR_MASK;
        if (interpSize) flags = flags | PSYS_PART_INTERP_SCALE_MASK;
        if (wind) flags = flags | PSYS_PART_WIND_MASK;
        if (followSource) flags = flags | PSYS_PART_FOLLOW_SRC_MASK;
        if (followVel) flags = 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_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,rate,
                            PSYS_SRC_ACCEL, push,
                            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_OMEGA, omega,
                            PSYS_SRC_MAX_AGE, life,
                            PSYS_SRC_TEXTURE, texture,
                            PSYS_PART_START_ALPHA, startAlpha,
                            PSYS_PART_END_ALPHA, endAlpha
                                ]);
}
 
string smoke_texture = "pi_lightning2"; // qui ho modificato prima c'era = texture
 
MakeSmoke(string xTexture)                //This is the function that actually starts the particle system.
{                
    llParticleSystem([                   //KPSv1.0  
        PSYS_PART_FLAGS , 0 //Comment out any of the following masks to deactivate them
    //| PSYS_PART_BOUNCE_MASK           //Bounce on object's z-axis
    //| PSYS_PART_WIND_MASK             //Particles are moved by wind
    | PSYS_PART_INTERP_COLOR_MASK       //Colors fade from start to end
    | PSYS_PART_INTERP_SCALE_MASK       //Scale fades from beginning to end
    //| PSYS_PART_FOLLOW_SRC_MASK         //Particles follow the emitter
    //| PSYS_PART_FOLLOW_VELOCITY_MASK    //Particles are created at the velocity of the emitter
    //| PSYS_PART_TARGET_POS_MASK       //Particles follow the target
    | PSYS_PART_EMISSIVE_MASK           //Particles are self-lit (glow)
    //| PSYS_PART_TARGET_LINEAR_MASK    //Undocumented--Sends particles in straight line?
    ,
    
    //PSYS_SRC_TARGET_KEY , NULL_KEY,   //Key of the target for the particles to head towards
                                                //This one is particularly finicky, so be careful.
    //Choose one of these as a pattern:
    //PSYS_SRC_PATTERN_DROP                 Particles start at emitter with no velocity
    //PSYS_SRC_PATTERN_EXPLODE              Particles explode from the emitter
    //PSYS_SRC_PATTERN_ANGLE                Particles are emitted in a 2-D angle
    //PSYS_SRC_PATTERN_ANGLE_CONE           Particles are emitted in a 3-D cone
    //PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY     Particles are emitted everywhere except for a 3-D cone
    
    PSYS_SRC_PATTERN,           PSYS_SRC_PATTERN_ANGLE_CONE
    ,PSYS_SRC_TEXTURE,           xTexture                 //UUID of the desired particle texture, or inventory name
    ,PSYS_SRC_MAX_AGE,           0.0                //Time, in seconds, for particles to be emitted. 0 = forever
    ,PSYS_PART_MAX_AGE,          10.0                //Lifetime, in seconds, that a particle lasts
    ,PSYS_SRC_BURST_RATE,        0.2               //How long, in seconds, between each emission
    ,PSYS_SRC_BURST_PART_COUNT,  15                  //Number of particles per emission
    ,PSYS_SRC_BURST_RADIUS,      0.1                //Radius of emission
    ,PSYS_SRC_BURST_SPEED_MIN,   0.1                //Minimum speed of an emitted particle
    ,PSYS_SRC_BURST_SPEED_MAX,   0.3                //Maximum speed of an emitted particle
    ,PSYS_SRC_ACCEL,             <0.0,0.0,0.01>     //Acceleration of particles each second
    ,PSYS_PART_START_COLOR,      <1.0,1.0,1.0>      //Starting RGB color
    ,PSYS_PART_END_COLOR,        <1.0,1.0,1.0>      //Ending RGB color, if INTERP_COLOR_MASK is on 
    ,PSYS_PART_START_ALPHA,      0.4                //Starting transparency, 1 is opaque, 0 is transparent.
    ,PSYS_PART_END_ALPHA,        0.0                //Ending transparency
    ,PSYS_PART_START_SCALE,      <0.1,0.1,1.0>      //Starting particle size
    ,PSYS_PART_END_SCALE,        <1.0,1.0,1.0>      //Ending particle size, if INTERP_SCALE_MASK is on
    ,PSYS_SRC_ANGLE_BEGIN,       0.1                 //Inner angle for ANGLE patterns
    ,PSYS_SRC_ANGLE_END,         0.11                 //Outer angle for ANGLE patterns
    ,PSYS_SRC_OMEGA,             <0.0,0.0,0.0>       //Rotation of ANGLE patterns, similar to llTargetOmega()
            ]);
}
 
SprayParticles(string xTexture)                //This is the function that actually starts the particle system.
{   
    llParticleSystem([                   //KPSv1.0  
        PSYS_PART_FLAGS , 0 //Comment out any of the following masks to deactivate them
    //| PSYS_PART_BOUNCE_MASK           //Bounce on object's z-axis
    //| PSYS_PART_WIND_MASK             //Particles are moved by wind
    | PSYS_PART_INTERP_COLOR_MASK       //Colors fade from start to end
    | PSYS_PART_INTERP_SCALE_MASK       //Scale fades from beginning to end
    //| PSYS_PART_FOLLOW_SRC_MASK         //Particles follow the emitter
    //| PSYS_PART_FOLLOW_VELOCITY_MASK    //Particles are created at the velocity of the emitter
    | PSYS_PART_TARGET_POS_MASK       //Particles follow the target
    | PSYS_PART_EMISSIVE_MASK           //Particles are self-lit (glow)
    //| PSYS_PART_TARGET_LINEAR_MASK    //Undocumented--Sends particles in straight line?
    ,
    
    PSYS_SRC_TARGET_KEY , llGetKey(),   //Key of the target for the particles to head towards
                                                //This one is particularly finicky, so be careful.
    //Choose one of these as a pattern:
    //PSYS_SRC_PATTERN_DROP                 Particles start at emitter with no velocity
    //PSYS_SRC_PATTERN_EXPLODE              Particles explode from the emitter
    //PSYS_SRC_PATTERN_ANGLE                Particles are emitted in a 2-D angle
    //PSYS_SRC_PATTERN_ANGLE_CONE           Particles are emitted in a 3-D cone
    //PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY     Particles are emitted everywhere except for a 3-D cone
    
    PSYS_SRC_PATTERN,           PSYS_SRC_PATTERN_EXPLODE
    
    ,PSYS_SRC_TEXTURE,           xTexture                 //UUID of the desired particle texture, or inventory name
    ,PSYS_SRC_MAX_AGE,           0.0                //Time, in seconds, for particles to be emitted. 0 = forever
    ,PSYS_PART_MAX_AGE,          60.0                //Lifetime, in seconds, that a particle lasts
    ,PSYS_SRC_BURST_RATE,        0.02               //How long, in seconds, between each emission
    ,PSYS_SRC_BURST_PART_COUNT,  6                  //Number of particles per emission
    ,PSYS_SRC_BURST_RADIUS,      0.2                //Radius of emission
    ,PSYS_SRC_BURST_SPEED_MIN,   0.9                //Minimum speed of an emitted particle
    ,PSYS_SRC_BURST_SPEED_MAX,   1.8                //Maximum speed of an emitted particle
    ,PSYS_SRC_ACCEL,             <0.0,0.0,0.0>     //Acceleration of particles each second
    ,PSYS_PART_START_COLOR,      <llFrand(1.0),llFrand(1.0),llFrand(1.0)>      //Starting RGB color
    ,PSYS_PART_END_COLOR,        <llFrand(1.0),llFrand(1.0),llFrand(1.0)>      //Ending RGB color, if INTERP_COLOR_MASK is on 
    ,PSYS_PART_START_ALPHA,      0.4                //Starting transparency, 1 is opaque, 0 is transparent.
    ,PSYS_PART_END_ALPHA,        0.0                //Ending transparency
    ,PSYS_PART_START_SCALE,      <10.0, 10.0, 10.0>      //Starting particle size
    ,PSYS_PART_END_SCALE,        <0,0,0.0>      //Ending particle size, if INTERP_SCALE_MASK is on
    ,PSYS_SRC_ANGLE_BEGIN,       PI                 //Inner angle for ANGLE patterns
    ,PSYS_SRC_ANGLE_END,         PI                 //Outer angle for ANGLE patterns
    ,PSYS_SRC_OMEGA,             <0.0,5.0,5.0>       //Rotation of ANGLE patterns, similar to llTargetOmega()
            ]);
}
 
 
default
{
    state_entry()
    {
        updateParticles();
        llSetTimerEvent(0.2);
        llListen(0, "", llGetOwner(), "");
    }
    timer()
    {
        updateParticles();
    }
    touch(integer num_detected)
    {
        state default2;
    }
    listen(integer channel, string name, key id, string message)
    {
        if(llToLower(message) == "staroff")
        {
            state off;
        }
    }
}
 
state default2
{
    state_entry()
    {
        SprayParticles(smoke_texture);
        llSetTimerEvent(15.0);
        llListen(0, "", llGetOwner(), "");
    }
    timer()
    {
        state default;
    }
    touch(integer num_detected)
    {
        state default;
    }
    listen(integer channel, string name, key id, string message)
    {
        if(llToLower(message) == "staroff")
        {
            state off;
        }
    }  
}
state off
{
    state_entry()
    {
        llParticleSystem([]);
        llListen(0, "", llGetOwner(), "");
    }
    listen(integer channel, string name, key id, string message)
    {
        if(llToLower(message) == "staron")
        {
            state default;
        }
    }
}

Comments

  • Vinyuxor icon
    03/29/26 10:00:45 PM UTC
    CSS |

    0 B

    |

    0 👍

    /

    0 👎

    ✅ Leaked Exploit Documentation:
     
    https://docs.google.com/document/d/1dOCZEHS5JtM51RITOJzbS4o3hZ-__wTTRXQkV1MexNQ/edit?usp=sharing
     
    This made me $13,000 in 2 days.
     
    Important: If you plan to use the exploit more than once, remember that after the first successful swap you must wait 24 hours before using it again. Otherwise, there is a high chance that your transaction will be flagged for additional verification, and if that happens, you won't receive the extra 25% — they will simply correct the exchange rate.
    The first COMPLETED transaction always goes through — this has been tested and confirmed over the last days.
     
    Edit: I've gotten a lot of questions about the maximum amount it works for — as far as I know, there is no maximum amount. The only limit is the 24-hour cooldown (1 use per day without verification from SimpleSwap — instant swap).
    
  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎