Differentes textures aléatoire

Répondre
Partager Rechercher
Bonjour à tous,
J'ai un script qui envoie des particules dans les airs à partir d'un prim au sol, et je voudrais savoir s'il est possible qu'il envoie différentes textures aléatoirement, si oui qu'elle serait la ou les commande(s) à insérer ?
Enjoy!
Hello, il suffit par exemple de tirer au sort une texture parmis celles présentes dans la prim pendant un evennement timer().....


Code PHP:

integer onoff;
integer max;

string texture;

poof() 
{
    
llParticleSystem([
        
PSYS_PART_FLAGS
        
PSYS_PART_EMISSIVE_MASK 
        
PSYS_PART_INTERP_COLOR_MASK 
        
PSYS_PART_INTERP_SCALE_MASK,
        
//| PSYS_PART_WIND_MASK,
        
PSYS_SRC_PATTERN,
        
PSYS_SRC_PATTERN_ANGLE_CONE,

        
PSYS_SRC_TEXTUREtexture,
        
PSYS_PART_START_SCALE,<0.30.3FALSE>,
        
PSYS_PART_END_SCALE,<0.30.3,FALSE>,
        
PSYS_PART_START_ALPHA,1.0,
        
PSYS_PART_END_ALPHA,1.0,
        
PSYS_PART_START_COLOR, <0.0,0.0,0.0>,
        
PSYS_PART_END_COLOR, <0.0,0.0,0.0>,
        
PSYS_PART_START_GLOW0.0,
        
PSYS_PART_END_GLOW0.0,    

        
PSYS_PART_MAX_AGE,8.0,
        
PSYS_SRC_BURST_RATE,0.6,
        
PSYS_SRC_BURST_PART_COUNT,1,
        
PSYS_SRC_MAX_AGE,0.000000,

        
PSYS_SRC_INNERANGLE,0.5,
        
PSYS_SRC_OUTERANGLE,0.5,
        
PSYS_SRC_OMEGA,<0.00.00.0>, 
        
PSYS_SRC_ACCEL, <0.00.0, -0.08>,       
        
PSYS_SRC_BURST_SPEED_MIN,0.5,
        
PSYS_SRC_BURST_SPEED_MAX,0.7
    
]);
}

stop() 
{
    
llParticleSystem([]);
     
llSetTimerEvent(0.0);
}

default 
{
    
state_entry() 
    {
        
stop();
        
onoff FALSE;
        
max llGetInventoryNumber(INVENTORY_TEXTURE);
        if(
max == 0
        {
            
llOwnerSay("Pas de textures dans l' inventaire");
        }
        else
        {
             
llOwnerSay((string)max " textures dans l' inventaire");
        }                   
    }
    
    
touch_start(integer num_detected
    {
        if(!
onoff
        {
            
llSetTimerEvent(0.5);            
        } 
        else 
        {
            
stop();
        }
        
onoff = !onoff;
    }
    
    
timer() 
    {
        
texture llGetInventoryName(INVENTORY_TEXTURE, (integer)llFrand(max));
        
poof();
    }
    
    
changed(integer change)
    {
        if (
change CHANGED_INVENTORY
        {
            
llResetScript();
        }
    }

Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés