Guest User

Untitled

a guest
May 23rd, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.59 KB | None | 0 0
  1. //#CLIENTSIDE
  2. function startEffect(effectnum) {
  3.  
  4.  
  5. hideimgs(200, 300);
  6. timeout=.1;
  7. switch (effectnum) {
  8. case 1: {
  9.  
  10.  
  11. with (findimg(201)) {
  12. // Orange Streaks
  13.  
  14. // Emitter attributes
  15. layer = 0;
  16. emitter.delaymin = 0.05;
  17. emitter.delaymax = 0.05;
  18. emitter.nrofparticles = 2;
  19. emitter.autorotation = true;
  20.  
  21. // Basic particle attributes
  22. emitter.particle.lifetime = 1;
  23. emitter.particle.image = "g4_particle_spark.png";
  24.  
  25. // Color
  26. emitter.particle.red = random (.22,.88);
  27. emitter.particle.green = random (.22,.32);
  28. emitter.particle.blue = 0;
  29. emitter.particle.zoom = 0.8;
  30. emitter.particle.mode = 0; // add like a lighe
  31.  
  32. // Movement
  33. emitter.addlocalmodifier("once", 0, 0, "angle", "replace", pi - 18, pi + 18);
  34. emitter.addlocalmodifier("range", 0, 0.2, "alpha", "replace", 0.2, 0.99);
  35. emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 25, 15);
  36. emitter.addlocalmodifier("range", 0.5, 1, "speed", "replace", 15, 10);
  37. emitter.addlocalmodifier("range", .5, 1, "zoom", "replace", 1, 3);
  38. emitter.addlocalmodifier("once", 0, 0, "green", "add", 0, 0.15);
  39. }
  40.  
  41. with (findimg(202)) {
  42. // Yellow Streaks
  43.  
  44. // Emitter attributes
  45. layer = 0;
  46. emitter.delaymin = 0.05;
  47. emitter.delaymax = 0.05;
  48. emitter.nrofparticles = 1;
  49. emitter.autorotation = true;
  50.  
  51. // Basic particle attributes
  52. emitter.particle.lifetime = 1;
  53. emitter.particle.image = "g4_particle_spark.png";
  54.  
  55. // Color
  56. emitter.particle.red = random (.23,.89);
  57. emitter.particle.green = random (.12,.22);
  58. emitter.particle.blue = 0;
  59. emitter.particle.zoom = 0.8;
  60. emitter.particle.mode = 0; // add like a light
  61.  
  62. // Movement
  63. emitter.particle.angle = pi;
  64. emitter.particle.speed = 25;
  65. emitter.addlocalmodifier("once", 0, 0, "angle", "replace", pi - 15, pi + 15);
  66. emitter.addlocalmodifier("range", 0, 0.2, "alpha", "replace", 0.2, 0.99);
  67. emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 25, 15);
  68. emitter.addlocalmodifier("range", 0.5, 1, "speed", "replace", 15, 10);
  69. emitter.addlocalmodifier("range", .5, 1, "zoom", "replace", 1, 4);
  70. emitter.addlocalmodifier("once", 0, 0, "green", "add", 0, 0.25);
  71. }
  72.  
  73. with (findimg(203)) {
  74. // Fire
  75.  
  76. // Emitter attributes
  77. layer = 1;
  78. emitter.delaymin = 0.05;
  79. emitter.delaymax = 0.05;
  80. emitter.nrofparticles = 1;
  81. emitter.firstinfront = false;
  82. emitter.emissionoffset = {0, 0.4, 0};
  83.  
  84. // Basic particle attributes
  85. emitter.particle.lifetime = 2;
  86. emitter.particle.image = "g4_particle_smoke.png";
  87.  
  88. // Color
  89. emitter.particle.red = 1;
  90. emitter.particle.green = 0.2;
  91. emitter.particle.blue = 0;
  92. emitter.particle.alpha = 0.99;
  93. emitter.particle.zoom = 0.6;
  94. emitter.particle.mode = 0; // add like a light
  95.  
  96. // Movement
  97. emitter.particle.angle = pi;
  98. emitter.particle.speed = 6;
  99. emitter.addlocalmodifier("once", 0, 0, "angle", "replace", pi - 18, pi + 18);
  100. emitter.addlocalmodifier("range", 0, 0.2, "alpha", "replace", 0.2, 0.99);
  101. emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 25, 15);
  102. emitter.addlocalmodifier("range", 0.5, 1, "speed", "replace", 15, 10);
  103. emitter.addlocalmodifier("range", .5, 1, "zoom", "replace", 1, 3);
  104. }
  105. break;
  106.  
  107. }
  108. case 2: {
  109. with (findimg(200)) {
  110. // Falling leaves
  111.  
  112. // Emitter attributes
  113. layer = 2;
  114. emitter.delaymin = 0.1;
  115. emitter.delaymax = 0.3;
  116. emitter.nrofparticles = 2;
  117. emitter.emissionoffset = {0, -5, 10};
  118. emitter.checkbelowterrain = true;
  119.  
  120. // Basic particle attributes
  121. emitter.particle.lifetime = 10;
  122. emitter.particle.image = "g4_particle_leaf.png";
  123.  
  124. // Movement
  125. emitter.particle.zangle = -1;
  126. emitter.particle.speed = 2;
  127. emitter.particle.alpha = 0.75;
  128. emitter.particle.mode = 1;
  129.  
  130. emitter.addglobalmodifier("impulse", 0.2, 0.2, "zangle", "multiply", 0.95, 0.95);
  131. emitter.addlocalmodifier("once", 0, 0, "rotation", "replace", 0, 2*pi);
  132. emitter.addlocalmodifier("once", 0, 0, "angle", "replace", degtorad(200), degtorad(260));
  133. emitter.addlocalmodifier("once", 0, 0, "x", "add", -10, 25);
  134. emitter.addlocalmodifier("once", 0, 0, "zoom", "replace", 0.6, 1.2);
  135. emitter.addlocalmodifier("once", 0, 0, "green", "replace", 0.5, 1);
  136. emitter.addglobalmodifier("impulse", 0.2, 0.2, "spin", "multiply", 0.6, 0.6);
  137. emitter.addlocalmodifier("range", 0, 100000, "speed", "add", 3, 3);
  138. with (emitter.addlocalmodifier("impulse", 1, 2, "spin", "add", -20, -30)) {
  139. addmod("zangle", "add", 0.1, 0.5);
  140. }
  141. }
  142. break;
  143. }
  144. case 3: {
  145. //Flame
  146. with (findimg(200)) {
  147. // Shadow
  148.  
  149. // Emitter attributes
  150. layer = 0;
  151. emitter.delaymin = 0.05;
  152. emitter.delaymax = 0.05;
  153. emitter.nrofparticles = 2;
  154. emitter.firstinfront = false;
  155. emitter.emissionoffset = {0, -3, 0.3};
  156.  
  157. // Basic particle attributes
  158. emitter.particle.lifetime = 0.6;
  159. emitter.particle.image = "g4_animation_fire.gif";
  160.  
  161. // Color
  162. emitter.particle.alpha = 0.6;
  163. emitter.particle.zoom = 1.5;
  164. emitter.particle.mode = 2; // subtract
  165.  
  166. // Movement
  167. emitter.particle.angle = pi / 2;
  168. emitter.particle.speed = 6;
  169. emitter.addlocalmodifier("once", 0, 0, "angle", "add", -0.1, 0.1);
  170. emitter.addlocalmodifier("once", 0, 0, "x", "add", -0.8, 0.8);
  171. emitter.addlocalmodifier("range", 0, 0.6, "alpha", "replace", 0.6, 0);
  172. emitter.addlocalmodifier("range", 0, 0.3, "zoom", "replace", 1.5, 2.5);
  173. emitter.addlocalmodifier("range", 0.3, 0.6, "zoom", "replace", 2.5, 1.5);
  174. emitter.addlocalmodifier("range", 0, 0.6, "speed", "replace", 6, 10);
  175. }
  176.  
  177. with (findimg(201)) {
  178. // Fire
  179.  
  180. // Emitter attributes
  181. layer = 1;
  182. emitter.delaymin = 0.05;
  183. emitter.delaymax = 0.05;
  184. emitter.nrofparticles = 4;
  185. emitter.firstinfront = false;
  186. emitter.emissionoffset = {0, -3, 0};
  187.  
  188. // Basic particle attributes
  189. emitter.particle.lifetime = 0.6;
  190. emitter.particle.image = "g4_animation_fire.gif";
  191.  
  192. // Color
  193. emitter.particle.red = 1;
  194. emitter.particle.green = 0.5;
  195. emitter.particle.blue = 0.5;
  196. emitter.particle.alpha = 0.6;
  197. emitter.particle.zoom = 1;
  198. emitter.particle.mode = 0; // add like a light
  199.  
  200. // Movement
  201. emitter.particle.angle = pi / 2;
  202. emitter.particle.speed = 6;
  203. emitter.addlocalmodifier("once", 0, 0, "angle", "add", -0.1, 0.1);
  204. emitter.addlocalmodifier("once", 0, 0, "x", "add", -1, 1);
  205. emitter.addlocalmodifier("range", 0, 0.6, "alpha", "replace", 0.6, 0);
  206. emitter.addlocalmodifier("range", 0, 0.3, "zoom", "replace", 1, 2);
  207. emitter.addlocalmodifier("range", 0.3, 0.6, "zoom", "replace", 2, 1);
  208. emitter.addlocalmodifier("range", 0, 0.6, "speed", "replace", 6, 10);
  209. }
  210.  
  211. with (findimg(202)) {
  212. // Sparks
  213.  
  214. // Emitter attributes
  215. layer = 2;
  216. emitter.delaymin = 0.05;
  217. emitter.delaymax = 0.05;
  218. emitter.nrofparticles = 4;
  219. emitter.firstinfront = false;
  220. emitter.emissionoffset = {0, -3, 0};
  221.  
  222. // Basic particle attributes
  223. emitter.particle.lifetime = 1.5;
  224. emitter.particle.image = "light2s.png";
  225.  
  226. // Color
  227. emitter.particle.red = 1;
  228. emitter.particle.green = 0;
  229. emitter.particle.blue = 0;
  230. emitter.particle.alpha = 0.99;
  231. emitter.particle.zoom = .8;
  232. emitter.particle.mode = 0; // add like a light
  233.  
  234. // Movement
  235. emitter.particle.angle = pi / 2;
  236. emitter.particle.speed = 6;
  237. emitter.addlocalmodifier("once", 0, 0, "angle", "add", -0.1, 0.1);
  238. emitter.addlocalmodifier("once", 0, 0, "x", "add", -1, 1);
  239. emitter.addlocalmodifier("range", 0, 1.5, "alpha", "replace", 0.99, 0.4);
  240. emitter.addlocalmodifier("range", 0, 1.5, "zoom", "replace", .8, 0);
  241. emitter.addlocalmodifier("range", 0, 1.5, "speed", "replace", 6, 10);
  242. }
  243. break;
  244. }
  245. case 4: {
  246. with (findimg(200)) {
  247.  
  248. // Cauldron
  249.  
  250. // Emitter attributes
  251. layer = 2;
  252. emitter.delaymin = 0.1;
  253. emitter.delaymax = 0.1;
  254. emitter.nrofparticles = 1;
  255.  
  256. // Basic particle attributes
  257. emitter.particle.lifetime = 3;
  258. emitter.particle.image = "g4_particle_bubble.png";
  259. emitter.particle.mode = 1; // alpha transparent
  260. emitter.particle.alpha = 0.8;
  261. emitter.particle.zoom = 0.1;
  262. emitter.particle.red = 0.3;
  263. emitter.particle.green = 1;
  264. emitter.particle.blue = 0.2;
  265.  
  266. // Movement
  267. emitter.particle.angle = pi / 2;
  268. emitter.particle.speed = 8;
  269. emitter.addlocalmodifier("once", 0, 0, "x", "add", -1.5, 1.5);
  270. emitter.addlocalmodifier("once", 0, 0, "y", "add", -0.5, 0.5);
  271. emitter.addglobalmodifier("impulse", 0.2, 0.2, "spin", "multiply", 0.9, 0.9);
  272. emitter.addlocalmodifier("once", 0, 0, "angle", "add", -0.2, 0.2);
  273. emitter.addlocalmodifier("once", 0, 0, "rotation", "replace", 0, 2*pi);
  274. emitter.addlocalmodifier("range", 1, 3, "alpha", "replace", 0.8, 0);
  275. emitter.addlocalmodifier("range", 0, 3, "zoom", "add", 0.2, 0.2);
  276. emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 12, 4);
  277. emitter.addlocalmodifier("range", 0.5, 3, "speed", "replace", 4, 1.5);
  278. }
  279. break;
  280. }
  281. case 5: {
  282. // Splash
  283. with (findimg(200)) {
  284. // Emitter attributes
  285. layer = 1;
  286. emitter.delaymin = 100000;
  287. emitter.delaymax = 100000;
  288. emitter.nrofparticles = 80;//80
  289. emitter.emissionoffset = { -4, 2, 1};
  290.  
  291. // Basic particle attributes
  292. emitter.particle.lifetime = 1;//1
  293. emitter.particle.image = "light2s.png";
  294. emitter.particle.mode = 0; // light
  295. emitter.particle.red = 0.2;
  296. emitter.particle.green = 0.5;
  297. emitter.particle.blue = 1;
  298. emitter.particle.alpha = 0.99;
  299. emitter.particle.zoom = 0.6;//.6
  300.  
  301. // Movement
  302. emitter.particle.zangle = 0.4;
  303. emitter.addlocalmodifier("once", 0, 0, "angle", "replace", 0, 2*pi);
  304. emitter.addlocalmodifier("once", 0, 0, "speed", "replace", 3, 6);
  305. emitter.addglobalmodifier("range", 0, 100000, "zangle", "add", -2, -2);
  306. emitter.addlocalmodifier("range", 0.5, 1, "alpha", "replace", 0.99, 0);
  307. emitter.addlocalmodifier("range", 0.4, 1, "zoom", "replace", 0.6, 0);
  308.  
  309. emitter.emit();
  310. }
  311. break;
  312. }
  313. case 6: {
  314. // Wave rings
  315. with (findimg(200)) {
  316. // Emitter attributes
  317. layer = 2;
  318. emitter.delaymin = 0.6;
  319. emitter.delaymax = 0.8;
  320. emitter.nrofparticles = 1;
  321. emitter.emissionoffset = {0, 1, 0};
  322.  
  323. // Basic particle attributes
  324. emitter.particle.lifetime = 2;
  325. emitter.particle.image = "g4_particle_ring.png";
  326. emitter.particle.mode = 0; // light
  327. emitter.particle.red = random (0.6,.55);
  328. emitter.particle.green = random (0.22,.85);
  329. emitter.particle.blue = random (.42,.65);
  330. emitter.particle.alpha = random (.30,.99);
  331. emitter.particle.zoom = .6;
  332.  
  333. emitter.particle.speed = 0;
  334. emitter.particle.stretchy = .7;
  335. emitter.addglobalmodifier("range", 0, 10000, "zoom", "add", 4, 3);
  336. emitter.addglobalmodifier("range", 0, 10000, "alpha", "add", -0.5, -0.75);
  337. }
  338. break;
  339. }
  340. case 7: {
  341. // Tornado
  342. with (findimg(200)) {
  343. // Emitter attributes
  344. layer = 2;
  345. emitter.delaymin = 0.1;
  346. emitter.delaymax = 0.2;
  347. emitter.nrofparticles = 1;
  348. emitter.emissionoffset = {0, 0, 0};
  349.  
  350. // Basic particle attributes
  351. emitter.particle.lifetime = 5;
  352. emitter.particle.image = "g4_particle_tornado.png";
  353. emitter.particle.mode = 1;
  354. emitter.particle.alpha = 0.2;
  355. emitter.particle.zoom = 1.5;
  356.  
  357. emitter.particle.zangle = 1;
  358. emitter.particle.angle = 0;
  359. emitter.particle.speed = 6;
  360. emitter.particle.stretchy = 0.7;
  361. emitter.particle.spin = 9;
  362. emitter.addglobalmodifier("range", 0, 10000, "angle", "add", 4, 4);
  363. emitter.addlocalmodifier("range", 0, 2.5, "zoom", "add", 0.4, 0.4);
  364. emitter.addlocalmodifier("range", 2.5, 5, "zoom", "add", 1, 1);
  365. emitter.addlocalmodifier("range", 0, 0.5, "alpha", "replace", 0.2, 0.99);
  366. emitter.addlocalmodifier("range", 4, 5, "alpha", "replace", 0.99, 0);
  367. }
  368. break;
  369. }
  370. case 8: {
  371. with (findimg(200)) {
  372. // Chimney
  373.  
  374. // Emitter attributes
  375. layer = 2;
  376. emitter.delaymin = 0.1;
  377. emitter.delaymax = 0.2;
  378. emitter.nrofparticles = 1;
  379.  
  380. // Basic particle attributes
  381. emitter.particle.lifetime = 3;
  382. emitter.particle.image = "g4_particle_smoke.png";
  383. emitter.particle.mode = 1; // alpha transparent
  384. emitter.particle.alpha = 0.8;
  385. emitter.particle.zoom = 1;
  386. // Movement
  387. emitter.particle.angle = pi / 2;
  388. emitter.particle.speed = 8;
  389. emitter.addglobalmodifier("range", 0, 100000, "movex", "add", -4, -5);
  390. emitter.addglobalmodifier("impulse", 0.2, 0.2, "spin", "multiply", 0.9, 0.9);
  391. emitter.addlocalmodifier("once", 0, 0, "angle", "add", -0.2, 0.2);
  392. emitter.addlocalmodifier("once", 0, 0, "rotation", "replace", 0, 2*pi);
  393. emitter.addlocalmodifier("range", 1, 3, "alpha", "replace", 0.8, 0);
  394. emitter.addlocalmodifier("range", 0, 3, "zoom", "add", 0.25, 0.25);
  395. emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 12, 4);
  396. emitter.addlocalmodifier("range", 0.5, 3, "speed", "replace", 4, 1.5);
  397. emitter.addlocalmodifier("once", 0, 0, "spin", "replace", 2, 4);
  398. }
  399. break;
  400. }
  401. case 9: {
  402. with (findimg(202)) {
  403. layer = 2;
  404.  
  405. with ( emitter)
  406. {
  407. // fireworks
  408.  
  409. // Emitter attributes
  410. layer = 0;
  411. emitter.delaymin = 0.05;
  412. emitter.delaymax = 0.05;
  413. emitter.nrofparticles = 2;
  414. emitter.autorotation = true;
  415.  
  416. // Basic particle attributes
  417. emitter.particle.lifetime = 1;
  418. emitter.particle.image = "g4_particle_spark.png";
  419.  
  420. // Color
  421. emitter.particle.red = random(.22,.77);
  422. emitter.particle.green = random(.32,.78);
  423. emitter.particle.blue = random(.11,.32);
  424. emitter.particle.zoom = random(2,5);
  425. emitter.particle.mode = 3; // add like a lighe
  426.  
  427. // Movement
  428. emitter.particle.angle = pi;
  429. emitter.particle.speed = 30;
  430. emitter.addlocalmodifier("once", 0, 0, "angle", "replace", pi - 5, pi + 5);
  431. emitter.addlocalmodifier("range", 0, 0.2, "alpha", "replace", 0.2, 0.99);
  432. emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 2, .5);
  433. emitter.addlocalmodifier("range", 0.5, 1, "speed", "replace", .5, 2);
  434. emitter.addlocalmodifier("range", 3, 6, "zoom", "replace", 3, 6);
  435. emitter.addlocalmodifier("once", 0, 0, "green", "add", 0, -0.85);
  436. }
  437.  
  438. }
  439. break;
  440. }
  441. case 0: {
  442. with (findimg(202)) {
  443. layer = 2;
  444. this.onTimeout2();
  445. with ( emitter)
  446. {
  447. // fireworks2
  448.  
  449. // Emitter attributes
  450. layer = 0;
  451. emitter.delaymin = 0.05;
  452. emitter.delaymax = 0.05;
  453. emitter.nrofparticles = 2;
  454. emitter.autorotation = true;
  455.  
  456. // Basic particle attributes
  457. emitter.particle.lifetime = 1;
  458. emitter.particle.image = "g4_particle_spark.png";
  459.  
  460. // Color
  461. emitter.particle.red = random(.22,.77);
  462. emitter.particle.green = random(.32,.78);
  463. emitter.particle.blue = random(.11,.32);
  464. emitter.particle.zoom = random(0.4,.8);
  465. emitter.particle.mode = 0; // add like a lighe
  466.  
  467. // Movement
  468. emitter.particle.angle = pi;
  469. emitter.particle.speed = 30;
  470. emitter.addlocalmodifier("once", 0, 0, "angle", "replace", pi - 5, pi + 5);
  471. emitter.addlocalmodifier("range", 0, 0.2, "alpha", "replace", 0.2, 0.99);
  472. emitter.addlocalmodifier("range", 0, 0.5, "speed", "replace", 2, .5);
  473. emitter.addlocalmodifier("range", 0.5, 1, "speed", "replace", .5, 2);
  474. emitter.addlocalmodifier("range", 0.5, 1, "zoom", "replace", 0.2, 1.5);
  475. emitter.addlocalmodifier("once", 0, 0, "green", "add", 0, -0.85);
  476.  
  477. settimer(.1);
  478. timeout=.1;}
  479. function onTimeout2()
  480. {
  481.  
  482. layer = 2;
  483. emitter.emit();
  484. x = mousex - 2;
  485. y = mousey - 2;
  486. }
  487. setTimer(0.05);
  488.  
  489.  
  490. }
  491.  
  492. break;
  493. }
  494.  
  495. }}
  496.  
  497. function onTimeout() {
  498. for (i = 200; i < 204; i++) {
  499. with (findimg(i)) {
  500. if (layer>=4) {
  501. x = mousescreenx;
  502. y = mousescreeny;
  503. } else {
  504. x = playerx;
  505. y = playery;
  506. z = playerz;
  507. }
  508. }
  509. }
  510. setTimer(0.05);
  511. }
  512.  
  513. function onKeyPressed(keycode, keychar) {
  514. if (keycode in | 0x30, 0x39 | )
  515. startEffect(keycode - 0x30);
  516. }
Add Comment
Please, Sign In to add comment