Thursday, July 15, 2010

Particle Script for all shapes

Place this script in the prims above and below the prim that is changing shape.
These will be the prims that the colored beams will be coming out of.
Make the prims that the particle script is in the colour that you want the beam to be.


Rising Particle:

vector colour;
default
{
state_entry()
{
colour=llGetColor(ALL_SIDES);
}
link_message(integer sender_number, integer number, string message, key id)
{
if (message=="start")
{
float rate = .1 ;
float age = 1.0 ;
integer count = 10 ;
llParticleSystem( [
PSYS_PART_INTERP_SCALE_MASK,
PSYS_PART_INTERP_COLOR_MASK,
PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_DROP,
PSYS_SRC_BURST_PART_COUNT,(integer) count,
PSYS_SRC_BURST_RATE,(float) rate,
PSYS_PART_MAX_AGE,(float) age,
PSYS_SRC_ACCEL,(vector) <0,0,1.0>,//change to <0,0,-1.0> for down particle
PSYS_SRC_BURST_SPEED_MIN,(float) .5,
PSYS_SRC_BURST_SPEED_MAX,(float) .5,
PSYS_PART_START_SCALE,(vector) <.1,1,.1>,
PSYS_PART_START_COLOR,(vector) colour, // Start Color, (RGB, 0 to 1) set to colour of the slave prim
PSYS_PART_END_COLOR,(vector) <1,1,1>,
PSYS_SRC_MAX_AGE,(float) 5.0,
PSYS_PART_FLAGS,
PSYS_PART_EMISSIVE_MASK |
PSYS_PART_INTERP_COLOR_MASK |
0 ] );
llResetScript();
}
else
{
llResetScript();
}
}
}




Down Particle:


vector colour;
default
{
state_entry()
{
colour=llGetColor(ALL_SIDES);
}
link_message(integer sender_number, integer number, string message, key id)
{
if (message=="start")
{
float rate = .1 ;
float age = 1.0 ;
integer count = 10 ;
llParticleSystem( [
PSYS_PART_INTERP_SCALE_MASK,
PSYS_PART_INTERP_COLOR_MASK,
PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_DROP,
PSYS_SRC_BURST_PART_COUNT,(integer) count,
PSYS_SRC_BURST_RATE,(float) rate,
PSYS_PART_MAX_AGE,(float) age,
PSYS_SRC_ACCEL,(vector) <0,0,-1.0>,//change to <0,0,-1.0> for down particle
PSYS_SRC_BURST_SPEED_MIN,(float) .5,
PSYS_SRC_BURST_SPEED_MAX,(float) .5,
PSYS_PART_START_SCALE,(vector) <.1,1,.1>,
PSYS_PART_START_COLOR,(vector) colour, // Start Color, (RGB, 0 to 1) set to colour of the slave prim
PSYS_PART_END_COLOR,(vector) <1,1,1>,
PSYS_SRC_MAX_AGE,(float) 5.0,
PSYS_PART_FLAGS,
PSYS_PART_EMISSIVE_MASK |
PSYS_PART_INTERP_COLOR_MASK |
0 ] );
llResetScript();
}
else
{
llResetScript();
}
}
}

No comments:

Post a Comment