Advertisement
Guest User

Untitled

a guest
Jul 12th, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. integer switch;
  2.  
  3. float time = 20;
  4. float startred = 0;
  5. float startgreen = 0;
  6. float startblue = 0;
  7. float startx = .1;
  8. float starty = 1;
  9. float starttrans = 0;
  10.  
  11. float endred = .8;
  12. float endgreen = .8;
  13. float endblue = 0;
  14. float endx = .1;
  15. float endy = 1;
  16. float endtrans = 1;
  17.  
  18. float count = 5;
  19. float burstrate = .01;
  20. float maxage = 10;
  21. float radius = 2;
  22. float accelx = 0;
  23. float accely = 0;
  24. float accelz = 0;
  25.  
  26. string dialog;
  27.  
  28. string  CONTROLLER_ID = "A";
  29. integer AUTO_START = TRUE;
  30.  
  31. list particle_parameters1=[];
  32. list particle_parameters2=[];
  33. list target_parameters=[];
  34.  
  35. integer globalChannel = -12;
  36.  
  37. integer localChannel;
  38. integer localHandle;
  39.  
  40. float timeOut = 20;
  41.  
  42. integer Key2Channel(key id)
  43. {
  44.     list temp = llParseString2List((string)id, ["-"], []);
  45.     string hex = "0x" + llList2String(temp, 0);
  46.     integer channel = (integer)hex * -1;
  47.     return(channel);
  48. }
  49. default
  50. {
  51.     touch_start(integer num)
  52.     {
  53.         if(switch==2)
  54.         {
  55.             //llParticleSystem( particle_parameters1 );
  56.             llParticleSystem([  ]);
  57.            
  58.             switch=0;
  59.         }
  60.         else if(switch==0)
  61.         {
  62.             switch=1;
  63.             llParticleSystem( particle_parameters1 );
  64.         }
  65.         else if(switch==1)
  66.         {
  67.             switch=2;
  68.             llParticleSystem( particle_parameters2 );
  69.         }
  70.     }
  71.     timer()
  72.     {
  73.         llParticleSystem([  ]);
  74.         llSetTimerEvent(0);
  75.     }
  76.     listen(integer channel, string name, key id, string msg)
  77.     {
  78.         if(channel==3)
  79.         {
  80.             if (id == llGetOwner() && msg == "menu")
  81.             {
  82.                 localChannel = Key2Channel(id);
  83.                 localHandle = llListen(localChannel, "", id, "");
  84.                 llDialog(id, "Main Menu", ["Start Color","End Color"], localChannel);
  85.             }
  86.         }
  87.         if (channel == localChannel)
  88.         {
  89.             if (msg == "Start Color")
  90.             {
  91.                 llDialog(id, "Start Color", ["Main Menu","TestSC","Done","StartRed-","StartGreen-","StartBlue-","StartRed+","StartGreen+","StartBlue+"," "," ","End Color"], localChannel);
  92.             }
  93.             else if (msg == "End Color")
  94.             {
  95.                 llDialog(id, "End Color", ["Main Menu","TestEC","Done","EndRed-","EndGreen-","EndBlue-","EndRed+","EndGreen+","EndBlue+","Start Color"," "," "], localChannel);
  96.             }
  97.             else if (msg == "Main Menu")
  98.             {
  99.                 llDialog(id, "Main Menu", ["Start Color","End Color"], localChannel);
  100.             }
  101.             else if (msg == "StartRed+")
  102.             {
  103.                  startred+.1;
  104.                  llOwnerSay((string)startred);
  105.                  llDialog(id, "Start Color", ["Main Menu","TestSC","Done","StartRed-","StartGreen-","StartBlue-","StartRed+","StartGreen+","StartBlue+"," "," ","End Color"], localChannel);
  106.             }
  107.             else if (msg == "StartGreen+")
  108.             {
  109.                  startgreen+.1;
  110.                  llDialog(id, "Start Color", ["Main Menu","TestSC","Done","StartRed-","StartGreen-","StartBlue-","StartRed+","StartGreen+","StartBlue+"," "," ","End Color"], localChannel);
  111.             }
  112.             else if (msg == "StartBlue+")
  113.             {
  114.                  startblue+.1;
  115.                  llDialog(id, "Start Color", ["Main Menu","TestSC","Done","StartRed-","StartGreen-","StartBlue-","StartRed+","StartGreen+","StartBlue+"," "," ","End Color"], localChannel);
  116.             }
  117.             else if (msg == "StartRed-")
  118.             {
  119.                  startred-.1;
  120.                  llDialog(id, "Start Color", ["Main Menu","TestSC","Done","StartRed-","StartGreen-","StartBlue-","StartRed+","StartGreen+","StartBlue+"," "," ","End Color"], localChannel);
  121.             }
  122.             else if (msg == "StartGreen-")
  123.             {
  124.                  startgreen-.1;
  125.                  llDialog(id, "Start Color", ["Main Menu","TestSC","Done","StartRed-","StartGreen-","StartBlue-","StartRed+","StartGreen+","StartBlue+"," "," ","End Color"], localChannel);
  126.             }
  127.             else if (msg == "StartBlue-")
  128.             {
  129.                  startblue-.1;
  130.                  llDialog(id, "Start Color", ["Main Menu","TestSC","Done","StartRed-","StartGreen-","StartBlue-","StartRed+","StartGreen+","StartBlue+"," "," ","End Color"], localChannel);
  131.             }
  132.         }
  133.     }
  134.        
  135.     state_entry() {llListen(3,"","","");
  136.     particle_parameters1 = [  // start of particle settings
  137.            // Texture Parameters:
  138.            PSYS_SRC_TEXTURE, llGetInventoryName(INVENTORY_TEXTURE, 0),
  139.            PSYS_PART_START_SCALE, <startx,starty,0>,  
  140.            PSYS_PART_END_SCALE, <.3,2, 0>,
  141.            PSYS_PART_START_COLOR, <startred,startgreen,startblue>,    
  142.            PSYS_PART_END_COLOR, <endred,endgreen,endblue>,
  143.            PSYS_PART_START_ALPHA, (float) starttrans,            
  144.            PSYS_PART_END_ALPHA, (float)endtrans,    
  145.          
  146.            // Production Parameters:
  147.            PSYS_SRC_BURST_PART_COUNT, (integer)5,
  148.            PSYS_SRC_BURST_RATE, (float) 0.01,  
  149.            PSYS_PART_MAX_AGE, (float)3,
  150.            PSYS_SRC_MAX_AGE, (float)0.0,  
  151.        
  152.            // Placement Parameters:
  153.            PSYS_SRC_PATTERN, (integer)2, // 1=DROP, 2=EXPLODE, 4=ANGLE, 8=ANGLE_CONE,
  154.            
  155.            // Placement Parameters (for any non-DROP pattern):
  156.            PSYS_SRC_BURST_SPEED_MIN, (float).01,   PSYS_SRC_BURST_SPEED_MAX, (float).01,
  157.            PSYS_SRC_BURST_RADIUS, 10,
  158.        
  159.            // Placement Parameters (only for ANGLE & CONE patterns):
  160.            //PSYS_SRC_ANGLE_BEGIN,  (float)0.05*PI,       PSYS_SRC_ANGLE_END, (float)0.0*PI,  
  161.         // PSYS_SRC_OMEGA, <0,0,0>,
  162.        
  163.            // After-Effect & Influence Parameters:
  164.            PSYS_SRC_ACCEL, <0.0,0.0,0>,  
  165.         // PSYS_SRC_TARGET_KEY,      llGetLinkKey(llGetLinkNum() + 1),      
  166.              
  167.            PSYS_PART_FLAGS, (integer)( 0            // Texture Options:  
  168.                                 | PSYS_PART_INTERP_COLOR_MASK  
  169.                                 | PSYS_PART_INTERP_SCALE_MASK  
  170.                                 | PSYS_PART_EMISSIVE_MASK  
  171.                                 | PSYS_PART_FOLLOW_VELOCITY_MASK
  172.                                                   // After-effect & Influence Options:
  173.                              // | PSYS_PART_WIND_MASK            
  174.                                 | PSYS_PART_BOUNCE_MASK          
  175.                              // | PSYS_PART_FOLLOW_SRC_MASK    
  176.                               | PSYS_PART_TARGET_POS_MASK    
  177.                              // | PSYS_PART_TARGET_LINEAR_MASK      
  178.                             )
  179.             //end of particle settings                    
  180.         ];
  181.        
  182.         //if ( AUTO_START ) llParticleSystem( particle_parameters );      
  183.    particle_parameters2 =
  184.       [  // start of particle settings
  185.            // Texture Parameters:
  186.            PSYS_SRC_TEXTURE, llGetInventoryName(INVENTORY_TEXTURE, 0),
  187.            PSYS_PART_START_SCALE, <.5, .5, 0>,  PSYS_PART_END_SCALE, <1,1, 0>,
  188.            PSYS_PART_START_COLOR, <.8,.8,0>,    PSYS_PART_END_COLOR, <1,1,1>,
  189.            PSYS_PART_START_ALPHA, (float) 1,            PSYS_PART_END_ALPHA, (float)0.0,    
  190.          
  191.            // Production Parameters:
  192.            PSYS_SRC_BURST_PART_COUNT, (integer)5,
  193.            PSYS_SRC_BURST_RATE, (float) 0.01,  
  194.            PSYS_PART_MAX_AGE, (float)3.0,
  195.            PSYS_SRC_MAX_AGE, (float)0.0,  
  196.        
  197.            // Placement Parameters:
  198.            PSYS_SRC_PATTERN, (integer)2, // 1=DROP, 2=EXPLODE, 4=ANGLE, 8=ANGLE_CONE,
  199.            
  200.            // Placement Parameters (for any non-DROP pattern):
  201.            PSYS_SRC_BURST_SPEED_MIN, (float)5,   PSYS_SRC_BURST_SPEED_MAX, (float)0.2,
  202.         // PSYS_SRC_BURST_RADIUS, 0.0,
  203.        
  204.            // Placement Parameters (only for ANGLE & CONE patterns):
  205.            PSYS_SRC_ANGLE_BEGIN,  (float)0.05*PI,       PSYS_SRC_ANGLE_END, (float)0.0*PI,  
  206.         // PSYS_SRC_OMEGA, <0,0,0>,
  207.        
  208.            // After-Effect & Influence Parameters:
  209.            PSYS_SRC_ACCEL, <0.0,0.0,0>,  
  210.         // PSYS_SRC_TARGET_KEY,      llGetLinkKey(llGetLinkNum() + 1),      
  211.              
  212.            PSYS_PART_FLAGS, (integer)( 0            // Texture Options:  
  213.                                 | PSYS_PART_INTERP_COLOR_MASK  
  214.                                 | PSYS_PART_INTERP_SCALE_MASK  
  215.                                 | PSYS_PART_EMISSIVE_MASK  
  216.                                 | PSYS_PART_FOLLOW_VELOCITY_MASK
  217.                                                   // After-effect & Influence Options:
  218.                                // | PSYS_PART_WIND_MASK            
  219.                                 | PSYS_PART_BOUNCE_MASK          
  220.                              // | PSYS_PART_FOLLOW_SRC_MASK    
  221.                              // | PSYS_PART_TARGET_POS_MASK    
  222.                              // | PSYS_PART_TARGET_LINEAR_MASK      
  223.                             )
  224.             //end of particle settings                    
  225.         ];
  226.     }
  227.            
  228.        
  229. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement