Guest User

lol

a guest
Jan 15th, 2012
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.89 KB | None | 0 0
  1. //==============================================
  2. //
  3. // Marisa Boss Battlev1.5
  4. // All rights reserved at ReiRei \ Yuyuko-sama
  5. // at MotK. Do not use this Script or
  6. // you will pay the price with my kitty lawyer!
  7. //
  8. //
  9. //==============================================
  10.  
  11. #TouhouDanmakufu
  12. #Title[ Marisa's Nonspell #1 ]
  13. #Text[ Basic IN Nonspell.
  14. Be careful of the familiars shot though. ]
  15. #Player[ player\Sanae\SanaeA.txt, player\Sanae\SanaeB.txt ]
  16. #BGM[ .\SOUND\BGM\MagusNight.mp3 ]
  17. #ScriptVersion[ 2 ]
  18. ///////////////////////////////////////////////////////////
  19. script_enemy_main {
  20. ///////////////////////////////////////////////////////////
  21.  
  22. #include_function".\DATA\lib_anime_Marisa.txt";
  23.  
  24. #include_function".\SHOT\Index_UserShot.txt";
  25.  
  26. let CSD = GetCurrentScriptDirectory;
  27.  
  28. let Boss_Marisa = CSD ~ "SPRITE\boss_Marisa.png";
  29.  
  30. let UserShot = CSD ~ "SHOT\supershot.txt";
  31.  
  32. let ShotFam = CSD ~ "SOUND\SE\Weird.wav";
  33. let Shot01 = CSD ~ "SOUND\SE\Shot1.wav";
  34.  
  35. @Initialize {
  36.  
  37. LoadGraphic( Boss_Marisa );
  38. SetX( GetCenterX );
  39. SetY( GetCenterY - 100 );
  40.  
  41. LoadSE( ShotFam );
  42. LoadSE( Shot01 );
  43.  
  44. SetLife( 2600 );
  45. SetTimer( 60 );
  46. SetDamageRate( 70, 200 );
  47.  
  48. LoadUserShotData( UserShot );
  49.  
  50. MarisaTask;
  51.  
  52. }
  53.  
  54. @MainLoop {
  55.  
  56. SetCollisionA( GetX, GetY, 32 );
  57. SetCollisionB( GetX, GetY, 16 );
  58. yield;
  59.  
  60. }
  61.  
  62. @DrawLoop {
  63.  
  64. DrawBoss( Boss_Marisa );
  65.  
  66. }
  67.  
  68. @Finalize {
  69.  
  70. DeleteGraphic( Boss_Marisa );
  71.  
  72. }
  73.  
  74. task MarisaTask {
  75.  
  76. wait( 120 );
  77.  
  78. PlaySE( ShotFam );
  79. CreateEnemyFromScript( "Familiar", GetX, GetY, 0, 0, 0 );
  80. wait( 45 );
  81.  
  82. PlaySE( ShotFam );
  83. CreateEnemyFromScript( "Familiar", GetX, GetY, 0, 0, 90 );
  84. wait( 45 );
  85.  
  86.  
  87. PlaySE( ShotFam );
  88. CreateEnemyFromScript( "Familiar", GetX, GetY, 0, 0, 180 );
  89. wait( 45 );
  90.  
  91.  
  92. PlaySE( ShotFam );
  93. CreateEnemyFromScript( "Familiar", GetX, GetY, 0, 0, 270 );
  94. wait( 45 );
  95.  
  96. SetAction( ACT_SHOT_B, 30 );
  97.  
  98. Marishot;
  99.  
  100. yield;
  101.  
  102. }
  103.  
  104. task Marishot {
  105.  
  106. let MariAngle = GetAngleToPlayer + 90;
  107.  
  108. loop {
  109. ascent( i in 0..200 ){
  110.  
  111. PlaySE( Shot01 );
  112. CreateShot01( GetX, GetY, 3, MariAngle+i*10-12, US_STAR_MARISA_L_BLUE, 10 );
  113. SetAction( ACT_SHOT_B, 30 );
  114. wait( 60 );
  115.  
  116. yield;
  117.  
  118. }
  119. }
  120.  
  121. function wait( w ){
  122. loop( w ) { yield; }
  123. }
  124. }
  125.  
  126. script_enemy Familiar {
  127.  
  128. #include_function".\SHOT\Index_UserShot.txt";
  129.  
  130. let CSD = GetCurrentScriptDirectory;
  131.  
  132. let Boss_Fam = CSD ~ "SPRITE\Familiar.png";
  133.  
  134.  
  135. let Shot01 = CSD ~ "SOUND\SE\Shot1.wav";
  136.  
  137. let spin = 0;
  138.  
  139. let dir = 0;
  140.  
  141. let FamRadius = 160;
  142.  
  143. @Initialize {
  144.  
  145. LoadGraphic( Boss_Fam );
  146. LoadSE( Shot01 );
  147.  
  148. SetLife( 9000 );
  149. SetDamageRate( 1, 10 );
  150.  
  151. FamTask;
  152.  
  153. }
  154.  
  155. @MainLoop {
  156.  
  157. SetCollisionA( GetX, GetY, 32 );
  158. SetCollisionB( GetX, GetY, 16 );
  159. yield;
  160.  
  161. }
  162.  
  163. @DrawLoop {
  164.  
  165. SetTexture( Boss_Fam );
  166. SetRenderState( ALPHA );
  167. SetAlpha( 255 );
  168. SetGraphicRect( 0, 0, 312, 315 );
  169. SetGraphicScale( 0.14, 0.14 );
  170. SetGraphicAngle( 0, 0, spin );
  171. DrawGraphic( GetX, GetY );
  172. spin+=5;
  173.  
  174. }
  175.  
  176. @Finalize {
  177.  
  178. }
  179.  
  180. task FamTask {
  181.  
  182. Fammovement;
  183. Famshot;
  184.  
  185. yield;
  186.  
  187. }
  188.  
  189. task Fammovement {
  190.  
  191. loop {
  192.  
  193. SetMovePosition03( GetEnemyX + cos( dir ) * FamRadius, GetEnemyY + sin( dir ) * FamRadius, 20, 10 );
  194. dir+=2;
  195. yield;
  196.  
  197. }
  198. }
  199.  
  200. task Famshot {
  201.  
  202.  
  203. loop {
  204.  
  205. CreateShotA( 1, GetX, GetY, 10 );
  206. SetShotDataA( 1, 0, 0, 0, 0, 0, 0, US_MARISA_STAR_S_YELLOW );
  207. SetShotDataA( 1, 60, 3, 90, 1, 3, 3, US_MARISA_STAR_S_YELLOW );
  208. FireShot( 1 );
  209.  
  210. PlaySE( Shot01 );
  211.  
  212. yield;
  213.  
  214. }
  215. FireShot( 1 );
  216. }
  217. }
  218. function wait( w ){
  219. loop( w ){ yield; }
  220. }
  221. }
Advertisement
Add Comment
Please, Sign In to add comment