@@ -569,144 +569,6 @@ unsafe extern "C" fn miifighter_special_air_hi2_game(fighter: &mut L2CAgentBase)
569
569
}
570
570
571
571
572
- unsafe extern "C" fn miifighter_special_hi3_game ( fighter : & mut L2CAgentBase ) {
573
- let lua_state = fighter. lua_state_agent ;
574
- let boma = fighter. boma ( ) ;
575
- frame ( lua_state, 1.0 ) ;
576
- FT_MOTION_RATE_RANGE ( fighter, 1.0 , 4.0 , 5.0 ) ;
577
- if is_excute ( fighter) {
578
- WorkModule :: on_flag ( boma, * FIGHTER_STATUS_SUPER_JUMP_PUNCH_FLAG_MOVE_TRANS ) ;
579
- }
580
- frame ( lua_state, 4.0 ) ;
581
- FT_MOTION_RATE ( fighter, 1.0 ) ;
582
- if is_excute ( fighter) {
583
- SA_SET ( fighter, * SITUATION_KIND_AIR ) ;
584
- WorkModule :: on_flag ( boma, * FIGHTER_STATUS_SUPER_JUMP_PUNCH_FLAG_REVERSE_LR ) ;
585
- HIT_NODE ( fighter, Hash40 :: new ( "arml" ) , * HIT_STATUS_XLU ) ;
586
- ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 0.8 , 80 , 100 , 170 , 0 , 3.5 , 0.0 , 5.5 , 3.5 , Some ( 0.0 ) , Some ( 12.5 ) , Some ( 3.5 ) , 0.75 , 0.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , true , 0 , 0.0 , 0 , false , false , false , false , true , * COLLISION_SITUATION_MASK_GA , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_rush" ) , * ATTACK_SOUND_LEVEL_M , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
587
- ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 0.8 , 105 , 100 , 160 , 0 , 5.0 , 0.0 , 8.0 , 5.0 , None , None , None , 0.75 , 0.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_POS , true , 0 , 0.0 , 0 , false , false , false , false , true , * COLLISION_SITUATION_MASK_GA , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_rush" ) , * ATTACK_SOUND_LEVEL_M , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
588
- }
589
- frame ( lua_state, 6.0 ) ;
590
- if is_excute ( fighter) {
591
- AttackModule :: clear_all ( boma) ;
592
- }
593
- frame ( lua_state, 7.0 ) ;
594
- if is_excute ( fighter) {
595
- ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 0.8 , 367 , 100 , 80 , 0 , 5.0 , 0.0 , 13.0 , 5.0 , Some ( 0.0 ) , Some ( 20.0 ) , Some ( 5.0 ) , 0.75 , 0.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_POS , true , 0 , 0.0 , 0 , false , false , false , false , true , * COLLISION_SITUATION_MASK_A , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_rush" ) , * ATTACK_SOUND_LEVEL_S , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
596
- ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 0.8 , 70 , 100 , 90 , 0 , 4.0 , 0.0 , 21.0 , 5.0 , Some ( 0.0 ) , Some ( 21.0 ) , Some ( 5.0 ) , 0.75 , 0.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , true , 0 , 0.0 , 0 , false , false , false , false , true , * COLLISION_SITUATION_MASK_G , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_rush" ) , * ATTACK_SOUND_LEVEL_S , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
597
- }
598
- frame ( lua_state, 9.0 ) ;
599
- if is_excute ( fighter) {
600
- AttackModule :: clear_all ( boma) ;
601
- HIT_NODE ( fighter, Hash40 :: new ( "arml" ) , * HIT_STATUS_NORMAL ) ;
602
- }
603
- frame ( lua_state, 10.0 ) ;
604
- if is_excute ( fighter) {
605
- ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 0.8 , 367 , 100 , 80 , 0 , 5.0 , 0.0 , 13.0 , 5.0 , Some ( 0.0 ) , Some ( 20.0 ) , Some ( 5.0 ) , 0.75 , 0.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_POS , true , 0 , 0.0 , 0 , false , false , false , false , true , * COLLISION_SITUATION_MASK_A , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_rush" ) , * ATTACK_SOUND_LEVEL_S , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
606
- ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 0.8 , 70 , 100 , 90 , 0 , 4.0 , 0.0 , 21.0 , 5.0 , Some ( 0.0 ) , Some ( 21.0 ) , Some ( 5.0 ) , 0.75 , 0.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , true , 0 , 0.0 , 0 , false , false , false , false , true , * COLLISION_SITUATION_MASK_G , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_rush" ) , * ATTACK_SOUND_LEVEL_S , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
607
- }
608
- frame ( lua_state, 12.0 ) ;
609
- if is_excute ( fighter) {
610
- AttackModule :: clear_all ( boma) ;
611
- notify_event_msc_cmd ! ( fighter, Hash40 :: new_raw( 0x2127e37c07 ) , * GROUND_CLIFF_CHECK_KIND_ALWAYS ) ;
612
- }
613
- frame ( lua_state, 13.0 ) ;
614
- if is_excute ( fighter) {
615
- ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 0.8 , 367 , 100 , 80 , 0 , 5.0 , 0.0 , 14.0 , 5.0 , Some ( 0.0 ) , Some ( 20.0 ) , Some ( 5.0 ) , 0.75 , 0.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_POS , true , 0 , 0.0 , 0 , false , false , false , false , true , * COLLISION_SITUATION_MASK_A , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_rush" ) , * ATTACK_SOUND_LEVEL_S , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
616
- ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 0.8 , 70 , 100 , 90 , 0 , 4.0 , 0.0 , 21.0 , 5.0 , Some ( 0.0 ) , Some ( 21.0 ) , Some ( 5.0 ) , 0.75 , 0.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , true , 0 , 0.0 , 0 , false , false , false , false , true , * COLLISION_SITUATION_MASK_G , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_rush" ) , * ATTACK_SOUND_LEVEL_S , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
617
- }
618
- frame ( lua_state, 15.0 ) ;
619
- if is_excute ( fighter) {
620
- AttackModule :: clear_all ( boma) ;
621
- }
622
- frame ( lua_state, 16.0 ) ;
623
- if is_excute ( fighter) {
624
- ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 0.8 , 367 , 100 , 80 , 0 , 5.0 , 0.0 , 14.0 , 5.0 , Some ( 0.0 ) , Some ( 20.0 ) , Some ( 5.0 ) , 0.75 , 0.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_POS , true , 0 , 0.0 , 0 , false , false , false , false , true , * COLLISION_SITUATION_MASK_A , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_rush" ) , * ATTACK_SOUND_LEVEL_S , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
625
- ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 0.8 , 367 , 100 , 50 , 0 , 5.0 , 0.0 , 19.0 , 5.0 , Some ( 0.0 ) , Some ( 20.0 ) , Some ( 5.0 ) , 0.75 , 0.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_POS , true , 0 , 0.0 , 0 , false , false , false , false , true , * COLLISION_SITUATION_MASK_G , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_rush" ) , * ATTACK_SOUND_LEVEL_S , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
626
- }
627
- frame ( lua_state, 17.0 ) ;
628
- if is_excute ( fighter) {
629
- AttackModule :: clear_all ( boma) ;
630
- }
631
- frame ( lua_state, 21.0 ) ;
632
- if is_excute ( fighter) {
633
- ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 9.0 , 89 , 76 , 0 , 74 , 7.0 , 0.0 , 19.0 , 2.0 , None , None , None , 1.5 , 1.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_POS , false , 0 , 0.0 , 0 , false , false , false , false , true , * COLLISION_SITUATION_MASK_GA , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_normal" ) , * ATTACK_SOUND_LEVEL_L , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
634
- }
635
- frame ( lua_state, 23.0 ) ;
636
- if is_excute ( fighter) {
637
- AttackModule :: clear_all ( boma) ;
638
- notify_event_msc_cmd ! ( fighter, Hash40 :: new_raw( 0x2127e37c07 ) , * GROUND_CLIFF_CHECK_KIND_ALWAYS_BOTH_SIDES ) ;
639
- }
640
-
641
- }
642
-
643
- unsafe extern "C" fn miifighter_special_hi3_effect ( fighter : & mut L2CAgentBase ) {
644
- let lua_state = fighter. lua_state_agent ;
645
- let boma = fighter. boma ( ) ;
646
- frame ( lua_state, 1.0 ) ;
647
- if is_excute ( fighter) {
648
- LANDING_EFFECT ( fighter, Hash40 :: new ( "sys_action_smoke_h" ) , Hash40 :: new ( "top" ) , 1 , 0 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , false ) ;
649
- }
650
- frame ( lua_state, 4.0 ) ;
651
- if is_excute ( fighter) {
652
- EFFECT ( fighter, Hash40 :: new ( "sys_smash_flash" ) , Hash40 :: new ( "top" ) , 3 , 9 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , false ) ;
653
- }
654
- frame ( lua_state, 5.0 ) ;
655
- if is_excute ( fighter) {
656
- EFFECT_FOLLOW_FLIP ( fighter, Hash40 :: new ( "miifighter_pistonpunch_arc" ) , Hash40 :: new ( "miifighter_pistonpunch_arc" ) , Hash40 :: new ( "top" ) , 0 , -5 , -1.5 , 10 , 0 , 0 , 0.75 , true , * EF_FLIP_XY ) ;
657
- EFFECT_FOLLOW_NO_STOP ( fighter, Hash40 :: new ( "miifighter_pistonpunch" ) , Hash40 :: new ( "top" ) , 0 , 18 , 3 , 10 , 0 , 0 , 0.7 , true ) ;
658
- }
659
- frame ( lua_state, 7.0 ) ;
660
- if is_excute ( fighter) {
661
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "miifighter_pistonpunch_impact" ) , Hash40 :: new ( "top" ) , 0 , 18 , 3 , 0 , 0 , 0 , 1 , true ) ;
662
- }
663
- frame ( lua_state, 11.0 ) ;
664
- if is_excute ( fighter) {
665
- EFFECT_DETACH_KIND ( fighter, Hash40 :: new ( "miifighter_pistonpunch_arc" ) , -1 ) ;
666
- }
667
- frame ( lua_state, 20.0 ) ;
668
- if is_excute ( fighter) {
669
- EFFECT_FOLLOW_FLIP ( fighter, Hash40 :: new ( "miifighter_pistonpunch_line" ) , Hash40 :: new ( "miifighter_pistonpunch_line" ) , Hash40 :: new ( "top" ) , 0 , -7 , 2 , -90 , 0 , 0 , 0.8 , true , * EF_FLIP_XY ) ;
670
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "miifighter_pistonpunch_impact" ) , Hash40 :: new ( "top" ) , 0 , 15 , 1 , 0 , 0 , 0 , 1 , true ) ;
671
- }
672
- frame ( lua_state, 21.0 ) ;
673
- if is_excute ( fighter) {
674
- EFFECT_FOLLOW_NO_STOP ( fighter, Hash40 :: new ( "miifighter_pistonpunch" ) , Hash40 :: new ( "top" ) , 0 , 15 , 1 , 10 , 0 , 0 , 1 , true ) ;
675
- }
676
- }
677
-
678
- unsafe extern "C" fn miifighter_special_air_hi3_effect ( fighter : & mut L2CAgentBase ) {
679
- let lua_state = fighter. lua_state_agent ;
680
- let boma = fighter. boma ( ) ;
681
- frame ( lua_state, 4.0 ) ;
682
- if is_excute ( fighter) {
683
- EFFECT ( fighter, Hash40 :: new ( "sys_smash_flash" ) , Hash40 :: new ( "top" ) , 3 , 9 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , false ) ;
684
- }
685
- frame ( lua_state, 5.0 ) ;
686
- if is_excute ( fighter) {
687
- EFFECT_FOLLOW_FLIP ( fighter, Hash40 :: new ( "miifighter_pistonpunch_arc" ) , Hash40 :: new ( "miifighter_pistonpunch_arc" ) , Hash40 :: new ( "top" ) , 0 , -5 , -1.5 , 10 , 0 , 0 , 0.75 , true , * EF_FLIP_XY ) ;
688
- EFFECT_FOLLOW_NO_STOP ( fighter, Hash40 :: new ( "miifighter_pistonpunch" ) , Hash40 :: new ( "top" ) , 0 , 18 , 3 , 10 , 0 , 0 , 0.7 , true ) ;
689
- }
690
- frame ( lua_state, 7.0 ) ;
691
- if is_excute ( fighter) {
692
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "miifighter_pistonpunch_impact" ) , Hash40 :: new ( "top" ) , 0 , 18 , 3 , 0 , 0 , 0 , 1 , true ) ;
693
- }
694
- frame ( lua_state, 11.0 ) ;
695
- if is_excute ( fighter) {
696
- EFFECT_DETACH_KIND ( fighter, Hash40 :: new ( "miifighter_pistonpunch_arc" ) , -1 ) ;
697
- }
698
- frame ( lua_state, 20.0 ) ;
699
- if is_excute ( fighter) {
700
- EFFECT_FOLLOW_FLIP ( fighter, Hash40 :: new ( "miifighter_pistonpunch_line" ) , Hash40 :: new ( "miifighter_pistonpunch_line" ) , Hash40 :: new ( "top" ) , 0 , -7 , 2 , -90 , 0 , 0 , 0.8 , true , * EF_FLIP_XY ) ;
701
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "miifighter_pistonpunch_impact" ) , Hash40 :: new ( "top" ) , 0 , 15 , 1 , 0 , 0 , 0 , 1 , true ) ;
702
- }
703
- frame ( lua_state, 21.0 ) ;
704
- if is_excute ( fighter) {
705
- EFFECT_FOLLOW_NO_STOP ( fighter, Hash40 :: new ( "miifighter_pistonpunch" ) , Hash40 :: new ( "top" ) , 0 , 15 , 1 , 10 , 0 , 0 , 1 , true ) ;
706
- }
707
- }
708
-
709
-
710
572
unsafe extern "C" fn miifighter_special_lw1_game ( fighter : & mut L2CAgentBase ) {
711
573
let lua_state = fighter. lua_state_agent ;
712
574
let boma = fighter. boma ( ) ;
0 commit comments