Aller à la page... |
Pleins de scripts pour vos objets
Suivre Répondre |
|
Partager | Rechercher |
|
A ce propos moi je cherche le "blings script", si quelqu'un l'a...
|
![]() |
|
|
Au poil tout ça, ça me donne envie d'aller construire une moto tiens et de tester le script. C'est une peu flood, mais merci, ça va m'éviter de chercher
![]() |
![]() |
|
#147671
Invité
|
Je possède le script bling, si vous souhaitez je peux vous l'envoyer rapidement. Il est un peu "laggy" puisqu'il est en mode écoute pour activé ou désactivé. On peut toutefois le retoucher pour enlever ces lignes de codes sans-soucis.
Ah oui ! il est freebie ![]() Edit : je l'ai rajouté dans le wiki bibiothèque de script |
![]() |
|
#147671 |
|
Citation :
merci phli |
![]() |
|
|
![]()
Et quand ça vient d'emule, je fais quoi?
|
![]() |
|
|
Essaye de voir sur lslwiki pour retrouver les auteurs des scripts. C'est plus correct, et ils y sont tous.
|
![]() |
|
|
Autres scripts, de lumieres et fumées
effet_fumee_1_rouge_violet_bleu
Voir la video de l'effet Créer par Ama Omega Code:
// Particle Script 0.3 // Created by Ama Omega // 10-10-2003 // Mask Flags - set to TRUE to enable integer glow = TRUE; // Make the particles glow integer bounce = FALSE; // Make particles bounce on Z plan of object integer interpColor = TRUE; // Go from start to end color integer interpSize = TRUE; // Go from start to end size 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; // 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 paramaters float age = 0.7; // Life of each particle float maxSpeed = .2; // Max speed each particle is spit out at float minSpeed = .1; // Min speed each particle is spit out at string texture; // Texture used for particles, default used if blank float startAlpha = 10; // Start alpha (transparency) value float endAlpha = 10; // End alpha (transparency) value vector startColor = <75,0,0>; // Start color of particles <R,G,B> vector endColor = <0,0,75>; // End color of particles <R,G,B> (if interpColor == TRUE) vector startSize = <.0,.0,.0>; // Start size of particles vector endSize = <.1,.1,.1>; // End size of particles (if interpSize == TRUE) vector push = <0,0,1>; // Force pushed on particles // System paramaters float rate = .1; // How fast (rate) to emit particles float radius = 0; // Radius to emit particles for BURST pattern integer count = 10; // How many particles to emit per BURST float outerAngle = 1.54; // Outer angle for all ANGLE patterns float innerAngle = 1.55; // Inner angle for all ANGLE patterns vector omega = <0,0,10>; // 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 (target == "owner") target = llGetOwner(); if (target == "self") target = llGetKey(); 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(); } } Voir la video de l'effet Créer par Ama Omega Code:
// Particle Script 0.3 // Created by Ama Omega // 10-10-2003 // Mask Flags - set to TRUE to enable integer glow = TRUE; // Make the particles glow integer bounce = FALSE; // Make particles bounce on Z plan of object integer interpColor = TRUE; // Go from start to end color integer interpSize = TRUE; // Go from start to end size 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; // 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 paramaters float age = 1.5; // Life of each particle float maxSpeed = .2; // Max speed each particle is spit out at float minSpeed = .1; // Min speed each particle is spit out at string texture; // Texture used for particles, default used if blank float startAlpha = 10; // Start alpha (transparency) value float endAlpha = 10; // End alpha (transparency) value vector startColor = <0,25,0>; // Start color of particles <R,G,B> vector endColor = <0,75,0>; // End color of particles <R,G,B> (if interpColor == TRUE) vector startSize = <.5,.5,.5>; // Start size of particles vector endSize = <.1,.1,.1>; // End size of particles (if interpSize == TRUE) vector push = <0,0,1>; // Force pushed on particles // System paramaters float rate = .1; // How fast (rate) to emit particles float radius = 0; // Radius to emit particles for BURST pattern integer count = 10; // How many particles to emit per BURST float outerAngle = 1.54; // Outer angle for all ANGLE patterns float innerAngle = 1.55; // Inner angle for all ANGLE patterns vector omega = <0,0,10>; // 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 (target == "owner") target = llGetOwner(); if (target == "self") target = llGetKey(); 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(); } } Voir la video de l'effet Créer par Ama Omega Code:
// Original Particle Script v3 by Ama Omega // settings and customizations by Jopsy Pendragon // Mask Flags - set to TRUE to enable integer glow =TRUE; // Make the particles glow integer bounce = FALSE; // Make particles bounce on Z plan of object integer interpColor = TRUE; // Go from start to end color integer interpSize = TRUE; // Go from start to end size integer wind = FALSE; // Particles effected by wind integer followSource = TRUE; // Particles follow the source integer followVel = FALSE; // 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_ANGLE; // 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 paramaters float age =3; //how long will particles live (in seconds) float maxSpeed =.03; //maximum speed a particle should be moving float minSpeed = .01; //minimum speed a particle should be movie string texture=""; //texture applied to the particles float startAlpha =.9; //alpha transparency at start float endAlpha =.2; //alpha at end vector startColor = <1,1,1>; //particles start as this color vector endColor = <1,1,0.9>; //and end as thiscolor vector startSize = <.8,.8,1>; //particles start at this size vector endSize = <.04,.2,10>; //and end at this size vector push = <0,0,.50>; //how far to push particles // System paramaters float rate = 0.01; // How fast to emit particles float radius = 0; // Radius to emit particles for BURST pattern integer count =3; // How many particles to emit per BURST float outerAngle = 0.0; // Outer angle for all ANGLE patterns float innerAngle = 0.05; // Inner angle for all ANGLE patterns vector omega = <0,0,3>; // Rotation of ANGLE patterns around the source float life = 0; // Script variables integer flags; updateParticles() { if (target == "owner") target = llGetOwner(); if (target == "self") target = llGetKey(); 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; //llMakeSmoke( 500, 1, 1, 10, 1, "Alien FaceSucker.tga", <0,0,0>); if (1) { 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(); llSetTimerEvent(360); } timer() { vector pos = llGetSunDirection(); if ( pos.z = 0 ) llParticleSystem( [ ] ); else updateParticles(); } } Voir la video de l'effet Créer par Ama Omega et Modifier par Jopsy Pendragon Code:
// Particle Script 0.4 // Created by Ama Omega & Modified by Jopsy Pendragon for Particle Classes // 3-7-2004, updated 4-22-2004 // SECTION ONE: These settings affect how each particle LOOKS. integer glow = TRUE; // TRUE or FALSE, Make the particles glow vector startColor = <1,0.5,0>; // Start color of particles <R,G,B> (each is 0.0(dark) to 1.0(bright)) vector endColor = <0,0,0>; // End color of particles <R,G,B> (if interpColor == TRUE) float startAlpha = 1.0; // 0(invis) to 1.0(opaque), Start alpha (transparency) value float endAlpha = 0.0; // End alpha (transparency) value vector startSize = <0.9,0.9,0>; // <.04,.04,0> to <10,10,0> Start size of particles vector endSize = <0.4,0.4,0>; // End size of particles. (3rd part of vector is ignored) string texture = ""; // Texture used for particles, default used if blank // SECTION TWO: These settings affect how Many, how Quickly, and for how Long particles are created. // Note, integer count = 4; // How many particles to emit per burst (0 = off) float rate = 0.1; // How long to wait between burst (0.01 to 60, avoid 0.0 if you can) float age = 4.0; // How long does each particle live? (0.2 to 60) float life = 0.0; // How long to wait keep creating new particles (0.0 = never stop) // SECTION THREE: Where are new particles created, and what direction are they facing? // Choose a pattern from the following: // PSYS_SRC_PATTERN_EXPLODE (sends particles in all directions) // PSYS_SRC_PATTERN_DROP (count>1 is useless for this one, it also ignores minSpeed and maxSpeed) // PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY (I've never gotten this one to work -- Jopsy) // PSYS_SRC_PATTERN_ANGLE_CONE (set innerangle/outerange to make rings/cones of particles) // PSYS_SRC_PATTERN_ANGLE (set innerangle/outerangle to make flat fanshapes of particles) integer pattern = PSYS_SRC_PATTERN_DROP; float radius = 0; // 0 to ?50? How far from Emitter to create particles. float innerAngle = PI; // "tilt", for all ANGLE patterns, 0 to TWO_PI float outerAngle = 0.0; // "spread", for ANGLE patterns, 0 to TWO_PI, can use PI_BY_TWO or PI as well. vector omega = <0,0,0>; // Rotation of ANGLE patterns around the source <X,Y,Z>, // Warning, there's no way to RESET the emitter direction once you use Omega!! // You must attach the script to a new prim to clear the effect of omega. // SECTION FOUR: How do the particles move once they're created? integer followSource = FALSE; // TRUE or FALSE, Particles move as the emitter moves, (TRUE disables radius.) integer followVel = TRUE; // TRUE or FALSE, Particles rotate towards their direction integer wind = FALSE; // TRUE or FALSE, Particles get blown away by wind in the sim integer bounce = FALSE; // TRUE or FALSE, Make particles bounce on Z altitude of emitter float maxSpeed = 0.15; // 0.01 to ? Max speed each particle is spit out at float minSpeed = 0.0; // 0.01 to ? Min speed each particle is spit out at vector push = <0,0,0.15>; // Continuous force pushed on particles, use small settings for long lived particles key target = ""; // Select a target for particles to arrive at when they die // can be "self" (emitter), "owner" (you), "" or any prim/persons KEY. // SECTION FIVE: Ama's "Create Short Particle Settings List" integer enableoutput = TRUE; // Please wait until class is over before setting this to TRUE. // === Don't muck about below this line unless you're comfortable with the LSL scripting language ==== // Script variables integer pre = 2; //Adjust the precision of the generated list. integer flags; list sys; integer type; vector tempVector; rotation tempRot; string tempString; integer i; string float2String(float in) { return llGetSubString((string)in,0,pre - 7); } updateParticles() { flags = 0; if (target == "owner") target = llGetOwner(); if (target == "self") target = llGetKey(); if (glow) flags = flags | PSYS_PART_EMISSIVE_MASK; if (bounce) flags = flags | PSYS_PART_BOUNCE_MASK; if (startColor != endColor) flags = flags | PSYS_PART_INTERP_COLOR_MASK; if (startSize != endSize) 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; sys = [ 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 ]; float newrate = rate; if (newrate == 0.0) newrate=.01; if ( (age/rate)*count < 4096) llParticleSystem(sys); else { llInstantMessage(llGetOwner(),"Your particle system creates too many concurrent particles."); llInstantMessage(llGetOwner(),"Reduce count or age, or increate rate."); llParticleSystem( [ ] ); } } integer onoff; default { state_entry() { onoff=0; updateParticles(); } touch_start(integer num) { if ( enableoutput == FALSE ) { if ( onoff ) llResetScript(); onoff++; llParticleSystem( [ ] ); return; } if (1) return; // Comment out this line to enable this function llWhisper(0,"...Generating List..."); for (i=1;i<42;i+=2) { type = llGetListEntryType(sys,i); if(type == TYPE_FLOAT) { tempString = float2String(llList2Float(sys,i)); sys = llDeleteSubList(sys,i,i); sys = llListInsertList(sys,[tempString],i); } else if (type == TYPE_VECTOR) { tempVector = llList2Vector(sys,i); tempString = "<" + float2String(tempVector.x) + "," + float2String(tempVector.y) + "," + float2String(tempVector.z) + ">"; sys = llDeleteSubList(sys,i,i); sys = llListInsertList(sys,[tempString],i); } else if (type == TYPE_ROTATION) { tempRot = llList2Rot(sys,i); tempString = "<" + float2String(tempRot.x) + "," + float2String(tempRot.y) + "," + float2String(tempRot.z) + "," + float2String(tempRot.s) + ">"; sys = llDeleteSubList(sys,i,i); sys = llListInsertList(sys,[tempString],i); } else if (type == TYPE_STRING || type == TYPE_KEY) { tempString = "\"" + llList2String(sys,i) + "\""; sys = llDeleteSubList(sys,i,i); sys = llListInsertList(sys,[tempString],i); } } i = llListFindList(sys,[20,""]); if (i != -1) sys = llDeleteSubList(sys,i,i+1); llWhisper(0,"[" + llList2CSV(llList2List(sys,0,22)) + ","); llWhisper(0,llList2CSV(llList2List(sys,23,-1)) + "]"); } } Voir la video de l'effet Créer par Ama Omega Code:
// Particle Script v3 - By Ama Omega // 'orbitals' Custom settings by Jopsy Pendragon // Mask Flags - set to TRUE to enable integer glow = TRUE; // Make the particles glow integer bounce = FALSE; // Make particles bounce on Z plan of object integer interpColor = TRUE; // Go from start to end color integer interpSize = TRUE; // Go from start to end size 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_ANGLE; // 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 paramaters float age = 3; //how long will particles live (in seconds) float maxSpeed = .005; //maximum speed a particle should be moving float minSpeed =0.005; //minimum speed a particle should be movie string texture; //texture applied to the particles float startAlpha = 1; //alpha transparency at start float endAlpha = 1; //alpha at end vector startColor = <.1,.85,1>; vector endColor = <.5,0,.5>; vector startSize = <.7,.7,0>; //particles start at this size vector endSize = <.04,.04,0>; //and end at this size vector push = <0,0,0>; //how far to push particles // System paramaters float rate = 0.01; // How fast to emit particles float radius = 1; // Radius to emit particles for BURST pattern integer count = 1; // How many particles to emit per BURST float outerAngle = PI_BY_TWO; // Outer angle for all ANGLE patterns float innerAngle =PI_BY_TWO ; // Inner angle for all ANGLE patterns vector omega = <0,0,.1>; // Rotation of ANGLE patterns around the source float life = 0; // Script variables integer flags; updateParticles() { if (target == "owner") target = llGetOwner(); if (target == "self") target = llGetKey(); 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() { llTargetOmega(llVecNorm(<(1-llFrand(2)),(1-llFrand(2)),(1-llFrand(2))> ),1,.1); updateParticles(); } touch(integer n) { llResetScript(); } } Voir la video de l'effet Créer par Jopsy Pendragon Code:
// Jopsy's No-Frills Particle Script v2 // All settings below are 'defaults integer mode; default { state_entry() { llParticleSystem( [ // Appearance Settings PSYS_PART_START_SCALE,(vector) <0.1,0.8,0>,// Start Size, (minimum .04, max 10.0?) PSYS_PART_END_SCALE,(vector) <0.2,0.3,0>, // End Size, requires *_INTERP_SCALE_MASK PSYS_PART_START_COLOR,(vector) <0.0,5,0>, // Start Color, (RGB, 0 to 1) PSYS_PART_END_COLOR,(vector) <0.9,0,0>, // EndC olor, requires *_INTERP_COLOR_MASK PSYS_PART_START_ALPHA,(float) 0.9, // startAlpha (0 to 1), PSYS_PART_END_ALPHA,(float) 0.5, // endAlpha (0 to 1) PSYS_SRC_TEXTURE,(string) "", // name of a 'texture' in emitters inventory // Flow Settings, keep (age/rate)*count well below 4096 !!! PSYS_SRC_BURST_PART_COUNT,(integer) 20, // # of particles per burst PSYS_SRC_BURST_RATE,(float) 0.1, // delay between bursts PSYS_PART_MAX_AGE,(float) 2.0, // how long particles live PSYS_SRC_MAX_AGE,(float) 0,//15.0*60.0, // turns emitter off after 15 minutes. (0.0 = never) // Placement Settings PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_ANGLE_CONE, // _PATTERN can be: *_EXPLODE, *_DROP, *_ANGLE, *ANGLE_CONE or *_ANGLE_CONE_EMPTY PSYS_SRC_BURST_RADIUS,(float) 0.1, // How far from emitter new particles start, PSYS_SRC_INNERANGLE,(float) PI/20, // aka 'spread' (0 to 2*PI), PSYS_SRC_OUTERANGLE,(float) 0.0, // aka 'tilt' (0(up), PI(down) to 2*PI), PSYS_SRC_OMEGA,(vector) <0,0,2 * PI>, // how much to rotate around x,y,z per burst, // Movement Settings PSYS_SRC_ACCEL,(vector) <0,0,-3>, // aka gravity or push, ie <0,0,-1.0> = down PSYS_SRC_BURST_SPEED_MIN,(float) 2.5, // Minimum velocity for new particles PSYS_SRC_BURST_SPEED_MAX,(float) 3.5, // Maximum velocity for new particles //PSYS_SRC_TARGET_KEY,(key) llGetOwner(), // key of a target, requires *_TARGET_POS_MASK // for *_TARGET try llGetKey(), or llGetOwner(), or llDetectedKey(0) even. :) PSYS_PART_FLAGS, // Remove the leading // from the options you want enabled: PSYS_PART_EMISSIVE_MASK | // particles glow PSYS_PART_BOUNCE_MASK | // particles bounce up from emitter's 'Z' altitude //PSYS_PART_WIND_MASK | // particles get blown around by wind //PSYS_PART_FOLLOW_VELOCITY_MASK | // particles rotate towards where they're going //PSYS_PART_FOLLOW_SRC_MASK | // particles move as the emitter moves PSYS_PART_INTERP_COLOR_MASK | // particles change color depending on *_END_COLOR PSYS_PART_INTERP_SCALE_MASK | // particles change size using *_END_SCALE //PSYS_PART_TARGET_POS_MASK | // particles home on *_TARGET key 0 // Unless you understand binary arithmetic, leave this 0 here. :) ] ); //sound // llLoopSound("runningriver",1.0); } //touch_start(integer num) { //if (mode++) llResetScript(); // 2nd time touched? start over //else llParticleSystem([ ]); // 1st time touched? Turn particles off. //} } Voir la video de l'effet Créer par Jopsy Pendragon Code:
// Jopsy's No-Frills Particle Script v2 // All settings below are 'defaults integer mode; default { state_entry() { llParticleSystem( [ // Appearance Settings PSYS_PART_START_SCALE,(vector) <1,1,0>,// Start Size, (minimum .04, max 10.0?) PSYS_PART_END_SCALE,(vector) <1,1,0>, // End Size, requires *_INTERP_SCALE_MASK PSYS_PART_START_COLOR,(vector) <1,1,1>, // Start Color, (RGB, 0 to 1) PSYS_PART_END_COLOR,(vector) <1,1,1>, // EndC olor, requires *_INTERP_COLOR_MASK PSYS_PART_START_ALPHA,(float) 1.0, // startAlpha (0 to 1), PSYS_PART_END_ALPHA,(float) 1.0, // endAlpha (0 to 1) PSYS_SRC_TEXTURE,(string) "", // name of a 'texture' in emitters inventory // Flow Settings, keep (age/rate)*count well below 4096 !!! PSYS_SRC_BURST_PART_COUNT,(integer) 1, // # of particles per burst PSYS_SRC_BURST_RATE,(float) 0.1, // delay between bursts PSYS_PART_MAX_AGE,(float) 10, // how long particles live PSYS_SRC_MAX_AGE,(float) 15.0*60.0, // turns emitter off after 15 minutes. (0.0 = never) // Placement Settings PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_DROP, // _PATTERN can be: *_EXPLODE, *_DROP, *_ANGLE, *ANGLE_CONE or *_ANGLE_CONE_EMPTY PSYS_SRC_BURST_RADIUS,(float) 0.0, // How far from emitter new particles start, PSYS_SRC_INNERANGLE,(float) 0.0, // aka 'spread' (0 to 2*PI), PSYS_SRC_OUTERANGLE,(float) 0.0, // aka 'tilt' (0(up), PI(down) to 2*PI), PSYS_SRC_OMEGA,(vector) <0,0,0>, // how much to rotate around x,y,z per burst, // Movement Settings PSYS_SRC_ACCEL,(vector) <0,0,0>, // aka gravity or push, ie <0,0,-1.0> = down PSYS_SRC_BURST_SPEED_MIN,(float) 1.0, // Minimum velocity for new particles PSYS_SRC_BURST_SPEED_MAX,(float) 1.0, // Maximum velocity for new particles //PSYS_SRC_TARGET_KEY,(key) llGetOwner(), // key of a target, requires *_TARGET_POS_MASK // for *_TARGET try llGetKey(), or llGetOwner(), or llDetectedKey(0) even. :) PSYS_PART_FLAGS, // Remove the leading // from the options you want enabled: //PSYS_PART_EMISSIVE_MASK | // particles glow //PSYS_PART_BOUNCE_MASK | // particles bounce up from emitter's 'Z' altitude //PSYS_PART_WIND_MASK | // particles get blown around by wind //PSYS_PART_FOLLOW_VELOCITY_MASK | // particles rotate towards where they're going //PSYS_PART_FOLLOW_SRC_MASK | // particles move as the emitter moves //PSYS_PART_INTERP_COLOR_MASK | // particles change color depending on *_END_COLOR //PSYS_PART_INTERP_SCALE_MASK | // particles change size using *_END_SCALE //PSYS_PART_TARGET_POS_MASK | // particles home on *_TARGET key 0 // Unless you understand binary arithmetic, leave this 0 here. :) ] ); } touch_start(integer num) { if (mode++) llResetScript(); // 2nd time touched? start over else llParticleSystem([ ]); // 1st time touched? Turn particles off. } } Voir la video de l'effet Créer par Ama Omega Code:
// Particle Script v3 - By Ama Omega // 'orbitals' Custom settings by Jopsy Pendragon // Mask Flags - set to TRUE to enable integer glow = TRUE; // Make the particles glow integer bounce = FALSE; // Make particles bounce on Z plan of object integer interpColor = TRUE; // Go from start to end color integer interpSize = TRUE; // Go from start to end size 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_ANGLE; // 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 paramaters float age = 3; //how long will particles live (in seconds) float maxSpeed = .005; //maximum speed a particle should be moving float minSpeed =0.005; //minimum speed a particle should be movie string texture; //texture applied to the particles float startAlpha = 1; //alpha transparency at start float endAlpha = 1; //alpha at end vector startColor = <.1,.85,1>; vector endColor = <.3,8,.4>; vector startSize = <.3,.3,0>; //particles start at this size vector endSize = <.04,.04,0>; //and end at this size vector push = <0,0,0>; //how far to push particles // System paramaters float rate = 0.01; // How fast to emit particles float radius = 1; // Radius to emit particles for BURST pattern integer count = 1; // How many particles to emit per BURST float outerAngle = PI_BY_TWO; // Outer angle for all ANGLE patterns float innerAngle =PI_BY_TWO ; // Inner angle for all ANGLE patterns vector omega = <0,0,.1>; // Rotation of ANGLE patterns around the source float life = 0; // Script variables integer flags; updateParticles() { if (target == "owner") target = llGetOwner(); if (target == "self") target = llGetKey(); 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() { llTargetOmega(llVecNorm(<(1-llFrand(2)),(1-llFrand(2)),(1-llFrand(2))> ),1,.1); updateParticles(); } touch(integer n) { llResetScript(); } } Voir la video de l'effet Créer par Ama Omega Code:
// Particle Script 0.5 // Created by Ama Omega // 3-26-2004 // Mask Flags - set to TRUE to enable integer glow = TRUE; // Make the particles glow integer bounce = FALSE; // Make particles bounce on Z plane of object integer interpColor = TRUE; // Go from start to end color integer interpSize = TRUE; // Go from start to end size integer wind = FALSE; // Particles effected by wind integer followSource = TRUE; // 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_DROP; // 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 paramaters float age = 4; // Life of each particle float maxSpeed = 0.1; // Max speed each particle is spit out at float minSpeed = 0.1; // Min speed each particle is spit out at string texture = "Smoke"; // Texture used for particles, default used if blank float startAlpha = 1; // Start alpha (transparency) value float endAlpha = 1; // End alpha (transparency) value vector startColor = <1,0,0>; // Start color of particles <R,G,B> vector endColor = <0.9,0.0,0.0>; // End color of particles <R,G,B> (if interpColor == TRUE) vector startSize = <0.1,0.2,1>; // Start size of particles vector endSize = <0.25,0.5,1.25>; // End size of particles (if interpSize == TRUE) vector push = <0,0,-0.1>; // Force pushed on particles // System paramaters float rate = 2; // How fast (rate) to emit particles float radius = 0.01; // Radius to emit particles for BURST pattern integer count = 1; // How many particles to emit per BURST float outerAngle = 1.54; // Outer angle for all ANGLE patterns float innerAngle = 1.55; // 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 pre = 2; //Adjust the precision of the generated list. integer flags; list sys; integer type; vector tempVector; rotation tempRot; string tempString; integer i; string float2String(float in) { return llGetSubString((string)in,0,pre - 7); } updateParticles() { flags = 0; if (target == "owner") target = llGetOwner(); if (target == "self") target = llGetKey(); 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; sys = [ 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 ]; llParticleSystem(sys); } default { state_entry() { updateParticles(); } touch_start(integer num) { llWhisper(0,"...Generating List..."); for (i=1;i<42;i+=2) { type = llGetListEntryType(sys,i); if(type == TYPE_FLOAT) { tempString = float2String(llList2Float(sys,i)); sys = llDeleteSubList(sys,i,i); sys = llListInsertList(sys,[tempString],i); } else if (type == TYPE_VECTOR) { tempVector = llList2Vector(sys,i); tempString = "<" + float2String(tempVector.x) + "," + float2String(tempVector.y) + "," + float2String(tempVector.z) + ">"; sys = llDeleteSubList(sys,i,i); sys = llListInsertList(sys,[tempString],i); } else if (type == TYPE_ROTATION) { tempRot = llList2Rot(sys,i); tempString = "<" + float2String(tempRot.x) + "," + float2String(tempRot.y) + "," + float2String(tempRot.z) + "," + float2String(tempRot.s) + ">"; sys = llDeleteSubList(sys,i,i); sys = llListInsertList(sys,[tempString],i); } else if (type == TYPE_STRING || type == TYPE_KEY) { tempString = "\"" + llList2String(sys,i) + "\""; sys = llDeleteSubList(sys,i,i); sys = llListInsertList(sys,[tempString],i); } } sys = llListSort(sys,2,TRUE); if (target == "") sys = llDeleteSubList(sys,38,39); else if (target == llGetKey() ) sys = llListInsertList(llDeleteSubList(sys,39,39),["llGetKey()"],39); else if (target == llGetOwner() ) sys = llListInsertList(llDeleteSubList(sys,39,39),["llGetOwner()"],39); if (texture == "") sys = llDeleteSubList(sys,24,25); if (!interpSize) sys = llDeleteSubList(sys,12,13); if (!interpColor) sys = llDeleteSubList(sys,6,7); llWhisper(0,"[" + llList2CSV(llList2List(sys,0,21)) + ","); llWhisper(0,llList2CSV(llList2List(sys,22,-1)) + "]"); } } Voir la video de l'effet Créer par eltee Statosky Code:
////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////// //// eltee Statosky's Particle Creation Engine 1.0 //// 01/09/2004 //// *PUBLIC DOMAIN* //// Free to use //// Free to copy //// Free to poke at //// Free to hide in stuff you sell //// Just please leave this header intact ////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////// integer effectFlags=0; integer running=TRUE; /////////////////////////////////////////////////////// // Color Secelection Variables /////////////////////////////////////////////////////// // Interpolate between startColor and endColor integer colorInterpolation = TRUE; // Starting color for each particle vector startColor = <0.1, 9.9, 6.1 >; // Ending color for each particle vector endColor = <0.75, 0.5, 1.0>; // Starting Transparency for each particle (1.0 is solid) float startAlpha = 0.9; // Ending Transparency for each particle (0.0 is invisible) float endAlpha = 0.1; // Enables Absolute color (true) ambient lighting (false) integer glowEffect = FALSE; /////////////////////////////////////////////////////// // Size & Shape Selection Variables /////////////////////////////////////////////////////// // Interpolate between startSize and endSize integer sizeInterpolation = TRUE; // Starting size of each particle vector startSize = <3.5, 8.5, 9999.0>; // Ending size of each particle vector endSize = <0.5, 0.5, 0.0>; // Turns particles to face their movement direction integer followVelocity = TRUE; // Texture the particles will use ("" for default) string texture = ""; /////////////////////////////////////////////////////// // Timing & Creation Variables Variables /////////////////////////////////////////////////////// // Lifetime of one particle (seconds) float particleLife = 3.0; // Lifetime of the system 0.0 for no time out (seconds) float SystemLife = 0.0; // Number of seconds between particle emissions float emissionRate = 0.02; // Number of particles to releast on each emission integer partPerEmission = 1; /////////////////////////////////////////////////////// // Angular Variables /////////////////////////////////////////////////////// // The radius used to spawn angular particle patterns float radius = 3.0; // Inside angle for angular particle patterns float innerAngle = 1; // Outside angle for angular particle patterns float outerAngle = 0; // Rotational potential of the inner/outer angle vector omega = <0.0, 0.0, 0.2>; /////////////////////////////////////////////////////// // Movement & Speed Variables /////////////////////////////////////////////////////// // The minimum speed a particle will be moving on creation float minSpeed = 0.00000001; // The maximum speed a particle will be moving on creation float maxSpeed = 0.00001; // Global acceleration applied to all particles vector acceleration = <0.0, 0.0, -0.5>; // If true, particles will be blown by the current wind integer windEffect = TRUE; // if true, particles 'bounce' off of the object's Z height integer bounceEffect = TRUE; // If true, particles spawn at the container object center integer followSource = TRUE; // If true, particles will move to expire at the target //integer followTarget = TRUE; // Desired target for the particles (any valid object/av key) // target Needs to be set at runtime key target = ""; /////////////////////////////////////////////////////// //As yet unimplemented particle system flags /////////////////////////////////////////////////////// integer randomAcceleration = FALSE; integer randomVelocity = FALSE; integer particleTrails = FALSE; /////////////////////////////////////////////////////// // Pattern Selection /////////////////////////////////////////////////////// // Uncomment the pattern call you would like to use // Drop parcles at the container objects' center //integer pattern = PSYS_SRC_PATTERN_DROP; // Burst pattern originating at objects' center //integer pattern = PSYS_SRC_PATTERN_EXPLODE; // Uses 2D angle between innerAngle and outerAngle integer pattern = PSYS_SRC_PATTERN_ANGLE; // Uses 3D cone spread between innerAngle and outerAngle //integer pattern = PSYS_SRC_PATTERN_ANGLE_CONE; // //integer pattern = PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY; setParticles() { // Here is where to set the current target // llGetKey() targets this script's container object // llGetOwner() targets the owner of this script // Feel free to insert any other valid key target=""; // The following block of if statements is used to construct the mask if (colorInterpolation) effectFlags = effectFlags|PSYS_PART_INTERP_COLOR_MASK; if (sizeInterpolation) effectFlags = effectFlags|PSYS_PART_INTERP_SCALE_MASK; if (windEffect) effectFlags = effectFlags|PSYS_PART_WIND_MASK; if (bounceEffect) effectFlags = effectFlags|PSYS_PART_BOUNCE_MASK; if (followSource) effectFlags = effectFlags|PSYS_PART_FOLLOW_SRC_MASK; if (followVelocity) effectFlags = effectFlags|PSYS_PART_FOLLOW_VELOCITY_MASK; if (target!="") effectFlags = effectFlags|PSYS_PART_TARGET_POS_MASK; if (glowEffect) effectFlags = effectFlags|PSYS_PART_EMISSIVE_MASK; //Uncomment the following selections once they've been implemented // if (randomAcceleration) effectFlags = effectFlags|PSYS_PART_RANDOM_ACCEL_MASK; // if (randomVelocity) effectFlags = effectFlags|PSYS_PART_RANDOM_VEL_MASK; // if (particleTrails) effectFlags = effectFlags|PSYS_PART_TRAIL_MASK; llParticleSystem([ PSYS_PART_FLAGS, effectFlags, PSYS_SRC_PATTERN, pattern, PSYS_PART_START_COLOR, startColor, PSYS_PART_END_COLOR, endColor, PSYS_PART_START_ALPHA, startAlpha, PSYS_PART_END_ALPHA, endAlpha, PSYS_PART_START_SCALE, startSize, PSYS_PART_END_SCALE, endSize, PSYS_PART_MAX_AGE, particleLife, PSYS_SRC_ACCEL, acceleration, PSYS_SRC_TEXTURE, texture, PSYS_SRC_BURST_RATE, emissionRate, PSYS_SRC_INNERANGLE, innerAngle, PSYS_SRC_OUTERANGLE, outerAngle, PSYS_SRC_BURST_PART_COUNT, partPerEmission, PSYS_SRC_BURST_RADIUS, radius, PSYS_SRC_BURST_SPEED_MIN, minSpeed, PSYS_SRC_BURST_SPEED_MAX, maxSpeed, PSYS_SRC_MAX_AGE, SystemLife, PSYS_SRC_TARGET_KEY, target, PSYS_SRC_OMEGA, omega ]); } default { state_entry() { running=TRUE; llSetText("Running", <0.0, 1.0, 0.0>, 0.5); setParticles(); } touch_start(integer num_detected) { if (running==TRUE) { running=FALSE; llSetText("Stopped", <1.0, 0.0, 0.0>, 0.5); llParticleSystem([]); } else { running=TRUE; llSetText("Running", <0.0, 1.0, 0.0>, 0.5); setParticles(); } } } Voir la video de l'effet Créer par Jopsy Pendragon Code:
// No Frills Script Template -- Jopsy Pendragon key mykey; list twinkeys; list twinpos; integer numtwins; vector mypos; default { state_entry() { llSetTimerEvent(5.0); } timer() { key target=llGetKey(); vector mypos = llGetPos(); float red=llFrand(1.0); float green=llFrand(1.0); float blue = llFrand(1.0); vector up = <1-llFrand(2),1-llFrand(2),1-llFrand(2)>; llLookAt( (vector)(mypos + up), 1.0, .1); llParticleSystem( [ PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_ANGLE_CONE, // _PATTERN can be: *_EXPLODE, *_DROP, *_ANGLE, *ANGLE_CONE or *_ANGLE_CONE_EMPTY PSYS_SRC_BURST_PART_COUNT,(integer) 5, // defined above PSYS_SRC_BURST_RATE,(float) .1, // defined above PSYS_PART_MAX_AGE,(float) 5, // defined above PSYS_SRC_BURST_RADIUS,(float) 1.2, // How far from emitter new particles start, PSYS_SRC_INNERANGLE,(float) PI/2, // aka 'spread' (0 to 2*PI), PSYS_SRC_OUTERANGLE,(float) 0.0, // aka 'tilt' (0 to 2*PI), //PSYS_SRC_OMEGA,(vector)(offset*0.1), PSYS_SRC_ACCEL,(vector) (-up*.3), PSYS_SRC_BURST_SPEED_MIN,(float)0.0, PSYS_SRC_BURST_SPEED_MAX,(float) 0.2, PSYS_PART_START_SCALE,(vector) <.5,.04,0.0>,// Start Size, (minimum .04, max 10.0?) PSYS_PART_END_SCALE,(vector) <.04,.5,0>, // End Size, requires *_INTERP_SCALE_MASK PSYS_PART_START_COLOR,(vector) <red*2,green,blue>, PSYS_PART_END_COLOR,(vector) <red, green, blue*2>, PSYS_PART_START_ALPHA,(float) 1.0, // startAlpha (0 to 1), //PSYS_PART_END_ALPHA,(float) // endAlpha (0 to 1) //PSYS_SRC_TARGET_KEY,(key)target,// , // for *_TARGET try llGetKey(), or llGetOwner(), or llDetectedKey(0) even. :) PSYS_SRC_TEXTURE,(string) "blobbies.tga", // name of a 'texture' in emitters inventory //PSYS_SRC_MAX_AGE,(float) 0.0, // turns emitter off. (0.0 = never) PSYS_PART_FLAGS, PSYS_PART_EMISSIVE_MASK | // particles glow //PSYS_PART_BOUNCE_MASK | // particles bounce up from emitter's 'Z' altitude //PSYS_PART_WIND_MASK | // particles get blown around by wind PSYS_PART_FOLLOW_VELOCITY_MASK | // particles rotate towards where they're going //PSYS_PART_FOLLOW_SRC_MASK | // particles move as the emitter moves PSYS_PART_INTERP_COLOR_MASK | // particles change color depending on *_END_COLOR PSYS_PART_INTERP_SCALE_MASK | // particles change size using *_END_SCALE PSYS_PART_TARGET_POS_MASK ] ); } } Voir la video de l'effet Créer par Jopsy Pendragon Code:
// No frills particle script -- Jopsy Pendragon default { state_entry() { llParticleSystem( [ PSYS_SRC_PATTERN, PSYS_SRC_PATTERN_ANGLE, PSYS_SRC_BURST_PART_COUNT,(integer) 4, // adjust for beam strength, PSYS_SRC_BURST_RATE,(float) .05, PSYS_PART_MAX_AGE,(float) .6, PSYS_SRC_BURST_SPEED_MIN,(float)1, PSYS_SRC_BURST_SPEED_MAX,(float) 7.0, PSYS_PART_START_SCALE,(vector) <0,.1,0>, PSYS_PART_END_SCALE,(vector) <.04,.5,0>, PSYS_PART_START_COLOR,(vector) <1,0,0>, PSYS_PART_END_COLOR,(vector) <.2,0,0>, PSYS_PART_START_ALPHA,(float)0.5, PSYS_PART_END_ALPHA,(float)0.00, PSYS_PART_FLAGS, PSYS_PART_EMISSIVE_MASK | PSYS_PART_FOLLOW_VELOCITY_MASK | PSYS_PART_FOLLOW_SRC_MASK | PSYS_PART_INTERP_SCALE_MASK ] ); } } |
![]() |
|
Suivre Répondre |
Fil d'ariane
Connectés sur ce fil1 connecté (0 membre et 1 invité)
Afficher la liste détaillée des connectés
|