TheBlad768

Boss(BNB)

Dec 21st, 2019
520
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ; ---------------------------------------------------------------------------
  2. ; Босс-Neo Bahamut
  3. ; ---------------------------------------------------------------------------
  4.  
  5. ; Hits
  6. BossNeoBahamut_Hits     = 12
  7.  
  8. ; Attributes
  9. ;_Setup1                    = 2
  10. ;_Setup2                    = 4
  11. ;_Setup3                    = 6
  12. ;_Setup4                    = 8
  13. ;_Setup5                    = A
  14.  
  15. ; Dynamic object variables
  16. obBNB_Routine           = $38   ; .b
  17. obBNB_Draw              = $39   ; .b
  18. obBNB_XPos              = $3A   ; .w
  19. obBNB_Count         = $3C   ; .b
  20.  
  21. ; =============== S U B R O U T I N E =======================================
  22.  
  23. Obj_NeoBahamut:
  24.         move.l  #Obj_Wait,address(a0)
  25.         move.w  #$4F,$2E(a0)
  26.         move.l  #Obj_NeoBahamut_Start,$34(a0)
  27.         bset    #0,render_flags(a0)
  28.         rts
  29. ; ---------------------------------------------------------------------------
  30.  
  31. Obj_NeoBahamut_Start:
  32.         move.l  #Obj_NeoBahamut_Main,address(a0)
  33.  
  34. Obj_NeoBahamut_Main:
  35.         moveq   #0,d0
  36.         move.b  routine(a0),d0
  37.         move.w  NeoBahamut_Index(pc,d0.w),d0
  38.         jsr NeoBahamut_Index(pc,d0.w)
  39.         bsr.w   BossNeoBahamut_CheckTouch
  40.         bsr.w   BossNeoBahamut_CheckFrame
  41.         tst.b   obBNB_Draw(a0)
  42.         bne.w   BossNeoBahamut_Return
  43.         jmp (Draw_And_Touch_Sprite).l
  44. ; ---------------------------------------------------------------------------
  45.  
  46. NeoBahamut_Index: offsetTable
  47.         offsetTableEntry.w BossNeoBahamut_Init      ; 0
  48.         offsetTableEntry.w BossNeoBahamut_Setup ; 2
  49.         offsetTableEntry.w BossNeoBahamut_Setup2    ; 4
  50.         offsetTableEntry.w BossNeoBahamut_Setup3    ; 6
  51.         offsetTableEntry.w BossNeoBahamut_Setup4    ; 8
  52.         offsetTableEntry.w BossNeoBahamut_Setup5    ; A
  53. ; ---------------------------------------------------------------------------
  54.  
  55. BossNeoBahamut_Init:
  56.         lea ObjDat3_BossNeoBahamut(pc),a1
  57.         jsr (SetUp_ObjAttributes).l
  58.         st  (Boss_flag).w
  59.         move.b  #46/2,y_radius(a0)
  60.         move.b  #BossNeoBahamut_Hits,collision_property(a0)
  61.         move.l  #BossNeoBahamut_Intro,$34(a0)
  62.         move.l  #AniRaw_BossNeoBahamutPower,$30(a0)
  63.  
  64. BossNeoBahamut_Return:
  65.         rts
  66. ; ---------------------------------------------------------------------------
  67.  
  68. BossNeoBahamut_Setup3:
  69.         bsr.w   Obj_NeoBahamut_SendPos
  70.  
  71. BossNeoBahamut_Setup:
  72.         jsr (Animate_Raw).l
  73.         jsr (MoveSprite2).l
  74.         jmp (Obj_Wait).l
  75. ; ---------------------------------------------------------------------------
  76.  
  77. BossNeoBahamut_Setup2:
  78.         jsr (Animate_Raw).l
  79.         jsr (MoveSprite).l
  80.         jmp (ObjHitFloor_DoRoutine).l
  81. ; ---------------------------------------------------------------------------
  82.  
  83. BossNeoBahamut_Setup4:
  84.         move.b  $40(a0),d0
  85.         add.b   d0,$3C(a0)
  86.         btst    #0,(Level_frame_counter+1).w
  87.         beq.s   +
  88.         lea ChildObjDat_DEZRadiusSuperExplosion(pc),a2
  89.         jsr (CreateChild6_Simple).l
  90.         bne.s   +
  91.         move.b  $3C(a0),$3C(a1)
  92.         move.w  #$380,priority(a1)
  93. +       move.b  (Level_frame_counter+1).w,d0
  94.         andi.w  #7,d0
  95.         bne.s   +
  96.         sfx sfx_BreakBridge,0,0,0
  97. +       bra.s   BossNeoBahamut_Setup
  98. ; ---------------------------------------------------------------------------
  99.  
  100. BossNeoBahamut_Setup5:
  101.         bsr.w   Obj_NeoBahamut_Swing_UpAndDown_Slow
  102.         bra.s   BossNeoBahamut_Setup
  103.  
  104. ; =============== S U B R O U T I N E =======================================
  105.  
  106. BossNeoBahamut_Intro:
  107.         sfx sfx_Flash,0,0,0
  108.         move.b  #$A,$40(a0)
  109.         move.b  #4,(Hyper_Sonic_flash_timer).w
  110.         lea (Player_1).w,a1
  111.         move.w  #id_LookUp<<8,anim(a1)
  112.         move.l  #BossNeoBahamut_Return,$34(a0)
  113.         lea ChildObjDat_BossNeoBahamut_Clone(pc),a2
  114.         jmp (CreateChild1_Normal).l
  115. ; ---------------------------------------------------------------------------
  116.  
  117. BossNeoBahamut_Intro2:
  118.         move.b  #_Setup4,routine(a0)
  119.         move.w  #$7F,$2E(a0)
  120.         move.l  #BossNeoBahamut_Intro3,$34(a0)
  121.         st  (Screen_Shaking_Flag).w
  122.         rts
  123. ; ---------------------------------------------------------------------------
  124.  
  125. BossNeoBahamut_Intro3:
  126.         move.b  #_Setup1,routine(a0)
  127.         move.l  #BossNeoBahamut_IntroJump,$34(a0)
  128.         sf  (Screen_Shaking_Flag).w
  129.         rts
  130. ; ---------------------------------------------------------------------------
  131.  
  132. BossNeoBahamut_IntroJump:
  133.         move.b  #_Setup2,routine(a0)
  134.         move.w  #$280,x_vel(a0)
  135.         move.w  #-$400,y_vel(a0)
  136.         move.l  #BossNeoBahamut_IntroStop,$34(a0)
  137.         rts
  138. ; ---------------------------------------------------------------------------
  139.  
  140. BossNeoBahamut_IntroStop:
  141.         move.b  #_Setup1,routine(a0)
  142.         tst.b   (Intro_flag).w
  143.         bne.s   BossNeoBahamut_IntroReturn
  144.         st  (Intro_flag).w
  145.         move.l  #BossNeoBahamut_Return,$34(a0)
  146.         clr.l   x_vel(a0)
  147.         lea (Player_1).w,a1
  148.         move.w  #id_Wait2<<8,anim(a1)
  149.         st  (NoPause_flag).w
  150.         lea AniRaw_BossNeoBahamutWait(pc),a1
  151.         jsr (Set_Raw_Animation).l
  152.         lea ChildObjDat_Dialog_Process(pc),a2
  153.         jsr (CreateChild6_Simple).l
  154.         bne.s   +
  155.         move.b  #_NeoBahamutStart,routine(a1)
  156.         move.l  #DialogNeoBahamutStart_Process_Index-4,$34(a1)
  157.         move.b  #(DialogNeoBahamutStart_Process_Index_End-DialogNeoBahamutStart_Process_Index)/8,$39(a1)
  158. +       rts
  159. ; ---------------------------------------------------------------------------
  160.  
  161. BossNeoBahamut_IntroReturn:
  162.         move.l  #BossNeoBahamut_SetSubroutine,$34(a0)
  163.         clr.l   x_vel(a0)
  164.         lea AniRaw_BossNeoBahamutWait(pc),a1
  165.         jsr (Set_Raw_Animation).l
  166.         lea ChildObjDat_RobotnikHud(pc),a2
  167.         jsr (CreateChild6_Simple).l
  168.         bne.s   +
  169.         move.w  a0,parent3(a1)
  170. +       sf  (Ctrl_1_locked).w
  171.         jmp (Restore_PlayerControl).l
  172.  
  173. ; =============== S U B R O U T I N E =======================================
  174.  
  175. BossNeoBahamut_SetSubroutine:
  176.         clearRAM3 Pos_objtable_Start, Pos_objtable_End
  177.         moveq   #0,d0
  178.         move.b  obBNB_Routine(a0),d0
  179.         addq.b  #1,obBNB_Routine(a0)
  180.         lea BossNeoBahamut_SetMovement(pc),a1
  181.         cmpi.b  #BossNeoBahamut_Hits-3,$29(a0)
  182.         bhs.s   +
  183.         lea BossNeoBahamut_SetMovement2(pc),a1
  184. +       cmpi.b  #BossNeoBahamut_Hits/3+1,$29(a0)
  185.         bhs.s   +
  186.         lea BossNeoBahamut_SetMovement3(pc),a1
  187. +       move.b  (a1,d0.w),d0
  188.         bmi.s   +
  189.         move.l  BossNeoBahamut_Movement(pc,d0.w),$34(a0)
  190.         rts
  191. +       clr.b   obBNB_Routine(a0)
  192.         rts
  193. ; ---------------------------------------------------------------------------
  194.  
  195. BossNeoBahamut_SetMovement:
  196.         dc.b 0<<2
  197.         dc.b 1<<2
  198.         dc.b 0<<2
  199.         dc.b 2<<2
  200.         dc.b 0<<2
  201.         dc.b 1<<2
  202.         dc.b 0<<2
  203.         dc.b 1<<2
  204.         dc.b 0<<2
  205.         dc.b 3<<2
  206.         dc.b 0<<2
  207.         dc.b 1<<2
  208.         dc.b 0<<2
  209.         dc.b 3<<2
  210.         dc.b 0<<2
  211.         dc.b 2<<2
  212.         dc.b -1 ; Конец
  213.     even
  214. BossNeoBahamut_SetMovement2:
  215.         dc.b 1<<2
  216.         dc.b 0<<2
  217.         dc.b 2<<2
  218.         dc.b 1<<2
  219.         dc.b 1<<2
  220.         dc.b 0<<2
  221.         dc.b 3<<2
  222.         dc.b 1<<2
  223.         dc.b 1<<2
  224.         dc.b 0<<2
  225.         dc.b 2<<2
  226.         dc.b -1 ; Конец
  227.     even
  228.  
  229. BossNeoBahamut_SetMovement3:
  230.         dc.b 1<<2
  231.         dc.b 2<<2
  232.         dc.b 1<<2
  233.         dc.b 1<<2
  234.         dc.b 3<<2
  235.         dc.b 1<<2
  236.         dc.b 3<<2
  237.         dc.b 2<<2
  238.         dc.b -1 ; Конец
  239.     even
  240.  
  241. BossNeoBahamut_Movement:
  242.         dc.l BossNeoBahamut_WaitAttack          ; 0
  243.         dc.l BossNeoBahamut_SuperDashAttack     ; 1
  244.         dc.l BossNeoBahamut_ShotBallAttack      ; 2
  245.         dc.l BossNeoBahamut_SuperShotBallAttack ; 3
  246. ; ---------------------------------------------------------------------------
  247. ; Босс ожидает
  248. ; ---------------------------------------------------------------------------
  249.  
  250. ; =============== S U B R O U T I N E =======================================
  251.  
  252. BossNeoBahamut_WaitAttack:
  253.         move.b  #_Setup1,routine(a0)
  254.         move.w  #$4F,$2E(a0)
  255.         move.l  #BossNeoBahamut_SetSubroutine,$34(a0)
  256.         lea AniRaw_BossNeoBahamutWait(pc),a1
  257.         jmp (Set_Raw_Animation).l
  258. ; ---------------------------------------------------------------------------
  259. ; Босс атакует с помощью рывка
  260. ; ---------------------------------------------------------------------------
  261.  
  262. ; =============== S U B R O U T I N E =======================================
  263.  
  264. BossNeoBahamut_SuperDashAttack:
  265.         move.b  #_Setup3,routine(a0)
  266.         sfx sfx_Signal,0,0,0
  267.         move.l  #BossNeoBahamut_Return,$34(a0)
  268.         lea ChildObjDat_BossNeoBahamut_Timer(pc),a2
  269.         jsr (CreateChild1_Normal).l
  270.         lea AniRaw_BossNeoBahamutDashWait(pc),a1
  271.         jmp (Set_Raw_Animation).l
  272. ; ---------------------------------------------------------------------------
  273.  
  274. BossNeoBahamut_SuperDashAttack_Start:
  275.         sfx sfx_Boom,0,0,0
  276.         move.w  #-$C00,x_vel(a0)
  277.         btst    #0,render_flags(a0)
  278.         bne.s   +
  279.         neg.w   x_vel(a0)
  280. +       move.l  #BossNeoBahamut_SuperDashAttack_Check,$34(a0)
  281.         lea ChildObjDat_BossNeoBahamut_Trail(pc),a2
  282.         jsr (CreateChild6_Simple).l
  283.         lea AniRaw_BossNeoBahamutDashAttack(pc),a1
  284.         jmp (Set_Raw_Animation).l
  285. ; ---------------------------------------------------------------------------
  286.  
  287. BossNeoBahamut_SuperDashAttack_Check:
  288.         move.w  (Camera_X_pos).w,d0
  289.         btst    #0,render_flags(a0)
  290.         bne.s   +
  291.         addi.w  #$120,d0
  292.         cmp.w   x_pos(a0),d0
  293.         bge.s   +++
  294.         bra.s   ++
  295. +       addi.w  #$20,d0
  296.         cmp.w   x_pos(a0),d0
  297.         ble.s       ++
  298. +       move.w  #$F,$2E(a0)
  299.         move.l  #BossNeoBahamut_SuperDashAttack_Stop,$34(a0)
  300.         clr.w   x_vel(a0)
  301. +       rts
  302. ; ---------------------------------------------------------------------------
  303.  
  304. BossNeoBahamut_SuperDashAttack_Stop:
  305.         move.l  #BossNeoBahamut_SuperDashAttack_ChangePos,$34(a0)
  306.         lea AniRaw_BossNeoBahamutWait(pc),a1
  307.         jmp (Set_Raw_Animation).l
  308. ; ---------------------------------------------------------------------------
  309.  
  310. BossNeoBahamut_SuperDashAttack_ChangePos:
  311.         move.l  #BossNeoBahamut_SetSubroutine,$34(a0)
  312.         bchg    #0,render_flags(a0)
  313.         rts
  314. ; ---------------------------------------------------------------------------
  315. ; Босс атакует с помощью выстрелов вниз
  316. ; ---------------------------------------------------------------------------
  317.  
  318. ; =============== S U B R O U T I N E =======================================
  319.  
  320. BossNeoBahamut_ShotBallAttack:
  321.         move.b  #_Setup1,routine(a0)
  322.         move.w  #$4F,$2E(a0)
  323.         sfx sfx_Circular,0,0,0
  324.         move.l  #BossNeoBahamut_ShotBallAttack_Jump,$34(a0)
  325.         lea AniRaw_BossNeoBahamutShotBallWait(pc),a1
  326.         jmp (Set_Raw_Animation).l
  327. ; ---------------------------------------------------------------------------
  328.  
  329. BossNeoBahamut_ShotBallAttack_Jump:
  330.         move.l  #BossNeoBahamut_ShotBallAttack_CheckPos,$34(a0)
  331.         move.w  #-$300,y_vel(a0)
  332.         lea AniRaw_BossNeoBahamutPower(pc),a1
  333.         jmp (Set_Raw_Animation).l
  334. ; ---------------------------------------------------------------------------
  335.  
  336. BossNeoBahamut_ShotBallAttack_CheckPos:
  337.         move.w  (Camera_Y_pos).w,d0
  338.         addi.w  #$40,d0
  339.         cmp.w   y_pos(a0),d0
  340.         blo.s       +
  341.         move.w  #$1F,$2E(a0)
  342.         move.l  #BossNeoBahamut_ShotBallAttack_SetAttack,$34(a0)
  343.         clr.w   y_vel(a0)
  344.         move.b  #19,obBNB_Count(a0)
  345. +       rts
  346. ; ---------------------------------------------------------------------------
  347.  
  348. BossNeoBahamut_ShotBallAttack_SetAttack:
  349.         move.b  #_Setup5,routine(a0)
  350.         move.w  (Player_1+x_pos).w,obBNB_XPos(a0)
  351.         move.l  #BossNeoBahamut_Return,$34(a0)
  352.         lea ChildObjDat_NeoBahamut_ShotBall_Aim(pc),a2
  353.         jsr (CreateChild6_Simple).l
  354.         bne.s   +
  355.         move.w  obBNB_XPos(a0),$38(a1)
  356. +       rts
  357. ; ---------------------------------------------------------------------------
  358.  
  359. BossNeoBahamut_ShotBallAttack_SetAnim:
  360.         move.b  #4,(Hyper_Sonic_flash_timer).w
  361.         move.l  #BossNeoBahamut_ShotBallAttack_Attack,$34(a0)
  362.         lea AniRaw_BossNeoBahamutShotBallAttack(pc),a1
  363.         jmp (Set_Raw_Animation).l
  364. ; ---------------------------------------------------------------------------
  365.  
  366. BossNeoBahamut_ShotBallAttack_Attack:
  367.         move.w  #7,$2E(a0)
  368.         lea ChildObjDat_BossNeoBahamut_ShotBall(pc),a2
  369.         jsr (CreateChild6_Simple).l
  370.         bne.s   +
  371.         move.w  obBNB_XPos(a0),$38(a1)
  372. +       subq.b  #1,obBNB_Count(a0)
  373.         bne.s   BossNeoBahamut_ShotBallAttack_Attack_Return
  374.         move.l  #BossNeoBahamut_ShotBallAttack_Attack_Fall,$34(a0)
  375.         move.w  #$1F,$2E(a0)
  376.         lea AniRaw_BossNeoBahamutShotBallAttack2(pc),a1
  377.         jsr (Set_Raw_Animation).l
  378.  
  379. BossNeoBahamut_ShotBallAttack_Attack_Return:
  380.         rts
  381. ; ---------------------------------------------------------------------------
  382.  
  383. BossNeoBahamut_ShotBallAttack_Attack_Fall:
  384.         move.b  #_Setup2,routine(a0)
  385.         move.l  #BossNeoBahamut_ShotBallAttack_Attack_FallReturn,$34(a0)
  386.         lea AniRaw_BossNeoBahamutPower(pc),a1
  387.         jmp (Set_Raw_Animation).l
  388. ; ---------------------------------------------------------------------------
  389.  
  390. BossNeoBahamut_ShotBallAttack_Attack_FallReturn:
  391.         move.b  #_Setup1,routine(a0)
  392.         clr.w   y_vel(a0)
  393.         move.l  #BossNeoBahamut_SuperDashAttack_ChangePos,$34(a0)
  394.         bchg    #0,render_flags(a0)
  395.         lea AniRaw_BossNeoBahamutWait(pc),a1
  396.         jmp (Set_Raw_Animation).l
  397. ; ---------------------------------------------------------------------------
  398.  
  399. BossNeoBahamut_ShotBallAttack_Attack_ChangePos:
  400.         move.l  #BossNeoBahamut_SetSubroutine,$34(a0)
  401.         rts
  402. ; ---------------------------------------------------------------------------
  403. ; Босс атакует с помощью выстрелов шарами
  404. ; ---------------------------------------------------------------------------
  405.  
  406. ; =============== S U B R O U T I N E =======================================
  407.  
  408. BossNeoBahamut_SuperShotBallAttack:
  409.         move.b  #_Setup1,routine(a0)
  410.         move.w  #$1F,$2E(a0)
  411.         move.b  #4,obBNB_Count(a0)
  412.         move.b  #4,(Hyper_Sonic_flash_timer).w
  413.         move.l  #BossNeoBahamut_SuperShotBallAttack_Start,$34(a0)
  414.         lea AniRaw_BossNeoBahamutAttack(pc),a1
  415.         jmp (Set_Raw_Animation).l
  416. ; ---------------------------------------------------------------------------
  417.  
  418. BossNeoBahamut_SuperShotBallAttack_Start:
  419.         move.w  #$2F,$2E(a0)
  420.         move.l  #BossNeoBahamut_SuperShotBallAttack_ChangeAnim,$34(a0)
  421.         lea ChildObjDat_NeoBahamut_SuperShotBall(pc),a2
  422.         jsr (CreateChild6_Simple).l
  423.         lea AniRaw_BossNeoBahamutAttack2(pc),a1
  424.         jsr (Set_Raw_Animation).l
  425.         subq.b  #1,obBNB_Count(a0)
  426.         bne.s   +
  427.         move.l  #BossNeoBahamut_SuperShotBallAttack_Stop,$34(a0)
  428. +       rts
  429. ; ---------------------------------------------------------------------------
  430.  
  431. BossNeoBahamut_SuperShotBallAttack_ChangeAnim:
  432.         move.w  #$2F,$2E(a0)
  433.         move.l  #BossNeoBahamut_SuperShotBallAttack_Start,$34(a0)
  434.         lea AniRaw_BossNeoBahamutAttack(pc),a1
  435.         jmp (Set_Raw_Animation).l
  436. ; ---------------------------------------------------------------------------
  437.  
  438. BossNeoBahamut_SuperShotBallAttack_Stop:
  439.         move.l  #BossNeoBahamut_SuperShotBallAttack_ChangePos,$34(a0)
  440.         lea AniRaw_BossNeoBahamutWait(pc),a1
  441.         jmp (Set_Raw_Animation).l
  442. ; ---------------------------------------------------------------------------
  443.  
  444. BossNeoBahamut_SuperShotBallAttack_ChangePos:
  445.         move.l  #BossNeoBahamut_SetSubroutine,$34(a0)
  446.         rts
  447. ; ---------------------------------------------------------------------------
  448. ; Проверка кадра для выбора коллизии
  449. ; ---------------------------------------------------------------------------
  450.  
  451. ; =============== S U B R O U T I N E =======================================
  452.  
  453. BossNeoBahamut_CheckFrame:
  454.         btst    #6,status(a0)
  455.         bne.s   +
  456.         moveq   #0,d0
  457.         move.b  mapping_frame(a0),d0
  458.         move.b  CheckFrameNeoBahamut_Index(pc,d0.w),collision_flags(a0)
  459. +       rts
  460. ; ---------------------------------------------------------------------------
  461.  
  462. CheckFrameNeoBahamut_Index:
  463.         dc.b $21|$80        ; 0
  464.         dc.b $21|$80        ; 1
  465.         dc.b $21            ; 2
  466.         dc.b $21            ; 3
  467.         dc.b $21            ; 4
  468.         dc.b $21            ; 5
  469.         dc.b $21            ; 6
  470.         dc.b $21            ; 7
  471.         dc.b $21|$80        ; 8
  472.         dc.b $21            ; 9
  473.         dc.b $21            ; A
  474.         dc.b $21            ; B
  475.         dc.b $21            ; C
  476.         dc.b $21            ; D
  477.         dc.b $21            ; E
  478.         dc.b $21            ; F
  479.         dc.b $21|$80        ; 10
  480.         dc.b $21|$80        ; 11
  481.         dc.b $21            ; 12
  482.         dc.b $21            ; 13
  483. ; ---------------------------------------------------------------------------
  484. ; Проверка урона
  485. ; ---------------------------------------------------------------------------
  486.  
  487. ; =============== S U B R O U T I N E =======================================
  488.  
  489. BossNeoBahamut_CheckTouch:
  490.         tst.b   collision_flags(a0)
  491.         bne.s   BossNeoBahamut_CheckTouch_Return
  492.         tst.b   collision_property(a0)
  493.         beq.s   BossNeoBahamut_CheckTouch_WaitExplosive
  494.         tst.b   $1C(a0)
  495.         bne.s   ++
  496.         move.b  #$40,$1C(a0)
  497.         sfx sfx_HurtFire,0,0,0
  498.         bset    #6,status(a0)
  499.         cmpi.b  #BossNeoBahamut_Hits-4,$29(a0)
  500.         beq.s   +
  501.         cmpi.b  #BossNeoBahamut_Hits/3,$29(a0)
  502.         bne.s   ++
  503. +       clr.b   obBNB_Routine(a0)
  504. +       btst    #0,$1C(a0)
  505.         bne.s   +
  506.         eori.w  #$6000,art_tile(a0)
  507. +       subq.b  #1,$1C(a0)
  508.         bne.s   BossNeoBahamut_CheckTouch_Return
  509.         bclr    #6,status(a0)
  510.         move.b  collision_restore_flags(a0),collision_flags(a0)
  511.  
  512. BossNeoBahamut_CheckTouch_Return:
  513.         rts
  514. ; ---------------------------------------------------------------------------
  515.  
  516. BossNeoBahamut_CheckTouch_WaitExplosive:
  517.         move.l  #BossNeoBahamut_CheckTouch_JumpExplosive,address(a0)
  518.         move.l  #BossNeoBahamut_CheckTouch_WaitPlayerExplosive,$34(a0)
  519.         bset    #6,status(a0)
  520.         bset    #7,status(a0)
  521.         clr.w   $2E(a0)
  522.         move.w  #-$600,y_vel(a0)
  523.         move.w  #-$280,x_vel(a0)
  524.         btst    #0,render_flags(a0)
  525.         bne.s   +
  526.         neg.w   x_vel(a0)
  527. +       lea AniRaw_BossNeoBahamutPower(pc),a1
  528.         jsr (Set_Raw_Animation).l
  529.         jmp (BossDefeated_NoTime).l
  530. ; ---------------------------------------------------------------------------
  531.  
  532. BossNeoBahamut_CheckTouch_JumpExplosive:
  533.         jsr (Animate_Raw).l
  534.         jsr (MoveSprite).l
  535.         jsr (ObjHitFloor_DoRoutine).l
  536.         jmp (Draw_Sprite).l
  537. ; ---------------------------------------------------------------------------
  538.  
  539. BossNeoBahamut_CheckTouch_WaitPlayerExplosive:
  540.         move.l  #BossNeoBahamut_CheckTouch_DeathExplosive,address(a0)
  541.         move.l  #BossNeoBahamut_CheckTouch_DialogExplosive,$34(a0)
  542.         clr.l   x_vel(a0)
  543.         lea AniRaw_BossNeoBahamutEnd(pc),a1
  544.         jsr (Set_Raw_Animation).l
  545.  
  546. BossNeoBahamut_CheckTouch_DeathExplosive:
  547.         jsr (Animate_Raw).l
  548.         jsr (Obj_Wait).l
  549.         jmp (Draw_Sprite).l
  550. ; ---------------------------------------------------------------------------
  551.  
  552. BossNeoBahamut_CheckTouch_DialogExplosive:
  553.         lea (Player_1).w,a1
  554.         btst    #Status_InAir,status(a1)
  555.         bne.s   BossNeoBahamut_CheckTouch_DialogExplosive_Return
  556.         clr.w   (Ctrl_1_logical).w
  557.         jsr (Find_SonicTails).l
  558.         move.b  #$81,object_control(a1)
  559.         move.w  #id_LookUp<<8,anim(a1)
  560.         jsr (Stop_Object).l
  561.         bclr    #Status_Facing,status(a1)
  562.         tst.w   d0
  563.         beq.s   +
  564.         bset    #Status_Facing,status(a1)
  565. +       move.l  #BossNeoBahamut_CheckTouch_DialogExplosive_Return,$34(a0)
  566.         st  (NoPause_flag).w
  567.         lea ChildObjDat_Dialog_Process(pc),a2
  568.         jsr (CreateChild6_Simple).l
  569.         bne.s   BossNeoBahamut_CheckTouch_DialogExplosive_Return
  570.         move.b  #_NeoBahamutEnd,routine(a1)
  571.         move.l  #DialogNeoBahamutEnd_Process_Index-4,$34(a1)
  572.         move.b  #(DialogNeoBahamutEnd_Process_Index_End-DialogNeoBahamutEnd_Process_Index)/8,$39(a1)
  573.  
  574. BossNeoBahamut_CheckTouch_DialogExplosive_Return:
  575.         rts
  576. ; ---------------------------------------------------------------------------
  577.  
  578. BossNeoBahamut_CheckTouch_Remove:
  579.         move.w  #$4F,$2E(a0)
  580.         move.l  #BossNeoBahamut_CheckTouch_Remove_SuperExplosion,address(a0)
  581.         move.l  #BossNeoBahamut_CheckTouch_Remove_End,$34(a0)
  582.  
  583. BossNeoBahamut_CheckTouch_Remove_SuperExplosion:
  584.         move.b  $40(a0),d0
  585.         add.b   d0,$3C(a0)
  586.         btst    #0,(Level_frame_counter+1).w
  587.         beq.s   +
  588.         lea ChildObjDat_DEZRadiusSuperExplosion(pc),a2
  589.         jsr (CreateChild6_Simple).l
  590.         bne.s   +
  591.         move.b  $3C(a0),$3C(a1)
  592.         move.w  #$180,priority(a1)
  593. +       move.b  (Level_frame_counter+1).w,d0
  594.         andi.w  #7,d0
  595.         bne.s   +
  596.         sfx sfx_BreakBridge,0,0,0
  597. +       jsr (Obj_Wait).l
  598.         jmp (Draw_Sprite).l
  599. ; ---------------------------------------------------------------------------
  600.  
  601. BossNeoBahamut_CheckTouch_Remove_End:
  602.         addq.b  #2,(Dynamic_resize_routine).w
  603.         move.l  #Go_Delete_Sprite,address(a0)
  604.         rts
  605. ; ---------------------------------------------------------------------------
  606. ; Клон (Интро)
  607. ; ---------------------------------------------------------------------------
  608.  
  609. ; =============== S U B R O U T I N E =======================================
  610.  
  611. Obj_BossNeoBahamut_Clone:
  612.         lea ObjDat3_BossNeoBahamut_Clone(pc),a1
  613.         jsr (SetUp_ObjAttributes3).l
  614.         bset    #0,render_flags(a0)
  615.         move.b  #4,$40(a0)
  616.         move.l  #BossNeoBahamut_Clone_Frame2,address(a0)
  617.         tst.b   subtype(a0)
  618.         beq.s   BossNeoBahamut_Clone_Frame2
  619.         neg.b   $40(a0)
  620.         move.l  #BossNeoBahamut_Clone_Frame1,address(a0)
  621.  
  622. BossNeoBahamut_Clone_Frame1:
  623.         btst    #0,(Level_frame_counter+1).w
  624.         beq.s   BossNeoBahamut_Clone_Draw
  625.  
  626. BossNeoBahamut_Clone_Return:
  627.         rts
  628. ; ---------------------------------------------------------------------------
  629.  
  630. BossNeoBahamut_Clone_Frame2:
  631.         btst    #0,(Level_frame_counter+1).w
  632.         beq.s   BossNeoBahamut_Clone_Return
  633.  
  634. BossNeoBahamut_Clone_Draw:
  635.         jsr (Refresh_ChildPosition).l
  636.         move.b  $40(a0),d0
  637.         add.b   d0,child_dx(a0)
  638.         beq.s   BossNeoBahamut_Clone_Remove
  639.         jmp (Child_Draw_Sprite).l
  640. ; ---------------------------------------------------------------------------
  641.  
  642. BossNeoBahamut_Clone_Remove:
  643.         move.l  #Go_Delete_Sprite,address(a0)
  644.         tst.b   subtype(a0)
  645.         bne.s   BossNeoBahamut_Clone_Return2
  646.         movea.w parent3(a0),a1
  647.         move.l  #BossNeoBahamut_Intro2,$34(a1)
  648.         sf  obBNB_Draw(a1)
  649.  
  650. BossNeoBahamut_Clone_Return2:
  651.         rts
  652. ; ---------------------------------------------------------------------------
  653. ; Таймер
  654. ; ---------------------------------------------------------------------------
  655.  
  656. ; =============== S U B R O U T I N E =======================================
  657.  
  658. Obj_BossNeoBahamut_Timer:
  659.         lea ObjDat3_BossNeoBahamut_Timer(pc),a1
  660.         jsr (SetUp_ObjAttributes).l
  661.         move.l  #BossNeoBahamut_Timer_Remove,$34(a0)
  662.         move.l  #BossNeoBahamut_Timer_Draw,address(a0)
  663.         movea.w parent3(a0),a1
  664.         move.l  #AniRaw_BossNeoBahamut_Timer,d0
  665.         cmpi.b  #BossNeoBahamut_Hits-3,$29(a1)
  666.         bhs.s   +
  667.         move.l  #AniRaw_BossNeoBahamut_Timer2,d0
  668. +       cmpi.b  #BossNeoBahamut_Hits/3+1,$29(a1)
  669.         bhs.s   +
  670.         move.l  #AniRaw_BossNeoBahamut_Timer3,d0
  671. +       move.l  d0,$30(a0)
  672.  
  673. BossNeoBahamut_Timer_Draw:
  674.         jsr (Animate_Raw).l
  675.         jmp (Child_Draw_Sprite).l
  676. ; ---------------------------------------------------------------------------
  677.  
  678. BossNeoBahamut_Timer_Remove:
  679.         move.b  #4,(Hyper_Sonic_flash_timer).w
  680.         move.l  #Go_Delete_Sprite,address(a0)
  681.         movea.w parent3(a0),a1
  682.         move.l  #BossNeoBahamut_SuperDashAttack_Start,$34(a1)
  683.         rts
  684. ; ---------------------------------------------------------------------------
  685.  
  686. AniRaw_BossNeoBahamut_Timer:
  687.         dc.b $28, 0, 0, 1, 2, $F4
  688. AniRaw_BossNeoBahamut_Timer2:
  689.         dc.b $28, 1, 1, 2, $F4, 0
  690. AniRaw_BossNeoBahamut_Timer3:
  691.         dc.b $28, 2, 2, $F4
  692. ; ---------------------------------------------------------------------------
  693. ; Тень босса
  694. ; ---------------------------------------------------------------------------
  695.  
  696. ; =============== S U B R O U T I N E =======================================
  697.  
  698. Obj_BossNeoBahamut_Trail:
  699.         moveq   #0,d0
  700.         move.b  subtype(a0),d0
  701.         lsl.b   #3,d0
  702.         addi.b  #16,d0
  703.         move.b  d0,subtype(a0)
  704.         movea.w parent3(a0),a1
  705.         bset    #0,render_flags(a0)
  706.         btst    #0,render_flags(a1)
  707.         bne.s   +
  708.         bclr    #0,render_flags(a0)
  709. +       lea ObjDat3_BossNeoBahamut_Trail(pc),a1
  710.         jsr (SetUp_ObjAttributes3).l
  711.         move.l  #+,address(a0)
  712.         move.l  #AniRaw_BossNeoBahamutDashAttack,$30(a0)
  713. +       bsr.w   Obj_NeoBahamut_CopyPos
  714.         bsr.s   BossNeoBahamut_Trail_Remove
  715.         jsr (Animate_Raw).l
  716.         jmp (Child_DrawTouch_Sprite).l
  717. ; ---------------------------------------------------------------------------
  718.  
  719. BossNeoBahamut_Trail_Remove:
  720.         movea.w parent3(a0),a1
  721.         cmpi.l  #AniRaw_BossNeoBahamutDashAttack,$30(a1)
  722.         beq.s   +
  723.         move.l  #Go_Delete_Sprite,address(a0)
  724. +       rts
  725. ; ---------------------------------------------------------------------------
  726. ; Прицел перед выстрелом
  727. ; ---------------------------------------------------------------------------
  728.  
  729. ; =============== S U B R O U T I N E =======================================
  730.  
  731. Obj_NeoBahamut_ShotBall_Aim:
  732.         move.w  $38(a0),x_pos(a0)
  733.         move.w  (Camera_Y_pos).w,d0
  734.         add.w   #$C8,d0
  735.         move.w  d0,y_pos(a0)
  736.         sfx sfx_Squeak,0,0,0
  737.         lea ObjDat3_NeoBahamut_ShotBall_Aim(pc),a1
  738.         jsr (SetUp_ObjAttributes).l
  739.         move.w  #$7F,$2E(a0)
  740.         move.l  #+,address(a0)
  741.         move.l  #NeoBahamut_ShotBall_Aim_Remove,$34(a0)
  742.         move.l  #AniRaw_NeoBahamut_ShotBall_Aim,$30(a0)
  743. +       jsr (Animate_Raw).l
  744.         jsr (Obj_Wait).l
  745.         jmp (Child_Draw_Sprite).l
  746. ; ---------------------------------------------------------------------------
  747.  
  748. NeoBahamut_ShotBall_Aim_Remove:
  749.         movea.w parent3(a0),a1
  750.         move.l  #BossNeoBahamut_ShotBallAttack_SetAnim,$34(a1)
  751.         move.l  #Go_Delete_Sprite,address(a0)
  752.         rts
  753. ; ---------------------------------------------------------------------------
  754.  
  755. AniRaw_NeoBahamut_ShotBall_Aim:
  756.         dc.b 0, 0, 1, $FC
  757. ; ---------------------------------------------------------------------------
  758. ; Шар для выстрела
  759. ; ---------------------------------------------------------------------------
  760.  
  761. ; =============== S U B R O U T I N E =======================================
  762.  
  763. Obj_NeoBahamut_ShotBall:
  764.         move.w  $38(a0),d1
  765.         move.w  (Camera_Y_pos).w,d2
  766.         add.w   #$C8,d2
  767.         sub.w   x_pos(a0),d1
  768.         sub.w   y_pos(a0),d2
  769.         jsr (GetArcTan).l
  770.         jsr (GetSineCosine).l
  771.         move.w  #$C00,d2
  772.         muls.w  d2,d1
  773.         asr.l   #8,d1
  774.         move.w  d1,x_vel(a0)
  775.         muls.w  d2,d0
  776.         asr.l   #8,d0
  777.         move.w  d0,y_vel(a0)
  778.         lea ObjDat3_BossNeoBahamut_ShotBall(pc),a1
  779.         jsr (SetUp_ObjAttributes).l
  780.         move.l  #NeoBahamut_ShotBall_Remove,$34(a0)
  781.         move.l  #NeoBahamut_ShotBall_Draw,address(a0)
  782.         move.l  #AniRaw_NeoBahamut_ShotBall,$30(a0)
  783.  
  784. NeoBahamut_ShotBall_Draw:
  785.         jsr (Animate_Raw).l
  786.         jsr (MoveSprite2).l
  787.         jsr (ObjHitFloor_DoRoutine).l
  788.         jmp (Sprite_CheckDeleteTouchXY).l
  789. ; ---------------------------------------------------------------------------
  790.  
  791. NeoBahamut_ShotBall_Remove:
  792.         sfx sfx_BreakBridge,0,0,0
  793.         move.w  #4,(Screen_Shaking_Flag).w
  794.         move.l  #Go_Delete_Sprite,address(a0)
  795.         lea ChildObjDat_NeoBahamut_ShotBall_Explosion(pc),a2
  796.         jmp (CreateChild6_Simple).l
  797. ; ---------------------------------------------------------------------------
  798.  
  799. AniRaw_NeoBahamut_ShotBall:
  800.         dc.b 0, 1, 2, $FC
  801. ; ---------------------------------------------------------------------------
  802. ; Шар для выстрела (Взрывы)
  803. ; ---------------------------------------------------------------------------
  804.  
  805. ; =============== S U B R O U T I N E =======================================
  806.  
  807. Obj_NeoBahamut_ShotBall_Explosion:
  808.         lea ObjDat3_BossNeoBahamut_ShotBall(pc),a1
  809.         jsr (SetUp_ObjAttributes).l
  810.         clr.w   x_vel(a0)
  811.         move.w  #-$200,y_vel(a0)
  812.         move.l  #NeoBahamut_ShotBall_Explosion_Anim,address(a0)
  813.         jsr (Random_Number).l
  814.         move.w  d0,d1
  815.         andi.w  #$1F,d0
  816.         addi.w  #$10,d0
  817.         andi.w  #1,d1
  818.         bne.s   +
  819.         neg.w   d0
  820. +       add.w   d0,x_pos(a0)
  821.  
  822. NeoBahamut_ShotBall_Explosion_Anim:
  823.         subq.b  #1,anim_frame_timer(a0)
  824.         bpl.s   +
  825.         move.b  #3,anim_frame_timer(a0)
  826.         addq.b  #1,mapping_frame(a0)
  827.         cmpi.b  #8,mapping_frame(a0)
  828.         beq.w   NeoBahamut_ShotBall_Explosion_Remove
  829. +       jsr (MoveSprite2).l
  830.         jmp (Draw_Sprite).l
  831. ; ---------------------------------------------------------------------------
  832.  
  833. NeoBahamut_ShotBall_Explosion_Remove:
  834.         move.l  #Go_Delete_Sprite,address(a0)
  835.         rts
  836. ; ---------------------------------------------------------------------------
  837. ; Супер шар для выстрела
  838. ; ---------------------------------------------------------------------------
  839.  
  840. ; =============== S U B R O U T I N E =======================================
  841.  
  842. Obj_NeoBahamut_SuperShotBall:
  843.         clearRAM3 Pos_objtable_Start, Pos_objtable_End
  844.         lea (Player_1).w,a1
  845.         move.w  x_pos(a1),d1
  846.         move.w  y_pos(a1),d2
  847.         sub.w   x_pos(a0),d1
  848.         sub.w   y_pos(a0),d2
  849.         jsr (GetArcTan).l
  850.         jsr (GetSineCosine).l
  851.         move.w  #$800,d2
  852.         muls.w  d2,d1
  853.         asr.l   #8,d1
  854.         move.w  d1,x_vel(a0)
  855.         muls.w  d2,d0
  856.         asr.l   #8,d0
  857.         move.w  d0,y_vel(a0)
  858.         sfx sfx_Laser,0,0,0
  859.         move.w  #4,(Screen_Shaking_Flag).w
  860.         lea ObjDat3_BossNeoBahamut_SuperShotBall(pc),a1
  861.         jsr (SetUp_ObjAttributes).l
  862.         lea ChildObjDat_NeoBahamut_SuperShotBall_Trail(pc),a2
  863.         jsr (CreateChild6_Simple).l
  864.         move.l  #NeoBahamut_SuperShotBall_Remove,$34(a0)
  865.         move.l  #NeoBahamut_SuperShotBall_Draw,address(a0)
  866.         move.l  #AniRaw_NeoBahamut_SuperShotBall,$30(a0)
  867.  
  868. NeoBahamut_SuperShotBall_Draw:
  869.         jsr (Animate_Raw).l
  870.         jsr (MoveSprite2).l
  871.         jsr (ObjHitFloor_DoRoutine).l
  872.         bsr.w   Obj_NeoBahamut_SendPos
  873.         jmp (Sprite_CheckDeleteTouchXY).l
  874. ; ---------------------------------------------------------------------------
  875.  
  876. NeoBahamut_SuperShotBall_Remove:
  877.         sfx sfx_BreakBridge,0,0,0
  878.         move.w  #4,(Screen_Shaking_Flag).w
  879.         move.l  #Obj_DEZRadiusExplosion,address(a0)
  880.         bset    #7,status(a0)
  881.         rts
  882. ; ---------------------------------------------------------------------------
  883.  
  884. AniRaw_NeoBahamut_SuperShotBall:
  885.         dc.b 1, 1, 2, 1, 5, $FC
  886. ; ---------------------------------------------------------------------------
  887. ; Супер шар для выстрела (Тень)
  888. ; ---------------------------------------------------------------------------
  889.  
  890. ; =============== S U B R O U T I N E =======================================
  891.  
  892. Obj_NeoBahamut_SuperShotBall_Trail:
  893.         moveq   #0,d0
  894.         move.b  subtype(a0),d0
  895.         lsl.b   #3,d0
  896.         addi.b  #$14,d0
  897.         move.b  d0,subtype(a0)
  898.         lea ObjDat3_BossNeoBahamut_SuperShotBall_Trail(pc),a1
  899.         jsr (SetUp_ObjAttributes).l
  900.         move.l  #NeoBahamut_SuperShotBall_Trail_Draw,address(a0)
  901.  
  902. NeoBahamut_SuperShotBall_Trail_Draw:
  903.         bsr.w   Obj_NeoBahamut_CopyPos
  904.         jmp (Child_DrawTouch_Sprite).l
  905.  
  906. ; =============== S U B R O U T I N E =======================================
  907.  
  908. Obj_NeoBahamut_Swing_UpAndDown_Slow:
  909.         moveq   #0,d0
  910.         move.b  angle(a0),d0
  911.         addq.b  #6,d0
  912.         move.b  d0,angle(a0)
  913.         jsr (GetSineCosine).l
  914.         asr.w   #2,d0
  915.         move.w  d0,y_vel(a0)
  916.         rts
  917.  
  918. ; =============== S U B R O U T I N E =======================================
  919.  
  920. Obj_NeoBahamut_SendPos:
  921.         move.w  (Pos_objTable_index).w,d0
  922.         lea (Pos_objTable).w,a1
  923.         lea (a1,d0.w),a1
  924.         move.w  x_pos(a0),(a1)+
  925.         move.w  y_pos(a0),(a1)+
  926.         addq.b  #4,(Pos_objTable_byte).w
  927.         rts
  928. ; ---------------------------------------------------------------------------
  929.  
  930. Obj_NeoBahamut_CopyPos:
  931.         move.w  (Pos_objTable_index).w,d0
  932.         lea (Pos_objTable).w,a1
  933.         sub.b   subtype(a0),d0
  934.         lea (a1,d0.w),a1
  935.         move.w  (a1)+,x_pos(a0)
  936.         move.w  (a1)+,y_pos(a0)
  937.         rts
  938.  
  939. ; =============== S U B R O U T I N E =======================================
  940.  
  941. ObjDat3_BossNeoBahamut:
  942.         dc.l Map_NeoBahamut
  943.         dc.w $60E0
  944.         dc.w $200
  945.         dc.b 64/2
  946.         dc.b 64/2
  947.         dc.b 0
  948.         dc.b $F
  949. ObjDat3_BossNeoBahamut_Clone:
  950.         dc.w $200
  951.         dc.b 64/2
  952.         dc.b 64/2
  953.         dc.b 0
  954.         dc.b 0
  955. ObjDat3_BossNeoBahamut_Trail:
  956.         dc.w $280
  957.         dc.b 64/2
  958.         dc.b 64/2
  959.         dc.b 8
  960.         dc.b 0
  961. ObjDat3_BossNeoBahamut_Timer:
  962.         dc.l Map_NeoBahamutTimer
  963.         dc.w $62F6
  964.         dc.w $200
  965.         dc.b 16/2
  966.         dc.b 16/2
  967.         dc.b 0
  968.         dc.b 0
  969. ObjDat3_BossNeoBahamut_ShotBall:
  970.         dc.l Map_NeoBahamutShotBall
  971.         dc.w $6300
  972.         dc.w $200
  973.         dc.b 16/2
  974.         dc.b 16/2
  975.         dc.b 1
  976.         dc.b $B|$80
  977. ObjDat3_NeoBahamut_ShotBall_Aim:
  978.         dc.l Map_BossAim
  979.         dc.w $E3A0
  980.         dc.w 0
  981.         dc.b 44/2
  982.         dc.b 44/2
  983.         dc.b 0
  984.         dc.b 0
  985. ObjDat3_BossNeoBahamut_SuperShotBall:
  986.         dc.l Map_BossBall
  987.         dc.w $360
  988.         dc.w $180
  989.         dc.b 16/2
  990.         dc.b 16/2
  991.         dc.b 1
  992.         dc.b $B|$80
  993. ObjDat3_BossNeoBahamut_SuperShotBall_Trail:
  994.         dc.l Map_BossBall
  995.         dc.w $360
  996.         dc.w $180
  997.         dc.b 8/2
  998.         dc.b 8/2
  999.         dc.b 0
  1000.         dc.b $18|$80
  1001. ChildObjDat_BossNeoBahamut_Clone:
  1002.         dc.w 2-1
  1003.         dc.l Obj_BossNeoBahamut_Clone
  1004.         dc.b -64, 0
  1005.         dc.l Obj_BossNeoBahamut_Clone
  1006.         dc.b 64, 0
  1007. ChildObjDat_BossNeoBahamut_Timer:
  1008.         dc.w 1-1
  1009.         dc.l Obj_BossNeoBahamut_Timer
  1010.         dc.b 0, -32
  1011. ChildObjDat_BossNeoBahamut_Trail:
  1012.         dc.w 4-1
  1013.         dc.l Obj_BossNeoBahamut_Trail
  1014. ChildObjDat_BossNeoBahamut_ShotBall:
  1015.         dc.w 1-1
  1016.         dc.l Obj_NeoBahamut_ShotBall
  1017. ChildObjDat_NeoBahamut_ShotBall_Aim:
  1018.         dc.w 1-1
  1019.         dc.l Obj_NeoBahamut_ShotBall_Aim
  1020. ChildObjDat_NeoBahamut_ShotBall_Explosion:
  1021.         dc.w 2-1
  1022.         dc.l Obj_NeoBahamut_ShotBall_Explosion
  1023. ChildObjDat_NeoBahamut_SuperShotBall:
  1024.         dc.w 1-1
  1025.         dc.l Obj_NeoBahamut_SuperShotBall
  1026. ChildObjDat_NeoBahamut_SuperShotBall_Trail:
  1027.         dc.w 4-1
  1028.         dc.l Obj_NeoBahamut_SuperShotBall_Trail
  1029. AniRaw_BossNeoBahamutPower:
  1030.         dc.b 1, 0, 1, $FC
  1031. AniRaw_BossNeoBahamutAttack:
  1032.         dc.b 1, 2, 3, $FC
  1033. AniRaw_BossNeoBahamutAttack2:
  1034.         dc.b 1, 4, 5, $FC
  1035. AniRaw_BossNeoBahamutDashWait:
  1036.         dc.b 1, 6, 7, $FC
  1037. AniRaw_BossNeoBahamutDashAttack:
  1038.         dc.b 7, 8, $FC, 0
  1039. AniRaw_BossNeoBahamutWait:
  1040.         dc.b 6, 9, $A, $FC
  1041. AniRaw_BossNeoBahamutShotBallWait:
  1042.         dc.b 6, $B, $C, $D, $E, $F, $FC, 0
  1043. AniRaw_BossNeoBahamutShotBallAttack:
  1044.         dc.b 6, $10, $11, $FC
  1045. AniRaw_BossNeoBahamutShotBallAttack2:
  1046.         dc.b 7, $11, $FC, 0
  1047. AniRaw_BossNeoBahamutEnd:
  1048.         dc.b $F, $12, $13, $FC
  1049. ; ---------------------------------------------------------------------------
  1050.  
  1051.         include "Objects/Boss Neo Bahamut/Object Data/Map - Neo Bahamut.asm"
  1052.         include "Objects/Boss Neo Bahamut/Object Data/Map - Explosion.asm"
  1053.         include "Objects/Boss Neo Bahamut/Object Data/Map - Number.asm"
RAW Paste Data