|
1 | 1 |
|
2 | 2 | use super::*;
|
3 | 3 |
|
| 4 | +#[acmd_script( agent = "pacman", script = "game_attackairn" , category = ACMD_GAME , low_priority)] |
| 5 | +unsafe fn pacman_attack_air_n_game(fighter: &mut L2CAgentBase) { |
| 6 | + let lua_state = fighter.lua_state_agent; |
| 7 | + let boma = fighter.boma(); |
| 8 | + frame(lua_state, 3.0); |
| 9 | + if is_excute(fighter) { |
| 10 | + WorkModule::on_flag(boma, *FIGHTER_STATUS_ATTACK_AIR_FLAG_ENABLE_LANDING); |
| 11 | + ATTACK(fighter, 0, 0, Hash40::new("pizzapacman"), 10.0, 50, 70, 0, 45, 8.1, 0.0, 0.0, 0.0, None, None, None, 0.8, 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_cutup"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_PUNCH, *ATTACK_REGION_BODY); |
| 12 | + } |
| 13 | + frame(lua_state, 6.0); |
| 14 | + if is_excute(fighter) { |
| 15 | + ATTACK(fighter, 0, 0, Hash40::new("pizzapacman"), 8.5, 50, 70, 0, 45, 7.2, 0.0, 0.5, 0.0, None, None, None, 0.8, 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_cutup"), *ATTACK_SOUND_LEVEL_S, *COLLISION_SOUND_ATTR_PUNCH, *ATTACK_REGION_BODY); |
| 16 | + } |
| 17 | + frame(lua_state, 10.0); |
| 18 | + if is_excute(fighter) { |
| 19 | + ATTACK(fighter, 0, 0, Hash40::new("pizzapacman"), 6.0, 50, 70, 0, 45, 4.5, 0.0, 0.5, 0.0, None, None, None, 0.8, 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_cutup"), *ATTACK_SOUND_LEVEL_S, *COLLISION_SOUND_ATTR_PUNCH, *ATTACK_REGION_BODY); |
| 20 | + } |
| 21 | + frame(lua_state, 20.0); |
| 22 | + if is_excute(fighter) { |
| 23 | + AttackModule::clear_all(boma); |
| 24 | + } |
| 25 | + frame(lua_state, 45.0); |
| 26 | + if is_excute(fighter) { |
| 27 | + WorkModule::off_flag(boma, *FIGHTER_STATUS_ATTACK_AIR_FLAG_ENABLE_LANDING); |
| 28 | + } |
| 29 | +} |
| 30 | + |
| 31 | +#[acmd_script( agent = "pacman", script = "effect_attackairn" , category = ACMD_EFFECT , low_priority)] |
| 32 | +unsafe fn pacman_attack_air_n_effect(fighter: &mut L2CAgentBase) { |
| 33 | + let lua_state = fighter.lua_state_agent; |
| 34 | + let boma = fighter.boma(); |
| 35 | + frame(lua_state, 2.0); |
| 36 | + if is_excute(fighter) { |
| 37 | + EFFECT_FOLLOW_NO_STOP(fighter, Hash40::new("pacman_change_start"), Hash40::new("pizzapacman"), 0, 0, 0, 0, 0, 0, 1, true); |
| 38 | + } |
| 39 | + frame(lua_state, 3.0); |
| 40 | + if is_excute(fighter) { |
| 41 | + EFFECT_FOLLOW_FLIP_ALPHA(fighter, Hash40::new("sys_spin_wind"), Hash40::new("sys_spin_wind"), Hash40::new("top"), 0, 5.9, 0.8, 0, 0, 90, 0.8, true, *EF_FLIP_YZ, 0.4); |
| 42 | + } |
| 43 | + frame(lua_state, 16.0); |
| 44 | + if is_excute(fighter) { |
| 45 | + EFFECT_FOLLOW_FLIP_ALPHA(fighter, Hash40::new("sys_spin_wind"), Hash40::new("sys_spin_wind"), Hash40::new("top"), 0, 5.9, 0.7, 0, 0, 90, 0.75, true, *EF_FLIP_YZ, 0.4); |
| 46 | + } |
| 47 | + frame(lua_state, 30.0); |
| 48 | + if is_excute(fighter) { |
| 49 | + EFFECT_FOLLOW(fighter, Hash40::new("pacman_change_end"), Hash40::new("pizzapacman"), 0, 0, 0, 0, 0, 0, 1, true); |
| 50 | + EFFECT_OFF_KIND(fighter, Hash40::new("sys_spin_wind"), true, true); |
| 51 | + } |
| 52 | +} |
4 | 53 |
|
5 | 54 | #[acmd_script( agent = "pacman", script = "game_attackairf" , category = ACMD_GAME , low_priority)]
|
6 | 55 | unsafe fn pacman_attack_air_f_game(fighter: &mut L2CAgentBase) {
|
@@ -157,6 +206,8 @@ unsafe fn pacman_attack_air_lw_game(fighter: &mut L2CAgentBase) {
|
157 | 206 |
|
158 | 207 | pub fn install() {
|
159 | 208 | install_acmd_scripts!(
|
| 209 | + pacman_attack_air_n_game, |
| 210 | + pacman_attack_air_n_effect, |
160 | 211 | pacman_attack_air_f_game,
|
161 | 212 | pacman_attack_air_b_game,
|
162 | 213 | pacman_attack_air_hi_game,
|
|
0 commit comments