Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Looking for a script to make spells with, please help!

Cedric Easterwood
Registered User
Join date: 28 Aug 2008
Posts: 25
10-22-2008 20:43
I need a script that causes a particle burst on collision. I'm making a set of invisiprim shots from the hand that sticks to it's impact point. But here's the problem: I have no particle on collision script to make an effect of being hit with it. Now, I don't want much from it, just a templatethat allows me to edit it's colors size, effects, etc. the basics, you know? I will pay you 50L for it, if you are so inclined and if it is allowed on here. if not, disreguard the price lol
Hewee Zetkin
Registered User
Join date: 20 Jul 2006
Posts: 2,702
10-22-2008 22:08
This should be about what you want I think. This script has not yet been compiled, so it may need a minor syntax fix or two, but it is based on a template I use for all particles, so it shouldn't have too many issues.

CODE

float BURST_DURATION = 1.5;

particlesOn()
{
llParticleSystem(
[ PSYS_PART_START_ALPHA, 1.0,
PSYS_PART_END_ALPHA, 1.0,
PSYS_PART_START_COLOR, <1.0, 1.0, 1.0>,
PSYS_PART_END_COLOR, <1.0, 1.0, 1.0>,
PSYS_PART_START_SCALE, <1.0, 1.0, 1.0>,
PSYS_PART_END_SCALE, <1.0, 1.0, 1.0>,
PSYS_PART_MAX_AGE, 1.0,
PSYS_SRC_MAX_AGE, BURST_DURATION,
PSYS_SRC_ACCEL, ZERO_VECTOR,
PSYS_SRC_ANGLE_BEGIN, 0.0,
PSYS_SRC_ANGLE_END, PI,
PSYS_SRC_BURST_PART_COUNT, 1,
PSYS_SRC_BURST_RADIUS, 0.0,
PSYS_SRC_BURST_RATE, 1.0,
PSYS_SRC_BURST_SPEED_MIN, 1.0,
PSYS_SRC_BURST_SPEED_MAX, 1.0,
//PSYS_SRC_OMEGA, ZERO_VECTOR,
//PSYS_SRC_TARGET_KEY, NULL_KEY,
//PSYS_SRC_TEXTURE, "",
PSYS_SRC_PATTERN,
PSYS_SRC_PATTERN_ANGLE,
//PSYS_SRC_PATTERN_ANGLE_CONE,
//PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY,
//PSYS_SRC_PATTERN_DROP,
//PSYS_SRC_PATTERN_EXPLODE,
PSYS_PART_FLAGS,
0
//| PSYS_PART_BOUNCE_MASK
//| PSYS_PART_EMISSIVE_MASK
//| PSYS_PART_FOLLOW_SRC_MASK
//| PSYS_PART_FOLLOW_VELOCITY_MASK
//| PSYS_PART_INTERP_COLOR_MASK
//| PSYS_PART_INTERP_SCALE_MASK
//| PSYS_PART_TARGET_LINEAR_MASK
//| PSYS_PART_TARGET_POS_MASK
//| PSYS_PART_WIND_MASK
]);
}

particlesOff()
{
llParticleSystem([]);
}


default
{
state_entry()
{
particlesOff();
}

collision(integer nDetected)
{
particlesOn();
llSetTimerEvent(BURST_DURATION);
}

timer()
{
particlesOff();
llSetTimerEvent(0.0);
}
}