@@ -114,19 +114,16 @@ unsafe extern "C" fn mario_special_n_fire_effect(fighter: &mut L2CAgentBase) {
114
114
if is_excute ( fighter) {
115
115
EFFECT ( fighter, Hash40 :: new ( "sys_smash_flash_s" ) , Hash40 :: new ( "top" ) , 6 , 11 , 0 , 0 , 0 , 0 , 0.9 , 0 , 0 , 0 , 0 , 0 , 0 , false ) ;
116
116
}
117
- frame ( lua_state, 11 .0) ;
117
+ frame ( lua_state, 13 .0) ;
118
118
if is_excute ( fighter) {
119
119
if PostureModule :: lr ( boma) > 0.0 {
120
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "mario_fb_shoot" ) , Hash40 :: new ( "havel" ) , 0 , 0 , 0 , 0 , 45 , 0 , 0.7 , true ) ;
121
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "mario_fb_shoot" ) , Hash40 :: new ( "haver" ) , 0 , 0 , 0 , 0 , 45 , 0 , 0.7 , true ) ;
120
+ EFFECT_FOLLOW ( fighter, Hash40 :: new ( "mario_fb_shoot" ) , Hash40 :: new ( "havel" ) , 0 , 0 , 0 , 0 , 45 , 0 , 0.55 , true ) ;
121
+ EFFECT_FOLLOW ( fighter, Hash40 :: new ( "mario_fb_shoot" ) , Hash40 :: new ( "haver" ) , 0 , 0 , 0 , 0 , 45 , 0 , 0.55 , true ) ;
122
122
}
123
123
else {
124
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "mario_fb_shoot" ) , Hash40 :: new ( "havel" ) , 0 , 0 , 0 , 0 , -45 , 0 , 0.7 , true ) ;
125
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "mario_fb_shoot" ) , Hash40 :: new ( "haver" ) , 0 , 0 , 0 , 0 , -45 , 0 , 0.7 , true ) ;
124
+ EFFECT_FOLLOW ( fighter, Hash40 :: new ( "mario_fb_shoot" ) , Hash40 :: new ( "havel" ) , 0 , 0 , 0 , 0 , -45 , 0 , 0.55 , true ) ;
125
+ EFFECT_FOLLOW ( fighter, Hash40 :: new ( "mario_fb_shoot" ) , Hash40 :: new ( "haver" ) , 0 , 0 , 0 , 0 , -45 , 0 , 0.55 , true ) ;
126
126
}
127
- }
128
- frame ( lua_state, 12.0 ) ;
129
- if is_excute ( fighter) {
130
127
if fighter. is_situation ( * SITUATION_KIND_GROUND ) {
131
128
EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_h_smoke_b" ) , Hash40 :: new ( "top" ) , 0 , 0 , 0 , 0 , 0 , 0 , 0.5 , true ) ;
132
129
LAST_EFFECT_SET_COLOR ( fighter, 0.2 , 0.2 , 0.2 ) ;
@@ -135,10 +132,13 @@ unsafe extern "C" fn mario_special_n_fire_effect(fighter: &mut L2CAgentBase) {
135
132
frame ( lua_state, 14.0 ) ;
136
133
if is_excute ( fighter) {
137
134
FLASH ( fighter, 1 , 0 , 0 , 0.35 ) ;
138
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_flame" ) , Hash40 :: new ( "handl" ) , 1.0 , 0 , 0 , 0 , 0 , 0 , 0.2 , true ) ;
139
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_flame" ) , Hash40 :: new ( "handr" ) , 1.0 , 0 , 0 , 0 , 0 , 0 , 0.2 , true ) ;
140
135
EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_bomb_a" ) , Hash40 :: new ( "top" ) , 0 , 7.5 , 10.5 , 0 , 0 , 0 , 0.26 , true ) ;
141
- LAST_EFFECT_SET_RATE ( fighter, 1.2 ) ;
136
+ LAST_EFFECT_SET_COLOR ( fighter, 0.65 , 0.2 , 0.08 ) ;
137
+ LAST_EFFECT_SET_RATE ( fighter, 0.75 ) ;
138
+ EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_damage_fire" ) , Hash40 :: new ( "top" ) , 0 , 6.0 , 10.5 , 0 , 0 , 0 , 0.9 , true ) ;
139
+ LAST_EFFECT_SET_RATE ( fighter, 0.55 ) ;
140
+ EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_damage_fire" ) , Hash40 :: new ( "top" ) , 0 , 5.0 , 10.5 , 0 , 0 , 0 , 0.9 , true ) ;
141
+ LAST_EFFECT_SET_RATE ( fighter, 0.55 ) ;
142
142
EffectModule :: enable_sync_init_pos_last ( boma) ;
143
143
if fighter. is_situation ( * SITUATION_KIND_GROUND ) {
144
144
EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_h_smoke_b" ) , Hash40 :: new ( "top" ) , 0 , 0 , 0 , 0 , 0 , 0 , 0.5 , true ) ;
@@ -191,7 +191,7 @@ unsafe extern "C" fn mario_special_n_fire_expression(fighter: &mut L2CAgentBase)
191
191
}
192
192
frame ( lua_state, 14.0 ) ;
193
193
if is_excute ( fighter) {
194
- ControlModule :: set_rumble ( boma, Hash40 :: new ( "rbkind_55_smash " ) , 0 , false , * BATTLE_OBJECT_ID_INVALID as u32 ) ;
194
+ ControlModule :: set_rumble ( boma, Hash40 :: new ( "rbkind_explosion " ) , 0 , false , * BATTLE_OBJECT_ID_INVALID as u32 ) ;
195
195
}
196
196
}
197
197
@@ -471,22 +471,22 @@ unsafe extern "C" fn effect_special_lw_light(fighter: &mut L2CAgentBase) {
471
471
let boma = fighter. boma ( ) ;
472
472
frame ( lua_state, 10.0 ) ;
473
473
if is_excute ( fighter) {
474
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_spin_wind" ) , Hash40 :: new ( "top" ) , 0 , 9.5 , 0 , 0 , 0 , 0 , 1.0 , true ) ;
474
+ EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_spin_wind" ) , Hash40 :: new ( "top" ) , 0 , 10.4 , 0 , 0 , 0 , 0 , 1.0 , true ) ;
475
475
LAST_EFFECT_SET_COLOR ( fighter, 0.045 , 0.345 , 2.05 ) ;
476
476
LAST_EFFECT_SET_ALPHA ( fighter, 0.55 ) ;
477
- LAST_EFFECT_SET_RATE ( fighter, 0.5 ) ;
478
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_spin_wind" ) , Hash40 :: new ( "top" ) , 0 , 9.45 , 0 , 0 , 0 , 0 , 1.0 , true ) ;
477
+ LAST_EFFECT_SET_RATE ( fighter, 0.65 ) ;
478
+ EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_spin_wind" ) , Hash40 :: new ( "top" ) , 0 , 10.4 , 0 , 0 , 0 , 0 , 1.0 , true ) ;
479
479
LAST_EFFECT_SET_COLOR ( fighter, 0.045 , 0.345 , 2.05 ) ;
480
480
LAST_EFFECT_SET_ALPHA ( fighter, 0.55 ) ;
481
- LAST_EFFECT_SET_RATE ( fighter, 0.5 ) ;
482
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_spin_wind" ) , Hash40 :: new ( "top" ) , 0 , 9.5 , 0 , 0 , 180 , 0 , 1.0 , true ) ;
481
+ LAST_EFFECT_SET_RATE ( fighter, 0.65 ) ;
482
+ EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_spin_wind" ) , Hash40 :: new ( "top" ) , 0 , 10.4 , 0 , 0 , 180 , 0 , 1.0 , true ) ;
483
483
LAST_EFFECT_SET_COLOR ( fighter, 0.045 , 0.345 , 2.05 ) ;
484
484
LAST_EFFECT_SET_ALPHA ( fighter, 0.55 ) ;
485
- LAST_EFFECT_SET_RATE ( fighter, 0.5 ) ;
486
- EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_spin_wind" ) , Hash40 :: new ( "top" ) , 0 , 9.45 , 0 , 0 , 180 , 0 , 1.0 , true ) ;
485
+ LAST_EFFECT_SET_RATE ( fighter, 0.65 ) ;
486
+ EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_spin_wind" ) , Hash40 :: new ( "top" ) , 0 , 10.4 , 0 , 0 , 180 , 0 , 1.0 , true ) ;
487
487
LAST_EFFECT_SET_COLOR ( fighter, 0.045 , 0.345 , 2.05 ) ;
488
488
LAST_EFFECT_SET_ALPHA ( fighter, 0.55 ) ;
489
- LAST_EFFECT_SET_RATE ( fighter, 0.5 ) ;
489
+ LAST_EFFECT_SET_RATE ( fighter, 0.65 ) ;
490
490
EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_starrod_splash" ) , Hash40 :: new ( "havel" ) , 0 , 0 , 0 , 0 , 0 , 0 , 1.0 , true ) ;
491
491
LAST_EFFECT_SET_ALPHA ( fighter, 0.5 ) ;
492
492
EFFECT_FOLLOW ( fighter, Hash40 :: new ( "sys_starrod_splash" ) , Hash40 :: new ( "haver" ) , 0 , 0 , 0 , 0 , 0 , 0 , 1.0 , true ) ;
@@ -507,11 +507,11 @@ unsafe extern "C" fn effect_special_lw_light(fighter: &mut L2CAgentBase) {
507
507
unsafe extern "C" fn sound_special_lw_light ( fighter : & mut L2CAgentBase ) {
508
508
let lua_state = fighter. lua_state_agent ;
509
509
let boma = fighter. boma ( ) ;
510
-
511
510
frame ( lua_state, 6.0 ) ;
512
- if is_excute ( fighter) {
511
+ if is_excute ( fighter) {
512
+ let handle = SoundModule :: play_se ( boma, Hash40 :: new ( "se_mario_special_l01" ) , true , false , false , false , app:: enSEType ( 0 ) ) ;
513
+ SoundModule :: set_se_vol ( boma, handle as i32 , 0.7 , 0 ) ;
513
514
PLAY_SE ( fighter, Hash40 :: new ( "vc_mario_attack05" ) ) ;
514
- PLAY_SE ( fighter, Hash40 :: new ( "se_mario_special_l01" ) ) ;
515
515
PLAY_SE ( fighter, Hash40 :: new ( "se_mario_attackair_l01" ) ) ;
516
516
}
517
517
@@ -649,8 +649,9 @@ unsafe extern "C" fn sound_special_air_lw_light(fighter: &mut L2CAgentBase) {
649
649
frame ( lua_state, 10.0 ) ;
650
650
if is_excute ( fighter) {
651
651
if !VarModule :: is_flag ( fighter. battle_object , vars:: mario:: instance:: DISABLE_DSPECIAL_STALL ) { // Effects will change if you used galaxy spin in the air
652
- PLAY_SE ( fighter, Hash40 :: new ( "vc_mario_attack05" ) ) ;
653
- PLAY_SE ( fighter, Hash40 :: new ( "se_mario_special_l01" ) ) ;
652
+ let handle = SoundModule :: play_se ( boma, Hash40 :: new ( "se_mario_special_l01" ) , true , false , false , false , app:: enSEType ( 0 ) ) ;
653
+ SoundModule :: set_se_vol ( boma, handle as i32 , 0.7 , 0 ) ;
654
+ PLAY_SE ( fighter, Hash40 :: new ( "vc_mario_attack05" ) ) ;
654
655
PLAY_SE ( fighter, Hash40 :: new ( "se_mario_attackair_l01" ) ) ;
655
656
}
656
657
else {
0 commit comments