@@ -361,23 +361,23 @@ unsafe fn bayonetta_wickedweavearm_attack_hi4_game(fighter: &mut L2CAgentBase) {
361
361
}
362
362
frame ( lua_state, 13.0 ) ;
363
363
if is_excute ( fighter) {
364
- ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 16.0 , 89 , 90 , 0 , 36 , 10.5 , 0.0 , 20.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_G , * COLLISION_CATEGORY_MASK_NO_FLOOR , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_normal" ) , * ATTACK_SOUND_LEVEL_L , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
365
- ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 16.0 , 89 , 90 , 0 , 36 , 10.5 , 0.0 , 20.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_OFF , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_A , * COLLISION_CATEGORY_MASK_NO_FLOOR , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_normal" ) , * ATTACK_SOUND_LEVEL_L , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
364
+ ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 16.0 , 89 , 90 , 0 , 32 , 10.5 , 0.0 , 20.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_G , * COLLISION_CATEGORY_MASK_NO_FLOOR , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_normal" ) , * ATTACK_SOUND_LEVEL_L , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
365
+ ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 16.0 , 89 , 90 , 0 , 32 , 10.5 , 0.0 , 20.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_OFF , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_A , * COLLISION_CATEGORY_MASK_NO_FLOOR , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_normal" ) , * ATTACK_SOUND_LEVEL_L , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
366
366
}
367
367
frame ( lua_state, 13.0 ) ;
368
368
if is_excute ( fighter) {
369
- ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 16.0 , 89 , 90 , 0 , 35 , 10.5 , 0.0 , 25.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_G , * COLLISION_CATEGORY_MASK_NO_FLOOR , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_normal" ) , * ATTACK_SOUND_LEVEL_L , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
370
- ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 16.0 , 89 , 90 , 0 , 35 , 10.5 , 0.0 , 25.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_OFF , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_A , * COLLISION_CATEGORY_MASK_NO_FLOOR , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_normal" ) , * ATTACK_SOUND_LEVEL_L , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
369
+ ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 16.0 , 89 , 90 , 0 , 32 , 10.5 , 0.0 , 25.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_G , * COLLISION_CATEGORY_MASK_NO_FLOOR , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_normal" ) , * ATTACK_SOUND_LEVEL_L , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
370
+ ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 16.0 , 89 , 90 , 0 , 32 , 10.5 , 0.0 , 25.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_OFF , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_A , * COLLISION_CATEGORY_MASK_NO_FLOOR , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_normal" ) , * ATTACK_SOUND_LEVEL_L , * COLLISION_SOUND_ATTR_PUNCH , * ATTACK_REGION_PUNCH ) ;
371
371
}
372
372
frame ( lua_state, 15.0 ) ;
373
373
if is_excute ( fighter) {
374
- ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 15 .0, 89 , 90 , 0 , 35 , 10.5 , 0.0 , 30.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_G , * 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 ) ;
375
- ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 15 .0, 89 , 90 , 0 , 35 , 10.5 , 0.0 , 30.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_OFF , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_A , * 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 ) ;
374
+ ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 16 .0, 89 , 90 , 0 , 32 , 10.5 , 0.0 , 30.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_G , * 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 ) ;
375
+ ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 16 .0, 89 , 90 , 0 , 32 , 10.5 , 0.0 , 30.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_OFF , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_A , * 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 ) ;
376
376
}
377
377
frame ( lua_state, 16.0 ) ;
378
378
if is_excute ( fighter) {
379
- ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 15 .0, 89 , 90 , 0 , 34 , 10.5 , 0.0 , 36.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_G , * 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 ) ;
380
- ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 15 .0, 89 , 90 , 0 , 34 , 10.5 , 0.0 , 36.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_OFF , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_A , * 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 ) ;
379
+ ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 16 .0, 89 , 90 , 0 , 32 , 10.5 , 0.0 , 36.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_ON , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_G , * 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 ) ;
380
+ ATTACK ( fighter, 1 , 0 , Hash40 :: new ( "top" ) , 16 .0, 89 , 90 , 0 , 32 , 10.5 , 0.0 , 36.0 , 14.0 , None , None , None , 1.0 , 1.0 , * ATTACK_SETOFF_KIND_OFF , * ATTACK_LR_CHECK_F , false , 0 , 0.0 , 0 , false , false , false , false , false , * COLLISION_SITUATION_MASK_A , * 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 ) ;
381
381
}
382
382
frame ( lua_state, 19.0 ) ;
383
383
if is_excute ( fighter) {
@@ -449,7 +449,7 @@ unsafe fn bayonetta_specialn_bullet_move_game(fighter: &mut L2CAgentBase) {
449
449
let lua_state = fighter. lua_state_agent ;
450
450
let boma = fighter. boma ( ) ;
451
451
if is_excute ( fighter) {
452
- ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 1.35 , 361 , 40 , 0 , 0 , 1.0 , 0.0 , 0.0 , 0.0 , None , None , None , 0.4 , 1.0 , * ATTACK_SETOFF_KIND_THRU , * ATTACK_LR_CHECK_F , false , -0.3 , 0.0 , 0 , true , false , false , false , false , * COLLISION_SITUATION_MASK_GA , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_normal" ) , * ATTACK_SOUND_LEVEL_S , * COLLISION_SOUND_ATTR_BAYONETTA_HIT_01 , * ATTACK_REGION_OBJECT ) ;
452
+ ATTACK ( fighter, 0 , 0 , Hash40 :: new ( "top" ) , 1.35 , 361 , 40 , 0 , 5 , 1.0 , 0.0 , 0.0 , 0.0 , None , None , None , 0.4 , 1.0 , * ATTACK_SETOFF_KIND_THRU , * ATTACK_LR_CHECK_F , false , -0.3 , 0.0 , 0 , true , false , false , false , false , * COLLISION_SITUATION_MASK_GA , * COLLISION_CATEGORY_MASK_ALL , * COLLISION_PART_MASK_ALL , false , Hash40 :: new ( "collision_attr_normal" ) , * ATTACK_SOUND_LEVEL_S , * COLLISION_SOUND_ATTR_BAYONETTA_HIT_01 , * ATTACK_REGION_OBJECT ) ;
453
453
AttackModule :: enable_safe_pos ( boma) ;
454
454
}
455
455
}
@@ -550,6 +550,14 @@ unsafe fn escape_b_game(fighter: &mut L2CAgentBase) {
550
550
}
551
551
}
552
552
553
+ #[ acmd_script( agent = "bayonetta" , script = "game_appeallwl" , category = ACMD_GAME , low_priority) ]
554
+ unsafe fn down_left_taunt_game ( fighter : & mut L2CAgentBase ) {
555
+ frame ( fighter. lua_state_agent , 175.0 ) ;
556
+ if is_excute ( fighter) {
557
+ StatusModule :: change_status_request ( fighter. module_accessor , * FIGHTER_STATUS_KIND_SQUAT_RV , false ) ;
558
+ }
559
+ }
560
+
553
561
#[ acmd_script( agent = "bayonetta" , scripts = [ "game_appealsr" , "game_appealsl" ] , category = ACMD_GAME , low_priority) ]
554
562
unsafe fn side_taunt_game ( fighter : & mut L2CAgentBase ) {
555
563
let lua_state = fighter. lua_state_agent ;
@@ -678,6 +686,18 @@ unsafe fn game_catchattack(agent: &mut L2CAgentBase) {
678
686
}
679
687
}
680
688
689
+ #[ acmd_script( agent = "bayonetta" , script = "effect_landingheavy" , category = ACMD_EFFECT , low_priority ) ]
690
+ unsafe fn bayonetta_landing_heavy_effect ( fighter : & mut L2CAgentBase ) {
691
+ if is_excute ( fighter) {
692
+ if fighter. is_status ( * FIGHTER_STATUS_KIND_JUMP_SQUAT ) {
693
+ EFFECT ( fighter, Hash40 :: new ( "bayonetta_jump_circle" ) , Hash40 :: new ( "top" ) , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , false ) ;
694
+ } else {
695
+ LANDING_EFFECT ( fighter, Hash40 :: new ( "sys_landing_smoke" ) , Hash40 :: new ( "top" ) , 0 , 0 , 0 , 0 , 0 , 0 , 0.9 , 0 , 0 , 0 , 0 , 0 , 0 , false ) ;
696
+ EFFECT ( fighter, Hash40 :: new ( "bayonetta_butterfly_landing" ) , Hash40 :: new ( "top" ) , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , false ) ;
697
+ }
698
+ }
699
+ }
700
+
681
701
pub fn install ( ) {
682
702
install_acmd_scripts ! (
683
703
escape_air_game,
@@ -701,12 +721,14 @@ pub fn install() {
701
721
escape_n_game,
702
722
escape_f_game,
703
723
escape_b_game,
724
+ down_left_taunt_game,
704
725
side_taunt_game,
705
726
up_taunt_game,
706
727
sound_appealhi,
707
728
sound_appeallwr,
708
729
sound_appeallwl,
709
- game_catchattack
730
+ game_catchattack,
731
+ bayonetta_landing_heavy_effect
710
732
) ;
711
733
}
712
734
0 commit comments