Rocket Boots

From Second Life Wiki
Jump to navigation Jump to search

Created by Kira Komarov, Jopsy Pendragon and an anonymous user.

Shortnote

The following is a particle system based on two scripts by Jopsy Pendragon from the particle laboratory and modified by a user that wishes to remain anonymous.

Setup

Two primitives have to be used:

  • one containing the [WaS-K]-JP,Anonymous Jet which has its local Z-positive axis oriented toward the ground.
  • one containing the [WaS-K]-JP,Anonymous Ripples which has to have its Z-positive axis aligned on the global X,Y-plane.

Overview

The jet primitive has its local Z-positive axis oriented toward the ground.
The ripple primitive has to have its Z-positive axis aligned on the global Y,X-plane.

Code: [WaS-K]-JP,Anonymous Jet

<lsl> ////////////////////////////////////////////////////////// // [K] Kira Komarov - 2011, License: GPLv3 // // Jopsy Pendragon - header license: particles from // // THE PARTICLE LABORATORY // // Anonymous - unknown, but GPLv3 compatible // //////////////////////////////////////////////////////////

key _owner = NULL_KEY; default {

   state_entry()
   {
       _owner = llGetOwner();
       llSetTimerEvent(1);
   }
   timer()
   {
       llSetTimerEvent(0);
       if(llGetAgentInfo(_owner) & AGENT_FLYING) {
          llParticleSystem([  // start of particle settings
          // Texture Parameters:
          PSYS_SRC_TEXTURE, llGetInventoryName(INVENTORY_TEXTURE, 0), 
          PSYS_PART_START_SCALE, <.5,0.5, FALSE>,  PSYS_PART_END_SCALE, <.0,2.0, FALSE>, 
          PSYS_PART_START_COLOR, <1,1,1>,       PSYS_PART_END_COLOR, <1,1,1>, 
          PSYS_PART_START_ALPHA, (float)1.0,            PSYS_PART_END_ALPHA, (float)0.0,     
        
          // Production Parameters:
          PSYS_SRC_BURST_PART_COUNT, (integer) 1, 
          PSYS_SRC_BURST_RATE, (float) 0.01,  
          PSYS_PART_MAX_AGE, (float)0.4, 
          PSYS_SRC_MAX_AGE,(float) 0.0,  
       
          // Placement Parameters:
          PSYS_SRC_PATTERN, (integer)8, // 1=DROP, 2=EXPLODE, 4=ANGLE, 8=ANGLE_CONE,
          
          // Placement Parameters (for any non-DROP pattern):
          PSYS_SRC_BURST_SPEED_MIN, (float).01,   PSYS_SRC_BURST_SPEED_MAX, (float)3.01, 
       // PSYS_SRC_BURST_RADIUS, 0.0,
       
          // Placement Parameters (only for ANGLE & CONE patterns):
          PSYS_SRC_ANGLE_BEGIN, (float) 0.01*PI,        PSYS_SRC_ANGLE_END,(float) 0.0*PI,  
          PSYS_SRC_OMEGA, <0,0,0>, 
       
          // After-Effect & Influence Parameters:
          PSYS_SRC_ACCEL, <0.0,0.0,0.0>,  
       // PSYS_SRC_TARGET_KEY,      llGetLinkKey(llGetLinkNumber() + 1),       
             
          PSYS_PART_FLAGS, (integer)( 0           // Texture Options:     
                               | PSYS_PART_INTERP_COLOR_MASK   
                               | PSYS_PART_INTERP_SCALE_MASK   
                               | PSYS_PART_EMISSIVE_MASK   
                               | PSYS_PART_FOLLOW_VELOCITY_MASK
                                                 // After-effect & Influence Options:
                            // | PSYS_PART_WIND_MASK            
                            // | PSYS_PART_BOUNCE_MASK          
                            // | PSYS_PART_FOLLOW_SRC_MASK     
                            // | PSYS_PART_TARGET_POS_MASK     
                            // | PSYS_PART_TARGET_LINEAR_MASK     
                           ) 
           //end of particle settings                     
           ]);
           llSetTimerEvent(1);
           return;
       }
       llParticleSystem([]);
       llSetTimerEvent(1);
   }
   on_rez(integer param) {
       _owner = llGetOwner();
   }
   changed(integer change) {
       _owner = llGetOwner();
   }

} </lsl>

Code: [WaS-K]-JP,Anonymous Ripples

<lsl> ////////////////////////////////////////////////////////// // [K] Kira Komarov - 2011, License: GPLv3 // // Jopsy Pendragon - header license: particles from // // THE PARTICLE LABORATORY // // Anonymous - unknown, but GPLv3 compatible // //////////////////////////////////////////////////////////

key _owner = NULL_KEY; default {

   state_entry()
   {
       _owner = llGetOwner();
       llSetTimerEvent(1);
   }
   timer()
   {
       llSetTimerEvent(0);
       if(!(llGetAgentInfo(_owner) & AGENT_IN_AIR) && !(llGetAgentInfo(_owner) & AGENT_SITTING)) {

llParticleSystem([ // start of particle settings // Texture Parameters: PSYS_SRC_TEXTURE, llGetInventoryName(INVENTORY_TEXTURE, 0), PSYS_PART_START_SCALE, <0.1, .1, FALSE>, PSYS_PART_END_SCALE, <.1,.1, FALSE>, PSYS_PART_START_COLOR, <1,1,1>, PSYS_PART_END_COLOR, <1,1,1>, PSYS_PART_START_ALPHA, (float)0.5, PSYS_PART_END_ALPHA, (float)0.1,

// Production Parameters: PSYS_SRC_BURST_PART_COUNT, (integer)50, PSYS_SRC_BURST_RATE, (float) 0.4, PSYS_PART_MAX_AGE, (float)0.7, PSYS_SRC_MAX_AGE,(float) 0.0,

// Placement Parameters: PSYS_SRC_PATTERN, (integer)4, // 1=DROP, 2=EXPLODE, 4=ANGLE, 8=ANGLE_CONE,

// Placement Parameters (for any non-DROP pattern): PSYS_SRC_BURST_SPEED_MIN, (float).3, PSYS_SRC_BURST_SPEED_MAX, (float).3, // PSYS_SRC_BURST_RADIUS, 0.0,

// Placement Parameters (only for ANGLE & CONE patterns): PSYS_SRC_ANGLE_BEGIN, (float) 0.90*PI, PSYS_SRC_ANGLE_END, (float)0*PI, // PSYS_SRC_OMEGA, <0,0,0>,

// After-Effect & Influence Parameters: PSYS_SRC_ACCEL, <0.0,0.0, 0.0 >, // PSYS_SRC_TARGET_KEY, llGetLinkKey(llGetLinkNumber() + 1),

PSYS_PART_FLAGS, (integer)( 0 // Texture Options: | PSYS_PART_INTERP_COLOR_MASK | PSYS_PART_INTERP_SCALE_MASK | PSYS_PART_EMISSIVE_MASK | PSYS_PART_FOLLOW_VELOCITY_MASK // After-effect & Influence Options: // | PSYS_PART_WIND_MASK // | PSYS_PART_BOUNCE_MASK // | PSYS_PART_FOLLOW_SRC_MASK // | PSYS_PART_TARGET_POS_MASK // | PSYS_PART_TARGET_LINEAR_MASK ) //end of particle settings ]);

           llSetTimerEvent(1);
           return;
       }
       llParticleSystem([]);
       llSetTimerEvent(1);
   }
   on_rez(integer param) {
       _owner = llGetOwner();
   }
   changed(integer change) {
       _owner = llGetOwner();
   }

} </lsl>