Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //#CLIENTSIDE
- function startEffect(effectnum) {
- hideimgs(200, 300);
- timeout=.1;
- switch (effectnum) {
- case 1: {
- with (findimg(201)) {
- // Orange Streaks
- // Emitter attributes
- layer = 0;
- emitter.delaymin = 0.05;
- emitter.delaymax = 0.05;
- emitter.nrofparticles = 2;
- emitter.autorotation = true;
- // Basic particle attributes
- emitter.particle.lifetime = 1;
- emitter.particle.image = "g4_particle_spark.png";
- // Color
- emitter.particle.red = random (.22,.88);
- emitter.particle.green = random (.22,.32);
- emitter.particle.blue = 0;
- emitter.particle.zoom = 0.8;
- emitter.particle.mode = 0; // add like a lighe
- // Movement
- emitter.addlocalmodifier("once", 0, 0, "angle", "replace", pi - 18, pi + 18);
- emitter.addlocalmodifier("range", 0, 0.2, "alpha", "replace", 0.2, 0.99);
- emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 25, 15);
- emitter.addlocalmodifier("range", 0.5, 1, "speed", "replace", 15, 10);
- emitter.addlocalmodifier("range", .5, 1, "zoom", "replace", 1, 3);
- emitter.addlocalmodifier("once", 0, 0, "green", "add", 0, 0.15);
- }
- with (findimg(202)) {
- // Yellow Streaks
- // Emitter attributes
- layer = 0;
- emitter.delaymin = 0.05;
- emitter.delaymax = 0.05;
- emitter.nrofparticles = 1;
- emitter.autorotation = true;
- // Basic particle attributes
- emitter.particle.lifetime = 1;
- emitter.particle.image = "g4_particle_spark.png";
- // Color
- emitter.particle.red = random (.23,.89);
- emitter.particle.green = random (.12,.22);
- emitter.particle.blue = 0;
- emitter.particle.zoom = 0.8;
- emitter.particle.mode = 0; // add like a light
- // Movement
- emitter.particle.angle = pi;
- emitter.particle.speed = 25;
- emitter.addlocalmodifier("once", 0, 0, "angle", "replace", pi - 15, pi + 15);
- emitter.addlocalmodifier("range", 0, 0.2, "alpha", "replace", 0.2, 0.99);
- emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 25, 15);
- emitter.addlocalmodifier("range", 0.5, 1, "speed", "replace", 15, 10);
- emitter.addlocalmodifier("range", .5, 1, "zoom", "replace", 1, 4);
- emitter.addlocalmodifier("once", 0, 0, "green", "add", 0, 0.25);
- }
- with (findimg(203)) {
- // Fire
- // Emitter attributes
- layer = 1;
- emitter.delaymin = 0.05;
- emitter.delaymax = 0.05;
- emitter.nrofparticles = 1;
- emitter.firstinfront = false;
- emitter.emissionoffset = {0, 0.4, 0};
- // Basic particle attributes
- emitter.particle.lifetime = 2;
- emitter.particle.image = "g4_particle_smoke.png";
- // Color
- emitter.particle.red = 1;
- emitter.particle.green = 0.2;
- emitter.particle.blue = 0;
- emitter.particle.alpha = 0.99;
- emitter.particle.zoom = 0.6;
- emitter.particle.mode = 0; // add like a light
- // Movement
- emitter.particle.angle = pi;
- emitter.particle.speed = 6;
- emitter.addlocalmodifier("once", 0, 0, "angle", "replace", pi - 18, pi + 18);
- emitter.addlocalmodifier("range", 0, 0.2, "alpha", "replace", 0.2, 0.99);
- emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 25, 15);
- emitter.addlocalmodifier("range", 0.5, 1, "speed", "replace", 15, 10);
- emitter.addlocalmodifier("range", .5, 1, "zoom", "replace", 1, 3);
- }
- break;
- }
- case 2: {
- with (findimg(200)) {
- // Falling leaves
- // Emitter attributes
- layer = 2;
- emitter.delaymin = 0.1;
- emitter.delaymax = 0.3;
- emitter.nrofparticles = 2;
- emitter.emissionoffset = {0, -5, 10};
- emitter.checkbelowterrain = true;
- // Basic particle attributes
- emitter.particle.lifetime = 10;
- emitter.particle.image = "g4_particle_leaf.png";
- // Movement
- emitter.particle.zangle = -1;
- emitter.particle.speed = 2;
- emitter.particle.alpha = 0.75;
- emitter.particle.mode = 1;
- emitter.addglobalmodifier("impulse", 0.2, 0.2, "zangle", "multiply", 0.95, 0.95);
- emitter.addlocalmodifier("once", 0, 0, "rotation", "replace", 0, 2*pi);
- emitter.addlocalmodifier("once", 0, 0, "angle", "replace", degtorad(200), degtorad(260));
- emitter.addlocalmodifier("once", 0, 0, "x", "add", -10, 25);
- emitter.addlocalmodifier("once", 0, 0, "zoom", "replace", 0.6, 1.2);
- emitter.addlocalmodifier("once", 0, 0, "green", "replace", 0.5, 1);
- emitter.addglobalmodifier("impulse", 0.2, 0.2, "spin", "multiply", 0.6, 0.6);
- emitter.addlocalmodifier("range", 0, 100000, "speed", "add", 3, 3);
- with (emitter.addlocalmodifier("impulse", 1, 2, "spin", "add", -20, -30)) {
- addmod("zangle", "add", 0.1, 0.5);
- }
- }
- break;
- }
- case 3: {
- //Flame
- with (findimg(200)) {
- // Shadow
- // Emitter attributes
- layer = 0;
- emitter.delaymin = 0.05;
- emitter.delaymax = 0.05;
- emitter.nrofparticles = 2;
- emitter.firstinfront = false;
- emitter.emissionoffset = {0, -3, 0.3};
- // Basic particle attributes
- emitter.particle.lifetime = 0.6;
- emitter.particle.image = "g4_animation_fire.gif";
- // Color
- emitter.particle.alpha = 0.6;
- emitter.particle.zoom = 1.5;
- emitter.particle.mode = 2; // subtract
- // Movement
- emitter.particle.angle = pi / 2;
- emitter.particle.speed = 6;
- emitter.addlocalmodifier("once", 0, 0, "angle", "add", -0.1, 0.1);
- emitter.addlocalmodifier("once", 0, 0, "x", "add", -0.8, 0.8);
- emitter.addlocalmodifier("range", 0, 0.6, "alpha", "replace", 0.6, 0);
- emitter.addlocalmodifier("range", 0, 0.3, "zoom", "replace", 1.5, 2.5);
- emitter.addlocalmodifier("range", 0.3, 0.6, "zoom", "replace", 2.5, 1.5);
- emitter.addlocalmodifier("range", 0, 0.6, "speed", "replace", 6, 10);
- }
- with (findimg(201)) {
- // Fire
- // Emitter attributes
- layer = 1;
- emitter.delaymin = 0.05;
- emitter.delaymax = 0.05;
- emitter.nrofparticles = 4;
- emitter.firstinfront = false;
- emitter.emissionoffset = {0, -3, 0};
- // Basic particle attributes
- emitter.particle.lifetime = 0.6;
- emitter.particle.image = "g4_animation_fire.gif";
- // Color
- emitter.particle.red = 1;
- emitter.particle.green = 0.5;
- emitter.particle.blue = 0.5;
- emitter.particle.alpha = 0.6;
- emitter.particle.zoom = 1;
- emitter.particle.mode = 0; // add like a light
- // Movement
- emitter.particle.angle = pi / 2;
- emitter.particle.speed = 6;
- emitter.addlocalmodifier("once", 0, 0, "angle", "add", -0.1, 0.1);
- emitter.addlocalmodifier("once", 0, 0, "x", "add", -1, 1);
- emitter.addlocalmodifier("range", 0, 0.6, "alpha", "replace", 0.6, 0);
- emitter.addlocalmodifier("range", 0, 0.3, "zoom", "replace", 1, 2);
- emitter.addlocalmodifier("range", 0.3, 0.6, "zoom", "replace", 2, 1);
- emitter.addlocalmodifier("range", 0, 0.6, "speed", "replace", 6, 10);
- }
- with (findimg(202)) {
- // Sparks
- // Emitter attributes
- layer = 2;
- emitter.delaymin = 0.05;
- emitter.delaymax = 0.05;
- emitter.nrofparticles = 4;
- emitter.firstinfront = false;
- emitter.emissionoffset = {0, -3, 0};
- // Basic particle attributes
- emitter.particle.lifetime = 1.5;
- emitter.particle.image = "light2s.png";
- // Color
- emitter.particle.red = 1;
- emitter.particle.green = 0;
- emitter.particle.blue = 0;
- emitter.particle.alpha = 0.99;
- emitter.particle.zoom = .8;
- emitter.particle.mode = 0; // add like a light
- // Movement
- emitter.particle.angle = pi / 2;
- emitter.particle.speed = 6;
- emitter.addlocalmodifier("once", 0, 0, "angle", "add", -0.1, 0.1);
- emitter.addlocalmodifier("once", 0, 0, "x", "add", -1, 1);
- emitter.addlocalmodifier("range", 0, 1.5, "alpha", "replace", 0.99, 0.4);
- emitter.addlocalmodifier("range", 0, 1.5, "zoom", "replace", .8, 0);
- emitter.addlocalmodifier("range", 0, 1.5, "speed", "replace", 6, 10);
- }
- break;
- }
- case 4: {
- with (findimg(200)) {
- // Cauldron
- // Emitter attributes
- layer = 2;
- emitter.delaymin = 0.1;
- emitter.delaymax = 0.1;
- emitter.nrofparticles = 1;
- // Basic particle attributes
- emitter.particle.lifetime = 3;
- emitter.particle.image = "g4_particle_bubble.png";
- emitter.particle.mode = 1; // alpha transparent
- emitter.particle.alpha = 0.8;
- emitter.particle.zoom = 0.1;
- emitter.particle.red = 0.3;
- emitter.particle.green = 1;
- emitter.particle.blue = 0.2;
- // Movement
- emitter.particle.angle = pi / 2;
- emitter.particle.speed = 8;
- emitter.addlocalmodifier("once", 0, 0, "x", "add", -1.5, 1.5);
- emitter.addlocalmodifier("once", 0, 0, "y", "add", -0.5, 0.5);
- emitter.addglobalmodifier("impulse", 0.2, 0.2, "spin", "multiply", 0.9, 0.9);
- emitter.addlocalmodifier("once", 0, 0, "angle", "add", -0.2, 0.2);
- emitter.addlocalmodifier("once", 0, 0, "rotation", "replace", 0, 2*pi);
- emitter.addlocalmodifier("range", 1, 3, "alpha", "replace", 0.8, 0);
- emitter.addlocalmodifier("range", 0, 3, "zoom", "add", 0.2, 0.2);
- emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 12, 4);
- emitter.addlocalmodifier("range", 0.5, 3, "speed", "replace", 4, 1.5);
- }
- break;
- }
- case 5: {
- // Splash
- with (findimg(200)) {
- // Emitter attributes
- layer = 1;
- emitter.delaymin = 100000;
- emitter.delaymax = 100000;
- emitter.nrofparticles = 80;//80
- emitter.emissionoffset = { -4, 2, 1};
- // Basic particle attributes
- emitter.particle.lifetime = 1;//1
- emitter.particle.image = "light2s.png";
- emitter.particle.mode = 0; // light
- emitter.particle.red = 0.2;
- emitter.particle.green = 0.5;
- emitter.particle.blue = 1;
- emitter.particle.alpha = 0.99;
- emitter.particle.zoom = 0.6;//.6
- // Movement
- emitter.particle.zangle = 0.4;
- emitter.addlocalmodifier("once", 0, 0, "angle", "replace", 0, 2*pi);
- emitter.addlocalmodifier("once", 0, 0, "speed", "replace", 3, 6);
- emitter.addglobalmodifier("range", 0, 100000, "zangle", "add", -2, -2);
- emitter.addlocalmodifier("range", 0.5, 1, "alpha", "replace", 0.99, 0);
- emitter.addlocalmodifier("range", 0.4, 1, "zoom", "replace", 0.6, 0);
- emitter.emit();
- }
- break;
- }
- case 6: {
- // Wave rings
- with (findimg(200)) {
- // Emitter attributes
- layer = 2;
- emitter.delaymin = 0.6;
- emitter.delaymax = 0.8;
- emitter.nrofparticles = 1;
- emitter.emissionoffset = {0, 1, 0};
- // Basic particle attributes
- emitter.particle.lifetime = 2;
- emitter.particle.image = "g4_particle_ring.png";
- emitter.particle.mode = 0; // light
- emitter.particle.red = random (0.6,.55);
- emitter.particle.green = random (0.22,.85);
- emitter.particle.blue = random (.42,.65);
- emitter.particle.alpha = random (.30,.99);
- emitter.particle.zoom = .6;
- emitter.particle.speed = 0;
- emitter.particle.stretchy = .7;
- emitter.addglobalmodifier("range", 0, 10000, "zoom", "add", 4, 3);
- emitter.addglobalmodifier("range", 0, 10000, "alpha", "add", -0.5, -0.75);
- }
- break;
- }
- case 7: {
- // Tornado
- with (findimg(200)) {
- // Emitter attributes
- layer = 2;
- emitter.delaymin = 0.1;
- emitter.delaymax = 0.2;
- emitter.nrofparticles = 1;
- emitter.emissionoffset = {0, 0, 0};
- // Basic particle attributes
- emitter.particle.lifetime = 5;
- emitter.particle.image = "g4_particle_tornado.png";
- emitter.particle.mode = 1;
- emitter.particle.alpha = 0.2;
- emitter.particle.zoom = 1.5;
- emitter.particle.zangle = 1;
- emitter.particle.angle = 0;
- emitter.particle.speed = 6;
- emitter.particle.stretchy = 0.7;
- emitter.particle.spin = 9;
- emitter.addglobalmodifier("range", 0, 10000, "angle", "add", 4, 4);
- emitter.addlocalmodifier("range", 0, 2.5, "zoom", "add", 0.4, 0.4);
- emitter.addlocalmodifier("range", 2.5, 5, "zoom", "add", 1, 1);
- emitter.addlocalmodifier("range", 0, 0.5, "alpha", "replace", 0.2, 0.99);
- emitter.addlocalmodifier("range", 4, 5, "alpha", "replace", 0.99, 0);
- }
- break;
- }
- case 8: {
- with (findimg(200)) {
- // Chimney
- // Emitter attributes
- layer = 2;
- emitter.delaymin = 0.1;
- emitter.delaymax = 0.2;
- emitter.nrofparticles = 1;
- // Basic particle attributes
- emitter.particle.lifetime = 3;
- emitter.particle.image = "g4_particle_smoke.png";
- emitter.particle.mode = 1; // alpha transparent
- emitter.particle.alpha = 0.8;
- emitter.particle.zoom = 1;
- // Movement
- emitter.particle.angle = pi / 2;
- emitter.particle.speed = 8;
- emitter.addglobalmodifier("range", 0, 100000, "movex", "add", -4, -5);
- emitter.addglobalmodifier("impulse", 0.2, 0.2, "spin", "multiply", 0.9, 0.9);
- emitter.addlocalmodifier("once", 0, 0, "angle", "add", -0.2, 0.2);
- emitter.addlocalmodifier("once", 0, 0, "rotation", "replace", 0, 2*pi);
- emitter.addlocalmodifier("range", 1, 3, "alpha", "replace", 0.8, 0);
- emitter.addlocalmodifier("range", 0, 3, "zoom", "add", 0.25, 0.25);
- emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 12, 4);
- emitter.addlocalmodifier("range", 0.5, 3, "speed", "replace", 4, 1.5);
- emitter.addlocalmodifier("once", 0, 0, "spin", "replace", 2, 4);
- }
- break;
- }
- case 9: {
- with (findimg(202)) {
- layer = 2;
- with ( emitter)
- {
- // fireworks
- // Emitter attributes
- layer = 0;
- emitter.delaymin = 0.05;
- emitter.delaymax = 0.05;
- emitter.nrofparticles = 2;
- emitter.autorotation = true;
- // Basic particle attributes
- emitter.particle.lifetime = 1;
- emitter.particle.image = "g4_particle_spark.png";
- // Color
- emitter.particle.red = random(.22,.77);
- emitter.particle.green = random(.32,.78);
- emitter.particle.blue = random(.11,.32);
- emitter.particle.zoom = random(2,5);
- emitter.particle.mode = 3; // add like a lighe
- // Movement
- emitter.particle.angle = pi;
- emitter.particle.speed = 30;
- emitter.addlocalmodifier("once", 0, 0, "angle", "replace", pi - 5, pi + 5);
- emitter.addlocalmodifier("range", 0, 0.2, "alpha", "replace", 0.2, 0.99);
- emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 2, .5);
- emitter.addlocalmodifier("range", 0.5, 1, "speed", "replace", .5, 2);
- emitter.addlocalmodifier("range", 3, 6, "zoom", "replace", 3, 6);
- emitter.addlocalmodifier("once", 0, 0, "green", "add", 0, -0.85);
- }
- }
- break;
- }
- case 0: {
- with (findimg(202)) {
- layer = 2;
- this.onTimeout2();
- with ( emitter)
- {
- // fireworks2
- // Emitter attributes
- layer = 0;
- emitter.delaymin = 0.05;
- emitter.delaymax = 0.05;
- emitter.nrofparticles = 2;
- emitter.autorotation = true;
- // Basic particle attributes
- emitter.particle.lifetime = 1;
- emitter.particle.image = "g4_particle_spark.png";
- // Color
- emitter.particle.red = random(.22,.77);
- emitter.particle.green = random(.32,.78);
- emitter.particle.blue = random(.11,.32);
- emitter.particle.zoom = random(0.4,.8);
- emitter.particle.mode = 0; // add like a lighe
- // Movement
- emitter.particle.angle = pi;
- emitter.particle.speed = 30;
- emitter.addlocalmodifier("once", 0, 0, "angle", "replace", pi - 5, pi + 5);
- emitter.addlocalmodifier("range", 0, 0.2, "alpha", "replace", 0.2, 0.99);
- emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 2, .5);
- emitter.addlocalmodifier("range", 0.5, 1, "speed", "replace", .5, 2);
- emitter.addlocalmodifier("range", 0.5, 1, "zoom", "replace", 0.2, 1.5);
- emitter.addlocalmodifier("once", 0, 0, "green", "add", 0, -0.85);
- settimer(.1);
- timeout=.1;}
- function onTimeout2()
- {
- layer = 2;
- emitter.emit();
- x = mousex - 2;
- y = mousey - 2;
- }
- setTimer(0.05);
- }
- break;
- }
- }}
- function onTimeout() {
- for (i = 200; i < 204; i++) {
- with (findimg(i)) {
- if (layer>=4) {
- x = mousescreenx;
- y = mousescreeny;
- } else {
- x = playerx;
- y = playery;
- z = playerz;
- }
- }
- }
- setTimer(0.05);
- }
- function onKeyPressed(keycode, keychar) {
- if (keycode in | 0x30, 0x39 | )
- startEffect(keycode - 0x30);
- }
Add Comment
Please, Sign In to add comment