Advertisement
Guest User

Untitled

a guest
Sep 25th, 2017
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.01 KB | None | 0 0
  1. #TouhouDanmakufu[Single]
  2. #ScriptVersion[3]
  3. #Title["Test1"]
  4. #Text["By AVeryConcernedSheep"]
  5.  
  6. #include"script/default_system/Default_ShotConst.txt"
  7.  
  8. let objEnemy;
  9. let frame = 0;
  10. let frame2 = -50;
  11. let ac = 0;
  12. let movecounter = -5;
  13. @Event
  14. {
  15. alternative(GetEventType())
  16. case(EV_REQUEST_LIFE)
  17. {
  18. SetScriptResult(2000);
  19. }
  20. }
  21.  
  22. @Initialize
  23. {
  24. objEnemy = ObjEnemy_Create(OBJ_ENEMY_BOSS);
  25. ObjEnemy_Regist(objEnemy);
  26.  
  27. let imgExRumia = GetCurrentScriptDirectory ~ "ExRumia.png";
  28. ObjPrim_SetTexture(objEnemy, imgExRumia);
  29. ObjSprite2D_SetSourceRect(objEnemy, 64, 1, 127, 64);
  30. ObjSprite2D_SetDestCenter(objEnemy);
  31.  
  32. let stx = GetStgFrameWidth() / 2;
  33. ObjMove_SetDestAtFrame(objEnemy, stx, 60, 60)
  34. }
  35.  
  36. @MainLoop
  37. {
  38. let ex = ObjMove_GetX(objEnemy);
  39. let ey = ObjMove_GetY(objEnemy);
  40. let px = GetPlayerX;
  41. let py = GetPlayerY;
  42. let ap = atan2(py - ey, px - ex);
  43. let kn = 18;
  44. let kl = 0;
  45. let str = GetStgFrameWidth() / 8;
  46. let stl = GetStgFrameWidth() / 8 * 7;
  47. let stmx = GetStgFrameWidth() / 2;
  48. let stmy = GetStgFrameHeight() / 2;
  49. let stu = 60;
  50. let std = GetStgFrameHeight() - 60;
  51.  
  52. frame++;
  53. frame2++;
  54.  
  55. alternative(movecounter)
  56. case(25){
  57. ObjMove_SetDestAtFrame(objEnemy, str, stmy, 150);
  58. }
  59. case(50){
  60. ObjMove_SetDestAtFrame(objEnemy, stmx, std, 150);
  61. }
  62. case(75){
  63. ObjMove_SetDestAtFrame(objEnemy, stl, stmy, 150);
  64. }
  65. case(100){
  66. ObjMove_SetDestAtFrame(objEnemy, stmx, stu, 150);
  67. movecounter = 0
  68. }
  69.  
  70. if(frame == 60)
  71. {
  72. ascent(i in -4..5)
  73. {
  74. CreateShotA1(ex, ey, 2, ap + 15*i, DS_BALL_L_GREEN, 15);
  75. }
  76. frame = 0;
  77. }
  78.  
  79. if(frame2 == 10)
  80. {
  81. loop(kn)
  82. {
  83. CreateShotA1(ex, ey, 3, 0 + kl + ac, DS_KUNAI_BLUE, 10);
  84. kl += 360 / kn;
  85. }
  86. frame2 = 0;
  87. ac += 7;
  88. movecounter++;
  89. }
  90.  
  91.  
  92. ObjEnemy_SetIntersectionCircleToShot(objEnemy, ex, ey, 32);
  93. ObjEnemy_SetIntersectionCircleToPlayer(objEnemy, ex, ey, 24);
  94.  
  95.  
  96. if(ObjEnemy_GetInfo(objEnemy, INFO_LIFE) <= 0)
  97. {
  98. Obj_Delete(objEnemy);
  99. CloseScript(GetOwnScriptID());
  100. return;
  101. }
  102. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement