Script à "Commande Vocale".

Répondre
Partager Rechercher
Je voudrai savoir ou et quel code insérer dans le script diffuseur de particule pour qu'il obéisse à la "commande vocale", car quand je le porte je ne peux pas cliquer dessus et l'arrêter.

Voici le code, si vous pouvez m'aider. :
Code:
default
{
state_entry()
	 {
		 llParticleSystem([]);
	 }
touch_start(integer total_number)
	 {
		 state particuleon;
	 }
}
state particuleon
{
state_entry()
	 {
								// MASK FLAGS: set to "TRUE" to enable
integer glow = TRUE;								// Makes the particles glow
integer bounce = FALSE;							 // Make particles bounce on Z plane of objects
integer interpColor = TRUE;						 // Color - from start value to end value
integer interpSize = TRUE;						 // Size - from start value to end value
integer wind = FALSE;							 // Particles effected by wind
integer followSource = FALSE;					 // Particles follow the source
integer followVel = TRUE;						 // Particles turn to velocity direction
 
								// Choose a pattern from the following:
													// PSYS_SRC_PATTERN_EXPLODE
													// PSYS_SRC_PATTERN_DROP
													// PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY
													// PSYS_SRC_PATTERN_ANGLE_CONE
													// PSYS_SRC_PATTERN_ANGLE
	integer pattern = PSYS_SRC_PATTERN_EXPLODE;	 // PSYS_SRC_PATTERN_EXPLODE;
													// Select a target for particles to go towards
													// "" for no target, "owner" will follow object owner 
													//	and "self" will target this object
													//	or put the key of an object for particles to go to
 
		 key target = "";
 
								// PARTICLE PARAMETERS
 
	float age = 6.6;								// Life of each particle
	float maxSpeed = 0.5;						 // Max speed each particle is spit out at
	float minSpeed = 0;							 // Min speed each particle is spit out at
	string texture = "Particle Arrow";			 // Texture used for particles, default used if blank
	float startAlpha = 0.8;						 // Start alpha (transparency) value
	float endAlpha = 0;							 // End alpha (transparency) value
	vector startColor = <1,0,0>;			 // Start color of particles <R,G,B>
	vector endColor = <0,0,0>;					 // End color of particles <R,G,B> (if interpColor == TRUE)
	vector startSize = <0.15,0.15,0.15>;			// Start size of particles 
	vector endSize = <0.5,0.5,0.5>;					 // End size of particles (if interpSize == TRUE)
	vector push = <0.2,0.0,0.0>;					// Force pushed on particles
								// SYSTEM PARAMETERS
 
	float rate = 0.1;							 // How fast (rate) to emit particles
	float radius = 1;							// Radius to emit particles for BURST pattern
	integer count = 5;							 // How many particles to emit per BURST 
	float outerAngle = 3*PI;						// Outer angle for all ANGLE patterns PI/4
	float innerAngle = 0.5;						 // Inner angle for all ANGLE patterns
	vector omega = <0,0,0>;						 // Rotation of ANGLE patterns around the source
	float life = 0;								 // Life in seconds for the system to make particles
								// SCRIPT VARIABLES
 
	integer flags; 
 
	 flags = 0;
 
	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
							]);
	}
touch_start(integer total_number)
	 {
		 state default;
	 }
}
Merci
arf non tu as été voir sur le wiki???
http://rpgstats.com/wiki/index.php?title=LlListen tu trouvera des infos ( en anglais ) bien pratique su tu veux scripter . on y trouve quasiment toutes les fonctions.

Voila sinon si tu as besoin d'aide n'hésite pas.

J'aipas vraiment envie de te donner la solution il vaut mieux que tu cherche qi tu veux apprendre.....
...
ça y est j'ai réussi ! je me suis aidé du Script Bling
Code:
			 // MASK FLAGS: set to "TRUE" to enable
integer glow = TRUE;								// Makes the particles glow
integer bounce = FALSE;							 // Make particles bounce on Z plane of objects
integer interpColor = TRUE;						 // Color - from start value to end value
integer interpSize = TRUE;						 // Size - from start value to end value
integer wind = FALSE;							 // Particles effected by wind
integer followSource = FALSE;					 // Particles follow the source
integer followVel = TRUE;						 // Particles turn to velocity direction
 
								// Choose a pattern from the following:
													// PSYS_SRC_PATTERN_EXPLODE
													// PSYS_SRC_PATTERN_DROP
													// PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY
													// PSYS_SRC_PATTERN_ANGLE_CONE
													// PSYS_SRC_PATTERN_ANGLE
	integer pattern = PSYS_SRC_PATTERN_EXPLODE;	 // PSYS_SRC_PATTERN_EXPLODE;
													// Select a target for particles to go towards
													// "" for no target, "owner" will follow object owner 
													//	and "self" will target this object
													//	or put the key of an object for particles to go to
 
		 key target = "";
 
								// PARTICLE PARAMETERS
 
	float age = 6.6;								// Life of each particle
	float maxSpeed = 0.5;						 // Max speed each particle is spit out at
	float minSpeed = 0;							 // Min speed each particle is spit out at
	string texture = "Particle Arrow";			 // Texture used for particles, default used if blank
	float startAlpha = 0.8;						 // Start alpha (transparency) value
	float endAlpha = 0;							 // End alpha (transparency) value
	vector startColor = <1,0,0>;			 // Start color of particles <R,G,B>
	vector endColor = <0,0,0>;					 // End color of particles <R,G,B> (if interpColor == TRUE)
	vector startSize = <0.15,0.15,0.15>;			// Start size of particles 
	vector endSize = <0.5,0.5,0.5>;					 // End size of particles (if interpSize == TRUE)
	vector push = <0.2,0.0,0.0>;					// Force pushed on particles
								// SYSTEM PARAMETERS
 
	float rate = 0.1;							 // How fast (rate) to emit particles
	float radius = 1;							// Radius to emit particles for BURST pattern
	integer count = 5;							 // How many particles to emit per BURST 
	float outerAngle = 0.54;						// Outer angle for all ANGLE patterns PI/4
	float innerAngle = 0.5;						 // Inner angle for all ANGLE patterns
	vector omega = <0,0,0>;						 // Rotation of ANGLE patterns around the source
	float life = 0;								 // Life in seconds for the system to make particles
								// SCRIPT VARIABLES
 
integer flags;
 
updateParticles()
{
 
	flags = 0;
	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
							]);
}
default
{
	state_entry()
	{
		updateParticles();
		llListen( 0, "", llGetOwner(), "off" );
	}
	on_rez( integer start_param )
	{
		llResetScript();
	}
	listen( integer channel, string name, key id, string message )
	{
		state bling_off;
	}
}
state bling_off
{
	state_entry()
	{
		llParticleSystem( [] );
		llListen( 0, "", llGetOwner(), "on" );
	}
	on_rez( integer start_param )
	{
		llResetScript();
	}	
	listen( integer channel, string name, key id, string message )
	{
		state default;
	}
}
Répondre

Connectés sur ce fil

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