Advertisement
Guest User

stage01.ecl

a guest
Sep 20th, 2015
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.33 KB | None | 0 0
  1. anim { "enemy.anm"; "stgenm01.anm"; }
  2. ecli { "darklib.ecl"; "default.ecl"; }
  3.  
  4. // ============
  5. // || Boss ||
  6. // ============
  7. sub Boss()
  8. {
  9. var A;
  10. doBackSub("FX_ShadowEffect", 0);
  11. boss 2 5 "Boss1";
  12. return1();
  13. }
  14.  
  15. sub Boss1()
  16. {
  17. var count countf basedir dir dir2 diradd finaldir ind;
  18.  
  19. setLife(2300);
  20.  
  21. new attacklist
  22. {
  23. attack 2200 45 Boss1Card -32513;
  24. }
  25.  
  26. setRemainingSpells(1);
  27.  
  28. setByDifficulty($count, 40, 50, 60, 70);
  29.  
  30. //Create 2 basic shot types
  31. new shot 0
  32. {
  33. count = 1;
  34. offset = 0.0f 0.0f;
  35. aim = NORMAL;
  36. angle = 0.0f;
  37. graphic = RICE_S BLUE;
  38. speed = 1.2f 1.45f 1.45f 1.7f;
  39. pattern : 0 1 ACCELERATE 30 1 0.05f 4.71238898f;
  40. pattern : 1 0 ACCELERATE 30 1 0.13f 1.57079633f;
  41. pattern : 2 0 CHANGE_GRAPHIC 13 3 NULLF NULLF;
  42. }
  43.  
  44. new shot 1
  45. {
  46. count = 1;
  47. offset = 0.0f 0.0f;
  48. aim = NORMAL;
  49. angle = 0.0f;
  50. graphic = RICE_S PURPLE;
  51. speed = 1.2f 1.45f 1.45f 1.7f;
  52. pattern : 0 1 ACCELERATE 30 1 0.05f 4.71238898f;
  53. pattern : 1 0 ACCELERATE 30 1 0.13f 1.57079633f;
  54. pattern : 2 0 CHANGE_GRAPHIC 13 2 NULLF NULLF;
  55. }
  56.  
  57. 12.56637f;
  58. float($count);
  59. dividef();
  60. movef(%diradd);
  61.  
  62. loop -1 mainLoop
  63. %basedir = this.angleToPlayer;
  64. %dir = 0.0f;
  65. %dir2 = 0.0f;
  66. loop $count circleyay
  67. %dir;
  68. %basedir;
  69. addf();
  70. movef(%finaldir);
  71. shotSetAngle(0, %finaldir, 0.0f);
  72. shotFire(0);
  73. %dir2;
  74. %basedir;
  75. addf();
  76. 3.1415927f;
  77. addf();
  78. movef(%finaldir);
  79. shotSetAngle(1, %finaldir, 0.0f);
  80. shotFire(1);
  81. %dir += %diradd;
  82. %dir2 -= %diradd;
  83. wait(1);
  84. endloop circleyay
  85. bossMove(60, 4, 6.0f);
  86. wait(60);
  87.  
  88. %basedir = this.angleToPlayer;
  89. %basedir += 3.1415927f;
  90. %dir = 0.0f;
  91. %dir2 = 0.0f;
  92. loop $count circleyay2
  93. %dir;
  94. %basedir;
  95. addf();
  96. movef(%finaldir);
  97. shotSetAngle(0, %finaldir, 0.0f);
  98. shotFire(0);
  99. %dir2;
  100. %basedir;
  101. addf();
  102. 3.1415927f;
  103. addf();
  104. movef(%finaldir);
  105. shotSetAngle(1, %finaldir, 0.0f);
  106. shotFire(1);
  107. %dir += %diradd;
  108. %dir2 -= %diradd;
  109. wait(1);
  110. endloop circleyay2
  111. bossMove(60, 4, 6.0f);
  112. wait(60);
  113. endloop mainLoop
  114. return3();
  115. }
  116.  
  117. sub Boss1Card()
  118. {
  119. var playerX playerY angle radius offX offY laserI;
  120. spell 1 45 5000000 "Floral Spell 'Luminous Bloom'" Boss2;
  121. doBackSub("FX_ShadowEffect", 0);
  122.  
  123. shotCreate(0);
  124. shotSetCountByDifficulty(0, 2, 2, 3, 3, 3, 3, 4, 4);
  125. shotSetOffset(0, 0.0f, 0.0f);
  126. shotSetAim(0, NORMAL_CIRCLE);
  127. shotSetAngle(0, 0.0f, 0.0f);
  128. shotSetAppearance(0, LEAF, GREEN);
  129. shotSetSpeedByDifficulty(0, 1.2f, 1.45f, 1.45f, 1.6f, 0.0f, 0.0f, 0.0f, 0.0f);
  130.  
  131. shotCreate(1);
  132. shotSetCountByDifficulty(1, 2, 2, 3, 3, 2, 2, 3, 3);
  133. shotSetOffset(1, 0.0f, 0.0f);
  134. shotSetAim(1, NORMAL_CIRCLE);
  135. shotSetAngle(1, 0.0f, 0.0f);
  136. shotSetAppearance(1, RICE_M, BLUE);
  137. shotSetSpeedByDifficulty(1, 1.3f, 1.5f, 1.5f, 1.7f, 0.0f, 0.0f, 0.0f, 0.0f);
  138.  
  139. shotCreate(2);
  140. shotSetCountByDifficulty(2, 1, 1, 2, 2, 2, 2, 3, 3);
  141. shotSetOffset(2, 0.0f, 0.0f);
  142. shotSetAim(2, NORMAL_CIRCLE);
  143. shotSetAngle(2, 0.0f, 0.0f);
  144. shotSetAppearance(2, BUTTERFLY, PURPLE);
  145. shotSetSpeedByDifficulty(2, 1.0f, 1.1f, 1.1f, 1.2f, 0.0f, 0.0f, 0.0f, 0.0f);
  146. shotAddPattern(2, 0, 1, CHANGE, 45, 1, 0.0f, 0.05f);
  147. shotAddPattern(2, 1, 1, CHANGE, 45, 1, 0.0f, 0.0f);
  148. shotAddPattern(2, 2, 1, CHANGE, 45, 1, 0.0f, -0.03f);
  149.  
  150. %angle = 0.0f;
  151.  
  152. loop -1 mainLoop
  153. shotSetOffset(0, 0.0f, 0.0f);
  154. $laserI = 0;
  155. loop 3 laserLoop
  156. shotSetOffset(0, 0.0f, 0.0f);
  157. fireLaserA($laserI, 3, 11, this.angleToPlayer, 900.0f, 900.0f, 30, 10, 10, 10, 48.0f, $laserI);
  158. $laserI += 1;
  159. doCoroutine("PAT_LaserShots", <float> 0.0f, <float> 0.0f, <int> 0, <float> this.angleToPlayer, <float> 480.0f, <float> 0.0f, <float> 0.43f, <int> 16, <int> 1, <int> 35);
  160. doCoroutine("PAT_LaserShots", <float> 0.0f, <float> 0.0f, <int> 1, <float> this.angleToPlayer, <float> 480.0f, <float> 0.0f, <float> 0.912f, <int> 16, <int> 2, <int> 35);
  161. doCoroutine("PAT_LaserShots", <float> 0.0f, <float> 0.0f, <int> 2, <float> this.angleToPlayer, <float> 480.0f, <float> 0.0f, <float> 1.305f, <int> 16, <int> 3, <int> 35);
  162. wait(180);
  163. endloop laserLoop
  164. wait(20);
  165. bossMove(30, 4, 8.0f);
  166. wait(50);
  167. endloop mainLoop
  168.  
  169. return3();
  170. }
  171.  
  172. sub main()
  173. {
  174. var A B C;
  175. setFlag(16);
  176. ins_0();
  177. //wait(60);
  178. //spawn("Enemy_0_blue", 0.0f, -16.0f, 60, 1000, POWER);
  179. wait(240);
  180. dialogueStart(0);
  181. waitForSubs();
  182. spawn("Boss", -144.0f, -16.0f, 40, 10000, POWER);
  183. waitForSubs();
  184. nextStage();
  185. //dialogueStart(1);
  186. //waitForSubs();
  187. wait(60);
  188. return1();
  189. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement