From 294602ec98afc94e054455067273cc487b9a0bc0 Mon Sep 17 00:00:00 2001 From: Unnunu Date: Sat, 5 Nov 2022 10:06:28 +0300 Subject: [PATCH] battle partners (#852) * goompa and goombario * kooper * bombette * parakarry * watt * sushie * lakilester * bow * twink * fix warning * fix messed fields * CalculateArcsinDeg * updated splat entries --- include/common_structs.h | 2 +- include/effects.h | 30 +- include/enums.h | 24 + include/script_api/battle.h | 16 +- src/17D6A0.c | 2 +- src/17FEB0.c | 2 +- src/19FAF0.c | 2 +- src/1A5830.c | 4 +- src/1AC760.c | 6 +- src/1AF120.c | 14 +- src/battle/action_cmd/air_lift.h | 2 + src/battle/action_cmd/air_raid.c | 4 +- src/battle/action_cmd/air_raid.h | 2 + src/battle/action_cmd/hurricane.c | 2 +- src/battle/action_cmd/hurricane.h | 2 + src/battle/action_cmd/mega_shock.h | 2 + src/battle/action_cmd/power_shock.h | 2 + src/battle/action_cmd/smack.c | 2 +- src/battle/action_cmd/smack.h | 3 + src/battle/action_cmd/spiny_surge.c | 2 +- src/battle/action_cmd/spiny_surge.h | 3 + src/battle/action_cmd/spook.c | 2 +- src/battle/action_cmd/spook.h | 3 + src/battle/action_cmd/squirt.c | 4 +- src/battle/action_cmd/squirt.h | 3 + src/battle/action_cmd/tidal_wave.h | 3 + src/battle/action_cmd/water_block.h | 2 + src/battle/area_arn/actor/hyper_cleft.c | 2 +- src/battle/area_arn/actor/hyper_paragoomba.c | 10 +- src/battle/area_arn/actor/hypergoomba.c | 10 +- src/battle/area_arn/actor/tubba_blubba.c | 2 +- src/battle/area_arn/actor/tubbas_heart.c | 2 +- src/battle/area_dgb/actor/tubba_blubba.c | 2 +- src/battle/area_dig/actor/tubba_blubba.c | 2 +- src/battle/area_flo/actor/amazy_dayzee.c | 4 +- src/battle/area_flo/actor/crazee_dayzee.c | 4 +- src/battle/area_flo/actor/lakitu.c | 4 +- src/battle/area_flo/actor/ruff_puff.c | 4 +- src/battle/area_flo2/actor/huff_n_puff.c | 2 +- src/battle/area_flo2/actor/monty_mole_boss.c | 6 +- src/battle/area_flo2/actor/spike.c | 2 +- src/battle/area_flo2/actor/tuff_puff.c | 2 +- src/battle/area_hos/actor/goombario_tutor.c | 2 +- src/battle/area_hos/actor/magikoopa.c | 8 +- .../area_isk_part_1/actor/pokey_mummy.c | 4 +- .../area_isk_part_1/actor/stone_chomp.c | 4 +- .../area_isk_part_2/actor/chain_chomp.c | 2 +- src/battle/area_isk_part_2/actor/tutankoopa.c | 2 +- src/battle/area_iwa/actor/buzzar.c | 2 +- src/battle/area_iwa/actor/cleft.c | 2 +- src/battle/area_jan/actor/hurt_plant.c | 4 +- src/battle/area_jan/actor/jungle_fuzzy.c | 4 +- src/battle/area_jan/actor/m_bush.c | 4 +- src/battle/area_jan/actor/spear_guy.c | 4 +- src/battle/area_kgr/actor/fuzzipede.c | 2 +- src/battle/area_kkj/actor/kammy_koopa.c | 2 +- .../area_kmr_part_2/actor/blue_goomba.c | 8 +- .../area_kmr_part_2/actor/blue_goomba2.c | 8 +- .../area_kmr_part_2/actor/goomba_king.c | 2 +- .../area_kmr_part_2/actor/goomnut_tree.c | 2 +- src/battle/area_kmr_part_2/actor/red_goomba.c | 8 +- .../area_kmr_part_2/actor/red_goomba2.c | 8 +- .../area_kmr_part_3/actor/egg_jr_troopa.c | 2 +- .../area_kmr_part_3/actor/final_jr_troopa.c | 14 +- src/battle/area_kmr_part_3/actor/jr_troopa.c | 2 +- .../area_kmr_part_3/actor/mage_jr_troopa.c | 2 +- .../area_kmr_part_3/actor/para_jr_troopa.c | 2 +- src/battle/area_kmr_part_3/actor/paragoomba.c | 8 +- .../area_kmr_part_3/actor/spiked_goomba.c | 10 +- .../actor/spiked_para_jr_troopa.c | 2 +- src/battle/area_kpa/actor/bony_beetle.c | 2 +- src/battle/area_kpa/actor/dry_bones.c | 4 +- src/battle/area_kpa2/actor/bowser.c | 2 +- src/battle/area_kpa2/actor/bowser_intro.c | 2 +- src/battle/area_kpa2/actor/bowser_phase_1.c | 2 +- src/battle/area_kpa2/actor/bowser_phase_2.c | 2 +- src/battle/area_kpa2/actor/bowser_phase_3.c | 2 +- src/battle/area_kpa3/actor/anti_guy.c | 2 +- src/battle/area_kpa4/actor/bombshell_bill.c | 4 +- .../area_kpa4/actor/bombshell_bill_blaster.c | 4 +- src/battle/area_kzn/actor/lava_bubble.c | 4 +- src/battle/area_kzn2/actor/lava_bud.c | 2 +- src/battle/area_kzn2/actor/lava_piranha.c | 2 +- src/battle/area_kzn2/actor/petit_piranha.c | 2 +- .../area_kzn2/actor/petit_piranha_bomb.c | 2 +- src/battle/area_mac/actor/chan.c | 2 +- src/battle/area_mac/actor/lee.c | 18 +- src/battle/area_mac/actor/master1.c | 2 +- src/battle/area_mac/actor/master2.c | 2 +- src/battle/area_mac/actor/master3.c | 2 +- src/battle/area_mim/actor/forest_fuzzy.c | 4 +- src/battle/area_mim/actor/piranha_plant.c | 4 +- src/battle/area_nok/actor/kent_c_koopa.c | 2 +- src/battle/area_omo/actor/anti_guy.c | 2 +- src/battle/area_omo/actor/blue_shy_guy.c | 2 +- src/battle/area_omo/actor/green_shy_guy.c | 2 +- src/battle/area_omo/actor/groove_guy.c | 4 +- src/battle/area_omo/actor/pink_shy_guy.c | 2 +- src/battle/area_omo/actor/pyro_guy.c | 4 +- src/battle/area_omo/actor/sky_guy.c | 4 +- src/battle/area_omo/actor/spy_guy.c | 4 +- src/battle/area_omo/actor/yellow_shy_guy.c | 2 +- src/battle/area_omo2/actor/general_guy.c | 2 +- src/battle/area_omo2/actor/light_bulb.c | 2 +- src/battle/area_omo2/actor/toy_tank.c | 2 +- src/battle/area_omo2_1/actor/shy_squad.c | 2 +- src/battle/area_omo2_2/actor/stilt_guy.c | 2 +- src/battle/area_omo2_3/actor/shy_stack.c | 2 +- src/battle/area_omo2_4/actor/signal_guy.c | 2 +- src/battle/area_omo2_5/actor/shy_squad_dup.c | 2 +- src/battle/area_omo2_6/actor/shy_guy_dup.c | 2 +- .../area_omo3/actor/big_lantern_ghost.c | 2 +- src/battle/area_pra/actor/albino_dino.c | 4 +- src/battle/area_pra2/actor/crystal_bit.c | 6 +- src/battle/area_pra2/actor/crystal_king.c | 16 +- src/battle/area_sam/actor/frost_piranha.c | 2 +- src/battle/area_sam/actor/gulpit.c | 4 +- src/battle/area_sam/actor/gulpit_rocks.c | 2 +- src/battle/area_sam2/actor/monstar.c | 2 +- src/battle/area_tik/actor/dark_koopa.c | 4 +- src/battle/area_tik/actor/dark_paratroopa.c | 4 +- src/battle/area_tik/actor/gloomba.c | 10 +- src/battle/area_tik/actor/paragloomba.c | 10 +- src/battle/area_tik/actor/spiked_gloomba.c | 10 +- src/battle/area_tik2/actor/blooper.c | 2 +- src/battle/area_tik2/actor/blooper_baby.c | 2 +- src/battle/area_tik2/actor/electro_blooper.c | 2 +- src/battle/area_tik2/actor/super_blooper.c | 2 +- .../area_trd_part_1/actor/bill_blaster.c | 4 +- src/battle/area_trd_part_1/actor/bob_omb.c | 2 +- .../area_trd_part_1/actor/bullet_bill.c | 4 +- .../area_trd_part_2/actor/blue_ninja_koopa.c | 2 +- .../area_trd_part_2/actor/fake_bowser.c | 2 +- .../area_trd_part_2/actor/green_ninja_koopa.c | 2 +- .../area_trd_part_2/actor/red_ninja_koopa.c | 2 +- .../actor/yellow_ninja_koopa.c | 2 +- src/battle/area_trd_part_3/actor/eldstar.c | 2 +- src/battle/battle.h | 4 +- src/battle/common/actor/bandit.inc.c | 4 +- src/battle/common/actor/buzzy_beetle.inc.c | 2 +- src/battle/common/actor/bzzap.inc.c | 4 +- src/battle/common/actor/clubba.inc.c | 2 +- src/battle/common/actor/duplighost.inc.c | 4 +- src/battle/common/actor/ember.inc.c | 4 +- src/battle/common/actor/fuzzy.inc.c | 2 +- src/battle/common/actor/ghost_bombette.inc.c | 4 +- src/battle/common/actor/ghost_bow.inc.c | 4 +- src/battle/common/actor/ghost_goombario.inc.c | 4 +- src/battle/common/actor/ghost_kooper.inc.c | 4 +- .../common/actor/ghost_lakilester.inc.c | 4 +- src/battle/common/actor/ghost_parakarry.inc.c | 4 +- src/battle/common/actor/ghost_sushie.inc.c | 4 +- src/battle/common/actor/ghost_watt.inc.c | 4 +- src/battle/common/actor/goomba.inc.c | 10 +- src/battle/common/actor/gray_magikoopa.inc.c | 8 +- src/battle/common/actor/green_magikoopa.inc.c | 8 +- src/battle/common/actor/hammer_bro.inc.c | 4 +- src/battle/common/actor/koopa_troopa.inc.c | 2 +- src/battle/common/actor/koopatrol.inc.c | 4 +- src/battle/common/actor/magikoopa.inc.c | 12 +- src/battle/common/actor/medi_guy.inc.c | 4 +- src/battle/common/actor/monty_mole.inc.c | 6 +- src/battle/common/actor/paragoomba.inc.c | 8 +- src/battle/common/actor/paratroopa.inc.c | 4 +- src/battle/common/actor/pokey.inc.c | 4 +- src/battle/common/actor/putrid_piranha.inc.c | 4 +- src/battle/common/actor/red_magikoopa.inc.c | 8 +- src/battle/common/actor/red_shy_guy.inc.c | 2 +- src/battle/common/actor/slot_machine.inc.c | 4 +- src/battle/common/actor/spike_top.inc.c | 4 +- src/battle/common/actor/spiked_goomba.inc.c | 10 +- src/battle/common/actor/spiny.inc.c | 4 +- src/battle/common/actor/swooper.inc.c | 4 +- src/battle/common/actor/swoopula.inc.c | 4 +- src/battle/common/actor/whacka.inc.c | 2 +- src/battle/common/actor/white_clubba.inc.c | 4 +- src/battle/common/actor/white_magikoopa.inc.c | 8 +- .../common/actor/yellow_magikoopa.inc.c | 8 +- src/battle/partner/bombette.c | 575 +++--- src/battle/partner/bow.c | 1142 +++++++++++- src/battle/partner/goombario.c | 1016 +++++----- src/battle/partner/goompa.c | 72 +- src/battle/partner/kooper.c | 306 ++-- src/battle/partner/lakilester.c | 1628 ++++++++++++++--- src/battle/partner/parakarry.c | 905 ++++++++- src/battle/partner/sushie.c | 996 +++++++++- src/battle/partner/twink.c | 264 ++- src/battle/partner/watt.c | 1209 ++++++++++-- src/battle/star/focus/789E60.c | 2 +- ...leStuff.inc.c => CalculateArcsinDeg.inc.c} | 18 +- src/common/anglestuff.inc.c | 19 - src/effects/huff_puff_breath.c | 84 +- tools/star_rod_idx_to_c.py | 4 +- ver/us/asm/data/battle/partner/701590.data.s | 72 - ver/us/asm/data/battle/partner/704A80.data.s | 84 - ver/us/asm/data/battle/partner/708B70.data.s | 75 - ver/us/asm/data/battle/partner/70DED0.data.s | 78 - ver/us/asm/data/battle/partner/7111F0.data.s | 69 - ver/us/asm/data/battle/partner/714DC0.data.s | 48 - .../partner/lakilester/func_8023803C_70BD4C.s | 698 ------- .../partner/lakilester/func_80239140_70CE50.s | 971 ---------- .../partner/watt/func_80238810_704300.s | 217 --- ver/us/splat.yaml | 15 +- ver/us/symbol_addrs.txt | 42 +- ver/us/undefined_syms.txt | 4 - 205 files changed, 7088 insertions(+), 4274 deletions(-) rename src/common/{BattleAreaAngleStuff.inc.c => CalculateArcsinDeg.inc.c} (53%) delete mode 100644 src/common/anglestuff.inc.c delete mode 100644 ver/us/asm/data/battle/partner/701590.data.s delete mode 100644 ver/us/asm/data/battle/partner/704A80.data.s delete mode 100644 ver/us/asm/data/battle/partner/708B70.data.s delete mode 100644 ver/us/asm/data/battle/partner/70DED0.data.s delete mode 100644 ver/us/asm/data/battle/partner/7111F0.data.s delete mode 100644 ver/us/asm/data/battle/partner/714DC0.data.s delete mode 100644 ver/us/asm/nonmatchings/battle/partner/lakilester/func_8023803C_70BD4C.s delete mode 100644 ver/us/asm/nonmatchings/battle/partner/lakilester/func_80239140_70CE50.s delete mode 100644 ver/us/asm/nonmatchings/battle/partner/watt/func_80238810_704300.s diff --git a/include/common_structs.h b/include/common_structs.h index 0ea1356082..7a1020f857 100644 --- a/include/common_structs.h +++ b/include/common_structs.h @@ -1899,7 +1899,7 @@ typedef struct Actor { /* 0x21C */ s8 status; /* 0x21D */ s8 disableDismissTimer; /* 0x21E */ s16 unk_21E; - /* 0x220 */ s8 isGlowing; // not the case for goombario + /* 0x220 */ s8 isGlowing; // charge amount for goombario /* 0x221 */ s8 attackBoost; /* 0x222 */ s8 defenseBoost; /* 0x223 */ s8 chillOutAmount; /* attack reduction */ diff --git a/include/effects.h b/include/effects.h index 2f29d394f8..bc2c28400a 100644 --- a/include/effects.h +++ b/include/effects.h @@ -2093,24 +2093,24 @@ typedef struct ShinyFlareFXData { } ShinyFlareFXData; // size = 0x30 typedef struct HuffPuffBreathFXData { - /* 0x00 */ s32 unk_00; + /* 0x00 */ s32 type; /* 0x04 */ Vec3f pos; /* 0x10 */ s32 timeLeft; /* 0x14 */ s32 lifeTime; - /* 0x18 */ s32 unk_18; - /* 0x1C */ s32 unk_1C; - /* 0x20 */ s32 unk_20; - /* 0x24 */ s32 unk_24; - /* 0x28 */ s32 unk_28; - /* 0x2C */ s32 unk_2C; - /* 0x30 */ s32 unk_30; - /* 0x34 */ s32 unk_34; - /* 0x38 */ f32 unk_38; - /* 0x3C */ f32 unk_3C; - /* 0x40 */ f32 unk_40; - /* 0x44 */ f32 unk_44; - /* 0x48 */ f32 unk_48; - /* 0x4C */ f32 unk_4C; + /* 0x18 */ s32 primR; + /* 0x1C */ s32 primG; + /* 0x20 */ s32 primB; + /* 0x24 */ s32 primA; + /* 0x28 */ s32 envR; + /* 0x2C */ s32 envG; + /* 0x30 */ s32 envB; + /* 0x34 */ s32 envA; + /* 0x38 */ f32 texOffsetX; + /* 0x3C */ f32 speedX; + /* 0x40 */ f32 texOffsetY; + /* 0x44 */ f32 speedY; + /* 0x48 */ f32 angle; + /* 0x4C */ f32 scale; } HuffPuffBreathFXData; // size = 0x50 typedef struct ColdBreathFXData { diff --git a/include/enums.h b/include/enums.h index 05868a87e0..2965cec404 100644 --- a/include/enums.h +++ b/include/enums.h @@ -648,6 +648,7 @@ enum SoundIDs { SOUND_IMMUNE = 0x0000010C, SOUND_HIT_BONES = 0x0000010D, SOUND_10F = 0x0000010F, + SOUND_110 = 0x00000110, SOUND_131 = 0x00000131, SOUND_133 = 0x00000133, SOUND_134 = 0x00000134, @@ -845,11 +846,21 @@ enum SoundIDs { SOUND_283 = 0x00000283, SOUND_284 = 0x00000284, SOUND_286 = 0x00000286, + SOUND_287 = 0x00000287, + SOUND_288 = 0x00000288, SOUND_289 = 0x00000289, + SOUND_28A = 0x0000028A, + SOUND_28B = 0x0000028B, + SOUND_28C = 0x0000028C, + SOUND_28E = 0x0000028E, + SOUND_28F = 0x0000028F, + SOUND_290 = 0x00000290, SOUND_BOW_SPOOK = 0x00000291, SOUND_292 = 0x00000292, SOUND_293 = 0x00000293, SOUND_295 = 0x00000295, + SOUND_297 = 0x00000297, + SOUND_298 = 0x00000298, SOUND_299 = 0x00000299, SOUND_29A = 0x0000029A, SOUND_29B = 0x0000029B, @@ -862,6 +873,7 @@ enum SoundIDs { SOUND_2A4 = 0x000002A4, SOUND_2A6 = 0x000002A6, SOUND_2A7 = 0x000002A7, + SOUND_2AA = 0x000002AA, SOUND_UNUSED_2C1 = 0x000002C1, SOUND_2C4 = 0x000002C4, SOUND_2C5 = 0x000002C5, @@ -930,6 +942,7 @@ enum SoundIDs { SOUND_TOY_TANK_MOVE1 = 0x0000030F, SOUND_TOY_TANK_MOVE2 = 0x00000310, SOUND_311 = 0x00000311, + SOUND_312 = 0x00000312, SOUND_315 = 0x00000315, SOUND_BURROW_SURFACE = 0x00000321, SOUND_BURROW_DIG = 0x00000322, @@ -1118,6 +1131,7 @@ enum SoundIDs { SOUND_2003 = 0x00002003, SOUND_2004 = 0x00002004, SOUND_2005 = 0x00002005, + SOUND_2006 = 0x00002006, SOUND_2009 = 0x00002009, SOUND_200A = 0x0000200A, SOUND_200B = 0x0000200B, @@ -1133,10 +1147,15 @@ enum SoundIDs { SOUND_CANNON3 = 0x00002018, SOUND_2019 = 0x00002019, SOUND_201B = 0x0000201B, + SOUND_201C = 0x0000201C, + SOUND_201D = 0x0000201D, + SOUND_201E = 0x0000201E, + SOUND_201F = 0x0000201F, SOUND_2020 = 0x00002020, SOUND_2021 = 0x00002021, SOUND_2022 = 0x00002022, SOUND_2023 = 0x00002023, + SOUND_2024 = 0x00002024, SOUND_2026 = 0x00002026, SOUND_202A = 0x0000202A, SOUND_202B = 0x0000202B, @@ -1149,6 +1168,7 @@ enum SoundIDs { SOUND_INFLICT_STATUS = 0x00002032, //< Stop poison paralyze, SOUND_2033 = 0x00002033, SOUND_2034 = 0x00002034, + SOUND_2035 = 0x00002035, SOUND_2036 = 0x00002036, SOUND_2037 = 0x00002037, SOUND_2038 = 0x00002038, @@ -1201,6 +1221,8 @@ enum SoundIDs { SOUND_207B = 0x0000207B, SOUND_207C = 0x0000207C, SOUND_207D = 0x0000207D, + SOUND_207E = 0x0000207E, + SOUND_207F = 0x0000207F, SOUND_JUMP_2081 = 0x00002081, SOUND_JUMP_8BIT_MARIO = 0x00002082, SOUND_2085 = 0x00002085, @@ -2602,6 +2624,7 @@ enum Events { EVENT_SCARE_AWAY = 0x00000039, EVENT_BEGIN_AIR_LIFT = 0x0000003A, EVENT_UP_AND_AWAY = 0x0000003D, + EVENT_62 = 0x0000003E, EVENT_SWAP_PARTNER = 0x0000003F, EVENT_LIFE_SHROOM_PROC = 0x00000040, EVENT_REVIVE = 0x00000041, @@ -3263,6 +3286,7 @@ enum AttackEventFlags { ATTACK_EVENT_FLAG_8 = 0x8, ATTACK_EVENT_FLAG_10 = 0x10, ATTACK_EVENT_FLAG_80 = 0x80, + ATTACK_EVENT_FLAG_200 = 0x200, }; enum PartnerActions { diff --git a/include/script_api/battle.h b/include/script_api/battle.h index 0627eb6e33..7a6b95eec3 100644 --- a/include/script_api/battle.h +++ b/include/script_api/battle.h @@ -18,6 +18,7 @@ ApiStatus MoveBattleCamOver(Evt* script, s32 isInitialCall); ApiStatus SetBattleCamZoom(Evt* script, s32 isInitialCall); ApiStatus AddBattleCamZoom(Evt* script, s32 isInitialCall); ApiStatus FreezeBattleCam(Evt* script, s32 isInitialCall); +ApiStatus func_8024EDA4(Evt* script, s32 isInitialCall); ApiStatus ShowMessageBox(Evt* script, s32 isInitialCall); ApiStatus ShowVariableMessageBox(Evt* script, s32 isInitialCall); ApiStatus IsMessageBoxDisplayed(Evt* script, s32 isInitialCall); @@ -294,14 +295,13 @@ ApiStatus InitAnimatedModels(Evt* script, s32 isInitialCall); ApiStatus func_8024CE9C(Evt* script, s32 isInitialCall); ApiStatus func_802CABE8(Evt* script, s32 isInitialCall); ApiStatus func_802CAE50(Evt* script, s32 isInitialCall); -ApiStatus func_802A9000_430020(Evt* script, s32 isInitialCall); ApiStatus func_802A9120_421B10(Evt* script, s32 isInitialCall); ApiStatus func_802807D0(Evt* script, s32 isInitialCall); ApiStatus func_802694A4(Evt* script, s32 isInitialCall); ApiStatus func_80269524(Evt* script, s32 isInitialCall); ApiStatus func_80269550(Evt* script, s32 isInitialCall); ApiStatus func_8026919C(Evt* script, s32 isInitialCall); -ApiStatus func_80280818(Evt* script, s32 isInitialCall); ///< YieldTurn copy +ApiStatus PartnerYieldTurn(Evt* script, s32 isInitialCall); ///< YieldTurn copy ApiStatus func_8024ECF8(Evt* script, s32 isInitialCall); ApiStatus UseBattleCamPresetImmediately(Evt* script, s32 isInitialCall); ApiStatus UseBattleCamPresetWait(Evt* script, s32 isInitialCall); @@ -314,6 +314,7 @@ ApiStatus ShowStartRecoveryShimmer(Evt* script, s32 isInitialCall); ApiStatus ShowRecoveryShimmer(Evt* script, s32 isInitialCall); ApiStatus func_80273444(Evt* script, s32 isInitialCall); ApiStatus GetActionCommandMode(Evt* script, s32 isInitialCall); +ApiStatus func_80269344(Evt* script, s32 isInitialCall); ApiStatus SetActionCommandMode(Evt* script, s32 isInitialCall); ApiStatus SetCommandAutoSuccess(Evt* script, s32 isInitialCall); ApiStatus func_802693F0(Evt* script, s32 isInitialCall); @@ -329,6 +330,7 @@ ApiStatus func_8026ED20(Evt* script, s32 isInitialCall); ApiStatus func_8026EBF8(Evt* script, s32 isInitialCall); ApiStatus SetupMashMeter(Evt* script, s32 isInitialCall); ApiStatus SetActionResult(Evt* script, s32 isInitialCall); +ApiStatus func_80269600(Evt* script, s32 isInitialCall); ApiStatus BattleCamTargetActorPart(Evt* script, s32 isInitialCall); ApiStatus func_802537C0(Evt* script, s32 isInitialCall); ApiStatus CancelEnemyTurn(Evt* script, s32 isInitialCall); @@ -370,15 +372,15 @@ extern EvtScript DoFreezeHit; extern EvtScript DoShrinkHit; extern EvtScript ForceNextTarget; extern EvtScript DoNormalHit; -extern EvtScript D_80294AFC; -extern EvtScript D_80294FE4; +extern EvtScript DoPartnerRunAway; +extern EvtScript DoPartnerSpikeContact; extern EvtScript D_80295350; -extern EvtScript D_80294C68; +extern EvtScript DoPartnerBurnContact; extern EvtScript DoPartnerRecover; extern EvtScript D_80295744; -extern EvtScript D_8029621C; +extern EvtScript DoPartnerBurn; extern EvtScript D_802977BC; -extern EvtScript D_80296014; +extern EvtScript DoPartnerHit; extern EvtScript DoPartnerBlock; extern EvtScript D_802976E8; extern EvtScript D_8029C12C; diff --git a/src/17D6A0.c b/src/17D6A0.c index dd690db798..077a94fd8f 100644 --- a/src/17D6A0.c +++ b/src/17D6A0.c @@ -2311,8 +2311,8 @@ ActorBlueprint bPlayerActorBlueprint = { .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, diff --git a/src/17FEB0.c b/src/17FEB0.c index 2a61afbd4e..a0f4a12366 100644 --- a/src/17FEB0.c +++ b/src/17FEB0.c @@ -364,7 +364,7 @@ s32 calc_item_damage_enemy(void) { } - temp = target->actorBlueprint->baseStatusChance; + temp = target->actorBlueprint->spookChance; temp = (battleStatus->statusChance * temp) / 100; if ((gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) && (battleStatus->currentAttackElement & DAMAGE_TYPE_FEAR)) { diff --git a/src/19FAF0.c b/src/19FAF0.c index 5e197447ac..c279c5d9c6 100644 --- a/src/19FAF0.c +++ b/src/19FAF0.c @@ -211,7 +211,7 @@ s32 calc_player_test_enemy(void) { return HIT_RESULT_LANDED_ON_SPIKE; } else if (!(battleStatus->currentAttackElement & (DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_JUMP)) && (part->eventFlags & ACTOR_EVENT_FLAG_SPIKY_FRONT) && - (!(battleStatus->currentAttackEventSuppression & 4) && + (!(battleStatus->currentAttackEventSuppression & ATTACK_EVENT_FLAG_4) && !player_team_is_ability_active(player, ABILITY_SPIKE_SHIELD))) { sfx_play_sound_at_position(SOUND_108, 0, state->goalPos.x, state->goalPos.y, state->goalPos.z); diff --git a/src/1A5830.c b/src/1A5830.c index 6a40be0502..d40ce8a552 100644 --- a/src/1A5830.c +++ b/src/1A5830.c @@ -327,7 +327,7 @@ s32 calc_enemy_damage_target(Actor* attacker) { if (!(attacker->staticStatus == STATUS_STATIC)) { if ((target->staticStatus == STATUS_STATIC) || (targetPart->eventFlags & ACTOR_EVENT_FLAG_ELECTRIFIED)) { if (!(battleStatus->currentAttackElement & (DAMAGE_TYPE_ELECTRIC | DAMAGE_TYPE_NO_CONTACT))) { - if (!(battleStatus->currentAttackEventSuppression & 8)) { + if (!(battleStatus->currentAttackEventSuppression & ATTACK_EVENT_FLAG_8)) { if (!has_enchanted_part(attacker)) { isEnchanted = TRUE; gBattleStatus.flags1 |= BS_FLAGS1_SP_EVT_ACTIVE; @@ -780,7 +780,7 @@ s32 calc_enemy_damage_target(Actor* attacker) { && (target->staticStatus == STATUS_STATIC || (targetPart->eventFlags & ACTOR_EVENT_FLAG_ELECTRIFIED)) ) && !(battleStatus->currentAttackElement & DAMAGE_TYPE_NO_CONTACT) - && !(battleStatus->currentAttackEventSuppression & 8) + && !(battleStatus->currentAttackEventSuppression & ATTACK_EVENT_FLAG_8) && (attacker->transparentStatus != STATUS_TRANSPARENT) && !has_enchanted_part(attacker) ) { diff --git a/src/1AC760.c b/src/1AC760.c index e57b0cdde4..884076e325 100644 --- a/src/1AC760.c +++ b/src/1AC760.c @@ -571,7 +571,7 @@ s32 calc_partner_damage_enemy(void) { #undef INFLICT_STATUS - statusChanceOrDefense = target->actorBlueprint->baseStatusChance; + statusChanceOrDefense = target->actorBlueprint->spookChance; if (statusChanceOrDefense > 0) { statusChanceOrDefense = 100; @@ -617,7 +617,7 @@ s32 calc_partner_damage_enemy(void) { } } - statusChanceOrDefense = target->actorBlueprint->baseStatusChance; + statusChanceOrDefense = target->actorBlueprint->spookChance; statusChanceOrDefense = (battleStatus->statusChance * statusChanceOrDefense) / 100; if (gBattleStatus.flags1 & BS_FLAGS1_SP_EVT_ACTIVE) { @@ -1291,7 +1291,7 @@ ApiStatus GetActionCommandResult(Evt* script, s32 isInitialCall) { } /// Seems to be the same functionality as YieldTurn in 1A5830.c -ApiStatus func_80280818(Evt* script, s32 isInitialCall) { +ApiStatus PartnerYieldTurn(Evt* script, s32 isInitialCall) { gBattleStatus.flags1 |= BS_FLAGS1_200000; return ApiStatus_DONE2; } diff --git a/src/1AF120.c b/src/1AF120.c index 364fef9c3c..0930fee9fd 100644 --- a/src/1AF120.c +++ b/src/1AF120.c @@ -85,7 +85,7 @@ EvtScript D_80294720 = { EVT_END }; -EvtScript D_80294AFC = { +EvtScript DoPartnerRunAway = { EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) EVT_CALL(SetActorYaw, ACTOR_SELF, 180) EVT_CALL(SetAnimation, ACTOR_SELF, LVar0, LVar1) @@ -105,7 +105,7 @@ EvtScript D_80294AFC = { EVT_END }; -EvtScript D_80294C68 = { +EvtScript DoPartnerBurnContact = { EVT_SET(LVarA, LVar1) EVT_SET(LVarB, LVar2) EVT_SET(LVarC, LVar3) @@ -123,7 +123,7 @@ EvtScript D_80294C68 = { EVT_CALL(JumpToGoal, ACTOR_PARTNER, 5, FALSE, FALSE, FALSE) EVT_SET(LVar1, LVarA) EVT_SET(LVar2, LVarC) - EVT_EXEC_WAIT(D_8029621C) + EVT_EXEC_WAIT(DoPartnerBurn) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) EVT_CHILD_THREAD EVT_CALL(SetActorRotationOffset, ACTOR_PARTNER, 0, LVarB, 0) @@ -152,7 +152,7 @@ EvtScript D_80294C68 = { EVT_END }; -EvtScript D_80294FE4 = { +EvtScript DoPartnerSpikeContact = { EVT_SET(LVarA, LVar1) EVT_SET(LVarB, LVar2) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0) @@ -372,14 +372,14 @@ EvtScript DoPartnerRecover = { EVT_END }; -EvtScript D_80296014 = { +EvtScript DoPartnerHit = { EVT_SET(LVarA, LVar1) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_IF_EQ(LVar1, 0) EVT_GOTO(10) EVT_END_IF EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) - EVT_CALL(func_8026F1A0, 256, 1) + EVT_CALL(func_8026F1A0, ACTOR_PARTNER, 1) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, LVarA) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_SET(LVar1, 0) @@ -398,7 +398,7 @@ EvtScript D_80296014 = { EVT_END }; -EvtScript D_8029621C = { +EvtScript DoPartnerBurn = { EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, LVar1) EVT_CHILD_THREAD EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar5, LVar6, LVar7) diff --git a/src/battle/action_cmd/air_lift.h b/src/battle/action_cmd/air_lift.h index 790ec2dd19..8620a7ceba 100644 --- a/src/battle/action_cmd/air_lift.h +++ b/src/battle/action_cmd/air_lift.h @@ -3,6 +3,8 @@ #include "common_structs.h" +ApiStatus func_802A9000_428A70(Evt* script, s32 isInitialCall); +ApiStatus func_802A9184_428BF4(Evt* script, s32 isInitialCall); void func_802A9278_428CE8(void); #endif diff --git a/src/battle/action_cmd/air_raid.c b/src/battle/action_cmd/air_raid.c index dc03979963..ac437bb91b 100644 --- a/src/battle/action_cmd/air_raid.c +++ b/src/battle/action_cmd/air_raid.c @@ -16,7 +16,7 @@ s32 D_802A9984_429CA4[] = { 40, 70, 99, 200, }; s32 D_802A9994_429CB4[] = { 35, 60, 80, 99, 200, }; s32 D_802A99A8_429CC8[] = { 35, 35, 60, 80, 99, 200, }; -ApiStatus func_802A9000_429320(void) { +ApiStatus func_802A9000_429320(Evt* script, s32 isInitialCall) { ActionCommandStatus* actionCommandStatus = &gActionCommandStatus; BattleStatus* battleStatus = &gBattleStatus; s32 hudElement; @@ -67,7 +67,7 @@ ApiStatus func_802A9000_429320(void) { #include "common/MashActionCommandInit.inc.c" -void func_802A9294_4295B4(void) { +void func_802A9294_4295B4(Evt* script, s32 isInitialCall) { ActionCommandStatus* actionCommandStatus = &gActionCommandStatus; BattleStatus* battleStatus = &gBattleStatus; Actor* partner = battleStatus->partnerActor; diff --git a/src/battle/action_cmd/air_raid.h b/src/battle/action_cmd/air_raid.h index a80da4100c..8043feca77 100644 --- a/src/battle/action_cmd/air_raid.h +++ b/src/battle/action_cmd/air_raid.h @@ -3,6 +3,8 @@ #include "common_structs.h" +ApiStatus func_802A9000_429320(Evt* script, s32 isInitialCall); +ApiStatus action_command_air_raid_MashActionCommandInit(Evt* script, s32 isInitialCall); void func_802A9294_4295B4(void); #endif diff --git a/src/battle/action_cmd/hurricane.c b/src/battle/action_cmd/hurricane.c index 89aa5fa7db..37924a9d3f 100644 --- a/src/battle/action_cmd/hurricane.c +++ b/src/battle/action_cmd/hurricane.c @@ -13,7 +13,7 @@ extern HudScript HES_100pct; s32 D_802A98E0_42FFC0[8] = { 0, 25, 50, 75, 75, 0, 0, 0 }; -ApiStatus func_802A9000_42F6E0(void) { +ApiStatus func_802A9000_42F6E0(Evt* script, s32 isInitialCall) { ActionCommandStatus* actionCommandStatus = &gActionCommandStatus; BattleStatus* battleStatus = &gBattleStatus; s32 id; diff --git a/src/battle/action_cmd/hurricane.h b/src/battle/action_cmd/hurricane.h index 71620e9af5..52306ffd3c 100644 --- a/src/battle/action_cmd/hurricane.h +++ b/src/battle/action_cmd/hurricane.h @@ -3,6 +3,8 @@ #include "common_structs.h" +ApiStatus func_802A9000_42F6E0(Evt* script, s32 isInitialCall); +ApiStatus func_802A91A0_42F880(Evt* script, s32 isInitialCall); void func_802A92A0_42F980(void); #endif diff --git a/src/battle/action_cmd/mega_shock.h b/src/battle/action_cmd/mega_shock.h index d823f7da12..663083c3bd 100644 --- a/src/battle/action_cmd/mega_shock.h +++ b/src/battle/action_cmd/mega_shock.h @@ -3,6 +3,8 @@ #include "common_structs.h" +ApiStatus func_802A9000_42DA10(Evt* script, s32 isInitialCall); +ApiStatus func_802A91A0_42DBB0(Evt* script, s32 isInitialCall); void func_802A92A0_42DCB0(void); #endif diff --git a/src/battle/action_cmd/power_shock.h b/src/battle/action_cmd/power_shock.h index 35341ff803..18d5612b05 100644 --- a/src/battle/action_cmd/power_shock.h +++ b/src/battle/action_cmd/power_shock.h @@ -3,6 +3,8 @@ #include "common_structs.h" +ApiStatus action_command_power_shock_CreateHudElements(Evt* script, s32 isInitialCall); +ApiStatus func_802A9210_42D120(Evt* script, s32 isInitialCall); void func_802A9310_42D220(void); #endif diff --git a/src/battle/action_cmd/smack.c b/src/battle/action_cmd/smack.c index 91aaa8c48f..b0eba4633e 100644 --- a/src/battle/action_cmd/smack.c +++ b/src/battle/action_cmd/smack.c @@ -39,7 +39,7 @@ s32 D_802A9A20_42EDC0[] = { 0x23, 0x3C, 0x50, 0x63, 0xC8, 0x00, }; -ApiStatus func_802A9000_42E3A0(void) { +ApiStatus func_802A9000_42E3A0(Evt* script, s32 isInitialCall) { ActionCommandStatus* actionCommandStatus = &gActionCommandStatus; BattleStatus* battleStatus = &gBattleStatus; s32 hudElement; diff --git a/src/battle/action_cmd/smack.h b/src/battle/action_cmd/smack.h index b0635f6f82..060819ed35 100644 --- a/src/battle/action_cmd/smack.h +++ b/src/battle/action_cmd/smack.h @@ -3,6 +3,9 @@ #include "common_structs.h" +ApiStatus func_802A9000_42E3A0(Evt* script, s32 isInitialCall); +ApiStatus action_command_smack_MashActionCommandInit(Evt* script, s32 isInitialCall); + void func_802A9298_42E638(void); #endif diff --git a/src/battle/action_cmd/spiny_surge.c b/src/battle/action_cmd/spiny_surge.c index 7256d116bf..1ec17aaa9f 100644 --- a/src/battle/action_cmd/spiny_surge.c +++ b/src/battle/action_cmd/spiny_surge.c @@ -12,7 +12,7 @@ extern HudScript HES_100pct; s32 D_802A9860_42F680[8] = { 0, 25, 50, 75, 75, 0, 0, 0 }; extern s32 D_802A98C0; // bss? -ApiStatus func_802A9000_42EE20(void) { +ApiStatus func_802A9000_42EE20(Evt* script, s32 isInitialCall) { ActionCommandStatus* actionCommandStatus = &gActionCommandStatus; BattleStatus* battleStatus = &gBattleStatus; s32 id; diff --git a/src/battle/action_cmd/spiny_surge.h b/src/battle/action_cmd/spiny_surge.h index 06579c81c6..53c184e970 100644 --- a/src/battle/action_cmd/spiny_surge.h +++ b/src/battle/action_cmd/spiny_surge.h @@ -3,6 +3,9 @@ #include "common_structs.h" +ApiStatus func_802A9000_42EE20(Evt* script, s32 isInitialCall); +ApiStatus func_802A916C_42EF8C(Evt* script, s32 isInitialCall); + void func_802A9254_42F074(void); #endif diff --git a/src/battle/action_cmd/spook.c b/src/battle/action_cmd/spook.c index ae52fda36f..3d20ddfefb 100644 --- a/src/battle/action_cmd/spook.c +++ b/src/battle/action_cmd/spook.c @@ -12,7 +12,7 @@ extern s32 D_80294440; s32 D_802A9920_430940[8] = { 0, 25, 50, 75, 75, 0, 0, 0 }; -ApiStatus func_802A9000_430020(void) { +ApiStatus func_802A9000_430020(Evt* script, s32 isInitialCall) { ActionCommandStatus* actionCommandStatus = &gActionCommandStatus; BattleStatus* battleStatus = &gBattleStatus; s32 id; diff --git a/src/battle/action_cmd/spook.h b/src/battle/action_cmd/spook.h index 0c460024c2..dc68e83bd4 100644 --- a/src/battle/action_cmd/spook.h +++ b/src/battle/action_cmd/spook.h @@ -3,6 +3,9 @@ #include "common_structs.h" +ApiStatus func_802A9000_430020(Evt* script, s32 isInitialCall); +ApiStatus action_command_spook_MashActionCommandInit(Evt* script, s32 isInitialCall); + void func_802A9298_4302B8(void); #endif diff --git a/src/battle/action_cmd/squirt.c b/src/battle/action_cmd/squirt.c index 2e479705a8..842fc76113 100644 --- a/src/battle/action_cmd/squirt.c +++ b/src/battle/action_cmd/squirt.c @@ -12,7 +12,7 @@ extern s32 D_80294380; s32 D_802A9760_42A480[] = { 300, 300, 265, 220, 175, 175, }; s32 D_802A9778_42A498[] = { 300, 300, 265, 220, 175, 175, }; -ApiStatus func_802A9000_429D20(void) { +ApiStatus func_802A9000_429D20(Evt* script, s32 isInitialCall) { ActionCommandStatus* actionCommandStatus = &gActionCommandStatus; BattleStatus* battleStatus = &gBattleStatus; s32 id; @@ -50,7 +50,7 @@ ApiStatus func_802A9000_429D20(void) { return ApiStatus_DONE2; } -ApiStatus func_802A911C_429E3C(Evt* script) { +ApiStatus func_802A911C_429E3C(Evt* script, s32 isInitialCall) { ActionCommandStatus* actionCommandStatus = &gActionCommandStatus; BattleStatus* battleStatus = &gBattleStatus; Bytecode* args = script->ptrReadPos; diff --git a/src/battle/action_cmd/squirt.h b/src/battle/action_cmd/squirt.h index e965ccc257..7d575408f5 100644 --- a/src/battle/action_cmd/squirt.h +++ b/src/battle/action_cmd/squirt.h @@ -3,6 +3,9 @@ #include "common_structs.h" +ApiStatus func_802A9000_429D20(Evt* script, s32 isInitialCall); +ApiStatus func_802A911C_429E3C(Evt* script, s32 isInitialCall); + void func_802A9208_429F28(void); #endif diff --git a/src/battle/action_cmd/tidal_wave.h b/src/battle/action_cmd/tidal_wave.h index d44dc3257e..8e12c091ac 100644 --- a/src/battle/action_cmd/tidal_wave.h +++ b/src/battle/action_cmd/tidal_wave.h @@ -3,6 +3,9 @@ #include "common_structs.h" +ApiStatus action_command_tidal_wave_CreateHudElements(Evt* script, s32 isInitialCall); +ApiStatus func_802A9138_42C828(Evt* script, s32 isInitialCall); + void action_command_tidal_wave_update(void); #endif diff --git a/src/battle/action_cmd/water_block.h b/src/battle/action_cmd/water_block.h index d0a133cf03..b07a4c005b 100644 --- a/src/battle/action_cmd/water_block.h +++ b/src/battle/action_cmd/water_block.h @@ -3,6 +3,8 @@ #include "common_structs.h" +ApiStatus func_802A9000_42A4F0(Evt* script, s32 isInitialCall); +ApiStatus func_802A9398_42A888(Evt* script, s32 isInitialCall); void func_802A948C_42A97C(void); #endif diff --git a/src/battle/area_arn/actor/hyper_cleft.c b/src/battle/area_arn/actor/hyper_cleft.c index 5f34961985..e0e16dd812 100644 --- a/src/battle/area_arn/actor/hyper_cleft.c +++ b/src/battle/area_arn/actor/hyper_cleft.c @@ -79,8 +79,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80220B68), .escapeChance = 70, .airLiftChance = 30, + .hurricaneChance = 30, .spookChance = 30, - .baseStatusChance = 30, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 95, diff --git a/src/battle/area_arn/actor/hyper_paragoomba.c b/src/battle/area_arn/actor/hyper_paragoomba.c index 1b8b79a0c4..a0b6811390 100644 --- a/src/battle/area_arn/actor/hyper_paragoomba.c +++ b/src/battle/area_arn/actor/hyper_paragoomba.c @@ -148,8 +148,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021B3B4), .escapeChance = 50, .airLiftChance = 95, - .spookChance = 95, - .baseStatusChance = 80, + .hurricaneChance = 95, + .spookChance = 80, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, @@ -1316,7 +1316,7 @@ EvtScript N(handleEvent_8021F41C) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn_8021FE6C) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -1354,7 +1354,7 @@ EvtScript N(takeTurn_8021FE6C) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -1430,7 +1430,7 @@ EvtScript N(takeTurn_8021FE6C) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/area_arn/actor/hypergoomba.c b/src/battle/area_arn/actor/hypergoomba.c index 308dc359f0..7713299bcb 100644 --- a/src/battle/area_arn/actor/hypergoomba.c +++ b/src/battle/area_arn/actor/hypergoomba.c @@ -70,8 +70,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021877C), .escapeChance = 60, .airLiftChance = 90, - .spookChance = 90, - .baseStatusChance = 80, + .hurricaneChance = 90, + .spookChance = 80, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, @@ -550,7 +550,7 @@ EvtScript N(handleEvent_80219BD8) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn_8021A628) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -588,7 +588,7 @@ EvtScript N(takeTurn_8021A628) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -664,7 +664,7 @@ EvtScript N(takeTurn_8021A628) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/area_arn/actor/tubba_blubba.c b/src/battle/area_arn/actor/tubba_blubba.c index e285579f13..ea039abb57 100644 --- a/src/battle/area_arn/actor/tubba_blubba.c +++ b/src/battle/area_arn/actor/tubba_blubba.c @@ -85,8 +85,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80225CA0), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 75, diff --git a/src/battle/area_arn/actor/tubbas_heart.c b/src/battle/area_arn/actor/tubbas_heart.c index f86cb9bdee..b2451bf55a 100644 --- a/src/battle/area_arn/actor/tubbas_heart.c +++ b/src/battle/area_arn/actor/tubbas_heart.c @@ -115,8 +115,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80223C84), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 75, diff --git a/src/battle/area_dgb/actor/tubba_blubba.c b/src/battle/area_dgb/actor/tubba_blubba.c index 0c2133b66f..c2f4611a8e 100644 --- a/src/battle/area_dgb/actor/tubba_blubba.c +++ b/src/battle/area_dgb/actor/tubba_blubba.c @@ -86,8 +86,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80218C78), .escapeChance = 15, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 90, diff --git a/src/battle/area_dig/actor/tubba_blubba.c b/src/battle/area_dig/actor/tubba_blubba.c index a915ee600b..f12bfa1a9d 100644 --- a/src/battle/area_dig/actor/tubba_blubba.c +++ b/src/battle/area_dig/actor/tubba_blubba.c @@ -86,8 +86,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 75, diff --git a/src/battle/area_flo/actor/amazy_dayzee.c b/src/battle/area_flo/actor/amazy_dayzee.c index 719a87dae7..ca6fadcb10 100644 --- a/src/battle/area_flo/actor/amazy_dayzee.c +++ b/src/battle/area_flo/actor/amazy_dayzee.c @@ -69,8 +69,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 90, .airLiftChance = 85, - .spookChance = 80, - .baseStatusChance = 100, + .hurricaneChance = 80, + .spookChance = 100, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 70, diff --git a/src/battle/area_flo/actor/crazee_dayzee.c b/src/battle/area_flo/actor/crazee_dayzee.c index 67cdf09b66..90a378f35a 100644 --- a/src/battle/area_flo/actor/crazee_dayzee.c +++ b/src/battle/area_flo/actor/crazee_dayzee.c @@ -69,8 +69,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 50, .airLiftChance = 85, - .spookChance = 80, - .baseStatusChance = 100, + .hurricaneChance = 80, + .spookChance = 100, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/area_flo/actor/lakitu.c b/src/battle/area_flo/actor/lakitu.c index 72fae78aab..7d6d929825 100644 --- a/src/battle/area_flo/actor/lakitu.c +++ b/src/battle/area_flo/actor/lakitu.c @@ -121,8 +121,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 40, .airLiftChance = 90, - .spookChance = 90, - .baseStatusChance = 50, + .hurricaneChance = 90, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_flo/actor/ruff_puff.c b/src/battle/area_flo/actor/ruff_puff.c index 916f7b9cce..7153d208d7 100644 --- a/src/battle/area_flo/actor/ruff_puff.c +++ b/src/battle/area_flo/actor/ruff_puff.c @@ -80,8 +80,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 50, .airLiftChance = 90, - .spookChance = 90, - .baseStatusChance = 40, + .hurricaneChance = 90, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_flo2/actor/huff_n_puff.c b/src/battle/area_flo2/actor/huff_n_puff.c index c8b21bb9d4..5890fc3d63 100644 --- a/src/battle/area_flo2/actor/huff_n_puff.c +++ b/src/battle/area_flo2/actor/huff_n_puff.c @@ -408,8 +408,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 70, diff --git a/src/battle/area_flo2/actor/monty_mole_boss.c b/src/battle/area_flo2/actor/monty_mole_boss.c index ed34785ff4..70640dcf08 100644 --- a/src/battle/area_flo2/actor/monty_mole_boss.c +++ b/src/battle/area_flo2/actor/monty_mole_boss.c @@ -98,8 +98,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 50, .airLiftChance = 55, - .spookChance = 40, - .baseStatusChance = 50, + .hurricaneChance = 40, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 4, .powerBounceChance = 100, @@ -174,8 +174,8 @@ ActorBlueprint N(hole) = { .statusTable = NULL, .escapeChance = 80, .airLiftChance = 0, + .hurricaneChance = 80, .spookChance = 80, - .baseStatusChance = 80, .upAndAwayChance = 90, .spinSmashReq = 4, .powerBounceChance = 90, diff --git a/src/battle/area_flo2/actor/spike.c b/src/battle/area_flo2/actor/spike.c index 8973ec99f0..148607d9eb 100644 --- a/src/battle/area_flo2/actor/spike.c +++ b/src/battle/area_flo2/actor/spike.c @@ -99,8 +99,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/area_flo2/actor/tuff_puff.c b/src/battle/area_flo2/actor/tuff_puff.c index 025c78e57f..c8cc6f476f 100644 --- a/src/battle/area_flo2/actor/tuff_puff.c +++ b/src/battle/area_flo2/actor/tuff_puff.c @@ -124,8 +124,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/area_hos/actor/goombario_tutor.c b/src/battle/area_hos/actor/goombario_tutor.c index 83199637ac..361c2a77f7 100644 --- a/src/battle/area_hos/actor/goombario_tutor.c +++ b/src/battle/area_hos/actor/goombario_tutor.c @@ -77,8 +77,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80219068), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_hos/actor/magikoopa.c b/src/battle/area_hos/actor/magikoopa.c index 82cd0391b0..577e79c12c 100644 --- a/src/battle/area_hos/actor/magikoopa.c +++ b/src/battle/area_hos/actor/magikoopa.c @@ -140,8 +140,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021D498), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 100, @@ -165,8 +165,8 @@ ActorBlueprint N(flying) = { .statusTable = N(statusTable_8021D544), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 100, @@ -1308,8 +1308,8 @@ ActorBlueprint N(clone) = { .statusTable = N(statusTable_802214CC), .escapeChance = 40, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 75, @@ -1331,8 +1331,8 @@ ActorBlueprint N(flying_clone) = { .statusTable = N(statusTable_80221578), .escapeChance = 40, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/area_isk_part_1/actor/pokey_mummy.c b/src/battle/area_isk_part_1/actor/pokey_mummy.c index f569e8c634..d12a75ba15 100644 --- a/src/battle/area_isk_part_1/actor/pokey_mummy.c +++ b/src/battle/area_isk_part_1/actor/pokey_mummy.c @@ -135,8 +135,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80218C1C), .escapeChance = 60, .airLiftChance = 90, - .spookChance = 85, - .baseStatusChance = 60, + .hurricaneChance = 85, + .spookChance = 60, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 95, diff --git a/src/battle/area_isk_part_1/actor/stone_chomp.c b/src/battle/area_isk_part_1/actor/stone_chomp.c index b8077fae0c..f2432d774b 100644 --- a/src/battle/area_isk_part_1/actor/stone_chomp.c +++ b/src/battle/area_isk_part_1/actor/stone_chomp.c @@ -225,8 +225,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80221558), .escapeChance = 0, .airLiftChance = 25, - .spookChance = 25, - .baseStatusChance = 0, + .hurricaneChance = 25, + .spookChance = 0, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_isk_part_2/actor/chain_chomp.c b/src/battle/area_isk_part_2/actor/chain_chomp.c index 86399f4967..a3a366bbab 100644 --- a/src/battle/area_isk_part_2/actor/chain_chomp.c +++ b/src/battle/area_isk_part_2/actor/chain_chomp.c @@ -236,8 +236,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80218C88), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 95, diff --git a/src/battle/area_isk_part_2/actor/tutankoopa.c b/src/battle/area_isk_part_2/actor/tutankoopa.c index 31797c95e7..5983e90bbe 100644 --- a/src/battle/area_isk_part_2/actor/tutankoopa.c +++ b/src/battle/area_isk_part_2/actor/tutankoopa.c @@ -208,8 +208,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021BA28), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 70, diff --git a/src/battle/area_iwa/actor/buzzar.c b/src/battle/area_iwa/actor/buzzar.c index 572f4c4507..bf8c7df53b 100644 --- a/src/battle/area_iwa/actor/buzzar.c +++ b/src/battle/area_iwa/actor/buzzar.c @@ -145,8 +145,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021B65C), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 75, diff --git a/src/battle/area_iwa/actor/cleft.c b/src/battle/area_iwa/actor/cleft.c index 4121cce892..1839380500 100644 --- a/src/battle/area_iwa/actor/cleft.c +++ b/src/battle/area_iwa/actor/cleft.c @@ -76,8 +76,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80218740), .escapeChance = 80, .airLiftChance = 40, + .hurricaneChance = 40, .spookChance = 40, - .baseStatusChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 95, diff --git a/src/battle/area_jan/actor/hurt_plant.c b/src/battle/area_jan/actor/hurt_plant.c index a15a11ec5c..4b4f7992b0 100644 --- a/src/battle/area_jan/actor/hurt_plant.c +++ b/src/battle/area_jan/actor/hurt_plant.c @@ -81,8 +81,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021D9A0), .escapeChance = 70, .airLiftChance = 20, - .spookChance = 20, - .baseStatusChance = 70, + .hurricaneChance = 20, + .spookChance = 70, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 95, diff --git a/src/battle/area_jan/actor/jungle_fuzzy.c b/src/battle/area_jan/actor/jungle_fuzzy.c index 676f371b58..6794b725d5 100644 --- a/src/battle/area_jan/actor/jungle_fuzzy.c +++ b/src/battle/area_jan/actor/jungle_fuzzy.c @@ -71,8 +71,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021E9E4), .escapeChance = 30, .airLiftChance = 85, - .spookChance = 80, - .baseStatusChance = 75, + .hurricaneChance = 80, + .spookChance = 75, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_jan/actor/m_bush.c b/src/battle/area_jan/actor/m_bush.c index 18f8903aa3..eb133a9817 100644 --- a/src/battle/area_jan/actor/m_bush.c +++ b/src/battle/area_jan/actor/m_bush.c @@ -80,8 +80,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80221890), .escapeChance = 70, .airLiftChance = 85, - .spookChance = 80, - .baseStatusChance = 60, + .hurricaneChance = 80, + .spookChance = 60, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_jan/actor/spear_guy.c b/src/battle/area_jan/actor/spear_guy.c index 3ff7e9ff7f..4283cb2c02 100644 --- a/src/battle/area_jan/actor/spear_guy.c +++ b/src/battle/area_jan/actor/spear_guy.c @@ -182,8 +182,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80218698), .escapeChance = 50, .airLiftChance = 85, - .spookChance = 80, - .baseStatusChance = 70, + .hurricaneChance = 80, + .spookChance = 70, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_kgr/actor/fuzzipede.c b/src/battle/area_kgr/actor/fuzzipede.c index 55c7aca345..6764ab72c7 100644 --- a/src/battle/area_kgr/actor/fuzzipede.c +++ b/src/battle/area_kgr/actor/fuzzipede.c @@ -110,8 +110,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80218A54), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/area_kkj/actor/kammy_koopa.c b/src/battle/area_kkj/actor/kammy_koopa.c index d892240019..eb9eb32ee0 100644 --- a/src/battle/area_kkj/actor/kammy_koopa.c +++ b/src/battle/area_kkj/actor/kammy_koopa.c @@ -97,8 +97,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, diff --git a/src/battle/area_kmr_part_2/actor/blue_goomba.c b/src/battle/area_kmr_part_2/actor/blue_goomba.c index ee20ffbab0..79b0ead2f4 100644 --- a/src/battle/area_kmr_part_2/actor/blue_goomba.c +++ b/src/battle/area_kmr_part_2/actor/blue_goomba.c @@ -69,8 +69,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_802198BC), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, @@ -282,7 +282,7 @@ EvtScript N(handleEvent_80219D74) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn_8021A5A0) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -320,7 +320,7 @@ EvtScript N(takeTurn_8021A5A0) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -396,7 +396,7 @@ EvtScript N(takeTurn_8021A5A0) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/area_kmr_part_2/actor/blue_goomba2.c b/src/battle/area_kmr_part_2/actor/blue_goomba2.c index 29a0bb3101..37f228b96a 100644 --- a/src/battle/area_kmr_part_2/actor/blue_goomba2.c +++ b/src/battle/area_kmr_part_2/actor/blue_goomba2.c @@ -67,8 +67,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021D40C), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, @@ -280,7 +280,7 @@ EvtScript N(handleEvent_8021D8C4) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn_8021E0F0) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -318,7 +318,7 @@ EvtScript N(takeTurn_8021E0F0) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -394,7 +394,7 @@ EvtScript N(takeTurn_8021E0F0) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/area_kmr_part_2/actor/goomba_king.c b/src/battle/area_kmr_part_2/actor/goomba_king.c index 83fcde28f6..31555fc08f 100644 --- a/src/battle/area_kmr_part_2/actor/goomba_king.c +++ b/src/battle/area_kmr_part_2/actor/goomba_king.c @@ -132,8 +132,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8022091C), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, diff --git a/src/battle/area_kmr_part_2/actor/goomnut_tree.c b/src/battle/area_kmr_part_2/actor/goomnut_tree.c index 62092dde20..fc9ae72f77 100644 --- a/src/battle/area_kmr_part_2/actor/goomnut_tree.c +++ b/src/battle/area_kmr_part_2/actor/goomnut_tree.c @@ -122,8 +122,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_802232F0), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 0, diff --git a/src/battle/area_kmr_part_2/actor/red_goomba.c b/src/battle/area_kmr_part_2/actor/red_goomba.c index 6148416a77..0468dc53c0 100644 --- a/src/battle/area_kmr_part_2/actor/red_goomba.c +++ b/src/battle/area_kmr_part_2/actor/red_goomba.c @@ -69,8 +69,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021B6CC), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, @@ -282,7 +282,7 @@ EvtScript N(handleEvent_8021BB84) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn_8021C3B0) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -320,7 +320,7 @@ EvtScript N(takeTurn_8021C3B0) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -396,7 +396,7 @@ EvtScript N(takeTurn_8021C3B0) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/area_kmr_part_2/actor/red_goomba2.c b/src/battle/area_kmr_part_2/actor/red_goomba2.c index 3d711a78b8..cb63e003b8 100644 --- a/src/battle/area_kmr_part_2/actor/red_goomba2.c +++ b/src/battle/area_kmr_part_2/actor/red_goomba2.c @@ -67,8 +67,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021EE0C), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, @@ -280,7 +280,7 @@ EvtScript N(handleEvent_8021F2C4) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn_8021FAF0) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -318,7 +318,7 @@ EvtScript N(takeTurn_8021FAF0) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -394,7 +394,7 @@ EvtScript N(takeTurn_8021FAF0) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/area_kmr_part_3/actor/egg_jr_troopa.c b/src/battle/area_kmr_part_3/actor/egg_jr_troopa.c index c3a7fc5c47..302ff9abbb 100644 --- a/src/battle/area_kmr_part_3/actor/egg_jr_troopa.c +++ b/src/battle/area_kmr_part_3/actor/egg_jr_troopa.c @@ -92,8 +92,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80224418), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_kmr_part_3/actor/final_jr_troopa.c b/src/battle/area_kmr_part_3/actor/final_jr_troopa.c index ed4ce8fba0..93a6330006 100644 --- a/src/battle/area_kmr_part_3/actor/final_jr_troopa.c +++ b/src/battle/area_kmr_part_3/actor/final_jr_troopa.c @@ -188,8 +188,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8022C43C), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 70, @@ -905,7 +905,7 @@ EvtScript N(8022ED10) = { EVT_END }; -ApiStatus N(CalculateRotationZ)(Evt* script, s32 isInitialCall); +ApiStatus N(CalculateArcsinDeg)(Evt* script, s32 isInitialCall); EvtScript N(8022F468) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -942,7 +942,7 @@ EvtScript N(8022F468) = { EVT_CALL(GetActorPos, ACTOR_SELF, LVar1, LVar2, LVar3) EVT_LOOP(20) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetPartRotation, -127, 2, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -963,7 +963,7 @@ EvtScript N(8022F468) = { EVT_CALL(GetActorPos, ACTOR_SELF, LVar1, LVar2, LVar3) EVT_LOOP(14) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_SET(LVar7, LVar0) EVT_ADD(LVar7, 180) EVT_CALL(SetPartRotation, -127, 2, 0, 0, LVar7) @@ -1002,7 +1002,7 @@ EvtScript N(8022F468) = { EVT_CALL(GetActorPos, ACTOR_SELF, LVar1, LVar2, LVar3) EVT_LOOP(20) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetPartRotation, -127, 2, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -1023,7 +1023,7 @@ EvtScript N(8022F468) = { EVT_CALL(GetActorPos, ACTOR_SELF, LVar1, LVar2, LVar3) EVT_LOOP(14) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_SET(LVar7, LVar0) EVT_ADD(LVar7, 180) EVT_CALL(SetPartRotation, -127, 2, 0, 0, LVar7) @@ -1047,7 +1047,7 @@ EvtScript N(8022F468) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(80230034) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) diff --git a/src/battle/area_kmr_part_3/actor/jr_troopa.c b/src/battle/area_kmr_part_3/actor/jr_troopa.c index 4ede584228..3ae6c71f14 100644 --- a/src/battle/area_kmr_part_3/actor/jr_troopa.c +++ b/src/battle/area_kmr_part_3/actor/jr_troopa.c @@ -75,8 +75,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80222A38), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_kmr_part_3/actor/mage_jr_troopa.c b/src/battle/area_kmr_part_3/actor/mage_jr_troopa.c index 60a6459d05..c04b585941 100644 --- a/src/battle/area_kmr_part_3/actor/mage_jr_troopa.c +++ b/src/battle/area_kmr_part_3/actor/mage_jr_troopa.c @@ -119,8 +119,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8022A634), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/area_kmr_part_3/actor/para_jr_troopa.c b/src/battle/area_kmr_part_3/actor/para_jr_troopa.c index 61b92e6e50..b83d8d68da 100644 --- a/src/battle/area_kmr_part_3/actor/para_jr_troopa.c +++ b/src/battle/area_kmr_part_3/actor/para_jr_troopa.c @@ -105,8 +105,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80225E60), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_kmr_part_3/actor/paragoomba.c b/src/battle/area_kmr_part_3/actor/paragoomba.c index 83a6318934..723a39b01a 100644 --- a/src/battle/area_kmr_part_3/actor/paragoomba.c +++ b/src/battle/area_kmr_part_3/actor/paragoomba.c @@ -137,8 +137,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021C274), .escapeChance = 90, .airLiftChance = 100, + .hurricaneChance = 100, .spookChance = 100, - .baseStatusChance = 100, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, @@ -753,7 +753,7 @@ EvtScript N(handleEvent_8021DF5C) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn_8021E788) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -791,7 +791,7 @@ EvtScript N(takeTurn_8021E788) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -867,7 +867,7 @@ EvtScript N(takeTurn_8021E788) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/area_kmr_part_3/actor/spiked_goomba.c b/src/battle/area_kmr_part_3/actor/spiked_goomba.c index 931cda0470..a309a0e43b 100644 --- a/src/battle/area_kmr_part_3/actor/spiked_goomba.c +++ b/src/battle/area_kmr_part_3/actor/spiked_goomba.c @@ -67,8 +67,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021A39C), .escapeChance = 90, .airLiftChance = 95, - .spookChance = 90, - .baseStatusChance = 100, + .hurricaneChance = 90, + .spookChance = 100, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, @@ -295,7 +295,7 @@ EvtScript N(handleEvent_8021A854) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn_8021B19C) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -333,7 +333,7 @@ EvtScript N(takeTurn_8021B19C) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -409,7 +409,7 @@ EvtScript N(takeTurn_8021B19C) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/area_kmr_part_3/actor/spiked_para_jr_troopa.c b/src/battle/area_kmr_part_3/actor/spiked_para_jr_troopa.c index 575cd9949f..adb3b38dbf 100644 --- a/src/battle/area_kmr_part_3/actor/spiked_para_jr_troopa.c +++ b/src/battle/area_kmr_part_3/actor/spiked_para_jr_troopa.c @@ -99,8 +99,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80227F68), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/area_kpa/actor/bony_beetle.c b/src/battle/area_kpa/actor/bony_beetle.c index 1cd1dcbe7c..3574659741 100644 --- a/src/battle/area_kpa/actor/bony_beetle.c +++ b/src/battle/area_kpa/actor/bony_beetle.c @@ -147,8 +147,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 50, .airLiftChance = 70, + .hurricaneChance = 60, .spookChance = 60, - .baseStatusChance = 60, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/area_kpa/actor/dry_bones.c b/src/battle/area_kpa/actor/dry_bones.c index fbc1e17e44..5ac9b29585 100644 --- a/src/battle/area_kpa/actor/dry_bones.c +++ b/src/battle/area_kpa/actor/dry_bones.c @@ -138,8 +138,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 50, .airLiftChance = 75, - .spookChance = 70, - .baseStatusChance = 10, + .hurricaneChance = 70, + .spookChance = 10, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 95, diff --git a/src/battle/area_kpa2/actor/bowser.c b/src/battle/area_kpa2/actor/bowser.c index 73ba847bb8..ee36fdbc53 100644 --- a/src/battle/area_kpa2/actor/bowser.c +++ b/src/battle/area_kpa2/actor/bowser.c @@ -97,8 +97,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 65, diff --git a/src/battle/area_kpa2/actor/bowser_intro.c b/src/battle/area_kpa2/actor/bowser_intro.c index 0b0c7bf194..395a218467 100644 --- a/src/battle/area_kpa2/actor/bowser_intro.c +++ b/src/battle/area_kpa2/actor/bowser_intro.c @@ -129,8 +129,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, diff --git a/src/battle/area_kpa2/actor/bowser_phase_1.c b/src/battle/area_kpa2/actor/bowser_phase_1.c index b02653c9c9..4acd043ab3 100644 --- a/src/battle/area_kpa2/actor/bowser_phase_1.c +++ b/src/battle/area_kpa2/actor/bowser_phase_1.c @@ -143,8 +143,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 65, diff --git a/src/battle/area_kpa2/actor/bowser_phase_2.c b/src/battle/area_kpa2/actor/bowser_phase_2.c index d9b8143b52..7ac4b7824f 100644 --- a/src/battle/area_kpa2/actor/bowser_phase_2.c +++ b/src/battle/area_kpa2/actor/bowser_phase_2.c @@ -141,8 +141,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 50, diff --git a/src/battle/area_kpa2/actor/bowser_phase_3.c b/src/battle/area_kpa2/actor/bowser_phase_3.c index 8eb8d272a5..102b241b62 100644 --- a/src/battle/area_kpa2/actor/bowser_phase_3.c +++ b/src/battle/area_kpa2/actor/bowser_phase_3.c @@ -144,8 +144,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 60, diff --git a/src/battle/area_kpa3/actor/anti_guy.c b/src/battle/area_kpa3/actor/anti_guy.c index 5cee344d19..cbd1a93582 100644 --- a/src/battle/area_kpa3/actor/anti_guy.c +++ b/src/battle/area_kpa3/actor/anti_guy.c @@ -68,8 +68,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/area_kpa4/actor/bombshell_bill.c b/src/battle/area_kpa4/actor/bombshell_bill.c index 0d57ede4e9..5c8ea60471 100644 --- a/src/battle/area_kpa4/actor/bombshell_bill.c +++ b/src/battle/area_kpa4/actor/bombshell_bill.c @@ -71,8 +71,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 40, .airLiftChance = 100, - .spookChance = 95, - .baseStatusChance = 0, + .hurricaneChance = 95, + .spookChance = 0, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_kpa4/actor/bombshell_bill_blaster.c b/src/battle/area_kpa4/actor/bombshell_bill_blaster.c index b626a97a9b..50b920141b 100644 --- a/src/battle/area_kpa4/actor/bombshell_bill_blaster.c +++ b/src/battle/area_kpa4/actor/bombshell_bill_blaster.c @@ -74,8 +74,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 15, - .spookChance = 10, - .baseStatusChance = 0, + .hurricaneChance = 10, + .spookChance = 0, .upAndAwayChance = 95, .spinSmashReq = 4, .powerBounceChance = 100, diff --git a/src/battle/area_kzn/actor/lava_bubble.c b/src/battle/area_kzn/actor/lava_bubble.c index 34ad2334cc..e3e75c6786 100644 --- a/src/battle/area_kzn/actor/lava_bubble.c +++ b/src/battle/area_kzn/actor/lava_bubble.c @@ -125,8 +125,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80218E3C), .escapeChance = 50, .airLiftChance = 90, - .spookChance = 85, - .baseStatusChance = 50, + .hurricaneChance = 85, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_kzn2/actor/lava_bud.c b/src/battle/area_kzn2/actor/lava_bud.c index daf1655181..da3d6cd706 100644 --- a/src/battle/area_kzn2/actor/lava_bud.c +++ b/src/battle/area_kzn2/actor/lava_bud.c @@ -150,8 +150,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, diff --git a/src/battle/area_kzn2/actor/lava_piranha.c b/src/battle/area_kzn2/actor/lava_piranha.c index 8c66df1050..2ed54cd8e1 100644 --- a/src/battle/area_kzn2/actor/lava_piranha.c +++ b/src/battle/area_kzn2/actor/lava_piranha.c @@ -255,8 +255,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 70, diff --git a/src/battle/area_kzn2/actor/petit_piranha.c b/src/battle/area_kzn2/actor/petit_piranha.c index 825f59a2be..81651a5878 100644 --- a/src/battle/area_kzn2/actor/petit_piranha.c +++ b/src/battle/area_kzn2/actor/petit_piranha.c @@ -87,8 +87,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_kzn2/actor/petit_piranha_bomb.c b/src/battle/area_kzn2/actor/petit_piranha_bomb.c index ee21ea683c..37ded5db61 100644 --- a/src/battle/area_kzn2/actor/petit_piranha_bomb.c +++ b/src/battle/area_kzn2/actor/petit_piranha_bomb.c @@ -85,8 +85,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_mac/actor/chan.c b/src/battle/area_mac/actor/chan.c index 29beb31d83..5f18076746 100644 --- a/src/battle/area_mac/actor/chan.c +++ b/src/battle/area_mac/actor/chan.c @@ -72,8 +72,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80219D78), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_mac/actor/lee.c b/src/battle/area_mac/actor/lee.c index 70b1e45ea4..31d4d41e86 100644 --- a/src/battle/area_mac/actor/lee.c +++ b/src/battle/area_mac/actor/lee.c @@ -94,8 +94,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021D3D0), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, @@ -522,8 +522,8 @@ ActorBlueprint N(goombario) = { .statusTable = N(statusTable_8021E9A4), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, @@ -1157,8 +1157,8 @@ ActorBlueprint N(kooper) = { .statusTable = N(statusTable_802205F0), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, @@ -1669,8 +1669,8 @@ ActorBlueprint N(bombette) = { .statusTable = N(statusTable_802222E8), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, @@ -2035,8 +2035,8 @@ ActorBlueprint N(parakarry) = { .statusTable = N(statusTable_802233E0), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, @@ -2397,8 +2397,8 @@ ActorBlueprint N(bow) = { .statusTable = N(statusTable_80224468), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, @@ -2849,8 +2849,8 @@ ActorBlueprint N(watt) = { .statusTable = N(statusTable_802259D4), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, @@ -3315,8 +3315,8 @@ ActorBlueprint N(sushie) = { .statusTable = N(statusTable_802269D4), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, @@ -3807,8 +3807,8 @@ ActorBlueprint N(lakilester) = { .statusTable = N(statusTable_80228470), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/area_mac/actor/master1.c b/src/battle/area_mac/actor/master1.c index 40d56ad610..499afd34b0 100644 --- a/src/battle/area_mac/actor/master1.c +++ b/src/battle/area_mac/actor/master1.c @@ -77,8 +77,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8022A2B8), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_mac/actor/master2.c b/src/battle/area_mac/actor/master2.c index 74231c1aa9..3234b9b0f8 100644 --- a/src/battle/area_mac/actor/master2.c +++ b/src/battle/area_mac/actor/master2.c @@ -90,8 +90,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8022B6E4), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/area_mac/actor/master3.c b/src/battle/area_mac/actor/master3.c index b81f7dfce9..0cb33cf262 100644 --- a/src/battle/area_mac/actor/master3.c +++ b/src/battle/area_mac/actor/master3.c @@ -102,8 +102,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8022DA44), .escapeChance = 100, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 70, diff --git a/src/battle/area_mim/actor/forest_fuzzy.c b/src/battle/area_mim/actor/forest_fuzzy.c index 5f371a9a3d..5b1221f5a7 100644 --- a/src/battle/area_mim/actor/forest_fuzzy.c +++ b/src/battle/area_mim/actor/forest_fuzzy.c @@ -69,8 +69,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_802183CC), .escapeChance = 40, .airLiftChance = 90, - .spookChance = 90, - .baseStatusChance = 85, + .hurricaneChance = 90, + .spookChance = 85, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_mim/actor/piranha_plant.c b/src/battle/area_mim/actor/piranha_plant.c index 652f269f11..c471db85d8 100644 --- a/src/battle/area_mim/actor/piranha_plant.c +++ b/src/battle/area_mim/actor/piranha_plant.c @@ -90,8 +90,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021D3A0), .escapeChance = 70, .airLiftChance = 20, - .spookChance = 20, - .baseStatusChance = 40, + .hurricaneChance = 20, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/area_nok/actor/kent_c_koopa.c b/src/battle/area_nok/actor/kent_c_koopa.c index 77fb7d4b57..7c248948de 100644 --- a/src/battle/area_nok/actor/kent_c_koopa.c +++ b/src/battle/area_nok/actor/kent_c_koopa.c @@ -202,8 +202,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80227A08), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 70, diff --git a/src/battle/area_omo/actor/anti_guy.c b/src/battle/area_omo/actor/anti_guy.c index bfcfc042f6..bfafef2f22 100644 --- a/src/battle/area_omo/actor/anti_guy.c +++ b/src/battle/area_omo/actor/anti_guy.c @@ -68,8 +68,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8022191C), .escapeChance = 50, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/area_omo/actor/blue_shy_guy.c b/src/battle/area_omo/actor/blue_shy_guy.c index b2a1eac96f..1321364504 100644 --- a/src/battle/area_omo/actor/blue_shy_guy.c +++ b/src/battle/area_omo/actor/blue_shy_guy.c @@ -69,8 +69,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021AD24), .escapeChance = 60, .airLiftChance = 85, + .hurricaneChance = 80, .spookChance = 80, - .baseStatusChance = 80, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_omo/actor/green_shy_guy.c b/src/battle/area_omo/actor/green_shy_guy.c index 17c24dca4a..f0cdfcc1d4 100644 --- a/src/battle/area_omo/actor/green_shy_guy.c +++ b/src/battle/area_omo/actor/green_shy_guy.c @@ -69,8 +69,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021FE24), .escapeChance = 60, .airLiftChance = 85, + .hurricaneChance = 80, .spookChance = 80, - .baseStatusChance = 80, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_omo/actor/groove_guy.c b/src/battle/area_omo/actor/groove_guy.c index 1a1ada80a2..7fcdbe6b22 100644 --- a/src/battle/area_omo/actor/groove_guy.c +++ b/src/battle/area_omo/actor/groove_guy.c @@ -93,8 +93,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80224A40), .escapeChance = 50, .airLiftChance = 85, - .spookChance = 80, - .baseStatusChance = 70, + .hurricaneChance = 80, + .spookChance = 70, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_omo/actor/pink_shy_guy.c b/src/battle/area_omo/actor/pink_shy_guy.c index 0594ef3583..8e5c4ce8f2 100644 --- a/src/battle/area_omo/actor/pink_shy_guy.c +++ b/src/battle/area_omo/actor/pink_shy_guy.c @@ -69,8 +69,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021E324), .escapeChance = 60, .airLiftChance = 85, + .hurricaneChance = 80, .spookChance = 80, - .baseStatusChance = 80, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_omo/actor/pyro_guy.c b/src/battle/area_omo/actor/pyro_guy.c index 70ebd66642..b1f5ea1224 100644 --- a/src/battle/area_omo/actor/pyro_guy.c +++ b/src/battle/area_omo/actor/pyro_guy.c @@ -87,8 +87,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8022CB88), .escapeChance = 60, .airLiftChance = 85, - .spookChance = 80, - .baseStatusChance = 60, + .hurricaneChance = 80, + .spookChance = 60, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_omo/actor/sky_guy.c b/src/battle/area_omo/actor/sky_guy.c index 915ba858be..dc5e84f28d 100644 --- a/src/battle/area_omo/actor/sky_guy.c +++ b/src/battle/area_omo/actor/sky_guy.c @@ -227,8 +227,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80229624), .escapeChance = 50, .airLiftChance = 90, - .spookChance = 90, - .baseStatusChance = 80, + .hurricaneChance = 90, + .spookChance = 80, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/area_omo/actor/spy_guy.c b/src/battle/area_omo/actor/spy_guy.c index 4553fc7373..7020255282 100644 --- a/src/battle/area_omo/actor/spy_guy.c +++ b/src/battle/area_omo/actor/spy_guy.c @@ -113,8 +113,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_802274B8), .escapeChance = 50, .airLiftChance = 85, - .spookChance = 80, - .baseStatusChance = 60, + .hurricaneChance = 80, + .spookChance = 60, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_omo/actor/yellow_shy_guy.c b/src/battle/area_omo/actor/yellow_shy_guy.c index 3ad062f779..926b07df43 100644 --- a/src/battle/area_omo/actor/yellow_shy_guy.c +++ b/src/battle/area_omo/actor/yellow_shy_guy.c @@ -69,8 +69,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021C824), .escapeChance = 60, .airLiftChance = 85, + .hurricaneChance = 80, .spookChance = 80, - .baseStatusChance = 80, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_omo2/actor/general_guy.c b/src/battle/area_omo2/actor/general_guy.c index 2398936c3c..7ea4bf82de 100644 --- a/src/battle/area_omo2/actor/general_guy.c +++ b/src/battle/area_omo2/actor/general_guy.c @@ -96,8 +96,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 75, diff --git a/src/battle/area_omo2/actor/light_bulb.c b/src/battle/area_omo2/actor/light_bulb.c index dd35c37519..09c05039ec 100644 --- a/src/battle/area_omo2/actor/light_bulb.c +++ b/src/battle/area_omo2/actor/light_bulb.c @@ -87,8 +87,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, diff --git a/src/battle/area_omo2/actor/toy_tank.c b/src/battle/area_omo2/actor/toy_tank.c index bc0c3fbb26..24f366a776 100644 --- a/src/battle/area_omo2/actor/toy_tank.c +++ b/src/battle/area_omo2/actor/toy_tank.c @@ -149,8 +149,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 75, diff --git a/src/battle/area_omo2_1/actor/shy_squad.c b/src/battle/area_omo2_1/actor/shy_squad.c index 69c661bfbc..22e994a580 100644 --- a/src/battle/area_omo2_1/actor/shy_squad.c +++ b/src/battle/area_omo2_1/actor/shy_squad.c @@ -299,8 +299,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, diff --git a/src/battle/area_omo2_2/actor/stilt_guy.c b/src/battle/area_omo2_2/actor/stilt_guy.c index 7daecb44ea..d5d794cc95 100644 --- a/src/battle/area_omo2_2/actor/stilt_guy.c +++ b/src/battle/area_omo2_2/actor/stilt_guy.c @@ -231,8 +231,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_omo2_3/actor/shy_stack.c b/src/battle/area_omo2_3/actor/shy_stack.c index 6a12483744..ecb5b45851 100644 --- a/src/battle/area_omo2_3/actor/shy_stack.c +++ b/src/battle/area_omo2_3/actor/shy_stack.c @@ -260,8 +260,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/area_omo2_4/actor/signal_guy.c b/src/battle/area_omo2_4/actor/signal_guy.c index 1f2fee7313..bdb7da066b 100644 --- a/src/battle/area_omo2_4/actor/signal_guy.c +++ b/src/battle/area_omo2_4/actor/signal_guy.c @@ -70,8 +70,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, diff --git a/src/battle/area_omo2_5/actor/shy_squad_dup.c b/src/battle/area_omo2_5/actor/shy_squad_dup.c index 3953c7d604..0c2ebcfb14 100644 --- a/src/battle/area_omo2_5/actor/shy_squad_dup.c +++ b/src/battle/area_omo2_5/actor/shy_squad_dup.c @@ -275,8 +275,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, diff --git a/src/battle/area_omo2_6/actor/shy_guy_dup.c b/src/battle/area_omo2_6/actor/shy_guy_dup.c index 5b538c2460..a8c6efcec1 100644 --- a/src/battle/area_omo2_6/actor/shy_guy_dup.c +++ b/src/battle/area_omo2_6/actor/shy_guy_dup.c @@ -173,8 +173,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, diff --git a/src/battle/area_omo3/actor/big_lantern_ghost.c b/src/battle/area_omo3/actor/big_lantern_ghost.c index 505cc7ded0..6fd9435fce 100644 --- a/src/battle/area_omo3/actor/big_lantern_ghost.c +++ b/src/battle/area_omo3/actor/big_lantern_ghost.c @@ -118,8 +118,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 75, diff --git a/src/battle/area_pra/actor/albino_dino.c b/src/battle/area_pra/actor/albino_dino.c index c86d77e770..a969f92cac 100644 --- a/src/battle/area_pra/actor/albino_dino.c +++ b/src/battle/area_pra/actor/albino_dino.c @@ -82,8 +82,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 40, .airLiftChance = 15, - .spookChance = 10, - .baseStatusChance = 25, + .hurricaneChance = 10, + .spookChance = 25, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_pra2/actor/crystal_bit.c b/src/battle/area_pra2/actor/crystal_bit.c index 5a852e393a..5e79c2088a 100644 --- a/src/battle/area_pra2/actor/crystal_bit.c +++ b/src/battle/area_pra2/actor/crystal_bit.c @@ -157,8 +157,8 @@ ActorBlueprint N(1) = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, @@ -180,8 +180,8 @@ ActorBlueprint N(2) = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, @@ -203,8 +203,8 @@ ActorBlueprint N(3) = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/area_pra2/actor/crystal_king.c b/src/battle/area_pra2/actor/crystal_king.c index 9d434734a7..74b28aaf78 100644 --- a/src/battle/area_pra2/actor/crystal_king.c +++ b/src/battle/area_pra2/actor/crystal_king.c @@ -123,8 +123,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 70, @@ -171,12 +171,12 @@ ApiStatus func_80218280_6609D0(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; EffectInstance* effect = (EffectInstance*) evt_get_variable(script, *args); - effect->data.huffPuffBreath->unk_18 = 0xF8; - effect->data.huffPuffBreath->unk_1C = 0xF8; - effect->data.huffPuffBreath->unk_20 = 0xFF; - effect->data.huffPuffBreath->unk_28 = 0x80; - effect->data.huffPuffBreath->unk_2C = 0xE0; - ((HuffPuffBreathFXData*)effect->data.huffPuffBreath)->unk_30 = 0xFF; + effect->data.huffPuffBreath->primR = 0xF8; + effect->data.huffPuffBreath->primG = 0xF8; + effect->data.huffPuffBreath->primB = 0xFF; + effect->data.huffPuffBreath->envR = 0x80; + effect->data.huffPuffBreath->envG = 0xE0; + ((HuffPuffBreathFXData*)effect->data.huffPuffBreath)->envB = 0xFF; return ApiStatus_DONE2; } @@ -1202,8 +1202,8 @@ ActorBlueprint N(clone) = { .statusTable = N(clone_statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 0, diff --git a/src/battle/area_sam/actor/frost_piranha.c b/src/battle/area_sam/actor/frost_piranha.c index 98d15de6ab..8adb451fb8 100644 --- a/src/battle/area_sam/actor/frost_piranha.c +++ b/src/battle/area_sam/actor/frost_piranha.c @@ -85,8 +85,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 70, .airLiftChance = 20, + .hurricaneChance = 20, .spookChance = 20, - .baseStatusChance = 20, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/area_sam/actor/gulpit.c b/src/battle/area_sam/actor/gulpit.c index 478412abe0..4801ce958f 100644 --- a/src/battle/area_sam/actor/gulpit.c +++ b/src/battle/area_sam/actor/gulpit.c @@ -117,8 +117,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 60, .airLiftChance = 50, - .spookChance = 50, - .baseStatusChance = 70, + .hurricaneChance = 50, + .spookChance = 70, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_sam/actor/gulpit_rocks.c b/src/battle/area_sam/actor/gulpit_rocks.c index 907963a17e..f75f25fbd9 100644 --- a/src/battle/area_sam/actor/gulpit_rocks.c +++ b/src/battle/area_sam/actor/gulpit_rocks.c @@ -78,8 +78,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 100, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_sam2/actor/monstar.c b/src/battle/area_sam2/actor/monstar.c index 68c2c26c3a..369dfb2a52 100644 --- a/src/battle/area_sam2/actor/monstar.c +++ b/src/battle/area_sam2/actor/monstar.c @@ -91,8 +91,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 90, diff --git a/src/battle/area_tik/actor/dark_koopa.c b/src/battle/area_tik/actor/dark_koopa.c index d8c202c51a..42f5b910d8 100644 --- a/src/battle/area_tik/actor/dark_koopa.c +++ b/src/battle/area_tik/actor/dark_koopa.c @@ -79,8 +79,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 60, .airLiftChance = 85, - .spookChance = 75, - .baseStatusChance = 70, + .hurricaneChance = 75, + .spookChance = 70, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/area_tik/actor/dark_paratroopa.c b/src/battle/area_tik/actor/dark_paratroopa.c index b629a71432..44eaba1c1f 100644 --- a/src/battle/area_tik/actor/dark_paratroopa.c +++ b/src/battle/area_tik/actor/dark_paratroopa.c @@ -144,8 +144,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 50, .airLiftChance = 90, - .spookChance = 80, - .baseStatusChance = 70, + .hurricaneChance = 80, + .spookChance = 70, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_tik/actor/gloomba.c b/src/battle/area_tik/actor/gloomba.c index f33f3a617b..627ad2c8b7 100644 --- a/src/battle/area_tik/actor/gloomba.c +++ b/src/battle/area_tik/actor/gloomba.c @@ -69,8 +69,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 70, .airLiftChance = 90, - .spookChance = 85, - .baseStatusChance = 80, + .hurricaneChance = 85, + .spookChance = 80, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, @@ -282,7 +282,7 @@ EvtScript N(handleEvent) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -320,7 +320,7 @@ EvtScript N(takeTurn) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -396,7 +396,7 @@ EvtScript N(takeTurn) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/area_tik/actor/paragloomba.c b/src/battle/area_tik/actor/paragloomba.c index e55be18231..1c86cd0ecc 100644 --- a/src/battle/area_tik/actor/paragloomba.c +++ b/src/battle/area_tik/actor/paragloomba.c @@ -148,8 +148,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 65, .airLiftChance = 95, - .spookChance = 90, - .baseStatusChance = 80, + .hurricaneChance = 90, + .spookChance = 80, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, @@ -756,7 +756,7 @@ EvtScript N(handleEvent_gloomba) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn_gloomba) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -794,7 +794,7 @@ EvtScript N(takeTurn_gloomba) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -870,7 +870,7 @@ EvtScript N(takeTurn_gloomba) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/area_tik/actor/spiked_gloomba.c b/src/battle/area_tik/actor/spiked_gloomba.c index c4e6f5d0fc..3e598bce49 100644 --- a/src/battle/area_tik/actor/spiked_gloomba.c +++ b/src/battle/area_tik/actor/spiked_gloomba.c @@ -70,8 +70,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 65, .airLiftChance = 90, - .spookChance = 85, - .baseStatusChance = 75, + .hurricaneChance = 85, + .spookChance = 75, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, @@ -298,7 +298,7 @@ EvtScript N(handleEvent) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -336,7 +336,7 @@ EvtScript N(takeTurn) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -412,7 +412,7 @@ EvtScript N(takeTurn) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/area_tik2/actor/blooper.c b/src/battle/area_tik2/actor/blooper.c index c86a8d623e..b78f47169a 100644 --- a/src/battle/area_tik2/actor/blooper.c +++ b/src/battle/area_tik2/actor/blooper.c @@ -192,8 +192,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 90, diff --git a/src/battle/area_tik2/actor/blooper_baby.c b/src/battle/area_tik2/actor/blooper_baby.c index 07e8430300..10ff2c407f 100644 --- a/src/battle/area_tik2/actor/blooper_baby.c +++ b/src/battle/area_tik2/actor/blooper_baby.c @@ -192,8 +192,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 95, diff --git a/src/battle/area_tik2/actor/electro_blooper.c b/src/battle/area_tik2/actor/electro_blooper.c index 0e14fdc1c5..7ec4be2a20 100644 --- a/src/battle/area_tik2/actor/electro_blooper.c +++ b/src/battle/area_tik2/actor/electro_blooper.c @@ -223,8 +223,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 85, diff --git a/src/battle/area_tik2/actor/super_blooper.c b/src/battle/area_tik2/actor/super_blooper.c index 6bf1fd7372..654f3dc6ba 100644 --- a/src/battle/area_tik2/actor/super_blooper.c +++ b/src/battle/area_tik2/actor/super_blooper.c @@ -227,8 +227,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 75, diff --git a/src/battle/area_trd_part_1/actor/bill_blaster.c b/src/battle/area_trd_part_1/actor/bill_blaster.c index 97c680407e..b403027071 100644 --- a/src/battle/area_trd_part_1/actor/bill_blaster.c +++ b/src/battle/area_trd_part_1/actor/bill_blaster.c @@ -79,8 +79,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80219D2C), .escapeChance = 0, .airLiftChance = 20, - .spookChance = 15, - .baseStatusChance = 0, + .hurricaneChance = 15, + .spookChance = 0, .upAndAwayChance = 95, .spinSmashReq = 4, .powerBounceChance = 100, diff --git a/src/battle/area_trd_part_1/actor/bob_omb.c b/src/battle/area_trd_part_1/actor/bob_omb.c index 4b0c52f629..f2a97e6e1c 100644 --- a/src/battle/area_trd_part_1/actor/bob_omb.c +++ b/src/battle/area_trd_part_1/actor/bob_omb.c @@ -115,8 +115,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021A5B4), .escapeChance = 70, .airLiftChance = 90, + .hurricaneChance = 90, .spookChance = 90, - .baseStatusChance = 90, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/area_trd_part_1/actor/bullet_bill.c b/src/battle/area_trd_part_1/actor/bullet_bill.c index f75b935cd3..4432df2699 100644 --- a/src/battle/area_trd_part_1/actor/bullet_bill.c +++ b/src/battle/area_trd_part_1/actor/bullet_bill.c @@ -65,8 +65,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80218F6C), .escapeChance = 50, .airLiftChance = 100, - .spookChance = 100, - .baseStatusChance = 0, + .hurricaneChance = 100, + .spookChance = 0, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_trd_part_2/actor/blue_ninja_koopa.c b/src/battle/area_trd_part_2/actor/blue_ninja_koopa.c index 4bed9e6d35..9cc059b1f0 100644 --- a/src/battle/area_trd_part_2/actor/blue_ninja_koopa.c +++ b/src/battle/area_trd_part_2/actor/blue_ninja_koopa.c @@ -74,8 +74,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8022B4B8), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_trd_part_2/actor/fake_bowser.c b/src/battle/area_trd_part_2/actor/fake_bowser.c index 420df9a321..e37cffedca 100644 --- a/src/battle/area_trd_part_2/actor/fake_bowser.c +++ b/src/battle/area_trd_part_2/actor/fake_bowser.c @@ -218,8 +218,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021A690), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 90, diff --git a/src/battle/area_trd_part_2/actor/green_ninja_koopa.c b/src/battle/area_trd_part_2/actor/green_ninja_koopa.c index 00b556d3c7..c453420e34 100644 --- a/src/battle/area_trd_part_2/actor/green_ninja_koopa.c +++ b/src/battle/area_trd_part_2/actor/green_ninja_koopa.c @@ -74,8 +74,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80225578), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_trd_part_2/actor/red_ninja_koopa.c b/src/battle/area_trd_part_2/actor/red_ninja_koopa.c index e9722e29cc..e1bbeb4cd7 100644 --- a/src/battle/area_trd_part_2/actor/red_ninja_koopa.c +++ b/src/battle/area_trd_part_2/actor/red_ninja_koopa.c @@ -74,8 +74,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80228518), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_trd_part_2/actor/yellow_ninja_koopa.c b/src/battle/area_trd_part_2/actor/yellow_ninja_koopa.c index f69f39fcba..61724b41f1 100644 --- a/src/battle/area_trd_part_2/actor/yellow_ninja_koopa.c +++ b/src/battle/area_trd_part_2/actor/yellow_ninja_koopa.c @@ -74,8 +74,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8022E458), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/area_trd_part_3/actor/eldstar.c b/src/battle/area_trd_part_3/actor/eldstar.c index 0469ad0371..e4f2d734c5 100644 --- a/src/battle/area_trd_part_3/actor/eldstar.c +++ b/src/battle/area_trd_part_3/actor/eldstar.c @@ -75,8 +75,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80218298), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/battle.h b/src/battle/battle.h index dc0693f2c0..fcd5e0fd4e 100644 --- a/src/battle/battle.h +++ b/src/battle/battle.h @@ -296,8 +296,8 @@ typedef struct ActorBlueprint { /* 0x14 */ s32* statusTable; /* 0x18 */ u8 escapeChance; /* 0x19 */ u8 airLiftChance; - /* 0x1A */ u8 spookChance; - /* 0x1B */ u8 baseStatusChance; + /* 0x1A */ u8 hurricaneChance; + /* 0x1B */ u8 spookChance; /* 0x1C */ u8 upAndAwayChance; /* 0x1D */ u8 spinSmashReq; /* 0x1E */ u8 powerBounceChance; diff --git a/src/battle/common/actor/bandit.inc.c b/src/battle/common/actor/bandit.inc.c index 53f80312bb..c7f5f1fcd4 100644 --- a/src/battle/common/actor/bandit.inc.c +++ b/src/battle/common/actor/bandit.inc.c @@ -127,8 +127,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 40, .airLiftChance = 90, + .hurricaneChance = 90, .spookChance = 90, - .baseStatusChance = 90, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, @@ -150,8 +150,8 @@ ActorBlueprint N(coin) = { .statusTable = N(statusTable), .escapeChance = 40, .airLiftChance = 90, + .hurricaneChance = 90, .spookChance = 90, - .baseStatusChance = 90, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/common/actor/buzzy_beetle.inc.c b/src/battle/common/actor/buzzy_beetle.inc.c index 5b94f63e70..2656cbd697 100644 --- a/src/battle/common/actor/buzzy_beetle.inc.c +++ b/src/battle/common/actor/buzzy_beetle.inc.c @@ -76,8 +76,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 60, .airLiftChance = 75, + .hurricaneChance = 75, .spookChance = 75, - .baseStatusChance = 75, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/bzzap.inc.c b/src/battle/common/actor/bzzap.inc.c index 7783bdb025..44431f8526 100644 --- a/src/battle/common/actor/bzzap.inc.c +++ b/src/battle/common/actor/bzzap.inc.c @@ -143,8 +143,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 40, .airLiftChance = 95, - .spookChance = 95, - .baseStatusChance = 70, + .hurricaneChance = 95, + .spookChance = 70, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/clubba.inc.c b/src/battle/common/actor/clubba.inc.c index b513689b78..4ec8635561 100644 --- a/src/battle/common/actor/clubba.inc.c +++ b/src/battle/common/actor/clubba.inc.c @@ -78,8 +78,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 60, .airLiftChance = 60, + .hurricaneChance = 70, .spookChance = 70, - .baseStatusChance = 70, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/common/actor/duplighost.inc.c b/src/battle/common/actor/duplighost.inc.c index f3060b2412..4c7d87755f 100644 --- a/src/battle/common/actor/duplighost.inc.c +++ b/src/battle/common/actor/duplighost.inc.c @@ -90,8 +90,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 50, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 50, + .hurricaneChance = 70, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/ember.inc.c b/src/battle/common/actor/ember.inc.c index 9908fcabce..d92c6fca8f 100644 --- a/src/battle/common/actor/ember.inc.c +++ b/src/battle/common/actor/ember.inc.c @@ -120,8 +120,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021ACD4), .escapeChance = 60, .airLiftChance = 80, - .spookChance = 75, - .baseStatusChance = 50, + .hurricaneChance = 75, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/common/actor/fuzzy.inc.c b/src/battle/common/actor/fuzzy.inc.c index 3f0fbeff91..f9568d1991 100644 --- a/src/battle/common/actor/fuzzy.inc.c +++ b/src/battle/common/actor/fuzzy.inc.c @@ -64,8 +64,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 50, .airLiftChance = 95, + .hurricaneChance = 95, .spookChance = 95, - .baseStatusChance = 95, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/common/actor/ghost_bombette.inc.c b/src/battle/common/actor/ghost_bombette.inc.c index 0eabe942b3..60ef2e20c2 100644 --- a/src/battle/common/actor/ghost_bombette.inc.c +++ b/src/battle/common/actor/ghost_bombette.inc.c @@ -75,8 +75,8 @@ ActorBlueprint N(bombette) = { .statusTable = N(bombette_statusTable), .escapeChance = 50, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 50, + .hurricaneChance = 70, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/ghost_bow.inc.c b/src/battle/common/actor/ghost_bow.inc.c index 5e6ef5e69d..a4b717e397 100644 --- a/src/battle/common/actor/ghost_bow.inc.c +++ b/src/battle/common/actor/ghost_bow.inc.c @@ -88,8 +88,8 @@ ActorBlueprint N(bow) = { .statusTable = N(bow_statusTable), .escapeChance = 50, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 50, + .hurricaneChance = 70, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/ghost_goombario.inc.c b/src/battle/common/actor/ghost_goombario.inc.c index 84e80a9e5c..88d9683e15 100644 --- a/src/battle/common/actor/ghost_goombario.inc.c +++ b/src/battle/common/actor/ghost_goombario.inc.c @@ -97,8 +97,8 @@ ActorBlueprint N(goombario) = { .statusTable = N(goombario_statusTable), .escapeChance = 50, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 50, + .hurricaneChance = 70, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/ghost_kooper.inc.c b/src/battle/common/actor/ghost_kooper.inc.c index 102f1181d8..008298a87c 100644 --- a/src/battle/common/actor/ghost_kooper.inc.c +++ b/src/battle/common/actor/ghost_kooper.inc.c @@ -93,8 +93,8 @@ ActorBlueprint N(kooper) = { .statusTable = N(kooper_statusTable), .escapeChance = 50, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 50, + .hurricaneChance = 70, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/ghost_lakilester.inc.c b/src/battle/common/actor/ghost_lakilester.inc.c index 4e31e0fd0f..47047fbaf0 100644 --- a/src/battle/common/actor/ghost_lakilester.inc.c +++ b/src/battle/common/actor/ghost_lakilester.inc.c @@ -93,8 +93,8 @@ ActorBlueprint N(lakilester) = { .statusTable = N(lakilester_statusTable), .escapeChance = 50, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 50, + .hurricaneChance = 70, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/ghost_parakarry.inc.c b/src/battle/common/actor/ghost_parakarry.inc.c index ea7a31fee5..0dfd53b2e7 100644 --- a/src/battle/common/actor/ghost_parakarry.inc.c +++ b/src/battle/common/actor/ghost_parakarry.inc.c @@ -88,8 +88,8 @@ ActorBlueprint N(parakarry) = { .statusTable = N(parakarry_statusTable), .escapeChance = 50, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 50, + .hurricaneChance = 70, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/ghost_sushie.inc.c b/src/battle/common/actor/ghost_sushie.inc.c index 3d46af7ff7..1686b45d68 100644 --- a/src/battle/common/actor/ghost_sushie.inc.c +++ b/src/battle/common/actor/ghost_sushie.inc.c @@ -75,8 +75,8 @@ ActorBlueprint N(sushie) = { .statusTable = N(sushie_statusTable), .escapeChance = 50, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 50, + .hurricaneChance = 70, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/ghost_watt.inc.c b/src/battle/common/actor/ghost_watt.inc.c index a8433ed674..f22c5339fe 100644 --- a/src/battle/common/actor/ghost_watt.inc.c +++ b/src/battle/common/actor/ghost_watt.inc.c @@ -224,8 +224,8 @@ ActorBlueprint N(watt) = { .statusTable = N(watt_statusTable), .escapeChance = 50, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 50, + .hurricaneChance = 70, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/goomba.inc.c b/src/battle/common/actor/goomba.inc.c index ac2abe225b..48b5c0c4c4 100644 --- a/src/battle/common/actor/goomba.inc.c +++ b/src/battle/common/actor/goomba.inc.c @@ -62,8 +62,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 90, .airLiftChance = 100, - .spookChance = 90, - .baseStatusChance = 100, + .hurricaneChance = 90, + .spookChance = 100, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, @@ -279,7 +279,7 @@ EvtScript N(handleEvent) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -317,7 +317,7 @@ EvtScript N(takeTurn) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -393,7 +393,7 @@ EvtScript N(takeTurn) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/common/actor/gray_magikoopa.inc.c b/src/battle/common/actor/gray_magikoopa.inc.c index 85e01a7ef1..071a6abc28 100644 --- a/src/battle/common/actor/gray_magikoopa.inc.c +++ b/src/battle/common/actor/gray_magikoopa.inc.c @@ -144,8 +144,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 40, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 40, + .hurricaneChance = 70, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 75, @@ -167,8 +167,8 @@ ActorBlueprint N(flying) = { .statusTable = N(statusTable_flying), .escapeChance = 40, .airLiftChance = 95, - .spookChance = 75, - .baseStatusChance = 40, + .hurricaneChance = 75, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/common/actor/green_magikoopa.inc.c b/src/battle/common/actor/green_magikoopa.inc.c index a291f26ec0..3ee4721e93 100644 --- a/src/battle/common/actor/green_magikoopa.inc.c +++ b/src/battle/common/actor/green_magikoopa.inc.c @@ -146,8 +146,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 40, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 40, + .hurricaneChance = 70, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 75, @@ -169,8 +169,8 @@ ActorBlueprint N(flying) = { .statusTable = N(statusTable_flying), .escapeChance = 40, .airLiftChance = 95, - .spookChance = 75, - .baseStatusChance = 40, + .hurricaneChance = 75, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/common/actor/hammer_bro.inc.c b/src/battle/common/actor/hammer_bro.inc.c index 23572382fb..1196530d01 100644 --- a/src/battle/common/actor/hammer_bro.inc.c +++ b/src/battle/common/actor/hammer_bro.inc.c @@ -148,8 +148,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 30, .airLiftChance = 75, - .spookChance = 60, - .baseStatusChance = 40, + .hurricaneChance = 60, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/common/actor/koopa_troopa.inc.c b/src/battle/common/actor/koopa_troopa.inc.c index 39a9f96276..022e6b8949 100644 --- a/src/battle/common/actor/koopa_troopa.inc.c +++ b/src/battle/common/actor/koopa_troopa.inc.c @@ -72,8 +72,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 70, .airLiftChance = 90, + .hurricaneChance = 90, .spookChance = 90, - .baseStatusChance = 90, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/common/actor/koopatrol.inc.c b/src/battle/common/actor/koopatrol.inc.c index 4765189ded..b682987f95 100644 --- a/src/battle/common/actor/koopatrol.inc.c +++ b/src/battle/common/actor/koopatrol.inc.c @@ -167,8 +167,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 50, .airLiftChance = 75, - .spookChance = 65, - .baseStatusChance = 60, + .hurricaneChance = 65, + .spookChance = 60, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 85, diff --git a/src/battle/common/actor/magikoopa.inc.c b/src/battle/common/actor/magikoopa.inc.c index 1fd87791cc..0003c7252e 100644 --- a/src/battle/common/actor/magikoopa.inc.c +++ b/src/battle/common/actor/magikoopa.inc.c @@ -172,8 +172,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 40, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 40, + .hurricaneChance = 70, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, @@ -195,8 +195,8 @@ ActorBlueprint N(flying) = { .statusTable = N(statusTable_flying), .escapeChance = 40, .airLiftChance = 85, - .spookChance = 75, - .baseStatusChance = 40, + .hurricaneChance = 75, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, @@ -1359,8 +1359,8 @@ ActorBlueprint N(clone) = { .statusTable = N(statusTable_clone), .escapeChance = 40, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 75, @@ -1382,8 +1382,8 @@ ActorBlueprint N(clone_flying) = { .statusTable = N(statusTable_clone_flying), .escapeChance = 40, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 75, diff --git a/src/battle/common/actor/medi_guy.inc.c b/src/battle/common/actor/medi_guy.inc.c index 849b93ca1a..c263899fde 100644 --- a/src/battle/common/actor/medi_guy.inc.c +++ b/src/battle/common/actor/medi_guy.inc.c @@ -84,8 +84,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 60, .airLiftChance = 90, - .spookChance = 95, - .baseStatusChance = 70, + .hurricaneChance = 95, + .spookChance = 70, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/monty_mole.inc.c b/src/battle/common/actor/monty_mole.inc.c index 77039ef570..8ed4f81daa 100644 --- a/src/battle/common/actor/monty_mole.inc.c +++ b/src/battle/common/actor/monty_mole.inc.c @@ -90,8 +90,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 80, .airLiftChance = 70, - .spookChance = 50, - .baseStatusChance = 85, + .hurricaneChance = 50, + .spookChance = 85, .upAndAwayChance = 95, .spinSmashReq = 4, .powerBounceChance = 100, @@ -166,8 +166,8 @@ ActorBlueprint N(hole) = { .statusTable = NULL, .escapeChance = 80, .airLiftChance = 0, + .hurricaneChance = 80, .spookChance = 80, - .baseStatusChance = 80, .upAndAwayChance = 90, .spinSmashReq = 4, .powerBounceChance = 90, diff --git a/src/battle/common/actor/paragoomba.inc.c b/src/battle/common/actor/paragoomba.inc.c index b2d093a6d5..da50f94f6b 100644 --- a/src/battle/common/actor/paragoomba.inc.c +++ b/src/battle/common/actor/paragoomba.inc.c @@ -133,8 +133,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021B1D4), .escapeChance = 90, .airLiftChance = 100, + .hurricaneChance = 100, .spookChance = 100, - .baseStatusChance = 100, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, @@ -756,7 +756,7 @@ EvtScript N(handleEvent_8021CEBC) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn_8021D6E8) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -794,7 +794,7 @@ EvtScript N(takeTurn_8021D6E8) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -870,7 +870,7 @@ EvtScript N(takeTurn_8021D6E8) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/common/actor/paratroopa.inc.c b/src/battle/common/actor/paratroopa.inc.c index c0ea893278..329e48d961 100644 --- a/src/battle/common/actor/paratroopa.inc.c +++ b/src/battle/common/actor/paratroopa.inc.c @@ -130,8 +130,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021EBC0), .escapeChance = 60, .airLiftChance = 95, - .spookChance = 100, - .baseStatusChance = 90, + .hurricaneChance = 100, + .spookChance = 90, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/pokey.inc.c b/src/battle/common/actor/pokey.inc.c index 6294c85ccf..c4ed7cb773 100644 --- a/src/battle/common/actor/pokey.inc.c +++ b/src/battle/common/actor/pokey.inc.c @@ -148,8 +148,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 70, .airLiftChance = 90, - .spookChance = 85, - .baseStatusChance = 70, + .hurricaneChance = 85, + .spookChance = 70, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/common/actor/putrid_piranha.inc.c b/src/battle/common/actor/putrid_piranha.inc.c index 33bc8706d6..e75ab5df70 100644 --- a/src/battle/common/actor/putrid_piranha.inc.c +++ b/src/battle/common/actor/putrid_piranha.inc.c @@ -81,8 +81,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021B100), .escapeChance = 60, .airLiftChance = 20, - .spookChance = 20, - .baseStatusChance = 30, + .hurricaneChance = 20, + .spookChance = 30, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 95, diff --git a/src/battle/common/actor/red_magikoopa.inc.c b/src/battle/common/actor/red_magikoopa.inc.c index c175b284a1..01f3e6c9a0 100644 --- a/src/battle/common/actor/red_magikoopa.inc.c +++ b/src/battle/common/actor/red_magikoopa.inc.c @@ -144,8 +144,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 40, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 40, + .hurricaneChance = 70, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, @@ -167,8 +167,8 @@ ActorBlueprint N(flying) = { .statusTable = N(statusTable_flying), .escapeChance = 40, .airLiftChance = 95, - .spookChance = 75, - .baseStatusChance = 40, + .hurricaneChance = 75, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/common/actor/red_shy_guy.inc.c b/src/battle/common/actor/red_shy_guy.inc.c index 4a8a63ca0e..9d4575fb04 100644 --- a/src/battle/common/actor/red_shy_guy.inc.c +++ b/src/battle/common/actor/red_shy_guy.inc.c @@ -67,8 +67,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 60, .airLiftChance = 85, + .hurricaneChance = 80, .spookChance = 80, - .baseStatusChance = 80, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, diff --git a/src/battle/common/actor/slot_machine.inc.c b/src/battle/common/actor/slot_machine.inc.c index 66628a69ad..0e630a52a9 100644 --- a/src/battle/common/actor/slot_machine.inc.c +++ b/src/battle/common/actor/slot_machine.inc.c @@ -69,8 +69,8 @@ ActorBlueprint N(slot_machine_stop) = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 0, @@ -92,8 +92,8 @@ ActorBlueprint N(slot_machine_start) = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 0, .powerBounceChance = 0, diff --git a/src/battle/common/actor/spike_top.inc.c b/src/battle/common/actor/spike_top.inc.c index a8bf1196ca..cba35cf69f 100644 --- a/src/battle/common/actor/spike_top.inc.c +++ b/src/battle/common/actor/spike_top.inc.c @@ -75,8 +75,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 60, .airLiftChance = 70, - .spookChance = 65, - .baseStatusChance = 60, + .hurricaneChance = 65, + .spookChance = 60, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/spiked_goomba.inc.c b/src/battle/common/actor/spiked_goomba.inc.c index 7471c7e92c..bcbd23bf44 100644 --- a/src/battle/common/actor/spiked_goomba.inc.c +++ b/src/battle/common/actor/spiked_goomba.inc.c @@ -63,8 +63,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_8021E3BC), .escapeChance = 90, .airLiftChance = 95, - .spookChance = 90, - .baseStatusChance = 100, + .hurricaneChance = 90, + .spookChance = 100, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 100, @@ -295,7 +295,7 @@ EvtScript N(handleEvent_8021E874) = { EVT_END }; -#include "common/anglestuff.inc.c" +#include "common/CalculateArcsinDeg.inc.c" EvtScript N(takeTurn_8021F1BC) = { EVT_CALL(UseIdleAnimation, ACTOR_SELF, FALSE) @@ -333,7 +333,7 @@ EvtScript N(takeTurn_8021F1BC) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) @@ -409,7 +409,7 @@ EvtScript N(takeTurn_8021F1BC) = { EVT_SET(LVar0, 0) EVT_LOOP(16) EVT_CALL(GetActorPos, ACTOR_SELF, LVar4, LVar5, LVar6) - EVT_CALL(N(CalculateRotationZ), LVar1, LVar2, LVar4, LVar5, LVar0) + EVT_CALL(N(CalculateArcsinDeg), LVar1, LVar2, LVar4, LVar5, LVar0) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_SET(LVar1, LVar4) EVT_SET(LVar2, LVar5) diff --git a/src/battle/common/actor/spiny.inc.c b/src/battle/common/actor/spiny.inc.c index 2d74239a8c..4c4ec14ddf 100644 --- a/src/battle/common/actor/spiny.inc.c +++ b/src/battle/common/actor/spiny.inc.c @@ -116,8 +116,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 60, .airLiftChance = 75, - .spookChance = 75, - .baseStatusChance = 60, + .hurricaneChance = 75, + .spookChance = 60, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 90, diff --git a/src/battle/common/actor/swooper.inc.c b/src/battle/common/actor/swooper.inc.c index c4df87b566..fd28dd01d6 100644 --- a/src/battle/common/actor/swooper.inc.c +++ b/src/battle/common/actor/swooper.inc.c @@ -66,8 +66,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 50, .airLiftChance = 100, - .spookChance = 95, - .baseStatusChance = 90, + .hurricaneChance = 95, + .spookChance = 90, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/common/actor/swoopula.inc.c b/src/battle/common/actor/swoopula.inc.c index ec41eec728..c973a56319 100644 --- a/src/battle/common/actor/swoopula.inc.c +++ b/src/battle/common/actor/swoopula.inc.c @@ -69,8 +69,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 30, .airLiftChance = 95, - .spookChance = 95, - .baseStatusChance = 70, + .hurricaneChance = 95, + .spookChance = 70, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/common/actor/whacka.inc.c b/src/battle/common/actor/whacka.inc.c index f28a72b884..28570c6275 100644 --- a/src/battle/common/actor/whacka.inc.c +++ b/src/battle/common/actor/whacka.inc.c @@ -79,8 +79,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 50, diff --git a/src/battle/common/actor/white_clubba.inc.c b/src/battle/common/actor/white_clubba.inc.c index a2f91ea445..49407482b9 100644 --- a/src/battle/common/actor/white_clubba.inc.c +++ b/src/battle/common/actor/white_clubba.inc.c @@ -80,8 +80,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 50, .airLiftChance = 50, - .spookChance = 60, - .baseStatusChance = 50, + .hurricaneChance = 60, + .spookChance = 50, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/common/actor/white_magikoopa.inc.c b/src/battle/common/actor/white_magikoopa.inc.c index 7e170bbc20..c0babd81b3 100644 --- a/src/battle/common/actor/white_magikoopa.inc.c +++ b/src/battle/common/actor/white_magikoopa.inc.c @@ -139,8 +139,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable_80223B38), .escapeChance = 40, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 40, + .hurricaneChance = 70, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, @@ -162,8 +162,8 @@ ActorBlueprint N(flying) = { .statusTable = N(statusTable_80223BE4), .escapeChance = 40, .airLiftChance = 95, - .spookChance = 75, - .baseStatusChance = 40, + .hurricaneChance = 75, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/common/actor/yellow_magikoopa.inc.c b/src/battle/common/actor/yellow_magikoopa.inc.c index 5bbfc30b5b..e64bab8472 100644 --- a/src/battle/common/actor/yellow_magikoopa.inc.c +++ b/src/battle/common/actor/yellow_magikoopa.inc.c @@ -143,8 +143,8 @@ ActorBlueprint NAMESPACE = { .statusTable = N(statusTable), .escapeChance = 40, .airLiftChance = 80, - .spookChance = 70, - .baseStatusChance = 40, + .hurricaneChance = 70, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, @@ -166,8 +166,8 @@ ActorBlueprint N(flying) = { .statusTable = N(statusTable_flying), .escapeChance = 40, .airLiftChance = 95, - .spookChance = 75, - .baseStatusChance = 40, + .hurricaneChance = 75, + .spookChance = 40, .upAndAwayChance = 95, .spinSmashReq = 0, .powerBounceChance = 80, diff --git a/src/battle/partner/bombette.c b/src/battle/partner/bombette.c index 87bea40f6c..906dd6c66f 100644 --- a/src/battle/partner/bombette.c +++ b/src/battle/partner/bombette.c @@ -8,21 +8,26 @@ #define NAMESPACE battle_partner_bombette -extern EvtScript N(init_80238780); -extern EvtScript N(takeTurn_80239AB8); -extern EvtScript N(idle_802387E0); -extern EvtScript N(handleEvent_802387F0); -extern EvtScript N(nextTurn_80239E7C); -extern EvtScript N(80239B64); -extern EvtScript N(80239BC0); -extern EvtScript N(8023C990); -extern EvtScript N(80239D08); -extern EvtScript N(80239D8C); -extern EvtScript N(80239DC8); -extern EvtScript N(8023A5F8); -extern EvtScript N(8023B228); +extern EvtScript N(init); +extern EvtScript N(takeTurn); +extern EvtScript N(idle); +extern EvtScript N(handleEvent); +extern EvtScript N(nextTurn); +extern EvtScript N(celebrate); +extern EvtScript N(executeAction); +extern EvtScript N(firstStrikeBodySlam); +extern EvtScript N(firstStrike); +extern EvtScript N(runAway); +extern EvtScript N(runAwayFail); +extern EvtScript N(bodySlam); +extern EvtScript N(bomb); -ApiStatus func_80238000_6FAD10(Evt* script, s32 isInitialCall) { +enum { + LF_MashEnded = LocalFlag(0), + LF_MashStarted = LocalFlag(2), +}; + +ApiStatus N(PlayExplosionFX)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Bytecode* args = script->ptrReadPos; s32 x = evt_get_variable(script, *args++); @@ -35,40 +40,40 @@ ApiStatus func_80238000_6FAD10(Evt* script, s32 isInitialCall) { selectedMoveID = battleStatus->selectedMoveID; switch (selectedMoveID) { - case 146: + case MOVE_BOMB: if (script->varTable[10] > 0) { fx_explosion(1, x, y + 20, z); } else { fx_explosion(0, x, y + 20, z); } - sfx_play_sound(8214); + sfx_play_sound(SOUND_CANNON1); break; - case 147: + case MOVE_POWER_BOMB: if (script->varTable[10] > 0) { fx_explosion(1, x, y + 20, z); } else { fx_explosion(0, x, y + 20, z); } - sfx_play_sound(8215); + sfx_play_sound(SOUND_CANNON2); break; - case 148: + case MOVE_MEGA_BOMB: if (script->varTable[10] > 0) { fx_explosion(2, x, y + 20, z); } else { fx_explosion(1, x, y + 20, z); } - sfx_play_sound(8215); + sfx_play_sound(SOUND_CANNON2); break; default: fx_explosion(0, x, y + 20, z); - sfx_play_sound(8214); + sfx_play_sound(SOUND_CANNON1); break; } return ApiStatus_DONE2; } -ApiStatus func_80238244_6FAF54(Evt* script, s32 isInitialCall) { +ApiStatus N(SlowDown)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; ActorState* partnerActorMovement = &partnerActor->state; @@ -102,150 +107,150 @@ ApiStatus func_80238244_6FAF54(Evt* script, s32 isInitialCall) { return ApiStatus_BLOCK; } -ApiStatus func_80238358_6FB068(Evt* script, s32 isInitialCall) { +ApiStatus N(GetBombDamage)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; - s32 var0 = evt_get_variable(script, *args++); - s32 var1 = 0; + s32 mashResult = evt_get_variable(script, *args++); + s32 damage = 0; switch (partnerActor->actorBlueprint->level) { case 0: - if (var0 < 36) { - var1 = 1; - } else if (var0 < 61) { - var1 = 2; - } else if (var0 < 81) { - var1 = 3; - } else if (var0 < 100) { - var1 = 4; + if (mashResult <= 35) { + damage = 1; + } else if (mashResult <= 60) { + damage = 2; + } else if (mashResult <= 80) { + damage = 3; + } else if (mashResult <= 99) { + damage = 4; } else { - var1 = 5; + damage = 5; } break; case 1: - if (var0 < 36) { - var1 = 1; - } else if (var0 < 61) { - var1 = 3; - } else if (var0 < 81) { - var1 = 4; - } else if (var0 < 100) { - var1 = 5; + if (mashResult <= 35) { + damage = 1; + } else if (mashResult <= 60) { + damage = 3; + } else if (mashResult <= 80) { + damage = 4; + } else if (mashResult <= 99) { + damage = 5; } else { - var1 = 6; + damage = 6; } break; case 2: - if (var0 < 36) { - var1 = 1; - } else if (var0 < 61) { - var1 = 3; - } else if (var0 < 81) { - var1 = 5; - } else if (var0 < 100) { - var1 = 6; + if (mashResult <= 35) { + damage = 1; + } else if (mashResult <= 60) { + damage = 3; + } else if (mashResult <= 80) { + damage = 5; + } else if (mashResult <= 99) { + damage = 6; } else { - var1 = 7; + damage = 7; } break; } - if (!(var0 < 100)) { + if (!(mashResult < 100)) { script->varTable[0] = 1; } else { script->varTable[0] = 0; } - script->varTable[15] = var1; + script->varTable[15] = damage; return ApiStatus_DONE2; } -ApiStatus func_8023849C_6FB1AC(Evt* script, s32 isInitialCall) { +ApiStatus N(GetPowerBombDamage)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; - s32 var0 = evt_get_variable(script, *args++); - s32 var1 = 0; + s32 mashResult = evt_get_variable(script, *args++); + s32 damage = 0; switch (partnerActor->actorBlueprint->level) { case 1: - if (var0 < 36) { - var1 = 1; - } else if (var0 < 61) { - var1 = 3; - } else if (var0 < 81) { - var1 = 4; - } else if (var0 < 100) { - var1 = 5; + if (mashResult <= 35) { + damage = 1; + } else if (mashResult <= 60) { + damage = 3; + } else if (mashResult <= 80) { + damage = 4; + } else if (mashResult <= 99) { + damage = 5; } else { - var1 = 6; + damage = 6; } break; case 2: - if (var0 < 36) { - var1 = 1; - } else if (var0 < 61) { - var1 = 3; - } else if (var0 < 81) { - var1 = 5; - } else if (var0 < 100) { - var1 = 6; + if (mashResult <= 35) { + damage = 1; + } else if (mashResult <= 60) { + damage = 3; + } else if (mashResult <= 80) { + damage = 5; + } else if (mashResult <= 99) { + damage = 6; } else { - var1 = 7; + damage = 7; } } - if (!(var0 < 100)) { + if (!(mashResult < 100)) { script->varTable[0] = 1; } else { script->varTable[0] = 0; } - script->varTable[15] = var1; + script->varTable[15] = damage; return ApiStatus_DONE2; } -ApiStatus func_80238590_6FB2A0(Evt* script, s32 isInitialCall) { +ApiStatus N(GetMegaBombDamage)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; - s32 var0 = evt_get_variable(script, *args++); - s32 var1 = 0; + s32 mashResult = evt_get_variable(script, *args++); + s32 damage = 0; switch (partnerActor->actorBlueprint->level) { case 2: - if (var0 < 36) { - var1 = 1; - } else if (var0 < 61) { - var1 = 3; - } else if (var0 < 81) { - var1 = 5; - } else if (var0 < 100) { - var1 = 6; + if (mashResult <= 35) { + damage = 1; + } else if (mashResult <= 60) { + damage = 3; + } else if (mashResult <= 80) { + damage = 5; + } else if (mashResult <= 99) { + damage = 6; } else { - var1 = 7; + damage = 7; } break; } - if (!(var0 < 100)) { + if (!(mashResult < 100)) { script->varTable[0] = TRUE; } else { script->varTable[0] = FALSE; } - script->varTable[15] = var1; + script->varTable[15] = damage; return ApiStatus_DONE2; } -s32 N(idleAnimations_80238640)[] = { +s32 N(idleAnimations)[] = { STATUS_NORMAL, ANIM_BattleBombette_Walk, STATUS_STONE, ANIM_BattleBombette_Still, STATUS_SLEEP, ANIM_BattleBombette_Sleep, @@ -256,12 +261,12 @@ s32 N(idleAnimations_80238640)[] = { STATUS_END, }; -s32 N(defenseTable_8023867C)[] = { +s32 N(defenseTable)[] = { ELEMENT_NORMAL, 0, ELEMENT_END, }; -s32 N(statusTable_80238688)[] = { +s32 N(statusTable)[] = { STATUS_NORMAL, 100, STATUS_DEFAULT, 100, STATUS_SLEEP, 100, @@ -286,15 +291,15 @@ s32 N(statusTable_80238688)[] = { STATUS_END, }; -ActorPartBlueprint N(partsTable_80238734)[] = { +ActorPartBlueprint N(parts)[] = { { .flags = 0, .index = 1, .posOffset = { 0, 0, 0 }, .targetOffset = { 9, 20 }, .opacity = 255, - .idleAnimations = N(idleAnimations_80238640), - .defenseTable = N(defenseTable_8023867C), + .idleAnimations = N(idleAnimations), + .defenseTable = N(defenseTable), .eventFlags = ACTOR_EVENT_FLAG_0, .elementImmunityFlags = 0, .unk_1C = 0, @@ -306,14 +311,14 @@ ActorBlueprint NAMESPACE = { .type = ACTOR_TYPE_BOMBETTE, .level = 0, .maxHP = 99, - .partCount = ARRAY_COUNT(N(partsTable_80238734)), - .partsData = N(partsTable_80238734), - .script = &N(init_80238780), - .statusTable = N(statusTable_80238688), + .partCount = ARRAY_COUNT(N(parts)), + .partsData = N(parts), + .script = &N(init), + .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, @@ -324,24 +329,24 @@ ActorBlueprint NAMESPACE = { .statusMessageOffset = { 10, 20 }, }; -EvtScript N(init_80238780) = { - EVT_CALL(BindTakeTurn, ACTOR_PARTNER, EVT_PTR(N(takeTurn_80239AB8))) - EVT_CALL(BindIdle, ACTOR_PARTNER, EVT_PTR(N(idle_802387E0))) - EVT_CALL(BindHandleEvent, ACTOR_PARTNER, EVT_PTR(N(handleEvent_802387F0))) - EVT_CALL(BindNextTurn, ACTOR_PARTNER, EVT_PTR(N(nextTurn_80239E7C))) +EvtScript N(init) = { + EVT_CALL(BindTakeTurn, ACTOR_PARTNER, EVT_PTR(N(takeTurn))) + EVT_CALL(BindIdle, ACTOR_PARTNER, EVT_PTR(N(idle))) + EVT_CALL(BindHandleEvent, ACTOR_PARTNER, EVT_PTR(N(handleEvent))) + EVT_CALL(BindNextTurn, ACTOR_PARTNER, EVT_PTR(N(nextTurn))) EVT_RETURN EVT_END }; -EvtScript N(idle_802387E0) = { +EvtScript N(idle) = { EVT_RETURN EVT_END }; -EvtScript N(handleEvent_802387F0) = { +EvtScript N(handleEvent) = { EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) EVT_CALL(CloseActionCommandInfo) - EVT_CALL(StopSound, 647) + EVT_CALL(StopSound, SOUND_287) EVT_CALL(GetLastEvent, ACTOR_PARTNER, LVar0) EVT_SWITCH(LVar0) EVT_CASE_OR_EQ(EVENT_HIT_COMBO) @@ -350,7 +355,7 @@ EvtScript N(handleEvent_802387F0) = { EVT_SET_CONST(LVar2, ANIM_BattleBombette_Backfire2) EVT_EXEC_WAIT(D_802977BC) EVT_SET_CONST(LVar1, ANIM_BattleBombette_Hurt) - EVT_EXEC_WAIT(D_80296014) + EVT_EXEC_WAIT(DoPartnerHit) EVT_END_CASE_GROUP EVT_CASE_OR_EQ(EVENT_UNKNOWN_TRIGGER) EVT_CASE_OR_EQ(EVENT_IMMUNE) @@ -365,14 +370,14 @@ EvtScript N(handleEvent_802387F0) = { EVT_SET_CONST(LVar3, ANIM_BattleBombette_Injured) EVT_EXEC_WAIT(D_80295350) EVT_SET_CONST(LVar1, ANIM_BattleBombette_Hurt) - EVT_EXEC_WAIT(D_80296014) + EVT_EXEC_WAIT(DoPartnerHit) EVT_CASE_EQ(EVENT_BURN_HIT) EVT_SET_CONST(LVar1, ANIM_BattleBombette_BurnHurt) EVT_SET_CONST(LVar2, ANIM_BattleBombette_BurnStill) - EVT_EXEC_WAIT(D_8029621C) + EVT_EXEC_WAIT(DoPartnerBurn) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_SET(LVarA, 0) - EVT_CALL(func_80238000_6FAD10, LVar0, LVar1, LVar2) + EVT_CALL(N(PlayExplosionFX), LVar0, LVar1, LVar2) EVT_THREAD EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(0.5)) EVT_CALL(ShakeCam, 1, 0, 5, EVT_FLOAT(2.0)) @@ -418,7 +423,7 @@ EvtScript N(handleEvent_802387F0) = { EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_CALL(JumpToGoal, ACTOR_PARTNER, 5, FALSE, TRUE, FALSE) EVT_SET_CONST(LVar1, ANIM_BattleBombette_Hurt) - EVT_EXEC_WAIT(D_80296014) + EVT_EXEC_WAIT(DoPartnerHit) EVT_CASE_EQ(EVENT_BURN_CONTACT) EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0) EVT_CALL(SetActorDispOffset, ACTOR_SELF, 0, 0, 0) @@ -433,11 +438,11 @@ EvtScript N(handleEvent_802387F0) = { EVT_CALL(JumpToGoal, ACTOR_PARTNER, 5, FALSE, TRUE, FALSE) EVT_SET_CONST(LVar1, ANIM_BattleBombette_BurnHurt) EVT_SET_CONST(LVar2, ANIM_BattleBombette_BurnStill) - EVT_EXEC_WAIT(D_8029621C) + EVT_EXEC_WAIT(DoPartnerBurn) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_SET(LVarA, 0) - EVT_CALL(func_80238000_6FAD10, LVar0, LVar1, LVar2) + EVT_CALL(N(PlayExplosionFX), LVar0, LVar1, LVar2) EVT_THREAD EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(0.5)) EVT_CALL(ShakeCam, 1, 0, 5, EVT_FLOAT(2.0)) @@ -483,7 +488,7 @@ EvtScript N(handleEvent_802387F0) = { EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_CALL(JumpToGoal, ACTOR_PARTNER, 5, FALSE, TRUE, FALSE) EVT_SET_CONST(LVar1, ANIM_BattleBombette_Hurt) - EVT_EXEC_WAIT(D_80296014) + EVT_EXEC_WAIT(DoPartnerHit) EVT_CASE_EQ(EVENT_SHOCK_HIT) EVT_SET_CONST(LVar1, ANIM_BattleBombette_Hurt) EVT_SET(LVar2, 15) @@ -503,7 +508,7 @@ EvtScript N(handleEvent_802387F0) = { EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, LVarA, LVarA, LVarA) EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_CALL(JumpToGoal, ACTOR_PARTNER, 5, FALSE, FALSE, FALSE) - EVT_CALL(ShowShockEffect, -127) + EVT_CALL(ShowShockEffect, ACTOR_SELF) EVT_SET(LVar1, LVarA) EVT_SET(LVar2, 0) EVT_EXEC_WAIT(D_802977BC) @@ -512,7 +517,7 @@ EvtScript N(handleEvent_802387F0) = { EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_SET(LVarA, 0) - EVT_CALL(func_80238000_6FAD10, LVar0, LVar1, LVar2) + EVT_CALL(N(PlayExplosionFX), LVar0, LVar1, LVar2) EVT_THREAD EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(0.5)) EVT_CALL(ShakeCam, 1, 0, 5, EVT_FLOAT(2.0)) @@ -558,10 +563,10 @@ EvtScript N(handleEvent_802387F0) = { EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_CALL(JumpToGoal, ACTOR_PARTNER, 5, FALSE, TRUE, FALSE) EVT_SET_CONST(LVar1, ANIM_BattleBombette_Hurt) - EVT_EXEC_WAIT(D_80296014) + EVT_EXEC_WAIT(DoPartnerHit) EVT_CASE_EQ(EVENT_33) EVT_SET_CONST(LVar1, ANIM_BattleBombette_Hurt) - EVT_EXEC_WAIT(D_80296014) + EVT_EXEC_WAIT(DoPartnerHit) EVT_CASE_EQ(EVENT_RECOVER_PARTNER) EVT_SET_CONST(LVar0, 1) EVT_SET_CONST(LVar1, ANIM_BattleBombette_Idle) @@ -583,25 +588,25 @@ EvtScript N(handleEvent_802387F0) = { EVT_END }; -EvtScript N(takeTurn_80239AB8) = { +EvtScript N(takeTurn) = { EVT_CALL(GetBattlePhase, LVar0) EVT_SWITCH(LVar0) EVT_CASE_EQ(PHASE_FIRST_STRIKE) - EVT_EXEC_WAIT(N(80239D08)) + EVT_EXEC_WAIT(N(firstStrike)) EVT_CASE_EQ(PHASE_EXECUTE_ACTION) - EVT_EXEC_WAIT(N(80239BC0)) + EVT_EXEC_WAIT(N(executeAction)) EVT_CASE_EQ(PHASE_5) - EVT_EXEC_WAIT(N(80239B64)) + EVT_EXEC_WAIT(N(celebrate)) EVT_CASE_EQ(PHASE_RUN_AWAY_START) - EVT_EXEC_WAIT(N(80239D8C)) + EVT_EXEC_WAIT(N(runAway)) EVT_CASE_EQ(PHASE_RUN_AWAY_FAIL) - EVT_EXEC_WAIT(N(80239DC8)) + EVT_EXEC_WAIT(N(runAwayFail)) EVT_END_SWITCH EVT_RETURN EVT_END }; -EvtScript N(80239B64) = { +EvtScript N(celebrate) = { EVT_SET_CONST(LVar0, 1) EVT_SET_CONST(LVar1, ANIM_BattleBombette_CelebrateLoop) EVT_SET_CONST(LVar2, ANIM_BattleBombette_Celebrate) @@ -611,7 +616,7 @@ EvtScript N(80239B64) = { EVT_END }; -EvtScript N(80239BC0) = { +EvtScript N(executeAction) = { EVT_CALL(func_802694A4, 1) EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) @@ -623,46 +628,46 @@ EvtScript N(80239BC0) = { EVT_END_SWITCH EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(143) - EVT_EXEC_WAIT(N(8023A5F8)) - EVT_CASE_EQ(144) - EVT_EXEC_WAIT(N(8023A5F8)) - EVT_CASE_EQ(145) - EVT_EXEC_WAIT(N(8023A5F8)) - EVT_CASE_EQ(146) - EVT_EXEC_WAIT(N(8023B228)) - EVT_CASE_EQ(147) - EVT_EXEC_WAIT(N(8023B228)) - EVT_CASE_EQ(148) - EVT_EXEC_WAIT(N(8023B228)) + EVT_CASE_EQ(MOVE_BODY_SLAM1) + EVT_EXEC_WAIT(N(bodySlam)) + EVT_CASE_EQ(MOVE_BODY_SLAM2) + EVT_EXEC_WAIT(N(bodySlam)) + EVT_CASE_EQ(MOVE_BODY_SLAM3) + EVT_EXEC_WAIT(N(bodySlam)) + EVT_CASE_EQ(MOVE_BOMB) + EVT_EXEC_WAIT(N(bomb)) + EVT_CASE_EQ(MOVE_POWER_BOMB) + EVT_EXEC_WAIT(N(bomb)) + EVT_CASE_EQ(MOVE_MEGA_BOMB) + EVT_EXEC_WAIT(N(bomb)) EVT_END_SWITCH EVT_RETURN EVT_END }; -EvtScript N(80239D08) = { +EvtScript N(firstStrike) = { EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(143) - EVT_EXEC_WAIT(N(8023C990)) - EVT_CASE_EQ(144) - EVT_EXEC_WAIT(N(8023C990)) - EVT_CASE_EQ(145) - EVT_EXEC_WAIT(N(8023C990)) + EVT_CASE_EQ(MOVE_BODY_SLAM1) + EVT_EXEC_WAIT(N(firstStrikeBodySlam)) + EVT_CASE_EQ(MOVE_BODY_SLAM2) + EVT_EXEC_WAIT(N(firstStrikeBodySlam)) + EVT_CASE_EQ(MOVE_BODY_SLAM3) + EVT_EXEC_WAIT(N(firstStrikeBodySlam)) EVT_END_SWITCH EVT_RETURN EVT_END }; -EvtScript N(80239D8C) = { +EvtScript N(runAway) = { EVT_SET_CONST(LVar0, 1) EVT_SET_CONST(LVar1, ANIM_BattleBombette_Run) - EVT_EXEC_WAIT(D_80294AFC) + EVT_EXEC_WAIT(DoPartnerRunAway) EVT_RETURN EVT_END }; -EvtScript N(80239DC8) = { +EvtScript N(runAwayFail) = { EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) EVT_CALL(SetGoalToHome, ACTOR_PARTNER) EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) @@ -675,13 +680,13 @@ EvtScript N(80239DC8) = { EVT_END }; -EvtScript N(nextTurn_80239E7C) = { +EvtScript N(nextTurn) = { EVT_RETURN EVT_END }; -EvtScript N(80239E8C) = { - EVT_CALL(func_80280818) +EvtScript N(returnHome2) = { + EVT_CALL(PartnerYieldTurn) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) EVT_CALL(MoveBattleCamOver, 10) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBombette_Backfire2) @@ -722,8 +727,8 @@ EvtScript N(80239E8C) = { EVT_END }; -EvtScript N(8023A1AC) = { - EVT_CALL(func_80280818) +EvtScript N(returnHome) = { + EVT_CALL(PartnerYieldTurn) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBombette_Backfire2) EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) @@ -763,14 +768,14 @@ EvtScript N(8023A1AC) = { EVT_END }; -EvtScript N(8023A4BC) = { +EvtScript N(runToTarget) = { EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBombette_Run) EVT_CALL(RunToGoal, ACTOR_PARTNER, 35) EVT_RETURN EVT_END }; -EvtScript N(8023A4F8) = { +EvtScript N(animBrace) = { EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBombette_Brace) EVT_LOOP(15) EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, EVT_FLOAT(0.5), 0, 0) @@ -782,7 +787,7 @@ EvtScript N(8023A4F8) = { EVT_END }; -EvtScript N(8023A584) = { +EvtScript N(animHold) = { EVT_LOOP(15) EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, EVT_FLOAT(0.5), 0, 0) EVT_WAIT(1) @@ -793,7 +798,7 @@ EvtScript N(8023A584) = { EVT_END }; -EvtScript N(8023A5F8) = { +EvtScript N(bodySlam) = { EVT_CALL(LoadActionCommand, ACTION_COMMAND_BODY_SLAM) EVT_CALL(action_command_body_slam_CreateHudElements) EVT_CALL(SetupMashMeter, 1, 100, 0, 0, 0, 0) @@ -802,117 +807,117 @@ EvtScript N(8023A5F8) = { EVT_CALL(InitTargetIterator) EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(AddGoalPos, ACTOR_PARTNER, -40, 0, 0) - EVT_SET(LocalFlag(2), 0) + EVT_SET(LF_MashStarted, 0) EVT_LOOP(60) - EVT_CALL(CheckButtonDown, 0x00008000, LVar0) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) EVT_IF_NE(LVar0, FALSE) - EVT_SET(LocalFlag(2), 1) + EVT_SET(LF_MashStarted, 1) EVT_BREAK_LOOP EVT_END_IF EVT_WAIT(1) EVT_END_LOOP EVT_CALL(MoveBattleCamOver, 65) - EVT_IF_EQ(LocalFlag(2), 1) + EVT_IF_EQ(LF_MashStarted, 1) EVT_CALL(action_command_body_slam_MashActionCommandInit, 0, 92, 3, 0) - EVT_SET(LocalFlag(0), 0) - EVT_EXEC_GET_TID(N(8023A4BC), LVarA) + EVT_SET(LF_MashEnded, 0) + EVT_EXEC_GET_TID(N(runToTarget), LVarA) EVT_LOOP(35) - EVT_CALL(CheckButtonDown, 0x00008000, LVar0) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) EVT_IF_EQ(LVar0, FALSE) - EVT_SET(LocalFlag(0), 1) + EVT_SET(LF_MashEnded, 1) EVT_BREAK_LOOP EVT_END_IF EVT_WAIT(1) EVT_END_LOOP - EVT_IF_EQ(LocalFlag(0), 1) + EVT_IF_EQ(LF_MashEnded, 1) EVT_KILL_THREAD(LVarA) EVT_GOTO(10) EVT_END_IF - EVT_SET(LocalFlag(0), 0) - EVT_EXEC_GET_TID(N(8023A4F8), LVarA) + EVT_SET(LF_MashEnded, 0) + EVT_EXEC_GET_TID(N(animBrace), LVarA) EVT_LOOP(30) - EVT_CALL(CheckButtonDown, 0x00008000, LVar0) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) EVT_IF_EQ(LVar0, FALSE) - EVT_SET(LocalFlag(0), 1) + EVT_SET(LF_MashEnded, 1) EVT_BREAK_LOOP EVT_END_IF EVT_WAIT(1) EVT_END_LOOP - EVT_IF_EQ(LocalFlag(0), 1) + EVT_IF_EQ(LF_MashEnded, 1) EVT_KILL_THREAD(LVarA) EVT_GOTO(10) EVT_END_IF - EVT_IF_EQ(LocalFlag(0), 0) - EVT_EXEC_GET_TID(N(8023A584), LVarA) + EVT_IF_EQ(LF_MashEnded, 0) + EVT_EXEC_GET_TID(N(animHold), LVarA) EVT_LOOP(30) - EVT_CALL(CheckButtonDown, 0x00008000, LVar0) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) EVT_IF_EQ(LVar0, FALSE) - EVT_SET(LocalFlag(0), 1) + EVT_SET(LF_MashEnded, 1) EVT_BREAK_LOOP EVT_END_IF EVT_WAIT(1) EVT_END_LOOP - EVT_IF_EQ(LocalFlag(0), 1) + EVT_IF_EQ(LF_MashEnded, 1) EVT_KILL_THREAD(LVarA) EVT_GOTO(10) EVT_END_IF EVT_END_IF EVT_ELSE - EVT_SET(LocalFlag(0), 0) - EVT_EXEC_GET_TID(N(8023A4BC), LVarA) + EVT_SET(LF_MashEnded, 0) + EVT_EXEC_GET_TID(N(runToTarget), LVarA) EVT_LOOP(35) - EVT_CALL(CheckButtonDown, 0x00008000, LVar0) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) EVT_IF_NE(LVar0, FALSE) - EVT_IF_EQ(LocalFlag(2), 0) + EVT_IF_EQ(LF_MashStarted, 0) EVT_CALL(action_command_body_slam_MashActionCommandInit, 0, 92, 3, 0) - EVT_SET(LocalFlag(2), 1) + EVT_SET(LF_MashStarted, 1) EVT_END_IF EVT_END_IF - EVT_IF_EQ(LocalFlag(2), 1) + EVT_IF_EQ(LF_MashStarted, 1) EVT_IF_EQ(LVar0, FALSE) - EVT_SET(LocalFlag(0), 1) + EVT_SET(LF_MashEnded, 1) EVT_BREAK_LOOP EVT_END_IF EVT_END_IF EVT_WAIT(1) EVT_END_LOOP - EVT_IF_EQ(LocalFlag(0), 1) + EVT_IF_EQ(LF_MashEnded, 1) EVT_KILL_THREAD(LVarA) EVT_GOTO(10) EVT_END_IF - EVT_SET(LocalFlag(0), 0) - EVT_EXEC_GET_TID(N(8023A4F8), LVarA) + EVT_SET(LF_MashEnded, 0) + EVT_EXEC_GET_TID(N(animBrace), LVarA) EVT_LOOP(30) - EVT_CALL(CheckButtonDown, 0x00008000, LVar0) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) EVT_IF_NE(LVar0, FALSE) - EVT_IF_EQ(LocalFlag(2), 0) + EVT_IF_EQ(LF_MashStarted, 0) EVT_CALL(action_command_body_slam_MashActionCommandInit, 0, 92, 3, 0) - EVT_SET(LocalFlag(2), 1) + EVT_SET(LF_MashStarted, 1) EVT_END_IF EVT_END_IF - EVT_IF_EQ(LocalFlag(2), 1) + EVT_IF_EQ(LF_MashStarted, 1) EVT_IF_EQ(LVar0, FALSE) - EVT_SET(LocalFlag(0), 1) + EVT_SET(LF_MashEnded, 1) EVT_BREAK_LOOP EVT_END_IF EVT_END_IF EVT_WAIT(1) EVT_END_LOOP - EVT_IF_EQ(LocalFlag(0), 1) + EVT_IF_EQ(LF_MashEnded, 1) EVT_KILL_THREAD(LVarA) EVT_GOTO(10) EVT_END_IF - EVT_IF_EQ(LocalFlag(0), 0) - EVT_EXEC_GET_TID(N(8023A584), LVarA) + EVT_IF_EQ(LF_MashEnded, 0) + EVT_EXEC_GET_TID(N(animHold), LVarA) EVT_LOOP(30) - EVT_CALL(CheckButtonDown, 0x00008000, LVar0) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) EVT_IF_EQ(LVar0, FALSE) - EVT_SET(LocalFlag(0), 1) + EVT_SET(LF_MashEnded, 1) EVT_BREAK_LOOP EVT_END_IF EVT_WAIT(1) EVT_END_LOOP - EVT_IF_EQ(LocalFlag(0), 1) + EVT_IF_EQ(LF_MashEnded, 1) EVT_KILL_THREAD(LVarA) EVT_GOTO(10) EVT_END_IF @@ -922,9 +927,9 @@ EvtScript N(8023A5F8) = { EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 0, 0) EVT_WAIT(2) EVT_CALL(CloseActionCommandInfo) - EVT_CALL(PartnerTestEnemy, LVar0, 0, 149, 0, 1, BS_FLAGS1_10) - EVT_IF_EQ(LVar0, 6) - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x2020) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_2020) EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(AddGoalPos, ACTOR_PARTNER, -10, 0, 0) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBombette_BodySlam) @@ -947,7 +952,7 @@ EvtScript N(8023A5F8) = { EVT_CALL(RunToGoal, ACTOR_PARTNER, 10) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBombette_Idle) EVT_THREAD - EVT_CALL(func_80238244_6FAF54) + EVT_CALL(N(SlowDown)) EVT_END_THREAD EVT_WAIT(20) EVT_CALL(SetGoalToHome, ACTOR_PARTNER) @@ -960,17 +965,17 @@ EvtScript N(8023A5F8) = { EVT_END_IF EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(143) + EVT_CASE_EQ(MOVE_BODY_SLAM1) EVT_SET(LVarE, 1) EVT_SET(LVarF, 2) - EVT_CASE_EQ(144) + EVT_CASE_EQ(MOVE_BODY_SLAM2) EVT_SET(LVarE, 2) EVT_SET(LVarF, 3) - EVT_CASE_EQ(145) + EVT_CASE_EQ(MOVE_BODY_SLAM3) EVT_SET(LVarE, 3) EVT_SET(LVarF, 5) EVT_END_SWITCH - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x2020) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_2020) EVT_CALL(GetActionCommandResult, LVar0) EVT_IF_GT(LVar0, 0) EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) @@ -988,31 +993,31 @@ EvtScript N(8023A5F8) = { EVT_END_IF EVT_SWITCH(LVar0) EVT_CASE_GT(0) - EVT_CALL(PartnerDamageEnemy, LVar0, 0, 1, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_CASE_DEFAULT - EVT_CALL(PartnerDamageEnemy, LVar0, 0, 1, 0, LVarE, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1, 0, LVarE, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_SWITCH EVT_SWITCH(LVar0) - EVT_CASE_OR_EQ(0) - EVT_CASE_OR_EQ(2) - EVT_EXEC_WAIT(N(8023A1AC)) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(returnHome)) EVT_END_CASE_GROUP - EVT_CASE_OR_EQ(1) - EVT_CASE_OR_EQ(3) - EVT_EXEC_WAIT(N(80239E8C)) + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) + EVT_EXEC_WAIT(N(returnHome2)) EVT_END_CASE_GROUP EVT_END_SWITCH EVT_RETURN EVT_END }; -EvtScript N(8023B228) = { +EvtScript N(bomb) = { EVT_CALL(LoadActionCommand, ACTION_COMMAND_BOMB) EVT_CALL(func_802A9000_427A70) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(146) - EVT_CALL(GetActorLevel, 256, LVar0) + EVT_CASE_EQ(MOVE_BOMB) + EVT_CALL(GetActorLevel, ACTOR_PARTNER, LVar0) EVT_SWITCH(LVar0) EVT_CASE_EQ(0) EVT_CALL(SetupMashMeter, 5, 35, 60, 80, 99, 100) @@ -1021,30 +1026,30 @@ EvtScript N(8023B228) = { EVT_CASE_EQ(2) EVT_CALL(SetupMashMeter, 5, 35, 60, 80, 99, 100) EVT_END_SWITCH - EVT_CASE_EQ(147) - EVT_CALL(GetActorLevel, 256, LVar0) + EVT_CASE_EQ(MOVE_POWER_BOMB) + EVT_CALL(GetActorLevel, ACTOR_PARTNER, LVar0) EVT_SWITCH(LVar0) EVT_CASE_EQ(1) EVT_CALL(SetupMashMeter, 5, 35, 60, 80, 99, 100) EVT_CASE_EQ(2) EVT_CALL(SetupMashMeter, 5, 35, 60, 80, 99, 100) EVT_END_SWITCH - EVT_CASE_EQ(148) + EVT_CASE_EQ(MOVE_MEGA_BOMB) EVT_CALL(SetupMashMeter, 5, 35, 60, 80, 99, 100) EVT_END_SWITCH EVT_WAIT(10) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_48) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(146) + EVT_CASE_EQ(MOVE_BOMB) EVT_CALL(InitTargetIterator) EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(AddGoalPos, ACTOR_PARTNER, -20, 0, 0) - EVT_CASE_EQ(147) + EVT_CASE_EQ(MOVE_POWER_BOMB) EVT_CALL(InitTargetIterator) EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(AddGoalPos, ACTOR_PARTNER, -40, 0, 0) - EVT_CASE_EQ(148) + EVT_CASE_EQ(MOVE_MEGA_BOMB) EVT_CALL(InitTargetIterator) EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(AddGoalPos, ACTOR_PARTNER, -40, 0, 0) @@ -1052,24 +1057,24 @@ EvtScript N(8023B228) = { EVT_CALL(MoveBattleCamOver, 60) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(146) + EVT_CASE_EQ(MOVE_BOMB) EVT_CALL(action_command_bomb_MashActionCommandInit, 0, 57, 3, 0) - EVT_CASE_EQ(147) + EVT_CASE_EQ(MOVE_POWER_BOMB) EVT_CALL(action_command_bomb_MashActionCommandInit, 0, 72, 3, 1) - EVT_CASE_EQ(148) + EVT_CASE_EQ(MOVE_MEGA_BOMB) EVT_CALL(action_command_bomb_MashActionCommandInit, 0, 87, 3, 2) EVT_END_SWITCH - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x287) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_287) EVT_CHILD_THREAD EVT_CALL(SetActorVar, ACTOR_SELF, 0, 1) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBombette_RunLit) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(146) + EVT_CASE_EQ(MOVE_BOMB) EVT_SET(LVar0, 45) - EVT_CASE_EQ(147) + EVT_CASE_EQ(MOVE_POWER_BOMB) EVT_SET(LVar0, 50) - EVT_CASE_EQ(148) + EVT_CASE_EQ(MOVE_MEGA_BOMB) EVT_SET(LVar0, 50) EVT_END_SWITCH EVT_CALL(RunToGoal, ACTOR_PARTNER, 45) @@ -1077,26 +1082,26 @@ EvtScript N(8023B228) = { EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0) EVT_END_CHILD_THREAD EVT_SWITCH(LVar2) - EVT_CASE_EQ(146) + EVT_CASE_EQ(MOVE_BOMB) EVT_SET(LVar0, 45) - EVT_CASE_EQ(147) + EVT_CASE_EQ(MOVE_POWER_BOMB) EVT_SET(LVar0, 50) - EVT_CASE_EQ(148) + EVT_CASE_EQ(MOVE_MEGA_BOMB) EVT_SET(LVar0, 50) EVT_END_SWITCH EVT_WAIT(LVar0) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(146) - EVT_CALL(PartnerTestEnemy, LVar0, 0, 16, 0, 1, BS_FLAGS1_10) + EVT_CASE_EQ(MOVE_BOMB) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) EVT_END_SWITCH - EVT_CALL(StopSound, 647) + EVT_CALL(StopSound, SOUND_287) EVT_SWITCH(LVar2) - EVT_CASE_EQ(146) + EVT_CASE_EQ(MOVE_BOMB) EVT_SET(LVar0, 7) - EVT_CASE_EQ(147) + EVT_CASE_EQ(MOVE_POWER_BOMB) EVT_SET(LVar0, 12) - EVT_CASE_EQ(148) + EVT_CASE_EQ(MOVE_MEGA_BOMB) EVT_SET(LVar0, 20) EVT_END_SWITCH EVT_LOOP(LVar0) @@ -1109,14 +1114,14 @@ EvtScript N(8023B228) = { EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) EVT_CALL(MoveBattleCamOver, 8) EVT_CALL(GetActionSuccessCopy, LVar0) - EVT_CALL(func_80238358_6FB068, LVar0) + EVT_CALL(N(GetBombDamage), LVar0) EVT_SET(LVarA, LVar0) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) - EVT_CALL(func_80238000_6FAD10, LVar0, LVar1, LVar2) + EVT_CALL(N(PlayExplosionFX), LVar0, LVar1, LVar2) EVT_THREAD EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(146) + EVT_CASE_EQ(MOVE_BOMB) EVT_IF_GT(LVarA, 0) EVT_CALL(StartRumble, 4) EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(0.75)) @@ -1142,7 +1147,7 @@ EvtScript N(8023B228) = { EVT_CALL(ShakeCam, 1, 0, 3, EVT_FLOAT(0.24)) EVT_CALL(ShakeCam, 1, 0, 4, EVT_FLOAT(0.08)) EVT_END_IF - EVT_CASE_EQ(147) + EVT_CASE_EQ(MOVE_POWER_BOMB) EVT_IF_GT(LVarA, 0) EVT_CALL(StartRumble, 5) EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(0.75)) @@ -1168,7 +1173,7 @@ EvtScript N(8023B228) = { EVT_CALL(ShakeCam, 1, 0, 3, EVT_FLOAT(0.24)) EVT_CALL(ShakeCam, 1, 0, 4, EVT_FLOAT(0.08)) EVT_END_IF - EVT_CASE_EQ(148) + EVT_CASE_EQ(MOVE_MEGA_BOMB) EVT_IF_GT(LVarA, 0) EVT_CALL(StartRumble, 6) EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(1.0)) @@ -1199,8 +1204,8 @@ EvtScript N(8023B228) = { EVT_THREAD EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(146) - EVT_CASE_EQ(147) + EVT_CASE_EQ(MOVE_BOMB) + EVT_CASE_EQ(MOVE_POWER_BOMB) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_WAIT(8) EVT_IF_GT(LVarA, 0) @@ -1208,74 +1213,74 @@ EvtScript N(8023B228) = { EVT_ELSE EVT_CALL(PlayEffect, EFFECT_RED_IMPACT, 1, LVar0, 0, LVar2, 1, 0, 0, 0, 0, 0, 0, 0, 0) EVT_END_IF - EVT_CASE_EQ(148) + EVT_CASE_EQ(MOVE_MEGA_BOMB) EVT_SET(LVarA, 0) EVT_WAIT(10) - EVT_CALL(func_80238000_6FAD10, 88, 33, 5) + EVT_CALL(N(PlayExplosionFX), 88, 33, 5) EVT_WAIT(10) - EVT_CALL(func_80238000_6FAD10, 18, 73, 5) + EVT_CALL(N(PlayExplosionFX), 18, 73, 5) EVT_WAIT(10) - EVT_CALL(func_80238000_6FAD10, 120, 19, 5) + EVT_CALL(N(PlayExplosionFX), 120, 19, 5) EVT_WAIT(10) EVT_END_SWITCH EVT_END_THREAD - EVT_SET(LocalFlag(0), 0) + EVT_SET(LF_MashEnded, 0) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(146) + EVT_CASE_EQ(MOVE_BOMB) EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_CANNON1) - EVT_CALL(PartnerTestEnemy, LVar0, 0, 20, 0, 1, BS_FLAGS1_10) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) EVT_IF_EQ(LVar0, 6) EVT_BREAK_SWITCH EVT_END_IF EVT_CALL(GetActionSuccessCopy, LVar0) - EVT_CALL(func_80238358_6FB068, LVar0) + EVT_CALL(N(GetBombDamage), LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(0) - EVT_CALL(PartnerDamageEnemy, LVar0, 268435968, 0, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) - EVT_SET(LocalFlag(0), 1) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_BLAST | DAMAGE_TYPE_NO_CONTACT, 0, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_SET(LF_MashEnded, 1) EVT_CASE_DEFAULT - EVT_CALL(PartnerDamageEnemy, LVar0, 268435968, 0, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_BLAST | DAMAGE_TYPE_NO_CONTACT, 0, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_SWITCH - EVT_CASE_EQ(147) + EVT_CASE_EQ(MOVE_POWER_BOMB) EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_CANNON1) EVT_LABEL(5) EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) - EVT_CALL(PartnerTestEnemy, LVar0, 0, 20, 0, 1, BS_FLAGS1_10) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) EVT_IF_EQ(LVar0, 6) EVT_GOTO(6) EVT_END_IF EVT_CALL(GetActionSuccessCopy, LVar0) - EVT_CALL(func_8023849C_6FB1AC, LVar0) + EVT_CALL(N(GetPowerBombDamage), LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(0) - EVT_CALL(PartnerDamageEnemy, LVar0, 805306880, 0, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) - EVT_SET(LocalFlag(0), 1) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_BLAST | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, 0, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_SET(LF_MashEnded, 1) EVT_CASE_DEFAULT - EVT_CALL(PartnerDamageEnemy, LVar0, 805306880, 0, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_BLAST | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, 0, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_SWITCH EVT_LABEL(6) EVT_CALL(ChooseNextTarget, 0, LVar0) EVT_IF_NE(LVar0, -1) EVT_GOTO(5) EVT_END_IF - EVT_CASE_EQ(148) + EVT_CASE_EQ(MOVE_MEGA_BOMB) EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_CANNON3) EVT_LABEL(10) EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) - EVT_CALL(PartnerTestEnemy, LVar0, 0, 20, 0, 1, BS_FLAGS1_10) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) EVT_IF_EQ(LVar0, 6) EVT_GOTO(11) EVT_END_IF EVT_CALL(GetActionSuccessCopy, LVar0) - EVT_CALL(func_80238590_6FB2A0, LVar0) + EVT_CALL(N(GetMegaBombDamage), LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(0) - EVT_CALL(PartnerDamageEnemy, LVar0, 805306880, 0, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) - EVT_SET(LocalFlag(0), 1) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_BLAST | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, 0, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_SET(LF_MashEnded, 1) EVT_CASE_DEFAULT - EVT_CALL(PartnerDamageEnemy, LVar0, 805306880, 0, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_BLAST | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, 0, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_SWITCH EVT_LABEL(11) EVT_WAIT(5) @@ -1284,7 +1289,7 @@ EvtScript N(8023B228) = { EVT_GOTO(10) EVT_END_IF EVT_END_SWITCH - EVT_IF_GT(LocalFlag(0), 0) + EVT_IF_GT(LF_MashEnded, 0) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) EVT_CALL(MoveBattleCamOver, 10) EVT_ELSE @@ -1312,7 +1317,7 @@ EvtScript N(8023B228) = { EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_CALL(FlyToGoal, ACTOR_PARTNER, 10, 0, 0) EVT_WAIT(50) - EVT_CALL(func_80280818) + EVT_CALL(PartnerYieldTurn) EVT_CALL(SetGoalToHome, ACTOR_PARTNER) EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_ADD(LVar0, 25) @@ -1330,22 +1335,22 @@ EvtScript N(8023B228) = { EVT_END }; -EvtScript N(8023C990) = { +EvtScript N(firstStrikeBodySlam) = { EVT_CALL(InitTargetIterator) EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(AddGoalPos, ACTOR_PARTNER, -20, 0, 0) EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_SET(LVar1, 0) EVT_CALL(SetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x287) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_287) EVT_CALL(UseBattleCamPresetImmediately, BTL_CAM_PRESET_11) EVT_CALL(BattleCamTargetActor, ACTOR_SELF) EVT_CALL(MoveBattleCamOver, 1) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBombette_AboutToExplode) EVT_WAIT(5) - EVT_CALL(PartnerTestEnemy, LVar0, 0, 16, 0, 1, BS_FLAGS1_10) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) EVT_WAIT(10) - EVT_CALL(StopSound, 647) + EVT_CALL(StopSound, SOUND_287) EVT_LOOP(7) EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, EVT_FLOAT(0.5), 0, 0) EVT_WAIT(1) @@ -1355,7 +1360,7 @@ EvtScript N(8023C990) = { EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 0, 0) EVT_SET(LVarA, 0) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) - EVT_CALL(func_80238000_6FAD10, LVar0, LVar1, LVar2) + EVT_CALL(N(PlayExplosionFX), LVar0, LVar1, LVar2) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) EVT_CALL(MoveBattleCamOver, 8) EVT_THREAD @@ -1372,21 +1377,21 @@ EvtScript N(8023C990) = { EVT_CALL(ShakeCam, 1, 0, 8, EVT_FLOAT(0.15)) EVT_END_THREAD EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_CANNON1) - EVT_CALL(PartnerTestEnemy, LVar0, 0, 20, 0, 1, BS_FLAGS1_10) - EVT_IF_EQ(LVar0, 6) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) EVT_GOTO(10) EVT_END_IF EVT_SET(LVarF, 1) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(143) + EVT_CASE_EQ(MOVE_BODY_SLAM1) EVT_SET(LVarF, 5) - EVT_CASE_EQ(144) + EVT_CASE_EQ(MOVE_BODY_SLAM2) EVT_SET(LVarF, 6) - EVT_CASE_EQ(145) + EVT_CASE_EQ(MOVE_BODY_SLAM3) EVT_SET(LVarF, 7) EVT_END_SWITCH - EVT_CALL(PartnerDamageEnemy, LVar0, 268435968, 0, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_BLAST | DAMAGE_TYPE_NO_CONTACT, 0, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_LABEL(10) EVT_SET(LVar0, 0) EVT_SWITCH(LVar0) diff --git a/src/battle/partner/bow.c b/src/battle/partner/bow.c index dc17c96876..be9e4cc35e 100644 --- a/src/battle/partner/bow.c +++ b/src/battle/partner/bow.c @@ -1,18 +1,38 @@ -#define NAMESPACE battle_partner_bow - #include "common.h" #include "battle/battle.h" +#include "script_api/battle.h" +#include "effects.h" +#include "battle/action_cmd/smack.h" +#include "battle/action_cmd/spook.h" +#include "sprite/npc/BattleBow.h" + +#define NAMESPACE battle_partner_bow + +extern EvtScript N(handleEvent); +extern EvtScript N(idle); +extern EvtScript N(nextTurn); +extern EvtScript N(takeTurn); +extern EvtScript N(init); +extern EvtScript N(executeAction); +extern EvtScript N(celebrate); +extern EvtScript N(runAway); +extern EvtScript N(runAwayFail); +extern EvtScript N(smack); +extern EvtScript N(outtaSight); +extern EvtScript N(spook); +extern EvtScript N(fanSmack); +extern EvtScript N(hidePlayer); extern s32 bMarioHideAnims[]; -ApiStatus func_80238000_710EF0(Evt* script, s32 isInitialCall) { +ApiStatus N(IsOuttaSightActive)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; script->varTable[0] = battleStatus->outtaSightActive; return ApiStatus_DONE2; } -ApiStatus func_80238014_710F04(Evt* script, s32 isInitialCall) { +ApiStatus N(GetBowSize)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; Actor* partnerTargetActor = get_actor(partnerActor->targetActorID); @@ -24,11 +44,11 @@ ApiStatus func_80238014_710F04(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_8023808C_710F7C(Evt* script, s32 isInitialCall) { +ApiStatus N(ApplyOuttaSight)(Evt* script, s32 isInitialCall) { ActorPart* playerActorPartTable = gBattleStatus.playerActor->partsTable; gBattleStatus.outtaSightActive = 1; - if (!(gBattleStatus.flags2 & 2)) { + if (!(gBattleStatus.flags2 & BS_FLAGS2_2)) { gBattleStatus.outtaSightActive = -1; } @@ -39,19 +59,19 @@ ApiStatus func_8023808C_710F7C(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_802380E4_710FD4(Evt* script, s32 isInitialCall) { +ApiStatus N(ModifyBowPos)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Bytecode* args = script->ptrReadPos; Actor* playerActor = battleStatus->playerActor; - f32 var0 = evt_get_variable(script, *args++); - f32 var1 = evt_get_variable(script, *args++); + f32 deltaX = evt_get_variable(script, *args++); + f32 deltaY = evt_get_variable(script, *args++); f32 scalingFactor = playerActor->scalingFactor; - var0 *= scalingFactor; - script->varTable[0] += var0; + deltaX *= scalingFactor; + script->varTable[0] += deltaX; - var1 *= scalingFactor; - script->varTable[1] += var1; + deltaY *= scalingFactor; + script->varTable[1] += deltaY; return ApiStatus_DONE2; } @@ -75,7 +95,7 @@ ApiStatus N(IsPartnerImmobile)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_802381C8_7110B8(Evt* script, s32 isInitialCall) { +ApiStatus N(RestorePlayerIdleAnimations)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* playerActor = battleStatus->playerActor; ActorPart* playerActorPartTable = battleStatus->playerActor->partsTable; @@ -84,14 +104,13 @@ ApiStatus func_802381C8_7110B8(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -/// Averages the baseStatusChance of the hittable actors this partner is targeting. -ApiStatus N(AverageTargetStatusChance)(Evt* script, s32 isInitialCall) { +ApiStatus N(AverageSpookChance)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; Actor* targetActor; ActorBlueprint* targetActorBlueprint; ActorPart* targetActorPart; - s32 targetActorBlueprintBaseStatusChance; + s32 spookChance; s32 chanceTotal = 0; s32 nTargets = 0; s32 i; @@ -100,18 +119,18 @@ ApiStatus N(AverageTargetStatusChance)(Evt* script, s32 isInitialCall) { targetActor = get_actor(partnerActor->targetData[i].actorID); targetActorPart = get_actor_part(targetActor, partnerActor->targetData[i].partID); targetActorBlueprint = targetActor->actorBlueprint; - targetActorBlueprintBaseStatusChance = targetActorBlueprint->baseStatusChance; + spookChance = targetActorBlueprint->spookChance; if (targetActor->transparentStatus == STATUS_TRANSPARENT) { - targetActorBlueprintBaseStatusChance = 0; + spookChance = 0; } if (targetActorPart->eventFlags & ACTOR_EVENT_FLAG_ILLUSORY) { - targetActorBlueprintBaseStatusChance = 0; + spookChance = 0; } - if (targetActorBlueprintBaseStatusChance > 0) { - chanceTotal += targetActorBlueprintBaseStatusChance; + if (spookChance > 0) { + chanceTotal += spookChance; nTargets++; } } @@ -124,3 +143,1082 @@ ApiStatus N(AverageTargetStatusChance)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } + +s32 N(idleAnimations)[] = { + STATUS_NORMAL, ANIM_BattleBow_Walk, + STATUS_STONE, ANIM_BattleBow_Still, + STATUS_SLEEP, ANIM_BattleBow_Pray, + STATUS_POISON, ANIM_BattleBow_Still, + STATUS_STOP, ANIM_BattleBow_Still, + STATUS_DAZE, ANIM_BattleBow_Injured, + STATUS_TURN_DONE, ANIM_BattleBow_Still, + STATUS_END, +}; + +s32 N(defenseTable)[] = { + ELEMENT_NORMAL, 0, + ELEMENT_END, +}; + +s32 N(statusTable)[] = { + STATUS_NORMAL, 100, + STATUS_DEFAULT, 100, + STATUS_SLEEP, 100, + STATUS_POISON, 100, + STATUS_FROZEN, 100, + STATUS_DIZZY, 100, + STATUS_FEAR, 100, + STATUS_STATIC, 100, + STATUS_PARALYZE, 100, + STATUS_SHRINK, 100, + STATUS_STOP, 100, + STATUS_DEFAULT_TURN_MOD, 0, + STATUS_SLEEP_TURN_MOD, 0, + STATUS_POISON_TURN_MOD, 0, + STATUS_FROZEN_TURN_MOD, 0, + STATUS_DIZZY_TURN_MOD, 0, + STATUS_FEAR_TURN_MOD, 0, + STATUS_STATIC_TURN_MOD, 0, + STATUS_PARALYZE_TURN_MOD, 0, + STATUS_SHRINK_TURN_MOD, 0, + STATUS_STOP_TURN_MOD, 0, + STATUS_END, +}; + +ActorPartBlueprint N(parts)[] = { + { + .flags = 0, + .index = 1, + .posOffset = { 0, 0, 0 }, + .targetOffset = { 9, 19 }, + .opacity = 255, + .idleAnimations = N(idleAnimations), + .defenseTable = N(defenseTable), + .eventFlags = 0, + .elementImmunityFlags = 0, + .unk_1C = 0, + .unk_1D = 0, + }, +}; + +ActorBlueprint NAMESPACE = { + .flags = ACTOR_FLAG_FLYING, + .type = ACTOR_TYPE_BOW, + .level = 0, + .maxHP = 99, + .partCount = ARRAY_COUNT(N(parts)), + .partsData = N(parts), + .script = &N(init), + .statusTable = N(statusTable), + .escapeChance = 0, + .airLiftChance = 0, + .hurricaneChance = 0, + .spookChance = 0, + .upAndAwayChance = 0, + .spinSmashReq = 4, + .powerBounceChance = 80, + .coinReward = 0, + .size = { 36, 29 }, + .hpBarOffset = { 0, 0 }, + .statusIconOffset = { -10, 22 }, + .statusMessageOffset = { 10, 22 }, +}; + +EvtScript N(init) = { + EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn))) + EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle))) + EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent))) + EVT_CALL(BindNextTurn, ACTOR_SELF, EVT_PTR(N(nextTurn))) + EVT_RETURN + EVT_END +}; + +EvtScript N(idle) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(handleEvent) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(CloseActionCommandInfo) + EVT_CALL(GetLastEvent, ACTOR_PARTNER, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(EVENT_HIT_COMBO) + EVT_CASE_OR_EQ(EVENT_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Hurt) + EVT_SET_CONST(LVar2, ANIM_BattleBow_Hurt) + EVT_EXEC_WAIT(D_802977BC) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(EVENT_UNKNOWN_TRIGGER) + EVT_CASE_OR_EQ(EVENT_IMMUNE) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Hurt) + EVT_EXEC_WAIT(DoPartnerBlock) + EVT_END_CASE_GROUP + EVT_CASE_EQ(EVENT_SPIKE_CONTACT) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Hurt) + EVT_SET(LVar2, 14) + EVT_EXEC_WAIT(DoPartnerSpikeContact) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_BURN_CONTACT) + EVT_SET_CONST(LVar1, ANIM_BattleBow_BurnHurt) + EVT_SET(LVar2, 14) + EVT_SET_CONST(LVar3, ANIM_BattleBow_BurnStill) + EVT_EXEC_WAIT(DoPartnerBurnContact) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_BURN_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleBow_BurnHurt) + EVT_SET_CONST(LVar2, ANIM_BattleBow_BurnStill) + EVT_EXEC_WAIT(DoPartnerBurn) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_SHOCK_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Hurt) + EVT_SET(LVar2, 14) + EVT_EXEC_WAIT(D_80295744) + EVT_CASE_EQ(EVENT_33) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_RECOVER_PARTNER) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Idle) + EVT_SET_CONST(LVar2, ANIM_BattleBow_Run) + EVT_SET(LVar3, 20) + EVT_EXEC_WAIT(DoPartnerRecover) + EVT_CASE_OR_EQ(EVENT_18) + EVT_CASE_OR_EQ(EVENT_BLOCK) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Block) + EVT_EXEC_WAIT(DoPartnerBlock) + EVT_WAIT(10) + EVT_END_CASE_GROUP + EVT_CASE_DEFAULT + EVT_END_SWITCH + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(takeTurn) = { + EVT_CALL(GetBattlePhase, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(PHASE_EXECUTE_ACTION) + EVT_EXEC_WAIT(N(executeAction)) + EVT_CASE_EQ(PHASE_5) + EVT_EXEC_WAIT(N(celebrate)) + EVT_CASE_EQ(PHASE_RUN_AWAY_START) + EVT_EXEC_WAIT(N(runAway)) + EVT_CASE_EQ(PHASE_RUN_AWAY_FAIL) + EVT_EXEC_WAIT(N(runAwayFail)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(celebrate) = { + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Celebrate) + EVT_WAIT(36) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_RETURN + EVT_END +}; + +EvtScript N(runAway) = { + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleBow_Run) + EVT_EXEC_WAIT(DoPartnerRunAway) + EVT_RETURN + EVT_END +}; + +EvtScript N(runAwayFail) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Run) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(nextTurn) = { + EVT_CALL(GetBattlePhase, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(PHASE_ENEMY_BEGIN) + EVT_CALL(N(IsOuttaSightActive)) + EVT_IF_NE(LVar0, 0) + EVT_EXEC_WAIT(N(hidePlayer)) + EVT_END_IF + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(executeAction) = { + EVT_CALL(func_802694A4, 1) + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(8) + EVT_CALL(LoadStarPowerScript) + EVT_EXEC_WAIT(LVar0) + EVT_RETURN + EVT_END_SWITCH + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(MOVE_SMACK1) + EVT_EXEC_WAIT(N(smack)) + EVT_CASE_EQ(MOVE_SMACK2) + EVT_EXEC_WAIT(N(smack)) + EVT_CASE_EQ(MOVE_SMACK3) + EVT_EXEC_WAIT(N(smack)) + EVT_CASE_EQ(MOVE_OUTTA_SIGHT) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_EXEC_WAIT(N(outtaSight)) + EVT_CASE_EQ(MOVE_SPOOK) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_EXEC_WAIT(N(spook)) + EVT_CASE_EQ(MOVE_FAN_SMACK) + EVT_EXEC_WAIT(N(fanSmack)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(returnHome2) = { + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_BOO_VANISH) + EVT_THREAD + EVT_SET(LVar0, 200) + EVT_LOOP(20) + EVT_SUB(LVar0, 10) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_WAIT(10) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_BOO_APPEAR) + EVT_SET(LVar0, 55) + EVT_LOOP(20) + EVT_ADD(LVar0, 10) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, 255) + EVT_RETURN + EVT_END +}; + +EvtScript N(returnHome) = { + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_BOO_VANISH) + EVT_THREAD + EVT_SET(LVar0, 200) + EVT_LOOP(20) + EVT_SUB(LVar0, 10) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_WAIT(10) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_BOO_APPEAR) + EVT_SET(LVar0, 55) + EVT_LOOP(20) + EVT_ADD(LVar0, 10) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, 255) + EVT_RETURN + EVT_END +}; + +EvtScript N(80238EE0) = { + EVT_CALL(PartnerYieldTurn) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 15, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_RETURN + EVT_END +}; + +EvtScript N(smack) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_SMACK) + EVT_CALL(func_802A9000_42E3A0) + EVT_CALL(func_80269344, 0) + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(MOVE_SMACK1) + EVT_CALL(SetupMashMeter, 4, 40, 70, 99, 100, 0) + EVT_SET(LVarB, 60) + EVT_SET(LVarC, 1) + EVT_CASE_EQ(MOVE_SMACK2) + EVT_CALL(SetupMashMeter, 5, 35, 60, 80, 99, 100) + EVT_SET(LVarB, 60) + EVT_SET(LVarC, 1) + EVT_CASE_EQ(MOVE_SMACK3) + EVT_CALL(SetupMashMeter, 5, 35, 60, 80, 99, 100) + EVT_SET(LVarB, 60) + EVT_SET(LVarC, 1) + EVT_END_SWITCH + EVT_WAIT(10) + EVT_THREAD + EVT_WAIT(10) + EVT_SET(LVar0, LVarB) + EVT_ADD(LVar0, -3) + EVT_CALL(action_command_smack_MashActionCommandInit, 0, LVar0, 3, 0) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_END_THREAD + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_BOO_VANISH) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, 55) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_THREAD + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Run) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -15, -10, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 15, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_END_THREAD + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_13) + EVT_CALL(BattleCamTargetActor, ACTOR_SELF) + EVT_CALL(SetBattleCamZoom, 180) + EVT_CALL(MoveBattleCamOver, 30) + EVT_CALL(SetBattleCamOffsetZ, 9) + EVT_CALL(func_8024EDA4) + EVT_WAIT(15) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_BOO_APPEAR) + EVT_SET(LVar0, 55) + EVT_LOOP(5) + EVT_ADD(LVar0, 40) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, 255) + EVT_CALL(UseBattleCamPresetImmediately, 19) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_PreSlap) + EVT_WAIT(20) + EVT_SET(LVarF, 0) + EVT_SET(LVarE, 0) + EVT_SET(LVarD, 0) + EVT_SET(LocalFlag(0), 0) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToTarget, ACTOR_SELF) + EVT_LOOP(15) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, EVT_FLOAT(0.5), 0, 0) + EVT_WAIT(1) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, EVT_FLOAT(-0.5), 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(GetActionCommandResult, LVarB) + EVT_CALL(func_80269600, LVarD) + EVT_LABEL(0) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_SlapOnce) + EVT_CALL(CloseActionCommandInfo) + EVT_SET(LVar0, 0) + EVT_LOOP(20) + EVT_ADD(LVar0, -45) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Injured) + EVT_CALL(AddActorDecoration, ACTOR_SELF, 0, 0, 3) + EVT_WAIT(30) + EVT_CALL(RemoveActorDecoration, ACTOR_SELF, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_WAIT(10) + EVT_EXEC_WAIT(N(returnHome)) + EVT_RETURN + EVT_END_IF + EVT_ADD(LVarE, 1) + EVT_IF_GT(LVarE, LVarD) + EVT_GOTO(2) + EVT_END_IF + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.4), EVT_FLOAT(1.4), EVT_FLOAT(1.0)) + EVT_IF_EQ(LocalFlag(0), 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_SlapOnce) + EVT_SET(LocalFlag(0), 1) + EVT_CALL(func_80269EAC, 10) + EVT_ELSE + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_SlapBack) + EVT_SET(LocalFlag(0), 0) + EVT_CALL(func_80269EAC, 11) + EVT_END_IF + EVT_WAIT(2) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_THREAD + EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(0.5)) + EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(1.5)) + EVT_CALL(ShakeCam, 1, 0, 1, EVT_FLOAT(0.5)) + EVT_CALL(ShakeCam, 1, 0, 1, EVT_FLOAT(0.2)) + EVT_END_THREAD + EVT_IF_EQ(LVarE, 1) + EVT_CALL(N(GetBowSize)) + EVT_CALL(AddBattleCamZoom, LVar0) + EVT_CALL(MoveBattleCamOver, 5) + EVT_ELSE + EVT_CALL(AddBattleCamZoom, 25) + EVT_CALL(MoveBattleCamOver, 5) + EVT_END_IF + EVT_CALL(SetActorSounds, ACTOR_PARTNER, 3, SOUND_2019, 0) + EVT_IF_EQ(LVarE, 1) + EVT_IF_GT(LVarB, 99) + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4, 0, LVarC, BS_FLAGS1_40 | BS_FLAGS1_10) + EVT_ELSE + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4, 0, LVarC, BS_FLAGS1_10) + EVT_END_IF + EVT_GOTO(1) + EVT_ELSE + EVT_IF_GT(LVarB, 99) + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4, 0, LVarC, BS_FLAGS1_40) + EVT_ELSE + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4, 0, LVarC, 0) + EVT_END_IF + EVT_GOTO(1) + EVT_END_IF + EVT_LABEL(1) + EVT_WAIT(8) + EVT_ADD(LVarF, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_GOTO(0) + EVT_LABEL(2) + EVT_IF_EQ(LVarE, 1) + EVT_CALL(N(GetBowSize)) + EVT_CALL(AddBattleCamZoom, LVar0) + EVT_CALL(MoveBattleCamOver, 5) + EVT_ELSE + EVT_CALL(AddBattleCamZoom, 25) + EVT_CALL(MoveBattleCamOver, 5) + EVT_END_IF + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.4), EVT_FLOAT(1.4), EVT_FLOAT(1.0)) + EVT_IF_EQ(LocalFlag(0), 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_SlapOnce) + EVT_SET(LocalFlag(0), 1) + EVT_CALL(func_80269EAC, 12) + EVT_ELSE + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_SlapBack) + EVT_SET(LocalFlag(0), 0) + EVT_CALL(func_80269EAC, 13) + EVT_END_IF + EVT_WAIT(2) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(SetActorSounds, ACTOR_PARTNER, 3, SOUND_2019, 0) + EVT_CALL(GetActionCommandResult, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_GT(99) + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4, 0, LVarC, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE) + EVT_CASE_DEFAULT + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4, 0, LVarC, BS_FLAGS1_SP_EVT_ACTIVE) + EVT_END_SWITCH + EVT_WAIT(8) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_EXEC_WAIT(N(returnHome)) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_EXEC_WAIT(N(returnHome2)) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(outtaSight) = { + EVT_CALL(SetActorFlagBits, ACTOR_PLAYER, ACTOR_FLAG_20000000, 1) + EVT_CALL(SetActorFlagBits, ACTOR_PLAYER, ACTOR_FLAG_4000000, 0) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19) + EVT_CALL(SetBattleCamTarget, -129, 28, 0) + EVT_CALL(SetBattleCamOffsetZ, 15) + EVT_CALL(SetBattleCamZoom, 260) + EVT_CALL(MoveBattleCamOver, 40) + EVT_THREAD + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 5) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 10, 0, 10) + EVT_END_THREAD + EVT_SET(LVar0, 0) + EVT_LOOP(10) + EVT_ADD(LVar0, 18) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_WAIT(10) + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, -30) + EVT_ADD(LVar1, 30) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, 30, 10) + EVT_THREAD + EVT_SET(LVar0, 180) + EVT_LOOP(10) + EVT_SUB(LVar0, 18) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_SET(LVar0, 255) + EVT_LOOP(30) + EVT_SUB(LVar0, 5) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_CALL(N(ModifyBowPos), -10, 20) + EVT_ADD(LVar2, 5) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, 0, 0) + EVT_CALL(N(IsPartnerImmobile)) + EVT_IF_EQ(LVar0, 0) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_Crouch) + EVT_END_IF + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_BOW_VANISH) + EVT_SET(LVar0, 255) + EVT_LOOP(15) + EVT_SUB(LVar0, 10) + EVT_CALL(SetPartAlpha, ACTOR_PLAYER, 1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_WAIT(15) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_CALL(MoveBattleCamOver, 30) + EVT_CALL(N(ApplyOuttaSight)) + EVT_CALL(SetActorFlagBits, ACTOR_PLAYER, ACTOR_FLAG_20000000, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(hidePlayer) = { + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_WAIT(20) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_BOW_APPEAR) + EVT_THREAD + EVT_WAIT(10) + EVT_SET(LVar0, 105) + EVT_LOOP(30) + EVT_ADD(LVar0, 5) + EVT_CALL(SetPartAlpha, ACTOR_PLAYER, 1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_SET(LVar0, 105) + EVT_LOOP(30) + EVT_ADD(LVar0, 5) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_CALL(MoveBattleCamOver, 40) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, 0, 10) + EVT_CALL(N(RestorePlayerIdleAnimations)) + EVT_WAIT(20) + EVT_RETURN + EVT_END +}; + +EvtScript N(spook) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_SPOOK) + EVT_CALL(func_802A9000_430020) + EVT_CALL(SetupMashMeter, 1, 100, 0, 0, 0, 0) + EVT_CALL(func_80269344, 20) + EVT_WAIT(10) + EVT_THREAD + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_15) + EVT_CALL(BattleCamTargetActor, ACTOR_SELF) + EVT_CALL(SetBattleCamOffsetZ, 4) + EVT_CALL(AddBattleCamZoom, -150) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(func_8024EDA4) + EVT_END_THREAD + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 40) + EVT_ADD(LVar1, 10) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, 0, 10) + EVT_WAIT(15) + EVT_CALL(UseBattleCamPresetImmediately, 19) + EVT_THREAD + EVT_WAIT(74) + EVT_LOOP(8) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 1, 0, 0) + EVT_WAIT(1) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, -1, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_LOOP(7) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 2, 0, 0) + EVT_WAIT(1) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, -2, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_LOOP(8) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 3, 0, 0) + EVT_WAIT(1) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, -3, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 0, 0) + EVT_END_THREAD + EVT_CALL(N(AverageSpookChance)) + EVT_CALL(action_command_spook_MashActionCommandInit, 0, 87, 3, LVar0) + EVT_CALL(GetActionResult, LVar1) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Conceal) + EVT_SET(LVar1, 0) + EVT_SET(LVar2, 0) + EVT_LOOP(90) + EVT_SWITCH(LVar1) + EVT_CASE_GT(80) + EVT_IF_EQ(LVar2, 7) + EVT_CALL(AddBattleCamZoom, -20) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_SET(LVar2, 8) + EVT_END_IF + EVT_CASE_GT(70) + EVT_IF_EQ(LVar2, 6) + EVT_CALL(AddBattleCamZoom, -20) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_SET(LVar2, 7) + EVT_END_IF + EVT_CASE_GT(60) + EVT_IF_EQ(LVar2, 5) + EVT_CALL(AddBattleCamZoom, -20) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_SET(LVar2, 6) + EVT_END_IF + EVT_CASE_GT(50) + EVT_IF_EQ(LVar2, 4) + EVT_CALL(AddBattleCamZoom, -20) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_SET(LVar2, 5) + EVT_END_IF + EVT_CASE_GT(40) + EVT_IF_EQ(LVar2, 3) + EVT_CALL(AddBattleCamZoom, -20) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_SET(LVar2, 4) + EVT_END_IF + EVT_CASE_GT(30) + EVT_IF_EQ(LVar2, 2) + EVT_CALL(AddBattleCamZoom, -20) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_SET(LVar2, 3) + EVT_END_IF + EVT_CASE_GT(20) + EVT_IF_EQ(LVar2, 1) + EVT_CALL(AddBattleCamZoom, -20) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_SET(LVar2, 2) + EVT_END_IF + EVT_CASE_GT(10) + EVT_IF_EQ(LVar2, 0) + EVT_CALL(AddBattleCamZoom, -20) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_SET(LVar2, 1) + EVT_END_IF + EVT_END_SWITCH + EVT_ADD(LVar1, 1) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_SpookLoop) + EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 12, 0) + EVT_THREAD + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_CALL(MoveBattleCamOver, 5) + EVT_WAIT(5) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_B) + EVT_LOOP(5) + EVT_CALL(SetBattleCamParam, 3, 110) + EVT_WAIT(2) + EVT_CALL(SetBattleCamParam, 3, 100) + EVT_WAIT(2) + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_SET(LVar0, 255) + EVT_LOOP(15) + EVT_SUB(LVar0, 10) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_BOW_SPOOK) + EVT_SETF(LVar0, EVT_FLOAT(1.0)) + EVT_CALL(GetActionResult, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_LE(20) + EVT_SETF(LVar1, EVT_FLOAT(0.3)) + EVT_CASE_LE(40) + EVT_SETF(LVar1, EVT_FLOAT(0.4)) + EVT_CASE_LE(60) + EVT_SETF(LVar1, EVT_FLOAT(0.5)) + EVT_CASE_LE(80) + EVT_SETF(LVar1, EVT_FLOAT(0.6)) + EVT_CASE_DEFAULT + EVT_SETF(LVar1, EVT_FLOAT(0.7)) + EVT_END_SWITCH + EVT_LOOP(5) + EVT_ADDF(LVar0, LVar1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, LVar0, LVar0, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_SETF(LVarE, LVar0) + EVT_THREAD + EVT_LOOP(5) + EVT_LOOP(3) + EVT_SUBF(LVar0, EVT_FLOAT(0.23)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, LVar0, LVar0, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_LOOP(3) + EVT_ADDF(LVar0, EVT_FLOAT(0.23)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, LVar0, LVar0, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 32) + EVT_CALL(PlayEffect, EFFECT_ENERGY_IN_OUT, 6, LVar0, LVar1, LVar2, EVT_FLOAT(1.8), 45, 0, 0, 0, 0, 0, 0, 0) + EVT_CALL(PlayEffect, EFFECT_ENERGY_IN_OUT, 6, LVar0, LVar1, LVar2, EVT_FLOAT(1.0), 45, 0, 0, 0, 0, 0, 0, 0) + EVT_WAIT(15) + EVT_CALL(InitTargetIterator) + EVT_CALL(GetActionResult, LVarF) + EVT_LOOP(0) + EVT_CALL(SetGoalToTarget, ACTOR_SELF) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 2, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, 6) + EVT_GOTO(10) + EVT_END_IF + EVT_CALL(func_80269EAC, 18) + EVT_SWITCH(LVarF) + EVT_CASE_GT(99) + EVT_CALL(PartnerAfflictEnemy, LVar0, DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS | DAMAGE_TYPE_STATUS_ALWAYS_HITS, 0, STATUS_FLAG_400000, LVarF, 0, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CASE_DEFAULT + EVT_CALL(PartnerAfflictEnemy, LVar0, DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS | DAMAGE_TYPE_STATUS_ALWAYS_HITS, 0, STATUS_FLAG_400000, LVarF, 0, BS_FLAGS1_80 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_END_SWITCH + EVT_LABEL(10) + EVT_WAIT(5) + EVT_CALL(ChooseNextTarget, 0, LVar0) + EVT_IF_EQ(LVar0, -1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(GetActionCommandResult, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_GT(99) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) + EVT_CASE_DEFAULT + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_END_SWITCH + EVT_WAIT(30) + EVT_THREAD + EVT_SET(LVar0, 105) + EVT_LOOP(15) + EVT_ADD(LVar0, 10) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(GetActionResult, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_LE(20) + EVT_SETF(LVar1, EVT_FLOAT(0.3)) + EVT_CASE_LE(40) + EVT_SETF(LVar1, EVT_FLOAT(0.4)) + EVT_CASE_LE(60) + EVT_SETF(LVar1, EVT_FLOAT(0.5)) + EVT_CASE_LE(80) + EVT_SETF(LVar1, EVT_FLOAT(0.6)) + EVT_CASE_DEFAULT + EVT_SETF(LVar1, EVT_FLOAT(0.7)) + EVT_END_SWITCH + EVT_SETF(LVar0, LVarE) + EVT_LOOP(5) + EVT_SUBF(LVar0, LVar1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, LVar0, LVar0, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_EXEC_WAIT(N(80238EE0)) + EVT_RETURN + EVT_END +}; + +EvtScript N(fanSmack) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_SMACK) + EVT_CALL(func_802A9000_42E3A0) + EVT_CALL(func_80269344, 0) + EVT_CALL(SetupMashMeter, 5, 35, 60, 80, 99, 100) + EVT_SET(LVarB, 90) + EVT_SET(LVarC, 2) + EVT_WAIT(10) + EVT_THREAD + EVT_WAIT(10) + EVT_SET(LVar0, LVarB) + EVT_ADD(LVar0, -3) + EVT_CALL(action_command_smack_MashActionCommandInit, 0, LVar0, 3, 1) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_END_THREAD + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_BOO_VANISH) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, 55) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_THREAD + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Run) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -25, -10, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 15, 0, 10) + EVT_END_THREAD + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_13) + EVT_CALL(BattleCamTargetActor, ACTOR_SELF) + EVT_CALL(SetBattleCamZoom, 180) + EVT_CALL(MoveBattleCamOver, 30) + EVT_CALL(SetBattleCamOffsetZ, 9) + EVT_CALL(func_8024EDA4) + EVT_WAIT(15) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_BOO_APPEAR) + EVT_SET(LVar0, 55) + EVT_LOOP(5) + EVT_ADD(LVar0, 40) + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetPartAlpha, ACTOR_PARTNER, -1, 255) + EVT_CALL(UseBattleCamPresetImmediately, 19) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Celebrate) + EVT_WAIT(20) + EVT_SET(LVarF, 0) + EVT_SET(LVarE, 0) + EVT_SET(LVarD, 0) + EVT_SET(LocalFlag(0), 0) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToTarget, ACTOR_SELF) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_CelebrateFast) + EVT_LOOP(30) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, EVT_FLOAT(0.5), 0, 0) + EVT_WAIT(1) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, EVT_FLOAT(-0.5), 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(GetActionCommandResult, LVarB) + EVT_CALL(func_80269600, LVarD) + EVT_LABEL(0) + EVT_CALL(PartnerTestEnemy, LVar0, DAMAGE_TYPE_NO_CONTACT, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_FanSmackOnce) + EVT_CALL(CloseActionCommandInfo) + EVT_SET(LVar0, 0) + EVT_LOOP(15) + EVT_ADD(LVar0, -45) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_LOOP(15) + EVT_ADD(LVar0, -90) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Injured) + EVT_CALL(AddActorDecoration, ACTOR_SELF, 0, 0, 3) + EVT_WAIT(40) + EVT_CALL(RemoveActorDecoration, ACTOR_SELF, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_WAIT(10) + EVT_EXEC_WAIT(N(returnHome)) + EVT_RETURN + EVT_END_IF + EVT_ADD(LVarE, 1) + EVT_IF_GT(LVarE, LVarD) + EVT_GOTO(2) + EVT_END_IF + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.4), EVT_FLOAT(1.4), EVT_FLOAT(1.0)) + EVT_IF_EQ(LocalFlag(0), 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_FanSmackOnce) + EVT_SET(LocalFlag(0), 1) + EVT_CALL(func_80269EAC, 14) + EVT_ELSE + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_FanSmackBack) + EVT_SET(LocalFlag(0), 0) + EVT_CALL(func_80269EAC, 15) + EVT_END_IF + EVT_WAIT(2) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_THREAD + EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(0.5)) + EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(1.5)) + EVT_CALL(ShakeCam, 1, 0, 1, EVT_FLOAT(0.5)) + EVT_CALL(ShakeCam, 1, 0, 1, EVT_FLOAT(0.2)) + EVT_END_THREAD + EVT_IF_EQ(LVarE, 1) + EVT_CALL(N(GetBowSize)) + EVT_CALL(AddBattleCamZoom, LVar0) + EVT_CALL(MoveBattleCamOver, 5) + EVT_ELSE + EVT_CALL(AddBattleCamZoom, 25) + EVT_CALL(MoveBattleCamOver, 5) + EVT_END_IF + EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(PlayEffect, EFFECT_CONFETTI, 5, LVar0, LVar1, LVar2, EVT_FLOAT(1.0), 20, 0, 0, 0, 0, 0, 0, 0) + EVT_CALL(SetActorSounds, ACTOR_PARTNER, 3, 8218, 0) + EVT_IF_EQ(LVarE, 1) + EVT_IF_GT(LVarB, 99) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_NO_CONTACT, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarC, BS_FLAGS1_40 | BS_FLAGS1_10) + EVT_ELSE + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_NO_CONTACT, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarC, BS_FLAGS1_10) + EVT_END_IF + EVT_GOTO(1) + EVT_ELSE + EVT_IF_GT(LVarB, 99) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_NO_CONTACT, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarC, BS_FLAGS1_40) + EVT_ELSE + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_NO_CONTACT, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarC, 0) + EVT_END_IF + EVT_GOTO(1) + EVT_END_IF + EVT_LABEL(1) + EVT_IF_EQ(LVarE, 1) + EVT_SET(LVar0, 0) + EVT_LOOP(8) + EVT_ADD(LVar0, 144) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_ELSE + EVT_SET(LVar0, 0) + EVT_LOOP(8) + EVT_SUB(LVar0, 144) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_IF + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_ADD(LVarF, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_GOTO(0) + EVT_LABEL(2) + EVT_THREAD + EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(0.5)) + EVT_CALL(ShakeCam, 1, 0, 2, EVT_FLOAT(1.5)) + EVT_CALL(ShakeCam, 1, 0, 1, EVT_FLOAT(0.5)) + EVT_CALL(ShakeCam, 1, 0, 1, EVT_FLOAT(0.2)) + EVT_END_THREAD + EVT_IF_EQ(LVarE, 1) + EVT_CALL(N(GetBowSize)) + EVT_CALL(AddBattleCamZoom, LVar0) + EVT_CALL(MoveBattleCamOver, 5) + EVT_ELSE + EVT_CALL(AddBattleCamZoom, 25) + EVT_CALL(MoveBattleCamOver, 5) + EVT_END_IF + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.4), EVT_FLOAT(1.4), EVT_FLOAT(1.0)) + EVT_IF_EQ(LocalFlag(0), 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_FanSmackOnce) + EVT_SET(LocalFlag(0), 1) + EVT_CALL(func_80269EAC, 16) + EVT_ELSE + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_FanSmackBack) + EVT_SET(LocalFlag(0), 0) + EVT_CALL(func_80269EAC, 17) + EVT_END_IF + EVT_WAIT(2) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(SetActorSounds, ACTOR_PARTNER, 3, 8218, 0) + EVT_CALL(GetActionCommandResult, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_GT(99) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_NO_CONTACT, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarC, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE) + EVT_CASE_DEFAULT + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_NO_CONTACT, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarC, BS_FLAGS1_SP_EVT_ACTIVE) + EVT_END_SWITCH + EVT_THREAD + EVT_IF_EQ(LVarE, 1) + EVT_SET(LVar0, 0) + EVT_LOOP(8) + EVT_ADD(LVar0, 144) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_ELSE + EVT_SET(LVar0, 0) + EVT_LOOP(8) + EVT_SUB(LVar0, 144) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_IF + EVT_IF_EQ(LVarE, 1) + EVT_SET(LVar0, 0) + EVT_LOOP(8) + EVT_ADD(LVar0, 72) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_ELSE + EVT_SET(LVar0, 0) + EVT_LOOP(8) + EVT_SUB(LVar0, 72) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_IF + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_END_THREAD + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(0) + EVT_CASE_OR_EQ(2) + EVT_WAIT(10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_EXEC_WAIT(N(returnHome)) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(1) + EVT_CASE_OR_EQ(3) + EVT_WAIT(10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleBow_Idle) + EVT_EXEC_WAIT(N(returnHome2)) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + diff --git a/src/battle/partner/goombario.c b/src/battle/partner/goombario.c index f64027ef9d..5acac0e01f 100644 --- a/src/battle/partner/goombario.c +++ b/src/battle/partner/goombario.c @@ -7,34 +7,30 @@ #define NAMESPACE battle_partner_goombario -extern EffectInstance* D_8023CDA0; -extern s32 D_8023CDA4; -extern s32 D_8023BB98_6ECC78; extern s32 bActorTattles[ACTOR_TYPE_COUNT]; +static EffectInstance* N(tattleEffect); +static s32 N(isCharged); + +extern s32 N(powerBounceChance); extern EvtScript N(init); -extern EvtScript N(80239784); -extern EvtScript N(802397E0); -extern EvtScript N(8023993C); -extern EvtScript N(8023994C); -extern EvtScript N(80239988); -extern EvtScript N(8023A754); -extern EvtScript N(8023ADC4); -extern EvtScript N(8023B45C); -extern EvtScript N(8023BB9C); -extern EvtScript N(8023C5B8); -extern EvtScript N(8023C90C); -extern EvtScript N(handleEvent_80239360); -extern EvtScript N(idle_80239350); -extern EvtScript N(nextTurn_80239A3C); -extern EvtScript N(takeTurn_802396D8); +extern EvtScript N(celebrate); +extern EvtScript N(executeAction); +extern EvtScript N(firstStrike); +extern EvtScript N(runAway); +extern EvtScript N(runAwayFail); +extern EvtScript N(headbonk1); +extern EvtScript N(headbonk2); +extern EvtScript N(headbonk3); +extern EvtScript N(multibonk); +extern EvtScript N(tattle); +extern EvtScript N(charge); +extern EvtScript N(handleEvent); +extern EvtScript N(idle); +extern EvtScript N(nextTurn); +extern EvtScript N(takeTurn); -ApiStatus func_802380E4_6F11C4(Evt* script, s32 isInitialCall); -ApiStatus func_8023817C_6F125C(Evt* script, s32 isInitialCall); -ApiStatus func_80238BCC_6F1CAC(Evt* script, s32 isInitialCall); -ApiStatus func_80238EDC_6F1FBC(Evt* script, s32 isInitialCall); - -ApiStatus N(func_80238000_6F10E0)(Evt* script, s32 isInitialCall) { +ApiStatus N(GetReturnMoveTime)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partner = battleStatus->partnerActor; f32 posX = partner->currentPos.x; @@ -61,20 +57,20 @@ ApiStatus N(func_80238000_6F10E0)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_802380E4_6F11C4(Evt* script, s32 isInitialCall) { +ApiStatus N(AdjustPowerBounceChance)(Evt* script, s32 isInitialCall) { Actor* targetActor = get_actor(get_actor(script->owner1.actorID)->targetActorID); script->varTable[0] = 99; - D_8023BB98_6ECC78 *= targetActor->actorBlueprint->powerBounceChance; - D_8023BB98_6ECC78 /= 100; - if (D_8023BB98_6ECC78 < rand_int(100)) { + N(powerBounceChance) *= targetActor->actorBlueprint->powerBounceChance; + N(powerBounceChance) /= 100; + if (N(powerBounceChance) < rand_int(100)) { script->varTable[0] = 0; } return ApiStatus_DONE2; } -ApiStatus func_8023817C_6F125C(Evt* script, s32 isInitialCall) { +ApiStatus N(JumpOnTarget)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; BattleStatus* battleStatus = &gBattleStatus; Actor* actor = battleStatus->partnerActor; @@ -249,7 +245,7 @@ ApiStatus func_8023817C_6F125C(Evt* script, s32 isInitialCall) { } -ApiStatus N(func_80238A20_6F1B00)(Evt* script, s32 isInitialCall) { +ApiStatus N(OnMissHeadbonk)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partner = gBattleStatus.partnerActor; Vec3f* pos = &partner->state.currentPos; @@ -266,11 +262,11 @@ ApiStatus N(func_80238A20_6F1B00)(Evt* script, s32 isInitialCall) { } if (partner->state.velocity > 0.0f) { - set_animation(0x100, 0, partner->state.animJumpRise); + set_animation(ACTOR_PARTNER, 0, partner->state.animJumpRise); } if (partner->state.velocity < 0.0f) { - set_animation(0x100, 0, partner->state.animJumpFall); + set_animation(ACTOR_PARTNER, 0, partner->state.animJumpFall); } partner->state.currentPos.y = (partner->state.currentPos.y + partner->state.velocity); @@ -293,7 +289,7 @@ ApiStatus N(func_80238A20_6F1B00)(Evt* script, s32 isInitialCall) { return ApiStatus_BLOCK; } -ApiStatus func_80238B60_6F1C40(Evt* script, s32 isInitialCall) { +ApiStatus N(GetTattleMessage)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partner = battleStatus->partnerActor; Actor* target = get_actor(partner->targetActorID); @@ -311,7 +307,7 @@ ApiStatus func_80238B60_6F1C40(Evt* script, s32 isInitialCall) { } -ApiStatus func_80238BCC_6F1CAC(Evt* script, s32 isInitalCall) { +ApiStatus N(GetTattleCamPos)(Evt* script, s32 isInitalCall) { Actor* target = get_actor(gBattleStatus.partnerActor->targetActorID); s32 xSize; @@ -341,14 +337,14 @@ ApiStatus func_80238BCC_6F1CAC(Evt* script, s32 isInitalCall) { } -ApiStatus func_80238E04_6F1EE4(Evt* script, s32 isInitialCall) { - D_8023CDA0 = fx_tattle_window(0, 206, 144, 0, 1.0f, 0); +ApiStatus N(OpenTattleWindow)(Evt* script, s32 isInitialCall) { + N(tattleEffect) = fx_tattle_window(0, 206, 144, 0, 1.0f, 0); return ApiStatus_DONE2; } -ApiStatus func_80238E48_6F1F28(Evt* script, s32 isInitialCall) { - EffectInstance* effect = D_8023CDA0; +ApiStatus N(CloseTattleWindow)(Evt* script, s32 isInitialCall) { + EffectInstance* effect = N(tattleEffect); effect->data.tattleWindow->pos.y = 144.0f; effect->flags |= EFFECT_INSTANCE_FLAGS_10; @@ -356,24 +352,24 @@ ApiStatus func_80238E48_6F1F28(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_80238E74_6F1F54(Evt* script, s32 isInitialCall) { +ApiStatus N(CanChargeMore)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partner = battleStatus->partnerActor; script->varTable[0] = FALSE; switch (battleStatus->selectedMoveID) { - case 134: + case MOVE_TATTLE: if (partner->isGlowing >= 99) { script->varTable[0] = TRUE; } break; - case 135: + case MOVE_CHARGE: if (partner->isGlowing >= 99) { script->varTable[0] = TRUE; } break; - case 136: + case MOVE_MULTIBONK: if (partner->isGlowing >= 99) { script->varTable[0] = TRUE; } @@ -383,16 +379,16 @@ ApiStatus func_80238E74_6F1F54(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_80238EDC_6F1FBC(Evt* script, s32 isInitialCall) { +ApiStatus N(ChargeAtPos)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; BattleStatus* battleStatus = &gBattleStatus; Actor* partner = battleStatus->partnerActor; s32 boostAmount; s32 x, y, z; - D_8023CDA4 = 0; + N(isCharged) = 0; if (partner->isGlowing > 0) { - D_8023CDA4 = 1; + N(isCharged) = 1; } boostAmount = 0; @@ -429,30 +425,30 @@ ApiStatus func_80238EDC_6F1FBC(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus N(StopGlowing)(Evt* script, s32 isInitialCall) { +ApiStatus N(StopCharge)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; - battleStatus->partnerActor->isGlowing = FALSE; - battleStatus->flags1 &= ~0x40000000; + battleStatus->partnerActor->isGlowing = 0; + battleStatus->flags1 &= ~BS_FLAGS1_40000000; return ApiStatus_DONE2; } -ApiStatus N(StopGlowingAndGet)(Evt* script, s32 isInitialCall) { +ApiStatus N(StopChargeAndGet)(Evt* script, s32 isInitialCall) { Actor* partner = gBattleStatus.partnerActor; if (!(gBattleStatus.flags1 & BS_FLAGS1_40000000)) { - partner->isGlowing = FALSE; + partner->isGlowing = 0; } script->varTable[0] = partner->isGlowing; - partner->isGlowing = FALSE; + partner->isGlowing = 0; gBattleStatus.flags1 &= ~BS_FLAGS1_40000000; return ApiStatus_DONE2; } -ApiStatus N(IsGlowing)(Evt* script, s32 isInitialCall) { +ApiStatus N(GetChargeAmount)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; script->varTable[0] = battleStatus->partnerActor->isGlowing; @@ -460,7 +456,7 @@ ApiStatus N(IsGlowing)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_802390C8_6F21A8(Evt* script, s32 isInitialCall) { +ApiStatus N(PlayChargeFX)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; s32 var1 = evt_get_variable(script, *args++); s32 var2 = evt_get_variable(script, *args++); @@ -472,8 +468,8 @@ ApiStatus func_802390C8_6F21A8(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus N(func_80239190_6F2270)(Evt* script, s32 isInitialCall) { - if (D_8023CDA4 == 0) { +ApiStatus N(GetChargeMessage)(Evt* script, s32 isInitialCall) { + if (N(isCharged) == 0) { script->varTable[0] = 36; } else { script->varTable[0] = 37; @@ -482,7 +478,7 @@ ApiStatus N(func_80239190_6F2270)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -s32 N(idleAnimations_802391B0)[] = { +s32 N(idleAnimations)[] = { STATUS_NORMAL, ANIM_BattleGoombario_Walk, STATUS_STONE, ANIM_BattleGoombario_Still, STATUS_SLEEP, ANIM_BattleGoombario_CloseEyes, @@ -493,12 +489,12 @@ s32 N(idleAnimations_802391B0)[] = { STATUS_END, }; -s32 N(defenseTable_802391EC)[] = { +s32 N(defenseTable)[] = { ELEMENT_NORMAL, 0, ELEMENT_END, }; -s32 N(statusTable_802391F8)[] = { +s32 N(statusTable)[] = { STATUS_NORMAL, 100, STATUS_DEFAULT, 100, STATUS_SLEEP, 100, @@ -523,35 +519,33 @@ s32 N(statusTable_802391F8)[] = { STATUS_END, }; -ActorPartBlueprint N(partsTable_802392A4)[] = { +ActorPartBlueprint N(parts)[] = { { .flags = 0, .index = 1, .posOffset = { 0, 0, 0 }, .targetOffset = { 8, 22 }, .opacity = 255, - .idleAnimations = N(idleAnimations_802391B0), - .defenseTable = N(defenseTable_802391EC), + .idleAnimations = N(idleAnimations), + .defenseTable = N(defenseTable), .eventFlags = ACTOR_EVENT_FLAG_0, .elementImmunityFlags = 0, }, }; -extern EvtScript N(init_802392F0); - ActorBlueprint NAMESPACE = { .flags = 0, .type = ACTOR_TYPE_GOOMBARIO, .level = 0, .maxHP = 99, - .partCount = ARRAY_COUNT(N(partsTable_802392A4)), - .partsData = N(partsTable_802392A4), - .script = &N(init_802392F0), - .statusTable = N(statusTable_802391F8), + .partCount = ARRAY_COUNT(N(parts)), + .partsData = N(parts), + .script = &N(init), + .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, @@ -562,117 +556,117 @@ ActorBlueprint NAMESPACE = { .statusMessageOffset = { 10, 20 }, }; -EvtScript N(init_802392F0) = { - EVT_CALL(BindTakeTurn, 256, EVT_PTR(battle_partner_goombario_takeTurn_802396D8)) - EVT_CALL(BindIdle, 256, EVT_PTR(battle_partner_goombario_idle_80239350)) - EVT_CALL(BindHandleEvent, 256, EVT_PTR(battle_partner_goombario_handleEvent_80239360)) - EVT_CALL(BindNextTurn, 256, EVT_PTR(battle_partner_goombario_nextTurn_80239A3C)) +EvtScript N(init) = { + EVT_CALL(BindTakeTurn, ACTOR_PARTNER, EVT_PTR(N(takeTurn))) + EVT_CALL(BindIdle, ACTOR_PARTNER, EVT_PTR(N(idle))) + EVT_CALL(BindHandleEvent, ACTOR_PARTNER, EVT_PTR(N(handleEvent))) + EVT_CALL(BindNextTurn, ACTOR_PARTNER, EVT_PTR(N(nextTurn))) EVT_RETURN EVT_END }; -EvtScript N(idle_80239350) = { +EvtScript N(idle) = { EVT_RETURN EVT_END }; -EvtScript N(handleEvent_80239360) = { - EVT_CALL(UseIdleAnimation, 256, 0) +EvtScript N(handleEvent) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, 0) EVT_CALL(CloseActionCommandInfo) - EVT_CALL(GetLastEvent, 256, LVar0) + EVT_CALL(GetLastEvent, ACTOR_PARTNER, LVar0) EVT_SWITCH(LVar0) - EVT_CASE_OR_EQ(9) - EVT_CASE_OR_EQ(10) - EVT_SET_CONST(LVar1, 0x9000A) - EVT_SET_CONST(LVar2, 0x9000A) + EVT_CASE_OR_EQ(EVENT_HIT_COMBO) + EVT_CASE_OR_EQ(EVENT_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill) + EVT_SET_CONST(LVar2, ANIM_BattleGoombario_HurtStill) EVT_EXEC_WAIT(D_802977BC) - EVT_SET_CONST(LVar1, 0x9000A) - EVT_EXEC_WAIT(D_80296014) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill) + EVT_EXEC_WAIT(DoPartnerHit) EVT_END_CASE_GROUP - EVT_CASE_OR_EQ(23) - EVT_CASE_OR_EQ(25) - EVT_CALL(PlaySoundAtActor, 256, 8332) - EVT_SET_CONST(LVar0, 0x1) - EVT_SET_CONST(LVar1, 0x9000A) + EVT_CASE_OR_EQ(EVENT_UNKNOWN_TRIGGER) + EVT_CASE_OR_EQ(EVENT_IMMUNE) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill) EVT_EXEC_WAIT(DoPartnerBlock) EVT_END_CASE_GROUP - EVT_CASE_EQ(42) - EVT_SET_CONST(LVar1, 0x9000A) + EVT_CASE_EQ(EVENT_SPIKE_CONTACT) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill) EVT_SET(LVar2, 12) - EVT_EXEC_WAIT(D_80294FE4) - EVT_SET_CONST(LVar1, 0x9000A) - EVT_EXEC_WAIT(D_80296014) - EVT_CASE_EQ(44) - EVT_SET_CONST(LVar1, 0x9000B) + EVT_EXEC_WAIT(DoPartnerSpikeContact) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_BURN_CONTACT) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_BurnHurt1) EVT_SET(LVar2, 12) - EVT_SET_CONST(LVar3, 0x9000C) - EVT_EXEC_WAIT(D_80294C68) - EVT_SET_CONST(LVar1, 0x9000A) - EVT_EXEC_WAIT(D_80296014) - EVT_CASE_EQ(14) - EVT_SET_CONST(LVar1, 0x9000B) - EVT_SET_CONST(LVar2, 0x9000C) - EVT_EXEC_WAIT(D_8029621C) - EVT_SET_CONST(LVar1, 0x9000A) - EVT_EXEC_WAIT(D_80296014) - EVT_CASE_EQ(47) - EVT_SET_CONST(LVar1, 0x9000A) + EVT_SET_CONST(LVar3, ANIM_BattleGoombario_BurnHurt2) + EVT_EXEC_WAIT(DoPartnerBurnContact) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_BURN_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_BurnHurt1) + EVT_SET_CONST(LVar2, ANIM_BattleGoombario_BurnHurt2) + EVT_EXEC_WAIT(DoPartnerBurn) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_SHOCK_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill) EVT_SET(LVar2, 12) EVT_EXEC_WAIT(D_80295744) - EVT_CASE_EQ(51) - EVT_CALL(battle_partner_goombario_StopGlowing) - EVT_SET_CONST(LVar1, 0x9000A) - EVT_EXEC_WAIT(D_80296014) - EVT_CASE_EQ(52) - EVT_SET_CONST(LVar0, 0x1) - EVT_SET_CONST(LVar1, 0x90001) - EVT_SET_CONST(LVar2, 0x90003) + EVT_CASE_EQ(EVENT_33) + EVT_CALL(N(StopCharge)) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_HurtStill) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_RECOVER_PARTNER) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_Idle) + EVT_SET_CONST(LVar2, ANIM_BattleGoombario_Run) EVT_SET(LVar3, 0) EVT_EXEC_WAIT(DoPartnerRecover) - EVT_CASE_OR_EQ(24) - EVT_CASE_OR_EQ(26) - EVT_CALL(PlaySoundAtActor, 256, 8332) - EVT_SET_CONST(LVar0, 0x1) - EVT_SET_CONST(LVar1, 0x9000E) + EVT_CASE_OR_EQ(EVENT_18) + EVT_CASE_OR_EQ(EVENT_BLOCK) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_Block) EVT_EXEC_WAIT(DoPartnerBlock) EVT_WAIT(10) EVT_END_CASE_GROUP EVT_CASE_DEFAULT EVT_END_SWITCH - EVT_CALL(UseIdleAnimation, 256, 1) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, 1) EVT_RETURN EVT_END }; -EvtScript N(takeTurn_802396D8) = { +EvtScript N(takeTurn) = { EVT_CALL(GetBattlePhase, LVar0) EVT_SWITCH(LVar0) - EVT_CASE_EQ(1) - EVT_EXEC_WAIT(battle_partner_goombario_8023993C) - EVT_CASE_EQ(0) - EVT_EXEC_WAIT(battle_partner_goombario_802397E0) - EVT_CASE_EQ(5) - EVT_EXEC_WAIT(battle_partner_goombario_80239784) - EVT_CASE_EQ(3) - EVT_EXEC_WAIT(battle_partner_goombario_8023994C) - EVT_CASE_EQ(7) - EVT_EXEC_WAIT(battle_partner_goombario_80239988) + EVT_CASE_EQ(PHASE_FIRST_STRIKE) + EVT_EXEC_WAIT(N(firstStrike)) + EVT_CASE_EQ(PHASE_EXECUTE_ACTION) + EVT_EXEC_WAIT(N(executeAction)) + EVT_CASE_EQ(PHASE_5) + EVT_EXEC_WAIT(N(celebrate)) + EVT_CASE_EQ(PHASE_RUN_AWAY_START) + EVT_EXEC_WAIT(N(runAway)) + EVT_CASE_EQ(PHASE_RUN_AWAY_FAIL) + EVT_EXEC_WAIT(N(runAwayFail)) EVT_END_SWITCH EVT_RETURN EVT_END }; -EvtScript N(80239784) = { - EVT_SET_CONST(LVar0, 0x1) - EVT_SET_CONST(LVar1, 0x90010) - EVT_SET_CONST(LVar2, 0x90011) - EVT_SET_CONST(LVar3, 0x90001) +EvtScript N(celebrate) = { + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_CelebrateLoop) + EVT_SET_CONST(LVar2, ANIM_BattleGoombario_Celebrate) + EVT_SET_CONST(LVar3, ANIM_BattleGoombario_Idle) EVT_EXEC_WAIT(D_80294720) EVT_RETURN EVT_END }; -EvtScript N(802397E0) = { +EvtScript N(executeAction) = { EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_CALL(func_802694A4, 1) EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) @@ -687,57 +681,57 @@ EvtScript N(802397E0) = { EVT_RETURN EVT_END_SWITCH EVT_SWITCH(LVar2) - EVT_CASE_EQ(131) - EVT_EXEC_WAIT(battle_partner_goombario_8023A754) - EVT_CASE_EQ(132) - EVT_EXEC_WAIT(battle_partner_goombario_8023ADC4) - EVT_CASE_EQ(133) - EVT_EXEC_WAIT(battle_partner_goombario_8023B45C) - EVT_CASE_EQ(134) - EVT_EXEC_WAIT(battle_partner_goombario_8023C5B8) - EVT_CASE_EQ(135) - EVT_EXEC_WAIT(battle_partner_goombario_8023C90C) - EVT_CASE_EQ(136) - EVT_EXEC_WAIT(battle_partner_goombario_8023BB9C) + EVT_CASE_EQ(MOVE_HEADBONK1) + EVT_EXEC_WAIT(N(headbonk1)) + EVT_CASE_EQ(MOVE_HEADBONK2) + EVT_EXEC_WAIT(N(headbonk2)) + EVT_CASE_EQ(MOVE_HEADBONK3) + EVT_EXEC_WAIT(N(headbonk3)) + EVT_CASE_EQ(MOVE_TATTLE) + EVT_EXEC_WAIT(N(tattle)) + EVT_CASE_EQ(MOVE_CHARGE) + EVT_EXEC_WAIT(N(charge)) + EVT_CASE_EQ(MOVE_MULTIBONK) + EVT_EXEC_WAIT(N(multibonk)) EVT_END_SWITCH EVT_RETURN EVT_END }; -EvtScript N(8023993C) = { +EvtScript N(firstStrike) = { EVT_RETURN EVT_END }; -EvtScript N(8023994C) = { +EvtScript N(runAway) = { EVT_SET_CONST(LVar0, 0x1) - EVT_SET_CONST(LVar1, 0x90003) - EVT_EXEC_WAIT(D_80294AFC) + EVT_SET_CONST(LVar1, ANIM_BattleGoombario_Run) + EVT_EXEC_WAIT(DoPartnerRunAway) EVT_RETURN EVT_END }; -EvtScript N(80239988) = { - EVT_CALL(UseIdleAnimation, 256, 0) - EVT_CALL(SetGoalToHome, 256) - EVT_CALL(SetActorSpeed, 256, EVT_FLOAT(6.0)) - EVT_CALL(SetAnimation, 256, -1, 589827) - EVT_CALL(SetActorYaw, 256, 0) - EVT_CALL(RunToGoal, 256, 0) - EVT_CALL(SetAnimation, 256, -1, 589825) - EVT_CALL(UseIdleAnimation, 256, 1) +EvtScript N(runAwayFail) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, 0) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Run) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, 1) EVT_RETURN EVT_END }; -EvtScript N(nextTurn_80239A3C) = { +EvtScript N(nextTurn) = { EVT_CALL(GetBattlePhase, LVar0) EVT_SWITCH(LVar0) - EVT_CASE_EQ(10) + EVT_CASE_EQ(PHASE_PLAYER_BEGIN) EVT_IF_EQ(GF_Tutorial_SwapTurnOrder, 0) - EVT_CALL(UseIdleAnimation, 256, 0) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, 0) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_14) - EVT_CALL(BattleCamTargetActor, -127) + EVT_CALL(BattleCamTargetActor, ACTOR_SELF) EVT_CALL(MoveBattleCamOver, 20) EVT_WAIT(10) EVT_CALL(SetActorYaw, 0, 30) @@ -752,7 +746,7 @@ EvtScript N(nextTurn_80239A3C) = { EVT_WAIT(1) EVT_CALL(SetActorYaw, 0, 180) EVT_WAIT(5) - EVT_CALL(ActorSpeak, 721082, 256, 0, 589839, 589825) + EVT_CALL(ActorSpeak, MSG_CH0_00BA, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Talk, ANIM_BattleGoombario_Idle) EVT_CALL(SetActorYaw, 0, 150) EVT_WAIT(1) EVT_CALL(SetActorYaw, 0, 120) @@ -766,77 +760,77 @@ EvtScript N(nextTurn_80239A3C) = { EVT_CALL(SetActorYaw, 0, 0) EVT_WAIT(5) EVT_SET(GF_Tutorial_SwapTurnOrder, 1) - EVT_CALL(UseIdleAnimation, 256, 1) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, 1) EVT_END_IF EVT_END_SWITCH EVT_RETURN EVT_END }; -EvtScript N(80239CA8) = { - EVT_CALL(func_80280818) +EvtScript N(returnHome) = { + EVT_CALL(PartnerYieldTurn) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) - EVT_CALL(SetAnimation, 256, -1, 589825) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) EVT_THREAD EVT_WAIT(4) - EVT_CALL(SetActorRotationOffset, -127, 0, 12, 0) + EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 12, 0) EVT_SET(LVar0, 180) EVT_LOOP(3) EVT_ADD(LVar0, 60) - EVT_CALL(SetActorRotation, -127, 0, 0, LVar0) + EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_WAIT(1) EVT_END_LOOP - EVT_CALL(SetActorRotation, -127, 0, 0, 0) - EVT_CALL(SetActorRotationOffset, -127, 0, 0, 0) + EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0) + EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0) EVT_END_THREAD - EVT_CALL(GetActorPos, 256, LVar0, LVar1, LVar2) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_SUB(LVar0, 30) EVT_SET(LVar1, 0) - EVT_CALL(SetGoalPos, 256, LVar0, LVar1, LVar2) - EVT_CALL(SetActorJumpGravity, 256, EVT_FLOAT(1.2)) - EVT_CALL(battle_partner_goombario_func_80238000_6F10E0) - EVT_CALL(JumpToGoal, 256, LVar0, 0, 1, 0) - EVT_CALL(SetAnimation, -127, 1, 589831) - EVT_CALL(SetActorDispOffset, 256, 0, 18, 0) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.2)) + EVT_CALL(N(GetReturnMoveTime)) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, LVar0, 0, 1, 0) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_PreHeadbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 18, 0) EVT_WAIT(1) - EVT_CALL(SetActorDispOffset, 256, 0, 19, 0) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 19, 0) EVT_WAIT(1) - EVT_CALL(SetActorRotation, -127, 0, 0, 0) - EVT_CALL(SetActorDispOffset, -127, 0, 0, 0) - EVT_CALL(SetAnimation, 256, -1, 589825) - EVT_CALL(AddGoalPos, 256, -10, 0, 0) - EVT_CALL(JumpToGoal, 256, 6, 0, 0, 1) - EVT_CALL(SetAnimation, 256, -1, 589825) - EVT_CALL(SetAnimation, -127, 1, 589831) - EVT_CALL(SetActorDispOffset, 256, 0, 18, 0) + EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0) + EVT_CALL(SetActorDispOffset, ACTOR_SELF, 0, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -10, 0, 0) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 6, 0, 0, 1) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_PreHeadbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 18, 0) EVT_WAIT(1) - EVT_CALL(SetActorDispOffset, 256, 0, 19, 0) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 19, 0) EVT_WAIT(1) - EVT_CALL(SetAnimation, -127, 1, 589825) - EVT_CALL(SetActorDispOffset, -127, 0, 0, 0) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_Idle) + EVT_CALL(SetActorDispOffset, ACTOR_SELF, 0, 0, 0) EVT_WAIT(2) - EVT_CALL(SetGoalToHome, 256) - EVT_CALL(SetActorSpeed, 256, EVT_FLOAT(8.0)) - EVT_CALL(SetAnimation, 256, -1, 589827) - EVT_CALL(RunToGoal, 256, 0) - EVT_CALL(SetAnimation, 256, -1, 589825) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(8.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Run) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) EVT_RETURN EVT_END }; -EvtScript N(8023A06C) = { - EVT_CALL(func_80280818) +EvtScript N(returnHome2) = { + EVT_CALL(PartnerYieldTurn) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) - EVT_CALL(SetAnimation, 256, -1, 589825) - EVT_CALL(SetGoalToHome, 256) - EVT_CALL(GetGoalPos, 256, LVar0, LVar1, LVar2) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_ADD(LVar0, 60) - EVT_CALL(SetGoalPos, 256, LVar0, LVar1, LVar2) - EVT_CALL(SetActorJumpGravity, 256, EVT_FLOAT(1.4)) - EVT_CALL(battle_partner_goombario_func_80238000_6F10E0) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.4)) + EVT_CALL(N(GetReturnMoveTime)) EVT_THREAD EVT_WAIT(4) - EVT_CALL(SetActorRotationOffset, -127, 0, 12, 0) + EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 12, 0) EVT_SUB(LVar0, 4) EVT_SET(LVar1, LVar0) EVT_DIV(LVar1, 3) @@ -852,69 +846,69 @@ EvtScript N(8023A06C) = { EVT_LOOP(LVar1) EVT_LOOP(3) EVT_ADD(LVar0, 60) - EVT_CALL(SetActorRotation, -127, 0, 0, LVar0) + EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_WAIT(1) EVT_END_LOOP EVT_END_LOOP - EVT_CALL(SetActorRotation, -127, 0, 0, 0) - EVT_CALL(SetActorRotationOffset, -127, 0, 0, 0) + EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0) + EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0) EVT_END_THREAD - EVT_CALL(JumpToGoal, 256, LVar0, 0, 1, 0) - EVT_CALL(SetAnimation, -127, 1, 589831) - EVT_CALL(SetActorDispOffset, 256, 0, 18, 0) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, LVar0, 0, 1, 0) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_PreHeadbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 18, 0) EVT_WAIT(1) - EVT_CALL(SetActorRotation, -127, 0, 0, 0) - EVT_CALL(SetActorDispOffset, -127, 0, 0, 0) - EVT_CALL(SetAnimation, 256, -1, 589825) - EVT_CALL(AddGoalPos, 256, -20, 0, 0) - EVT_CALL(JumpToGoal, 256, 6, 0, 0, 1) - EVT_CALL(SetAnimation, -127, 1, 589831) - EVT_CALL(SetActorDispOffset, 256, 0, 18, 0) + EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, 0) + EVT_CALL(SetActorDispOffset, ACTOR_SELF, 0, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -20, 0, 0) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 6, 0, 0, 1) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_PreHeadbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 18, 0) EVT_WAIT(1) - EVT_CALL(AddGoalPos, 256, -10, 0, 0) - EVT_CALL(SetAnimation, 256, -1, 589825) - EVT_CALL(SetActorDispOffset, -127, 0, 0, 0) - EVT_CALL(JumpToGoal, 256, 4, 0, 0, 1) - EVT_CALL(SetAnimation, -127, 1, 589831) - EVT_CALL(SetActorDispOffset, 256, 0, 18, 0) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -10, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) + EVT_CALL(SetActorDispOffset, ACTOR_SELF, 0, 0, 0) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 4, 0, 0, 1) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_PreHeadbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 18, 0) EVT_WAIT(1) - EVT_CALL(SetActorDispOffset, -127, 0, 0, 0) - EVT_CALL(SetAnimation, 256, -1, 589825) + EVT_CALL(SetActorDispOffset, ACTOR_SELF, 0, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) EVT_WAIT(2) - EVT_CALL(SetGoalToHome, 256) - EVT_CALL(SetActorSpeed, 256, EVT_FLOAT(8.0)) - EVT_CALL(SetAnimation, 256, -1, 589827) - EVT_CALL(RunToGoal, 256, 0) - EVT_CALL(SetAnimation, 256, -1, 589825) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(8.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Run) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) EVT_RETURN EVT_END }; -EvtScript N(8023A52C) = { - EVT_CALL(SetGoalToFirstTarget, -127) - EVT_CALL(GetGoalPos, -127, LVar0, LVar1, LVar2) +EvtScript N(runToTarget) = { + EVT_CALL(SetGoalToFirstTarget, ACTOR_SELF) + EVT_CALL(GetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2) EVT_SUB(LVar0, 40) EVT_CALL(InitTargetIterator) - EVT_CALL(SetGoalToTarget, 256) - EVT_CALL(GetGoalPos, 256, LVar3, LVar4, LVar5) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVar3, LVar4, LVar5) EVT_SUB(LVar3, EVT_FLOAT(70.0)) EVT_IF_LT(LVar0, LVar3) EVT_SET(LVar3, LVar0) EVT_END_IF - EVT_CALL(SetGoalPos, 256, LVar3, LVar4, LVar5) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar3, LVar4, LVar5) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_47) - EVT_CALL(SetActorSpeed, 256, EVT_FLOAT(5.0)) - EVT_CALL(SetAnimation, 256, -1, 589827) - EVT_CALL(RunToGoal, 256, 0) - EVT_CALL(SetAnimation, 256, -1, 589825) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(5.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Run) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) EVT_RETURN EVT_END }; -EvtScript N(8023A66C) = { - EVT_CALL(SetGoalToTarget, 256) - EVT_CALL(GetGoalPos, 256, LVarB, LVar7, LVarD) - EVT_CALL(GetActorPos, 256, LVar7, LVarD, LVarE) +EvtScript N(calcJumpTime) = { + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVarB, LVar7, LVarD) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar7, LVarD, LVarE) EVT_IF_GT(LVarB, LVar7) EVT_SUB(LVarB, LVar7) EVT_ELSE @@ -929,76 +923,76 @@ EvtScript N(8023A66C) = { EVT_END }; -EvtScript N(8023A754) = { - EVT_CALL(LoadActionCommand, 1) +EvtScript N(headbonk1) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_JUMP) EVT_CALL(action_command_jump_CreateHudElements) - EVT_EXEC_WAIT(battle_partner_goombario_8023A52C) - EVT_EXEC_WAIT(battle_partner_goombario_8023A66C) - EVT_CALL(SetAnimation, -127, 1, 589831) - EVT_CALL(SetActorDispOffset, 256, 0, 18, 0) + EVT_EXEC_WAIT(N(runToTarget)) + EVT_EXEC_WAIT(N(calcJumpTime)) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_PreHeadbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 18, 0) EVT_WAIT(5) - EVT_CALL(SetActorDispOffset, 256, 0, 19, 0) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 19, 0) EVT_WAIT(1) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) EVT_CALL(func_802A9120_421B10, LVarA, 3) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) - EVT_CALL(SetAnimation, -127, 1, 589830) - EVT_CALL(SetActorDispOffset, 256, 0, 9, 0) - EVT_CALL(SetGoalToTarget, 256) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(PlaySoundAtActor, 256, 8205) - EVT_CALL(func_8023817C_6F125C, LVarA, 0) - EVT_CALL(PartnerTestEnemy, LVar0, 128, 20, 0, 1, BS_FLAGS1_10) - EVT_IF_EQ(LVar0, 6) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(battle_partner_goombario_func_80238A20_6F1B00) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_Headbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 9, 0) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_200D) + EVT_CALL(N(JumpOnTarget), LVarA, 0) + EVT_CALL(PartnerTestEnemy, LVar0, DAMAGE_TYPE_JUMP, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(N(OnMissHeadbonk)) EVT_THREAD EVT_CALL(ShakeCam, 1, 0, 5, EVT_FLOAT(1.0)) EVT_END_THREAD - EVT_CALL(PlaySoundAtActor, 256, 354) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_162) EVT_WAIT(20) - EVT_EXEC_WAIT(battle_partner_goombario_80239CA8) + EVT_EXEC_WAIT(N(returnHome)) EVT_RETURN EVT_END_IF EVT_CHILD_THREAD - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) EVT_END_CHILD_THREAD EVT_WAIT(1) EVT_CALL(GetActionCommandResult, LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(0) - EVT_CALL(battle_partner_goombario_IsGlowing) + EVT_CALL(N(GetChargeAmount)) EVT_ADD(LVar0, 1) - EVT_CALL(PartnerDamageEnemy, LVar0, 128, 0, 0, LVar0, BS_FLAGS1_40 | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP, 0, 0, LVar0, BS_FLAGS1_40 | BS_FLAGS1_10) EVT_CASE_DEFAULT - EVT_CALL(battle_partner_goombario_StopGlowingAndGet) + EVT_CALL(N(StopChargeAndGet)) EVT_ADD(LVar0, 1) - EVT_CALL(PartnerDamageEnemy, LVar0, 128, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_SWITCH - EVT_CALL(PlaySoundAtActor, 256, 0) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0) EVT_SWITCH(LVar0) - EVT_CASE_OR_EQ(0) - EVT_CASE_OR_EQ(2) - EVT_EXEC_WAIT(battle_partner_goombario_80239CA8) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(returnHome)) EVT_RETURN EVT_END_CASE_GROUP - EVT_CASE_OR_EQ(1) - EVT_CASE_OR_EQ(3) + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) EVT_END_CASE_GROUP EVT_END_SWITCH EVT_THREAD EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_50) EVT_WAIT(5) - EVT_CALL(SetGoalToTarget, 256) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_53) EVT_END_THREAD EVT_CALL(func_80269524, LVarF) EVT_CALL(CloseActionCommandInfo) - EVT_CALL(LoadActionCommand, 1) + EVT_CALL(LoadActionCommand, ACTION_COMMAND_JUMP) EVT_CALL(action_command_jump_CreateHudElements) EVT_CALL(func_802694A4, 0) EVT_CALL(func_802A9120_421B10, 24, 3) @@ -1008,102 +1002,102 @@ EvtScript N(8023A754) = { EVT_SET(LVar0, 0) EVT_LOOP(6) EVT_ADD(LVar0, -30) - EVT_CALL(SetActorRotation, -127, 0, 0, LVar0) + EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_WAIT(1) EVT_END_LOOP EVT_END_THREAD - EVT_CALL(SetGoalToTarget, 256) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(PlaySoundAtActor, 256, 641) - EVT_CALL(func_8023817C_6F125C, LVarA, 3) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_281) + EVT_CALL(N(JumpOnTarget), LVarA, 3) EVT_CHILD_THREAD - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) EVT_END_CHILD_THREAD EVT_WAIT(1) - EVT_CALL(battle_partner_goombario_StopGlowingAndGet) + EVT_CALL(N(StopChargeAndGet)) EVT_ADD(LVar0, 1) - EVT_CALL(PartnerDamageEnemy, LVar0, 128, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE) - EVT_CALL(PlaySoundAtActor, 256, 0) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0) EVT_CALL(func_80269550, LVarF) - EVT_EXEC_WAIT(battle_partner_goombario_8023A06C) + EVT_EXEC_WAIT(N(returnHome2)) EVT_RETURN EVT_END }; -EvtScript N(8023ADC4) = { - EVT_CALL(LoadActionCommand, 1) +EvtScript N(headbonk2) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_JUMP) EVT_CALL(action_command_jump_CreateHudElements) - EVT_EXEC_WAIT(battle_partner_goombario_8023A52C) - EVT_EXEC_WAIT(battle_partner_goombario_8023A66C) - EVT_CALL(SetAnimation, -127, 1, 589831) - EVT_CALL(SetActorDispOffset, 256, 0, 18, 0) + EVT_EXEC_WAIT(N(runToTarget)) + EVT_EXEC_WAIT(N(calcJumpTime)) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_PreHeadbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 18, 0) EVT_WAIT(5) - EVT_CALL(SetActorDispOffset, 256, 0, 19, 0) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 19, 0) EVT_WAIT(1) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) EVT_CALL(func_802A9120_421B10, LVarA, 3) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) - EVT_CALL(SetAnimation, -127, 1, 589830) - EVT_CALL(SetActorDispOffset, 256, 0, 9, 0) - EVT_CALL(SetGoalToTarget, 256) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(PlaySoundAtActor, 256, 8205) - EVT_CALL(func_8023817C_6F125C, LVarA, 0) - EVT_CALL(PartnerTestEnemy, LVar0, 128, 20, 0, 1, BS_FLAGS1_10) - EVT_IF_EQ(LVar0, 6) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(battle_partner_goombario_func_80238A20_6F1B00) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_Headbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 9, 0) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_200D) + EVT_CALL(N(JumpOnTarget), LVarA, 0) + EVT_CALL(PartnerTestEnemy, LVar0, DAMAGE_TYPE_JUMP, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(N(OnMissHeadbonk)) EVT_THREAD EVT_CALL(ShakeCam, 1, 0, 5, EVT_FLOAT(1.0)) EVT_END_THREAD - EVT_CALL(PlaySoundAtActor, 256, 354) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_162) EVT_WAIT(20) - EVT_EXEC_WAIT(battle_partner_goombario_80239CA8) + EVT_EXEC_WAIT(N(returnHome)) EVT_RETURN EVT_END_IF EVT_CHILD_THREAD - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) EVT_END_CHILD_THREAD EVT_WAIT(1) EVT_CALL(GetActionCommandResult, LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(0) - EVT_CALL(battle_partner_goombario_IsGlowing) + EVT_CALL(N(GetChargeAmount)) EVT_ADD(LVar0, 2) - EVT_CALL(PartnerDamageEnemy, LVar0, 128, 0, 0, LVar0, BS_FLAGS1_40 | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP, 0, 0, LVar0, BS_FLAGS1_40 | BS_FLAGS1_10) EVT_CASE_DEFAULT - EVT_CALL(battle_partner_goombario_StopGlowingAndGet) + EVT_CALL(N(StopChargeAndGet)) EVT_ADD(LVar0, 2) - EVT_CALL(PartnerDamageEnemy, LVar0, 128, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_SWITCH - EVT_CALL(PlaySoundAtActor, 256, 0) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0) EVT_SWITCH(LVar0) - EVT_CASE_OR_EQ(0) - EVT_CASE_OR_EQ(2) - EVT_EXEC_WAIT(battle_partner_goombario_80239CA8) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(returnHome)) EVT_RETURN EVT_END_CASE_GROUP - EVT_CASE_OR_EQ(1) - EVT_CASE_OR_EQ(3) + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) EVT_END_CASE_GROUP EVT_END_SWITCH EVT_THREAD EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_50) EVT_WAIT(5) - EVT_CALL(SetGoalToTarget, 256) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_53) EVT_END_THREAD EVT_CALL(func_80269524, LVarF) EVT_CALL(CloseActionCommandInfo) - EVT_CALL(LoadActionCommand, 1) + EVT_CALL(LoadActionCommand, ACTION_COMMAND_JUMP) EVT_CALL(action_command_jump_CreateHudElements) EVT_CALL(func_802694A4, 0) EVT_CALL(func_802A9120_421B10, 24, 3) @@ -1113,104 +1107,104 @@ EvtScript N(8023ADC4) = { EVT_SET(LVar0, 0) EVT_LOOP(6) EVT_ADD(LVar0, -30) - EVT_CALL(SetActorRotation, -127, 0, 0, LVar0) + EVT_CALL(SetActorRotation, ACTOR_SELF, 0, 0, LVar0) EVT_WAIT(1) EVT_END_LOOP EVT_END_THREAD - EVT_CALL(SetGoalToTarget, 256) - EVT_CALL(EnableActorBlur, 256, 1) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(PlaySoundAtActor, 256, 641) - EVT_CALL(func_8023817C_6F125C, LVarA, 3) - EVT_CALL(EnableActorBlur, 256, -1) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_281) + EVT_CALL(N(JumpOnTarget), LVarA, 3) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, -1) EVT_CHILD_THREAD - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) EVT_END_CHILD_THREAD EVT_WAIT(1) - EVT_CALL(battle_partner_goombario_StopGlowingAndGet) + EVT_CALL(N(StopChargeAndGet)) EVT_ADD(LVar0, 2) - EVT_CALL(PartnerDamageEnemy, LVar0, 128, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE) - EVT_CALL(PlaySoundAtActor, 256, 0) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0) EVT_CALL(func_80269550, LVarF) - EVT_EXEC_WAIT(battle_partner_goombario_8023A06C) + EVT_EXEC_WAIT(N(returnHome2)) EVT_RETURN EVT_END }; -EvtScript N(8023B45C) = { - EVT_CALL(LoadActionCommand, 1) +EvtScript N(headbonk3) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_JUMP) EVT_CALL(action_command_jump_CreateHudElements) - EVT_EXEC_WAIT(battle_partner_goombario_8023A52C) - EVT_EXEC_WAIT(battle_partner_goombario_8023A66C) - EVT_CALL(SetAnimation, -127, 1, 589831) - EVT_CALL(SetActorDispOffset, 256, 0, 18, 0) + EVT_EXEC_WAIT(N(runToTarget)) + EVT_EXEC_WAIT(N(calcJumpTime)) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_PreHeadbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 18, 0) EVT_WAIT(5) - EVT_CALL(SetActorDispOffset, 256, 0, 19, 0) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 19, 0) EVT_WAIT(1) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) EVT_CALL(func_802A9120_421B10, LVarA, 3) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) - EVT_CALL(SetAnimation, -127, 1, 589830) - EVT_CALL(SetActorDispOffset, 256, 0, 9, 0) - EVT_CALL(SetGoalToTarget, 256) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(PlaySoundAtActor, 256, 8205) - EVT_CALL(func_8023817C_6F125C, LVarA, 0) - EVT_CALL(PartnerTestEnemy, LVar0, 128, 20, 0, 1, BS_FLAGS1_10) - EVT_IF_EQ(LVar0, 6) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(battle_partner_goombario_func_80238A20_6F1B00) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_Headbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 9, 0) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_200D) + EVT_CALL(N(JumpOnTarget), LVarA, 0) + EVT_CALL(PartnerTestEnemy, LVar0, DAMAGE_TYPE_JUMP, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(N(OnMissHeadbonk)) EVT_THREAD EVT_CALL(ShakeCam, 1, 0, 5, EVT_FLOAT(1.0)) EVT_END_THREAD - EVT_CALL(PlaySoundAtActor, 256, 354) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_162) EVT_WAIT(20) - EVT_EXEC_WAIT(battle_partner_goombario_80239CA8) + EVT_EXEC_WAIT(N(returnHome)) EVT_RETURN EVT_END_IF EVT_CHILD_THREAD - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) EVT_END_CHILD_THREAD EVT_WAIT(1) EVT_CALL(GetActionCommandResult, LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(0) - EVT_CALL(battle_partner_goombario_IsGlowing) + EVT_CALL(N(GetChargeAmount)) EVT_ADD(LVar0, 3) - EVT_CALL(PartnerDamageEnemy, LVar0, 128, 0, 0, LVar0, BS_FLAGS1_40 | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP, 0, 0, LVar0, BS_FLAGS1_40 | BS_FLAGS1_10) EVT_CASE_DEFAULT - EVT_CALL(battle_partner_goombario_StopGlowingAndGet) + EVT_CALL(N(StopChargeAndGet)) EVT_ADD(LVar0, 3) - EVT_CALL(PartnerDamageEnemy, LVar0, 128, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_SWITCH - EVT_CALL(PlaySoundAtActor, 256, 0) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0) EVT_SWITCH(LVar0) - EVT_CASE_OR_EQ(0) - EVT_CASE_OR_EQ(2) - EVT_EXEC_WAIT(battle_partner_goombario_80239CA8) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(returnHome)) EVT_RETURN EVT_END_CASE_GROUP - EVT_CASE_OR_EQ(1) - EVT_CASE_OR_EQ(3) + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) EVT_END_CASE_GROUP EVT_END_SWITCH EVT_THREAD EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_50) EVT_WAIT(5) - EVT_CALL(SetGoalToTarget, 256) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_53) EVT_END_THREAD EVT_CALL(func_80269524, LVarF) EVT_CALL(CloseActionCommandInfo) - EVT_CALL(LoadActionCommand, 1) + EVT_CALL(LoadActionCommand, ACTION_COMMAND_JUMP) EVT_CALL(action_command_jump_CreateHudElements) EVT_CALL(func_802694A4, 0) EVT_CALL(func_802A9120_421B10, 24, 3) @@ -1220,114 +1214,112 @@ EvtScript N(8023B45C) = { EVT_SET(LVar0, 0) EVT_LOOP(6) EVT_ADD(LVar0, -30) - EVT_CALL(SetActorRotation, -127, 0, EVT_IGNORE_ARG, LVar0) + EVT_CALL(SetActorRotation, ACTOR_SELF, 0, EVT_IGNORE_ARG, LVar0) EVT_WAIT(1) EVT_END_LOOP - EVT_CALL(SetAnimation, -127, 1, 589830) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_Headbonk) EVT_END_THREAD EVT_THREAD EVT_SET(LVar0, 0) EVT_LOOP(LVarA) EVT_ADD(LVar0, 133) - EVT_CALL(SetActorRotation, -127, EVT_IGNORE_ARG, LVar0, EVT_IGNORE_ARG) + EVT_CALL(SetActorRotation, ACTOR_SELF, EVT_IGNORE_ARG, LVar0, EVT_IGNORE_ARG) EVT_WAIT(1) EVT_END_LOOP EVT_END_THREAD - EVT_CALL(SetGoalToTarget, 256) - EVT_CALL(EnableActorBlur, 256, 1) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(PlaySoundAtActor, 256, 641) - EVT_CALL(func_8023817C_6F125C, LVarA, 3) - EVT_CALL(EnableActorBlur, 256, -1) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_281) + EVT_CALL(N(JumpOnTarget), LVarA, 3) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, -1) EVT_CHILD_THREAD - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) EVT_END_CHILD_THREAD EVT_WAIT(1) - EVT_CALL(battle_partner_goombario_StopGlowingAndGet) + EVT_CALL(N(StopChargeAndGet)) EVT_ADD(LVar0, 3) - EVT_CALL(PartnerDamageEnemy, LVar0, 128, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE) - EVT_CALL(PlaySoundAtActor, 256, 0) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0) EVT_CALL(func_80269550, LVarF) - EVT_EXEC_WAIT(battle_partner_goombario_8023A06C) + EVT_EXEC_WAIT(N(returnHome2)) EVT_RETURN EVT_END }; -s32 N(D_8023BB78_6ECC58)[] = { - 0x00000007, 0x00000006, 0x00000005, 0x00000004, 0x00000003, 0x00000002, 0x00000001, 0x00000000, -}; +s32 N(actionCommandTable)[] = { 7, 6, 5, 4, 3, 2, 1, 0, }; -s32 D_8023BB98_6ECC78 = 0x000000C8; +s32 N(powerBounceChance) = 200; -EvtScript N(8023BB9C) = { - EVT_CALL(LoadActionCommand, 1) +EvtScript N(multibonk) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_JUMP) EVT_CALL(action_command_jump_CreateHudElements) - EVT_EXEC_WAIT(battle_partner_goombario_8023A52C) - EVT_EXEC_WAIT(battle_partner_goombario_8023A66C) - EVT_CALL(SetAnimation, -127, 1, 589831) - EVT_CALL(SetActorDispOffset, 256, 0, 18, 0) + EVT_EXEC_WAIT(N(runToTarget)) + EVT_EXEC_WAIT(N(calcJumpTime)) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_PreHeadbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 18, 0) EVT_WAIT(5) - EVT_CALL(SetActorDispOffset, 256, 0, 19, 0) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 19, 0) EVT_WAIT(1) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) EVT_CALL(func_802A9120_421B10, LVarA, 1) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) - EVT_CALL(SetAnimation, -127, 1, 589830) - EVT_CALL(SetActorDispOffset, 256, 0, 9, 0) - EVT_CALL(SetGoalToTarget, 256) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(PlaySoundAtActor, 256, 8205) - EVT_CALL(func_8023817C_6F125C, LVarA, 0) - EVT_CALL(PartnerTestEnemy, LVar0, 1048704, 20, 0, 1, BS_FLAGS1_10) - EVT_IF_EQ(LVar0, 6) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(battle_partner_goombario_func_80238A20_6F1B00) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_Headbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 9, 0) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_200D) + EVT_CALL(N(JumpOnTarget), LVarA, 0) + EVT_CALL(PartnerTestEnemy, LVar0, DAMAGE_TYPE_JUMP | DAMAGE_TYPE_POWER_BOUNCE, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(N(OnMissHeadbonk)) EVT_THREAD EVT_CALL(ShakeCam, 1, 0, 5, EVT_FLOAT(1.0)) EVT_END_THREAD - EVT_CALL(PlaySoundAtActor, 256, 354) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_162) EVT_WAIT(20) - EVT_EXEC_WAIT(battle_partner_goombario_80239CA8) + EVT_EXEC_WAIT(N(returnHome)) EVT_RETURN EVT_END_IF EVT_CHILD_THREAD - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) EVT_END_CHILD_THREAD EVT_WAIT(1) EVT_CALL(GetActionCommandResult, LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(0) - EVT_CALL(battle_partner_goombario_IsGlowing) + EVT_CALL(N(GetChargeAmount)) EVT_ADD(LVar0, 3) - EVT_CALL(PartnerDamageEnemy, LVar0, 1048704, 0, 0, LVar0, BS_FLAGS1_40 | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP | DAMAGE_TYPE_POWER_BOUNCE, 0, 0, LVar0, BS_FLAGS1_40 | BS_FLAGS1_10) EVT_CASE_DEFAULT - EVT_CALL(battle_partner_goombario_StopGlowingAndGet) + EVT_CALL(N(StopChargeAndGet)) EVT_ADD(LVar0, 3) - EVT_CALL(PartnerDamageEnemy, LVar0, 1048704, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP | DAMAGE_TYPE_POWER_BOUNCE, 0, 0, LVar0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_SWITCH - EVT_CALL(PlaySoundAtActor, 256, 0) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0) EVT_SWITCH(LVar0) - EVT_CASE_OR_EQ(0) - EVT_CASE_OR_EQ(2) - EVT_EXEC_WAIT(battle_partner_goombario_80239CA8) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(returnHome)) EVT_RETURN EVT_END_CASE_GROUP - EVT_CASE_OR_EQ(1) - EVT_CASE_OR_EQ(3) + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) EVT_END_CASE_GROUP EVT_END_SWITCH EVT_THREAD EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_50) EVT_WAIT(5) - EVT_CALL(SetGoalToTarget, 256) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_53) EVT_END_THREAD EVT_CALL(func_80269524, LVarF) @@ -1338,12 +1330,12 @@ EvtScript N(8023BB9C) = { EVT_THREAD EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_50) EVT_WAIT(5) - EVT_CALL(SetGoalToTarget, 256) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_53) EVT_END_THREAD EVT_CALL(CloseActionCommandInfo) - EVT_CALL(func_8026919C, EVT_PTR(battle_partner_goombario_D_8023BB78_6ECC58)) - EVT_CALL(LoadActionCommand, 1) + EVT_CALL(func_8026919C, EVT_PTR(N(actionCommandTable))) + EVT_CALL(LoadActionCommand, ACTION_COMMAND_JUMP) EVT_CALL(action_command_jump_CreateHudElements) EVT_SET(LVarA, 24) EVT_SWITCH(LVarF) @@ -1363,68 +1355,68 @@ EvtScript N(8023BB9C) = { EVT_SET(LVar0, 0) EVT_LOOP(6) EVT_ADD(LVar0, -30) - EVT_CALL(SetActorRotation, -127, 0, EVT_IGNORE_ARG, LVar0) + EVT_CALL(SetActorRotation, ACTOR_SELF, 0, EVT_IGNORE_ARG, LVar0) EVT_WAIT(1) EVT_END_LOOP - EVT_CALL(SetAnimation, -127, 1, 589830) + EVT_CALL(SetAnimation, ACTOR_SELF, 1, ANIM_BattleGoombario_Headbonk) EVT_END_THREAD EVT_THREAD EVT_SET(LVar0, 0) EVT_LOOP(LVarA) EVT_ADD(LVar0, 133) - EVT_CALL(SetActorRotation, -127, EVT_IGNORE_ARG, LVar0, EVT_IGNORE_ARG) + EVT_CALL(SetActorRotation, ACTOR_SELF, EVT_IGNORE_ARG, LVar0, EVT_IGNORE_ARG) EVT_WAIT(1) EVT_END_LOOP EVT_END_THREAD - EVT_CALL(SetGoalToTarget, 256) - EVT_CALL(EnableActorBlur, 256, 1) - EVT_CALL(SetJumpAnimations, 256, 0, 589830, 589830, 589830) - EVT_CALL(PlaySoundAtActor, 256, 641) - EVT_CALL(func_8023817C_6F125C, LVarA, 3) - EVT_CALL(EnableActorBlur, 256, -1) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, 0, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk, ANIM_BattleGoombario_Headbonk) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_281) + EVT_CALL(N(JumpOnTarget), LVarA, 3) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, -1) EVT_SUB(LVarD, 1) - EVT_CALL(func_802380E4_6F11C4) + EVT_CALL(N(AdjustPowerBounceChance)) EVT_IF_GE(LVarF, LVar0) EVT_SET(LocalFlag(0), 1) EVT_END_IF EVT_CHILD_THREAD - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(0.8), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.3), EVT_FLOAT(0.5), EVT_FLOAT(1.0)) EVT_WAIT(1) - EVT_CALL(SetActorScale, 256, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) EVT_END_CHILD_THREAD EVT_WAIT(1) EVT_CALL(GetActionCommandResult, LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(0) EVT_IF_EQ(LocalFlag(0), 0) - EVT_CALL(battle_partner_goombario_IsGlowing) + EVT_CALL(N(GetChargeAmount)) EVT_ADD(LVar0, 3) EVT_CALL(PartnerPowerBounceEnemy, LVar0, 1048704, 0, 0, LVar0, LVarD, BS_FLAGS1_40) EVT_ELSE - EVT_CALL(battle_partner_goombario_StopGlowingAndGet) + EVT_CALL(N(StopChargeAndGet)) EVT_ADD(LVar0, 3) EVT_CALL(PartnerPowerBounceEnemy, LVar0, 1048704, 0, 0, LVar0, LVarD, BS_FLAGS1_SP_EVT_ACTIVE) EVT_END_IF EVT_CASE_DEFAULT - EVT_CALL(battle_partner_goombario_StopGlowingAndGet) + EVT_CALL(N(StopChargeAndGet)) EVT_ADD(LVar0, 3) EVT_CALL(PartnerPowerBounceEnemy, LVar0, 1048704, 0, 0, LVar0, LVarD, BS_FLAGS1_SP_EVT_ACTIVE) EVT_SET(LocalFlag(0), 0) EVT_END_SWITCH - EVT_CALL(PlaySoundAtActor, 256, 0) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0) EVT_CALL(func_80269550, LVarE) EVT_SWITCH(LVar0) - EVT_CASE_OR_EQ(0) - EVT_CASE_OR_EQ(2) - EVT_EXEC_WAIT(battle_partner_goombario_80239CA8) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(returnHome)) EVT_RETURN EVT_END_CASE_GROUP - EVT_CASE_OR_EQ(1) - EVT_CASE_OR_EQ(3) + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) EVT_IF_EQ(LocalFlag(0), 1) - EVT_EXEC_WAIT(battle_partner_goombario_8023A06C) + EVT_EXEC_WAIT(N(returnHome2)) EVT_RETURN EVT_END_IF EVT_END_CASE_GROUP @@ -1435,100 +1427,100 @@ EvtScript N(8023BB9C) = { EVT_END }; -EvtScript N(8023C5B8) = { - EVT_CALL(GetActorPos, 256, LVar0, LVar1, LVar2) +EvtScript N(tattle) = { + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_ADD(LVar0, 30) - EVT_CALL(SetActorSpeed, 256, EVT_FLOAT(6.0)) - EVT_CALL(SetAnimation, 256, -1, 589827) - EVT_CALL(SetGoalPos, 256, LVar0, LVar1, LVar2) - EVT_CALL(RunToGoal, 256, 0, 0) - EVT_CALL(SetAnimation, 256, -1, 589825) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Run) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) EVT_CALL(InitTargetIterator) - EVT_CALL(SetGoalToTarget, 256) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4, 1) - EVT_CALL(func_80238E04_6F1EE4) + EVT_CALL(N(OpenTattleWindow)) EVT_WAIT(12) - EVT_CALL(SetCamEnabled, 2, 1) - EVT_CALL(SetCamFlag80, 2, 0) - EVT_CALL(SetCamPerspective, 2, 6, 25, 16, 1024) - EVT_CALL(SetCamViewport, 2, 137, 95, 138, 99) + EVT_CALL(SetCamEnabled, CAM_TATTLE, 1) + EVT_CALL(SetCamFlag80, CAM_TATTLE, 0) + EVT_CALL(SetCamPerspective, CAM_TATTLE, 6, 25, 16, 1024) + EVT_CALL(SetCamViewport, CAM_TATTLE, 137, 95, 138, 99) EVT_CALL(GetOwnerTarget, LVarA, LVarB) EVT_CALL(GetActorPos, LVarA, LVar0, LVar1, LVar2) - EVT_CALL(SetGoalPos, 256, LVar0, LVar1, LVar2) - EVT_CALL(func_80238BCC_6F1CAC) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(N(GetTattleCamPos)) EVT_WAIT(1) - EVT_CALL(func_802CAE50, 2, LVar0, LVar1, LVar2) - EVT_CALL(func_802CABE8, 2, 0, LVar3, 100, 4) + EVT_CALL(func_802CAE50, CAM_TATTLE, LVar0, LVar1, LVar2) + EVT_CALL(func_802CABE8, CAM_TATTLE, 0, LVar3, 100, 4) EVT_WAIT(2) - EVT_CALL(PlaySoundAtActor, 256, 642) - EVT_CALL(SetCamFlag80, 2, 1) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_282) + EVT_CALL(SetCamFlag80, CAM_TATTLE, 1) EVT_WAIT(10) - EVT_CALL(func_80238B60_6F1C40) - EVT_CALL(ActorSpeak, LVar0, -127, 1, 589839, 589825) - EVT_CALL(func_80238E48_6F1F28) + EVT_CALL(N(GetTattleMessage)) + EVT_CALL(ActorSpeak, LVar0, ACTOR_SELF, 1, ANIM_BattleGoombario_Talk, ANIM_BattleGoombario_Idle) + EVT_CALL(N(CloseTattleWindow)) EVT_WAIT(12) - EVT_CALL(SetCamEnabled, 2, 0) + EVT_CALL(SetCamEnabled, CAM_TATTLE, 0) EVT_WAIT(32) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4, 0) - EVT_CALL(func_80280818) - EVT_CALL(SetGoalToHome, 256) - EVT_CALL(SetActorSpeed, 256, EVT_FLOAT(4.0)) - EVT_CALL(SetActorJumpGravity, 256, EVT_FLOAT(1.8)) - EVT_CALL(SetAnimation, 256, -1, 589827) - EVT_CALL(RunToGoal, 256, 0) - EVT_CALL(SetAnimation, 256, -1, 589825) + EVT_CALL(PartnerYieldTurn) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(4.0)) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.8)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Run) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) EVT_RETURN EVT_END }; -EvtScript N(8023C90C) = { +EvtScript N(charge) = { EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_55) EVT_WAIT(10) - EVT_CALL(SetAnimation, 256, -1, 589831) - EVT_CALL(SetActorDispOffset, 256, 0, 19, 0) - EVT_CALL(GetActorPos, 256, LVar0, LVar1, LVar2) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_PreHeadbonk) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 19, 0) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_ADD(LVar1, 15) - EVT_CALL(PlaySoundAtActor, 256, 8335) - EVT_CALL(func_802390C8_6F21A8, LVar0, LVar1, LVar2, EVT_FLOAT(1.2)) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208F) + EVT_CALL(N(PlayChargeFX), LVar0, LVar1, LVar2, EVT_FLOAT(1.2)) EVT_WAIT(3) - EVT_CALL(func_802390C8_6F21A8, LVar0, LVar1, LVar2, EVT_FLOAT(0.8)) + EVT_CALL(N(PlayChargeFX), LVar0, LVar1, LVar2, EVT_FLOAT(0.8)) EVT_THREAD EVT_WAIT(15) - EVT_CALL(GetActorPos, 256, LVar0, LVar1, LVar2) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_ADD(LVar1, 15) EVT_ADD(LVar2, -5) - EVT_CALL(PlaySoundAtActor, 256, 8195) - EVT_CALL(PlayEffect, 82, 9, LVar0, LVar1, LVar2, EVT_FLOAT(2.0), 20, 0, 0, 0, 0, 0, 0, 0) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_2003) + EVT_CALL(PlayEffect, EFFECT_ENERGY_ORB_WAVE, 9, LVar0, LVar1, LVar2, EVT_FLOAT(2.0), 20, 0, 0, 0, 0, 0, 0, 0) EVT_END_THREAD EVT_WAIT(30) - EVT_CALL(SetAnimation, 256, -1, 589825) - EVT_CALL(SetActorDispOffset, 256, 0, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 0, 0) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) EVT_CALL(MoveBattleCamOver, 10) - EVT_CALL(func_80238E74_6F1F54) + EVT_CALL(N(CanChargeMore)) EVT_IF_EQ(LVar0, 0) - EVT_CALL(GetActorPos, 256, LVar0, LVar1, LVar2) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_ADD(LVar0, 10) EVT_ADD(LVar1, 25) EVT_ADD(LVar2, 5) - EVT_CALL(PlaySoundAtActor, 256, 8334) - EVT_CALL(func_80238EDC_6F1FBC, LVar0, LVar1, LVar2) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208E) + EVT_CALL(N(ChargeAtPos), LVar0, LVar1, LVar2) EVT_WAIT(4) - EVT_CALL(SetActorJumpGravity, 256, EVT_FLOAT(1.4)) - EVT_CALL(GetActorPos, 256, LVar0, LVar1, LVar2) - EVT_CALL(SetJumpAnimations, 256, 589828, 1, 589828, 589828) - EVT_CALL(SetGoalPos, 256, LVar0, LVar1, LVar2) - EVT_CALL(JumpToGoal, 256, 20, 1, 1, 0) - EVT_CALL(SetAnimation, 256, -1, 589825) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.4)) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(SetJumpAnimations, ACTOR_PARTNER, ANIM_BattleGoombario_Jump, 1, ANIM_BattleGoombario_Jump, ANIM_BattleGoombario_Jump) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 20, 1, 1, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleGoombario_Idle) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(134) + EVT_CASE_EQ(MOVE_TATTLE) EVT_CALL(ShowMessageBox, 36, 60) - EVT_CASE_EQ(135) - EVT_CALL(battle_partner_goombario_func_80239190_6F2270) + EVT_CASE_EQ(MOVE_CHARGE) + EVT_CALL(N(GetChargeMessage)) EVT_CALL(ShowMessageBox, LVar0, 60) - EVT_CASE_EQ(136) + EVT_CASE_EQ(MOVE_MULTIBONK) EVT_CALL(ShowMessageBox, 36, 60) EVT_END_SWITCH EVT_ELSE diff --git a/src/battle/partner/goompa.c b/src/battle/partner/goompa.c index 4d6c115104..c2ba519322 100644 --- a/src/battle/partner/goompa.c +++ b/src/battle/partner/goompa.c @@ -5,26 +5,26 @@ #define NAMESPACE battle_partner_goompa -extern EvtScript N(init_80238110); -extern EvtScript N(takeTurn_802383F4); -extern EvtScript N(idle_8023818C); -extern EvtScript N(handleEvent_8023819C); -extern EvtScript N(80238488); -extern EvtScript N(802384D4); -extern EvtScript N(80238510); -extern EvtScript N(8023859C); +extern EvtScript N(init); +extern EvtScript N(takeTurn); +extern EvtScript N(idle); +extern EvtScript N(handleEvent); +extern EvtScript N(celebrate); +extern EvtScript N(runAway); +extern EvtScript N(runAwayFail); +extern EvtScript N(executeAction); -s32 N(idleAnimations_80238000)[] = { +s32 N(idleAnimations)[] = { STATUS_NORMAL, ANIM_Goompa_Walk, STATUS_END, }; -s32 N(defenseTable_8023800C)[] = { +s32 N(defenseTable)[] = { ELEMENT_NORMAL, 0, ELEMENT_END, }; -s32 N(statusTable_80238018)[] = { +s32 N(statusTable)[] = { STATUS_NORMAL, 100, STATUS_DEFAULT, 100, STATUS_SLEEP, 100, @@ -49,12 +49,12 @@ s32 N(statusTable_80238018)[] = { STATUS_END, }; -ActorPartBlueprint N(partsTable_802380C4)[] = { +ActorPartBlueprint N(parts)[] = { { .index = 1, .opacity = 255, - .idleAnimations = N(idleAnimations_80238000), - .defenseTable = N(defenseTable_8023800C), + .idleAnimations = N(idleAnimations), + .defenseTable = N(defenseTable), }, }; @@ -62,10 +62,10 @@ ActorBlueprint NAMESPACE = { .flags = ACTOR_PART_FLAG_200000, .type = ACTOR_TYPE_GOOMBARIO, .maxHP = 99, - .partCount = ARRAY_COUNT(N(partsTable_802380C4)), - .partsData = N(partsTable_802380C4), - .script = &N(init_80238110), - .statusTable = N(statusTable_80238018), + .partCount = ARRAY_COUNT(N(parts)), + .partsData = N(parts), + .script = &N(init), + .statusTable = N(statusTable), .spinSmashReq = 4, .powerBounceChance = 80, .size = { 29, 26 }, @@ -73,22 +73,22 @@ ActorBlueprint NAMESPACE = { .statusMessageOffset = { 10, 20 }, }; -EvtScript N(init_80238110) = { - EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn_802383F4))) - EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle_8023818C))) - EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent_8023819C))) +EvtScript N(init) = { + EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn))) + EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle))) + EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent))) EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0) EVT_CALL(SetActorVar, ACTOR_SELF, 1, 0) EVT_RETURN EVT_END }; -EvtScript N(idle_8023818C) = { +EvtScript N(idle) = { EVT_RETURN EVT_END }; -EvtScript N(handleEvent_8023819C) = { +EvtScript N(handleEvent) = { EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) EVT_CALL(CloseActionCommandInfo) EVT_CALL(GetLastEvent, ACTOR_PARTNER, LVar0) @@ -110,14 +110,14 @@ EvtScript N(handleEvent_8023819C) = { EVT_SET_CONST(LVar1, ANIM_Goompa_Injured) EVT_SET_CONST(LVar2, ANIM_Goompa_Run) EVT_SET_CONST(LVar3, ANIM_Goompa_Idle) - EVT_EXEC_WAIT(D_80294FE4) + EVT_EXEC_WAIT(DoPartnerSpikeContact) EVT_CASE_EQ(EVENT_BURN_CONTACT) EVT_SET_CONST(LVar0, ANIM_Goompa_Injured) EVT_SET_CONST(LVar1, ANIM_Goompa_Injured) EVT_SET_CONST(LVar2, ANIM_Goompa_Injured) EVT_SET_CONST(LVar3, ANIM_Goompa_Run) EVT_SET_CONST(LVar4, ANIM_Goompa_Idle) - EVT_EXEC_WAIT(D_80294C68) + EVT_EXEC_WAIT(DoPartnerBurnContact) EVT_CASE_EQ(EVENT_BURN_HIT) EVT_SET_CONST(LVar0, 0) EVT_SET_CONST(LVar1, ANIM_Goompa_Injured) @@ -135,23 +135,23 @@ EvtScript N(handleEvent_8023819C) = { EVT_END }; -EvtScript N(takeTurn_802383F4) = { +EvtScript N(takeTurn) = { EVT_CALL(GetBattlePhase, LVar0) EVT_SWITCH(LVar0) EVT_CASE_EQ(PHASE_EXECUTE_ACTION) - EVT_EXEC_WAIT(N(8023859C)) + EVT_EXEC_WAIT(N(executeAction)) EVT_CASE_EQ(PHASE_5) - EVT_EXEC_WAIT(N(80238488)) + EVT_EXEC_WAIT(N(celebrate)) EVT_CASE_EQ(PHASE_RUN_AWAY_START) - EVT_EXEC_WAIT(N(802384D4)) + EVT_EXEC_WAIT(N(runAway)) EVT_CASE_EQ(PHASE_RUN_AWAY_FAIL) - EVT_EXEC_WAIT(N(80238510)) + EVT_EXEC_WAIT(N(runAwayFail)) EVT_END_SWITCH EVT_RETURN EVT_END }; -EvtScript N(80238488) = { +EvtScript N(celebrate) = { EVT_SET_CONST(LVar0, 1) EVT_SET_CONST(LVar1, ANIM_Goompa_Celebrate) EVT_SET_CONST(LVar2, ANIM_Goompa_Walk) @@ -160,15 +160,15 @@ EvtScript N(80238488) = { EVT_END }; -EvtScript N(802384D4) = { +EvtScript N(runAway) = { EVT_SET_CONST(LVar0, 1) EVT_SET_CONST(LVar1, ANIM_Goompa_Run) - EVT_EXEC_WAIT(D_80294AFC) + EVT_EXEC_WAIT(DoPartnerRunAway) EVT_RETURN EVT_END }; -EvtScript N(80238510) = { +EvtScript N(runAwayFail) = { EVT_CALL(SetGoalToHome, ACTOR_PARTNER) EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_Goompa_Run) @@ -179,7 +179,7 @@ EvtScript N(80238510) = { EVT_END }; -EvtScript N(8023859C) = { +EvtScript N(executeAction) = { EVT_RETURN EVT_END }; diff --git a/src/battle/partner/kooper.c b/src/battle/partner/kooper.c index 3fa70de23d..b978ec9c90 100644 --- a/src/battle/partner/kooper.c +++ b/src/battle/partner/kooper.c @@ -9,23 +9,23 @@ #define NAMESPACE battle_partner_kooper -extern EvtScript N(init_80238570); -extern EvtScript N(takeTurn_80238974); -extern EvtScript N(idle_802385D0); -extern EvtScript N(handleEvent_802385E0); -extern EvtScript N(nextTurn_80238B6C); +extern EvtScript N(init); +extern EvtScript N(takeTurn); +extern EvtScript N(idle); +extern EvtScript N(handleEvent); +extern EvtScript N(nextTurn); extern EvtScript N(firstStrike); -extern EvtScript N(80238B7C); -extern EvtScript N(80238A20); +extern EvtScript N(executeAction); +extern EvtScript N(celebrate); extern EvtScript N(runAway); extern EvtScript N(runAwayFail); -extern EvtScript N(80239384); -extern EvtScript N(80239E7C); -extern EvtScript N(8023AA38); -extern EvtScript N(8023B660); -extern EvtScript N(8023C754); +extern EvtScript N(shellToss); +extern EvtScript N(powerShell); +extern EvtScript N(dizzyShell); +extern EvtScript N(fireShell); +extern EvtScript N(shellTossOnFirstStrike); -ApiStatus func_80238000_6F5E80(Evt* script, s32 isInitialCall) { +ApiStatus N(SlowDown)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; ActorState* partnerActorMovement = &partnerActor->state; @@ -59,7 +59,7 @@ ApiStatus func_80238000_6F5E80(Evt* script, s32 isInitialCall) { return ApiStatus_BLOCK; } -ApiStatus func_80238114_6F5F94(Evt* script, s32 isInitialCall) { +ApiStatus N(SetTargetsYaw)(Evt* script, s32 isInitialCall) { SelectableTarget* target; Actor* actor = gBattleStatus.partnerActor; Actor* targetActor; @@ -84,7 +84,7 @@ ApiStatus func_80238114_6F5F94(Evt* script, s32 isInitialCall) { targetActorPart = get_actor_part(targetActor, target->partID); if (targetActor->transparentStatus == 0) { - if (!(targetActorPart->eventFlags & 0x20)) { + if (!(targetActorPart->eventFlags & ACTOR_EVENT_FLAG_ILLUSORY)) { if (x > targetX) { targetActor->yaw += 33; } else { @@ -149,35 +149,35 @@ ApiStatus N(AverageTargetDizzyChance)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_802383C0_6F6240(Evt* script, s32 isInitialCall) { - s32 var0 = script->varTable[0]; - s32 var1; - s32 var2; +ApiStatus N(GetFireShellSpeedAndDamage)(Evt* script, s32 isInitialCall) { + s32 mashResult = script->varTable[0]; + s32 damage; + s32 speedRating; - if (var0 < 36) { - var1 = 1; - var2 = 0; - } else if (var0 < 61) { - var1 = 3; - var2 = 1; - } else if (var0 < 81) { - var1 = 4; - var2 = 2; - } else if (var0 < 100) { - var1 = 5; - var2 = 3; + if (mashResult <= 35) { + damage = 1; + speedRating = 0; + } else if (mashResult <= 60) { + damage = 3; + speedRating = 1; + } else if (mashResult <= 80) { + damage = 4; + speedRating = 2; + } else if (mashResult < 100) { + damage = 5; + speedRating = 3; } else { - var1 = 6; - var2 = 4; + damage = 6; + speedRating = 4; } - script->varTable[14] = var2; - script->varTable[15] = var1; + script->varTable[14] = speedRating; + script->varTable[15] = damage; return ApiStatus_DONE2; } -s32 N(idleAnimations_80238430)[] = { +s32 N(idleAnimations)[] = { STATUS_NORMAL, ANIM_BattleKooper_Walk, STATUS_STONE, ANIM_BattleKooper_Still, STATUS_SLEEP, ANIM_BattleKooper_Pray, @@ -188,12 +188,12 @@ s32 N(idleAnimations_80238430)[] = { STATUS_END, }; -s32 N(defenseTable_8023846C)[] = { +s32 N(defenseTable)[] = { ELEMENT_NORMAL, 0, ELEMENT_END, }; -s32 N(statusTable_80238478)[] = { +s32 N(statusTable)[] = { STATUS_NORMAL, 100, STATUS_DEFAULT, 100, STATUS_SLEEP, 100, @@ -218,15 +218,15 @@ s32 N(statusTable_80238478)[] = { STATUS_END, }; -ActorPartBlueprint N(partsTable_80238524)[] = { +ActorPartBlueprint N(parts)[] = { { .flags = 0, .index = 1, .posOffset = { 0, 0, 0 }, .targetOffset = { 8, 27 }, .opacity = 255, - .idleAnimations = N(idleAnimations_80238430), - .defenseTable = N(defenseTable_8023846C), + .idleAnimations = N(idleAnimations), + .defenseTable = N(defenseTable), .eventFlags = ACTOR_EVENT_FLAG_0, .elementImmunityFlags = 0, .unk_1C = 0, @@ -238,14 +238,14 @@ ActorBlueprint NAMESPACE = { .type = ACTOR_TYPE_KOOPER, .level = 0, .maxHP = 99, - .partCount = ARRAY_COUNT(N(partsTable_80238524)), - .partsData = N(partsTable_80238524), - .script = &N(init_80238570), - .statusTable = N(statusTable_80238478), + .partCount = ARRAY_COUNT(N(parts)), + .partsData = N(parts), + .script = &N(init), + .statusTable = N(statusTable), .escapeChance = 0, .airLiftChance = 0, + .hurricaneChance = 0, .spookChance = 0, - .baseStatusChance = 0, .upAndAwayChance = 0, .spinSmashReq = 4, .powerBounceChance = 80, @@ -256,21 +256,21 @@ ActorBlueprint NAMESPACE = { .statusMessageOffset = { 10, 30 }, }; -EvtScript N(init_80238570) = { - EVT_CALL(BindTakeTurn, ACTOR_PARTNER, EVT_PTR(N(takeTurn_80238974))) - EVT_CALL(BindIdle, ACTOR_PARTNER, EVT_PTR(N(idle_802385D0))) - EVT_CALL(BindHandleEvent, ACTOR_PARTNER, EVT_PTR(N(handleEvent_802385E0))) - EVT_CALL(BindNextTurn, ACTOR_PARTNER, EVT_PTR(N(nextTurn_80238B6C))) +EvtScript N(init) = { + EVT_CALL(BindTakeTurn, ACTOR_PARTNER, EVT_PTR(N(takeTurn))) + EVT_CALL(BindIdle, ACTOR_PARTNER, EVT_PTR(N(idle))) + EVT_CALL(BindHandleEvent, ACTOR_PARTNER, EVT_PTR(N(handleEvent))) + EVT_CALL(BindNextTurn, ACTOR_PARTNER, EVT_PTR(N(nextTurn))) EVT_RETURN EVT_END }; -EvtScript N(idle_802385D0) = { +EvtScript N(idle) = { EVT_RETURN EVT_END }; -EvtScript N(handleEvent_802385E0) = { +EvtScript N(handleEvent) = { EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) EVT_CALL(CloseActionCommandInfo) EVT_CALL(GetLastEvent, ACTOR_PARTNER, LVar0) @@ -281,7 +281,7 @@ EvtScript N(handleEvent_802385E0) = { EVT_SET_CONST(LVar2, ANIM_BattleKooper_Hurt) EVT_EXEC_WAIT(D_802977BC) EVT_SET_CONST(LVar1, ANIM_BattleKooper_Hurt) - EVT_EXEC_WAIT(D_80296014) + EVT_EXEC_WAIT(DoPartnerHit) EVT_END_CASE_GROUP EVT_CASE_OR_EQ(EVENT_UNKNOWN_TRIGGER) EVT_CASE_OR_EQ(EVENT_IMMUNE) @@ -293,22 +293,22 @@ EvtScript N(handleEvent_802385E0) = { EVT_CASE_EQ(EVENT_SPIKE_CONTACT) EVT_SET_CONST(LVar1, ANIM_BattleKooper_Hurt) EVT_SET(LVar2, 16) - EVT_EXEC_WAIT(D_80294FE4) + EVT_EXEC_WAIT(DoPartnerSpikeContact) EVT_SET_CONST(LVar1, ANIM_BattleKooper_Hurt) - EVT_EXEC_WAIT(D_80296014) + EVT_EXEC_WAIT(DoPartnerHit) EVT_CASE_EQ(EVENT_BURN_CONTACT) EVT_SET_CONST(LVar1, ANIM_BattleKooper_BurnHurt) EVT_SET(LVar2, 16) EVT_SET_CONST(LVar3, ANIM_BattleKooper_BurnStill) - EVT_EXEC_WAIT(D_80294C68) + EVT_EXEC_WAIT(DoPartnerBurnContact) EVT_SET_CONST(LVar1, ANIM_BattleKooper_Hurt) - EVT_EXEC_WAIT(D_80296014) + EVT_EXEC_WAIT(DoPartnerHit) EVT_CASE_EQ(EVENT_BURN_HIT) EVT_SET_CONST(LVar1, ANIM_BattleKooper_BurnHurt) EVT_SET_CONST(LVar2, ANIM_BattleKooper_BurnStill) - EVT_EXEC_WAIT(D_8029621C) + EVT_EXEC_WAIT(DoPartnerBurn) EVT_SET_CONST(LVar1, ANIM_BattleKooper_Hurt) - EVT_EXEC_WAIT(D_80296014) + EVT_EXEC_WAIT(DoPartnerHit) EVT_CASE_EQ(EVENT_SHOCK_HIT) EVT_SET_CONST(LVar0, 1) EVT_SET_CONST(LVar1, ANIM_BattleKooper_Hurt) @@ -316,7 +316,7 @@ EvtScript N(handleEvent_802385E0) = { EVT_EXEC_WAIT(D_80295744) EVT_CASE_EQ(EVENT_33) EVT_SET_CONST(LVar1, ANIM_BattleKooper_Hurt) - EVT_EXEC_WAIT(D_80296014) + EVT_EXEC_WAIT(DoPartnerHit) EVT_CASE_EQ(EVENT_RECOVER_PARTNER) EVT_SET_CONST(LVar0, 1) EVT_SET_CONST(LVar1, ANIM_BattleKooper_Idle) @@ -339,15 +339,15 @@ EvtScript N(handleEvent_802385E0) = { EVT_END }; -EvtScript N(takeTurn_80238974) = { +EvtScript N(takeTurn) = { EVT_CALL(GetBattlePhase, LVar0) EVT_SWITCH(LVar0) EVT_CASE_EQ(PHASE_FIRST_STRIKE) EVT_EXEC_WAIT(N(firstStrike)) EVT_CASE_EQ(PHASE_EXECUTE_ACTION) - EVT_EXEC_WAIT(N(80238B7C)) + EVT_EXEC_WAIT(N(executeAction)) EVT_CASE_EQ(PHASE_5) - EVT_EXEC_WAIT(N(80238A20)) + EVT_EXEC_WAIT(N(celebrate)) EVT_CASE_EQ(PHASE_RUN_AWAY_START) EVT_EXEC_WAIT(N(runAway)) EVT_CASE_EQ(PHASE_RUN_AWAY_FAIL) @@ -357,7 +357,7 @@ EvtScript N(takeTurn_80238974) = { EVT_END }; -EvtScript N(80238A20) = { +EvtScript N(celebrate) = { EVT_SET_CONST(LVar0, 1) EVT_SET_CONST(LVar1, ANIM_BattleKooper_Celebrate) EVT_SET_CONST(LVar2, ANIM_BattleKooper_Walk) @@ -370,7 +370,7 @@ EvtScript N(80238A20) = { EvtScript N(runAway) = { EVT_SET_CONST(LVar0, 1) EVT_SET_CONST(LVar1, ANIM_BattleKooper_Run) - EVT_EXEC_WAIT(D_80294AFC) + EVT_EXEC_WAIT(DoPartnerRunAway) EVT_RETURN EVT_END }; @@ -388,12 +388,12 @@ EvtScript N(runAwayFail) = { EVT_END }; -EvtScript N(nextTurn_80238B6C) = { +EvtScript N(nextTurn) = { EVT_RETURN EVT_END }; -EvtScript N(80238B7C) = { +EvtScript N(executeAction) = { EVT_CALL(func_802694A4, 1) EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) @@ -405,30 +405,30 @@ EvtScript N(80238B7C) = { EVT_END_SWITCH EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(137) + EVT_CASE_EQ(MOVE_SHELL_TOSS1) EVT_CALL(func_80269EAC, 6) EVT_SET(LVarF, 2) EVT_SET(LVarE, 1) - EVT_EXEC_WAIT(N(80239384)) - EVT_CASE_EQ(138) + EVT_EXEC_WAIT(N(shellToss)) + EVT_CASE_EQ(MOVE_SHELL_TOSS2) EVT_CALL(func_80269EAC, 6) EVT_SET(LVarF, 3) EVT_SET(LVarE, 2) - EVT_EXEC_WAIT(N(80239384)) - EVT_CASE_EQ(139) + EVT_EXEC_WAIT(N(shellToss)) + EVT_CASE_EQ(MOVE_SHELL_TOSS3) EVT_CALL(func_80269EAC, 6) EVT_SET(LVarF, 5) EVT_SET(LVarE, 3) - EVT_EXEC_WAIT(N(80239384)) - EVT_CASE_EQ(140) + EVT_EXEC_WAIT(N(shellToss)) + EVT_CASE_EQ(MOVE_POWER_SHELL) EVT_CALL(func_80269EAC, 7) - EVT_EXEC_WAIT(N(80239E7C)) - EVT_CASE_EQ(141) + EVT_EXEC_WAIT(N(powerShell)) + EVT_CASE_EQ(MOVE_DIZZY_SHELL) EVT_CALL(func_80269EAC, 8) - EVT_EXEC_WAIT(N(8023AA38)) - EVT_CASE_EQ(142) + EVT_EXEC_WAIT(N(dizzyShell)) + EVT_CASE_EQ(MOVE_FIRE_SHELL) EVT_CALL(func_80269EAC, 9) - EVT_EXEC_WAIT(N(8023B660)) + EVT_EXEC_WAIT(N(fireShell)) EVT_END_SWITCH EVT_RETURN EVT_END @@ -437,28 +437,28 @@ EvtScript N(80238B7C) = { EvtScript N(firstStrike) = { EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(137) + EVT_CASE_EQ(MOVE_SHELL_TOSS1) EVT_CALL(func_80269EAC, 6) - EVT_EXEC_WAIT(N(8023C754)) - EVT_CASE_EQ(138) + EVT_EXEC_WAIT(N(shellTossOnFirstStrike)) + EVT_CASE_EQ(MOVE_SHELL_TOSS2) EVT_CALL(func_80269EAC, 6) - EVT_EXEC_WAIT(N(8023C754)) - EVT_CASE_EQ(139) + EVT_EXEC_WAIT(N(shellTossOnFirstStrike)) + EVT_CASE_EQ(MOVE_SHELL_TOSS3) EVT_CALL(func_80269EAC, 6) - EVT_EXEC_WAIT(N(8023C754)) + EVT_EXEC_WAIT(N(shellTossOnFirstStrike)) EVT_END_SWITCH EVT_RETURN EVT_END }; -EvtScript N(80238E38) = { +EvtScript N(returnHomeOnMiss) = { EVT_CALL(ResetActorSounds, ACTOR_PARTNER, 0) EVT_THREAD EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) EVT_WAIT(30) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) EVT_END_THREAD - EVT_CALL(func_80280818) + EVT_CALL(PartnerYieldTurn) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_SUB(LVar0, 60) EVT_SET(LVar1, 0) @@ -484,10 +484,10 @@ EvtScript N(80238E38) = { EVT_END }; -EvtScript N(80239084) = { +EvtScript N(returnHome) = { EVT_CALL(ResetActorSounds, ACTOR_PARTNER, 0) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) - EVT_CALL(func_80280818) + EVT_CALL(PartnerYieldTurn) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_SUB(LVar0, 30) EVT_SET(LVar1, 0) @@ -513,7 +513,7 @@ EvtScript N(80239084) = { EVT_END }; -EvtScript N(802392A4) = { +EvtScript N(getShellTossMoveTime) = { EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVarB, LVarC, LVarD) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVarC, LVarD, LVar0) @@ -531,7 +531,7 @@ EvtScript N(802392A4) = { EVT_END }; -EvtScript N(80239384) = { +EvtScript N(shellToss) = { EVT_CALL(LoadActionCommand, ACTION_COMMAND_SMASH) EVT_CALL(action_command_hammer_CreateHudElements) EVT_CALL(InitTargetIterator) @@ -548,7 +548,7 @@ EvtScript N(80239384) = { EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleKooper_ShellSpinSlowest) EVT_LOOP(30) EVT_WAIT(1) - EVT_CALL(CheckButtonDown, 0x00040000, LVar0) + EVT_CALL(CheckButtonDown, BUTTON_STICK_LEFT, LVar0) EVT_IF_NE(LVar0, FALSE) EVT_BREAK_LOOP EVT_END_IF @@ -556,7 +556,7 @@ EvtScript N(80239384) = { EVT_CALL(func_802A9258_422258, 0, 47, 3) EVT_CALL(SetActionResult, 0) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleKooper_ShellSpinSlowest) - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x200C) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_200C) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_59) EVT_SET(LVar9, 0) EVT_SET(LVar1, 0) @@ -591,7 +591,7 @@ EvtScript N(80239384) = { EVT_SET(LVar1, 1) EVT_END_IF EVT_END_IF - EVT_CALL(CheckButtonDown, 0x00040000, LVar0) + EVT_CALL(CheckButtonDown, BUTTON_STICK_LEFT, LVar0) EVT_IF_EQ(LVar0, FALSE) EVT_BREAK_LOOP EVT_END_IF @@ -618,19 +618,19 @@ EvtScript N(80239384) = { EVT_IF_EQ(LVar0, 0) EVT_GOTO(0) EVT_END_IF - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x200A) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_200A) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) EVT_CALL(MoveBattleCamOver, 15) - EVT_EXEC_WAIT(N(802392A4)) + EVT_EXEC_WAIT(N(getShellTossMoveTime)) EVT_CALL(AddActorDecoration, ACTOR_SELF, 0, 0, 5) EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) EVT_CALL(SetActorSpeed, ACTOR_PARTNER, LVarA) EVT_CALL(SetActorSounds, ACTOR_PARTNER, 0, 0, 0) EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) - EVT_CALL(PartnerTestEnemy, LVar0, 0, 20, 0, 2, BS_FLAGS1_10) - EVT_IF_EQ(LVar0, 6) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 2, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) EVT_THREAD - EVT_CALL(func_80238000_6F5E80) + EVT_CALL(N(SlowDown)) EVT_CALL(RemoveActorDecoration, ACTOR_SELF, 0, 0) EVT_END_THREAD EVT_WAIT(4) @@ -669,29 +669,29 @@ EvtScript N(80239384) = { EVT_CALL(GetActionCommandResult, LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(0) - EVT_CALL(PartnerDamageEnemy, LVar0, 0, 159, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_CASE_DEFAULT - EVT_CALL(PartnerDamageEnemy, LVar0, 0, 159, 0, LVarE, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarE, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_SWITCH EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_0) EVT_SWITCH(LVar0) - EVT_CASE_OR_EQ(0) - EVT_CASE_OR_EQ(2) - EVT_EXEC_WAIT(N(80239084)) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(returnHome)) EVT_END_CASE_GROUP - EVT_CASE_OR_EQ(1) - EVT_CASE_OR_EQ(3) - EVT_EXEC_WAIT(N(80238E38)) + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) + EVT_EXEC_WAIT(N(returnHomeOnMiss)) EVT_END_CASE_GROUP EVT_END_SWITCH EVT_RETURN EVT_END }; -EvtScript N(80239E7C) = { +EvtScript N(powerShell) = { EVT_CALL(LoadActionCommand, ACTION_COMMAND_SMASH) EVT_CALL(action_command_hammer_CreateHudElements) - EVT_CALL(GetActorLevel, 256, LVar0) + EVT_CALL(GetActorLevel, ACTOR_PARTNER, LVar0) EVT_SWITCH(LVar0) EVT_CASE_EQ(0) EVT_SET(LVarE, 1) @@ -717,7 +717,7 @@ EvtScript N(80239E7C) = { EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleKooper_ShellSpinSlowest) EVT_LOOP(30) EVT_WAIT(1) - EVT_CALL(CheckButtonDown, 0x00040000, LVar0) + EVT_CALL(CheckButtonDown, BUTTON_STICK_LEFT, LVar0) EVT_IF_NE(LVar0, FALSE) EVT_BREAK_LOOP EVT_END_IF @@ -726,7 +726,7 @@ EvtScript N(80239E7C) = { EVT_CALL(func_802A9258_422258, 0, 47, 3) EVT_CALL(SetActionResult, 0) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleKooper_ShellSpinSlowest) - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x200C) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_200C) EVT_SET(LVar9, 0) EVT_SET(LVar1, 0) EVT_LOOP(50) @@ -761,7 +761,7 @@ EvtScript N(80239E7C) = { EVT_SET(LVar1, 1) EVT_END_IF EVT_END_IF - EVT_CALL(CheckButtonDown, 0x00040000, LVar0) + EVT_CALL(CheckButtonDown, BUTTON_STICK_LEFT, LVar0) EVT_IF_EQ(LVar0, FALSE) EVT_BREAK_LOOP EVT_END_IF @@ -789,7 +789,7 @@ EvtScript N(80239E7C) = { EVT_GOTO(0) EVT_END_IF EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0) - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x200B) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_200B) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) EVT_CALL(MoveBattleCamOver, 15) EVT_SET(LVarB, 260) @@ -814,7 +814,7 @@ EvtScript N(80239E7C) = { EVT_IF_GT(LVar0, LVar3) EVT_GOTO(10) EVT_END_IF - EVT_CALL(PartnerTestEnemy, LVar0, 0, 20, 0, 2, BS_FLAGS1_10) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 2, BS_FLAGS1_10) EVT_IF_EQ(LVar0, 6) EVT_GOTO(12) EVT_END_IF @@ -831,9 +831,9 @@ EvtScript N(80239E7C) = { EVT_CALL(GetActionCommandResult, LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(0) - EVT_CALL(PartnerDamageEnemy, LVar0, 536870912, 159, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_CASE_DEFAULT - EVT_CALL(PartnerDamageEnemy, LVar0, 536870912, 159, 0, LVarE, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarE, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_SWITCH EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_0) EVT_LABEL(12) @@ -859,15 +859,15 @@ EvtScript N(80239E7C) = { EVT_CALL(GetActionCommandResult, LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(0) - EVT_EXEC_WAIT(N(80239084)) + EVT_EXEC_WAIT(N(returnHome)) EVT_CASE_DEFAULT - EVT_EXEC_WAIT(N(80238E38)) + EVT_EXEC_WAIT(N(returnHomeOnMiss)) EVT_END_SWITCH EVT_RETURN EVT_END }; -EvtScript N(8023AA38) = { +EvtScript N(dizzyShell) = { EVT_CALL(LoadActionCommand, ACTION_COMMAND_DIZZY_SHELL) EVT_CALL(func_802A9000_426170) EVT_CALL(SetupMashMeter, 1, 100, 0, 0, 0, 0) @@ -892,10 +892,10 @@ EvtScript N(8023AA38) = { EVT_CALL(action_command_dizzy_shell_MashActionCommandInit, 0, LVarA, 3, LVar0) EVT_CALL(SetActionResult, 0) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleKooper_ShellSpinSlowest) - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x200C) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_200C) EVT_SET(LVar9, 0) EVT_SET(LVarA, EVT_FLOAT(8.0)) - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x2026) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_2026) EVT_CALL(AddActorDecoration, ACTOR_SELF, 0, 1, 7) EVT_CALL(SetActorVar, ACTOR_SELF, 1, 1) EVT_SET(LVar9, 1) @@ -931,7 +931,7 @@ EvtScript N(8023AA38) = { EVT_CALL(PlayEffect, EFFECT_SMOKE_IMPACT, 1, LVar4, LVar5, LVar6, 32, 4, 0, 10, 0, 0, 0, 0, 0) EVT_END_SWITCH EVT_END_LOOP - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x290) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_290) EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) EVT_CALL(MoveBattleCamOver, 15) EVT_SET(LVarB, 300) @@ -957,7 +957,7 @@ EvtScript N(8023AA38) = { EVT_CALL(SetActorVar, ACTOR_SELF, 0, 1) EVT_END_THREAD EVT_THREAD - EVT_CALL(func_80238114_6F5F94) + EVT_CALL(N(SetTargetsYaw)) EVT_END_THREAD EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0) EVT_SET(LocalFlag(0), 0) @@ -969,8 +969,8 @@ EvtScript N(8023AA38) = { EVT_IF_GT(LVar0, LVar3) EVT_GOTO(10) EVT_END_IF - EVT_CALL(PartnerTestEnemy, LVar0, 0, 20, 0, 2, BS_FLAGS1_10) - EVT_IF_EQ(LVar0, 6) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 2, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) EVT_GOTO(12) EVT_END_IF EVT_IF_EQ(LocalFlag(0), 0) @@ -989,18 +989,18 @@ EvtScript N(8023AA38) = { EVT_CASE_GT(0) EVT_IF_EQ(LVar9, 1) EVT_IF_EQ(LVarF, 100) - EVT_CALL(PartnerAfflictEnemy, LVar0, 1610612736, 159, -1073478912, 254, 0, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerAfflictEnemy, LVar0, DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS | DAMAGE_TYPE_STATUS_ALWAYS_HITS, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, STATUS_FLAG_100 | STATUS_FLAG_200 | STATUS_FLAG_DIZZY | STATUS_FLAG_RIGHT_ON | STATUS_FLAG_80000000, 254, 0, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_ELSE - EVT_CALL(PartnerAfflictEnemy, LVar0, 1610612736, 159, -1073478912, LVarF, 0, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerAfflictEnemy, LVar0, DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS | DAMAGE_TYPE_STATUS_ALWAYS_HITS, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, STATUS_FLAG_100 | STATUS_FLAG_200 | STATUS_FLAG_DIZZY | STATUS_FLAG_RIGHT_ON | STATUS_FLAG_80000000, LVarF, 0, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_IF EVT_ELSE - EVT_CALL(PartnerAfflictEnemy, LVar0, 1610612736, 159, -1073478912, LVarF, 0, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerAfflictEnemy, LVar0, DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS | DAMAGE_TYPE_STATUS_ALWAYS_HITS, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, STATUS_FLAG_100 | STATUS_FLAG_200 | STATUS_FLAG_DIZZY | STATUS_FLAG_RIGHT_ON | STATUS_FLAG_80000000, LVarF, 0, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_IF EVT_CASE_DEFAULT EVT_IF_EQ(LVar9, 1) - EVT_CALL(PartnerAfflictEnemy, LVar0, 1610612736, 159, -1073478912, 255, 0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerAfflictEnemy, LVar0, DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS | DAMAGE_TYPE_STATUS_ALWAYS_HITS, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, STATUS_FLAG_100 | STATUS_FLAG_200 | STATUS_FLAG_DIZZY | STATUS_FLAG_RIGHT_ON | STATUS_FLAG_80000000, 255, 0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_ELSE - EVT_CALL(PartnerAfflictEnemy, LVar0, 1610612736, 159, -1073478912, 255, 0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerAfflictEnemy, LVar0, DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS | DAMAGE_TYPE_STATUS_ALWAYS_HITS, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, STATUS_FLAG_100 | STATUS_FLAG_200 | STATUS_FLAG_DIZZY | STATUS_FLAG_RIGHT_ON | STATUS_FLAG_80000000, 255, 0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_IF EVT_END_SWITCH EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_0) @@ -1025,7 +1025,7 @@ EvtScript N(8023AA38) = { EVT_GOTO(11) EVT_END_IF EVT_WAIT(15) - EVT_CALL(func_80280818) + EVT_CALL(PartnerYieldTurn) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleKooper_ExitShell) EVT_WAIT(15) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleKooper_Idle) @@ -1038,7 +1038,7 @@ EvtScript N(8023AA38) = { EVT_END }; -EvtScript N(8023B660) = { +EvtScript N(fireShell) = { EVT_CALL(LoadActionCommand, ACTION_COMMAND_FIRE_SHELL) EVT_CALL(func_802A9000_4269D0) EVT_CALL(SetupMashMeter, 5, 35, 60, 80, 99, 100) @@ -1063,8 +1063,8 @@ EvtScript N(8023B660) = { EVT_CALL(SetActorVar, ACTOR_SELF, 1, 0) EVT_SET(LVarA, EVT_FLOAT(8.0)) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleKooper_ShellSpinSlowest) - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x200C) - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x28E) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_200C) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_28E) EVT_CALL(AddActorDecoration, ACTOR_SELF, 0, 0, 4) EVT_WAIT(1) EVT_CALL(ModifyActorDecoration, 256, -1, 0, 10, 10, 255, 0) @@ -1132,7 +1132,7 @@ EvtScript N(8023B660) = { EVT_IF_GT(LVar8, LVar9) EVT_SUB(LVar8, 1) EVT_END_IF - EVT_CALL(ModifyActorDecoration, 256, -1, 0, LVar8, LVar8, 255, 0) + EVT_CALL(ModifyActorDecoration, ACTOR_PARTNER, -1, 0, LVar8, LVar8, 255, 0) EVT_SWITCH(LVarD) EVT_CASE_EQ(10) EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar3, LVar4, LVar5) @@ -1148,8 +1148,8 @@ EvtScript N(8023B660) = { EVT_CALL(PlayEffect, EFFECT_SMOKE_IMPACT, 1, LVar3, LVar4, LVar5, 32, 4, 0, 10, 0, 0, 0, 0, 0) EVT_END_SWITCH EVT_END_LOOP - EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, 0x28F) - EVT_CALL(func_802383C0_6F6240) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_28F) + EVT_CALL(N(GetFireShellSpeedAndDamage)) EVT_SWITCH(LVarE) EVT_CASE_OR_EQ(0) EVT_CASE_OR_EQ(1) @@ -1214,7 +1214,7 @@ EvtScript N(8023B660) = { EVT_IF_GT(LVar0, LVar3) EVT_GOTO(10) EVT_END_IF - EVT_CALL(PartnerTestEnemy, LVar0, 0, 20, 0, 2, BS_FLAGS1_10) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 2, BS_FLAGS1_10) EVT_IF_EQ(LVar0, 6) EVT_GOTO(12) EVT_END_IF @@ -1232,9 +1232,9 @@ EvtScript N(8023B660) = { EVT_CALL(GetActionCommandResult, LVar0) EVT_SWITCH(LVar0) EVT_CASE_GT(99) - EVT_CALL(PartnerDamageEnemy, LVar0, 536870914, 159, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_FIRE | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarF, BS_FLAGS1_40 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_CASE_DEFAULT - EVT_CALL(PartnerDamageEnemy, LVar0, 536870914, 159, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_FIRE | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_END_SWITCH EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_0) EVT_LABEL(12) @@ -1258,7 +1258,7 @@ EvtScript N(8023B660) = { EVT_GOTO(11) EVT_END_IF EVT_WAIT(15) - EVT_CALL(func_80280818) + EVT_CALL(PartnerYieldTurn) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleKooper_ExitShell) EVT_WAIT(15) EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleKooper_Idle) @@ -1271,7 +1271,7 @@ EvtScript N(8023B660) = { EVT_END }; -EvtScript N(8023C754) = { +EvtScript N(shellTossOnFirstStrike) = { EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) EVT_ADD(LVar0, 60) EVT_CALL(SetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) @@ -1283,10 +1283,10 @@ EvtScript N(8023C754) = { EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(16.0)) EVT_CALL(SetActorSounds, ACTOR_PARTNER, 0, 0, 0) EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) - EVT_CALL(PartnerTestEnemy, LVar0, 0, 20, 0, 2, BS_FLAGS1_10) - EVT_IF_EQ(LVar0, 6) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 2, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) EVT_THREAD - EVT_CALL(func_80238000_6F5E80) + EVT_CALL(N(SlowDown)) EVT_CALL(RemoveActorDecoration, ACTOR_SELF, 0, 0) EVT_END_THREAD EVT_WAIT(4) @@ -1324,21 +1324,21 @@ EvtScript N(8023C754) = { EVT_SET(LVarF, 1) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(137) + EVT_CASE_EQ(MOVE_SHELL_TOSS1) EVT_SET(LVarF, 1) - EVT_CASE_EQ(138) + EVT_CASE_EQ(MOVE_SHELL_TOSS2) EVT_SET(LVarF, 2) - EVT_CASE_EQ(139) + EVT_CASE_EQ(MOVE_SHELL_TOSS3) EVT_SET(LVarF, 3) EVT_END_SWITCH - EVT_CALL(PartnerDamageEnemy, LVar0, 0, 159, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) EVT_SWITCH(LVar2) - EVT_CASE_EQ(137) + EVT_CASE_EQ(MOVE_SHELL_TOSS1) EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_0) - EVT_CASE_EQ(138) + EVT_CASE_EQ(MOVE_SHELL_TOSS2) EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_0) - EVT_CASE_EQ(139) + EVT_CASE_EQ(MOVE_SHELL_TOSS3) EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_0) EVT_END_SWITCH EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) diff --git a/src/battle/partner/lakilester.c b/src/battle/partner/lakilester.c index 44d1c8d54a..ef7a83f316 100644 --- a/src/battle/partner/lakilester.c +++ b/src/battle/partner/lakilester.c @@ -1,52 +1,85 @@ #include "common.h" #include "effects.h" #include "battle/battle.h" +#include "script_api/battle.h" +#include "sprite/npc/BattleLakilester.h" +#include "battle/action_cmd/spiny_surge.h" +#include "battle/action_cmd/water_block.h" +#include "battle/action_cmd/hurricane.h" #include "hud_element.h" -extern s32 (*D_8023AB80_70E890)[0]; +#define NAMESPACE battle_partner_lakilester -extern f32 D_8023D1E0; -extern EffectInstance* D_8023D1E4; -extern s32 D_8023D26C; -extern s32 D_8023D270; -extern s32 D_8023D274; -extern s32 D_8023D278; -extern s32 D_8023D27C; -extern s32 D_8023D280; -extern s32 D_8023D284; -extern s32 D_8023D288; -extern s32 D_8023D28C; -extern s32 D_8023D290; -extern s32 D_8023D294; -extern s32 D_8023D298; -extern s32 D_8023D29C; -extern f32 D_8023D2A0; -extern f32 D_8023D2A4; -extern f32 D_8023D2A8; -extern f32 D_8023D2AC; -extern f32 D_8023D2B0; -extern f32 D_8023D2B4; -extern s32 D_8023D2B8[1]; -extern s32 D_8023D2BC; -extern s32 D_8023D2C0; -extern s32 D_8023D2C4; -extern s32 D_8023D2C8; -extern s32 D_8023D2D0[]; -extern s32 D_8023D330; -extern s32 D_8023D334; -extern s32 D_8023D338; +extern EvtScript N(handleEvent); +extern EvtScript N(idle); +extern EvtScript N(nextTurn); +extern EvtScript N(takeTurn); +extern EvtScript N(init); +extern EvtScript N(executeAction); +extern EvtScript N(celebrate); +extern EvtScript N(runAway); +extern EvtScript N(runAwayFail); +extern EvtScript N(spinyFlip); +extern EvtScript N(spinySurge); +extern EvtScript N(cloudNine); +extern EvtScript N(hurricane); +typedef struct HurricaneState { + /* 0x00 */ char unk_00[0x44]; + /* 0x44 */ s16 breathSizeIncrease; + /* 0x46 */ s16 unk_46; + /* 0x48 */ char unk_48[0xC]; + /* 0x54 */ s16 unk_54; + /* 0x56 */ char unk_56[0x4]; + /* 0x5A */ s16 startingTotalPower; + /* 0x5C */ s8 state; + /* 0x5D */ s8 unk_5D; + /* 0x5E */ char unk_5E[0x12]; + /* 0x70 */ s16 intensity; + /* 0x72 */ s16 totalPower; + /* 0x74 */ char unk_74[0x10]; +} HurricaneState; + + + +static s32 sSavedHurricaneIntensity; +static s32 sBreathSizeIncrease; +static s32 sMaxPower; +static s32 hudAimReticle; +static s32 hudAimTarget; +static s32 sTargetMarkRotation; +static s32 D_8023D294; +static s32 sAimingTimer; +static s32 D_8023D29C; +static f32 D_8023D2A0; +static f32 D_8023D2A4; +static f32 D_8023D2A8; +static f32 D_8023D2AC; +static f32 D_8023D2B0; +static f32 sAimMoveAngle; +static s32 hudAim[1]; +static s32 hudStick; +static s32 hudStickPosX; +static s32 hudStickPosY; +static s32 sSpinyFlipStarted; +static s32 D_8023D2CC; +static s32 sTargetStates[24]; +static s32 sNumEnemiesBeingBlown; +static s32 sIsHurricaneActive; +static s32 D_8023D338; + +extern HudScript HES_AimBlinkA; extern HudScript HES_AimReticle; extern HudScript HES_AimTarget; extern HudScript HES_StickNeutral; extern HudScript HES_StickTapRight; -ApiStatus func_80238000_70BD10(Evt* script, s32 isInitialCall) { +ApiStatus N(SpinyFlipUpdatePopup)(Evt* script, s32 isInitialCall) { if (isInitialCall) { - D_8023D2C8 = 0; + sSpinyFlipStarted = 0; } - if (D_8023D2C8 == 0) { + if (sSpinyFlipStarted == 0) { btl_set_popup_duration(99); return ApiStatus_BLOCK; } @@ -54,10 +87,291 @@ ApiStatus func_80238000_70BD10(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall); -// a few issues -#ifdef NON_MATCHING -ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall) { + +s32 N(idleAnimations)[] = { + STATUS_NORMAL, ANIM_BattleLakilester_Walk, + STATUS_DAZE, ANIM_BattleLakilester_Injured, + STATUS_TURN_DONE, ANIM_BattleLakilester_Still, + STATUS_END, +}; + +s32 N(idleAnimations_spiny)[] = { + STATUS_NORMAL, ANIM_BattleLakilester_Spiny, + STATUS_END, +}; + +s32 N(defenseTable)[] = { + ELEMENT_NORMAL, 0, + ELEMENT_END, +}; + +s32 N(statusTable)[] = { + STATUS_NORMAL, 100, + STATUS_DEFAULT, 100, + STATUS_SLEEP, 100, + STATUS_POISON, 100, + STATUS_FROZEN, 100, + STATUS_DIZZY, 100, + STATUS_FEAR, 100, + STATUS_STATIC, 100, + STATUS_PARALYZE, 100, + STATUS_SHRINK, 100, + STATUS_STOP, 100, + STATUS_DEFAULT_TURN_MOD, 0, + STATUS_SLEEP_TURN_MOD, 0, + STATUS_POISON_TURN_MOD, 0, + STATUS_FROZEN_TURN_MOD, 0, + STATUS_DIZZY_TURN_MOD, 0, + STATUS_FEAR_TURN_MOD, 0, + STATUS_STATIC_TURN_MOD, 0, + STATUS_PARALYZE_TURN_MOD, 0, + STATUS_SHRINK_TURN_MOD, 0, + STATUS_STOP_TURN_MOD, 0, + STATUS_END, +}; + +ActorPartBlueprint N(parts)[] = { + { + .flags = 0, + .index = 1, + .posOffset = { 0, 0, 0 }, + .targetOffset = { 12, 30 }, + .opacity = 255, + .idleAnimations = N(idleAnimations), + .defenseTable = N(defenseTable), + .eventFlags = 0, + .elementImmunityFlags = 0, + .unk_1C = 0, + .unk_1D = 0, + }, + { + .flags = ACTOR_PART_FLAG_INVISIBLE | ACTOR_PART_FLAG_USE_ABSOLUTE_POSITION, + .index = 2, + .posOffset = { 0, 0, 0 }, + .targetOffset = { 0, 0 }, + .opacity = 255, + .idleAnimations = N(idleAnimations_spiny), + .defenseTable = N(defenseTable), + .eventFlags = 0, + .elementImmunityFlags = 0, + .unk_1C = 0, + .unk_1D = 0, + }, +}; + +ActorBlueprint NAMESPACE = { + .flags = ACTOR_FLAG_FLYING, + .type = ACTOR_TYPE_LAKILESTER, + .level = 0, + .maxHP = 99, + .partCount = ARRAY_COUNT(N(parts)), + .partsData = N(parts), + .script = &N(init), + .statusTable = N(statusTable), + .escapeChance = 0, + .airLiftChance = 0, + .hurricaneChance = 0, + .spookChance = 0, + .upAndAwayChance = 0, + .spinSmashReq = 4, + .powerBounceChance = 80, + .coinReward = 0, + .size = { 44, 40 }, + .hpBarOffset = { 0, 0 }, + .statusIconOffset = { -10, 30 }, + .statusMessageOffset = { 13, 31 }, +}; + +EvtScript N(init) = { + EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn))) + EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle))) + EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent))) + EVT_CALL(BindNextTurn, ACTOR_SELF, EVT_PTR(N(nextTurn))) + EVT_RETURN + EVT_END +}; + +EvtScript N(idle) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(handleEvent) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(CloseActionCommandInfo) + EVT_CALL(GetLastEvent, ACTOR_PARTNER, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(EVENT_HIT_COMBO) + EVT_CASE_OR_EQ(EVENT_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt) + EVT_SET_CONST(LVar2, ANIM_BattleLakilester_Hurt) + EVT_EXEC_WAIT(D_802976E8) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(EVENT_UNKNOWN_TRIGGER) + EVT_CASE_OR_EQ(EVENT_IMMUNE) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt) + EVT_EXEC_WAIT(DoPartnerBlock) + EVT_END_CASE_GROUP + EVT_CASE_EQ(EVENT_SPIKE_CONTACT) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt) + EVT_SET_CONST(LVar2, 20) + EVT_EXEC_WAIT(DoPartnerSpikeContact) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_BURN_CONTACT) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_BurnHurt) + EVT_SET(LVar2, 20) + EVT_SET_CONST(LVar3, ANIM_BattleLakilester_BurnStill) + EVT_EXEC_WAIT(DoPartnerBurnContact) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_BURN_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_BurnHurt) + EVT_SET_CONST(LVar2, ANIM_BattleLakilester_BurnStill) + EVT_EXEC_WAIT(DoPartnerBurn) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_SHOCK_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt) + EVT_SET(LVar2, 20) + EVT_EXEC_WAIT(D_80295744) + EVT_CASE_EQ(EVENT_33) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_RECOVER_PARTNER) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Walk) + EVT_SET_CONST(LVar2, ANIM_BattleLakilester_Run) + EVT_SET(LVar3, 10) + EVT_EXEC_WAIT(DoPartnerRecover) + EVT_CASE_OR_EQ(EVENT_18) + EVT_CASE_OR_EQ(EVENT_BLOCK) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Block) + EVT_EXEC_WAIT(DoPartnerBlock) + EVT_WAIT(10) + EVT_END_CASE_GROUP + EVT_CASE_DEFAULT + EVT_END_SWITCH + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(takeTurn) = { + EVT_CALL(GetBattlePhase, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(PHASE_EXECUTE_ACTION) + EVT_EXEC_WAIT(N(executeAction)) + EVT_CASE_EQ(PHASE_5) + EVT_EXEC_WAIT(N(celebrate)) + EVT_CASE_EQ(PHASE_RUN_AWAY_START) + EVT_EXEC_WAIT(N(runAway)) + EVT_CASE_EQ(PHASE_RUN_AWAY_FAIL) + EVT_EXEC_WAIT(N(runAwayFail)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(celebrate) = { + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Celebrate) + EVT_SET_CONST(LVar2, ANIM_BattleLakilester_Walk) + EVT_SET_CONST(LVar3, ANIM_BattleLakilester_Walk) + EVT_EXEC_WAIT(D_80294720) + EVT_RETURN + EVT_END +}; + +EvtScript N(runAway) = { + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleLakilester_Run) + EVT_EXEC_WAIT(DoPartnerRunAway) + EVT_RETURN + EVT_END +}; + +EvtScript N(runAwayFail) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Run) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Walk) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(nextTurn) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(executeAction) = { + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_CALL(func_802694A4, 1) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(8) + EVT_CALL(LoadStarPowerScript) + EVT_EXEC_WAIT(LVar0) + EVT_RETURN + EVT_END_SWITCH + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(MOVE_SPINY_FLIP1) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_EXEC_WAIT(N(spinyFlip)) + EVT_CASE_EQ(MOVE_SPINY_FLIP2) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_EXEC_WAIT(N(spinyFlip)) + EVT_CASE_EQ(MOVE_SPINY_FLIP3) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_EXEC_WAIT(N(spinyFlip)) + EVT_CASE_EQ(MOVE_SPINY_SURGE) + EVT_EXEC_WAIT(N(spinySurge)) + EVT_CASE_EQ(MOVE_CLOUD_NINE) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_EXEC_WAIT(N(cloudNine)) + EVT_CASE_EQ(MOVE_HURRICANE) + EVT_EXEC_WAIT(N(hurricane)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(returnHome2) = { + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 15, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Walk) + EVT_RETURN + EVT_END +}; + +EvtScript N(returnHome) = { + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 15, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Walk) + EVT_RETURN + EVT_END +}; + +HudScript* N(aimHudScripts)[] = { &HES_AimBlinkA }; + +ApiStatus N(SpinyFlipActionCommand)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; s32 screenX, screenY, screenZ; Actor* partner = battleStatus->partnerActor; @@ -66,8 +380,8 @@ ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall) { ActorState* playerState; ActorState* partnerState; f32 speed; - f32 dpadX; - s32 dpadY; + f32 dpadAngle; + s32 dpadAmplitude; s32 id; s32 i; @@ -82,7 +396,7 @@ ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall) { s32 (*temp_a0)[0]; s32 temp_a0_2; s32 temp_f10; - s32 temp_v0_4; + s32 idAim; s32 temp_v1_2; s32* var_s0; @@ -95,23 +409,19 @@ ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall) { switch (script->functionTemp[0]) { case 0: - D_8023D288 = hud_element_create(HES_AimReticle); - hud_element_set_render_depth(D_8023D288, 0xA); - D_8023D28C = hud_element_create(HES_AimTarget); - hud_element_set_render_depth(D_8023D28C, 0xA); - var_s3 = &D_8023AB80_70E890; - hud_element_create_transform_A(D_8023D28C); - D_8023D2C0 = -48; - D_8023D2C4 = 70; - D_8023D2BC = id = hud_element_create(HES_StickNeutral); - hud_element_set_render_pos(id, D_8023D2C0, D_8023D2C4); + hudAimReticle = hud_element_create(&HES_AimReticle); + hud_element_set_render_depth(hudAimReticle, 10); + hudAimTarget = hud_element_create(&HES_AimTarget); + hud_element_set_render_depth(hudAimTarget, 10); + hud_element_create_transform_A(hudAimTarget); + hudStickPosX = -48; + hudStickPosY = 70; + hudStick = id = hud_element_create(&HES_StickNeutral); + hud_element_set_render_pos(id, hudStickPosX, hudStickPosY); hud_element_set_render_depth(id, 0); - for (i = 0; i < 1; i++) { - temp_a0 = *var_s3; - var_s3++; - - D_8023D2B8[i] = temp_v0_4 = hud_element_create(temp_a0); - hud_element_set_render_depth(temp_v0_4, 0xA); + for (i = 0; i < ARRAY_COUNT(N(aimHudScripts)); i++) { + hudAim[i] = idAim = hud_element_create(N(aimHudScripts)[i]); + hud_element_set_render_depth(idAim, 10); } partnerState->currentPos.x = partner->currentPos.x + 33.0f; partnerState->currentPos.y = partner->currentPos.y + 34.0f; @@ -124,6 +434,7 @@ ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall) { part = get_actor_part(target, partner->targetPartIndex); partnerState->goalPos.x += part->unk_75; partnerState->goalPos.y += part->unk_76; + partnerState->goalPos.z = partnerState->goalPos.z; // required to match partnerState->distance = dist2D(partnerState->currentPos.x, partnerState->currentPos.y, partnerState->goalPos.x, @@ -131,46 +442,47 @@ ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall) { partnerState->speed = 0.0f; partnerState->unk_30.x = 0.0f; partnerState->unk_30.y = 0.0f; - D_8023D290 = 0; + sTargetMarkRotation = 0; D_8023D294 = 0; - D_8023D298 = 30; + sAimingTimer = 30; D_8023D2A0 = 0.0f; D_8023D2A4 = 0.0f; D_8023D2A8 = 0.0f; D_8023D2AC = 0.0f; D_8023D29C = 0; D_8023D2B0 = 3.0f; - D_8023D2B4 = -1.0f; + sAimMoveAngle = -1.0f; partnerState->unk_24 = ((part->size.y + part->size.x) / 2) / 24.0; - hud_element_set_scale(D_8023D28C, partnerState->unk_24 * target->scalingFactor); - D_8023D2C8 = 1; + hud_element_set_scale(hudAimTarget, partnerState->unk_24 * target->scalingFactor); + sSpinyFlipStarted = 1; script->functionTemp[0] = 1; break; case 1: if (battleStatus->stickX != 0 || battleStatus->stickY != 0) { - D_8023D298 = 0; + sAimingTimer = 0; } - if (D_8023D298 != 0) { - D_8023D298--; + if (sAimingTimer != 0) { + sAimingTimer--; } else { - D_8023D298 = 80; - hud_element_set_script(D_8023D2BC, HES_StickTapRight); - sfx_play_sound_at_position(0x312, 0, 0.0f, 0.0f, 0.0f); + sAimingTimer = 80; + hud_element_set_script(hudStick, &HES_StickTapRight); + sfx_play_sound_at_position(SOUND_312, 0, 0.0f, 0.0f, 0.0f); script->functionTemp[0] = 2; } break; case 2: - dpadY = battleStatus->dpadY; - if (dpadY > 80) { - dpadY = 80; + dpadAmplitude = battleStatus->dpadY; + if (dpadAmplitude > 80) { + dpadAmplitude = 80; } - dpadX = battleStatus->dpadX; - if (dpadY < 35) { - dpadY *= sin_rad(DEG_TO_RAD(dpadY * 2)); + dpadAngle = battleStatus->dpadX; + if (dpadAmplitude < 35) { + f32 temp = dpadAmplitude; + dpadAmplitude = temp * sin_rad(DEG_TO_RAD(dpadAmplitude * 2)); } temp_f8 = D_8023D2A0; temp_f2 = temp_f8 + D_8023D2A4 + D_8023D2A8; - D_8023D2A0 = dpadY; + D_8023D2A0 = dpadAmplitude; D_8023D2A8 = D_8023D2A4; temp_f10 = D_8023D2A0 - (temp_f2 / 3.0f); D_8023D2A4 = temp_f8; @@ -181,23 +493,23 @@ ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall) { } else { partner->state.speed += (D_8023D2AC / 8.5) / 2.0; } - D_8023D2B4 = dpadX; + sAimMoveAngle = dpadAngle; } else { D_8023D2AC = temp_f10; } - if (!(dpadY < 31)) { - D_8023D2B4 = dpadX; + if (!(dpadAmplitude < 31)) { + sAimMoveAngle = dpadAngle; } if (partnerState->speed > 6.7) { partnerState->speed = 6.7f; } - partnerState->speed = partnerState->speed - (f32) ((2.0 * (40 - dpadY)) / 40.0); + partnerState->speed = partnerState->speed - (f32) ((2.0 * (40 - dpadAmplitude)) / 40.0); if (partnerState->speed <= 0.0f) { partnerState->speed = 0.0f; D_8023D2AC = 0.0f; } - if (D_8023D2B4 >= 0.0f) { - theta = DEG_TO_RAD(D_8023D2B4); + if (sAimMoveAngle >= 0.0f) { + theta = DEG_TO_RAD(sAimMoveAngle); sinTheta = sin_rad(theta); cosTheta = cos_rad(theta); speed = partnerState->speed; @@ -216,17 +528,17 @@ ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall) { if (partnerState->currentPos.y < 0.0f) { partnerState->currentPos.y = 0.0f; } - if (battleStatus->currentButtonsPressed & 0x8000) { - D_8023D298 = 0; + if (battleStatus->currentButtonsPressed & BUTTON_A) { + sAimingTimer = 0; } - if (D_8023D298 == 60) { - set_animation(0x100, 0, 0x100010); + if (sAimingTimer == 60) { + set_animation(ACTOR_PARTNER, 0, ANIM_BattleLakilester_HoldSpiny); } - if (D_8023D298 == 30) { - set_animation(0x100, 0, 0x100011); + if (sAimingTimer == 30) { + set_animation(ACTOR_PARTNER, 0, ANIM_BattleLakilester_StrainHoldSpiny); } - if (D_8023D298 != 0) { - D_8023D298--; + if (sAimingTimer != 0) { + sAimingTimer--; break; } script->varTable[14] = 0; @@ -238,39 +550,39 @@ ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall) { if (partnerState->distance <= 12.0) { script->varTable[15] = 1; } - hud_element_free(D_8023D28C); - hud_element_free(D_8023D288); - hud_element_free(D_8023D2BC); - for (i = 0; i < 1; i++) { - id = D_8023D2B8[i]; + hud_element_free(hudAimTarget); + hud_element_free(hudAimReticle); + hud_element_free(hudStick); + for (i = 0; i < ARRAY_COUNT(N(aimHudScripts)); i++) { + id = hudAim[i]; hud_element_free(id); } btl_set_popup_duration(0); - sfx_stop_sound(0x312); + sfx_stop_sound(SOUND_312); return ApiStatus_DONE2; } get_screen_coords(gCurrentCameraID, partnerState->goalPos.x, partnerState->goalPos.y, partnerState->goalPos.z, &screenX, &screenY, &screenZ); - id = D_8023D28C; + id = hudAimTarget; hud_element_set_render_pos(id, screenX, screenY); - hud_element_set_transform_rotation(id, 0.0f, 0.0f, D_8023D290); - D_8023D290 -= 10; - D_8023D290 = clamp_angle(D_8023D290); + hud_element_set_transform_rotation(id, 0.0f, 0.0f, sTargetMarkRotation); + sTargetMarkRotation -= 10; + sTargetMarkRotation = clamp_angle(sTargetMarkRotation); get_screen_coords(gCurrentCameraID, partnerState->currentPos.x, partnerState->currentPos.y, partnerState->currentPos.z, &screenX, &screenY, &screenZ); - hud_element_set_render_pos(D_8023D288, screenX, screenY); + hud_element_set_render_pos(hudAimReticle, screenX, screenY); switch (script->functionTemp[0]) { case 1: case 2: - D_8023D2C0 += 20; - if (D_8023D2C0 > 50) { - D_8023D2C0 = 50; + hudStickPosX += 20; + if (hudStickPosX > 50) { + hudStickPosX = 50; } - hud_element_set_render_pos(D_8023D2BC, D_8023D2C0, D_8023D2C4); + hud_element_set_render_pos(hudStick, hudStickPosX, hudStickPosY); break; } @@ -280,9 +592,9 @@ ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall) { playerState->currentPos.x = partnerState->currentPos.x; playerState->currentPos.y = partnerState->currentPos.y; playerState->currentPos.z = partnerState->currentPos.z; - for (i = 0; i < 1; i++) { + for (i = 0; i < ARRAY_COUNT(N(aimHudScripts)); i++) { get_screen_coords(gCurrentCameraID, playerState->currentPos.x, playerState->currentPos.y, playerState->currentPos.z, &screenX, &screenY, &screenZ); - id = D_8023D2B8[i]; + id = hudAim[i]; hud_element_set_render_pos(id, screenX, screenY); } break; @@ -291,11 +603,8 @@ ApiStatus func_8023803C_70BD4C(Evt* script, s32 isInitialCall) { btl_set_popup_duration(99); return ApiStatus_BLOCK; } -#else -INCLUDE_ASM(s32, "battle/partner/lakilester", func_8023803C_70BD4C); -#endif -ApiStatus func_80238A6C_70C77C(Evt* script, s32 isInitialCall) { +ApiStatus N(ThrowSpinyFX)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; f32 xPos = partnerActor->currentPos.x + 5; @@ -309,52 +618,52 @@ ApiStatus func_80238A6C_70C77C(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_80238B50_70C860(Evt* script, s32 isInitialCall) { +ApiStatus N(GetSpinySurgeDamage)(Evt* script, s32 isInitialCall) { s32 partnerLevel = gBattleStatus.partnerActor->actorBlueprint->level; - s32 vt10 = script->varTable[10]; - s32 vt15 = 0; + s32 actionCommandResult = script->varTable[10]; + s32 damage = 0; switch (partnerLevel) { case 0: - if (vt10 < 100) { - vt15 = 1; + if (actionCommandResult <= 99) { + damage = 1; } else { - vt15 = 2; + damage = 2; } break; case 1: - if (vt10 <= 70) { - vt15 = 1; - } else if (vt10 < 100) { - vt15 = 2; + if (actionCommandResult <= 70) { + damage = 1; + } else if (actionCommandResult <= 99) { + damage = 2; } else { - vt15 = 3; + damage = 3; } break; case 2: - if (vt10 <= 40) { - vt15 = 1; - } else if (vt10 <= 70) { - vt15 = 2; - } else if (vt10 < 100) { - vt15 = 3; + if (actionCommandResult <= 40) { + damage = 1; + } else if (actionCommandResult <= 70) { + damage = 2; + } else if (actionCommandResult <= 99) { + damage = 3; } else { - vt15 = 4; + damage = 4; } break; } - if (vt10 >= 100) { + if (actionCommandResult >= 100) { script->varTable[0] = TRUE; } else { script->varTable[0] = FALSE; } - script->varTable[15] = vt15; + script->varTable[15] = damage; return ApiStatus_DONE2; } -ApiStatus func_80238C14_70C924(Evt* script, s32 isInitialCall) { +ApiStatus N(RemoveCloudNineFX)(Evt* script, s32 isInitialCall) { EffectInstance* effect = gBattleStatus.cloudNineEffect; if (effect != NULL) { @@ -367,32 +676,34 @@ ApiStatus func_80238C14_70C924(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_80238C58_70C968(Evt* script, s32 isInitialCall) { +ApiStatus N(CloudNineFX)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* actor = battleStatus->playerActor; + static f32 sCounter; + if (isInitialCall) { script->functionTemp[0] = 0; } switch (script->functionTemp[0]) { case 0: - D_8023D1E0 = 0.1f; + sCounter = 0.1f; fx_ending_decals(0, actor->currentPos.x, actor->currentPos.y, actor->currentPos.z, 0.1f, &battleStatus->cloudNineEffect); script->functionTemp[0] = 1; break; case 1: - if (D_8023D1E0 >= 1.0) { + if (sCounter >= 1.0) { return ApiStatus_DONE2; } battleStatus->cloudNineEffect->data.endingDecals->unk_10 += 0.2; - D_8023D1E0 += 0.2; + sCounter += 0.2; break; } return ApiStatus_BLOCK; } -ApiStatus func_80238D48_70CA58(Evt* script, s32 isInitialCall) { +ApiStatus N(ApplyCloudNine)(Evt* script, s32 isInitialCall) { if (gBattleStatus.cloudNineTurnsLeft < script->varTable[10]) { gBattleStatus.cloudNineTurnsLeft = script->varTable[10]; gBattleStatus.cloudNineDodgeChance = 50; @@ -402,65 +713,65 @@ ApiStatus func_80238D48_70CA58(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_80238D8C_70CA9C(Evt* script, s32 isInitialCall) { +ApiStatus N(InitHurricane)(Evt* script, s32 isInitialCall) { Actor* partner = gBattleStatus.partnerActor; - s32 totalSpookChance; - s32 spookableTargets; + s32 totalChance; + s32 affectedTargets; s32 targetIdx; SelectableTarget* target; Actor* actor; ActorPart* part; - s32 hpCalc; - s32 spookChance; - s32 avgSpookChance; + s32 hpMissingPercent; + s32 hurricaneChance; + s32 avgHurricaneChance; s32 i; - D_8023D330 = 0; - D_8023D334 = 0; + sNumEnemiesBeingBlown = 0; + sIsHurricaneActive = FALSE; for (i = 0; i < partner->targetListLength; i++) { - D_8023D2D0[i] = 0; + sTargetStates[i] = 0; } - totalSpookChance = 0; - spookableTargets = 0; + totalChance = 0; + affectedTargets = 0; for (i = 0; i < partner->targetListLength; i++) { targetIdx = partner->targetIndexList[i]; target = &partner->targetData[targetIdx]; actor = get_actor(target->actorID); part = get_actor_part(actor, target->partID); - hpCalc = 100 - ((actor->currentHP * 100) / actor->maxHP); - spookChance = actor->actorBlueprint->spookChance; - if (spookChance > 0) { - spookChance += spookChance * hpCalc / 100; - if (spookChance > 100) { - spookChance = 100; + hpMissingPercent = 100 - ((actor->currentHP * 100) / actor->maxHP); + hurricaneChance = actor->actorBlueprint->hurricaneChance; + if (hurricaneChance > 0) { + hurricaneChance += hurricaneChance * hpMissingPercent / 100; + if (hurricaneChance > 100) { + hurricaneChance = 100; } if (actor->debuff != 0) { - spookChance = (spookChance * 150) / 100; - if (spookChance > 150) { - spookChance = 150; + hurricaneChance = hurricaneChance * 150 / 100; + if (hurricaneChance > 150) { + hurricaneChance = 150; } } if (actor->transparentStatus == STATUS_TRANSPARENT) { - spookChance = 0; + hurricaneChance = 0; } if (part->eventFlags & ACTOR_EVENT_FLAG_ILLUSORY) { - spookChance = 0; + hurricaneChance = 0; } - spookableTargets++; + affectedTargets++; } - D_8023D2D0[targetIdx] = spookChance; - totalSpookChance += spookChance; + sTargetStates[targetIdx] = hurricaneChance; + totalChance += hurricaneChance; } - if (spookableTargets != 0) { - avgSpookChance = totalSpookChance / spookableTargets; + if (affectedTargets != 0) { + avgHurricaneChance = totalChance / affectedTargets; } else { - avgSpookChance = 0; + avgHurricaneChance = 0; } - script->varTable[0] = avgSpookChance; + script->varTable[0] = avgHurricaneChance; for (i = 0; i < partner->targetListLength; i++) { targetIdx = partner->targetIndexList[i]; @@ -468,64 +779,859 @@ ApiStatus func_80238D8C_70CA9C(Evt* script, s32 isInitialCall) { actor = get_actor(target->actorID); part = get_actor_part(actor, target->partID); if (actor->transparentStatus == STATUS_TRANSPARENT || (part->eventFlags & ACTOR_EVENT_FLAG_ILLUSORY)) { - D_8023D2D0[targetIdx] = -1; - } else if (D_8023D2D0[targetIdx] != 0) { - D_8023D2D0[targetIdx] = avgSpookChance; + sTargetStates[targetIdx] = -1; + } else if (sTargetStates[targetIdx] != 0) { + sTargetStates[targetIdx] = avgHurricaneChance; } } return ApiStatus_DONE2; } -ApiStatus func_8023906C_70CD7C(Evt* script, s32 isInitialCall) { +ApiStatus N(CanTargetBeBlown)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partner = battleStatus->partnerActor; s32 targetIdx = partner->targetIndexList[partner->selectedTargetIndex]; - s32* temp_s0 = &D_8023D2D0[targetIdx]; + s32* hurricaneChance = &sTargetStates[targetIdx]; SelectableTarget* target = &partner->targetData[targetIdx]; - script->varTable[0] = *temp_s0; + script->varTable[0] = *hurricaneChance; - if (*temp_s0 == -1) { + if (*hurricaneChance == -1) { return ApiStatus_DONE2; } - if (*temp_s0 == 0) { + if (*hurricaneChance == 0) { return ApiStatus_DONE2; } get_actor(target->actorID); if (rand_int(99) < battleStatus->actionSuccess) { - *temp_s0 = -1; + *hurricaneChance = -1; script->varTable[0] = target->actorID; } else { - *temp_s0 = 0; + *hurricaneChance = 0; script->varTable[0] = ACTOR_PLAYER; } return ApiStatus_DONE2; } -typedef struct UnkLak { - /* 0x00 */ char unk_00[0x44]; - /* 0x44 */ s16 unk_44; - /* 0x46 */ s16 unk_46; - /* 0x48 */ char unk_48[0xC]; - /* 0x54 */ s16 unk_54; - /* 0x56 */ char unk_56[0x4]; - /* 0x5A */ s16 unk_5A; - /* 0x5C */ s8 unk_5C; - /* 0x5D */ s8 unk_5D; - /* 0x5E */ char unk_5E[0x12]; - /* 0x70 */ s16 unk_70; - /* 0x72 */ s16 unk_72; -} UnkLak; +EvtScript N(spinyFlip) = { + EVT_THREAD + EVT_CALL(N(SpinyFlipUpdatePopup)) + EVT_END_THREAD + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Run) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 40) + EVT_ADD(LVar1, 20) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Idle) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19) + EVT_CALL(SetBattleCamTarget, 47, 46, 12) + EVT_CALL(SetBattleCamOffsetZ, 7) + EVT_CALL(SetBattleCamZoom, 416) + EVT_CALL(MoveBattleCamOver, 30) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 3) + EVT_ADD(LVar1, 10) + EVT_ADD(LVar2, 5) + EVT_CALL(SetPartPos, ACTOR_PARTNER, 2, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_CALL(SetPartFlagBits, ACTOR_PARTNER, 2, ACTOR_PART_FLAG_INVISIBLE, 0) + EVT_CALL(SetAnimation, ACTOR_SELF, 2, ANIM_BattleLakilester_Spiny) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_LiftSpiny) + EVT_LOOP(4) + EVT_ADD(LVar1, 6) + EVT_CALL(SetPartPos, ACTOR_PARTNER, 2, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 8) + EVT_ADD(LVar1, 40) + EVT_ADD(LVar2, 5) + EVT_CALL(PlayEffect, EFFECT_ENERGY_IN_OUT, 0, LVar0, LVar1, LVar2, EVT_FLOAT(1.0), 80, 0, 0, 0, 0, 0, 0, 0) + EVT_CALL(SetActorVar, ACTOR_PARTNER, 0, 1) + EVT_THREAD + EVT_LOOP(40) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 1, 0, 0) + EVT_CALL(SetPartDispOffset, ACTOR_PARTNER, 2, 1, 0, 0) + EVT_WAIT(1) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, -1, 0, 0) + EVT_CALL(SetPartDispOffset, ACTOR_PARTNER, 2, -1, 0, 0) + EVT_WAIT(1) + EVT_CALL(GetActorVar, ACTOR_PARTNER, 0, LVar0) + EVT_IF_EQ(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 0, 0) + EVT_CALL(SetPartDispOffset, ACTOR_PARTNER, 2, 0, 0, 0) + EVT_END_THREAD + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(N(SpinyFlipActionCommand)) + EVT_CALL(SetActorVar, ACTOR_PARTNER, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_ThrowSpiny) + EVT_WAIT(3) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 2, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_SET(LVarF, -1) + EVT_END_IF + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_201B) + EVT_SWITCH(LVarF) + EVT_CASE_EQ(-1) + EVT_CALL(SetAnimation, ACTOR_SELF, 2, ANIM_BattleLakilester_SpinySpin) + EVT_CALL(SetPartJumpGravity, ACTOR_PARTNER, 2, EVT_FLOAT(1.5)) + EVT_SET(LVar0, LVar7) + EVT_SET(LVar1, LVar8) + EVT_SET(LVar2, LVar9) + EVT_CALL(JumpPartTo, ACTOR_PARTNER, 2, LVar7, LVar8, LVar9, 20) + EVT_CALL(LandJumpPart, 256, 2) + EVT_CASE_EQ(0) + EVT_CALL(SetAnimation, ACTOR_SELF, 2, ANIM_BattleLakilester_SpinySpin) + EVT_CALL(SetPartJumpGravity, ACTOR_PARTNER, 2, EVT_FLOAT(1.5)) + EVT_SET(LVar0, LVar7) + EVT_SET(LVar1, LVar8) + EVT_SET(LVar2, LVar9) + EVT_CALL(JumpPartTo, ACTOR_PARTNER, 2, LVar7, LVar8, LVar9, 20) + EVT_CALL(LandJumpPart, 256, 2) + EVT_CASE_DEFAULT + EVT_CALL(SetAnimation, ACTOR_SELF, 2, ANIM_BattleLakilester_SpinySpin) + EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(SetPartJumpGravity, ACTOR_PARTNER, 2, EVT_FLOAT(1.5)) + EVT_CALL(JumpPartTo, ACTOR_PARTNER, 2, LVar0, LVar1, LVar2, 20) + EVT_END_SWITCH + EVT_THREAD + EVT_ADD(LVar0, 50) + EVT_SET(LVar1, 0) + EVT_CALL(SetPartJumpGravity, ACTOR_PARTNER, 2, EVT_FLOAT(1.5)) + EVT_CALL(JumpPartTo, ACTOR_PARTNER, 2, LVar0, LVar1, LVar2, 15) + EVT_CALL(SetPartFlagBits, ACTOR_PARTNER, 2, ACTOR_PART_FLAG_INVISIBLE, 1) + EVT_END_THREAD + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(MOVE_SPINY_FLIP1) + EVT_SET(LVarE, 3) + EVT_CASE_EQ(MOVE_SPINY_FLIP2) + EVT_SET(LVarE, 4) + EVT_CASE_EQ(MOVE_SPINY_FLIP3) + EVT_SET(LVarE, 5) + EVT_END_SWITCH + EVT_SWITCH(LVarF) + EVT_CASE_GT(0) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_SPINY_SURGE | DAMAGE_TYPE_NO_CONTACT, 0, 0, LVarE, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_CASE_DEFAULT + EVT_SET(LVar0, HIT_RESULT_QUAKE_IMMUNE) + EVT_END_SWITCH + EVT_SWITCH(LVarF) + EVT_CASE_EQ(1) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) + EVT_CASE_DEFAULT + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_END_SWITCH + EVT_WAIT(15) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) + EVT_EXEC_WAIT(N(returnHome2)) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(returnHome)) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; -extern UnkLak* D_8023CCC0_7109D0; +EvtScript N(spinySurge) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_SPINY_SURGE) + EVT_CALL(func_802A9000_42EE20) + EVT_CALL(GetActorLevel, ACTOR_PARTNER, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(0) + EVT_CALL(SetupMashMeter, 2, 99, 100, 0, 0, 0) + EVT_CASE_EQ(1) + EVT_CALL(SetupMashMeter, 3, 70, 99, 100, 0, 0) + EVT_CASE_EQ(2) + EVT_CALL(SetupMashMeter, 4, 40, 70, 99, 100, 0) + EVT_END_SWITCH + EVT_CALL(func_80269344, 10) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19) + EVT_CALL(SetBattleCamTarget, 45, 60, 0) + EVT_CALL(SetBattleCamOffsetZ, 0) + EVT_CALL(SetBattleCamZoom, 400) + EVT_CALL(MoveBattleCamOver, 30) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Run) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 60, 20, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Idle) + EVT_WAIT(10) + EVT_CALL(GetActorLevel, ACTOR_PARTNER, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(0) + EVT_SET(LVarA, 60) + EVT_CASE_EQ(1) + EVT_SET(LVarA, 60) + EVT_CASE_EQ(2) + EVT_SET(LVarA, 60) + EVT_END_SWITCH + EVT_SET(LVarB, LVarA) + EVT_ADD(LVarB, -3) + EVT_CALL(func_802A916C_42EF8C, 0, LVarB, 3) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetActorVar, ACTOR_PARTNER, 0, 0) + EVT_SET(LVar9, 0) + EVT_SET(LocalFlag(2), 0) + EVT_SET(LocalFlag(3), 0) + EVT_LOOP(LVarA) + EVT_CALL(GetActionResult, LVar0) + EVT_IF_EQ(LVar9, 2) + EVT_SET(LVar0, 3) + EVT_END_IF + EVT_SWITCH(LVar0) + EVT_CASE_EQ(-1) + EVT_SET(LVar9, 0) + EVT_CALL(SetPartFlagBits, ACTOR_PARTNER, 2, ACTOR_PART_FLAG_INVISIBLE, 1) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Idle) + EVT_CASE_EQ(1) + EVT_IF_EQ(LVar9, 1) + EVT_BREAK_SWITCH + EVT_END_IF + EVT_CALL(SetPartFlagBits, ACTOR_PARTNER, 2, ACTOR_PART_FLAG_INVISIBLE, 0) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 3) + EVT_ADD(LVar1, 34) + EVT_ADD(LVar2, 5) + EVT_CALL(SetPartPos, ACTOR_PARTNER, 2, LVar0, LVar1, LVar2) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_LiftSpiny) + EVT_SET(LVar9, 1) + EVT_CASE_EQ(2) + EVT_IF_EQ(LVar9, 0) + EVT_BREAK_SWITCH + EVT_END_IF + EVT_IF_EQ(LocalFlag(2), 0) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_201B) + EVT_SET(LocalFlag(2), 1) + EVT_ELSE + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_201C) + EVT_SET(LocalFlag(2), 0) + EVT_END_IF + EVT_CALL(N(ThrowSpinyFX)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_ThrowSpinyAlt) + EVT_CALL(SetPartFlagBits, ACTOR_PARTNER, 2, ACTOR_PART_FLAG_INVISIBLE, 1) + EVT_CHILD_THREAD + EVT_CALL(GetActorVar, ACTOR_PARTNER, 0, LVar0) + EVT_ADD(LVar0, 1) + EVT_CALL(SetActorVar, ACTOR_PARTNER, 0, LVar0) + EVT_WAIT(15) + EVT_CALL(GetActorVar, ACTOR_PARTNER, 0, LVar0) + EVT_SUB(LVar0, 1) + EVT_CALL(SetActorVar, ACTOR_PARTNER, 0, LVar0) + EVT_END_CHILD_THREAD + EVT_SET(LocalFlag(3), 1) + EVT_SET(LVar9, 0) + EVT_END_SWITCH + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetPartFlagBits, ACTOR_PARTNER, 2, ACTOR_PART_FLAG_INVISIBLE, 1) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Idle) + EVT_LOOP(0) + EVT_CALL(GetActorVar, ACTOR_PARTNER, 0, LVar0) + EVT_IF_EQ(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_WAIT(10) + EVT_IF_EQ(LocalFlag(3), 0) + EVT_SET(LVar0, 0) + EVT_SET(LVarF, 0) + EVT_WAIT(15) + EVT_GOTO(13) + EVT_END_IF + EVT_CALL(InitTargetIterator) + EVT_LABEL(0) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 2, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_GOTO(12) + EVT_END_IF + EVT_CALL(GetActionCommandResult, LVarA) + EVT_CALL(N(GetSpinySurgeDamage)) + EVT_SWITCH(LVar0) + EVT_CASE_GT(0) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_SPINY_SURGE | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, 0, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_CASE_DEFAULT + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_SPINY_SURGE | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, 0, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE) + EVT_END_SWITCH + EVT_SWITCH(LVar0) + EVT_CASE_GT(0) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) + EVT_CASE_DEFAULT + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_END_SWITCH + EVT_WAIT(6) + EVT_LABEL(12) + EVT_CALL(ChooseNextTarget, 0, LVar1) + EVT_IF_NE(LVar1, -1) + EVT_GOTO(0) + EVT_END_IF + EVT_WAIT(30) + EVT_LABEL(13) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) + EVT_EXEC_WAIT(N(returnHome2)) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(returnHome)) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; -INCLUDE_ASM(s32, "battle/partner/lakilester", func_80239140_70CE50); +EvtScript N(cloudNine_normal) = { + EVT_CALL(UseIdleAnimation, ACTOR_PLAYER, FALSE) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_8, 0) + EVT_CALL(SetActorFlagBits, ACTOR_PLAYER, ACTOR_FLAG_20000000, 1) + EVT_CALL(LoadActionCommand, ACTION_COMMAND_WATER_BLOCK) + EVT_CALL(func_802A9000_42A4F0, 2) + EVT_CALL(func_80269344, 50) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_10) + EVT_CALL(BattleCamTargetActor, ACTOR_SELF) + EVT_CALL(SetBattleCamOffsetZ, 17) + EVT_CALL(SetBattleCamZoom, 300) + EVT_CALL(MoveBattleCamOver, 30) + EVT_CALL(func_8024EDA4) + EVT_WAIT(10) + EVT_THREAD + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 40) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_END_THREAD + EVT_WAIT(15) + EVT_SET(LVar0, 0) + EVT_LOOP(10) + EVT_ADD(LVar0, 18) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_WAIT(10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_CloudNineBegin) + EVT_WAIT(5) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_CloudNineIdle) + EVT_WAIT(15) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, -12) + EVT_ADD(LVar1, 13) + EVT_ADD(LVar2, -5) + EVT_CALL(SetActorSpeed, ACTOR_PLAYER, EVT_FLOAT(4.0)) + EVT_CALL(SetActorJumpGravity, ACTOR_PLAYER, EVT_FLOAT(1.0)) + EVT_CALL(SetJumpAnimations, ACTOR_PLAYER, 0, ANIM_Mario_AnimMidairStill, ANIM_Mario_AnimMidair, ANIM_Mario_ReadyJump) + EVT_CALL(SetGoalPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_CALL(func_80273444, 18, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_ReadyJump) + EVT_WAIT(3) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_10002) + EVT_CALL(func_802A9398_42A888, 0, 97, 3) + EVT_CALL(AddBattleCamZoom, -75) + EVT_CALL(MoveBattleCamOver, 100) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_WAIT(100) + EVT_WAIT(3) + EVT_CALL(AddBattleCamZoom, 50) + EVT_CALL(MoveBattleCamOver, 5) + EVT_CALL(GetActionCommandResult, LVarA) + EVT_IF_GT(LVarA, 0) + EVT_CALL(N(RemoveCloudNineFX)) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_201D) + EVT_CALL(N(CloudNineFX)) + EVT_CALL(N(ApplyCloudNine)) + EVT_CALL(SetActorFlagBits, ACTOR_PLAYER, ACTOR_FLAG_8000000, 1) + EVT_END_IF + EVT_CALL(UseIdleAnimation, ACTOR_PLAYER, TRUE) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_CloudNineEnd) + EVT_THREAD + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar3, LVar4, LVar5) + EVT_LOOP(10) + EVT_SET(LVar0, LVar3) + EVT_SET(LVar1, LVar4) + EVT_SET(LVar2, LVar5) + EVT_CALL(RandInt, 40, LVar6) + EVT_SUB(LVar6, 20) + EVT_ADD(LVar0, LVar6) + EVT_CALL(RandInt, 30, LVar6) + EVT_SUB(LVar6, 15) + EVT_ADD(LVar1, LVar6) + EVT_CALL(PlayEffect, EFFECT_FLOATING_CLOUD_PUFF, 0, LVar0, LVar1, LVar2, EVT_FLOAT(1.0), 20, 0, 0, 0, 0, 0, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(SetJumpAnimations, ACTOR_PLAYER, 0, ANIM_Mario_AnimMidairStill, ANIM_Mario_AnimMidair, ANIM_Mario_ReadyJump) + EVT_SET(LVar1, 0) + EVT_CALL(SetGoalPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_CALL(PlayerFallToGoal, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Walk) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_ReadyJump) + EVT_WAIT(7) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_10002) + EVT_THREAD + EVT_CALL(SetGoalToHome, ACTOR_PLAYER) + EVT_CALL(SetActorSpeed, ACTOR_PLAYER, EVT_FLOAT(8.0)) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_Running) + EVT_CALL(PlayerRunToGoal, 0) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_10002) + EVT_CALL(SetActorFlagBits, ACTOR_PLAYER, ACTOR_FLAG_20000000, 0) + EVT_END_THREAD + EVT_THREAD + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_SUB(LVar1, 40) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_END_THREAD + EVT_WAIT(15) + EVT_SET(LVar0, 180) + EVT_LOOP(10) + EVT_SUB(LVar0, 18) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_CALL(MoveBattleCamOver, 30) + EVT_WAIT(10) + EVT_IF_GT(LVarA, 0) + EVT_CALL(ShowMessageBox, 40, 60) + EVT_CALL(WaitForMessageBoxDone) + EVT_END_IF + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_8, 1) + EVT_RETURN + EVT_END +}; -ApiStatus func_80239F84_70DC94(Evt* script, s32 isInitialCall) { +EvtScript N(cloudNine_immobile) = { + EVT_CALL(UseIdleAnimation, ACTOR_PLAYER, FALSE) + EVT_CALL(LoadActionCommand, ACTION_COMMAND_WATER_BLOCK) + EVT_CALL(func_802A9000_42A4F0, 2) + EVT_CALL(func_80269344, 50) + EVT_CALL(N(RemoveCloudNineFX)) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_10) + EVT_CALL(BattleCamTargetActor, ACTOR_SELF) + EVT_CALL(SetBattleCamOffsetZ, 0) + EVT_CALL(SetBattleCamZoom, 300) + EVT_CALL(MoveBattleCamOver, 30) + EVT_CALL(func_8024EDA4) + EVT_WAIT(10) + EVT_SET(LVar0, 0) + EVT_LOOP(10) + EVT_ADD(LVar0, 18) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_WAIT(10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_CloudNineBegin) + EVT_WAIT(20) + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 12) + EVT_ADD(LVar1, -7) + EVT_ADD(LVar2, 5) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, -10, 10) + EVT_THREAD + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 40) + EVT_CALL(SetGoalPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PLAYER, 20, 0, 10) + EVT_END_THREAD + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 40) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, 0, 10) + EVT_CALL(func_802A9398_42A888, 0, 97, 3) + EVT_CALL(AddBattleCamZoom, -75) + EVT_CALL(MoveBattleCamOver, 100) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_WAIT(100) + EVT_WAIT(3) + EVT_CALL(AddBattleCamZoom, 50) + EVT_CALL(MoveBattleCamOver, 5) + EVT_CALL(GetActionCommandResult, LVarA) + EVT_IF_GT(LVarA, 0) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_201D) + EVT_CALL(N(CloudNineFX)) + EVT_CALL(N(ApplyCloudNine)) + EVT_END_IF + EVT_CALL(UseIdleAnimation, ACTOR_PLAYER, TRUE) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_CloudNineEnd) + EVT_THREAD + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar3, LVar4, LVar5) + EVT_LOOP(10) + EVT_SET(LVar0, LVar3) + EVT_SET(LVar1, LVar4) + EVT_SET(LVar2, LVar5) + EVT_CALL(RandInt, 40, LVar6) + EVT_SUB(LVar6, 20) + EVT_ADD(LVar0, LVar6) + EVT_CALL(RandInt, 30, LVar6) + EVT_SUB(LVar6, 15) + EVT_ADD(LVar1, LVar6) + EVT_CALL(PlayEffect, EFFECT_FLOATING_CLOUD_PUFF, 0, LVar0, LVar1, LVar2, EVT_FLOAT(1.0), 20, 0, 0, 0, 0, 0, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_SET(LVar1, 0) + EVT_CALL(SetGoalPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_CALL(FallToGoal, ACTOR_PLAYER, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Walk) + EVT_THREAD + EVT_CALL(SetGoalToHome, ACTOR_PLAYER) + EVT_CALL(SetActorSpeed, ACTOR_PLAYER, EVT_FLOAT(8.0)) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_Running) + EVT_CALL(PlayerRunToGoal, 0) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_10002) + EVT_END_THREAD + EVT_THREAD + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, 0, 10) + EVT_END_THREAD + EVT_SET(LVar0, 180) + EVT_LOOP(10) + EVT_SUB(LVar0, 18) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_CALL(MoveBattleCamOver, 30) + EVT_WAIT(10) + EVT_IF_GT(LVarA, 0) + EVT_CALL(ShowMessageBox, 40, 60) + EVT_CALL(WaitForMessageBoxDone) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(cloudNine) = { + EVT_CALL(GetStatusFlags, ACTOR_PLAYER, LVar0) + EVT_IF_FLAG(LVar0, STATUS_FLAG_SLEEP | STATUS_FLAG_FROZEN | STATUS_FLAG_FEAR | STATUS_FLAG_PARALYZE | STATUS_FLAG_DIZZY | STATUS_FLAG_STONE | STATUS_FLAG_STOP) + EVT_EXEC_WAIT(N(cloudNine_immobile)) + EVT_ELSE + EVT_EXEC_WAIT(N(cloudNine_normal)) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +enum { + STATE_INHALE = -1, + STATE_DISABLED = 0, + STATE_EXHALE = 1, +}; + +ApiStatus N(ProcessHurricane)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; - Actor* actor; + Actor* partner = battleStatus->partnerActor; + ActorState* partnerState = &partner->state; + EffectInstance* effect; + Actor* targetActor; + SelectableTarget* target; + s32 targetIndex; + s32 temp; + s32 i; + f32 x, y, z; + f32 x2, y2, z2; + f32 tempF1, tempF2; + f32 totalPower; + f64 tempF64; + + static EffectInstance* sHuffPuffBreathEffect; + static HurricaneState sHurricaneState; + static s32 sUnusedAngle; + static s32 sHurricaneIntensity; + static s32 sHuffPuffBreathState; + static s32 D_8023D278; + static HurricaneState* hurricaneState = &sHurricaneState; + + + if (isInitialCall) { + script->functionTemp[0] = 0; + } + + switch (script->functionTemp[0]) { + case 0: + partner->state.angle = 0.0f; + partner->state.moveTime = 165; + partner->state.moveArcAmplitude = 0; + sIsHurricaneActive = TRUE; + D_8023D338 = 255; + sHuffPuffBreathEffect = effect = fx_huff_puff_breath(0, 0.0f, -1000.0f, 0.0f, 0.0f, -2.0f, 0.6f, 0); + + effect->data.huffPuffBreath->primR = 20; + effect->data.huffPuffBreath->primG = 80; + effect->data.huffPuffBreath->primB = 255; + + effect->data.huffPuffBreath->envR = 200; + effect->data.huffPuffBreath->envG = 240; + effect->data.huffPuffBreath->envB = 240; + + hurricaneState->unk_54 = 177; + hurricaneState->breathSizeIncrease = 0; + hurricaneState->unk_46 = 0; + hurricaneState->state = 0; + hurricaneState->totalPower = 5000; + hurricaneState->intensity = 0; + hurricaneState->startingTotalPower = -1; + + + sSavedHurricaneIntensity = 0; + D_8023D278 = (1.0 - sin_rad(hurricaneState->intensity * PI_S * 0.5f / 750.0f)) * 8.0 + 13.0; + sHuffPuffBreathState = -1; + + sUnusedAngle = 0; + sHurricaneIntensity = 0; + sBreathSizeIncrease = 0; + + sMaxPower = 2000; + script->functionTemp[1] = rand_int(10) + 11; + script->functionTemp[2] = 0; + script->functionTemp[0] = 1; + break; + case 1: + partner->state.angle = sUnusedAngle * 150 / 100 - 75; // angle is not used + + for (i = 0; i < partner->targetListLength; i++) { + targetIndex = partner->targetIndexList[i]; + temp = sTargetStates[targetIndex]; + if (temp != -1) { + if (temp != 0) { + target = &partner->targetData[targetIndex]; + targetActor = get_actor(target->actorID); + targetActor->yaw = clamp_angle(targetActor->yaw + 13.0f + sHurricaneIntensity * 4); + } + } + } + + if (partnerState->moveTime != 0) { + partnerState->moveTime--; + break; + } + + for (i = 0; i < partner->targetListLength; i++) { + targetIndex = partner->targetIndexList[i]; + temp = sTargetStates[targetIndex]; + if (temp != -1) { + if (temp != 0) { + target = &partner->targetData[targetIndex]; + targetActor = get_actor(target->actorID); + targetActor->yaw = 0.0f; + } + } + } + + sIsHurricaneActive = FALSE; + remove_effect(sHuffPuffBreathEffect); + return ApiStatus_DONE2; + } + + sHuffPuffBreathEffect->data.huffPuffBreath->scale = sBreathSizeIncrease / 50.0 + 1.0; + x = partner->currentPos.x; + y = partner->currentPos.y; + rand_int(1000); + tempF1 = 5.0f; + switch (sHuffPuffBreathState) { + case STATE_INHALE: + x = partner->currentPos.x; + y = partner->currentPos.y + 15.0f; + z = partner->currentPos.z + tempF1; + add_vec2D_polar(&x, &y, 12.0f, 90.0f); + sHuffPuffBreathEffect->data.huffPuffBreath->pos.x = x; + sHuffPuffBreathEffect->data.huffPuffBreath->pos.y = y; + sHuffPuffBreathEffect->data.huffPuffBreath->pos.z = z; + sHuffPuffBreathEffect->data.huffPuffBreath->speedX = -2.0f; + + // looks like this was breath inhale phase, but then the devs removed it + sHuffPuffBreathEffect->data.huffPuffBreath->pos.x = 0.0f; + sHuffPuffBreathEffect->data.huffPuffBreath->pos.y = -1000.0f; + sHuffPuffBreathEffect->data.huffPuffBreath->pos.z = 0.0f; + + if (script->functionTemp[2] != 0) { + sfx_play_sound_at_position(SOUND_201E, 0, partner->currentPos.x, partner->currentPos.y, partner->currentPos.z); + } + script->functionTemp[2] = 0; + + partnerState->moveArcAmplitude = 0; + set_animation(ACTOR_PARTNER, -1, ANIM_BattleLakilester_HurricaneInhale); + break; + case STATE_DISABLED: + sHuffPuffBreathEffect->data.huffPuffBreath->pos.x = 0.0f; + sHuffPuffBreathEffect->data.huffPuffBreath->pos.y = -1000.0f; + sHuffPuffBreathEffect->data.huffPuffBreath->pos.z = 0.0f; + break; + case STATE_EXHALE: + x = partner->currentPos.x; + y = partner->currentPos.y + 15.0f; + z = partner->currentPos.z + tempF1; + add_vec2D_polar(&x, &y, 12.0f, 90.0f); + sHuffPuffBreathEffect->data.huffPuffBreath->pos.x = x; + sHuffPuffBreathEffect->data.huffPuffBreath->pos.y = y; + sHuffPuffBreathEffect->data.huffPuffBreath->pos.z = z; + sHuffPuffBreathEffect->data.huffPuffBreath->speedX = 2.0f; + + if (script->functionTemp[2] == 0) { + sfx_play_sound_at_position(SOUND_201F, 0, partner->currentPos.x, partner->currentPos.y, partner->currentPos.z); + } + script->functionTemp[2] = 1; + + if (partnerState->moveArcAmplitude == 0) { + script->functionTemp[1] = 1; + } + partnerState->moveArcAmplitude = 1; + + set_animation(ACTOR_PARTNER, -1, ANIM_BattleLakilester_HurricaneExhale); + break; + } + + + if (gGameStatusPtr->frameCounter % (7 - sHurricaneIntensity / 2) == 0) { + x = -220.0f; + y = 176 - rand_int(100); + z = 50.0f; + x2 = 220.0f; + y2 = y - (rand_int(100) + 100); + z2 = 50.0f; + tempF1 = rand_int(1000); + tempF1 = tempF1 / 3000.0f + 0.5; + tempF2 = rand_int(1000); + tempF2 = tempF2 / 300.0f + 5.75 + sHurricaneIntensity; + fx_moving_cloud(1, x, y, z, x2, y2, z2, tempF2, tempF1); + } + + if (gGameStatusPtr->frameCounter % (7 - sHurricaneIntensity / 2) == 0) { + x = -220.0f; + y = 176 - rand_int(100); + z = -50.0f; + x2 = 220.0f; + y2 = y - (rand_int(100) + 100); + z2 = -50.0f; + tempF1 = rand_int(1000); + tempF1 = tempF1 / 4000.0f + 0.1; + tempF2 = rand_int(1000); + tempF2 = tempF2 / 300.0f + 2.75 + sHurricaneIntensity / 2; + fx_moving_cloud(1, x, y, z, x2, y2, z2, tempF2, tempF1); + } + +RESTART: + switch (hurricaneState->state) { + case 0: + sHuffPuffBreathState = STATE_EXHALE; + if (hurricaneState->startingTotalPower < 0) { + hurricaneState->startingTotalPower = hurricaneState->totalPower; + } + + totalPower = hurricaneState->totalPower; + if (totalPower > 5000.0f) { + totalPower = 5000.0f; + } + + tempF64 = D_8023D278; + tempF1 = tempF64 + tempF64 * (1.0 - sin_rad(totalPower * PI_S * 0.5f / 5000.0f + PI_S / 2)) * 1.5; + hurricaneState->intensity += tempF1; + sSavedHurricaneIntensity += D_8023D278; + + if (hurricaneState->totalPower > 9000) { + hurricaneState->intensity -= hurricaneState->intensity / 2; + } + + if (hurricaneState->intensity < 0) { + hurricaneState->intensity = 0; + } + + hurricaneState->intensity += tempF1; + if (hurricaneState->intensity > 750) { + hurricaneState->intensity = 750; + } + + if (sSavedHurricaneIntensity > 1000) { + sSavedHurricaneIntensity = 1000; + } + + hurricaneState->totalPower += hurricaneState->intensity; + + if (hurricaneState->totalPower > sMaxPower + 5000) { + hurricaneState->totalPower = sMaxPower + 5000; + hurricaneState->state = 1; + hurricaneState->unk_5D = 5; + hurricaneState->intensity = sSavedHurricaneIntensity; + } + break; + case 1: + sHuffPuffBreathState = STATE_DISABLED; + hurricaneState->state = 10; + break; + } + + switch (hurricaneState->state) { + case 10: + sHuffPuffBreathState = STATE_INHALE; + tempF1 = hurricaneState->intensity + hurricaneState->intensity / 3; + if (tempF1 < 200.0f) { + tempF1 = 200.0f; + } + hurricaneState->totalPower -= tempF1; + if (hurricaneState->totalPower < 5000 - sMaxPower) { + hurricaneState->totalPower = 5000 - sMaxPower; + hurricaneState->state = 11; + hurricaneState->unk_5D = 5; + hurricaneState->startingTotalPower = -1; + sMaxPower += 1000; + if (sMaxPower > 5000) { + sMaxPower = 5000; + } + } + break; + case 11: + sHuffPuffBreathState = STATE_DISABLED; + hurricaneState->state = 0; + hurricaneState->intensity -= hurricaneState->intensity / 2.8; + sSavedHurricaneIntensity = hurricaneState->intensity; + D_8023D278 = (1.0 - sin_rad(hurricaneState->intensity * PI_S * 0.5f / 750.0f)) * 8.0 + 13.0; + goto RESTART; + } + + if (hurricaneState->state == 0) { + hurricaneState->breathSizeIncrease += hurricaneState->intensity / 4; + } + + if (hurricaneState->breathSizeIncrease > 10000) { + hurricaneState->breathSizeIncrease = 10000; + } + + sUnusedAngle = hurricaneState->totalPower / 100; + sHurricaneIntensity = hurricaneState->intensity / 100; + if (sHurricaneIntensity > 10) { + sHurricaneIntensity = 10; + } + sBreathSizeIncrease = hurricaneState->breathSizeIncrease / 100; + + return ApiStatus_BLOCK; +} + +ApiStatus N(BlowTargetAway)(Evt* script, s32 isInitialCall) { + BattleStatus* battleStatus = &gBattleStatus; + Actor* target; ActorState* state; f64 temp_f20; @@ -534,49 +1640,133 @@ ApiStatus func_80239F84_70DC94(Evt* script, s32 isInitialCall) { script->functionTemp[0] = 0; } - actor = script->functionTempPtr[1]; - state = &actor->state; + target = script->functionTempPtr[1]; + state = &target->state; switch (script->functionTemp[0]) { case 0: - actor->state.moveTime = 0; - actor->state.currentPos.x = actor->currentPos.x; - actor->state.currentPos.y = actor->currentPos.y; - actor->state.currentPos.z = actor->currentPos.z; - actor->state.speed = 5.5f; - D_8023D330 += 1; + target->state.moveTime = 0; + target->state.currentPos.x = target->currentPos.x; + target->state.currentPos.y = target->currentPos.y; + target->state.currentPos.z = target->currentPos.z; + target->state.speed = 5.5f; + sNumEnemiesBeingBlown += 1; battleStatus->currentAttackElement = 0; - dispatch_event_actor(actor, 0x16); + dispatch_event_actor(target, EVENT_BLOW_AWAY); script->functionTemp[0] = 1; break; case 1: - actor->state.currentPos.x += actor->state.speed; - temp_f20 = actor->state.currentPos.y; - actor->state.currentPos.y = - temp_f20 + ((sin_rad(2.0f * sin_rad(DEG_TO_RAD(actor->state.moveTime)) * PI_S) * 1.4) + 0.5); - actor->state.moveTime += 6; - actor->state.moveTime = clamp_angle(actor->state.moveTime); - actor->yaw += 33.0f; - actor->yaw = clamp_angle(actor->yaw); - if (actor->state.currentPos.x > 240.0f) { - D_8023D330 -= 1; + target->state.currentPos.x += target->state.speed; + temp_f20 = target->state.currentPos.y; + target->state.currentPos.y = + temp_f20 + ((sin_rad(2.0f * sin_rad(DEG_TO_RAD(target->state.moveTime)) * PI_S) * 1.4) + 0.5); + target->state.moveTime += 6; + target->state.moveTime = clamp_angle(target->state.moveTime); + target->yaw += 33.0f; + target->yaw = clamp_angle(target->yaw); + if (target->state.currentPos.x > 240.0f) { + sNumEnemiesBeingBlown -= 1; return ApiStatus_DONE2; } break; } - actor->currentPos.x = state->currentPos.x; - actor->currentPos.y = state->currentPos.y; - actor->currentPos.z = state->currentPos.z; + target->currentPos.x = state->currentPos.x; + target->currentPos.y = state->currentPos.y; + target->currentPos.z = state->currentPos.z; return ApiStatus_BLOCK; } -ApiStatus func_8023A19C_70DEAC(Evt* script, s32 isInitialCall) { - if (D_8023D330 == 0) { +ApiStatus N(AllEnemiesBlownAway)(Evt* script, s32 isInitialCall) { + if (sNumEnemiesBeingBlown == 0) { return ApiStatus_DONE2; } return ApiStatus_BLOCK; } -ApiStatus func_8023A1B0_70DEC0(Evt* script, s32 isInitialCall) { - script->varTable[0] = D_8023D334; +ApiStatus N(IsHurricaneActive)(Evt* script, s32 isInitialCall) { + script->varTable[0] = sIsHurricaneActive; return ApiStatus_DONE2; } + +EvtScript N(hurricane) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_HURRICANE) + EVT_CALL(func_802A9000_42F6E0) + EVT_CALL(SetupMashMeter, 1, 100, 0, 0, 0, 0) + EVT_CALL(func_80269344, 15) + EVT_CALL(func_80269EAC, 20) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19) + EVT_CALL(SetBattleCamTarget, -45, 54, 0) + EVT_CALL(SetBattleCamOffsetZ, 0) + EVT_CALL(SetBattleCamZoom, 280) + EVT_CALL(MoveBattleCamOver, 40) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Run) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 40, 20, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Idle) + EVT_WAIT(15) + EVT_CALL(N(InitHurricane)) + EVT_CALL(func_802A91A0_42F880, 0, 147, 3, LVar0) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_CALL(SetActorRotationOffset, ACTOR_PARTNER, 0, 20, 0) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19) + EVT_CALL(SetBattleCamTarget, 35, 54, 0) + EVT_CALL(SetBattleCamOffsetZ, 0) + EVT_CALL(SetBattleCamZoom, 430) + EVT_CALL(MoveBattleCamOver, 150) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_288) + EVT_THREAD + EVT_CALL(N(ProcessHurricane)) + EVT_END_THREAD + EVT_WAIT(2) + EVT_LOOP(150) + EVT_CALL(N(IsHurricaneActive)) + EVT_IF_EQ(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_CALL(GetActionSuccessCopy, LVar0) + EVT_IF_EQ(LVar0, 100) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_WAIT(15) + EVT_CALL(GetActionSuccessCopy, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_GT(99) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) + EVT_CASE_DEFAULT + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_END_SWITCH + EVT_CALL(InitTargetIterator) + EVT_LABEL(10) + EVT_CALL(SetGoalToTarget, ACTOR_SELF) + EVT_CALL(N(CanTargetBeBlown)) + EVT_IF_GT(LVar0, 0) + EVT_SET(LVarA, LVar0) + EVT_THREAD + EVT_CALL(N(BlowTargetAway)) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_STAR_POINTS_DROPPED, 1) + EVT_CALL(RemoveActor, LVarA) + EVT_END_THREAD + EVT_ELSE + EVT_IF_EQ(LVar0, 0) + EVT_CALL(PartnerDamageEnemy, LVar2, DAMAGE_TYPE_NO_CONTACT, 0, 0, 0, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_800) + EVT_END_IF + EVT_END_IF + EVT_LABEL(11) + EVT_CALL(ChooseNextTarget, 0, LVar0) + EVT_IF_NE(LVar0, -1) + EVT_GOTO(10) + EVT_END_IF + EVT_WAIT(34) + EVT_CALL(SetActorRotation, ACTOR_PARTNER, 0, 0, 0) + EVT_CALL(SetActorRotationOffset, ACTOR_PARTNER, 0, 0, 0) + EVT_EXEC_WAIT(N(returnHome)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleLakilester_Walk) + EVT_CALL(N(AllEnemiesBlownAway)) + EVT_CALL(PartnerYieldTurn) + EVT_RETURN + EVT_END +}; diff --git a/src/battle/partner/parakarry.c b/src/battle/partner/parakarry.c index 8609df7c57..e33d5586a8 100644 --- a/src/battle/partner/parakarry.c +++ b/src/battle/partner/parakarry.c @@ -1,17 +1,28 @@ #include "common.h" #include "battle/battle.h" +#include "script_api/battle.h" #include "hud_element.h" #include "effects.h" +#include "battle/action_cmd/jump.h" +#include "battle/action_cmd/air_lift.h" +#include "battle/action_cmd/air_raid.h" +#include "sprite/npc/BattleParakarry.h" + +#define NAMESPACE battle_partner_parakarry + +static EffectInstance* airRaidEffect; +static s32 D_8023BD74_unused; +static s32 hudMarkers[7]; +static s32 D_8023BD94_unused; +static s32 hudShimmers[6]; +static s32 D_8023BDB0_unused; +static s32 hudTarget; +static s32 hudTargetRotation; +static s32 shellShotTimer; +static s32 hudStick; +static s32 hudStickPosX; +static s32 hudStickPosY; -extern EffectInstance* D_8023BD70; -extern s32 D_8023BD78[7]; -extern s32 D_8023BD98[6]; -extern s32 D_8023BDB4; -extern s32 D_8023BDB8; -extern s32 D_8023BDBC; -extern s32 D_8023BDC0; -extern s32 D_8023BDC4; -extern s32 D_8023BDC8; extern HudScript HES_AimMarkerA; extern HudScript HES_AimMarkerB; extern HudScript HES_AimMarkerC; @@ -29,9 +40,22 @@ extern HudScript HES_AimTarget; extern HudScript HES_StickHoldLeft; extern HudScript HES_StickNeutral; -extern f64 D_8023BD60_703AE0; +extern EvtScript N(handleEvent); +extern EvtScript N(idle); +extern EvtScript N(nextTurn); +extern EvtScript N(takeTurn); +extern EvtScript N(init); +extern EvtScript N(firstStrike); +extern EvtScript N(executeAction); +extern EvtScript N(celebrate); +extern EvtScript N(runAway); +extern EvtScript N(runAwayFail); +extern EvtScript N(skyDive); +extern EvtScript N(shellShot); +extern EvtScript N(airLift); +extern EvtScript N(airRaid); -ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { +ApiStatus N(ShellShotActionCommand)(Evt* evt, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; ActionCommandStatus* actionCommandStatus = &gActionCommandStatus; Actor* parakarry = battleStatus->partnerActor; @@ -40,8 +64,8 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { ActorPart* targetActorPart; f32 x, y, z; s32 screenX, screenY, screenZ; - f32 tempX, tempY, tempZ; - f32 clampedAngleDiff, tempAngle; + f32 aimX, aimY, aimZ; + f32 clampedAngleDiff, aimAngle; s32 hudID, i; if (isInitialCall) { @@ -50,67 +74,67 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { switch (evt->functionTemp[0]) { case 0: - D_8023BD78[0] = hudID = hud_element_create(&HES_AimMarkerF); + hudMarkers[0] = hudID = hud_element_create(&HES_AimMarkerF); hud_element_set_render_depth(hudID, 10); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD78[1] = hudID = hud_element_create(&HES_AimMarkerE); + hudMarkers[1] = hudID = hud_element_create(&HES_AimMarkerE); hud_element_set_render_depth(hudID, 10); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD78[2] = hudID = hud_element_create(&HES_AimMarkerD); + hudMarkers[2] = hudID = hud_element_create(&HES_AimMarkerD); hud_element_set_render_depth(hudID, 10); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD78[3] = hudID = hud_element_create(&HES_AimMarkerC); + hudMarkers[3] = hudID = hud_element_create(&HES_AimMarkerC); hud_element_set_render_depth(hudID, 10); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD78[4] = hudID = hud_element_create(&HES_AimMarkerB); + hudMarkers[4] = hudID = hud_element_create(&HES_AimMarkerB); hud_element_set_render_depth(hudID, 10); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD78[5] = hudID = hud_element_create(&HES_AimMarkerA); + hudMarkers[5] = hudID = hud_element_create(&HES_AimMarkerA); hud_element_set_render_depth(hudID, 10); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD78[6] = hudID = hud_element_create(&HES_AimReticle); + hudMarkers[6] = hudID = hud_element_create(&HES_AimReticle); hud_element_set_render_depth(hudID, 10); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD98[0] = hudID = hud_element_create(&HES_AimShimmerF); + hudShimmers[0] = hudID = hud_element_create(&HES_AimShimmerF); hud_element_set_render_depth(hudID, 9); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD98[1] = hudID = hud_element_create(&HES_AimShimmerE); + hudShimmers[1] = hudID = hud_element_create(&HES_AimShimmerE); hud_element_set_render_depth(hudID, 9); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD98[2] = hudID = hud_element_create(&HES_AimShimmerD); + hudShimmers[2] = hudID = hud_element_create(&HES_AimShimmerD); hud_element_set_render_depth(hudID, 9); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD98[3] = hudID = hud_element_create(&HES_AimShimmerC); + hudShimmers[3] = hudID = hud_element_create(&HES_AimShimmerC); hud_element_set_render_depth(hudID, 9); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD98[4] = hudID = hud_element_create(&HES_AimShimmerB); + hudShimmers[4] = hudID = hud_element_create(&HES_AimShimmerB); hud_element_set_render_depth(hudID, 9); hud_element_set_render_pos(hudID, -100, -100); - D_8023BD98[5] = hudID = hud_element_create(&HES_AimShimmerA); + hudShimmers[5] = hudID = hud_element_create(&HES_AimShimmerA); hud_element_set_render_depth(hudID, 9); hud_element_set_render_pos(hudID, -100, -100); - D_8023BDB4 = hudID = hud_element_create(&HES_AimTarget); + hudTarget = hudID = hud_element_create(&HES_AimTarget); hud_element_set_render_depth(hudID, 10); - hud_element_create_transform_A(D_8023BDB4); + hud_element_create_transform_A(hudTarget); hud_element_set_render_pos(hudID, -100, -100); - D_8023BDC4 = -48; - D_8023BDC8 = 80; + hudStickPosX = -48; + hudStickPosY = 80; - D_8023BDC0 = hudID = hud_element_create(&HES_StickHoldLeft); - hud_element_set_render_pos(hudID, D_8023BDC4, D_8023BDC8); + hudStick = hudID = hud_element_create(&HES_StickHoldLeft); + hud_element_set_render_pos(hudID, hudStickPosX, hudStickPosY); hud_element_set_render_depth(hudID, 0); set_goal_pos_to_part(state, parakarry->targetActorID, parakarry->targetPartIndex); @@ -121,7 +145,7 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { state->goalPos.y += targetActorPart->unk_76 * targetActor->scalingFactor; state->goalPos.z = state->goalPos.z; state->unk_24 = (targetActorPart->size.y + targetActorPart->size.x) / 2 / 24.0; - hud_element_set_scale(D_8023BDB4, state->unk_24 * targetActor->scalingFactor); + hud_element_set_scale(hudTarget, state->unk_24 * targetActor->scalingFactor); state->currentPos.x = parakarry->currentPos.x + 8.0f; state->currentPos.y = parakarry->currentPos.y + 16.0f; state->currentPos.z = parakarry->currentPos.z; @@ -133,12 +157,12 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { for (i = 0; i < 30; i++) { state->unk_18.x -= 1.0f; - tempAngle = clamp_angle(state->unk_18.x); + aimAngle = clamp_angle(state->unk_18.x); x = state->currentPos.x; y = state->currentPos.y; z = state->currentPos.z; clampedAngleDiff = state->distance; - add_vec2D_polar(&x, &y, clampedAngleDiff, tempAngle); + add_vec2D_polar(&x, &y, clampedAngleDiff, aimAngle); get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ); if (screenY > 180) { break; @@ -150,11 +174,11 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { for (i = 0; i < 30; i++) { state->unk_18.y += 1.0f; - tempAngle = clamp_angle(state->unk_18.y); + aimAngle = clamp_angle(state->unk_18.y); x = state->currentPos.x; y = state->currentPos.y; z = state->currentPos.z; - add_vec2D_polar(&x, &y, state->distance, tempAngle); + add_vec2D_polar(&x, &y, state->distance, aimAngle); get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ); if (screenY < 30) { break; @@ -163,8 +187,8 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { state->moveTime = 120; state->angle = state->unk_18.x + rand_int(state->unk_18.y - state->unk_18.x - 2.0f); - D_8023BDB8 = 0; - D_8023BDBC = 90; + hudTargetRotation = 0; + shellShotTimer = 90; state->velocity = 3.0f; battleStatus->unk_86 = 0; func_80268858(); @@ -173,12 +197,12 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { break; case 1: if (gActionCommandStatus.autoSucceed || battleStatus->currentButtonsDown & BUTTON_STICK_LEFT) { - D_8023BDBC = 0; + shellShotTimer = 0; } - if (D_8023BDBC != 0) { - D_8023BDBC--; - if (D_8023BDBC == 0) { + if (shellShotTimer != 0) { + shellShotTimer--; + if (shellShotTimer == 0) { if (rand_int(100) < 50) { state->angle = state->unk_18.x; } else { @@ -190,7 +214,7 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { } sfx_play_sound(SOUND_311); - D_8023BDBC = 60; + shellShotTimer = 60; evt->functionTemp[0] = 2; break; case 2: @@ -200,16 +224,16 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { break; } } else { - if (D_8023BDBC == 0) { + if (shellShotTimer == 0) { targetActor = get_actor(parakarry->targetActorID); - tempAngle = fabsf(get_clamped_angle_diff(state->angle, state->bounceDivisor)) / state->unk_24 * targetActor->scalingFactor; + aimAngle = fabsf(get_clamped_angle_diff(state->angle, state->bounceDivisor)) / state->unk_24 * targetActor->scalingFactor; - if (tempAngle < 3.0f) { + if (aimAngle < 3.0f) { evt->functionTemp[0] = 3; break; } } else { - D_8023BDBC--; + shellShotTimer--; } } @@ -228,7 +252,7 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { case 3: targetActor = get_actor(parakarry->targetActorID); clampedAngleDiff = get_clamped_angle_diff(state->angle, state->bounceDivisor); - tempAngle = fabsf(clampedAngleDiff) / state->unk_24 * targetActor->scalingFactor; + aimAngle = fabsf(clampedAngleDiff) / state->unk_24 * targetActor->scalingFactor; if (state->velocity >= 0.0f) { if (clampedAngleDiff < 0.0f) { @@ -243,7 +267,7 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { } battleStatus->unk_84 = 0; - if (tempAngle < 7.0f) { + if (aimAngle < 7.0f) { battleStatus->unk_84 = 1; battleStatus->unk_86 = 1; func_80269160(); @@ -251,70 +275,70 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { battleStatus->unk_84 = -1; } - for (i = 0; i < ARRAY_COUNT(D_8023BD78); i++) { - hud_element_free(D_8023BD78[i]); + for (i = 0; i < ARRAY_COUNT(hudMarkers); i++) { + hud_element_free(hudMarkers[i]); } - for (i = 0; i < ARRAY_COUNT(D_8023BD98); i++) { - hud_element_free(D_8023BD98[i]); + for (i = 0; i < ARRAY_COUNT(hudShimmers); i++) { + hud_element_free(hudShimmers[i]); } - hud_element_free(D_8023BDB4); - hud_element_free(D_8023BDC0); + hud_element_free(hudTarget); + hud_element_free(hudStick); btl_set_popup_duration(0); return ApiStatus_DONE2; } if (evt->functionTemp[0] < 3) { if (evt->functionTemp[0] > 0) { - hudID = D_8023BDC0; + hudID = hudStick; targetActor = get_actor(parakarry->targetActorID); clampedAngleDiff = get_clamped_angle_diff(state->angle, state->bounceDivisor); - tempAngle = fabsf(clampedAngleDiff) / state->unk_24 * targetActor->scalingFactor; + aimAngle = fabsf(clampedAngleDiff) / state->unk_24 * targetActor->scalingFactor; - if (tempAngle < 7.0f) { + if (aimAngle < 7.0f) { hud_element_set_script(hudID, &HES_StickNeutral); } else { hud_element_set_script(hudID, &HES_StickHoldLeft); } - D_8023BDC4 += 20; - if (D_8023BDC4 >= 51) { - D_8023BDC4 = 50; + hudStickPosX += 20; + if (hudStickPosX >= 51) { + hudStickPosX = 50; } - hud_element_set_render_pos(hudID, D_8023BDC4, D_8023BDC8); + hud_element_set_render_pos(hudID, hudStickPosX, hudStickPosY); } } get_screen_coords(gCurrentCameraID, state->goalPos.x, state->goalPos.y, state->goalPos.z, &screenX, &screenY, &screenZ); - hudID = D_8023BDB4; + hudID = hudTarget; hud_element_set_render_pos(hudID, screenX, screenY); - hud_element_set_transform_rotation(hudID, 0.0f, 0.0f, D_8023BDB8); - D_8023BDB8 -= 10; - D_8023BDB8 = clamp_angle(D_8023BDB8); + hud_element_set_transform_rotation(hudID, 0.0f, 0.0f, hudTargetRotation); + hudTargetRotation -= 10; + hudTargetRotation = clamp_angle(hudTargetRotation); if (evt->functionTemp[0] >= 2) { if (evt->functionTemp[0] < 3) { - tempAngle = clamp_angle(state->angle); - tempX = state->currentPos.x; - tempY = state->currentPos.y; - tempZ = state->currentPos.z; - add_vec2D_polar(&tempX, &tempY, state->distance, tempAngle); + aimAngle = clamp_angle(state->angle); + aimX = state->currentPos.x; + aimY = state->currentPos.y; + aimZ = state->currentPos.z; + add_vec2D_polar(&aimX, &aimY, state->distance, aimAngle); z = state->currentPos.z; x = state->currentPos.x; y = state->currentPos.y; - for (i = 0; i < ARRAY_COUNT(D_8023BD98); i++) { - x += (tempX - state->currentPos.x) / 6.0f; - y += (tempY - state->currentPos.y) / 6.0f; - z += (tempZ - state->currentPos.z) / 6.0f; + for (i = 0; i < ARRAY_COUNT(hudShimmers); i++) { + x += (aimX - state->currentPos.x) / 6.0f; + y += (aimY - state->currentPos.y) / 6.0f; + z += (aimZ - state->currentPos.z) / 6.0f; get_screen_coords(gCurrentCameraID, x, y, z, &screenX, &screenY, &screenZ); - hud_element_set_render_pos(D_8023BD78[i], screenX, screenY); - hudID = D_8023BD98[i]; + hud_element_set_render_pos(hudMarkers[i], screenX, screenY); + hudID = hudShimmers[i]; hud_element_set_render_pos(hudID, screenX, screenY); } - hud_element_set_render_pos(D_8023BD78[i], screenX, screenY); + hud_element_set_render_pos(hudMarkers[i], screenX, screenY); btl_set_popup_duration(99); } } @@ -322,33 +346,33 @@ ApiStatus func_80238000_6FFD80(Evt* evt, s32 isInitialCall) { return ApiStatus_BLOCK; } -ApiStatus func_80238C88_700A08(Evt* script, s32 isInitialCall) { +ApiStatus N(GetShellShotDamage)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; - s32 var0 = 0; + s32 damage = 0; switch (battleStatus->partnerActor->actorBlueprint->level) { case 0: - var0 = 5; + damage = 5; break; case 1: - var0 = 6; + damage = 6; break; case 2: - var0 = 7; + damage = 7; break; } - script->varTable[15] = var0; + script->varTable[15] = damage; return ApiStatus_DONE2; } -ApiStatus func_80238CE0_700A60(Evt* script, s32 isInitialCall) { +ApiStatus N(AirLiftChance)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; Actor* targetActor = get_actor(partnerActor->targetActorID); ActorPart* targetActorPart = get_actor_part(targetActor, partnerActor->targetPartIndex); s32 airLiftChance = targetActor->actorBlueprint->airLiftChance; - s32 hpPercentLost = 100 - (targetActor->currentHP * 100) / targetActor->maxHP; + s32 hpPercentLost = 100 - targetActor->currentHP * 100 / targetActor->maxHP; if (targetActor->transparentStatus == STATUS_TRANSPARENT) { airLiftChance = 0; @@ -359,14 +383,14 @@ ApiStatus func_80238CE0_700A60(Evt* script, s32 isInitialCall) { } if (airLiftChance > 0) { - airLiftChance = airLiftChance + ((airLiftChance * hpPercentLost) / 100); + airLiftChance += airLiftChance * hpPercentLost / 100; if (airLiftChance > 100) { airLiftChance = 100; } if (targetActor->debuff != 0) { - airLiftChance = (airLiftChance * 150) / 100; + airLiftChance = airLiftChance * 150 / 100; if (airLiftChance > 150) { airLiftChance = 150; @@ -379,7 +403,7 @@ ApiStatus func_80238CE0_700A60(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_80238E24_700BA4(Evt* evt, s32 isInitialCall) { +ApiStatus N(CarryAway)(Evt* evt, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* parakarry = battleStatus->partnerActor; ActorState* actorState = ¶karry->state; @@ -409,7 +433,7 @@ ApiStatus func_80238E24_700BA4(Evt* evt, s32 isInitialCall) { parakarry->state.currentPos.x += parakarry->state.speed; *animationRatePtr = 1.0f; y = parakarry->state.currentPos.y; - parakarry->state.currentPos.y = y + (sin_rad(2.0f * sin_rad(DEG_TO_RAD(parakarry->state.moveTime)) * PI_S) * D_8023BD60_703AE0 + 0.5); + parakarry->state.currentPos.y = y + (sin_rad(2.0f * sin_rad(DEG_TO_RAD(parakarry->state.moveTime)) * PI_S) * 1.4 + 0.5); parakarry->state.moveTime += 6; parakarry->state.moveTime = clamp_angle(parakarry->state.moveTime); @@ -434,7 +458,7 @@ ApiStatus func_80238E24_700BA4(Evt* evt, s32 isInitialCall) { return ApiStatus_BLOCK; } -ApiStatus func_802390B4_700E34(Evt* script, s32 isInitialCall) { +ApiStatus N(FlyAround)(Evt* script, s32 isInitialCall) { Actor* partner = gBattleStatus.partnerActor; ActorState* state = &partner->state; @@ -454,14 +478,14 @@ ApiStatus func_802390B4_700E34(Evt* script, s32 isInitialCall) { script->functionTemp[1] = 0; script->functionTemp[2] = 0; script->functionTemp[3] = 0; - D_8023BD70 = fx_65(0, state->currentPos.x, state->currentPos.y, state->currentPos.z, 1.0f, 0); + airRaidEffect = fx_65(0, state->currentPos.x, state->currentPos.y, state->currentPos.z, 1.0f, 0); script->functionTemp[0] = 1; break; case 1: add_vec2D_polar(&state->currentPos.x, &state->currentPos.y, state->speed, state->angle); - D_8023BD70->data.unk_65->pos.x = state->currentPos.x; - D_8023BD70->data.unk_65->pos.y = state->currentPos.y; - D_8023BD70->data.unk_65->pos.z = state->currentPos.z; + airRaidEffect->data.unk_65->pos.x = state->currentPos.x; + airRaidEffect->data.unk_65->pos.y = state->currentPos.y; + airRaidEffect->data.unk_65->pos.z = state->currentPos.z; if (state->currentPos.x < -190.0f) { if (script->functionTemp[1] != 0) { script->functionTemp[0] = 2; @@ -563,7 +587,7 @@ ApiStatus func_802390B4_700E34(Evt* script, s32 isInitialCall) { case 2: state->moveTime = 5; script->functionTemp[0] = 3; - D_8023BD70->flags |= 0x10; + airRaidEffect->flags |= 0x10; // fallthrough case 3: add_vec2D_polar(&state->currentPos.x, &state->currentPos.y, state->speed, state->angle); @@ -581,8 +605,693 @@ ApiStatus func_802390B4_700E34(Evt* script, s32 isInitialCall) { } } -ApiStatus func_802397C8_701548(Evt* script, s32 isInitialCall) { +ApiStatus N(GetAirRaidDamage)(Evt* script, s32 isInitialCall) { script->varTable[15] = ((script->varTable[0] * 100) / 2499) + 2; return ApiStatus_DONE2; } + +s32 N(idleAnimations)[] = { + STATUS_NORMAL, ANIM_BattleParakarry_Walk, + STATUS_STONE, ANIM_BattleParakarry_Still, + STATUS_SLEEP, ANIM_BattleParakarry_Pray, + STATUS_POISON, ANIM_BattleParakarry_Still, + STATUS_STOP, ANIM_BattleParakarry_Still, + STATUS_DAZE, ANIM_BattleParakarry_Injured, + STATUS_TURN_DONE, ANIM_BattleParakarry_Still, + STATUS_END, +}; + +s32 N(defenseTable)[] = { + ELEMENT_NORMAL, 0, + ELEMENT_END, +}; + +s32 N(statusTable)[] = { + STATUS_NORMAL, 100, + STATUS_DEFAULT, 100, + STATUS_SLEEP, 100, + STATUS_POISON, 100, + STATUS_FROZEN, 100, + STATUS_DIZZY, 100, + STATUS_FEAR, 100, + STATUS_STATIC, 100, + STATUS_PARALYZE, 100, + STATUS_SHRINK, 100, + STATUS_STOP, 100, + STATUS_DEFAULT_TURN_MOD, 0, + STATUS_SLEEP_TURN_MOD, 0, + STATUS_POISON_TURN_MOD, 0, + STATUS_FROZEN_TURN_MOD, 0, + STATUS_DIZZY_TURN_MOD, 0, + STATUS_FEAR_TURN_MOD, 0, + STATUS_STATIC_TURN_MOD, 0, + STATUS_PARALYZE_TURN_MOD, 0, + STATUS_SHRINK_TURN_MOD, 0, + STATUS_STOP_TURN_MOD, 0, + STATUS_END, +}; + +ActorPartBlueprint N(parts)[] = { + { + .flags = 0, + .index = 1, + .posOffset = { 0, 0, 0 }, + .targetOffset = { 11, 28 }, + .opacity = 255, + .idleAnimations = N(idleAnimations), + .defenseTable = N(defenseTable), + .eventFlags = ACTOR_EVENT_FLAG_GROUNDABLE, + .elementImmunityFlags = 0, + .unk_1C = 0, + .unk_1D = 0, + }, +}; + +ActorBlueprint NAMESPACE = { + .flags = ACTOR_FLAG_FLYING, + .type = ACTOR_TYPE_PARAKARRY, + .level = 0, + .maxHP = 99, + .partCount = ARRAY_COUNT(N(parts)), + .partsData = N(parts), + .script = &N(init), + .statusTable = N(statusTable), + .escapeChance = 0, + .airLiftChance = 0, + .hurricaneChance = 0, + .spookChance = 0, + .upAndAwayChance = 0, + .spinSmashReq = 4, + .powerBounceChance = 80, + .coinReward = 0, + .size = { 38, 38 }, + .hpBarOffset = { 0, 0 }, + .statusIconOffset = { -10, 30 }, + .statusMessageOffset = { 10, 30 }, +}; + +EvtScript N(init) = { + EVT_CALL(BindTakeTurn, ACTOR_PARTNER, EVT_PTR(N(takeTurn))) + EVT_CALL(BindIdle, ACTOR_PARTNER, EVT_PTR(N(idle))) + EVT_CALL(BindHandleEvent, ACTOR_PARTNER, EVT_PTR(N(handleEvent))) + EVT_CALL(BindNextTurn, ACTOR_PARTNER, EVT_PTR(N(nextTurn))) + EVT_RETURN + EVT_END +}; + +EvtScript N(idle) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(handleEvent) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(CloseActionCommandInfo) + EVT_CALL(GetLastEvent, ACTOR_PARTNER, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(EVENT_HIT_COMBO) + EVT_CASE_OR_EQ(EVENT_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_HurtStill) + EVT_SET_CONST(LVar2, ANIM_BattleParakarry_HurtStill) + EVT_EXEC_WAIT(D_802977BC) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_HurtStill) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(EVENT_UNKNOWN_TRIGGER) + EVT_CASE_OR_EQ(EVENT_IMMUNE) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_HurtStill) + EVT_EXEC_WAIT(DoPartnerBlock) + EVT_END_CASE_GROUP + EVT_CASE_EQ(EVENT_SPIKE_CONTACT) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_HurtStill) + EVT_SET(LVar2, 22) + EVT_EXEC_WAIT(DoPartnerSpikeContact) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_HurtStill) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_BURN_CONTACT) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_BurnHurt) + EVT_SET(LVar2, 22) + EVT_SET_CONST(LVar3, ANIM_BattleParakarry_BurnStill) + EVT_EXEC_WAIT(DoPartnerBurnContact) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_HurtStill) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_OR_EQ(EVENT_BURN_HIT) + EVT_CASE_OR_EQ(EVENT_15) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_BurnHurt) + EVT_SET_CONST(LVar2, ANIM_BattleParakarry_BurnStill) + EVT_EXEC_WAIT(DoPartnerBurn) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_HurtStill) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_END_CASE_GROUP + EVT_CASE_EQ(EVENT_SHOCK_HIT) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_HurtStill) + EVT_SET(LVar2, 22) + EVT_EXEC_WAIT(D_80295744) + EVT_CASE_EQ(EVENT_33) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_HurtStill) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_RECOVER_PARTNER) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_Walk) + EVT_SET_CONST(LVar2, ANIM_BattleParakarry_Run) + EVT_SET(LVar3, 30) + EVT_EXEC_WAIT(DoPartnerRecover) + EVT_CASE_OR_EQ(EVENT_18) + EVT_CASE_OR_EQ(EVENT_BLOCK) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_OrientShell) + EVT_EXEC_WAIT(DoPartnerBlock) + EVT_WAIT(10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_ExitShell) + EVT_END_CASE_GROUP + EVT_CASE_DEFAULT + EVT_END_SWITCH + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(takeTurn) = { + EVT_CALL(GetBattlePhase, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(PHASE_FIRST_STRIKE) + EVT_EXEC_WAIT(N(firstStrike)) + EVT_CASE_EQ(PHASE_EXECUTE_ACTION) + EVT_EXEC_WAIT(N(executeAction)) + EVT_CASE_EQ(PHASE_5) + EVT_EXEC_WAIT(N(celebrate)) + EVT_CASE_EQ(PHASE_RUN_AWAY_START) + EVT_EXEC_WAIT(N(runAway)) + EVT_CASE_EQ(PHASE_RUN_AWAY_FAIL) + EVT_EXEC_WAIT(N(runAwayFail)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(celebrate) = { + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_Celebrate) + EVT_SET_CONST(LVar2, ANIM_BattleParakarry_Walk) + EVT_SET_CONST(LVar3, ANIM_BattleParakarry_Idle) + EVT_EXEC_WAIT(D_80294720) + EVT_RETURN + EVT_END +}; + +EvtScript N(executeAction) = { + EVT_CALL(func_802694A4, 1) + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(8) + EVT_CALL(LoadStarPowerScript) + EVT_EXEC_WAIT(LVar0) + EVT_RETURN + EVT_END_SWITCH + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(MOVE_SKY_DIVE1) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_SET(LVarE, 1) + EVT_SET(LVarF, 2) + EVT_EXEC_WAIT(N(skyDive)) + EVT_CASE_EQ(MOVE_SKY_DIVE2) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_SET(LVarE, 2) + EVT_SET(LVarF, 3) + EVT_EXEC_WAIT(N(skyDive)) + EVT_CASE_EQ(MOVE_SKY_DIVE3) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_SET(LVarE, 4) + EVT_SET(LVarF, 5) + EVT_EXEC_WAIT(N(skyDive)) + EVT_CASE_EQ(MOVE_SHELL_SHOT) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_EXEC_WAIT(N(shellShot)) + EVT_CASE_EQ(MOVE_AIR_LIFT) + EVT_EXEC_WAIT(N(airLift)) + EVT_CASE_EQ(MOVE_AIR_RAID) + EVT_EXEC_WAIT(N(airRaid)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(firstStrike) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(runAway) = { + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleParakarry_Run) + EVT_EXEC_WAIT(DoPartnerRunAway) + EVT_RETURN + EVT_END +}; + +EvtScript N(runAwayFail) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Walk) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(nextTurn) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(returnHome2) = { + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, LVarA) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.4)) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -50, 0, 0) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 15, FALSE, FALSE, FALSE) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Still) + EVT_CHILD_THREAD + EVT_WAIT(4) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_END_CHILD_THREAD + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -30, 0, 0) + EVT_CALL(JumpWithBounce, ACTOR_PARTNER, 5, EVT_FLOAT(4.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Idle) + EVT_WAIT(2) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(8.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 0, -5, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Walk) + EVT_RETURN + EVT_END +}; + +EvtScript N(returnHome) = { + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, LVarA) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.0)) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -30, 0, 0) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 15, FALSE, FALSE, FALSE) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Still) + EVT_CHILD_THREAD + EVT_WAIT(4) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_END_CHILD_THREAD + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -20, 0, 0) + EVT_CALL(JumpWithBounce, ACTOR_PARTNER, 5, EVT_FLOAT(4.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Idle) + EVT_WAIT(2) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(8.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 0, -5, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Walk) + EVT_RETURN + EVT_END +}; + +s32 N(actionCommandTable)[] = { 7, 6, 5, 4, 3, 2, 1, 0, }; + +EvtScript N(skyDive) = { + EVT_CALL(EnableIdleScript, ACTOR_PARTNER, 0) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(LoadActionCommand, ACTION_COMMAND_JUMP) + EVT_CALL(action_command_jump_CreateHudElements) + EVT_CALL(func_8026919C, EVT_PTR(N(actionCommandTable))) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(BattleCamTargetActor, ACTOR_SELF) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -20, 0, 0) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(5.0)) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 0, -10, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Still) + EVT_WAIT(3) + EVT_CALL(func_802A9120_421B10, 32, 3) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_2004) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_FlyFast) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 0, 10, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 5, 0, 0) + EVT_WAIT(2) + EVT_CHILD_THREAD + EVT_WAIT(3) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_PreDive) + EVT_END_CHILD_THREAD + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -26, 25, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, -20, 6) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_2005) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -10, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Dive) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 5, 0, 0) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_CHILD_THREAD + EVT_WAIT(5) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Idle) + EVT_END_CHILD_THREAD + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 40, 10, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 10, -20, 4) + EVT_WAIT(20) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 0) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(8.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 0, -5, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Walk) + EVT_RETURN + EVT_END_IF + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_PostDive) + EVT_WAIT(2) + EVT_CALL(GetActionCommandResult, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_GT(0) + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_CASE_DEFAULT + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4, 0, LVarE, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE) + EVT_END_SWITCH + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_0) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_SET_CONST(LVarA, ANIM_BattleParakarry_Think) + EVT_EXEC_WAIT(N(returnHome)) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) + EVT_SET_CONST(LVarA, ANIM_BattleParakarry_Dive) + EVT_EXEC_WAIT(N(returnHome2)) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_CALL(EnableIdleScript, ACTOR_PARTNER, 1) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(shellShot) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_EnterShell) + EVT_WAIT(15) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_ShellFly) + EVT_CALL(N(ShellShotActionCommand)) + EVT_CALL(StopSound, SOUND_311) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_2006) + EVT_CALL(GetActionResult, LVar0) + EVT_CALL(PartnerTestEnemy, LVarA, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVarA, HIT_RESULT_MISS) + EVT_SET(LVar0, -2) + EVT_END_IF + EVT_SWITCH(LVar0) + EVT_CASE_EQ(1) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(MoveBattleCamOver, 5) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_ShellFlyFastest) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 7, 0, 0) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 0) + EVT_CASE_EQ(-1) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(MoveBattleCamOver, 5) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 50, -50, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_ShellFlyFastest) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 7, 0, 100) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 0) + EVT_CASE_EQ(0) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(MoveBattleCamOver, 5) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 50, 50, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_ShellFlyFastest) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 7, 0, 0) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 0) + EVT_CASE_EQ(-2) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(MoveBattleCamOver, 5) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 40, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_ShellFlyFastest) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 7, 0, 0) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 0) + EVT_END_SWITCH + EVT_CALL(N(GetShellShotDamage)) + EVT_SWITCH(LVar0) + EVT_CASE_GT(0) + EVT_CALL(PartnerDamageEnemy, LVar0, 0, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_110) + EVT_CASE_DEFAULT + EVT_SET(LVar0, HIT_RESULT_QUAKE_IMMUNE) + EVT_END_SWITCH + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_0) + EVT_LABEL(10) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_IF_EQ(LocalFlag(0), 1) + EVT_SET_CONST(LVarA, ANIM_BattleParakarry_HurtStill) + EVT_ELSE + EVT_SET_CONST(LVarA, ANIM_BattleParakarry_Think) + EVT_END_IF + EVT_EXEC_WAIT(N(returnHome)) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) + EVT_SET_CONST(LVarA, ANIM_BattleParakarry_ShellFly) + EVT_EXEC_WAIT(N(returnHome2)) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(airLift) = { + EVT_CALL(InitTargetIterator) + EVT_CALL(N(AirLiftChance)) + EVT_CALL(LoadActionCommand, ACTION_COMMAND_AIR_LIFT) + EVT_CALL(func_802A9000_428A70, LVar0) + EVT_CALL(SetupMashMeter, 1, 100, 0, 0, 0, 0) + EVT_CALL(func_80269344, 0) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(GetDistanceToGoal, ACTOR_PARTNER, LVar0) + EVT_DIV(LVar0, 4) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(SetBattleCamOffsetZ, 8) + EVT_CALL(MoveBattleCamOver, LVar0) + EVT_SUB(LVar0, 12) + EVT_IF_LT(LVar0, 0) + EVT_SET(LVar0, 0) + EVT_END_IF + EVT_CALL(func_80269344, LVar0) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(5.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 0, -4, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Idle) + EVT_WAIT(15) + EVT_CALL(SetBattleCamOffsetZ, 0) + EVT_CALL(AddBattleCamZoom, -160) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_LiftLight) + EVT_CALL(SetAnimationRate, ACTOR_PARTNER, 0, EVT_FLOAT(2.0)) + EVT_WAIT(2) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_CALL(CloseActionCommandInfo) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 20) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 10, -10, 12) + EVT_CALL(SetAnimationRate, ACTOR_PARTNER, 0, EVT_FLOAT(8.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Idle) + EVT_WAIT(10) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(4.0)) + EVT_CALL(SetAnimationRate, ACTOR_PARTNER, 0, EVT_FLOAT(1.0)) + EVT_CALL(SetActorYaw, ACTOR_SELF, 180) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 0, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Walk) + EVT_RETURN + EVT_END_IF + EVT_WAIT(3) + EVT_CALL(PartnerTestEnemy, LVar0, DAMAGE_TYPE_AIR_LIFT, ATTACK_EVENT_FLAG_4, 0, 0, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE) + EVT_CALL(N(AirLiftChance)) + EVT_IF_NE(LVar0, -1) + EVT_CALL(func_802A9184_428BF4, 0, 87, 3, 0) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_CHILD_THREAD + EVT_WAIT(1) + EVT_CALL(GetActionResult, LVar1) + EVT_DIV(LVar1, 10) + EVT_ADD(LVar1, 1) + EVT_LOOP(88) + EVT_CALL(GetActionResult, LVar0) + EVT_SET(LVar2, LVar1) + EVT_MUL(LVar2, 10) + EVT_IF_GT(LVar0, LVar2) + EVT_CALL(SetBattleCamOffsetZ, 0) + EVT_CALL(AddBattleCamZoom, -2) + EVT_CALL(MoveBattleCamOver, 10) + EVT_ADD(LVar1, 1) + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_CHILD_THREAD + EVT_WAIT(90) + EVT_CALL(GetActionSuccessCopy, LVar0) + EVT_ELSE + EVT_CALL(CloseActionCommandInfo) + EVT_SET(LVar0, 0) + EVT_END_IF + EVT_SWITCH(LVar0) + EVT_CASE_EQ(1) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) + EVT_CALL(GetOwnerTarget, LVar0, LVar1) + EVT_CALL(DispatchEvent, LVar0, EVENT_BLOW_AWAY) + EVT_CALL(N(CarryAway), LVar0) + EVT_WAIT(30) + EVT_CALL(GetOwnerTarget, LVar0, LVar1) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_STAR_POINTS_DROPPED, 1) + EVT_CALL(RemoveActor, LVar0) + EVT_CASE_DEFAULT + EVT_CALL(GetOwnerTarget, LVar0, LVar1) + EVT_CALL(DispatchEvent, LVar0, EVENT_AIR_LIFT_FAILED) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 20) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 5, -10, 12) + EVT_CALL(SetAnimationRate, ACTOR_PARTNER, 0, EVT_FLOAT(8.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Idle) + EVT_WAIT(10) + EVT_END_SWITCH + EVT_CALL(PartnerYieldTurn) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(12.0)) + EVT_CALL(SetAnimationRate, ACTOR_PARTNER, 0, EVT_FLOAT(1.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 0, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Walk) + EVT_RETURN + EVT_END +}; + +EvtScript N(airRaid) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_AIR_RAID) + EVT_CALL(func_802A9000_429320) + EVT_CALL(SetupMashMeter, 4, 25, 50, 75, 100, 0) + EVT_CALL(func_80269344, 0) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_14) + EVT_CALL(BattleCamTargetActor, ACTOR_SELF) + EVT_CALL(MoveBattleCamOver, 30) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 70) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 15, -2, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Idle) + EVT_CALL(action_command_air_raid_MashActionCommandInit, 0, 90, 3) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_WAIT(2) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_PreDive) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_SUB(LVar0, 50) + EVT_ADD(LVar1, 30) + EVT_ADD(LVar2, 40) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 10, -10, 10) + EVT_WAIT(2) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CHILD_THREAD + EVT_LOOP(5) + EVT_WAIT(18) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(PlayEffect, EFFECT_LENS_FLARE, 0, LVar0, LVar1, LVar2, 10, 0, 0, 0, 0, 0, 0, 0, 0) + EVT_END_LOOP + EVT_END_CHILD_THREAD + EVT_CHILD_THREAD + EVT_LOOP(5) + EVT_WAIT(18) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(PlayEffect, EFFECT_SPARKLES, 1, LVar0, LVar1, LVar2, 40, 0, 0, 0, 0, 0, 0, 0, 0) + EVT_END_LOOP + EVT_END_CHILD_THREAD + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_ShellFlyFastest) + EVT_CALL(N(FlyAround)) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 0) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(GetActionResult, LVar0) + EVT_CALL(N(GetAirRaidDamage)) + EVT_CALL(InitTargetIterator) + EVT_LABEL(10) + EVT_CALL(SetGoalToTarget, ACTOR_SELF) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, 6) + EVT_GOTO(11) + EVT_END_IF + EVT_CALL(GetActionCommandResult, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_GT(99) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_110) + EVT_CASE_DEFAULT + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_80, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE) + EVT_END_SWITCH + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_0) + EVT_WAIT(5) + EVT_LABEL(11) + EVT_CALL(ChooseNextTarget, 0, LVar0) + EVT_IF_NE(LVar0, -1) + EVT_GOTO(10) + EVT_END_IF + EVT_CALL(GetActionCommandResult, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_GT(99) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) + EVT_CASE_DEFAULT + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_END_SWITCH + EVT_CHILD_THREAD + EVT_WAIT(10) + EVT_CALL(SetActorPos, ACTOR_PARTNER, -200, 50, 0) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(12.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 0, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleParakarry_Walk) + EVT_END_CHILD_THREAD + EVT_WAIT(20) + EVT_CALL(PartnerYieldTurn) + EVT_WAIT(20) + EVT_RETURN + EVT_END +}; diff --git a/src/battle/partner/sushie.c b/src/battle/partner/sushie.c index 9e44c5071b..1014cfb81a 100644 --- a/src/battle/partner/sushie.c +++ b/src/battle/partner/sushie.c @@ -1,10 +1,32 @@ #include "common.h" #include "effects.h" #include "battle/battle.h" +#include "script_api/battle.h" +#include "battle/action_cmd/hammer.h" +#include "battle/action_cmd/squirt.h" +#include "battle/action_cmd/water_block.h" +#include "battle/action_cmd/tidal_wave.h" +#include "sprite/npc/BattleSushie.h" -extern EffectInstance* D_8023C070; +#define NAMESPACE battle_partner_sushie -ApiStatus func_80238000_707CA0(Evt* script, s32 isInitialCall) { +extern EvtScript N(handleEvent); +extern EvtScript N(idle); +extern EvtScript N(nextTurn); +extern EvtScript N(takeTurn); +extern EvtScript N(init); +extern EvtScript N(executeAction); +extern EvtScript N(celebrate); +extern EvtScript N(runAway); +extern EvtScript N(runAwayFail); +extern EvtScript N(bellyFlop); +extern EvtScript N(squirt); +extern EvtScript N(waterBlock); +extern EvtScript N(tidalWave); + +static EffectInstance* sEffect; + +ApiStatus N(SetSquirtAngle)(Evt* script, s32 isInitialCall) { ActorPart* targetPart; Actor* partner = gBattleStatus.partnerActor; @@ -33,60 +55,57 @@ ApiStatus func_80238000_707CA0(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_80238114_707DB4(Evt* script, s32 isInitialCall) { +ApiStatus N(GetSquirtDamage)(Evt* script, s32 isInitialCall) { Actor* partner = gBattleStatus.partnerActor; - s32 vt0 = script->varTable[0]; - s32 vt15 = 0; + s32 actionCmdResult = script->varTable[0]; + s32 damage = 0; script->varTable[0] = 0; switch (partner->actorBlueprint->level) { case 0: - vt15 = 3; - if (vt0 > 40) { - vt15 = 4; - if (vt0 > 75) { - vt15 = 5; - script->varTable[0] = 1; - } + if (actionCmdResult <= 40) { + damage = 3; + } else if (actionCmdResult <= 75) { + damage = 4; + } else { + damage = 5; + script->varTable[0] = 1; } break; case 1: - vt15 = 3; - if (vt0 > 35) { - vt15 = 4; - if (vt0 > 60) { - vt15 = 5; - if (vt0 > 80) { - vt15 = 6; - script->varTable[0] = 1; - } - } + if (actionCmdResult <= 35) { + damage = 3; + } else if (actionCmdResult <= 60) { + damage = 4; + } else if (actionCmdResult <= 80) { + damage = 5; + } else { + damage = 6; + script->varTable[0] = 1; } break; case 2: - vt15 = 3; - if (vt0 > 20) { - vt15 = 4; - if (vt0 > 30) { - vt15 = 5; - if (vt0 > 60) { - vt15 = 6; - if (vt0 > 80) { - vt15 = 7; - script->varTable[0] = 1; - } - } - } + if (actionCmdResult <= 20) { + damage = 3; + } else if (actionCmdResult <= 30) { + damage = 4; + } else if (actionCmdResult <= 60) { + damage = 5; + } else if (actionCmdResult <= 80) { + damage = 6; + } else { + damage = 7; + script->varTable[0] = 1; } break; } - script->varTable[15] = vt15; + script->varTable[15] = damage; return ApiStatus_DONE2; } -ApiStatus func_802381EC_707E8C(Evt* script, s32 isInitialCall) { +ApiStatus N(InflateSushie)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; f32 xScale; @@ -116,11 +135,11 @@ ApiStatus func_802381EC_707E8C(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_802382A4_707F44(Evt* script, s32 isInitialCall) { +ApiStatus N(GetSquirtTargetPos)(Evt* script, s32 isInitialCall) { f32 posX = script->varTable[0]; f32 posY = script->varTable[1]; - add_vec2D_polar(&posX, &posY, 300, atan2(posX, posY, script->varTable[3], script->varTable[4])); + add_vec2D_polar(&posX, &posY, 300.0f, atan2(posX, posY, script->varTable[3], script->varTable[4])); script->varTable[3] = posX; script->varTable[4] = posY; @@ -128,7 +147,7 @@ ApiStatus func_802382A4_707F44(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_80238328_707FC8(Evt* script, s32 isInitialCall) { +ApiStatus N(ApplyWaterBlock)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; s32 var = script->varTable[0]; @@ -149,17 +168,17 @@ ApiStatus func_80238328_707FC8(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_80238388_708028(Evt* script, s32 isInitialCall) { +ApiStatus N(PlaySquirtFX)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; Actor* playerActor = battleStatus->playerActor; - D_8023C070 = fx_squirt(1, partnerActor->currentPos.x - 5.5, partnerActor->currentPos.y + 15.5, partnerActor->currentPos.z + 5, playerActor->currentPos.x, playerActor->currentPos.y, playerActor->currentPos.z, (rand_int(10) * 0.1) + 1, 30); + sEffect = fx_squirt(1, partnerActor->currentPos.x - 5.5, partnerActor->currentPos.y + 15.5, partnerActor->currentPos.z + 5, playerActor->currentPos.x, playerActor->currentPos.y, playerActor->currentPos.z, (rand_int(10) * 0.1) + 1, 30); return ApiStatus_DONE2; } -ApiStatus func_80238480_708120(Evt* script, s32 isInitialCall) { +ApiStatus N(PlayWaterBlockFX)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Bytecode* args = script->ptrReadPos; f32 posX = evt_get_float_variable(script, *args++); @@ -176,7 +195,7 @@ ApiStatus func_80238480_708120(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_80238540_7081E0(Evt* script, s32 isInitialCall) { +ApiStatus N(ProcessTidalWave)(Evt* script, s32 isInitialCall) { Actor* partner = gBattleStatus.partnerActor; ActorState* state = &partner->state; f32 x, y; @@ -196,10 +215,10 @@ ApiStatus func_80238540_7081E0(Evt* script, s32 isInitialCall) { state->speed = 32.0f; script->functionTemp[1] = 0; script->functionTemp[2] = 0; - D_8023C070 = fx_water_fountain(1, state->currentPos.x, state->currentPos.y, state->currentPos.z, 1.0f, 0); - D_8023C070->data.waterFountain->unk_38 = state->angle; - D_8023C070->data.waterFountain->unk_3C = partner->scale.x; - D_8023C070->data.waterFountain->unk_40 = partner->scale.x; + sEffect = fx_water_fountain(1, state->currentPos.x, state->currentPos.y, state->currentPos.z, 1.0f, 0); + sEffect->data.waterFountain->unk_38 = state->angle; + sEffect->data.waterFountain->unk_3C = partner->scale.x; + sEffect->data.waterFountain->unk_40 = partner->scale.x; script->functionTemp[0] = 1; break; case 1: @@ -302,12 +321,12 @@ ApiStatus func_80238540_7081E0(Evt* script, s32 isInitialCall) { x = 0.0f; y = 0.0f; add_vec2D_polar(&x, &y, partner->scale.x * -15.0f, state->angle); - D_8023C070->data.waterFountain->pos.x = state->currentPos.x + x; - D_8023C070->data.waterFountain->pos.y = state->currentPos.y + y; - D_8023C070->data.waterFountain->pos.z = state->currentPos.z + 5.0f; - D_8023C070->data.waterFountain->unk_38 = state->angle; - D_8023C070->data.waterFountain->unk_3C = partner->scale.x; - D_8023C070->data.waterFountain->unk_40 = partner->scale.x; + sEffect->data.waterFountain->pos.x = state->currentPos.x + x; + sEffect->data.waterFountain->pos.y = state->currentPos.y + y; + sEffect->data.waterFountain->pos.z = state->currentPos.z + 5.0f; + sEffect->data.waterFountain->unk_38 = state->angle; + sEffect->data.waterFountain->unk_3C = partner->scale.x; + sEffect->data.waterFountain->unk_40 = partner->scale.x; if (state->moveTime == 0x46) { sfx_play_sound_at_position(SOUND_29D, 0, 0.0f, 0.0f, 0.0f); fx_underwater(0, -50.0f, 20.0f, 0.0f, 1.0f, 120); @@ -327,15 +346,15 @@ ApiStatus func_80238540_7081E0(Evt* script, s32 isInitialCall) { script->functionTemp[0] = 3; case 3: add_vec2D_polar(&state->currentPos.x, &state->currentPos.y, state->speed, state->angle); - D_8023C070->data.waterFountain->pos.x = state->currentPos.x; - D_8023C070->data.waterFountain->pos.y = state->currentPos.y; - D_8023C070->data.waterFountain->pos.z = state->currentPos.z; - D_8023C070->data.waterFountain->unk_38 = state->angle; - D_8023C070->data.waterFountain->unk_3C = partner->scale.x; - D_8023C070->data.waterFountain->unk_40 = partner->scale.x; + sEffect->data.waterFountain->pos.x = state->currentPos.x; + sEffect->data.waterFountain->pos.y = state->currentPos.y; + sEffect->data.waterFountain->pos.z = state->currentPos.z; + sEffect->data.waterFountain->unk_38 = state->angle; + sEffect->data.waterFountain->unk_3C = partner->scale.x; + sEffect->data.waterFountain->unk_40 = partner->scale.x; if (state->moveTime == 0) { partner->rotation.z = 0.0f; - D_8023C070->flags |= ACTOR_FLAG_10; + sEffect->flags |= ACTOR_FLAG_10; return ApiStatus_DONE2; } state->moveTime--; @@ -349,10 +368,10 @@ ApiStatus func_80238540_7081E0(Evt* script, s32 isInitialCall) { return ApiStatus_BLOCK; } -ApiStatus func_80238E30_708AD0(Evt* script, s32 isInitialCall) { +ApiStatus N(SetScaleTidalWaveCharge)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; - f32 var = (((f64) script->varTable[0] * 3) / 100) + 1; + f32 var = script->varTable[0] * 3.0 / 100.0 + 1.0; f32 xScale = partnerActor->scale.x; f32 yScale = partnerActor->scale.y; f32 zScale = partnerActor->scale.z; @@ -363,3 +382,854 @@ ApiStatus func_80238E30_708AD0(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } + +s32 N(idleAnimations)[] = { + STATUS_NORMAL, ANIM_BattleSushie_Walk, + STATUS_STONE, ANIM_BattleSushie_Still, + STATUS_SLEEP, ANIM_BattleSushie_Pray, + STATUS_POISON, ANIM_BattleSushie_Still, + STATUS_STOP, ANIM_BattleSushie_Still, + STATUS_DAZE, ANIM_BattleSushie_Injured, + STATUS_TURN_DONE, ANIM_BattleSushie_Still, + STATUS_END, +}; + +s32 N(defenseTable)[] = { + ELEMENT_NORMAL, 0, + ELEMENT_END, +}; + +s32 N(statusTable)[] = { + STATUS_NORMAL, 100, + STATUS_DEFAULT, 100, + STATUS_SLEEP, 100, + STATUS_POISON, 100, + STATUS_FROZEN, 100, + STATUS_DIZZY, 100, + STATUS_FEAR, 100, + STATUS_STATIC, 100, + STATUS_PARALYZE, 100, + STATUS_SHRINK, 100, + STATUS_STOP, 100, + STATUS_DEFAULT_TURN_MOD, 0, + STATUS_SLEEP_TURN_MOD, 0, + STATUS_POISON_TURN_MOD, 0, + STATUS_FROZEN_TURN_MOD, 0, + STATUS_DIZZY_TURN_MOD, 0, + STATUS_FEAR_TURN_MOD, 0, + STATUS_STATIC_TURN_MOD, 0, + STATUS_PARALYZE_TURN_MOD, 0, + STATUS_SHRINK_TURN_MOD, 0, + STATUS_STOP_TURN_MOD, 0, + STATUS_END, +}; + +ActorPartBlueprint N(parts)[] = { + { + .flags = 0, + .index = 1, + .posOffset = { 0, 0, 0 }, + .targetOffset = { 12, 17 }, + .opacity = 255, + .idleAnimations = N(idleAnimations), + .defenseTable = N(defenseTable), + .eventFlags = 0, + .elementImmunityFlags = 0, + .unk_1C = 0, + .unk_1D = 0, + }, +}; + +ActorBlueprint NAMESPACE = { + .flags = 0, + .type = ACTOR_TYPE_SUSHIE, + .level = 0, + .maxHP = 99, + .partCount = ARRAY_COUNT(N(parts)), + .partsData = N(parts), + .script = &N(init), + .statusTable = N(statusTable), + .escapeChance = 0, + .airLiftChance = 0, + .hurricaneChance = 0, + .spookChance = 0, + .upAndAwayChance = 0, + .spinSmashReq = 4, + .powerBounceChance = 80, + .coinReward = 0, + .size = { 37, 26 }, + .hpBarOffset = { 0, 0 }, + .statusIconOffset = { -10, 20 }, + .statusMessageOffset = { 10, 20 }, +}; + +EvtScript N(init) = { + EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn))) + EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle))) + EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent))) + EVT_CALL(BindNextTurn, ACTOR_SELF, EVT_PTR(N(nextTurn))) + EVT_RETURN + EVT_END +}; + +EvtScript N(idle) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(handleEvent) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(CloseActionCommandInfo) + EVT_CALL(GetLastEvent, ACTOR_PARTNER, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(EVENT_HIT_COMBO) + EVT_CASE_OR_EQ(EVENT_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Hurt) + EVT_SET_CONST(LVar2, ANIM_BattleSushie_Hurt) + EVT_EXEC_WAIT(D_802977BC) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(EVENT_UNKNOWN_TRIGGER) + EVT_CASE_OR_EQ(EVENT_IMMUNE) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Hurt) + EVT_EXEC_WAIT(DoPartnerBlock) + EVT_END_CASE_GROUP + EVT_CASE_EQ(EVENT_SPIKE_CONTACT) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Hurt) + EVT_SET(LVar2, 20) + EVT_EXEC_WAIT(DoPartnerSpikeContact) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_BURN_CONTACT) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_BurnHurt) + EVT_SET(LVar2, 20) + EVT_SET_CONST(LVar3, ANIM_BattleSushie_BurnStill) + EVT_EXEC_WAIT(DoPartnerBurnContact) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_BURN_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_BurnHurt) + EVT_SET_CONST(LVar2, ANIM_BattleSushie_BurnStill) + EVT_EXEC_WAIT(DoPartnerBurn) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_SHOCK_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Hurt) + EVT_SET(LVar2, 20) + EVT_EXEC_WAIT(D_80295744) + EVT_CASE_EQ(EVENT_33) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_RECOVER_PARTNER) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Idle) + EVT_SET_CONST(LVar2, ANIM_BattleSushie_Run) + EVT_SET(LVar3, 0) + EVT_EXEC_WAIT(DoPartnerRecover) + EVT_CASE_OR_EQ(EVENT_18) + EVT_CASE_OR_EQ(EVENT_BLOCK) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Block) + EVT_EXEC_WAIT(DoPartnerBlock) + EVT_WAIT(10) + EVT_END_CASE_GROUP + EVT_CASE_DEFAULT + EVT_END_SWITCH + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(takeTurn) = { + EVT_CALL(GetBattlePhase, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(PHASE_EXECUTE_ACTION) + EVT_EXEC_WAIT(N(executeAction)) + EVT_CASE_EQ(PHASE_5) + EVT_EXEC_WAIT(N(celebrate)) + EVT_CASE_EQ(PHASE_RUN_AWAY_START) + EVT_EXEC_WAIT(N(runAway)) + EVT_CASE_EQ(PHASE_RUN_AWAY_FAIL) + EVT_EXEC_WAIT(N(runAwayFail)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(celebrate) = { + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Celebrate) + EVT_WAIT(36) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Idle) + EVT_RETURN + EVT_END +}; + +EvtScript N(runAway) = { + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleSushie_Run) + EVT_EXEC_WAIT(DoPartnerRunAway) + EVT_RETURN + EVT_END +}; + +EvtScript N(runAwayFail) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Run) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Idle) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(nextTurn) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(executeAction) = { + EVT_CALL(func_802694A4, 1) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(8) + EVT_CALL(LoadStarPowerScript) + EVT_EXEC_WAIT(LVar0) + EVT_RETURN + EVT_END_SWITCH + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(MOVE_BELLY_FLOP1) + EVT_EXEC_WAIT(N(bellyFlop)) + EVT_CASE_EQ(MOVE_BELLY_FLOP2) + EVT_EXEC_WAIT(N(bellyFlop)) + EVT_CASE_EQ(MOVE_BELLY_FLOP3) + EVT_EXEC_WAIT(N(bellyFlop)) + EVT_CASE_EQ(MOVE_SQUIRT) + EVT_EXEC_WAIT(N(squirt)) + EVT_CASE_EQ(MOVE_WATER_BLOCK) + EVT_EXEC_WAIT(N(waterBlock)) + EVT_CASE_EQ(MOVE_TIDAL_WAVE) + EVT_EXEC_WAIT(N(tidalWave)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(returnHome2) = { + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Fall) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_SUB(LVar0, 60) + EVT_SET(LVar1, 0) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.4)) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 20, FALSE, TRUE, FALSE) + EVT_SUB(LVar0, 30) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 8, FALSE, TRUE, FALSE) + EVT_SUB(LVar0, 20) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 6, FALSE, TRUE, FALSE) + EVT_SUB(LVar0, 10) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 4, FALSE, TRUE, FALSE) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Idle) + EVT_WAIT(15) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Run) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Idle) + EVT_RETURN + EVT_END +}; + +EvtScript N(returnHome) = { + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Fall) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_SUB(LVar0, 15) + EVT_SET(LVar1, 0) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(0.4)) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 8, FALSE, TRUE, FALSE) + EVT_SUB(LVar0, 5) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 4, FALSE, TRUE, FALSE) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Idle) + EVT_WAIT(15) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Run) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Idle) + EVT_RETURN + EVT_END +}; + +EvtScript N(restoreFromSquirt2) = { + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Idle) + EVT_RETURN + EVT_END +}; + +EvtScript N(restoreFromSquirt) = { + EVT_CALL(PartnerYieldTurn) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Idle) + EVT_RETURN + EVT_END +}; + +EvtScript N(runToTarget) = { + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 40) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(GetGoalPos, ACTOR_SELF, LVar0, LVar1, LVar2) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(4.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Run) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Idle) + EVT_RETURN + EVT_END +}; + +EvtScript N(getJumpTime) = { + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVarB, LVarC, LVarD) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVarC, LVarD, LVarE) + EVT_IF_GT(LVarB, LVarC) + EVT_SUB(LVarB, LVarC) + EVT_ELSE + EVT_SUB(LVarC, LVarB) + EVT_SET(LVarB, LVarC) + EVT_END_IF + EVT_SUB(LVarB, 20) + EVT_DIVF(LVarB, EVT_FLOAT(10.5888671875)) + EVT_ADDF(LVarB, 15) + EVT_SET(LVarA, LVarB) + EVT_RETURN + EVT_END +}; + +EvtScript N(bellyFlop) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_SMASH) + EVT_CALL(action_command_hammer_CreateHudElements) + EVT_EXEC_WAIT(N(runToTarget)) + EVT_EXEC_WAIT(N(getJumpTime)) + EVT_LOOP(30) + EVT_WAIT(1) + EVT_CALL(CheckButtonDown, BUTTON_STICK_LEFT, LVar0) + EVT_IF_NE(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(func_802A9258_422258, 0, 57, 3) + EVT_CALL(SetActionResult, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Tense1) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_59) + EVT_SET(LVar0, 30) + EVT_LOOP(60) + EVT_WAIT(1) + EVT_SUB(LVar0, 1) + EVT_IF_EQ(LVar0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Tense2) + EVT_END_IF + EVT_CALL(CheckButtonDown, BUTTON_STICK_LEFT, LVar0) + EVT_IF_EQ(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_THREAD + EVT_CALL(GetActionCommandResult, LVar0) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(MoveBattleCamOver, 20) + EVT_END_THREAD + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Jump) + EVT_THREAD + EVT_CALL(SetActorRotationOffset, ACTOR_PARTNER, 0, 12, 0) + EVT_SET(LVar0, 0) + EVT_LOOP(10) + EVT_ADD(LVar0, 36) + EVT_CALL(SetActorRotation, ACTOR_PARTNER, 0, 0, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetActorRotation, ACTOR_PARTNER, 0, 0, 20) + EVT_END_THREAD + EVT_THREAD + EVT_CALL(GetActionCommandResult, LVar0) + EVT_IF_GT(LVar0, 0) + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(MOVE_BELLY_FLOP1) + EVT_WAIT(13) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(1.1), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(1.1), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.2), EVT_FLOAT(1.2), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.2), EVT_FLOAT(1.2), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.3), EVT_FLOAT(1.3), EVT_FLOAT(1.0)) + EVT_CASE_EQ(MOVE_BELLY_FLOP2) + EVT_WAIT(13) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.15), EVT_FLOAT(1.15), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.2), EVT_FLOAT(1.2), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.35), EVT_FLOAT(1.35), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.4), EVT_FLOAT(1.4), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.55), EVT_FLOAT(1.55), EVT_FLOAT(1.0)) + EVT_CASE_EQ(MOVE_BELLY_FLOP3) + EVT_WAIT(13) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.2), EVT_FLOAT(1.2), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.3), EVT_FLOAT(1.3), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.5), EVT_FLOAT(1.5), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.6), EVT_FLOAT(1.6), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.8), EVT_FLOAT(1.8), EVT_FLOAT(1.0)) + EVT_END_SWITCH + EVT_ELSE + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(167) + EVT_WAIT(13) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CASE_EQ(168) + EVT_WAIT(13) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.05), EVT_FLOAT(1.05), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(1.1), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.15), EVT_FLOAT(1.15), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.2), EVT_FLOAT(1.2), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.25), EVT_FLOAT(1.25), EVT_FLOAT(1.0)) + EVT_CASE_EQ(169) + EVT_WAIT(13) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.1), EVT_FLOAT(1.1), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.2), EVT_FLOAT(1.2), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.3), EVT_FLOAT(1.3), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.4), EVT_FLOAT(1.4), EVT_FLOAT(1.0)) + EVT_WAIT(1) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.5), EVT_FLOAT(1.5), EVT_FLOAT(1.0)) + EVT_END_SWITCH + EVT_END_IF + EVT_END_THREAD + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_2034) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(GetActionCommandResult, LVar0) + EVT_IF_GT(LVar0, 0) + EVT_THREAD + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Jump) + EVT_WAIT(10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Fall) + EVT_END_THREAD + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.6)) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 20, FALSE, TRUE, FALSE) + EVT_ELSE + EVT_THREAD + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Jump) + EVT_WAIT(10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Fall) + EVT_END_THREAD + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.0)) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 20, FALSE, TRUE, FALSE) + EVT_END_IF + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Land) + EVT_CALL(SetActorRotation, ACTOR_PARTNER, 0, 0, 0) + EVT_CALL(SetActorRotationOffset, ACTOR_PARTNER, 0, 0, 0) + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(MOVE_BELLY_FLOP1) + EVT_SET(LVarE, 1) + EVT_SET(LVarF, 3) + EVT_CASE_EQ(MOVE_BELLY_FLOP2) + EVT_SET(LVarE, 2) + EVT_SET(LVarF, 4) + EVT_CASE_EQ(MOVE_BELLY_FLOP3) + EVT_SET(LVarE, 3) + EVT_SET(LVarF, 5) + EVT_END_SWITCH + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(LandJump, ACTOR_PARTNER) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 15, 0, 0) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 20, FALSE, TRUE, FALSE) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 10, 0, 0) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 10, FALSE, TRUE, FALSE) + EVT_WAIT(10) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Run) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_RETURN + EVT_END_IF + EVT_THREAD + EVT_WAIT(3) + EVT_CALL(SetActorScale, ACTOR_PARTNER, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_END_THREAD + EVT_CALL(GetActionCommandResult, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_GT(0) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP, ATTACK_EVENT_FLAG_4, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_CASE_DEFAULT + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_JUMP, ATTACK_EVENT_FLAG_4, 0, LVarE, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE) + EVT_END_SWITCH + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_EXEC_WAIT(N(returnHome)) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) + EVT_CALL(MoveBattleCamOver, 8) + EVT_EXEC_WAIT(N(returnHome2)) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(squirt) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_SQUIRT) + EVT_CALL(func_802A9000_429D20) + EVT_CALL(GetActorLevel, ACTOR_PARTNER, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(0) + EVT_CALL(SetupMashMeter, 3, 40, 75, 100, 0, 0) + EVT_CASE_EQ(1) + EVT_CALL(SetupMashMeter, 4, 35, 60, 80, 100, 0) + EVT_CASE_EQ(2) + EVT_CALL(SetupMashMeter, 5, 20, 40, 60, 80, 100) + EVT_END_SWITCH + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_13) + EVT_CALL(BattleCamTargetActor, ACTOR_SELF) + EVT_CALL(MoveBattleCamOver, 40) + EVT_CALL(InitTargetIterator) + EVT_THREAD + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Jump) + EVT_WAIT(5) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Fall) + EVT_END_THREAD + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.0)) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 10, FALSE, TRUE, FALSE) + EVT_CALL(N(SetSquirtAngle)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Inhale) + EVT_CALL(AddBattleCamZoom, -80) + EVT_CALL(MoveBattleCamOver, 90) + EVT_CALL(func_802A911C_429E3C, 0, 87, 3) + EVT_LOOP(90) + EVT_CALL(GetActionResult, LVar0) + EVT_IF_EQ(LVar0, 0) + EVT_CALL(GetActorScale, ACTOR_SELF, LVar0, LVar1, LVar2) + EVT_SETF(LVar1, LVar0) + EVT_SUBF(LVar1, EVT_FLOAT(1.0)) + EVT_DIVF(LVar1, 4) + EVT_SUBF(LVar0, LVar1) + EVT_ELSE + EVT_SETF(LVar0, LVar0) + EVT_DIVF(LVar0, 100) + EVT_SETF(LVar1, EVT_FLOAT(1.0)) + EVT_ADDF(LVar0, LVar1) + EVT_END_IF + EVT_CALL(SetActorScale, ACTOR_SELF, LVar0, LVar0, EVT_FLOAT(1.0)) + EVT_SETF(LVarE, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_297) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) + EVT_CALL(MoveBattleCamOver, 10) + EVT_CALL(PartnerTestEnemy, LVar0, DAMAGE_TYPE_WATER | DAMAGE_TYPE_NO_CONTACT, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Squirt) + EVT_CALL(SetActorScale, ACTOR_SELF, EVT_FLOAT(1.0), EVT_FLOAT(1.0), EVT_FLOAT(1.0)) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 10) + EVT_ADD(LVar1, 11) + EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVar3, LVar4, LVar5) + EVT_CALL(N(GetSquirtTargetPos)) + EVT_CALL(PlayEffect, EFFECT_SQUIRT, 0, LVar0, LVar1, LVar2, LVar3, LVar4, LVar5, LVarE, 10, 0, 0, 0, 0) + EVT_WAIT(20) + EVT_EXEC_WAIT(N(restoreFromSquirt)) + EVT_RETURN + EVT_END_IF + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Squirt) + EVT_THREAD + EVT_CALL(N(InflateSushie)) + EVT_END_THREAD + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 10) + EVT_ADD(LVar1, 11) + EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVar3, LVar4, LVar5) + EVT_CALL(PlayEffect, EFFECT_SQUIRT, 0, LVar0, LVar1, LVar2, LVar3, LVar4, LVar5, LVarE, 10, 0, 0, 0, 0) + EVT_WAIT(10) + EVT_CALL(GetActionResult, LVar0) + EVT_CALL(N(GetSquirtDamage)) + EVT_SWITCH(LVar0) + EVT_CASE_GT(0) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_WATER | DAMAGE_TYPE_NO_CONTACT, ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_200, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_110) + EVT_CASE_DEFAULT + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_WATER | DAMAGE_TYPE_NO_CONTACT, ATTACK_EVENT_FLAG_2 | ATTACK_EVENT_FLAG_10 | ATTACK_EVENT_FLAG_200, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_110) + EVT_END_SWITCH + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(restoreFromSquirt)) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) + EVT_EXEC_WAIT(N(restoreFromSquirt2)) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(waterBlock) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(InitTargetIterator) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19) + EVT_CALL(SetBattleCamTarget, -95, 26, 10) + EVT_CALL(SetBattleCamOffsetZ, 11) + EVT_CALL(SetBattleCamZoom, 238) + EVT_CALL(MoveBattleCamOver, 30) + EVT_WAIT(10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Inhale) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.0)) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 30) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 10, FALSE, TRUE, FALSE) + EVT_CALL(LoadActionCommand, ACTION_COMMAND_WATER_BLOCK) + EVT_CALL(func_802A9000_42A4F0, 0) + EVT_CALL(func_80269344, 0) + EVT_SET(LVar0, 0) + EVT_LOOP(4) + EVT_ADD(LVar0, 45) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_WAIT(4) + EVT_CALL(func_802A9398_42A888, 0, 100, 3) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_HoldWater) + EVT_WAIT(110) + EVT_CALL(GetActionCommandResult, LVar0) + EVT_IF_EQ(LVar0, 0) + EVT_SET(LVarA, LVar0) + EVT_GOTO(10) + EVT_END_IF + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_SpitArc) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19) + EVT_CALL(SetBattleCamTarget, -95, 27, 10) + EVT_CALL(SetBattleCamOffsetZ, 11) + EVT_CALL(SetBattleCamZoom, 277) + EVT_CALL(MoveBattleCamOver, 10) + EVT_THREAD + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_298) + EVT_CALL(N(PlaySquirtFX)) + EVT_WAIT(65) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Celebrate) + EVT_END_THREAD + EVT_WAIT(45) + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 83) + EVT_CALL(PlayEffect, EFFECT_WATERFALL, 0, LVar0, LVar1, LVar2, EVT_FLOAT(1.0), 50, 0, 0, 0, 0, 0, 0, 0) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_2035) + EVT_THREAD + EVT_WAIT(20) + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 100) + EVT_CALL(PlayEffect, EFFECT_SPARKLES, 4, LVar0, LVar1, LVar2, 50, 0, 0, 0, 0, 0, 0, 0, 0) + EVT_WAIT(5) + EVT_SUB(LVar1, 20) + EVT_CALL(PlayEffect, EFFECT_SPARKLES, 4, LVar0, LVar1, LVar2, 50, 0, 0, 0, 0, 0, 0, 0, 0) + EVT_WAIT(5) + EVT_SUB(LVar1, 20) + EVT_CALL(PlayEffect, EFFECT_SPARKLES, 4, LVar0, LVar1, LVar2, 50, 0, 0, 0, 0, 0, 0, 0, 0) + EVT_WAIT(5) + EVT_SUB(LVar1, 20) + EVT_CALL(PlayEffect, EFFECT_SPARKLES, 4, LVar0, LVar1, LVar2, 50, 0, 0, 0, 0, 0, 0, 0, 0) + EVT_WAIT(5) + EVT_SUB(LVar1, 20) + EVT_CALL(PlayEffect, EFFECT_SPARKLES, 4, LVar0, LVar1, LVar2, 50, 0, 0, 0, 0, 0, 0, 0, 0) + EVT_END_THREAD + EVT_WAIT(40) + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_CALL(N(PlayWaterBlockFX), LVar0, LVar1, LVar2) + EVT_WAIT(30) + EVT_CALL(GetActionCommandResult, LVar0) + EVT_CALL(N(ApplyWaterBlock)) + EVT_SET(LVarA, LVar0) + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 15) + EVT_ADD(LVar1, 35) + EVT_ADD(LVarF, 6) + EVT_CALL(PlayEffect, EFFECT_STAT_CHANGE, LVarF, LVar0, LVar1, LVar2, EVT_FLOAT(1.5), 60, 0, 0, 0, 0, 0, 0, 0) + EVT_WAIT(4) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(PartnerYieldTurn) + EVT_LABEL(10) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.0)) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Run) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 10, FALSE, TRUE, FALSE) + EVT_SET(LVar1, 180) + EVT_LOOP(4) + EVT_SUB(LVar1, 45) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, LVar1) + EVT_END_LOOP + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_IF_EQ(LVarA, 0) + EVT_ELSE + EVT_CALL(ShowVariableMessageBox, 38, 60, LVarA) + EVT_END_IF + EVT_CALL(WaitForMessageBoxDone) + EVT_RETURN + EVT_END +}; + +EvtScript N(tidalWave) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(LoadActionCommand, ACTION_COMMAND_TIDAL_WAVE) + EVT_CALL(action_command_tidal_wave_CreateHudElements) + EVT_CALL(SetupMashMeter, 5, 20, 30, 60, 80, 100) + EVT_CALL(InitTargetIterator) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19) + EVT_CALL(SetBattleCamTarget, -65, 53, 10) + EVT_CALL(SetBattleCamOffsetZ, 16) + EVT_CALL(SetBattleCamZoom, 214) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Run) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(0.5)) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 5, FALSE, TRUE, FALSE) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.0)) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 30, 40, 0) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 15, FALSE, TRUE, FALSE) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Idle) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_HoldWater) + EVT_CALL(func_802A9138_42C828, 0, 100, 3) + EVT_CALL(SetActorRotationOffset, ACTOR_PARTNER, 0, 12, 0) + EVT_THREAD + EVT_WAIT(54) + EVT_LOOP(8) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 0, 0) + EVT_WAIT(1) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, -1, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_LOOP(7) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 1, 0, 0) + EVT_WAIT(1) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, -1, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_LOOP(8) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 1, 0, 0) + EVT_WAIT(1) + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, -2, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetActorDispOffset, ACTOR_PARTNER, 0, 0, 0) + EVT_END_THREAD + EVT_LOOP(100) + EVT_CALL(GetActionResult, LVar0) + EVT_CALL(N(SetScaleTidalWaveCharge)) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_CALL(MoveBattleCamOver, 5) + EVT_WAIT(10) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CALL(N(ProcessTidalWave)) + EVT_CALL(SetActorPos, ACTOR_PARTNER, -220, 0, 0) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 0) + EVT_WAIT(15) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) + EVT_CALL(MoveBattleCamOver, 20) + EVT_CALL(GetActionSuccessCopy, LVar0) + EVT_SET(LVarE, LVar0) + EVT_SET(LVarF, LVar0) + EVT_CALL(InitTargetIterator) + EVT_LOOP(0) + EVT_CALL(SetGoalToTarget, ACTOR_SELF) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 2, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_GOTO(10) + EVT_END_IF + EVT_SWITCH(LVarE) + EVT_CASE_GE(6) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_WATER | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, 0, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_CASE_DEFAULT + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_WATER | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS, 0, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE) + EVT_END_SWITCH + EVT_WAIT(5) + EVT_LABEL(10) + EVT_CALL(ChooseNextTarget, 0, LVar0) + EVT_IF_EQ(LVar0, -1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(PartnerYieldTurn) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 0, 150, 0) + EVT_CALL(GetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(SetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(SetActorRotationOffset, ACTOR_PARTNER, 0, 0, 0) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(1.0)) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleSushie_Idle) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 40, FALSE, TRUE, FALSE) + EVT_CALL(SetActorJumpGravity, ACTOR_PARTNER, EVT_FLOAT(0.7)) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 20, FALSE, TRUE, FALSE) + EVT_CALL(JumpToGoal, ACTOR_PARTNER, 10, FALSE, TRUE, FALSE) + EVT_RETURN + EVT_END +}; diff --git a/src/battle/partner/twink.c b/src/battle/partner/twink.c index 9a35b54f89..c69f9f17ca 100644 --- a/src/battle/partner/twink.c +++ b/src/battle/partner/twink.c @@ -1,11 +1,24 @@ #include "common.h" +#include "battle/battle.h" +#include "script_api/battle.h" +#include "sprite/npc/Twink.h" -extern s32 D_802382F8_714FE8; +#define NAMESPACE battle_partner_twink + +extern EvtScript N(init); +extern EvtScript N(takeTurn); +extern EvtScript N(idle); +extern EvtScript N(handleEvent); +extern EvtScript N(nextTurn); +extern EvtScript N(executeAction); +extern EvtScript N(celebrate); +extern EvtScript N(runAway); +extern EvtScript N(runAwayFail); ApiStatus func_80238000_714CF0(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; - if (battleStatus->flags2 & 0x40) { + if (battleStatus->flags2 & BS_FLAGS2_40) { script->varTable[0] = 1; } else { script->varTable[0] = 0; @@ -14,6 +27,100 @@ ApiStatus func_80238000_714CF0(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } +s32 N(idleAnimations)[] = { + STATUS_NORMAL, ANIM_Twink_Angry, + STATUS_TURN_DONE, ANIM_Twink_Still, + STATUS_END, +}; + +s32 N(defenseTable)[] = { + ELEMENT_NORMAL, 0, + ELEMENT_END, +}; + +s32 N(statusTable)[] = { + STATUS_NORMAL, 100, + STATUS_DEFAULT, 100, + STATUS_SLEEP, 100, + STATUS_POISON, 100, + STATUS_FROZEN, 100, + STATUS_DIZZY, 100, + STATUS_FEAR, 100, + STATUS_STATIC, 100, + STATUS_PARALYZE, 100, + STATUS_SHRINK, 100, + STATUS_STOP, 100, + STATUS_DEFAULT_TURN_MOD, 0, + STATUS_SLEEP_TURN_MOD, 0, + STATUS_POISON_TURN_MOD, 0, + STATUS_FROZEN_TURN_MOD, 0, + STATUS_DIZZY_TURN_MOD, 0, + STATUS_FEAR_TURN_MOD, 0, + STATUS_STATIC_TURN_MOD, 0, + STATUS_PARALYZE_TURN_MOD, 0, + STATUS_SHRINK_TURN_MOD, 0, + STATUS_STOP_TURN_MOD, 0, + STATUS_END, +}; + +ActorPartBlueprint N(parts)[] = { + { + .flags = 0, + .index = 1, + .posOffset = { 0, 0, 0 }, + .targetOffset = { 0, 0 }, + .opacity = 255, + .idleAnimations = N(idleAnimations), + .defenseTable = N(defenseTable), + .eventFlags = 0, + .elementImmunityFlags = 0, + .unk_1C = 0, + .unk_1D = 0, + }, +}; + +ActorBlueprint NAMESPACE = { + .flags = ACTOR_FLAG_NO_DMG_APPLY, + .type = ACTOR_TYPE_TWINK, + .level = 0, + .maxHP = 99, + .partCount = ARRAY_COUNT(N(parts)), + .partsData = N(parts), + .script = &N(init), + .statusTable = N(statusTable), + .escapeChance = 0, + .airLiftChance = 0, + .hurricaneChance = 0, + .spookChance = 0, + .upAndAwayChance = 0, + .spinSmashReq = 4, + .powerBounceChance = 80, + .coinReward = 0, + .size = { 20, 20 }, + .hpBarOffset = { 0, 0 }, + .statusIconOffset = { -10, 30 }, + .statusMessageOffset = { 13, 31 }, +}; + +EvtScript N(init) = { + EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn))) + EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle))) + EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent))) + EVT_CALL(BindNextTurn, ACTOR_SELF, EVT_PTR(N(nextTurn))) + EVT_CALL(func_80238000_714CF0) + EVT_IF_NE(LVar0, 1) + EVT_CALL(SetActorFlagBits, ACTOR_SELF, ACTOR_FLAG_NO_ATTACK, 1) + EVT_END_IF + EVT_CALL(SetActorVar, ACTOR_SELF, 0, 0) + EVT_CALL(SetActorVar, ACTOR_SELF, 1, EVT_PTR(N(defenseTable))) + EVT_CALL(AddActorDecoration, ACTOR_SELF, 1, 0, 9) + EVT_CALL(ModifyActorDecoration, ACTOR_SELF, 1, 0, 0, 0, 0, 0) + EVT_RETURN + EVT_END +}; + +s32 D_802382F8_714FE8 = 0; + ApiStatus func_80238028_714D18(Evt* script, s32 isInitialCall) { Actor* actor = get_actor(script->owner1.actorID); @@ -22,3 +129,156 @@ ApiStatus func_80238028_714D18(Evt* script, s32 isInitialCall) { actor->unk_19A = 2.0f * sin_rad(DEG_TO_RAD(D_802382F8_714FE8)); return ApiStatus_DONE2; } + +EvtScript N(idle) = { + EVT_LOOP(0) + EVT_CALL(func_80238028_714D18) + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(handleEvent) = { + EVT_CALL(UseIdleAnimation, ACTOR_PLAYER, FALSE) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(CloseActionCommandInfo) + EVT_CALL(GetLastEvent, ACTOR_PARTNER, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(EVENT_HIT_COMBO) + EVT_CASE_OR_EQ(EVENT_HIT) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Peach_C0005) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_Twink_Hurt) + EVT_EXEC_WAIT(DoNormalHit) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Peach_A0002) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(EVENT_UNKNOWN_TRIGGER) + EVT_CASE_OR_EQ(EVENT_IMMUNE) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Peach_C0005) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_Twink_Angry) + EVT_EXEC_WAIT(DoImmune) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Peach_A0002) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_CALL(UseIdleAnimation, ACTOR_PLAYER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(takeTurn) = { + EVT_CALL(GetBattlePhase, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(PHASE_EXECUTE_ACTION) + EVT_EXEC_WAIT(N(executeAction)) + EVT_CASE_EQ(PHASE_5) + EVT_EXEC_WAIT(N(celebrate)) + EVT_CASE_EQ(PHASE_RUN_AWAY_START) + EVT_EXEC_WAIT(N(runAway)) + EVT_CASE_EQ(PHASE_RUN_AWAY_FAIL) + EVT_EXEC_WAIT(N(runAwayFail)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(celebrate) = { + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_Twink_Fly) + EVT_SET_CONST(LVar2, ANIM_Twink_Fly) + EVT_EXEC_WAIT(D_80294720) + EVT_RETURN + EVT_END +}; + +EvtScript N(runAway) = { + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_Twink_Angry) + EVT_EXEC_WAIT(DoPartnerRunAway) + EVT_RETURN + EVT_END +}; + +EvtScript N(runAwayFail) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_Twink_Angry) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_Twink_Idle) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(nextTurn) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(executeAction) = { + EVT_CALL(EnableIdleScript, ACTOR_PARTNER, 0) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(SetActorSounds, ACTOR_PARTNER, 1, SOUND_207F, SOUND_2AA) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(BattleCamTargetActor, ACTOR_SELF) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_Twink_Angry) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -20, 0, 0) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(4.0)) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 0, -10, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_Twink_Idle) + EVT_WAIT(3) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_Twink_Cringe) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 0, 10, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 5, 0, 0) + EVT_WAIT(2) + EVT_CALL(SetActorSounds, ACTOR_PARTNER, 1, 0, 0) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_JUMP_3E2) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_52) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -40, 15, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, -20, 6) + EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVarF) + EVT_IF_GT(LVarF, 1) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_END_IF + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_207E) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -10, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_Twink_Angry) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 5, 0, 0) + EVT_CALL(GetActorVar, ACTOR_SELF, 0, LVarF) + EVT_IF_GT(LVarF, 0) + EVT_CALL(PartnerDamageEnemy, LVar0, 0, 0, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_ELSE + EVT_CALL(PartnerDamageEnemy, LVar0, 0, 0, 0, LVarF, BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_10) + EVT_END_IF + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_D) + EVT_CALL(MoveBattleCamOver, 10) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 150, 100, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 15, 20, 0) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 0) + EVT_WAIT(20) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_LOOP(0) + EVT_WAIT(1) + EVT_CALL(GetActorVar, ACTOR_ENEMY0, 1, LVar0) + EVT_IF_EQ(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(SetActorSounds, ACTOR_PARTNER, 1, SOUND_207F, SOUND_2AA) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_Twink_Angry) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(8.0)) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 0, -20, 10) + EVT_CALL(EnableIdleScript, ACTOR_PARTNER, 1) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; diff --git a/src/battle/partner/watt.c b/src/battle/partner/watt.c index 002dcbbf53..7886371cb8 100644 --- a/src/battle/partner/watt.c +++ b/src/battle/partner/watt.c @@ -1,45 +1,68 @@ #include "common.h" #include "effects.h" +#include "battle/battle.h" +#include "script_api/battle.h" +#include "battle/action_cmd/body_slam.h" +#include "battle/action_cmd/power_shock.h" +#include "battle/action_cmd/water_block.h" +#include "battle/action_cmd/mega_shock.h" +#include "sprite/npc/BattleWatt.h" #define NAMESPACE battle_partner_watt -extern EffectInstance* D_80239A0C_7054FC; +extern EvtScript N(handleEvent); +extern EvtScript N(idle); +extern EvtScript N(nextTurn); +extern EvtScript N(takeTurn); +extern EvtScript N(init); +extern EvtScript N(executeAction); +extern EvtScript N(celebrate); +extern EvtScript N(runAway); +extern EvtScript N(runAwayFail); +extern EvtScript N(electroDash); +extern EvtScript N(powerShock); +extern EvtScript N(turboCharge); +extern EvtScript N(megaShock); + +extern EffectInstance* N(radialShimmer); extern s32 D_8023B948_707438[]; -extern EffectInstance* D_8023C1B0; -extern EffectInstance* D_8023C1B4; -extern s32 D_8023C1B8; -extern s32 D_8023C1BC; -extern s32 D_8023C1C0; -extern s32 D_8023C1C4; -extern s32 D_8023C1C8; -extern EffectInstance* D_8023C1CC; -extern EffectInstance* D_8023C1D0; +static EffectInstance* N(bulbGlow); +static EffectInstance* N(thunderboltRing); -ApiStatus func_80238000_703AF0(Evt* script, s32 isInitialCall) { +// surprisingly this can't be replaced by 'static WattEffectData sWattEffectData;' +static s32 sWattEffectData_initialized; +static s32 sWattEffectData_isBouncing; +static s32 sWattEffectData_bouncePhase; +static s32 sWattEffectData_isActive; +static s32 sWattEffectData_currentEffectIndex; +static EffectInstance* sWattEffectData_effect1; +static EffectInstance* sWattEffectData_effect2; + +ApiStatus N(WattFXUpdate)(Evt* script, s32 isInitialCall) { Actor* partner = gBattleStatus.partnerActor; f32 x, y, z; if (isInitialCall) { - D_8023C1BC = 1; - D_8023C1C0 = 0; - D_8023C1C4 = 1; - D_8023C1C8 = 0; - D_8023C1CC = fx_static_status(0, partner->currentPos.x, partner->currentPos.y, partner->currentPos.z, 1.0f, 5, 0); - D_8023C1D0 = fx_static_status(1, partner->currentPos.x, -1000.0f, partner->currentPos.z, 1.0f, 5, 0); - D_8023C1B8 = 1; + sWattEffectData_isBouncing = TRUE; + sWattEffectData_bouncePhase = 0; + sWattEffectData_isActive = TRUE; + sWattEffectData_currentEffectIndex = 0; + sWattEffectData_effect1 = fx_static_status(0, partner->currentPos.x, partner->currentPos.y, partner->currentPos.z, 1.0f, 5, 0); + sWattEffectData_effect2 = fx_static_status(1, partner->currentPos.x, -1000.0f, partner->currentPos.z, 1.0f, 5, 0); + sWattEffectData_initialized = TRUE; } - if (D_8023C1B8 == 0) { + if (sWattEffectData_initialized == 0) { return ApiStatus_DONE2; } - if (D_8023C1BC != 0) { - D_8023C1C0 += 15; - D_8023C1C0 = clamp_angle(D_8023C1C0); + if (sWattEffectData_isBouncing) { + sWattEffectData_bouncePhase += 15; + sWattEffectData_bouncePhase = clamp_angle(sWattEffectData_bouncePhase); } - partner->unk_19A = sin_rad(DEG_TO_RAD(D_8023C1C0)) * 3.0f; + partner->unk_19A = sin_rad(DEG_TO_RAD(sWattEffectData_bouncePhase)) * 3.0f; x = partner->currentPos.x + partner->headOffset.x; y = partner->currentPos.y + partner->headOffset.y + partner->unk_19A + 12.0f; z = partner->currentPos.z + partner->headOffset.z; @@ -47,81 +70,81 @@ ApiStatus func_80238000_703AF0(Evt* script, s32 isInitialCall) { y = -1000.0f; } - if (D_8023C1C4 != 0) { - switch (D_8023C1C8) { + if (sWattEffectData_isActive) { + switch (sWattEffectData_currentEffectIndex) { case 0: - if (D_8023C1CC == NULL) { - D_8023C1CC = fx_static_status(0, x, y, z, 1.0f, 5, 0); + if (sWattEffectData_effect1 == NULL) { + sWattEffectData_effect1 = fx_static_status(0, x, y, z, 1.0f, 5, 0); } - if (D_8023C1D0 != NULL) { - D_8023C1D0->flags |= 0x10; - D_8023C1D0 = NULL; + if (sWattEffectData_effect2 != NULL) { + sWattEffectData_effect2->flags |= EFFECT_INSTANCE_FLAGS_10; + sWattEffectData_effect2 = NULL; } - D_8023C1CC->data.staticStatus->unk_04 = x; - D_8023C1CC->data.staticStatus->unk_08 = y; - D_8023C1CC->data.staticStatus->unk_0C = z; + sWattEffectData_effect1->data.staticStatus->unk_04 = x; + sWattEffectData_effect1->data.staticStatus->unk_08 = y; + sWattEffectData_effect1->data.staticStatus->unk_0C = z; break; case 1: - if (D_8023C1CC != NULL) { - D_8023C1CC->flags |= 0x10; - D_8023C1CC = NULL; + if (sWattEffectData_effect1 != NULL) { + sWattEffectData_effect1->flags |= EFFECT_INSTANCE_FLAGS_10; + sWattEffectData_effect1 = NULL; } - if (D_8023C1D0 == NULL) { - D_8023C1D0 = fx_static_status(1, x, y, z, 1.0f, 5, 0); + if (sWattEffectData_effect2 == NULL) { + sWattEffectData_effect2 = fx_static_status(1, x, y, z, 1.0f, 5, 0); } - D_8023C1D0->data.staticStatus->unk_04 = x; - D_8023C1D0->data.staticStatus->unk_08 = y; - D_8023C1D0->data.staticStatus->unk_0C = z; + sWattEffectData_effect2->data.staticStatus->unk_04 = x; + sWattEffectData_effect2->data.staticStatus->unk_08 = y; + sWattEffectData_effect2->data.staticStatus->unk_0C = z; break; } } else { - if (D_8023C1CC != NULL) { - D_8023C1CC->flags |= 0x10; - D_8023C1CC = NULL; + if (sWattEffectData_effect1 != NULL) { + sWattEffectData_effect1->flags |= EFFECT_INSTANCE_FLAGS_10; + sWattEffectData_effect1 = NULL; } - if (D_8023C1D0 != NULL) { - D_8023C1D0->flags |= 0x10; - D_8023C1D0 = NULL; + if (sWattEffectData_effect2 != NULL) { + sWattEffectData_effect2->flags |= EFFECT_INSTANCE_FLAGS_10; + sWattEffectData_effect2 = NULL; } } return ApiStatus_BLOCK; } -ApiStatus func_80238370_703E60(Evt* script, s32 isInitialCall) { - D_8023C1B8 = 0; - if (D_8023C1CC != NULL) { - remove_effect(D_8023C1CC); +ApiStatus N(WattFXRemove)(Evt* script, s32 isInitialCall) { + sWattEffectData_initialized = 0; + if (sWattEffectData_effect1 != NULL) { + remove_effect(sWattEffectData_effect1); } - if (D_8023C1D0 != NULL) { - remove_effect(D_8023C1D0); + if (sWattEffectData_effect2 != NULL) { + remove_effect(sWattEffectData_effect2); } return ApiStatus_DONE2; } -ApiStatus func_802383C0_703EB0(Evt* script, s32 isInitialCall) { - D_8023C1BC = 1; +ApiStatus N(WattFXBounce)(Evt* script, s32 isInitialCall) { + sWattEffectData_isBouncing = 1; return ApiStatus_DONE2; } -ApiStatus func_802383D4_703EC4(Evt* script, s32 isInitialCall) { - D_8023C1BC = 0; +ApiStatus N(WattFXDisableBounce)(Evt* script, s32 isInitialCall) { + sWattEffectData_isBouncing = 0; return ApiStatus_DONE2; } -ApiStatus func_802383E4_703ED4(Evt* script, s32 isInitialCall) { - D_8023C1C4 = 1; +ApiStatus N(WattFXEnable)(Evt* script, s32 isInitialCall) { + sWattEffectData_isActive = 1; return ApiStatus_DONE2; } -ApiStatus func_802383F8_703EE8(Evt* script, s32 isInitialCall) { - D_8023C1C4 = 0; +ApiStatus N(WattFXDisable)(Evt* script, s32 isInitialCall) { + sWattEffectData_isActive = 0; return ApiStatus_DONE2; } -ApiStatus func_80238408_703EF8(Evt* script, s32 isInitialCall) { - D_8023C1C8 = evt_get_variable(script, *script->ptrReadPos); +ApiStatus N(WattFXSetEffect)(Evt* script, s32 isInitialCall) { + sWattEffectData_currentEffectIndex = evt_get_variable(script, *script->ptrReadPos); return ApiStatus_DONE2; } @@ -129,43 +152,43 @@ ApiStatus func_80238408_703EF8(Evt* script, s32 isInitialCall) { #include "common/SetBackgroundAlpha.inc.c" -ApiStatus func_802384B0_703FA0(Evt* script, s32 isInitialCall) { +ApiStatus N(ElectroDashFX)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; - s32 var1 = evt_get_variable(script, *args++); - s32 var2 = evt_get_variable(script, *args++); - s32 var3 = evt_get_variable(script, *args++); + s32 x = evt_get_variable(script, *args++); + s32 y = evt_get_variable(script, *args++); + s32 z = evt_get_variable(script, *args++); - D_80239A0C_7054FC = fx_radial_shimmer(8, var1, var2, var3, 1.3f, 55); + N(radialShimmer) = fx_radial_shimmer(8, x, y, z, 1.3f, 55); return ApiStatus_DONE2; } -ApiStatus func_80238570_704060(Evt* script, s32 isInitialCall) { - EffectInstance* effect = D_80239A0C_7054FC; +ApiStatus N(ElectroDashFXDisable)(Evt* script, s32 isInitialCall) { + EffectInstance* effect = N(radialShimmer); if (effect != NULL) { - effect->flags |= 0x10; + effect->flags |= EFFECT_INSTANCE_FLAGS_10; } - D_80239A0C_7054FC = NULL; + N(radialShimmer) = NULL; return ApiStatus_DONE2; } -ApiStatus func_8023859C_70408C(Evt* script, s32 isInitialCall) { +ApiStatus N(PowerShockFX)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; - s32 var1 = evt_get_variable(script, *args++); - s32 var2 = evt_get_variable(script, *args++); - s32 var3 = evt_get_variable(script, *args++); + s32 x = evt_get_variable(script, *args++); + s32 y = evt_get_variable(script, *args++); + s32 z = evt_get_variable(script, *args++); ThunderboltRingFXData* data; - D_8023C1B4 = fx_thunderbolt_ring(0, var1, var2, var3, 1.0f, 10); - data = D_8023C1B4->data.thunderboltRing; + N(thunderboltRing) = fx_thunderbolt_ring(0, x, y, z, 1.0f, 10); + data = N(thunderboltRing)->data.thunderboltRing; data->unk_30 = 3; return ApiStatus_DONE2; } -ApiStatus func_80238668_704158(Evt* script, s32 isInitialCall) { +ApiStatus N(PowerShockDischargeFX)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; Actor* partner = gBattleStatus.partnerActor; f32 x = partner->currentPos.x + partner->headOffset.x; @@ -174,24 +197,24 @@ ApiStatus func_80238668_704158(Evt* script, s32 isInitialCall) { if (isInitialCall) { script->functionTemp[0] = evt_get_variable(script, *args++); - fx_bulb_glow(0, x, y, z, 1.0f, &D_8023C1B0); + fx_bulb_glow(0, x, y, z, 1.0f, &N(bulbGlow)); } script->functionTemp[0]--; if (script->functionTemp[0] == 0) { - D_8023C1B0->data.bulbGlow->unk_14 = 5; + N(bulbGlow)->data.bulbGlow->unk_14 = 5; return ApiStatus_DONE2; } return ApiStatus_BLOCK; } -ApiStatus func_80238784_704274(Evt* script, s32 isInitialCall) { +ApiStatus N(TargetParalyzeChance)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; Actor* partnerActor = battleStatus->partnerActor; Actor* targetActor = get_actor(partnerActor->targetActorID); ActorPart* targetActorPart = get_actor_part(targetActor, partnerActor->targetPartIndex); - s32 statusChance = lookup_status_chance(targetActor->statusTable, 5); + s32 statusChance = lookup_status_chance(targetActor->statusTable, STATUS_PARALYZE); if (targetActor->transparentStatus == STATUS_TRANSPARENT) { statusChance = 0; @@ -205,20 +228,18 @@ ApiStatus func_80238784_704274(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -// float stuff -#ifdef NON_MATCHING -ApiStatus func_80238810_704300(Evt* script, s32 isInitialCall) { +ApiStatus N(TurboChargeUnwindWatt)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; Actor* partner = gBattleStatus.partnerActor; Actor* player = gBattleStatus.playerActor; ActorState* partnerState = &partner->state; - f32 x; f32 theta; f32 sinTheta; f32 cosTheta; f32 distance; - f32 new_var; f32 angle; + f32 deltaX; + f32 deltaY; if (isInitialCall) { script->functionTemp[0] = 0; @@ -228,16 +249,19 @@ ApiStatus func_80238810_704300(Evt* script, s32 isInitialCall) { case 0: script->functionTemp[2] = evt_get_variable(script, *args++); partner->state.distance = dist2D(player->currentPos.x, player->currentPos.y, partner->currentPos.x, partner->currentPos.y); + partner->state.goalPos.x = player->currentPos.x; partner->state.goalPos.y = player->currentPos.y + 36.0f; partner->state.goalPos.z = player->currentPos.z; - partner->state.moveTime = 90; + partner->state.currentPos.x = partner->currentPos.x; partner->state.currentPos.y = partner->currentPos.y; partner->state.currentPos.z = partner->currentPos.z; + partner->state.angle = 90.0f; partner->state.velocity = 5.0f; partner->state.acceleration = 0.5f; + partner->state.moveTime = 90; script->functionTemp[1] = 10; script->functionTemp[0] = 1; break; @@ -245,13 +269,16 @@ ApiStatus func_80238810_704300(Evt* script, s32 isInitialCall) { theta = DEG_TO_RAD(partner->state.angle); sinTheta = sin_rad(theta); cosTheta = cos_rad(theta); - distance = partner->state.distance; partner->state.velocity += partner->state.acceleration; - angle = partner->state.angle + partner->state.velocity; + angle = partner->state.angle; + angle += partner->state.velocity; + deltaX = partner->state.distance * sinTheta; + deltaY = -partner->state.distance * cosTheta; + partner->state.currentPos.x = partner->state.goalPos.x + deltaX; + partner->state.currentPos.y = partner->state.goalPos.y + deltaY; partner->state.angle = angle; - partner->state.currentPos.x = partner->state.goalPos.x + (distance * sinTheta); - partner->state.currentPos.y = partner->state.goalPos.y + (-distance * cosTheta); partner->state.angle = clamp_angle(angle); + partner->state.moveTime--; if (partner->state.moveTime == 0) { script->functionTemp[0] = 2; @@ -262,10 +289,13 @@ ApiStatus func_80238810_704300(Evt* script, s32 isInitialCall) { sinTheta = sin_rad(theta); cosTheta = cos_rad(theta); distance = partner->state.distance; - angle = partner->state.angle + partner->state.velocity; + angle = partner->state.angle; + angle += partner->state.velocity; + deltaX = partner->state.distance * sinTheta; + deltaY = -partner->state.distance * cosTheta; + partner->state.currentPos.x = partner->state.goalPos.x + deltaX; + partner->state.currentPos.y = partner->state.goalPos.y + deltaY; partner->state.angle = angle; - partner->state.currentPos.x = partner->state.goalPos.x + (distance * sinTheta); - partner->state.currentPos.y = partner->state.goalPos.y + (-distance * cosTheta); partner->state.angle = clamp_angle(angle); if (partner->state.angle < 45.0f) { script->functionTemp[0] = 3; @@ -292,54 +322,51 @@ ApiStatus func_80238810_704300(Evt* script, s32 isInitialCall) { } return ApiStatus_BLOCK; } -#else -INCLUDE_ASM(s32, "battle/partner/watt", func_80238810_704300); -#endif -ApiStatus func_80238B3C_70462C(Evt* script, s32 isInitialCall) { +ApiStatus N(TurboChargeFX)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; - s32 var1 = evt_get_variable(script, *args++); - s32 var2 = evt_get_variable(script, *args++); - s32 var3 = evt_get_variable(script, *args++); + s32 x = evt_get_variable(script, *args++); + s32 y = evt_get_variable(script, *args++); + s32 z = evt_get_variable(script, *args++); ThunderboltRingFXData* data; - D_8023C1B4 = fx_thunderbolt_ring(0, var1, var2, var3, 1.0f, 60); - data = D_8023C1B4->data.thunderboltRing; + N(thunderboltRing) = fx_thunderbolt_ring(0, x, y, z, 1.0f, 60); + data = N(thunderboltRing)->data.thunderboltRing; data->unk_30 = 2; return ApiStatus_DONE2; } -ApiStatus func_80238C08_7046F8(Evt* script, s32 isInitialCall) { +ApiStatus N(ApplyTurboCharge)(Evt* script, s32 isInitialCall) { BattleStatus* battleStatus = &gBattleStatus; - s32 var1 = script->varTable[0]; + s32 actionCommandResult = script->varTable[0]; - if (var1 > 0) { + if (actionCommandResult > 0) { script->varTable[0] = 1; } else { script->varTable[0] = 0; } script->varTable[15] = 0; - script->varTable[10] = var1; - if (battleStatus->turboChargeTurnsLeft < var1) { - battleStatus->turboChargeTurnsLeft = var1; + script->varTable[10] = actionCommandResult; + if (battleStatus->turboChargeTurnsLeft < actionCommandResult) { + battleStatus->turboChargeTurnsLeft = actionCommandResult; battleStatus->turboChargeAmount = 1; battleStatus->buffEffect->data.partnerBuff->unk_0C[FX_BUFF_DATA_TURBO_CHARGE].turnsLeft = battleStatus->turboChargeTurnsLeft; } - if (gBattleStatus.flags2 & 2) { - gBattleStatus.flags2 |= 0x100; + if (gBattleStatus.flags2 & BS_FLAGS2_2) { + gBattleStatus.flags2 |= BS_FLAGS2_100; } return ApiStatus_DONE2; } -ApiStatus func_80238C84_704774(Evt* script, s32 isInitialCall) { +ApiStatus N(MegaShockFX)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; - s32 t1; - s32 t2; - s32 t3; + s32 x; + s32 y; + s32 z; if (isInitialCall) { script->functionTemp[0] = 0; @@ -348,24 +375,24 @@ ApiStatus func_80238C84_704774(Evt* script, s32 isInitialCall) { switch (script->functionTemp[0]) { case 0: script->functionTemp[1] = evt_get_variable(script, *args++); - t1 = evt_get_variable(script, *args++); - t2 = evt_get_variable(script, *args++); - t3 = evt_get_variable(script, *args++); + x = evt_get_variable(script, *args++); + y = evt_get_variable(script, *args++); + z = evt_get_variable(script, *args++); script->functionTemp[2] = 20; script->functionTemp[3] = 10; - D_8023C1B4 = fx_thunderbolt_ring(0, t1, t2, t3, 1.0f, script->functionTemp[2] + 10); - D_8023C1B4->data.thunderboltRing->unk_30 = 3; + N(thunderboltRing) = fx_thunderbolt_ring(0, x, y, z, 1.0f, script->functionTemp[2] + 10); + N(thunderboltRing)->data.thunderboltRing->unk_30 = 3; script->functionTemp[1] = D_8023B948_707438[script->functionTemp[1] / 16]; script->functionTemp[0] = 1; break; case 1: - D_8023C1B4->data.thunderboltRing->unk_30 = + N(thunderboltRing)->data.thunderboltRing->unk_30 = ((script->functionTemp[3] * 3) + (script->functionTemp[1] * (10 - script->functionTemp[3]))) / 10; if (script->functionTemp[3] != 0) { script->functionTemp[3]--; } if (script->functionTemp[2] == 0) { - D_8023C1B4->flags |= 0x10; + N(thunderboltRing)->flags |= EFFECT_INSTANCE_FLAGS_10; return ApiStatus_DONE2; } script->functionTemp[2]--; @@ -411,3 +438,937 @@ ApiStatus N(AverageTargetParalyzeChance)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } + +s32 N(idleAnimations)[] = { + STATUS_NORMAL, ANIM_BattleWatt_Walk, + STATUS_STONE, ANIM_BattleWatt_Still, + STATUS_SLEEP, ANIM_BattleWatt_Sleep, + STATUS_POISON, ANIM_BattleWatt_Still, + STATUS_STOP, ANIM_BattleWatt_Still, + STATUS_DAZE, ANIM_BattleWatt_Injured, + STATUS_TURN_DONE, ANIM_BattleWatt_Still, + STATUS_END, +}; + +s32 N(defenseTable)[] = { + ELEMENT_NORMAL, 0, + ELEMENT_SHOCK, 99, + ELEMENT_END, +}; + +s32 N(statusTable)[] = { + STATUS_NORMAL, 100, + STATUS_DEFAULT, 100, + STATUS_SLEEP, 100, + STATUS_POISON, 100, + STATUS_FROZEN, 100, + STATUS_DIZZY, 100, + STATUS_FEAR, 100, + STATUS_STATIC, 100, + STATUS_PARALYZE, 100, + STATUS_SHRINK, 100, + STATUS_STOP, 100, + STATUS_DEFAULT_TURN_MOD, 0, + STATUS_SLEEP_TURN_MOD, 0, + STATUS_POISON_TURN_MOD, 0, + STATUS_FROZEN_TURN_MOD, 0, + STATUS_DIZZY_TURN_MOD, 0, + STATUS_FEAR_TURN_MOD, 0, + STATUS_STATIC_TURN_MOD, 0, + STATUS_PARALYZE_TURN_MOD, 0, + STATUS_SHRINK_TURN_MOD, 0, + STATUS_STOP_TURN_MOD, 0, + STATUS_END, +}; + +ActorPartBlueprint N(parts)[] = { + { + .flags = ACTOR_PART_FLAG_MULTI_TARGET, + .index = 1, + .posOffset = { 0, 0, 0 }, + .targetOffset = { 10, 22 }, + .opacity = 255, + .idleAnimations = N(idleAnimations), + .defenseTable = N(defenseTable), + .eventFlags = ACTOR_EVENT_FLAG_ELECTRIFIED, + .elementImmunityFlags = 0, + .unk_1C = 0, + .unk_1D = 0, + }, +}; + +ActorBlueprint NAMESPACE = { + .flags = ACTOR_FLAG_FLYING, + .type = ACTOR_TYPE_WATT, + .level = 0, + .maxHP = 99, + .partCount = ARRAY_COUNT(N(parts)), + .partsData = N(parts), + .script = &N(init), + .statusTable = N(statusTable), + .escapeChance = 0, + .airLiftChance = 0, + .hurricaneChance = 0, + .spookChance = 0, + .upAndAwayChance = 0, + .spinSmashReq = 4, + .powerBounceChance = 80, + .coinReward = 0, + .size = { 34, 28 }, + .hpBarOffset = { 0, 0 }, + .statusIconOffset = { -10, 20 }, + .statusMessageOffset = { 10, 20 }, +}; + +EvtScript N(init) = { + EVT_CALL(BindTakeTurn, ACTOR_SELF, EVT_PTR(N(takeTurn))) + EVT_CALL(BindIdle, ACTOR_SELF, EVT_PTR(N(idle))) + EVT_CALL(BindHandleEvent, ACTOR_SELF, EVT_PTR(N(handleEvent))) + EVT_CALL(BindNextTurn, ACTOR_SELF, EVT_PTR(N(nextTurn))) + EVT_RETURN + EVT_END +}; + +EvtScript N(idle) = { + EVT_SET_PRIORITY(99) + EVT_CALL(N(WattFXUpdate)) + EVT_RETURN + EVT_END +}; + +EvtScript N(handleEvent) = { + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(CloseActionCommandInfo) + EVT_CALL(N(WattFXDisableBounce)) + EVT_CALL(N(WattFXEnable)) + EVT_CALL(N(WattFXSetEffect), 0) + EVT_CALL(GetLastEvent, ACTOR_PARTNER, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(EVENT_HIT_COMBO) + EVT_CASE_OR_EQ(EVENT_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Hurt) + EVT_SET_CONST(LVar2, ANIM_BattleWatt_Hurt) + EVT_EXEC_WAIT(D_802977BC) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(EVENT_UNKNOWN_TRIGGER) + EVT_CASE_OR_EQ(EVENT_IMMUNE) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Hurt) + EVT_EXEC_WAIT(DoPartnerBlock) + EVT_CALL(N(WattFXBounce)) + EVT_END_CASE_GROUP + EVT_CASE_EQ(EVENT_SPIKE_CONTACT) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Hurt) + EVT_SET_CONST(LVar2, 12) + EVT_EXEC_WAIT(DoPartnerSpikeContact) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_BURN_CONTACT) + EVT_CALL(N(WattFXDisable)) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_BurnHurt) + EVT_SET(LVar2, 12) + EVT_SET_CONST(LVar3, ANIM_BattleWatt_BurnStill) + EVT_EXEC_WAIT(DoPartnerBurnContact) + EVT_CALL(N(WattFXEnable)) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_BURN_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_BurnHurt) + EVT_SET_CONST(LVar2, ANIM_BattleWatt_BurnStill) + EVT_EXEC_WAIT(DoPartnerBurn) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_SHOCK_HIT) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Hurt) + EVT_SET(LVar2, 12) + EVT_EXEC_WAIT(D_80295744) + EVT_CASE_EQ(EVENT_33) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Hurt) + EVT_EXEC_WAIT(DoPartnerHit) + EVT_CASE_EQ(EVENT_RECOVER_PARTNER) + EVT_CALL(N(WattFXBounce)) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Idle) + EVT_SET_CONST(LVar2, ANIM_BattleWatt_Run) + EVT_SET(LVar3, 20) + EVT_EXEC_WAIT(DoPartnerRecover) + EVT_CALL(N(WattFXBounce)) + EVT_CASE_EQ(EVENT_62) + EVT_CALL(N(WattFXRemove)) + EVT_CASE_OR_EQ(EVENT_18) + EVT_CASE_OR_EQ(EVENT_BLOCK) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208C) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Block) + EVT_EXEC_WAIT(DoPartnerBlock) + EVT_WAIT(10) + EVT_END_CASE_GROUP + EVT_CASE_EQ(EVENT_LIFE_SHROOM_PROC) + EVT_CALL(N(WattFXDisable)) + EVT_CASE_EQ(EVENT_REVIVE) + EVT_CALL(N(WattFXEnable)) + EVT_CASE_DEFAULT + EVT_END_SWITCH + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(takeTurn) = { + EVT_CALL(GetBattlePhase, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(PHASE_EXECUTE_ACTION) + EVT_EXEC_WAIT(N(executeAction)) + EVT_CASE_EQ(PHASE_5) + EVT_EXEC_WAIT(N(celebrate)) + EVT_CASE_EQ(PHASE_RUN_AWAY_START) + EVT_EXEC_WAIT(N(runAway)) + EVT_CASE_EQ(PHASE_RUN_AWAY_FAIL) + EVT_EXEC_WAIT(N(runAwayFail)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(celebrate) = { + EVT_CALL(N(WattFXEnable)) + EVT_CALL(N(WattFXSetEffect), 1) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Celebrate) + EVT_SET_CONST(LVar2, ANIM_BattleWatt_Walk) + EVT_SET_CONST(LVar3, ANIM_BattleWatt_Idle) + EVT_EXEC_WAIT(D_80294720) + EVT_RETURN + EVT_END +}; + +EvtScript N(runAway) = { + EVT_CALL(N(WattFXEnable)) + EVT_CALL(N(WattFXSetEffect), 1) + EVT_SET_CONST(LVar0, 1) + EVT_SET_CONST(LVar1, ANIM_BattleWatt_Run) + EVT_EXEC_WAIT(DoPartnerRunAway) + EVT_RETURN + EVT_END +}; + +EvtScript N(runAwayFail) = { + EVT_CALL(N(WattFXEnable)) + EVT_CALL(N(WattFXSetEffect), 1) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, FALSE) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(6.0)) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Run) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 0) + EVT_CALL(RunToGoal, ACTOR_PARTNER, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Idle) + EVT_CALL(UseIdleAnimation, ACTOR_PARTNER, TRUE) + EVT_CALL(N(WattFXSetEffect), 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(nextTurn) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(executeAction) = { + EVT_CALL(func_802694A4, 1) + EVT_CALL(SetBattleFlagBits, BS_FLAGS1_4000, 0) + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(8) + EVT_CALL(LoadStarPowerScript) + EVT_EXEC_WAIT(LVar0) + EVT_RETURN + EVT_END_SWITCH + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(MOVE_ELECTRO_DASH1) + EVT_EXEC_WAIT(N(electroDash)) + EVT_CASE_EQ(MOVE_ELECTRO_DASH2) + EVT_EXEC_WAIT(N(electroDash)) + EVT_CASE_EQ(MOVE_ELECTRO_DASH3) + EVT_EXEC_WAIT(N(electroDash)) + EVT_CASE_EQ(MOVE_POWER_SHOCK) + EVT_EXEC_WAIT(N(powerShock)) + EVT_CASE_EQ(MOVE_TURBO_CHARGE) + EVT_EXEC_WAIT(N(turboCharge)) + EVT_CASE_EQ(MOVE_MEGA_SHOCK) + EVT_EXEC_WAIT(N(megaShock)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(returnHome2) = { + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_E) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Idle) + EVT_RETURN + EVT_END +}; + +EvtScript N(returnHome) = { + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_51) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Idle) + EVT_RETURN + EVT_END +}; + +EffectInstance* N(radialShimmer) = NULL; + +EvtScript N(dashToTarget) = { + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, 0, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(charge) = { + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Strain) + EVT_CALL(N(WattFXDisable)) + EVT_CALL(PlayLoopingSoundAtActor, ACTOR_PARTNER, 0, SOUND_289) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 12) + EVT_CALL(N(ElectroDashFX), LVar0, LVar1, LVar2) + EVT_CALL(N(UnkBackgroundFunc3)) + EVT_SET(LVar9, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_StrainBigger) + EVT_LOOP(55) + EVT_ADD(LVar9, 30) + EVT_IF_GT(LVar9, 200) + EVT_SET(LVar9, 200) + EVT_END_IF + EVT_CALL(N(SetBackgroundAlpha), LVar9) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(func_8026EA7C, ACTOR_SELF, 1, 9) + EVT_RETURN + EVT_END +}; + +EvtScript N(electroDash_wait) = { + EVT_LOOP(30) + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(electroDash) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_BODY_SLAM) + EVT_CALL(action_command_body_slam_CreateHudElements) + EVT_CALL(SetupMashMeter, 1, 100, 0, 0, 0, 0) + EVT_WAIT(10) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_48) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -20, 0, 0) + EVT_SET(LocalFlag(2), 0) + EVT_LOOP(60) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) + EVT_IF_NE(LVar0, 0) + EVT_SET(LocalFlag(2), 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(MoveBattleCamOver, 75) + EVT_IF_EQ(LocalFlag(2), 1) + EVT_CALL(action_command_body_slam_MashActionCommandInit, 0, 102, 3, 1) + EVT_SET(LocalFlag(0), 0) + EVT_EXEC_GET_TID(N(dashToTarget), LVarA) + EVT_LOOP(20) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) + EVT_IF_EQ(LVar0, 0) + EVT_SET(LocalFlag(0), 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_IF_EQ(LocalFlag(0), 1) + EVT_KILL_THREAD(LVarA) + EVT_GOTO(10) + EVT_END_IF + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4, 0, 1, BS_FLAGS1_10) + EVT_SET(LocalFlag(0), 0) + EVT_EXEC_GET_TID(N(charge), LVarA) + EVT_LOOP(55) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) + EVT_IF_EQ(LVar0, 0) + EVT_SET(LocalFlag(0), 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_IF_EQ(LocalFlag(0), 1) + EVT_KILL_THREAD(LVarA) + EVT_GOTO(10) + EVT_END_IF + EVT_IF_EQ(LocalFlag(0), 0) + EVT_EXEC_GET_TID(N(electroDash_wait), LVarA) + EVT_LOOP(30) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) + EVT_IF_EQ(LVar0, 0) + EVT_SET(LocalFlag(0), 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_IF_EQ(LocalFlag(0), 1) + EVT_KILL_THREAD(LVarA) + EVT_GOTO(10) + EVT_END_IF + EVT_END_IF + EVT_ELSE + EVT_SET(LocalFlag(0), 0) + EVT_EXEC_GET_TID(N(dashToTarget), LVarA) + EVT_LOOP(20) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) + EVT_IF_NE(LVar0, 0) + EVT_IF_EQ(LocalFlag(2), 0) + EVT_CALL(action_command_body_slam_MashActionCommandInit, 0, 92, 3, 1) + EVT_SET(LocalFlag(2), 1) + EVT_END_IF + EVT_END_IF + EVT_IF_EQ(LocalFlag(2), 1) + EVT_IF_EQ(LVar0, 0) + EVT_SET(LocalFlag(0), 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_IF_EQ(LocalFlag(0), 1) + EVT_KILL_THREAD(LVarA) + EVT_GOTO(10) + EVT_END_IF + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4, 0, 1, BS_FLAGS1_10) + EVT_SET(LocalFlag(0), 0) + EVT_EXEC_GET_TID(N(charge), LVarA) + EVT_LOOP(55) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) + EVT_IF_NE(LVar0, 0) + EVT_IF_EQ(LocalFlag(2), 0) + EVT_CALL(action_command_body_slam_MashActionCommandInit, 0, 92, 3, 1) + EVT_SET(LocalFlag(2), 1) + EVT_END_IF + EVT_END_IF + EVT_IF_EQ(LocalFlag(2), 1) + EVT_IF_EQ(LVar0, 0) + EVT_SET(LocalFlag(0), 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_IF_EQ(LocalFlag(0), 1) + EVT_KILL_THREAD(LVarA) + EVT_GOTO(10) + EVT_END_IF + EVT_IF_EQ(LocalFlag(0), 0) + EVT_EXEC_GET_TID(N(electroDash_wait), LVarA) + EVT_LOOP(30) + EVT_CALL(CheckButtonDown, BUTTON_A, LVar0) + EVT_IF_EQ(LVar0, 0) + EVT_SET(LocalFlag(0), 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_IF_EQ(LocalFlag(0), 1) + EVT_KILL_THREAD(LVarA) + EVT_GOTO(10) + EVT_END_IF + EVT_END_IF + EVT_END_IF + EVT_LABEL(10) + EVT_WAIT(2) + EVT_CALL(CloseActionCommandInfo) + EVT_CALL(N(ElectroDashFXDisable)) + EVT_CALL(StopLoopingSoundAtActor, ACTOR_PARTNER, 0) + EVT_CALL(func_80269EAC, 19) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Strain) + EVT_CALL(func_8026EA7C, ACTOR_SELF, 1, 10) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -5, 0, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 5, 0, 0) + EVT_THREAD + EVT_WAIT(2) + EVT_CALL(N(SetBackgroundAlpha), 0) + EVT_END_THREAD + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_THREAD + EVT_WAIT(5) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Idle) + EVT_END_THREAD + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, 40, 10, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 10, -20, 4) + EVT_WAIT(20) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Run) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Idle) + EVT_RETURN + EVT_END_IF + EVT_CALL(N(WattFXEnable)) + EVT_CALL(N(WattFXBounce)) + EVT_CALL(GetMenuSelection, LVar0, LVar1, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(MOVE_ELECTRO_DASH1) + EVT_SET(LVarE, 1) + EVT_SET(LVarF, 3) + EVT_CASE_EQ(MOVE_ELECTRO_DASH2) + EVT_SET(LVarE, 1) + EVT_SET(LVarF, 4) + EVT_CASE_EQ(MOVE_ELECTRO_DASH3) + EVT_SET(LVarE, 1) + EVT_SET(LVarF, 5) + EVT_END_SWITCH + EVT_CALL(GetActionCommandResult, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_GT(0) + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_ELECTRIC | DAMAGE_TYPE_IGNORE_DEFENSE, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_80, 0, LVarF, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_CASE_DEFAULT + EVT_CALL(PartnerDamageEnemy, LVar0, DAMAGE_TYPE_ELECTRIC | DAMAGE_TYPE_IGNORE_DEFENSE, ATTACK_EVENT_FLAG_1 | ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_8 | ATTACK_EVENT_FLAG_80, 0, LVarE, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE) + EVT_END_SWITCH + EVT_CALL(PartnerYieldTurn) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) + EVT_EXEC_WAIT(N(returnHome2)) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(returnHome)) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(powerShock) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_POWER_SHOCK) + EVT_CALL(action_command_power_shock_CreateHudElements) + EVT_CALL(SetupMashMeter, 1, 100, 0, 0, 0, 0) + EVT_CALL(func_80269344, 0) + EVT_SET(LocalFlag(15), 0) + EVT_CALL(GetOwnerTarget, LVarA, LVarB) + EVT_CALL(GetActorFlags, LVarA, LVar0) + EVT_IF_FLAG(LVar0, ACTOR_FLAG_HP_OFFSET_BELOW) + EVT_SET(LocalFlag(15), 1) + EVT_END_IF + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_47) + EVT_CALL(MoveBattleCamOver, 40) + EVT_CALL(InitTargetIterator) + EVT_CALL(SetGoalToTarget, ACTOR_PARTNER) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Run) + EVT_CALL(N(WattFXSetEffect), 1) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -15, -10, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 30, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Idle) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4, 0, 1, BS_FLAGS1_10) + EVT_CALL(AddBattleCamZoom, -100) + EVT_CALL(MoveBattleCamOver, 80) + EVT_CALL(N(WattFXDisable)) + EVT_CALL(N(TargetParalyzeChance)) + EVT_CALL(func_802A9210_42D120, 0, 72, 3, LVar0) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 15) + EVT_ADD(LVar2, 5) + EVT_CALL(PlayEffect, EFFECT_SNAKING_STATIC, 0, LVar0, LVar1, LVar2, EVT_FLOAT(1.0), 75, 0, 0, 0, 0, 0, 0, 0) + EVT_CALL(N(UnkBackgroundFunc3)) + EVT_SET(LVar9, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_StrainBigger) + EVT_CALL(func_8026EA7C, ACTOR_SELF, 1, 10) + EVT_THREAD + EVT_LOOP(75) + EVT_ADD(LVar9, 3) + EVT_CALL(N(SetBackgroundAlpha), LVar9) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_WAIT(75) + EVT_CALL(func_8026EA7C, ACTOR_SELF, 1, 9) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_28A) + EVT_THREAD + EVT_SETF(LVar0, EVT_FLOAT(1.0)) + EVT_LOOP(3) + EVT_ADDF(LVar0, EVT_FLOAT(0.4)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, LVar0, LVar0, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 8) + EVT_CALL(PlayEffect, EFFECT_ENERGY_IN_OUT, 6, LVar0, LVar1, LVar2, EVT_FLOAT(1.8), 30, 0, 0, 0, 0, 0, 0, 0) + EVT_END_THREAD + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 20) + EVT_ADD(LVar2, 5) + EVT_CALL(N(PowerShockFX), LVar0, LVar1, LVar2) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_47) + EVT_CALL(AddBattleCamZoom, 100) + EVT_CALL(MoveBattleCamOver, 5) + EVT_THREAD + EVT_CALL(N(PowerShockDischargeFX), 20) + EVT_END_THREAD + EVT_LOOP(3) + EVT_CALL(N(SetBackgroundAlpha), 0) + EVT_WAIT(1) + EVT_CALL(N(SetBackgroundAlpha), 200) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(N(SetBackgroundAlpha), 0) + EVT_WAIT(10) + EVT_CALL(N(WattFXEnable)) + EVT_CALL(N(WattFXSetEffect), 0) + EVT_THREAD + EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 20, 0) + EVT_SETF(LVar0, EVT_FLOAT(2.2)) + EVT_LOOP(12) + EVT_SUBF(LVar0, EVT_FLOAT(0.1)) + EVT_CALL(SetActorScale, ACTOR_PARTNER, LVar0, LVar0, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetActorRotationOffset, ACTOR_SELF, 0, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Idle) + EVT_END_THREAD + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_WAIT(15) + EVT_EXEC_WAIT(N(returnHome)) + EVT_RETURN + EVT_END_IF + EVT_CALL(GetActionResult, LVarF) + EVT_CALL(GetActionCommandResult, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_GT(0) + EVT_CALL(PartnerAfflictEnemy, LVar0, DAMAGE_TYPE_ELECTRIC | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_STATUS_ALWAYS_HITS, 0, STATUS_FLAG_100 | STATUS_FLAG_200 | STATUS_FLAG_PARALYZE | STATUS_FLAG_RIGHT_ON | STATUS_FLAG_80000000, 254, 0, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_CASE_DEFAULT + EVT_CALL(PartnerAfflictEnemy, LVar0, DAMAGE_TYPE_ELECTRIC | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_STATUS_ALWAYS_HITS, 0, STATUS_FLAG_100 | STATUS_FLAG_200 | STATUS_FLAG_PARALYZE | STATUS_FLAG_RIGHT_ON | STATUS_FLAG_80000000, 255, 0, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE) + EVT_END_SWITCH + EVT_CALL(PartnerYieldTurn) + EVT_IF_NE(LocalFlag(15), 1) + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -25, 10, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 15, -10, 10) + EVT_ELSE + EVT_CALL(AddGoalPos, ACTOR_PARTNER, -25, -10, 0) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 15, -10, 10) + EVT_END_IF + EVT_WAIT(30) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(HIT_RESULT_1) + EVT_CASE_OR_EQ(HIT_RESULT_3) + EVT_EXEC_WAIT(N(returnHome2)) + EVT_END_CASE_GROUP + EVT_CASE_OR_EQ(HIT_RESULT_HIT) + EVT_CASE_OR_EQ(HIT_RESULT_QUAKE_IMMUNE) + EVT_EXEC_WAIT(N(returnHome)) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(8023AE8C) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_WATER_BLOCK) + EVT_CALL(func_802A9000_42A4F0, 1) + EVT_CALL(func_80269344, 0) + EVT_CALL(SetActorFlagBits, ACTOR_PLAYER, ACTOR_FLAG_20000000, 1) + EVT_CALL(UseIdleAnimation, ACTOR_PLAYER, FALSE) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_GotItem) + EVT_WAIT(5) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19) + EVT_CALL(SetBattleCamTarget, -125, 42, 0) + EVT_CALL(SetBattleCamOffsetZ, 0) + EVT_CALL(SetBattleCamZoom, 340) + EVT_CALL(MoveBattleCamOver, 30) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 30) + EVT_WAIT(1) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 60) + EVT_WAIT(1) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 90) + EVT_WAIT(1) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 120) + EVT_WAIT(1) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 150) + EVT_WAIT(1) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 180) + EVT_WAIT(10) + EVT_CALL(func_802A9398_42A888, 0, 100, 3) + EVT_CALL(AddBattleCamZoom, -75) + EVT_CALL(MoveBattleCamOver, 100) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_THREAD + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Strain) + EVT_CALL(N(TurboChargeUnwindWatt), 0) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Run) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 10, -10, 5) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Idle) + EVT_WAIT(10) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 0) + EVT_END_THREAD + EVT_WAIT(30) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_28B) + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 42) + EVT_CALL(N(TurboChargeFX), LVar0, LVar1, LVar2) + EVT_WAIT(59) + EVT_CALL(AddBattleCamZoom, 100) + EVT_CALL(MoveBattleCamOver, 5) + EVT_THREAD + EVT_CALL(PlaySoundAtActor, ACTOR_PLAYER, SOUND_160) + EVT_CALL(SetActorJumpGravity, ACTOR_PLAYER, EVT_FLOAT(1.0)) + EVT_CALL(SetActorSpeed, ACTOR_PLAYER, EVT_FLOAT(1.0)) + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_CALL(SetJumpAnimations, ACTOR_PLAYER, 0, ANIM_Mario_AnimMidairStill, ANIM_Mario_AnimMidair, ANIM_Mario_10009) + EVT_CALL(SetGoalPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_CALL(func_80273444, 20, 0, 0) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_10009) + EVT_WAIT(4) + EVT_CALL(SetAnimation, ACTOR_PLAYER, 0, ANIM_Mario_10002) + EVT_END_THREAD + EVT_WAIT(30) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_CALL(MoveBattleCamOver, 10) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208E) + EVT_CALL(GetActionCommandResult, LVar0) + EVT_CALL(N(ApplyTurboCharge)) + EVT_SET(LVarE, LVarF) + EVT_IF_GT(LVarA, 0) + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 15) + EVT_ADD(LVar1, 35) + EVT_ADD(LVarF, 0) + EVT_CALL(PlayEffect, EFFECT_STAT_CHANGE, LVarF, LVar0, LVar1, LVar2, EVT_FLOAT(1.5), 60, 0, 0, 0, 0, 0, 0, 0) + EVT_WAIT(4) + EVT_END_IF + EVT_IF_EQ(LVar0, 0) + EVT_ELSE + EVT_CALL(ShowVariableMessageBox, 42, 60, LVarA) + EVT_END_IF + EVT_CALL(WaitForMessageBoxDone) + EVT_CALL(SetActorFlagBits, ACTOR_PLAYER, ACTOR_FLAG_20000000, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(8023B450) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_WATER_BLOCK) + EVT_CALL(func_802A9000_42A4F0, 1) + EVT_CALL(func_80269344, 0) + EVT_CALL(UseIdleAnimation, ACTOR_PLAYER, FALSE) + EVT_WAIT(5) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19) + EVT_CALL(SetBattleCamTarget, -125, 42, 0) + EVT_CALL(SetBattleCamOffsetZ, 0) + EVT_CALL(SetBattleCamZoom, 340) + EVT_CALL(MoveBattleCamOver, 30) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 30) + EVT_WAIT(1) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 60) + EVT_WAIT(1) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 90) + EVT_WAIT(1) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 120) + EVT_WAIT(1) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 150) + EVT_WAIT(1) + EVT_CALL(SetActorYaw, ACTOR_PARTNER, 180) + EVT_WAIT(10) + EVT_CALL(func_802A9398_42A888, 0, 100, 3) + EVT_CALL(AddBattleCamZoom, -100) + EVT_CALL(MoveBattleCamOver, 100) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_THREAD + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 1) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Strain) + EVT_CALL(N(TurboChargeUnwindWatt), 1) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Run) + EVT_CALL(SetGoalToHome, ACTOR_PARTNER) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 10, -10, 5) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Idle) + EVT_WAIT(10) + EVT_CALL(EnableActorBlur, ACTOR_PARTNER, 0) + EVT_END_THREAD + EVT_WAIT(30) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_28B) + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 42) + EVT_CALL(N(TurboChargeFX), LVar0, LVar1, LVar2) + EVT_WAIT(59) + EVT_CALL(AddBattleCamZoom, 100) + EVT_CALL(MoveBattleCamOver, 5) + EVT_WAIT(30) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_C) + EVT_CALL(MoveBattleCamOver, 10) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_208E) + EVT_CALL(GetActionCommandResult, LVar0) + EVT_CALL(N(ApplyTurboCharge)) + EVT_SET(LVarE, LVarF) + EVT_IF_GT(LVarA, 0) + EVT_CALL(GetActorPos, ACTOR_PLAYER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 15) + EVT_ADD(LVar1, 35) + EVT_ADD(LVarF, 0) + EVT_CALL(PlayEffect, EFFECT_STAT_CHANGE, LVarF, LVar0, LVar1, LVar2, EVT_FLOAT(1.5), 60, 0, 0, 0, 0, 0, 0, 0) + EVT_WAIT(4) + EVT_END_IF + EVT_IF_EQ(LVar0, 0) + EVT_ELSE + EVT_CALL(ShowVariableMessageBox, 42, 60, LVarA) + EVT_END_IF + EVT_CALL(WaitForMessageBoxDone) + EVT_CALL(SetActorFlagBits, ACTOR_PLAYER, ACTOR_FLAG_20000000, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(turboCharge) = { + EVT_CALL(GetStatusFlags, ACTOR_PLAYER, LVar0) + EVT_IF_FLAG(LVar0, STATUS_FLAG_SLEEP | STATUS_FLAG_FROZEN | STATUS_FLAG_FEAR | STATUS_FLAG_PARALYZE | STATUS_FLAG_DIZZY | STATUS_FLAG_STONE | STATUS_FLAG_STOP) + EVT_EXEC_WAIT(N(8023B450)) + EVT_ELSE + EVT_EXEC_WAIT(N(8023AE8C)) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +s32 D_8023B948_707438[] = { 3, 3, 4, 7, 10, 13, 16, 16, 16, 16, }; + +EvtScript N(megaShock) = { + EVT_CALL(LoadActionCommand, ACTION_COMMAND_MEGA_SHOCK) + EVT_CALL(func_802A9000_42DA10) + EVT_CALL(SetupMashMeter, 1, 100, 0, 0, 0, 0) + EVT_CALL(func_80269344, 0) + EVT_CALL(UseBattleCamPreset, BTL_CAM_PRESET_19) + EVT_CALL(SetBattleCamTarget, -54, 63, 10) + EVT_CALL(SetBattleCamOffsetZ, 15) + EVT_CALL(SetBattleCamZoom, 314) + EVT_CALL(MoveBattleCamOver, 30) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 40) + EVT_ADD(LVar1, 30) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Run) + EVT_CALL(SetGoalPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(FlyToGoal, ACTOR_PARTNER, 20, 0, 10) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Idle) + EVT_CALL(N(UnkBackgroundFunc3)) + EVT_SET(LVar9, 0) + EVT_THREAD + EVT_LOOP(75) + EVT_ADD(LVar9, 3) + EVT_CALL(N(SetBackgroundAlpha), LVar9) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(N(AverageTargetParalyzeChance)) + EVT_CALL(func_802A91A0_42DBB0, 0, 87, 3, LVar0) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 15) + EVT_ADD(LVar2, 5) + EVT_CALL(PlayEffect, EFFECT_SNAKING_STATIC, 0, LVar0, LVar1, LVar2, EVT_FLOAT(1.0), 90, 0, 0, 0, 0, 0, 0, 0) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 12) + EVT_CALL(PlayEffect, EFFECT_RADIAL_SHIMMER, 8, LVar0, LVar1, LVar2, EVT_FLOAT(1.3), 90, 0, 0, 0, 0, 0, 0, 0) + EVT_CALL(AddBattleCamZoom, -100) + EVT_CALL(MoveBattleCamOver, 90) + EVT_CALL(func_8024ECF8, 0, 0, 1) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_StrainBigger) + EVT_CALL(func_8026EA7C, ACTOR_SELF, 1, 10) + EVT_CALL(N(WattFXDisable)) + EVT_CALL(GetActionResult, LVar1) + EVT_WAIT(90) + EVT_CALL(N(SetBackgroundAlpha), 0) + EVT_THREAD + EVT_SET(LVar9, 60) + EVT_LOOP(20) + EVT_SUB(LVar9, 3) + EVT_CALL(N(SetBackgroundAlpha), LVar9) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(func_8026EA7C, ACTOR_SELF, 1, 9) + EVT_CALL(InitTargetIterator) + EVT_THREAD + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 12) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_28C) + EVT_CALL(PlayEffect, EFFECT_FLASHING_BOX_SHOCKWAVE, 2, LVar0, LVar1, LVar2, 0, 0, 0, 0, 0, 0, 0, 0, 0) + EVT_WAIT(10) + EVT_CALL(PlaySoundAtActor, ACTOR_PARTNER, SOUND_2024) + EVT_CALL(PlayEffect, EFFECT_FLASHING_BOX_SHOCKWAVE, 2, LVar0, LVar1, LVar2, 0, 0, 0, 0, 0, 0, 0, 0, 0) + EVT_END_THREAD + EVT_THREAD + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_StrainBiggest) + EVT_WAIT(5) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Strain) + EVT_WAIT(30) + EVT_CALL(SetAnimation, ACTOR_PARTNER, -1, ANIM_BattleWatt_Idle) + EVT_END_THREAD + EVT_THREAD + EVT_CALL(SetBattleCamZoom, 420) + EVT_CALL(SetBattleCamTarget, 6, 63, 10) + EVT_CALL(MoveBattleCamOver, 15) + EVT_WAIT(4) + EVT_SET(LVar0, 6) + EVT_LOOP(30) + EVT_ADD(LVar0, 1) + EVT_CALL(SetBattleCamTarget, LVar0, 63, 10) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_CALL(N(PowerShockDischargeFX), 10) + EVT_END_THREAD + EVT_CALL(GetActionResult, LVar0) + EVT_CALL(GetActorPos, ACTOR_PARTNER, LVar1, LVar2, LVar3) + EVT_ADD(LVar2, 12) + EVT_CALL(N(MegaShockFX), LVar0, LVar1, LVar2, LVar3) + EVT_LOOP(0) + EVT_CALL(SetGoalToTarget, ACTOR_SELF) + EVT_CALL(GetActionCommandResult, LVarF) + EVT_CALL(PartnerTestEnemy, LVar0, 0, ATTACK_EVENT_FLAG_4 | ATTACK_EVENT_FLAG_10, 0, 1, BS_FLAGS1_10) + EVT_IF_EQ(LVar0, HIT_RESULT_MISS) + EVT_GOTO(11) + EVT_END_IF + EVT_IF_EQ(LVarF, 100) + EVT_CALL(PartnerAfflictEnemy, LVar0, DAMAGE_TYPE_ELECTRIC | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS | DAMAGE_TYPE_STATUS_ALWAYS_HITS, 0, STATUS_FLAG_100 | STATUS_FLAG_200 | STATUS_FLAG_PARALYZE | STATUS_FLAG_RIGHT_ON | STATUS_FLAG_80000000, 254, 0, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_ELSE + EVT_CALL(PartnerAfflictEnemy, LVar0, DAMAGE_TYPE_ELECTRIC | DAMAGE_TYPE_NO_CONTACT | DAMAGE_TYPE_NO_OTHER_DAMAGE_POPUPS | DAMAGE_TYPE_STATUS_ALWAYS_HITS, 0, STATUS_FLAG_100 | STATUS_FLAG_200 | STATUS_FLAG_PARALYZE | STATUS_FLAG_RIGHT_ON | STATUS_FLAG_80000000, LVarF, 0, BS_FLAGS1_10 | BS_FLAGS1_SP_EVT_ACTIVE | BS_FLAGS1_40) + EVT_END_IF + EVT_LABEL(11) + EVT_CALL(ChooseNextTarget, 0, LVar0) + EVT_IF_EQ(LVar0, -1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(5) + EVT_END_LOOP + EVT_CALL(N(WattFXEnable)) + EVT_CALL(PartnerYieldTurn) + EVT_WAIT(30) + EVT_CALL(GetActionCommandResult, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_GT(99) + EVT_EXEC_WAIT(N(returnHome2)) + EVT_CASE_DEFAULT + EVT_EXEC_WAIT(N(returnHome)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; diff --git a/src/battle/star/focus/789E60.c b/src/battle/star/focus/789E60.c index b4a906b7a5..1ef55f240f 100644 --- a/src/battle/star/focus/789E60.c +++ b/src/battle/star/focus/789E60.c @@ -326,7 +326,7 @@ EvtScript N(usePower) = { EVT_CALL(ShowMessageBox, 28, 60) EVT_END_SWITCH EVT_CALL(WaitForMessageBoxDone) - EVT_CALL(func_80280818) + EVT_CALL(PartnerYieldTurn) EVT_CALL(SetGoalToHome, ACTOR_PARTNER) EVT_CALL(SetActorSpeed, ACTOR_PARTNER, EVT_FLOAT(8.0)) EVT_CALL(N(UnkStarFunc), 3) diff --git a/src/common/BattleAreaAngleStuff.inc.c b/src/common/CalculateArcsinDeg.inc.c similarity index 53% rename from src/common/BattleAreaAngleStuff.inc.c rename to src/common/CalculateArcsinDeg.inc.c index 48bfb2c355..9d40111a71 100644 --- a/src/common/BattleAreaAngleStuff.inc.c +++ b/src/common/CalculateArcsinDeg.inc.c @@ -1,7 +1,19 @@ #include "common.h" -// TODO: Define the table. -extern f32 N(sinTable)[]; +f32 N(sinTable)[] = { + 0.000000f, 0.017452f, 0.034899f, 0.052336f, 0.069756f, 0.087156f, 0.104528f, 0.121869f, + 0.139173f, 0.156434f, 0.173648f, 0.190809f, 0.207912f, 0.224951f, 0.241922f, 0.258819f, + 0.275637f, 0.292372f, 0.309017f, 0.325568f, 0.342020f, 0.358368f, 0.374607f, 0.390731f, + 0.406737f, 0.422618f, 0.438371f, 0.453990f, 0.469472f, 0.484810f, 0.500000f, 0.515038f, + 0.529919f, 0.544639f, 0.559193f, 0.573576f, 0.587785f, 0.601815f, 0.615661f, 0.629320f, + 0.642788f, 0.656059f, 0.669131f, 0.681998f, 0.694658f, 0.707107f, 0.719340f, 0.731354f, + 0.743145f, 0.754710f, 0.766044f, 0.777146f, 0.788011f, 0.798636f, 0.809017f, 0.819152f, + 0.829038f, 0.838671f, 0.848048f, 0.857167f, 0.866025f, 0.874620f, 0.882948f, 0.891007f, + 0.898794f, 0.906308f, 0.913545f, 0.920505f, 0.927184f, 0.933580f, 0.939693f, 0.945519f, + 0.951057f, 0.956305f, 0.961262f, 0.965926f, 0.970296f, 0.974370f, 0.978148f, 0.981627f, + 0.984808f, 0.987688f, 0.990268f, 0.992546f, 0.994522f, 0.996195f, 0.997564f, 0.998630f, + 0.999391f, 0.999848f, 1.000000f, +}; u32 N(ArcsinDeg)(f32 x, f32 y) { f32 sinAngle = abs(y) / length2D(x, y); @@ -41,7 +53,7 @@ u32 N(ArcsinDeg)(f32 x, f32 y) { return ret; } -ApiStatus N(CalculateRotationZ)(Evt* script, s32 isInitialCall) { +ApiStatus N(CalculateArcsinDeg)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; s32 x1 = evt_get_variable(script, *args++); s32 y1 = evt_get_variable(script, *args++); diff --git a/src/common/anglestuff.inc.c b/src/common/anglestuff.inc.c deleted file mode 100644 index 9b9d4497ea..0000000000 --- a/src/common/anglestuff.inc.c +++ /dev/null @@ -1,19 +0,0 @@ -#include "common.h" - -#include "BattleAreaAngleStuff.inc.c" - -// TODO Merge this file with the included file when all data is disassembled. -f32 N(sinTable)[] = { - 0.000000f, 0.017452f, 0.034899f, 0.052336f, 0.069756f, 0.087156f, 0.104528f, 0.121869f, - 0.139173f, 0.156434f, 0.173648f, 0.190809f, 0.207912f, 0.224951f, 0.241922f, 0.258819f, - 0.275637f, 0.292372f, 0.309017f, 0.325568f, 0.342020f, 0.358368f, 0.374607f, 0.390731f, - 0.406737f, 0.422618f, 0.438371f, 0.453990f, 0.469472f, 0.484810f, 0.500000f, 0.515038f, - 0.529919f, 0.544639f, 0.559193f, 0.573576f, 0.587785f, 0.601815f, 0.615661f, 0.629320f, - 0.642788f, 0.656059f, 0.669131f, 0.681998f, 0.694658f, 0.707107f, 0.719340f, 0.731354f, - 0.743145f, 0.754710f, 0.766044f, 0.777146f, 0.788011f, 0.798636f, 0.809017f, 0.819152f, - 0.829038f, 0.838671f, 0.848048f, 0.857167f, 0.866025f, 0.874620f, 0.882948f, 0.891007f, - 0.898794f, 0.906308f, 0.913545f, 0.920505f, 0.927184f, 0.933580f, 0.939693f, 0.945519f, - 0.951057f, 0.956305f, 0.961262f, 0.965926f, 0.970296f, 0.974370f, 0.978148f, 0.981627f, - 0.984808f, 0.987688f, 0.990268f, 0.992546f, 0.994522f, 0.996195f, 0.997564f, 0.998630f, - 0.999391f, 0.999848f, 1.000000f, -}; diff --git a/src/effects/huff_puff_breath.c b/src/effects/huff_puff_breath.c index 4232344a63..0fcec1d4a8 100644 --- a/src/effects/huff_puff_breath.c +++ b/src/effects/huff_puff_breath.c @@ -13,7 +13,7 @@ void huff_puff_breath_update(EffectInstance* effect); void huff_puff_breath_render(EffectInstance* effect); void huff_puff_breath_appendGfx(void* effect); -EffectInstance* huff_puff_breath_main(s32 arg0, f32 posX, f32 posY, f32 posZ, f32 arg4, f32 arg5, f32 arg6, s32 timeLeft) { +EffectInstance* huff_puff_breath_main(s32 type, f32 posX, f32 posY, f32 posZ, f32 angle, f32 speed, f32 scale, s32 timeLeft) { EffectBlueprint effectBp; EffectInstance* effect; HuffPuffBreathFXData* data; @@ -32,7 +32,7 @@ EffectInstance* huff_puff_breath_main(s32 arg0, f32 posX, f32 posY, f32 posZ, f3 data = effect->data.huffPuffBreath = shim_general_heap_malloc(numParts * sizeof(*data)); ASSERT(data != NULL); - data->unk_00 = arg0; + data->type = type; data->lifeTime = 0; if (timeLeft <= 0) { data->timeLeft = 1000; @@ -40,29 +40,29 @@ EffectInstance* huff_puff_breath_main(s32 arg0, f32 posX, f32 posY, f32 posZ, f3 data->timeLeft = timeLeft; } - data->unk_24 = 0; + data->primA = 0; data->pos.x = posX; data->pos.y = posY; data->pos.z = posZ; - data->unk_4C = arg6; - data->unk_18 = 255; - data->unk_2C = 230; - data->unk_1C = 255; - data->unk_20 = 255; - data->unk_28 = 255; - data->unk_30 = 50; - data->unk_34 = 255; - data->unk_48 = arg4; - data->unk_44 = 0; - data->unk_3C = arg5; - data->unk_38 = shim_rand_int(32); - data->unk_40 = shim_rand_int(16); - data->unk_20 = 150; - data->unk_28 = 215; - data->unk_2C = 210; - data->unk_18 = 255; - data->unk_1C = 255; - data->unk_30 = 10; + data->scale = scale; + data->primR = 255; + data->envG = 230; + data->primG = 255; + data->primB = 255; + data->envR = 255; + data->envB = 50; + data->envA = 255; + data->angle = angle; + data->speedY = 0; + data->speedX = speed; + data->texOffsetX = shim_rand_int(32); + data->texOffsetY = shim_rand_int(16); + data->primB = 150; + data->envR = 215; + data->envG = 210; + data->primR = 255; + data->primG = 255; + data->envB = 10; return effect; } @@ -88,24 +88,24 @@ void huff_puff_breath_update(EffectInstance* effect) { return; } if (data->timeLeft < 16) { - data->unk_24 = data->timeLeft * 16; + data->primA = data->timeLeft * 16; } if (temp_a2 < 16) { - data->unk_24 = (temp_a2 * 16) + 15; + data->primA = (temp_a2 * 16) + 15; } - data->unk_38 += data->unk_3C; - if (data->unk_38 >= 256.0f) { - data->unk_38 -= 256.0f; + data->texOffsetX += data->speedX; + if (data->texOffsetX >= 256.0f) { + data->texOffsetX -= 256.0f; } - if (data->unk_38 < 0.0f) { - data->unk_38 += 256.0f; + if (data->texOffsetX < 0.0f) { + data->texOffsetX += 256.0f; } - data->unk_40 += data->unk_44; - if (data->unk_40 >= 256.0f) { - data->unk_40 -= 256.0f; + data->texOffsetY += data->speedY; + if (data->texOffsetY >= 256.0f) { + data->texOffsetY -= 256.0f; } - if (data->unk_40 < 0.0f) { - data->unk_40 += 256.0f; + if (data->texOffsetY < 0.0f) { + data->texOffsetY += 256.0f; } } @@ -127,10 +127,10 @@ void func_E00DC2FC(void) { void huff_puff_breath_appendGfx(void* effect) { HuffPuffBreathFXData* data = ((EffectInstance*)effect)->data.huffPuffBreath; Camera* camera = &gCameras[gCurrentCameraID]; - s32 unk_24 = data->unk_24; - s32 unk_00 = data->unk_00; - s32 uls = data->unk_38 * 4.0f; - s32 ult = data->unk_40 * 4.0f; + s32 primA = data->primA; + s32 unk_00 = data->type; + s32 uls = data->texOffsetX * 4.0f; + s32 ult = data->texOffsetY * 4.0f; Matrix4f sp18; Matrix4f sp58; @@ -138,16 +138,16 @@ void huff_puff_breath_appendGfx(void* effect) { gSPSegment(gMasterGfxPos++, 0x09, VIRTUAL_TO_PHYSICAL(((EffectInstance*)effect)->graphics->data)); shim_guTranslateF(sp18, data->pos.x, data->pos.y, data->pos.z); - shim_guRotateF(sp58, data->unk_48, 0.0f, 0.0f, 1.0f); + shim_guRotateF(sp58, data->angle, 0.0f, 0.0f, 1.0f); shim_guMtxCatF(sp58, sp18, sp18); - shim_guScaleF(sp58, data->unk_4C, data->unk_4C, data->unk_4C); + shim_guScaleF(sp58, data->scale, data->scale, data->scale); shim_guMtxCatF(sp58, sp18, sp18); shim_guMtxF2L(sp18, &gDisplayContext->matrixStack[gMatrixListPos]); gSPMatrix(gMasterGfxPos++, &gDisplayContext->matrixStack[gMatrixListPos++], G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gSPMatrix(gMasterGfxPos++, camera->unkMatrix, G_MTX_NOPUSH | G_MTX_MUL | G_MTX_MODELVIEW); - gDPSetPrimColor(gMasterGfxPos++, 0, 0, data->unk_18, data->unk_1C, data->unk_20, unk_24); - gDPSetEnvColor(gMasterGfxPos++, data->unk_28, data->unk_2C, data->unk_30, data->unk_34); + gDPSetPrimColor(gMasterGfxPos++, 0, 0, data->primR, data->primG, data->primB, primA); + gDPSetEnvColor(gMasterGfxPos++, data->envR, data->envG, data->envB, data->envA); gSPDisplayList(gMasterGfxPos++, D_E00DC648[unk_00]); gDPSetTileSize(gMasterGfxPos++, G_TX_RENDERTILE, uls, ult, uls + 31 * 4, ult + 15 * 4); gSPDisplayList(gMasterGfxPos++, D_E00DC640[unk_00]); diff --git a/tools/star_rod_idx_to_c.py b/tools/star_rod_idx_to_c.py index 9c87794b0e..b5f60ba3bb 100755 --- a/tools/star_rod_idx_to_c.py +++ b/tools/star_rod_idx_to_c.py @@ -878,8 +878,8 @@ def disassemble(bytes, midx, symbol_map={}, comments=True, romstart=0, namespace out += INDENT + f".statusTable = {read_ptr(d[7], symbol_map)},\n" out += INDENT + f".escapeChance = {d[8]},\n" out += INDENT + f".airLiftChance = {d[9]},\n" - out += INDENT + f".spookChance = {d[10]},\n" - out += INDENT + f".baseStatusChance = {d[11]},\n" + out += INDENT + f".hurricaneChance = {d[10]},\n" + out += INDENT + f".spookChance = {d[11]},\n" out += INDENT + f".upAndAwayChance = {d[12]},\n" out += INDENT + f".spinSmashReq = {d[13]},\n" out += INDENT + f".powerBounceChance = {d[14]},\n" diff --git a/ver/us/asm/data/battle/partner/701590.data.s b/ver/us/asm/data/battle/partner/701590.data.s deleted file mode 100644 index 3e032a7482..0000000000 --- a/ver/us/asm/data/battle/partner/701590.data.s +++ /dev/null @@ -1,72 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80239810_701590 -.word 0x00000001, 0x000C0002, 0x0000000C, 0x000C0000, 0x00000006, 0x000C0018, 0x00000009, 0x000C0000, 0x00000008, 0x000C0000, 0x0000000D, 0x000C0019, 0x00000012, 0x000C0000, 0x00000000 - -dlabel D_8023984C_7015CC -.word 0x00000001, 0x00000000, 0x00000000 - -dlabel D_80239858_7015D8 -.word 0x00000001, 0x00000064, 0x00000002, 0x00000064, 0x00000006, 0x00000064, 0x00000009, 0x00000064, 0x00000007, 0x00000064, 0x00000004, 0x00000064, 0x00000003, 0x00000064, 0x0000000B, 0x00000064, 0x00000005, 0x00000064, 0x0000000A, 0x00000064, 0x00000008, 0x00000064, 0x0000001F, 0x00000000, 0x00000020, 0x00000000, 0x00000025, 0x00000000, 0x00000022, 0x00000000, 0x00000024, 0x00000000, 0x00000023, 0x00000000, 0x00000021, 0x00000000, 0x00000026, 0x00000000, 0x00000027, 0x00000000, 0x00000029, 0x00000000, 0x00000000 - -dlabel D_80239904_701684 -.word 0x00000000, 0x01000000, 0x0B1C00FF, D_80239810_701590, D_8023984C_7015CC, 0x00004000, 0x00000000, 0x00000000, 0x00000000 - -dlabel battle_partner_parakarry -.word 0x00000200, 0x00720063, 0x00010000, D_80239904_701684, D_80239950_7016D0, D_80239858_7015D8, 0x00000000, 0x00045000, 0x26260000, 0xF61E0A1E - -dlabel D_80239950_7016D0 -.word 0x00000043, 0x00000003, BindTakeTurn, 0x00000100, D_80239D68_701AE8, 0x00000043, 0x00000003, BindIdle, 0x00000100, D_802399B0_701730, 0x00000043, 0x00000003, BindHandleEvent, 0x00000100, D_802399C0_701740, 0x00000043, 0x00000003, BindNextTurn, 0x00000100, D_8023A154_701ED4, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802399B0_701730 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802399C0_701740 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000001, CloseActionCommandInfo, 0x00000043, 0x00000003, GetLastEvent, 0x00000100, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000009, 0x0000001D, 0x00000001, 0x0000000A, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000D, 0x00000025, 0x00000002, 0xFE363C82, 0x000C000D, 0x00000046, 0x00000001, D_802977BC, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000D, 0x00000046, 0x00000001, D_80296014, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000017, 0x0000001D, 0x00000001, 0x00000019, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208C, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000D, 0x00000046, 0x00000001, DoPartnerBlock, 0x00000020, 0x00000000, 0x00000016, 0x00000001, 0x0000002A, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000D, 0x00000024, 0x00000002, 0xFE363C82, 0x00000016, 0x00000046, 0x00000001, D_80294FE4, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000D, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000002C, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000F, 0x00000024, 0x00000002, 0xFE363C82, 0x00000016, 0x00000025, 0x00000002, 0xFE363C83, 0x000C0010, 0x00000046, 0x00000001, D_80294C68, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000D, 0x00000046, 0x00000001, D_80296014, 0x0000001D, 0x00000001, 0x0000000E, 0x0000001D, 0x00000001, 0x0000000F, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000F, 0x00000025, 0x00000002, 0xFE363C82, 0x000C0010, 0x00000046, 0x00000001, D_8029621C, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000D, 0x00000046, 0x00000001, D_80296014, 0x00000020, 0x00000000, 0x00000016, 0x00000001, 0x0000002F, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000D, 0x00000024, 0x00000002, 0xFE363C82, 0x00000016, 0x00000046, 0x00000001, D_80295744, 0x00000016, 0x00000001, 0x00000033, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000D, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x00000034, 0x00000025, 0x00000002, 0xFE363C81, 0x000C0002, 0x00000025, 0x00000002, 0xFE363C82, 0x000C0003, 0x00000024, 0x00000002, 0xFE363C83, 0x0000001E, 0x00000046, 0x00000001, DoPartnerRecover, 0x0000001D, 0x00000001, 0x00000018, 0x0000001D, 0x00000001, 0x0000001A, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208C, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000C000C, 0x00000046, 0x00000001, DoPartnerBlock, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C000B, 0x00000020, 0x00000000, 0x0000001C, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239D68_701AE8 -.word 0x00000043, 0x00000002, GetBattlePhase, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000001, 0x00000046, 0x00000001, D_8023A054_701DD4, 0x00000016, 0x00000001, 0x00000000, 0x00000046, 0x00000001, D_80239E70_701BF0, 0x00000016, 0x00000001, 0x00000005, 0x00000046, 0x00000001, D_80239E14_701B94, 0x00000016, 0x00000001, 0x00000003, 0x00000046, 0x00000001, D_8023A064_701DE4, 0x00000016, 0x00000001, 0x00000007, 0x00000046, 0x00000001, D_8023A0A0_701E20, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239E14_701B94 -.word 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000C0013, 0x00000025, 0x00000002, 0xFE363C82, 0x000C0002, 0x00000025, 0x00000002, 0xFE363C83, 0x000C0001, 0x00000046, 0x00000001, D_80294720, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239E70_701BF0 -.word 0x00000043, 0x00000002, func_802694A4, 0x00000001, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000008, 0x00000043, 0x00000001, LoadStarPowerScript, 0x00000046, 0x00000001, 0xFE363C80, 0x00000002, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x00000095, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000002, 0x00000046, 0x00000001, D_8023A4D4_702254, 0x00000016, 0x00000001, 0x00000096, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000002, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000003, 0x00000046, 0x00000001, D_8023A4D4_702254, 0x00000016, 0x00000001, 0x00000097, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000004, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000005, 0x00000046, 0x00000001, D_8023A4D4_702254, 0x00000016, 0x00000001, 0x00000098, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000046, 0x00000001, D_8023AA64_7027E4, 0x00000016, 0x00000001, 0x00000099, 0x00000046, 0x00000001, D_8023AF7C_702CFC, 0x00000016, 0x00000001, 0x0000009A, 0x00000046, 0x00000001, D_8023B6FC_70347C, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A054_701DD4 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A064_701DE4 -.word 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000C0003, 0x00000046, 0x00000001, D_80294AFC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A0A0_701E20 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9280, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000000, 0x00000043, 0x00000003, RunToGoal, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0002, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A154_701ED4 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A164_701EE4 -.word 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000004, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0xFE363C8A, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A801A, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFCE, 0x00000000, 0x00000000, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x0000000F, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0000, 0x00000058, 0x00000000, 0x00000008, 0x00000001, 0x00000004, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000059, 0x00000000, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFE2, 0x00000000, 0x00000000, 0x00000043, 0x00000004, JumpWithBounce, 0x00000100, 0x00000005, 0xF24A8A80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0001, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9A80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000000, 0xFFFFFFFB, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0002, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A30C_70208C -.word 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0xFE363C8A, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A7E80, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFE2, 0x00000000, 0x00000000, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x0000000F, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0000, 0x00000058, 0x00000000, 0x00000008, 0x00000001, 0x00000004, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000059, 0x00000000, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFEC, 0x00000000, 0x00000000, 0x00000043, 0x00000004, JumpWithBounce, 0x00000100, 0x00000005, 0xF24A8A80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0001, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9A80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000000, 0xFFFFFFFB, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0002, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A4B4_702234 -.word 0x00000007, 0x00000006, 0x00000005, 0x00000004, 0x00000003, 0x00000002, 0x00000001, 0x00000000 - -dlabel D_8023A4D4_702254 -.word 0x00000043, 0x00000003, EnableIdleScript, 0x00000100, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000002, LoadActionCommand, 0x00000001, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000002, func_8026919C, D_8023A4B4_702234, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000002, BattleCamTargetActor, 0xFFFFFF81, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFEC, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A8E80, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000000, 0xFFFFFFF6, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0000, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000003, func_802A9120_421B10, 0x00000020, 0x00000003, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00002004, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0014, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x00000000, 0x0000000A, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000005, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000002, 0x00000058, 0x00000000, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0004, 0x00000059, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFE6, 0x00000019, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000014, 0xFFFFFFEC, 0x00000006, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00002005, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000001, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFF6, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0005, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000005, 0x00000000, 0x00000000, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000014, 0x00000000, 0x00000001, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000058, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0001, 0x00000059, 0x00000000, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x00000028, 0x0000000A, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000A, 0xFFFFFFEC, 0x00000004, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000000, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9A80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000000, 0xFFFFFFFB, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0002, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0006, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000000, 0x00000004, 0x00000000, 0xFE363C8F, 0x00000070, 0x0000001C, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000000, 0x00000004, 0x00000000, 0xFE363C8E, 0x00000030, 0x00000023, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00000000, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000000, 0x0000001D, 0x00000001, 0x00000002, 0x00000025, 0x00000002, 0xFE363C8A, 0x000C0017, 0x00000046, 0x00000001, D_8023A30C_70208C, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000003, 0x00000025, 0x00000002, 0xFE363C8A, 0x000C0005, 0x00000046, 0x00000001, D_8023A164_701EE4, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000003, EnableIdleScript, 0x00000100, 0x00000001, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023AA64_7027E4 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0007, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0008, 0x00000043, 0x00000001, func_80238000_6FFD80, 0x00000043, 0x00000002, StopSound, 0x00000311, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00002006, 0x00000043, 0x00000002, GetActionResult, 0xFE363C80, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C8A, 0x00000000, 0x00000014, 0x00000000, 0x00000001, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C8A, 0x00000006, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFFFE, 0x00000013, 0x00000000, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000001, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C000A, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000007, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000001, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x00000032, 0xFFFFFFCE, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C000A, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000007, 0x00000000, 0x00000064, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000000, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000001, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x00000032, 0x00000032, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C000A, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000007, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFE, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000001, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x00000028, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C000A, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000007, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000001, func_80238C88_700A08, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000000, 0x0000009F, 0x00000000, 0xFE363C8F, 0x00000070, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00000110, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x00000023, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000000, 0x0000001D, 0x00000001, 0x00000002, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000025, 0x00000002, 0xFE363C8A, 0x000C000D, 0x00000012, 0x00000000, 0x00000025, 0x00000002, 0xFE363C8A, 0x000C0017, 0x00000013, 0x00000000, 0x00000046, 0x00000001, D_8023A30C_70208C, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000003, 0x00000025, 0x00000002, 0xFE363C8A, 0x000C0008, 0x00000046, 0x00000001, D_8023A164_701EE4, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023AF7C_702CFC -.word 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000001, func_80238CE0_700A60, 0x00000043, 0x00000002, LoadActionCommand, 0x0000000D, 0x00000043, 0x00000002, action_command_jump_CreateHudElements, 0xFE363C80, 0x00000043, 0x00000007, SetupMashMeter, 0x00000001, 0x00000064, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000002, func_80269344, 0x00000000, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000003, GetDistanceToGoal, 0x00000100, 0xFE363C80, 0x0000002A, 0x00000002, 0xFE363C80, 0x00000004, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000008, 0x00000043, 0x00000002, MoveBattleCamOver, 0xFE363C80, 0x00000028, 0x00000002, 0xFE363C80, 0x0000000C, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, func_80269344, 0xFE363C80, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A8E80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000000, 0xFFFFFFFC, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0001, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000000, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFF60, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0015, 0x00000043, 0x00000004, SetAnimationRate, 0x00000100, 0x00000000, 0xF24A8280, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000004, 0x00000000, 0x00000001, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000043, 0x00000001, CloseActionCommandInfo, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000A, 0xFFFFFFF6, 0x0000000C, 0x00000043, 0x00000004, SetAnimationRate, 0x00000100, 0x00000000, 0xF24A9A80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0001, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A8A80, 0x00000043, 0x00000004, SetAnimationRate, 0x00000100, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000003, SetActorYaw, 0xFFFFFF81, 0x000000B4, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0002, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00008000, 0x00000004, 0x00000000, 0x00000000, 0x00000030, 0x00000043, 0x00000001, func_80238CE0_700A60, 0x0000000B, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000005, func_802A9184_428BF4, 0x00000000, 0x00000057, 0x00000003, 0x00000000, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000058, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000002, GetActionResult, 0xFE363C81, 0x0000002A, 0x00000002, 0xFE363C81, 0x0000000A, 0x00000027, 0x00000002, 0xFE363C81, 0x00000001, 0x00000005, 0x00000001, 0x00000058, 0x00000043, 0x00000002, GetActionResult, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C82, 0xFE363C81, 0x00000029, 0x00000002, 0xFE363C82, 0x0000000A, 0x0000000D, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000000, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFFE, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000000A, 0x00000027, 0x00000002, 0xFE363C81, 0x00000001, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000008, 0x00000001, 0x0000005A, 0x00000043, 0x00000002, GetActionSuccessCopy, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000001, CloseActionCommandInfo, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000013, 0x00000000, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000003, 0x00000043, 0x00000003, GetOwnerTarget, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000003, DispatchEvent, 0xFE363C80, 0x00000016, 0x00000043, 0x00000002, func_80238E24_700BA4, 0xFE363C80, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, GetOwnerTarget, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000003, SetBattleFlagBits, 0x01000000, 0x00000001, 0x00000043, 0x00000002, RemoveActor, 0xFE363C80, 0x0000001C, 0x00000000, 0x00000043, 0x00000003, GetOwnerTarget, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000003, DispatchEvent, 0xFE363C80, 0x0000001F, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000005, 0xFFFFFFF6, 0x0000000C, 0x00000043, 0x00000004, SetAnimationRate, 0x00000100, 0x00000000, 0xF24A9A80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0001, 0x00000008, 0x00000001, 0x0000000A, 0x00000023, 0x00000000, 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24AAA80, 0x00000043, 0x00000004, SetAnimationRate, 0x00000100, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0002, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023B6FC_70347C -.word 0x00000043, 0x00000002, LoadActionCommand, 0x0000000E, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000007, SetupMashMeter, 0x00000004, 0x00000019, 0x00000032, 0x0000004B, 0x00000064, 0x00000000, 0x00000043, 0x00000002, func_80269344, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x0000000E, 0x00000043, 0x00000002, BattleCamTargetActor, 0xFFFFFF81, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000046, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000F, 0xFFFFFFFE, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0001, 0x00000043, 0x00000004, action_command_fire_shell_MashActionCommandInit, 0x00000000, 0x0000005A, 0x00000003, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0004, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C80, 0x00000032, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C82, 0x00000028, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000A, 0xFFFFFFF6, 0x0000000A, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000001, 0x00000058, 0x00000000, 0x00000005, 0x00000001, 0x00000005, 0x00000008, 0x00000001, 0x00000012, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x0000000F, PlayEffect, 0x0000001A, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000A, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000058, 0x00000000, 0x00000005, 0x00000001, 0x00000005, 0x00000008, 0x00000001, 0x00000012, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x0000000F, PlayEffect, 0x00000011, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C000A, 0x00000043, 0x00000001, func_802390B4_700E34, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000003, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000002, GetActionResult, 0xFE363C80, 0x00000043, 0x00000001, func_802397C8_701548, 0x00000043, 0x00000001, InitTargetIterator, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, SetGoalToTarget, 0xFFFFFF81, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000014, 0x00000000, 0x00000001, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000004, 0x00000001, 0x0000000B, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000063, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x30000000, 0x00000095, 0x00000000, 0xFE363C8F, 0x00000070, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00000110, 0x0000001C, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x30000000, 0x00000095, 0x00000000, 0xFE363C8F, 0x00000030, 0x00000023, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000003, 0x00000001, 0x0000000B, 0x00000043, 0x00000003, ChooseNextTarget, 0x00000000, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000063, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000004, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000023, 0x00000000, 0x00000058, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, SetActorPos, 0x00000100, 0xFFFFFF38, 0x00000032, 0x00000000, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24AAA80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000C0002, 0x00000059, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000001, func_80280818, 0x00000008, 0x00000001, 0x00000014, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_8023BD60_703AE0 -.double 1.4, 0.0 diff --git a/ver/us/asm/data/battle/partner/704A80.data.s b/ver/us/asm/data/battle/partner/704A80.data.s deleted file mode 100644 index 2134b0ffc9..0000000000 --- a/ver/us/asm/data/battle/partner/704A80.data.s +++ /dev/null @@ -1,84 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80238F90_704A80 -.word 0x00000001, 0x000E0002, 0x0000000C, 0x000E0000, 0x00000006, 0x000E000A, 0x00000009, 0x000E0000, 0x00000008, 0x000E0000, 0x0000000D, 0x000E000F, 0x00000012, 0x000E0000, 0x00000000 - -dlabel D_80238FCC_704ABC -.word 0x00000001, 0x00000000, 0x0000000C, 0x00000063, 0x00000000 - -dlabel D_80238FE0_704AD0 -.word 0x00000001, 0x00000064, 0x00000002, 0x00000064, 0x00000006, 0x00000064, 0x00000009, 0x00000064, 0x00000007, 0x00000064, 0x00000004, 0x00000064, 0x00000003, 0x00000064, 0x0000000B, 0x00000064, 0x00000005, 0x00000064, 0x0000000A, 0x00000064, 0x00000008, 0x00000064, 0x0000001F, 0x00000000, 0x00000020, 0x00000000, 0x00000025, 0x00000000, 0x00000022, 0x00000000, 0x00000024, 0x00000000, 0x00000023, 0x00000000, 0x00000021, 0x00000000, 0x00000026, 0x00000000, 0x00000027, 0x00000000, 0x00000029, 0x00000000, 0x00000000 - -dlabel D_8023908C_704B7C -.word 0x00800000, 0x01000000, 0x0A1600FF, D_80238F90_704A80, D_80238FCC_704ABC, 0x00000080, 0x00000000, 0x00000000, 0x00000000 - -dlabel battle_partner_watt -.word 0x00000200, 0x00740063, 0x00010000, D_8023908C_704B7C, D_802390D8_704BC8, D_80238FE0_704AD0, 0x00000000, 0x00045000, 0x221C0000, 0xF6140A14 - -dlabel D_802390D8_704BC8 -.word 0x00000043, 0x00000003, BindTakeTurn, 0xFFFFFF81, D_80239578_705068, 0x00000043, 0x00000003, BindIdle, 0xFFFFFF81, D_80239138_704C28, 0x00000043, 0x00000003, BindHandleEvent, 0xFFFFFF81, D_80239160_704C50, 0x00000043, 0x00000003, BindNextTurn, 0xFFFFFF81, D_802397BC_7052AC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239138_704C28 -.word 0x0000004B, 0x00000001, 0x00000063, 0x00000043, 0x00000001, func_80238000_703AF0, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239160_704C50 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000001, CloseActionCommandInfo, 0x00000043, 0x00000001, func_802383D4_703EC4, 0x00000043, 0x00000001, func_802383E4_703ED4, 0x00000043, 0x00000002, func_80238408_703EF8, 0x00000000, 0x00000043, 0x00000003, GetLastEvent, 0x00000100, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000009, 0x0000001D, 0x00000001, 0x0000000A, 0x00000025, 0x00000002, 0xFE363C81, 0x000E000C, 0x00000025, 0x00000002, 0xFE363C82, 0x000E000C, 0x00000046, 0x00000001, D_802977BC, 0x00000025, 0x00000002, 0xFE363C81, 0x000E000C, 0x00000046, 0x00000001, D_80296014, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000017, 0x0000001D, 0x00000001, 0x00000019, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208C, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000E000C, 0x00000046, 0x00000001, DoPartnerBlock, 0x00000043, 0x00000001, func_802383C0_703EB0, 0x00000020, 0x00000000, 0x00000016, 0x00000001, 0x0000002A, 0x00000025, 0x00000002, 0xFE363C81, 0x000E000C, 0x00000025, 0x00000002, 0xFE363C82, 0x0000000C, 0x00000046, 0x00000001, D_80294FE4, 0x00000025, 0x00000002, 0xFE363C81, 0x000E000C, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000002C, 0x00000043, 0x00000001, func_802383F8_703EE8, 0x00000025, 0x00000002, 0xFE363C81, 0x000E000D, 0x00000024, 0x00000002, 0xFE363C82, 0x0000000C, 0x00000025, 0x00000002, 0xFE363C83, 0x000E000E, 0x00000046, 0x00000001, D_80294C68, 0x00000043, 0x00000001, func_802383E4_703ED4, 0x00000025, 0x00000002, 0xFE363C81, 0x000E000C, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000000E, 0x00000025, 0x00000002, 0xFE363C81, 0x000E000D, 0x00000025, 0x00000002, 0xFE363C82, 0x000E000E, 0x00000046, 0x00000001, D_8029621C, 0x00000025, 0x00000002, 0xFE363C81, 0x000E000C, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000002F, 0x00000025, 0x00000002, 0xFE363C81, 0x000E000C, 0x00000024, 0x00000002, 0xFE363C82, 0x0000000C, 0x00000046, 0x00000001, D_80295744, 0x00000016, 0x00000001, 0x00000033, 0x00000025, 0x00000002, 0xFE363C81, 0x000E000C, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x00000034, 0x00000043, 0x00000001, func_802383C0_703EB0, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000E0001, 0x00000025, 0x00000002, 0xFE363C82, 0x000E0003, 0x00000024, 0x00000002, 0xFE363C83, 0x00000014, 0x00000046, 0x00000001, DoPartnerRecover, 0x00000043, 0x00000001, func_802383C0_703EB0, 0x00000016, 0x00000001, 0x0000003E, 0x00000043, 0x00000001, func_80238370_703E60, 0x0000001D, 0x00000001, 0x00000018, 0x0000001D, 0x00000001, 0x0000001A, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208C, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000E0013, 0x00000046, 0x00000001, DoPartnerBlock, 0x00000008, 0x00000001, 0x0000000A, 0x00000020, 0x00000000, 0x00000016, 0x00000001, 0x00000040, 0x00000043, 0x00000001, func_802383F8_703EE8, 0x00000016, 0x00000001, 0x00000041, 0x00000043, 0x00000001, func_802383E4_703ED4, 0x0000001C, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239578_705068 -.word 0x00000043, 0x00000002, GetBattlePhase, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000046, 0x00000001, D_802397CC_7052BC, 0x00000016, 0x00000001, 0x00000005, 0x00000046, 0x00000001, D_8023960C_7050FC, 0x00000016, 0x00000001, 0x00000003, 0x00000046, 0x00000001, D_80239684_705174, 0x00000016, 0x00000001, 0x00000007, 0x00000046, 0x00000001, D_802396DC_7051CC, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023960C_7050FC -.word 0x00000043, 0x00000001, func_802383E4_703ED4, 0x00000043, 0x00000002, func_80238408_703EF8, 0x00000001, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000E0008, 0x00000025, 0x00000002, 0xFE363C82, 0x000E0002, 0x00000025, 0x00000002, 0xFE363C83, 0x000E0001, 0x00000046, 0x00000001, D_80294720, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239684_705174 -.word 0x00000043, 0x00000001, func_802383E4_703ED4, 0x00000043, 0x00000002, func_80238408_703EF8, 0x00000001, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000E0003, 0x00000046, 0x00000001, D_80294AFC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802396DC_7051CC -.word 0x00000043, 0x00000001, func_802383E4_703ED4, 0x00000043, 0x00000002, func_80238408_703EF8, 0x00000001, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9280, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0003, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000000, 0x00000043, 0x00000003, RunToGoal, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0001, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000043, 0x00000002, func_80238408_703EF8, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802397BC_7052AC -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802397CC_7052BC -.word 0x00000043, 0x00000002, func_802694A4, 0x00000001, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000008, 0x00000043, 0x00000001, LoadStarPowerScript, 0x00000046, 0x00000001, 0xFE363C80, 0x00000002, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x000000A1, 0x00000046, 0x00000001, D_80239BC8_7056B8, 0x00000016, 0x00000001, 0x000000A2, 0x00000046, 0x00000001, D_80239BC8_7056B8, 0x00000016, 0x00000001, 0x000000A3, 0x00000046, 0x00000001, D_80239BC8_7056B8, 0x00000016, 0x00000001, 0x000000A4, 0x00000046, 0x00000001, D_8023A684_706174, 0x00000016, 0x00000001, 0x000000A5, 0x00000046, 0x00000001, D_8023B8EC_7073DC, 0x00000016, 0x00000001, 0x000000A6, 0x00000046, 0x00000001, D_8023B970_707460, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239914_705404 -.word 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000004, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239990_705480 -.word 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239A0C_7054FC -.word 0x00000000 - -dlabel D_80239A10_705500 -.word 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000014, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239A54_705544 -.word 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0005, 0x00000043, 0x00000001, func_802383F8_703EE8, 0x00000043, 0x00000004, PlayLoopingSoundAtActor, 0x00000100, 0x00000000, 0x00000289, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000C, 0x00000043, 0x00000004, func_802384B0_703FA0, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000001, battle_partner_watt_UnkBackgroundFunc3, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0006, 0x00000005, 0x00000001, 0x00000037, 0x00000027, 0x00000002, 0xFE363C89, 0x0000001E, 0x0000000D, 0x00000002, 0xFE363C89, 0x000000C8, 0x00000024, 0x00000002, 0xFE363C89, 0x000000C8, 0x00000013, 0x00000000, 0x00000043, 0x00000002, battle_partner_watt_SetBackgroundAlpha, 0xFE363C89, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000004, func_8026EA7C, 0xFFFFFF81, 0x00000001, 0x00000009, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239B98_705688 -.word 0x00000005, 0x00000001, 0x0000001E, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239BC8_7056B8 -.word 0x00000043, 0x00000002, LoadActionCommand, 0x0000000C, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000007, SetupMashMeter, 0x00000001, 0x00000064, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000030, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFEC, 0x00000000, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000005, 0x00000001, 0x0000003C, 0x00000043, 0x00000003, CheckButtonDown, 0x00008000, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000004B, 0x0000000A, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000043, 0x00000005, action_command_body_slam_MashActionCommandInit, 0x00000000, 0x00000066, 0x00000003, 0x00000001, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000045, 0x00000002, D_80239A10_705500, 0xFE363C8A, 0x00000005, 0x00000001, 0x00000014, 0x00000043, 0x00000003, CheckButtonDown, 0x00008000, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000049, 0x00000001, 0xFE363C8A, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000004, 0x00000000, 0x00000001, 0x00000010, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000045, 0x00000002, D_80239A54_705544, 0xFE363C8A, 0x00000005, 0x00000001, 0x00000037, 0x00000043, 0x00000003, CheckButtonDown, 0x00008000, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000049, 0x00000001, 0xFE363C8A, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000045, 0x00000002, D_80239B98_705688, 0xFE363C8A, 0x00000005, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, CheckButtonDown, 0x00008000, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000049, 0x00000001, 0xFE363C8A, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000045, 0x00000002, D_80239A10_705500, 0xFE363C8A, 0x00000005, 0x00000001, 0x00000014, 0x00000043, 0x00000003, CheckButtonDown, 0x00008000, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000043, 0x00000005, action_command_body_slam_MashActionCommandInit, 0x00000000, 0x0000005C, 0x00000003, 0x00000001, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E282, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000049, 0x00000001, 0xFE363C8A, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000004, 0x00000000, 0x00000001, 0x00000010, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000045, 0x00000002, D_80239A54_705544, 0xFE363C8A, 0x00000005, 0x00000001, 0x00000037, 0x00000043, 0x00000003, CheckButtonDown, 0x00008000, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000043, 0x00000005, action_command_body_slam_MashActionCommandInit, 0x00000000, 0x0000005C, 0x00000003, 0x00000001, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E282, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000049, 0x00000001, 0xFE363C8A, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000045, 0x00000002, D_80239B98_705688, 0xFE363C8A, 0x00000005, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, CheckButtonDown, 0x00008000, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000049, 0x00000001, 0xFE363C8A, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000001, CloseActionCommandInfo, 0x00000043, 0x00000001, func_80238570_704060, 0x00000043, 0x00000003, StopLoopingSoundAtActor, 0x00000100, 0x00000000, 0x00000043, 0x00000002, func_80269EAC, 0x00000013, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0005, 0x00000043, 0x00000004, func_8026EA7C, 0xFFFFFF81, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFFB, 0x00000000, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000005, 0x00000000, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000002, battle_partner_watt_SetBackgroundAlpha, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000004, 0x00000000, 0x00000001, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0001, 0x00000057, 0x00000000, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x00000028, 0x0000000A, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000A, 0xFFFFFFEC, 0x00000004, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, func_802383E4_703ED4, 0x00000043, 0x00000001, func_802383C0_703EB0, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x000000A1, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000003, 0x00000016, 0x00000001, 0x000000A2, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000004, 0x00000016, 0x00000001, 0x000000A3, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000005, 0x00000023, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x08000020, 0x0000008D, 0x00000000, 0xFE363C8F, 0x00000070, 0x0000001C, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x08000020, 0x0000008D, 0x00000000, 0xFE363C8E, 0x00000030, 0x00000023, 0x00000000, 0x00000043, 0x00000001, func_80280818, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000003, 0x00000046, 0x00000001, D_80239914_705404, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000000, 0x0000001D, 0x00000001, 0x00000002, 0x00000046, 0x00000001, D_80239990_705480, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A684_706174 -.word 0x00000043, 0x00000002, LoadActionCommand, 0x00000010, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000007, SetupMashMeter, 0x00000001, 0x00000064, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000002, func_80269344, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E28F, 0x00000000, 0x00000043, 0x00000003, GetOwnerTarget, 0xFE363C8A, 0xFE363C8B, 0x00000043, 0x00000003, GetActorFlags, 0xFE363C8A, 0xFE363C80, 0x00000010, 0x00000002, 0xFE363C80, 0x00000800, 0x00000024, 0x00000002, 0xFBD3E28F, 0x00000001, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x0000002F, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000028, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0003, 0x00000043, 0x00000002, func_80238408_703EF8, 0x00000001, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFF1, 0xFFFFFFF6, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0001, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000004, 0x00000000, 0x00000001, 0x00000010, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFF9C, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000050, 0x00000043, 0x00000001, func_802383F8_703EE8, 0x00000043, 0x00000001, func_80238784_704274, 0x00000043, 0x00000005, func_802A9210_42D120, 0x00000000, 0x00000048, 0x00000003, 0xFE363C80, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C82, 0x00000005, 0x00000043, 0x0000000F, PlayEffect, 0x00000057, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A7E80, 0x0000004B, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000001, battle_partner_watt_UnkBackgroundFunc3, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0006, 0x00000043, 0x00000004, func_8026EA7C, 0xFFFFFF81, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C89, 0x00000003, 0x00000043, 0x00000002, battle_partner_watt_SetBackgroundAlpha, 0xFE363C89, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000004B, 0x00000043, 0x00000004, func_8026EA7C, 0xFFFFFF81, 0x00000001, 0x00000009, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000028A, 0x00000056, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000005, 0x00000001, 0x00000003, 0x0000002C, 0x00000002, 0xFE363C80, 0xF24A7C1A, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xFE363C80, 0xFE363C80, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000008, 0x00000043, 0x0000000F, PlayEffect, 0x0000006B, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A81B4, 0x0000001E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000014, 0x00000027, 0x00000002, 0xFE363C82, 0x00000005, 0x00000043, 0x00000004, func_8023859C_70408C, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000002, UseBattleCamPreset, 0x0000002F, 0x00000043, 0x00000002, AddBattleCamZoom, 0x00000064, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000056, 0x00000000, 0x00000043, 0x00000002, func_80238668_704158, 0x00000014, 0x00000057, 0x00000000, 0x00000005, 0x00000001, 0x00000003, 0x00000043, 0x00000002, battle_partner_watt_SetBackgroundAlpha, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000002, battle_partner_watt_SetBackgroundAlpha, 0x000000C8, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000002, battle_partner_watt_SetBackgroundAlpha, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, func_802383E4_703ED4, 0x00000043, 0x00000002, func_80238408_703EF8, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000005, SetActorRotationOffset, 0xFFFFFF81, 0x00000000, 0x00000014, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A834D, 0x00000005, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xFE363C80, 0xF24A7AE7, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xFE363C80, 0xFE363C80, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetActorRotationOffset, 0xFFFFFF81, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0001, 0x00000057, 0x00000000, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000004, 0x00000000, 0x00000001, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000008, 0x00000001, 0x0000000F, 0x00000046, 0x00000001, D_80239990_705480, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetActionResult, 0xFE363C8F, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000000, 0x00000043, 0x00000008, PartnerAfflictEnemy, 0xFE363C80, 0x50000020, 0x00000000, 0xC0010300, 0x000000FE, 0x00000000, 0x00000070, 0x0000001C, 0x00000000, 0x00000043, 0x00000008, PartnerAfflictEnemy, 0xFE363C80, 0x50000020, 0x00000000, 0xC0010300, 0x000000FF, 0x00000000, 0x00000030, 0x00000023, 0x00000000, 0x00000043, 0x00000001, func_80280818, 0x0000000B, 0x00000002, 0xFBD3E28F, 0x00000001, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFE7, 0x0000000A, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000F, 0xFFFFFFF6, 0x0000000A, 0x00000012, 0x00000000, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFE7, 0xFFFFFFF6, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000F, 0xFFFFFFF6, 0x0000000A, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000003, 0x00000046, 0x00000001, D_80239914_705404, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000000, 0x0000001D, 0x00000001, 0x00000002, 0x00000046, 0x00000001, D_80239990_705480, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023AE8C_70697C -.word 0x00000043, 0x00000002, LoadActionCommand, 0x00000016, 0x00000043, 0x00000002, action_command_jump_CreateHudElements, 0x00000001, 0x00000043, 0x00000002, func_80269344, 0x00000000, 0x00000043, 0x00000004, SetActorFlagBits, 0x00000000, 0x20000000, 0x00000001, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x0001001F, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000013, 0x00000043, 0x00000004, SetBattleCamTarget, 0xFFFFFF83, 0x0000002A, 0x00000000, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000000, 0x00000043, 0x00000002, SetBattleCamZoom, 0x00000154, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x0000001E, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x0000003C, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x0000005A, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000078, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000096, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x000000B4, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, func_802A9398_42A888, 0x00000000, 0x00000064, 0x00000003, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFB5, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000064, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000056, 0x00000000, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000001, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0005, 0x00000043, 0x00000002, func_80238810_704300, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0003, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000A, 0xFFFFFFF6, 0x00000005, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0001, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000028B, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x0000002A, 0x00000043, 0x00000004, func_80238B3C_70462C, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x0000003B, 0x00000043, 0x00000002, AddBattleCamZoom, 0x00000064, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000056, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000000, 0x00000160, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000003, SetActorSpeed, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, SetJumpAnimations, 0x00000000, 0x00000000, 0x00010007, 0x00010008, 0x00010009, 0x00000043, 0x00000005, SetGoalPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, func_80273444, 0x00000014, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x00010009, 0x00000008, 0x00000001, 0x00000004, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x00010002, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000000A, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208E, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000043, 0x00000001, func_80238C08_7046F8, 0x00000024, 0x00000002, 0xFE363C8E, 0xFE363C8F, 0x0000000D, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C81, 0x00000023, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000056, 0xFE363C8F, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A8080, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000004, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000004, ShowVariableMessageBox, 0x0000002A, 0x0000003C, 0xFE363C8A, 0x00000013, 0x00000000, 0x00000043, 0x00000001, WaitForMessageBoxDone, 0x00000043, 0x00000004, SetActorFlagBits, 0x00000000, 0x20000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023B450_706F40 -.word 0x00000043, 0x00000002, LoadActionCommand, 0x00000016, 0x00000043, 0x00000002, action_command_jump_CreateHudElements, 0x00000001, 0x00000043, 0x00000002, func_80269344, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000013, 0x00000043, 0x00000004, SetBattleCamTarget, 0xFFFFFF83, 0x0000002A, 0x00000000, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000000, 0x00000043, 0x00000002, SetBattleCamZoom, 0x00000154, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x0000001E, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x0000003C, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x0000005A, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000078, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000096, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x000000B4, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, func_802A9398_42A888, 0x00000000, 0x00000064, 0x00000003, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFF9C, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000064, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000056, 0x00000000, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000001, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0005, 0x00000043, 0x00000002, func_80238810_704300, 0x00000001, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0003, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000A, 0xFFFFFFF6, 0x00000005, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0001, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000028B, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x0000002A, 0x00000043, 0x00000004, func_80238B3C_70462C, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x0000003B, 0x00000043, 0x00000002, AddBattleCamZoom, 0x00000064, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000000A, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208E, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000043, 0x00000001, func_80238C08_7046F8, 0x00000024, 0x00000002, 0xFE363C8E, 0xFE363C8F, 0x0000000D, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C81, 0x00000023, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000056, 0xFE363C8F, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A8080, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000004, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000004, ShowVariableMessageBox, 0x0000002A, 0x0000003C, 0xFE363C8A, 0x00000013, 0x00000000, 0x00000043, 0x00000001, WaitForMessageBoxDone, 0x00000043, 0x00000004, SetActorFlagBits, 0x00000000, 0x20000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023B8EC_7073DC -.word 0x00000043, 0x00000003, GetStatusFlags, 0x00000000, 0xFE363C80, 0x00000010, 0x00000002, 0xFE363C80, 0x0035D000, 0x00000046, 0x00000001, D_8023B450_706F40, 0x00000012, 0x00000000, 0x00000046, 0x00000001, D_8023AE8C_70697C, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023B948_707438 -.word 0x00000003, 0x00000003, 0x00000004, 0x00000007, 0x0000000A, 0x0000000D, 0x00000010, 0x00000010, 0x00000010, 0x00000010 - -dlabel D_8023B970_707460 -.word 0x00000043, 0x00000002, LoadActionCommand, 0x00000011, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000007, SetupMashMeter, 0x00000001, 0x00000064, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000002, func_80269344, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000013, 0x00000043, 0x00000004, SetBattleCamTarget, 0xFFFFFFCA, 0x0000003F, 0x0000000A, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x0000000F, 0x00000043, 0x00000002, SetBattleCamZoom, 0x0000013A, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000028, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0003, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000014, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0001, 0x00000043, 0x00000001, battle_partner_watt_UnkBackgroundFunc3, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C89, 0x00000003, 0x00000043, 0x00000002, battle_partner_watt_SetBackgroundAlpha, 0xFE363C89, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000001, battle_partner_watt_AverageTargetParalyzeChance, 0x00000043, 0x00000005, func_802A91A0_42DBB0, 0x00000000, 0x00000057, 0x00000003, 0xFE363C80, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C82, 0x00000005, 0x00000043, 0x0000000F, PlayEffect, 0x00000057, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A7E80, 0x0000005A, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000C, 0x00000043, 0x0000000F, PlayEffect, 0x00000033, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A7FB4, 0x0000005A, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFF9C, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000005A, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0006, 0x00000043, 0x00000004, func_8026EA7C, 0xFFFFFF81, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, func_802383F8_703EE8, 0x00000043, 0x00000002, GetActionResult, 0xFE363C81, 0x00000008, 0x00000001, 0x0000005A, 0x00000043, 0x00000002, battle_partner_watt_SetBackgroundAlpha, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C89, 0x0000003C, 0x00000005, 0x00000001, 0x00000014, 0x00000028, 0x00000002, 0xFE363C89, 0x00000003, 0x00000043, 0x00000002, battle_partner_watt_SetBackgroundAlpha, 0xFE363C89, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000004, func_8026EA7C, 0xFFFFFF81, 0x00000001, 0x00000009, 0x00000043, 0x00000001, InitTargetIterator, 0x00000056, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000C, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000028C, 0x00000043, 0x0000000F, PlayEffect, 0x0000004A, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00002024, 0x00000043, 0x0000000F, PlayEffect, 0x0000004A, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0007, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0005, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000E0001, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, SetBattleCamZoom, 0x000001A4, 0x00000043, 0x00000004, SetBattleCamTarget, 0x00000006, 0x0000003F, 0x0000000A, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000000F, 0x00000008, 0x00000001, 0x00000004, 0x00000024, 0x00000002, 0xFE363C80, 0x00000006, 0x00000005, 0x00000001, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000004, SetBattleCamTarget, 0xFE363C80, 0x0000003F, 0x0000000A, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, func_80238668_704158, 0x0000000A, 0x00000057, 0x00000000, 0x00000043, 0x00000002, GetActionResult, 0xFE363C80, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C82, 0x0000000C, 0x00000043, 0x00000005, func_80238C84_704774, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetGoalToTarget, 0xFFFFFF81, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C8F, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000014, 0x00000000, 0x00000001, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000004, 0x00000001, 0x0000000B, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8F, 0x00000064, 0x00000043, 0x00000008, PartnerAfflictEnemy, 0xFE363C80, 0x70000020, 0x00000000, 0xC0010300, 0x000000FE, 0x00000000, 0x00000070, 0x00000012, 0x00000000, 0x00000043, 0x00000008, PartnerAfflictEnemy, 0xFE363C80, 0x70000020, 0x00000000, 0xC0010300, 0xFE363C8F, 0x00000000, 0x00000070, 0x00000013, 0x00000000, 0x00000003, 0x00000001, 0x0000000B, 0x00000043, 0x00000003, ChooseNextTarget, 0x00000000, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000006, 0x00000000, 0x00000043, 0x00000001, func_802383E4_703ED4, 0x00000043, 0x00000001, func_80280818, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000063, 0x00000046, 0x00000001, D_80239914_705404, 0x0000001C, 0x00000000, 0x00000046, 0x00000001, D_80239990_705480, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/battle/partner/708B70.data.s b/ver/us/asm/data/battle/partner/708B70.data.s deleted file mode 100644 index b83d6fc055..0000000000 --- a/ver/us/asm/data/battle/partner/708B70.data.s +++ /dev/null @@ -1,75 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80238ED0_708B70 -.word 0x00000001, 0x000F0002, 0x0000000C, 0x000F0000, 0x00000006, 0x000F0013, 0x00000009, 0x000F0000, 0x00000008, 0x000F0000, 0x0000000D, 0x000F0010, 0x00000012, 0x000F0000, 0x00000000 - -dlabel D_80238F0C_708BAC -.word 0x00000001, 0x00000000, 0x00000000 - -dlabel D_80238F18_708BB8 -.word 0x00000001, 0x00000064, 0x00000002, 0x00000064, 0x00000006, 0x00000064, 0x00000009, 0x00000064, 0x00000007, 0x00000064, 0x00000004, 0x00000064, 0x00000003, 0x00000064, 0x0000000B, 0x00000064, 0x00000005, 0x00000064, 0x0000000A, 0x00000064, 0x00000008, 0x00000064, 0x0000001F, 0x00000000, 0x00000020, 0x00000000, 0x00000025, 0x00000000, 0x00000022, 0x00000000, 0x00000024, 0x00000000, 0x00000023, 0x00000000, 0x00000021, 0x00000000, 0x00000026, 0x00000000, 0x00000027, 0x00000000, 0x00000029, 0x00000000, 0x00000000 - -dlabel D_80238FC4_708C64 -.word 0x00000000, 0x01000000, 0x0C1100FF, D_80238ED0_708B70, D_80238F0C_708BAC, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel battle_partner_sushie -.word 0x00000000, 0x00750063, 0x00010000, D_80238FC4_708C64, D_80239010_708CB0, D_80238F18_708BB8, 0x00000000, 0x00045000, 0x251A0000, 0xF6140A14 - -dlabel D_80239010_708CB0 -.word 0x00000043, 0x00000003, BindTakeTurn, 0xFFFFFF81, D_802393EC_70908C, 0x00000043, 0x00000003, BindIdle, 0xFFFFFF81, D_80239070_708D10, 0x00000043, 0x00000003, BindHandleEvent, 0xFFFFFF81, D_80239080_708D20, 0x00000043, 0x00000003, BindNextTurn, 0xFFFFFF81, D_802395BC_70925C, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239070_708D10 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239080_708D20 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000001, CloseActionCommandInfo, 0x00000043, 0x00000003, GetLastEvent, 0x00000100, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000009, 0x0000001D, 0x00000001, 0x0000000A, 0x00000025, 0x00000002, 0xFE363C81, 0x000F000D, 0x00000025, 0x00000002, 0xFE363C82, 0x000F000D, 0x00000046, 0x00000001, D_802977BC, 0x00000025, 0x00000002, 0xFE363C81, 0x000F000D, 0x00000046, 0x00000001, D_80296014, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000017, 0x0000001D, 0x00000001, 0x00000019, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208C, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000F000D, 0x00000046, 0x00000001, DoPartnerBlock, 0x00000020, 0x00000000, 0x00000016, 0x00000001, 0x0000002A, 0x00000025, 0x00000002, 0xFE363C81, 0x000F000D, 0x00000024, 0x00000002, 0xFE363C82, 0x00000014, 0x00000046, 0x00000001, D_80294FE4, 0x00000025, 0x00000002, 0xFE363C81, 0x000F000D, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000002C, 0x00000025, 0x00000002, 0xFE363C81, 0x000F000E, 0x00000024, 0x00000002, 0xFE363C82, 0x00000014, 0x00000025, 0x00000002, 0xFE363C83, 0x000F000F, 0x00000046, 0x00000001, D_80294C68, 0x00000025, 0x00000002, 0xFE363C81, 0x000F000D, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000000E, 0x00000025, 0x00000002, 0xFE363C81, 0x000F000E, 0x00000025, 0x00000002, 0xFE363C82, 0x000F000F, 0x00000046, 0x00000001, D_8029621C, 0x00000025, 0x00000002, 0xFE363C81, 0x000F000D, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000002F, 0x00000025, 0x00000002, 0xFE363C81, 0x000F000D, 0x00000024, 0x00000002, 0xFE363C82, 0x00000014, 0x00000046, 0x00000001, D_80295744, 0x00000016, 0x00000001, 0x00000033, 0x00000025, 0x00000002, 0xFE363C81, 0x000F000D, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x00000034, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000F0001, 0x00000025, 0x00000002, 0xFE363C82, 0x000F0003, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000046, 0x00000001, DoPartnerRecover, 0x0000001D, 0x00000001, 0x00000018, 0x0000001D, 0x00000001, 0x0000001A, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208C, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000F0014, 0x00000046, 0x00000001, DoPartnerBlock, 0x00000008, 0x00000001, 0x0000000A, 0x00000020, 0x00000000, 0x0000001C, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802393EC_70908C -.word 0x00000043, 0x00000002, GetBattlePhase, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000046, 0x00000001, D_802395CC_70926C, 0x00000016, 0x00000001, 0x00000005, 0x00000046, 0x00000001, D_80239480_709120, 0x00000016, 0x00000001, 0x00000003, 0x00000046, 0x00000001, D_802394CC_70916C, 0x00000016, 0x00000001, 0x00000007, 0x00000046, 0x00000001, D_80239508_7091A8, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239480_709120 -.word 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0011, 0x00000008, 0x00000001, 0x00000024, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802394CC_70916C -.word 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000F0003, 0x00000046, 0x00000001, D_80294AFC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239508_7091A8 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9280, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0003, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000000, 0x00000043, 0x00000003, RunToGoal, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0001, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802395BC_70925C -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802395CC_70926C -.word 0x00000043, 0x00000002, func_802694A4, 0x00000001, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000008, 0x00000043, 0x00000001, LoadStarPowerScript, 0x00000046, 0x00000001, 0xFE363C80, 0x00000002, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x000000A7, 0x00000046, 0x00000001, D_80239DA4_709A44, 0x00000016, 0x00000001, 0x000000A8, 0x00000046, 0x00000001, D_80239DA4_709A44, 0x00000016, 0x00000001, 0x000000A9, 0x00000046, 0x00000001, D_80239DA4_709A44, 0x00000016, 0x00000001, 0x000000AA, 0x00000046, 0x00000001, D_8023AAE0_70A780, 0x00000016, 0x00000001, 0x000000AB, 0x00000046, 0x00000001, D_8023B194_70AE34, 0x00000016, 0x00000001, 0x000000AC, 0x00000046, 0x00000001, D_8023B974_70B614, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239714_7093B4 -.word 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000004, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0006, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C80, 0x0000003C, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A801A, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000014, 0x00000000, 0x00000001, 0x00000000, 0x00000028, 0x00000002, 0xFE363C80, 0x0000001E, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000008, 0x00000000, 0x00000001, 0x00000000, 0x00000028, 0x00000002, 0xFE363C80, 0x00000014, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000006, 0x00000000, 0x00000001, 0x00000000, 0x00000028, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000004, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0001, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9280, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0003, 0x00000043, 0x00000003, RunToGoal, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239938_7095D8 -.word 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0006, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C80, 0x0000000F, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A7C1A, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000008, 0x00000000, 0x00000001, 0x00000000, 0x00000028, 0x00000002, 0xFE363C80, 0x00000005, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000004, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0001, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9280, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0003, 0x00000043, 0x00000003, RunToGoal, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239AE0_709780 -.word 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000004, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239B68_709808 -.word 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239BF0_709890 -.word 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000028, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, GetGoalPos, 0xFFFFFF81, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A8A80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0003, 0x00000043, 0x00000003, RunToGoal, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239CBC_70995C -.word 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, GetGoalPos, 0x00000100, 0xFE363C8B, 0xFE363C8C, 0xFE363C8D, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C8C, 0xFE363C8D, 0xFE363C8E, 0x0000000D, 0x00000002, 0xFE363C8B, 0xFE363C8C, 0x00000028, 0x00000002, 0xFE363C8B, 0xFE363C8C, 0x00000012, 0x00000000, 0x00000028, 0x00000002, 0xFE363C8C, 0xFE363C8B, 0x00000024, 0x00000002, 0xFE363C8B, 0xFE363C8C, 0x00000013, 0x00000000, 0x00000028, 0x00000002, 0xFE363C8B, 0x00000014, 0x0000002F, 0x00000002, 0xFE363C8B, 0xF24AA4DB, 0x0000002C, 0x00000002, 0xFE363C8B, 0x0000000F, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C8B, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239DA4_709A44 -.word 0x00000043, 0x00000002, LoadActionCommand, 0x00000002, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000046, 0x00000001, D_80239BF0_709890, 0x00000046, 0x00000001, D_80239CBC_70995C, 0x00000005, 0x00000001, 0x0000001E, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, CheckButtonDown, 0x00040000, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000004, func_802A9258_422258, 0x00000000, 0x00000039, 0x00000003, 0x00000043, 0x00000002, SetActionResult, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0004, 0x00000043, 0x00000002, UseBattleCamPreset, 0x0000003B, 0x00000024, 0x00000002, 0xFE363C80, 0x0000001E, 0x00000005, 0x00000001, 0x0000003C, 0x00000008, 0x00000001, 0x00000001, 0x00000028, 0x00000002, 0xFE363C80, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0008, 0x00000013, 0x00000000, 0x00000043, 0x00000003, CheckButtonDown, 0x00040000, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000057, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0005, 0x00000056, 0x00000000, 0x00000043, 0x00000005, SetActorRotationOffset, 0x00000100, 0x00000000, 0x0000000C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x0000000A, 0x00000027, 0x00000002, 0xFE363C80, 0x00000024, 0x00000043, 0x00000005, SetActorRotation, 0x00000100, 0x00000000, 0x00000000, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetActorRotation, 0x00000100, 0x00000000, 0x00000000, 0x00000014, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x0000000D, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x000000A7, 0x00000008, 0x00000001, 0x0000000D, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7EE7, 0xF24A7EE7, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7EE7, 0xF24A7EE7, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7F4D, 0xF24A7F4D, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7F4D, 0xF24A7F4D, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7FB4, 0xF24A7FB4, 0xF24A7E80, 0x00000016, 0x00000001, 0x000000A8, 0x00000008, 0x00000001, 0x0000000D, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7F1A, 0xF24A7F1A, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7F4D, 0xF24A7F4D, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7FE7, 0xF24A7FE7, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A801A, 0xF24A801A, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A80B4, 0xF24A80B4, 0xF24A7E80, 0x00000016, 0x00000001, 0x000000A9, 0x00000008, 0x00000001, 0x0000000D, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7F4D, 0xF24A7F4D, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7FB4, 0xF24A7FB4, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A8080, 0xF24A8080, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A80E7, 0xF24A80E7, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A81B4, 0xF24A81B4, 0xF24A7E80, 0x00000023, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x000000A7, 0x00000008, 0x00000001, 0x0000000D, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000016, 0x00000001, 0x000000A8, 0x00000008, 0x00000001, 0x0000000D, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7EB4, 0xF24A7EB4, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7EE7, 0xF24A7EE7, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7F1A, 0xF24A7F1A, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7F4D, 0xF24A7F4D, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7F80, 0xF24A7F80, 0xF24A7E80, 0x00000016, 0x00000001, 0x000000A9, 0x00000008, 0x00000001, 0x0000000D, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7EE7, 0xF24A7EE7, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7F4D, 0xF24A7F4D, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7FB4, 0xF24A7FB4, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A801A, 0xF24A801A, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A8080, 0xF24A8080, 0xF24A7E80, 0x00000023, 0x00000000, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00002034, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x0000000D, 0x00000002, 0xFE363C80, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0005, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0006, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A80E7, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000014, 0x00000000, 0x00000001, 0x00000000, 0x00000012, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0005, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0006, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A7E80, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000014, 0x00000000, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0007, 0x00000043, 0x00000005, SetActorRotation, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetActorRotationOffset, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x000000A7, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000003, 0x00000016, 0x00000001, 0x000000A8, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000002, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000004, 0x00000016, 0x00000001, 0x000000A9, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000003, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000005, 0x00000023, 0x00000000, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000014, 0x00000000, 0x00000001, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000043, 0x00000002, LandJump, 0x00000100, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x0000000F, 0x00000000, 0x00000000, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000014, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x0000000A, 0x00000000, 0x00000000, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x0000000A, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9280, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0003, 0x00000043, 0x00000003, RunToGoal, 0x00000100, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000057, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000080, 0x00000004, 0x00000000, 0xFE363C8F, 0x00000070, 0x0000001C, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000080, 0x00000004, 0x00000000, 0xFE363C8E, 0x00000030, 0x00000023, 0x00000000, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000000, 0x0000001D, 0x00000001, 0x00000002, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000046, 0x00000001, D_80239938_7095D8, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000003, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000003, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000008, 0x00000046, 0x00000001, D_80239714_7093B4, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023AAE0_70A780 -.word 0x00000043, 0x00000002, LoadActionCommand, 0x0000000F, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000003, GetActorLevel, 0x00000100, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000007, SetupMashMeter, 0x00000003, 0x00000028, 0x0000004B, 0x00000064, 0x00000000, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000007, SetupMashMeter, 0x00000004, 0x00000023, 0x0000003C, 0x00000050, 0x00000064, 0x00000000, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000007, SetupMashMeter, 0x00000005, 0x00000014, 0x00000028, 0x0000003C, 0x00000050, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x0000000D, 0x00000043, 0x00000002, BattleCamTargetActor, 0xFFFFFF81, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000028, 0x00000043, 0x00000001, InitTargetIterator, 0x00000056, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0005, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0006, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A7E80, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x0000000A, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000001, func_80238000_707CA0, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0009, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFB0, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000005A, 0x00000043, 0x00000004, func_802A911C_429E3C, 0x00000000, 0x00000057, 0x00000003, 0x00000005, 0x00000001, 0x0000005A, 0x00000043, 0x00000002, GetActionResult, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, GetActorScale, 0xFFFFFF81, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24A7E80, 0x0000002F, 0x00000002, 0xFE363C81, 0x00000004, 0x0000002D, 0x00000002, 0xFE363C80, 0xFE363C81, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C80, 0x0000002F, 0x00000002, 0xFE363C80, 0x00000064, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7E80, 0x0000002C, 0x00000002, 0xFE363C80, 0xFE363C81, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetActorScale, 0xFFFFFF81, 0xFE363C80, 0xFE363C80, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C8E, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00000297, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000003, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000000A, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x10000004, 0x00000014, 0x00000000, 0x00000001, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F000A, 0x00000043, 0x00000005, SetActorScale, 0xFFFFFF81, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000B, 0x00000043, 0x00000005, GetGoalPos, 0x00000100, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000001, func_802382A4_707F44, 0x00000043, 0x0000000F, PlayEffect, 0x00000059, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0xFE363C8E, 0x0000000A, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000046, 0x00000001, D_80239B68_709808, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F000A, 0x00000056, 0x00000000, 0x00000043, 0x00000001, func_802381EC_707E8C, 0x00000057, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000B, 0x00000043, 0x00000005, GetGoalPos, 0x00000100, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x0000000F, PlayEffect, 0x00000059, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0xFE363C8E, 0x0000000A, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, GetActionResult, 0xFE363C80, 0x00000043, 0x00000001, func_80238114_707DB4, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x10000004, 0x00000212, 0x00000000, 0xFE363C8F, 0x00000070, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00000110, 0x0000001C, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x10000004, 0x00000212, 0x00000000, 0xFE363C8F, 0x00000030, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00000110, 0x00000023, 0x00000000, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000000, 0x0000001D, 0x00000001, 0x00000002, 0x00000046, 0x00000001, D_80239B68_709808, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000003, 0x00000046, 0x00000001, D_80239AE0_709780, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023B194_70AE34 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000013, 0x00000043, 0x00000004, SetBattleCamTarget, 0xFFFFFFA1, 0x0000001A, 0x0000000A, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x0000000B, 0x00000043, 0x00000002, SetBattleCamZoom, 0x000000EE, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0009, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A7E80, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x0000001E, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x0000000A, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, LoadActionCommand, 0x00000016, 0x00000043, 0x00000002, action_command_jump_CreateHudElements, 0x00000000, 0x00000043, 0x00000002, func_80269344, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x00000004, 0x00000027, 0x00000002, 0xFE363C80, 0x0000002D, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000004, 0x00000043, 0x00000004, func_802A9398_42A888, 0x00000000, 0x00000064, 0x00000003, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F000B, 0x00000008, 0x00000001, 0x0000006E, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F000C, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000013, 0x00000043, 0x00000004, SetBattleCamTarget, 0xFFFFFFA1, 0x0000001B, 0x0000000A, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x0000000B, 0x00000043, 0x00000002, SetBattleCamZoom, 0x00000115, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000000A, 0x00000056, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00000298, 0x00000043, 0x00000001, func_80238388_708028, 0x00000008, 0x00000001, 0x00000041, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0011, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000002D, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000053, 0x00000043, 0x0000000F, PlayEffect, 0x0000005B, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A7E80, 0x00000032, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00002035, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000064, 0x00000043, 0x0000000F, PlayEffect, 0x00000011, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000032, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000028, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x0000000F, PlayEffect, 0x00000011, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000032, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000028, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x0000000F, PlayEffect, 0x00000011, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000032, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000028, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x0000000F, PlayEffect, 0x00000011, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000032, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000028, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x0000000F, PlayEffect, 0x00000011, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000032, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000028, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, func_80238480_708120, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000043, 0x00000001, func_80238328_707FC8, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C81, 0x00000023, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000006, 0x00000043, 0x0000000F, PlayEffect, 0x00000056, 0xFE363C8F, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A8080, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000004, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000001, func_80280818, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A7E80, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0003, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x0000000A, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0x000000B4, 0x00000005, 0x00000001, 0x00000004, 0x00000028, 0x00000002, 0xFE363C81, 0x0000002D, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C81, 0x00000006, 0x00000000, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000004, ShowVariableMessageBox, 0x00000026, 0x0000003C, 0xFE363C8A, 0x00000013, 0x00000000, 0x00000043, 0x00000001, WaitForMessageBoxDone, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023B974_70B614 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000002, LoadActionCommand, 0x00000017, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000007, SetupMashMeter, 0x00000005, 0x00000014, 0x0000001E, 0x0000003C, 0x00000050, 0x00000064, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000013, 0x00000043, 0x00000004, SetBattleCamTarget, 0xFFFFFFBF, 0x00000035, 0x0000000A, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000010, 0x00000043, 0x00000002, SetBattleCamZoom, 0x000000D6, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0003, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A7C80, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000005, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A7E80, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x0000001E, 0x00000028, 0x00000000, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x0000000F, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0001, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F000B, 0x00000043, 0x00000004, func_802A9138_42C828, 0x00000000, 0x00000064, 0x00000003, 0x00000043, 0x00000005, SetActorRotationOffset, 0x00000100, 0x00000000, 0x0000000C, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000036, 0x00000005, 0x00000001, 0x00000008, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000007, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0x00000001, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000008, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0x00000001, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0xFFFFFFFE, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000057, 0x00000000, 0x00000005, 0x00000001, 0x00000064, 0x00000043, 0x00000002, GetActionResult, 0xFE363C80, 0x00000043, 0x00000001, func_80238E30_708AD0, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000001, 0x00000043, 0x00000001, func_80238540_7081E0, 0x00000043, 0x00000005, SetActorPos, 0x00000100, 0xFFFFFF24, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000003, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000002, GetActionSuccessCopy, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C8E, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C8F, 0xFE363C80, 0x00000043, 0x00000001, InitTargetIterator, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetGoalToTarget, 0xFFFFFF81, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000014, 0x00000000, 0x00000002, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000014, 0x00000001, 0xFE363C8E, 0x0000001B, 0x00000001, 0x00000006, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x30000004, 0x00000000, 0x00000000, 0xFE363C8F, 0x00000070, 0x0000001C, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x30000004, 0x00000000, 0x00000000, 0xFE363C8F, 0x00000030, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, ChooseNextTarget, 0x00000000, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x00000000, 0x00000096, 0x00000000, 0x00000043, 0x00000005, GetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetActorRotationOffset, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A7E80, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000F0001, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000028, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000100, 0xF24A7D4D, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x00000014, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, JumpToGoal, 0x00000100, 0x0000000A, 0x00000000, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/battle/partner/70DED0.data.s b/ver/us/asm/data/battle/partner/70DED0.data.s deleted file mode 100644 index abdb53f727..0000000000 --- a/ver/us/asm/data/battle/partner/70DED0.data.s +++ /dev/null @@ -1,78 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_8023A1D0_70DEE0 -.word 0x00000001, 0x00100002, 0x0000000D, 0x00100008, 0x00000012, 0x00100000, 0x00000000 - -dlabel D_8023A1EC_70DEFC -.word 0x00000001, 0x00100014, 0x00000000 - -dlabel D_8023A1F8_70DF08 -.word 0x00000001, 0x00000000, 0x00000000 - -dlabel D_8023A204_70DF14 -.word 0x00000001, 0x00000064, 0x00000002, 0x00000064, 0x00000006, 0x00000064, 0x00000009, 0x00000064, 0x00000007, 0x00000064, 0x00000004, 0x00000064, 0x00000003, 0x00000064, 0x0000000B, 0x00000064, 0x00000005, 0x00000064, 0x0000000A, 0x00000064, 0x00000008, 0x00000064, 0x0000001F, 0x00000000, 0x00000020, 0x00000000, 0x00000025, 0x00000000, 0x00000022, 0x00000000, 0x00000024, 0x00000000, 0x00000023, 0x00000000, 0x00000021, 0x00000000, 0x00000026, 0x00000000, 0x00000027, 0x00000000, 0x00000029, 0x00000000, 0x00000000 - -dlabel D_8023A2B0_70DFC0 -.word 0x00000000, 0x01000000, 0x0C1E00FF, D_8023A1D0_70DEE0, D_8023A1F8_70DF08, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00100001, 0x02000000, 0x000000FF, D_8023A1EC_70DEFC, D_8023A1F8_70DF08, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel battle_partner_lakilester -.word 0x00000200, 0x00760063, 0x00020000, D_8023A2B0_70DFC0, D_8023A320_70E030, D_8023A204_70DF14, 0x00000000, 0x00045000, 0x2C280000, 0xF61E0D1F - -dlabel D_8023A320_70E030 -.word 0x00000043, 0x00000003, BindTakeTurn, 0xFFFFFF81, D_8023A6FC_70E40C, 0x00000043, 0x00000003, BindIdle, 0xFFFFFF81, D_8023A380_70E090, 0x00000043, 0x00000003, BindHandleEvent, 0xFFFFFF81, D_8023A390_70E0A0, 0x00000043, 0x00000003, BindNextTurn, 0xFFFFFF81, D_8023A8DC_70E5EC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A380_70E090 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A390_70E0A0 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000001, CloseActionCommandInfo, 0x00000043, 0x00000003, GetLastEvent, 0x00000100, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000009, 0x0000001D, 0x00000001, 0x0000000A, 0x00000025, 0x00000002, 0xFE363C81, 0x0010000A, 0x00000025, 0x00000002, 0xFE363C82, 0x0010000A, 0x00000046, 0x00000001, D_802976E8, 0x00000025, 0x00000002, 0xFE363C81, 0x0010000A, 0x00000046, 0x00000001, D_80296014, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000017, 0x0000001D, 0x00000001, 0x00000019, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208C, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x0010000A, 0x00000046, 0x00000001, DoPartnerBlock, 0x00000020, 0x00000000, 0x00000016, 0x00000001, 0x0000002A, 0x00000025, 0x00000002, 0xFE363C81, 0x0010000A, 0x00000025, 0x00000002, 0xFE363C82, 0x00000014, 0x00000046, 0x00000001, D_80294FE4, 0x00000025, 0x00000002, 0xFE363C81, 0x0010000A, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000002C, 0x00000025, 0x00000002, 0xFE363C81, 0x0010000C, 0x00000024, 0x00000002, 0xFE363C82, 0x00000014, 0x00000025, 0x00000002, 0xFE363C83, 0x0010000D, 0x00000046, 0x00000001, D_80294C68, 0x00000025, 0x00000002, 0xFE363C81, 0x0010000A, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000000E, 0x00000025, 0x00000002, 0xFE363C81, 0x0010000C, 0x00000025, 0x00000002, 0xFE363C82, 0x0010000D, 0x00000046, 0x00000001, D_8029621C, 0x00000025, 0x00000002, 0xFE363C81, 0x0010000A, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000002F, 0x00000025, 0x00000002, 0xFE363C81, 0x0010000A, 0x00000024, 0x00000002, 0xFE363C82, 0x00000014, 0x00000046, 0x00000001, D_80295744, 0x00000016, 0x00000001, 0x00000033, 0x00000025, 0x00000002, 0xFE363C81, 0x0010000A, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x00000034, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x00100002, 0x00000025, 0x00000002, 0xFE363C82, 0x00100003, 0x00000024, 0x00000002, 0xFE363C83, 0x0000000A, 0x00000046, 0x00000001, DoPartnerRecover, 0x0000001D, 0x00000001, 0x00000018, 0x0000001D, 0x00000001, 0x0000001A, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208C, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x0010001A, 0x00000046, 0x00000001, DoPartnerBlock, 0x00000008, 0x00000001, 0x0000000A, 0x00000020, 0x00000000, 0x0000001C, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A6FC_70E40C -.word 0x00000043, 0x00000002, GetBattlePhase, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000046, 0x00000001, D_8023A8EC_70E5FC, 0x00000016, 0x00000001, 0x00000005, 0x00000046, 0x00000001, D_8023A790_70E4A0, 0x00000016, 0x00000001, 0x00000003, 0x00000046, 0x00000001, D_8023A7EC_70E4FC, 0x00000016, 0x00000001, 0x00000007, 0x00000046, 0x00000001, D_8023A828_70E538, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A790_70E4A0 -.word 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x00100007, 0x00000025, 0x00000002, 0xFE363C82, 0x00100002, 0x00000025, 0x00000002, 0xFE363C83, 0x00100002, 0x00000046, 0x00000001, D_80294720, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A7EC_70E4FC -.word 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x00100003, 0x00000046, 0x00000001, D_80294AFC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A828_70E538 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9280, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100003, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000000, 0x00000043, 0x00000003, RunToGoal, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100002, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A8DC_70E5EC -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A8EC_70E5FC -.word 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000002, func_802694A4, 0x00000001, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000008, 0x00000043, 0x00000001, LoadStarPowerScript, 0x00000046, 0x00000001, 0xFE363C80, 0x00000002, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x000000AD, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000046, 0x00000001, D_8023AB84_70E894, 0x00000016, 0x00000001, 0x000000AE, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000046, 0x00000001, D_8023AB84_70E894, 0x00000016, 0x00000001, 0x000000AF, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000046, 0x00000001, D_8023AB84_70E894, 0x00000016, 0x00000001, 0x000000B0, 0x00000046, 0x00000001, D_8023B45C_70F16C, 0x00000016, 0x00000001, 0x000000B1, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000046, 0x00000001, D_8023CC64_710974, 0x00000016, 0x00000001, 0x000000B2, 0x00000046, 0x00000001, D_8023CCC4_7109D4, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023AA70_70E780 -.word 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000004, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000F, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100002, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023AAF8_70E808 -.word 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000F, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100002, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023AB80_70E890 -.word 0x8029370C - -dlabel D_8023AB84_70E894 -.word 0x00000056, 0x00000000, 0x00000043, 0x00000001, func_80238000_70BD10, 0x00000057, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100003, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000028, 0x00000027, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100001, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000013, 0x00000043, 0x00000004, SetBattleCamTarget, 0x0000002F, 0x0000002E, 0x0000000C, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000007, 0x00000043, 0x00000002, SetBattleCamZoom, 0x000001A0, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000003, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000A, 0x00000027, 0x00000002, 0xFE363C82, 0x00000005, 0x00000043, 0x00000006, SetPartPos, 0x00000100, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetPartFlagBits, 0x00000100, 0x00000002, 0x00000001, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0xFFFFFF81, 0x00000002, 0x00100014, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x0010000F, 0x00000005, 0x00000001, 0x00000004, 0x00000027, 0x00000002, 0xFE363C81, 0x00000006, 0x00000043, 0x00000006, SetPartPos, 0x00000100, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000008, 0x00000027, 0x00000002, 0xFE363C81, 0x00000028, 0x00000027, 0x00000002, 0xFE363C82, 0x00000005, 0x00000043, 0x0000000F, PlayEffect, 0x0000006B, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A7E80, 0x00000050, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetActorVar, 0x00000100, 0x00000000, 0x00000001, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x00000028, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0x00000001, 0x00000000, 0x00000000, 0x00000043, 0x00000006, SetPartDispOffset, 0x00000100, 0x00000002, 0x00000001, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000043, 0x00000006, SetPartDispOffset, 0x00000100, 0x00000002, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, GetActorVar, 0x00000100, 0x00000000, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000006, SetPartDispOffset, 0x00000100, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000001, func_8023803C_70BD4C, 0x00000043, 0x00000004, SetActorVar, 0x00000100, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100012, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000014, 0x00000000, 0x00000002, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000024, 0x00000002, 0xFE363C8F, 0xFFFFFFFF, 0x00000013, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000201B, 0x00000014, 0x00000001, 0xFE363C8F, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x00000043, 0x00000004, SetAnimation, 0xFFFFFF81, 0x00000002, 0x00100015, 0x00000043, 0x00000004, SetPartJumpGravity, 0x00000100, 0x00000002, 0xF24A8080, 0x00000024, 0x00000002, 0xFE363C80, 0xFE363C87, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C88, 0x00000024, 0x00000002, 0xFE363C82, 0xFE363C89, 0x00000043, 0x00000007, JumpPartTo, 0x00000100, 0x00000002, 0xFE363C87, 0xFE363C88, 0xFE363C89, 0x00000014, 0x00000043, 0x00000003, LandJumpPart, 0x00000100, 0x00000002, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0xFFFFFF81, 0x00000002, 0x00100015, 0x00000043, 0x00000004, SetPartJumpGravity, 0x00000100, 0x00000002, 0xF24A8080, 0x00000024, 0x00000002, 0xFE363C80, 0xFE363C87, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C88, 0x00000024, 0x00000002, 0xFE363C82, 0xFE363C89, 0x00000043, 0x00000007, JumpPartTo, 0x00000100, 0x00000002, 0xFE363C87, 0xFE363C88, 0xFE363C89, 0x00000014, 0x00000043, 0x00000003, LandJumpPart, 0x00000100, 0x00000002, 0x0000001C, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0xFFFFFF81, 0x00000002, 0x00100015, 0x00000043, 0x00000005, GetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, SetPartJumpGravity, 0x00000100, 0x00000002, 0xF24A8080, 0x00000043, 0x00000007, JumpPartTo, 0x00000100, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000023, 0x00000000, 0x00000056, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000032, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000043, 0x00000004, SetPartJumpGravity, 0x00000100, 0x00000002, 0xF24A8080, 0x00000043, 0x00000007, JumpPartTo, 0x00000100, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000F, 0x00000043, 0x00000005, SetPartFlagBits, 0x00000100, 0x00000002, 0x00000001, 0x00000001, 0x00000057, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x000000AD, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000003, 0x00000016, 0x00000001, 0x000000AE, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000004, 0x00000016, 0x00000001, 0x000000AF, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000005, 0x00000023, 0x00000000, 0x00000014, 0x00000001, 0xFE363C8F, 0x00000019, 0x00000001, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x10010000, 0x00000000, 0x00000000, 0xFE363C8E, 0x00000070, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x00000023, 0x00000000, 0x00000014, 0x00000001, 0xFE363C8F, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000004, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000003, 0x00000046, 0x00000001, D_8023AA70_70E780, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000000, 0x0000001D, 0x00000001, 0x00000002, 0x00000046, 0x00000001, D_8023AAF8_70E808, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023B45C_70F16C -.word 0x00000043, 0x00000002, LoadActionCommand, 0x00000013, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000003, GetActorLevel, 0x00000100, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000007, SetupMashMeter, 0x00000002, 0x00000063, 0x00000064, 0x00000000, 0x00000000, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000007, SetupMashMeter, 0x00000003, 0x00000046, 0x00000063, 0x00000064, 0x00000000, 0x00000000, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000007, SetupMashMeter, 0x00000004, 0x00000028, 0x00000046, 0x00000063, 0x00000064, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000002, func_80269344, 0x0000000A, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000013, 0x00000043, 0x00000004, SetBattleCamTarget, 0x0000002D, 0x0000003C, 0x00000000, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000000, 0x00000043, 0x00000002, SetBattleCamZoom, 0x00000190, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100003, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x0000003C, 0x00000014, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100001, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, GetActorLevel, 0x00000100, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x0000003C, 0x00000016, 0x00000001, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8A, 0x0000003C, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C8A, 0x0000003C, 0x00000023, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C8B, 0xFFFFFFFD, 0x00000043, 0x00000004, func_802A916C_425CBC, 0x00000000, 0xFE363C8B, 0x00000003, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000004, SetActorVar, 0x00000100, 0x00000000, 0x00000000, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E283, 0x00000000, 0x00000005, 0x00000001, 0xFE363C8A, 0x00000043, 0x00000002, GetActionResult, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C89, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0x00000003, 0x00000013, 0x00000000, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000043, 0x00000005, SetPartFlagBits, 0x00000100, 0x00000002, 0x00000001, 0x00000001, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100001, 0x00000016, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C89, 0x00000001, 0x00000022, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetPartFlagBits, 0x00000100, 0x00000002, 0x00000001, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000003, 0x00000027, 0x00000002, 0xFE363C81, 0x00000022, 0x00000027, 0x00000002, 0xFE363C82, 0x00000005, 0x00000043, 0x00000006, SetPartPos, 0x00000100, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x0010000F, 0x00000024, 0x00000002, 0xFE363C89, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x0000000A, 0x00000002, 0xFE363C89, 0x00000000, 0x00000022, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000201B, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000201C, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, func_80238A6C_70C77C, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100013, 0x00000043, 0x00000005, SetPartFlagBits, 0x00000100, 0x00000002, 0x00000001, 0x00000001, 0x00000058, 0x00000000, 0x00000043, 0x00000004, GetActorVar, 0x00000100, 0x00000000, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000004, SetActorVar, 0x00000100, 0x00000000, 0xFE363C80, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000004, GetActorVar, 0x00000100, 0x00000000, 0xFE363C80, 0x00000028, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000004, SetActorVar, 0x00000100, 0x00000000, 0xFE363C80, 0x00000059, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E283, 0x00000001, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetPartFlagBits, 0x00000100, 0x00000002, 0x00000001, 0x00000001, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100001, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetActorVar, 0x00000100, 0x00000000, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x0000000A, 0x00000002, 0xFBD3E283, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000004, 0x00000001, 0x0000000D, 0x00000013, 0x00000000, 0x00000043, 0x00000001, InitTargetIterator, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000014, 0x00000000, 0x00000002, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C8A, 0x00000043, 0x00000001, func_80238B50_70C860, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x30010000, 0x00000000, 0x00000000, 0xFE363C8F, 0x00000070, 0x0000001C, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x30010000, 0x00000000, 0x00000000, 0xFE363C8F, 0x00000030, 0x00000023, 0x00000000, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000004, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x00000006, 0x00000003, 0x00000001, 0x0000000C, 0x00000043, 0x00000003, ChooseNextTarget, 0x00000000, 0xFE363C81, 0x0000000B, 0x00000002, 0xFE363C81, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000003, 0x00000001, 0x0000000D, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000003, 0x00000046, 0x00000001, D_8023AA70_70E780, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000000, 0x0000001D, 0x00000001, 0x00000002, 0x00000046, 0x00000001, D_8023AAF8_70E808, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023BD7C_70FA8C -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00000008, 0x00000000, 0x00000043, 0x00000004, SetActorFlagBits, 0x00000000, 0x20000000, 0x00000001, 0x00000043, 0x00000002, LoadActionCommand, 0x00000016, 0x00000043, 0x00000002, action_command_jump_CreateHudElements, 0x00000002, 0x00000043, 0x00000002, func_80269344, 0x00000032, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000002, UseBattleCamPreset, 0x0000000A, 0x00000043, 0x00000002, BattleCamTargetActor, 0xFFFFFF81, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000011, 0x00000043, 0x00000002, SetBattleCamZoom, 0x0000012C, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000043, 0x00000001, func_8024EDA4, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000028, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x0000000A, 0x00000027, 0x00000002, 0xFE363C80, 0x00000012, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100005, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100004, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFF4, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000D, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFFFB, 0x00000043, 0x00000003, SetActorSpeed, 0x00000000, 0xF24A8A80, 0x00000043, 0x00000003, SetActorJumpGravity, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SetJumpAnimations, 0x00000000, 0x00000000, 0x00010007, 0x00010008, 0x00010020, 0x00000043, 0x00000005, SetGoalPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, func_80273444, 0x00000012, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x00010020, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x00010002, 0x00000043, 0x00000004, func_802A9398_42A888, 0x00000000, 0x00000061, 0x00000003, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFB5, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000064, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000002, AddBattleCamZoom, 0x00000032, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C8A, 0x0000000D, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000001, func_80238C14_70C924, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000201D, 0x00000043, 0x00000001, func_80238C58_70C968, 0x00000043, 0x00000001, func_80238D48_70CA58, 0x00000043, 0x00000004, SetActorFlagBits, 0x00000000, 0x08000000, 0x00000001, 0x00000013, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000000, 0x00000001, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100006, 0x00000056, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000005, 0x00000001, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0xFE363C83, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C84, 0x00000024, 0x00000002, 0xFE363C82, 0xFE363C85, 0x00000043, 0x00000003, RandInt, 0x00000028, 0xFE363C86, 0x00000028, 0x00000002, 0xFE363C86, 0x00000014, 0x00000027, 0x00000002, 0xFE363C80, 0xFE363C86, 0x00000043, 0x00000003, RandInt, 0x0000001E, 0xFE363C86, 0x00000028, 0x00000002, 0xFE363C86, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C81, 0xFE363C86, 0x00000043, 0x0000000F, PlayEffect, 0x00000069, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A7E80, 0x00000014, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000006, SetJumpAnimations, 0x00000000, 0x00000000, 0x00010007, 0x00010008, 0x00010020, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000043, 0x00000005, SetGoalPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000002, PlayerFallToGoal, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100002, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x00010020, 0x00000008, 0x00000001, 0x00000007, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x00010002, 0x00000056, 0x00000000, 0x00000043, 0x00000002, SetGoalToHome, 0x00000000, 0x00000043, 0x00000003, SetActorSpeed, 0x00000000, 0xF24A9A80, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x00010005, 0x00000043, 0x00000002, PlayerRunToGoal, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x00010002, 0x00000043, 0x00000004, SetActorFlagBits, 0x00000000, 0x20000000, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C81, 0x00000028, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000024, 0x00000002, 0xFE363C80, 0x000000B4, 0x00000005, 0x00000001, 0x0000000A, 0x00000028, 0x00000002, 0xFE363C80, 0x00000012, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000008, 0x00000001, 0x0000000A, 0x0000000D, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000003, ShowMessageBox, 0x00000028, 0x0000003C, 0x00000043, 0x00000001, WaitForMessageBoxDone, 0x00000013, 0x00000000, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00000008, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023C588_710298 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000000, 0x00000000, 0x00000043, 0x00000002, LoadActionCommand, 0x00000016, 0x00000043, 0x00000002, action_command_jump_CreateHudElements, 0x00000002, 0x00000043, 0x00000002, func_80269344, 0x00000032, 0x00000043, 0x00000001, func_80238C14_70C924, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000002, UseBattleCamPreset, 0x0000000A, 0x00000043, 0x00000002, BattleCamTargetActor, 0xFFFFFF81, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000000, 0x00000043, 0x00000002, SetBattleCamZoom, 0x0000012C, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000043, 0x00000001, func_8024EDA4, 0x00000008, 0x00000001, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x0000000A, 0x00000027, 0x00000002, 0xFE363C80, 0x00000012, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100005, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000C, 0x00000027, 0x00000002, 0xFE363C81, 0xFFFFFFF9, 0x00000027, 0x00000002, 0xFE363C82, 0x00000005, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000014, 0xFFFFFFF6, 0x0000000A, 0x00000056, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000028, 0x00000043, 0x00000005, SetGoalPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000000, 0x00000014, 0x00000000, 0x0000000A, 0x00000057, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000028, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000014, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, func_802A9398_42A888, 0x00000000, 0x00000061, 0x00000003, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFB5, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000064, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000002, AddBattleCamZoom, 0x00000032, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C8A, 0x0000000D, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000201D, 0x00000043, 0x00000001, func_80238C58_70C968, 0x00000043, 0x00000001, func_80238D48_70CA58, 0x00000013, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000000, 0x00000001, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100006, 0x00000056, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000005, 0x00000001, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0xFE363C83, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C84, 0x00000024, 0x00000002, 0xFE363C82, 0xFE363C85, 0x00000043, 0x00000003, RandInt, 0x00000028, 0xFE363C86, 0x00000028, 0x00000002, 0xFE363C86, 0x00000014, 0x00000027, 0x00000002, 0xFE363C80, 0xFE363C86, 0x00000043, 0x00000003, RandInt, 0x0000001E, 0xFE363C86, 0x00000028, 0x00000002, 0xFE363C86, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C81, 0xFE363C86, 0x00000043, 0x0000000F, PlayEffect, 0x00000069, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A7E80, 0x00000014, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000043, 0x00000005, SetGoalPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, FallToGoal, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100002, 0x00000056, 0x00000000, 0x00000043, 0x00000002, SetGoalToHome, 0x00000000, 0x00000043, 0x00000003, SetActorSpeed, 0x00000000, 0xF24A9A80, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x00010005, 0x00000043, 0x00000002, PlayerRunToGoal, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x00010002, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000014, 0x00000000, 0x0000000A, 0x00000057, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000000B4, 0x00000005, 0x00000001, 0x0000000A, 0x00000028, 0x00000002, 0xFE363C80, 0x00000012, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000008, 0x00000001, 0x0000000A, 0x0000000D, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000003, ShowMessageBox, 0x00000028, 0x0000003C, 0x00000043, 0x00000001, WaitForMessageBoxDone, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023CC64_710974 -.word 0x00000043, 0x00000003, GetStatusFlags, 0x00000000, 0xFE363C80, 0x00000010, 0x00000002, 0xFE363C80, 0x0035D000, 0x00000046, 0x00000001, D_8023C588_710298, 0x00000012, 0x00000000, 0x00000046, 0x00000001, D_8023BD7C_70FA8C, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023CCC0_7109D0 -.word 0x8023D1E8 - -dlabel D_8023CCC4_7109D4 -.word 0x00000043, 0x00000002, LoadActionCommand, 0x00000014, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000007, SetupMashMeter, 0x00000001, 0x00000064, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000002, func_80269344, 0x0000000F, 0x00000043, 0x00000002, func_80269EAC, 0x00000014, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000013, 0x00000043, 0x00000004, SetBattleCamTarget, 0xFFFFFFD3, 0x00000036, 0x00000000, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000000, 0x00000043, 0x00000002, SetBattleCamZoom, 0x00000118, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000028, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100003, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x00000028, 0x00000014, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100001, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000001, func_80238D8C_70CA9C, 0x00000043, 0x00000005, func_802A91A0_42DBB0, 0x00000000, 0x00000093, 0x00000003, 0xFE363C80, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000043, 0x00000005, SetActorRotationOffset, 0x00000100, 0x00000000, 0x00000014, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000013, 0x00000043, 0x00000004, SetBattleCamTarget, 0x00000023, 0x00000036, 0x00000000, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000000, 0x00000043, 0x00000002, SetBattleCamZoom, 0x000001AE, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000096, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00000288, 0x00000056, 0x00000000, 0x00000043, 0x00000001, func_80239140_70CE50, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000002, 0x00000005, 0x00000001, 0x00000096, 0x00000043, 0x00000001, func_8023A1B0_70DEC0, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetActionSuccessCopy, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000064, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000002, GetActionSuccessCopy, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000063, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000004, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000023, 0x00000000, 0x00000043, 0x00000001, InitTargetIterator, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, SetGoalToTarget, 0xFFFFFF81, 0x00000043, 0x00000001, func_8023906C_70CD7C, 0x0000000D, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000056, 0x00000000, 0x00000043, 0x00000001, func_80239F84_70DC94, 0x00000043, 0x00000003, SetBattleFlagBits, 0x01000000, 0x00000001, 0x00000043, 0x00000002, RemoveActor, 0xFE363C8A, 0x00000057, 0x00000000, 0x00000012, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C82, 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000820, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000003, 0x00000001, 0x0000000B, 0x00000043, 0x00000003, ChooseNextTarget, 0x00000000, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000022, 0x00000043, 0x00000005, SetActorRotation, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetActorRotationOffset, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000046, 0x00000001, D_8023AAF8_70E808, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00100002, 0x00000043, 0x00000001, func_8023A19C_70DEAC, 0x00000043, 0x00000001, func_80280818, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/battle/partner/7111F0.data.s b/ver/us/asm/data/battle/partner/7111F0.data.s deleted file mode 100644 index 6f0d09b006..0000000000 --- a/ver/us/asm/data/battle/partner/7111F0.data.s +++ /dev/null @@ -1,69 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80238300_7111F0 -.word 0x00000001, 0x000D0002, 0x0000000C, 0x000D0000, 0x00000006, 0x000D0013, 0x00000009, 0x000D0000, 0x00000008, 0x000D0000, 0x0000000D, 0x000D001A, 0x00000012, 0x000D0000, 0x00000000 - -dlabel D_8023833C_71122C -.word 0x00000001, 0x00000000, 0x00000000 - -dlabel D_80238348_711238 -.word 0x00000001, 0x00000064, 0x00000002, 0x00000064, 0x00000006, 0x00000064, 0x00000009, 0x00000064, 0x00000007, 0x00000064, 0x00000004, 0x00000064, 0x00000003, 0x00000064, 0x0000000B, 0x00000064, 0x00000005, 0x00000064, 0x0000000A, 0x00000064, 0x00000008, 0x00000064, 0x0000001F, 0x00000000, 0x00000020, 0x00000000, 0x00000025, 0x00000000, 0x00000022, 0x00000000, 0x00000024, 0x00000000, 0x00000023, 0x00000000, 0x00000021, 0x00000000, 0x00000026, 0x00000000, 0x00000027, 0x00000000, 0x00000029, 0x00000000, 0x00000000 - -dlabel D_802383F4_7112E4 -.word 0x00000000, 0x01000000, 0x091300FF, D_80238300_7111F0, D_8023833C_71122C, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel battle_partner_bow -.word 0x00000200, 0x00730063, 0x00010000, D_802383F4_7112E4, D_80238440_711330, D_80238348_711238, 0x00000000, 0x00045000, 0x241D0000, 0xF6160A16 - -dlabel D_80238440_711330 -.word 0x00000043, 0x00000003, BindTakeTurn, 0xFFFFFF81, D_8023881C_71170C, 0x00000043, 0x00000003, BindIdle, 0xFFFFFF81, D_802384A0_711390, 0x00000043, 0x00000003, BindHandleEvent, 0xFFFFFF81, D_802384B0_7113A0, 0x00000043, 0x00000003, BindNextTurn, 0xFFFFFF81, D_802389EC_7118DC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802384A0_711390 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802384B0_7113A0 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000001, CloseActionCommandInfo, 0x00000043, 0x00000003, GetLastEvent, 0x00000100, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000009, 0x0000001D, 0x00000001, 0x0000000A, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0015, 0x00000025, 0x00000002, 0xFE363C82, 0x000D0015, 0x00000046, 0x00000001, D_802977BC, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0015, 0x00000046, 0x00000001, D_80296014, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000017, 0x0000001D, 0x00000001, 0x00000019, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208C, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0015, 0x00000046, 0x00000001, DoPartnerBlock, 0x00000020, 0x00000000, 0x00000016, 0x00000001, 0x0000002A, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0015, 0x00000024, 0x00000002, 0xFE363C82, 0x0000000E, 0x00000046, 0x00000001, D_80294FE4, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0015, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000002C, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0016, 0x00000024, 0x00000002, 0xFE363C82, 0x0000000E, 0x00000025, 0x00000002, 0xFE363C83, 0x000D0017, 0x00000046, 0x00000001, D_80294C68, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0015, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000000E, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0016, 0x00000025, 0x00000002, 0xFE363C82, 0x000D0017, 0x00000046, 0x00000001, D_8029621C, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0015, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x0000002F, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0015, 0x00000024, 0x00000002, 0xFE363C82, 0x0000000E, 0x00000046, 0x00000001, D_80295744, 0x00000016, 0x00000001, 0x00000033, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0015, 0x00000046, 0x00000001, D_80296014, 0x00000016, 0x00000001, 0x00000034, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0001, 0x00000025, 0x00000002, 0xFE363C82, 0x000D0003, 0x00000024, 0x00000002, 0xFE363C83, 0x00000014, 0x00000046, 0x00000001, DoPartnerRecover, 0x0000001D, 0x00000001, 0x00000018, 0x0000001D, 0x00000001, 0x0000001A, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000208C, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000D001B, 0x00000046, 0x00000001, DoPartnerBlock, 0x00000008, 0x00000001, 0x0000000A, 0x00000020, 0x00000000, 0x0000001C, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023881C_71170C -.word 0x00000043, 0x00000002, GetBattlePhase, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000046, 0x00000001, D_80238A5C_71194C, 0x00000016, 0x00000001, 0x00000005, 0x00000046, 0x00000001, D_802388B0_7117A0, 0x00000016, 0x00000001, 0x00000003, 0x00000046, 0x00000001, D_802388FC_7117EC, 0x00000016, 0x00000001, 0x00000007, 0x00000046, 0x00000001, D_80238938_711828, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802388B0_7117A0 -.word 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0011, 0x00000008, 0x00000001, 0x00000024, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802388FC_7117EC -.word 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x000D0003, 0x00000046, 0x00000001, D_80294AFC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80238938_711828 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9280, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0003, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000000, 0x00000043, 0x00000003, RunToGoal, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802389EC_7118DC -.word 0x00000043, 0x00000002, GetBattlePhase, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x0000000C, 0x00000043, 0x00000001, func_80238000_710EF0, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000000, 0x00000046, 0x00000001, D_80239F5C_712E4C, 0x00000013, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80238A5C_71194C -.word 0x00000043, 0x00000002, func_802694A4, 0x00000001, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000008, 0x00000043, 0x00000001, LoadStarPowerScript, 0x00000046, 0x00000001, 0xFE363C80, 0x00000002, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x000000B3, 0x00000046, 0x00000001, D_80238F58_711E48, 0x00000016, 0x00000001, 0x000000B4, 0x00000046, 0x00000001, D_80238F58_711E48, 0x00000016, 0x00000001, 0x000000B5, 0x00000046, 0x00000001, D_80238F58_711E48, 0x00000016, 0x00000001, 0x000000B6, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000046, 0x00000001, D_80239B40_712A30, 0x00000016, 0x00000001, 0x000000B7, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000046, 0x00000001, D_8023A0E8_712FD8, 0x00000016, 0x00000001, 0x000000B8, 0x00000046, 0x00000001, D_8023AF38_713E28, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80238BB8_711AA8 -.word 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000004, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x000000C1, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000000C8, 0x00000005, 0x00000001, 0x00000014, 0x00000028, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x000000C3, 0x00000024, 0x00000002, 0xFE363C80, 0x00000037, 0x00000005, 0x00000001, 0x00000014, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0x000000FF, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80238D4C_711C3C -.word 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x000000C1, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000000C8, 0x00000005, 0x00000001, 0x00000014, 0x00000028, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000001E, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x000000C3, 0x00000024, 0x00000002, 0xFE363C80, 0x00000037, 0x00000005, 0x00000001, 0x00000014, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0x000000FF, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80238EE0_711DD0 -.word 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0003, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000F, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80238F58_711E48 -.word 0x00000043, 0x00000002, LoadActionCommand, 0x00000012, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000002, func_80269344, 0x00000000, 0x00000043, 0x00000004, GetMenuSelection, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x000000B3, 0x00000043, 0x00000007, SetupMashMeter, 0x00000004, 0x00000028, 0x00000046, 0x00000063, 0x00000064, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x0000003C, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000001, 0x00000016, 0x00000001, 0x000000B4, 0x00000043, 0x00000007, SetupMashMeter, 0x00000005, 0x00000023, 0x0000003C, 0x00000050, 0x00000063, 0x00000064, 0x00000024, 0x00000002, 0xFE363C8B, 0x0000003C, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000001, 0x00000016, 0x00000001, 0x000000B5, 0x00000043, 0x00000007, SetupMashMeter, 0x00000005, 0x00000023, 0x0000003C, 0x00000050, 0x00000063, 0x00000064, 0x00000024, 0x00000002, 0xFE363C8B, 0x0000003C, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000001, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0xFE363C8B, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFFD, 0x00000043, 0x00000005, action_command_smack_MashActionCommandInit, 0x00000000, 0xFE363C80, 0x00000003, 0x00000000, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x000000C1, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0x00000037, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000056, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0003, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFF1, 0xFFFFFFF6, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000F, 0x00000000, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000057, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x0000000D, 0x00000043, 0x00000002, BattleCamTargetActor, 0xFFFFFF81, 0x00000043, 0x00000002, SetBattleCamZoom, 0x000000B4, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000009, 0x00000043, 0x00000001, func_8024EDA4, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x000000C3, 0x00000024, 0x00000002, 0xFE363C80, 0x00000037, 0x00000005, 0x00000001, 0x00000005, 0x00000027, 0x00000002, 0xFE363C80, 0x00000028, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0x000000FF, 0x00000043, 0x00000002, UseBattleCamPresetImmediately, 0x00000013, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0005, 0x00000008, 0x00000001, 0x00000014, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToTarget, 0xFFFFFF81, 0x00000005, 0x00000001, 0x0000000F, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0xF24A7C80, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0xF24A7880, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C8B, 0x00000043, 0x00000002, func_80269600, 0xFE363C8D, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000014, 0x00000000, 0x00000001, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0007, 0x00000043, 0x00000001, CloseActionCommandInfo, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x00000014, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFD3, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D001A, 0x00000043, 0x00000005, AddActorDecoration, 0xFFFFFF81, 0x00000000, 0x00000000, 0x00000003, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000004, RemoveActorDecoration, 0xFFFFFF81, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000008, 0x00000001, 0x0000000A, 0x00000046, 0x00000001, D_80238D4C_711C3C, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8E, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8E, 0xFE363C8D, 0x00000004, 0x00000001, 0x00000002, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A801A, 0xF24A801A, 0xF24A7E80, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0007, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000043, 0x00000002, func_80269EAC, 0x0000000A, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0008, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000043, 0x00000002, func_80269EAC, 0x0000000B, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000056, 0x00000000, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000002, 0xF24A7C80, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000002, 0xF24A8080, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000001, 0xF24A7C80, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000001, 0xF24A7B4D, 0x00000057, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000043, 0x00000001, func_80238014_710F04, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFE363C80, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000012, 0x00000000, 0x00000043, 0x00000002, AddBattleCamZoom, 0x00000019, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetActorSounds, 0x00000100, 0x00000003, 0x00002019, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8E, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8B, 0x00000063, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000000, 0x00000005, 0x00000000, 0xFE363C8C, 0x00000050, 0x00000012, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000000, 0x00000005, 0x00000000, 0xFE363C8C, 0x00000010, 0x00000013, 0x00000000, 0x00000004, 0x00000001, 0x00000001, 0x00000012, 0x00000000, 0x0000000D, 0x00000002, 0xFE363C8B, 0x00000063, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000000, 0x00000005, 0x00000000, 0xFE363C8C, 0x00000040, 0x00000012, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000000, 0x00000005, 0x00000000, 0xFE363C8C, 0x00000000, 0x00000013, 0x00000000, 0x00000004, 0x00000001, 0x00000001, 0x00000013, 0x00000000, 0x00000003, 0x00000001, 0x00000001, 0x00000008, 0x00000001, 0x00000008, 0x00000027, 0x00000002, 0xFE363C8F, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000004, 0x00000001, 0x00000000, 0x00000003, 0x00000001, 0x00000002, 0x0000000A, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000043, 0x00000001, func_80238014_710F04, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFE363C80, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000012, 0x00000000, 0x00000043, 0x00000002, AddBattleCamZoom, 0x00000019, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A801A, 0xF24A801A, 0xF24A7E80, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0007, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000043, 0x00000002, func_80269EAC, 0x0000000C, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0008, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000043, 0x00000002, func_80269EAC, 0x0000000D, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000043, 0x00000005, SetActorSounds, 0x00000100, 0x00000003, 0x00002019, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000063, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000000, 0x00000005, 0x00000000, 0xFE363C8C, 0x00000060, 0x0000001C, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000000, 0x00000005, 0x00000000, 0xFE363C8C, 0x00000020, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x00000008, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000000, 0x0000001D, 0x00000001, 0x00000002, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000046, 0x00000001, D_80238D4C_711C3C, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000003, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000046, 0x00000001, D_80238BB8_711AA8, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239B40_712A30 -.word 0x00000043, 0x00000004, SetActorFlagBits, 0x00000000, 0x20000000, 0x00000001, 0x00000043, 0x00000004, SetActorFlagBits, 0x00000000, 0x04000000, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000013, 0x00000043, 0x00000004, SetBattleCamTarget, 0xFFFFFF7F, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x0000000F, 0x00000043, 0x00000002, SetBattleCamZoom, 0x00000104, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000028, 0x00000056, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000005, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000A, 0x00000000, 0x0000000A, 0x00000057, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x0000000A, 0x00000027, 0x00000002, 0xFE363C80, 0x00000012, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFE2, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000014, 0x0000001E, 0x0000000A, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000000B4, 0x00000005, 0x00000001, 0x0000000A, 0x00000028, 0x00000002, 0xFE363C80, 0x00000012, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000000FF, 0x00000005, 0x00000001, 0x0000001E, 0x00000028, 0x00000002, 0xFE363C80, 0x00000005, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, func_802380E4_710FD4, 0xFFFFFFF6, 0x00000014, 0x00000027, 0x00000002, 0xFE363C82, 0x00000005, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000014, 0x00000000, 0x00000000, 0x00000043, 0x00000001, battle_partner_bow_IsPartnerImmobile, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x00010014, 0x00000013, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000200E, 0x00000024, 0x00000002, 0xFE363C80, 0x000000FF, 0x00000005, 0x00000001, 0x0000000F, 0x00000028, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000004, SetPartAlpha, 0x00000000, 0x00000001, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000043, 0x00000001, func_8023808C_710F7C, 0x00000043, 0x00000004, SetActorFlagBits, 0x00000000, 0x20000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80239F5C_712E4C -.word 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000200F, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0x00000069, 0x00000005, 0x00000001, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000043, 0x00000004, SetPartAlpha, 0x00000000, 0x00000001, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000069, 0x00000005, 0x00000001, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000001, func_80280818, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000028, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000014, 0x00000000, 0x0000000A, 0x00000043, 0x00000001, func_802381C8_7110B8, 0x00000008, 0x00000001, 0x00000014, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023A0E8_712FD8 -.word 0x00000043, 0x00000002, LoadActionCommand, 0x00000015, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000007, SetupMashMeter, 0x00000001, 0x00000064, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000002, func_80269344, 0x00000014, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x0000000F, 0x00000043, 0x00000002, BattleCamTargetActor, 0xFFFFFF81, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000004, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFF6A, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000001, func_8024EDA4, 0x00000057, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000028, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000A, 0x00000043, 0x00000005, SetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000014, 0x00000000, 0x0000000A, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000002, UseBattleCamPresetImmediately, 0x00000013, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000004A, 0x00000005, 0x00000001, 0x00000008, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0x00000001, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000007, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0x00000002, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0xFFFFFFFE, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000008, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0x00000003, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0xFFFFFFFD, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000001, battle_partner_bow_AverageTargetStatusChance, 0x00000043, 0x00000005, action_command_smack_MashActionCommandInit, 0x00000000, 0x00000057, 0x00000003, 0xFE363C80, 0x00000043, 0x00000002, GetActionResult, 0xFE363C81, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D000C, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x00000000, 0x00000005, 0x00000001, 0x0000005A, 0x00000014, 0x00000001, 0xFE363C81, 0x00000019, 0x00000001, 0x00000050, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000007, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFEC, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xFE363C82, 0x00000008, 0x00000013, 0x00000000, 0x00000019, 0x00000001, 0x00000046, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000006, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFEC, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xFE363C82, 0x00000007, 0x00000013, 0x00000000, 0x00000019, 0x00000001, 0x0000003C, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000005, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFEC, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xFE363C82, 0x00000006, 0x00000013, 0x00000000, 0x00000019, 0x00000001, 0x00000032, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000004, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFEC, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xFE363C82, 0x00000005, 0x00000013, 0x00000000, 0x00000019, 0x00000001, 0x00000028, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000003, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFEC, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xFE363C82, 0x00000004, 0x00000013, 0x00000000, 0x00000019, 0x00000001, 0x0000001E, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000002, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFEC, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xFE363C82, 0x00000003, 0x00000013, 0x00000000, 0x00000019, 0x00000001, 0x00000014, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFEC, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xFE363C82, 0x00000002, 0x00000013, 0x00000000, 0x00000019, 0x00000001, 0x0000000A, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000000, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFFFFFFEC, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000014, 0x00000043, 0x00000004, func_8024ECF8, 0x00000000, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xFE363C82, 0x00000001, 0x00000013, 0x00000000, 0x00000023, 0x00000000, 0x00000027, 0x00000002, 0xFE363C81, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D000E, 0x00000043, 0x00000005, SetActorRotationOffset, 0xFFFFFF81, 0x00000000, 0x0000000C, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000001, 0x00000005, 0x00000001, 0x00000005, 0x00000043, 0x00000003, SetBattleCamParam, 0x00000003, 0x0000006E, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000003, SetBattleCamParam, 0x00000003, 0x00000064, 0x00000008, 0x00000001, 0x00000002, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000000FF, 0x00000005, 0x00000001, 0x0000000F, 0x00000028, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x00000291, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000043, 0x00000002, GetActionResult, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x0000001A, 0x00000001, 0x00000014, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7BB4, 0x0000001A, 0x00000001, 0x00000028, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7C1A, 0x0000001A, 0x00000001, 0x0000003C, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7C80, 0x0000001A, 0x00000001, 0x00000050, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7CE7, 0x0000001C, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7D4D, 0x00000023, 0x00000000, 0x00000005, 0x00000001, 0x00000005, 0x0000002C, 0x00000002, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xFE363C80, 0xFE363C80, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000026, 0x00000002, 0xFE363C8E, 0xFE363C80, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x00000005, 0x00000005, 0x00000001, 0x00000003, 0x0000002D, 0x00000002, 0xFE363C80, 0xF24A7B6C, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xFE363C80, 0xFE363C80, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000003, 0x0000002C, 0x00000002, 0xFE363C80, 0xF24A7B6C, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xFE363C80, 0xFE363C80, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000005, GetActorPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000020, 0x00000043, 0x0000000F, PlayEffect, 0x0000006B, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A81B4, 0x0000002D, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x0000006B, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A7E80, 0x0000002D, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, GetActionResult, 0xFE363C8F, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetGoalToTarget, 0xFFFFFF81, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x00000000, 0x00000014, 0x00000000, 0x00000002, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000002, func_80269EAC, 0x00000012, 0x00000014, 0x00000001, 0xFE363C8F, 0x00000019, 0x00000001, 0x00000063, 0x00000043, 0x00000008, PartnerAfflictEnemy, 0xFE363C80, 0x70000000, 0x00000000, 0x00400000, 0xFE363C8F, 0x00000000, 0x00000070, 0x0000001C, 0x00000000, 0x00000043, 0x00000008, PartnerAfflictEnemy, 0xFE363C80, 0x70000000, 0x00000000, 0x00400000, 0xFE363C8F, 0x00000000, 0x000000B0, 0x00000023, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000003, ChooseNextTarget, 0x00000000, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000063, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000004, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000033, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000069, 0x00000005, 0x00000001, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000002, GetActionResult, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x0000001A, 0x00000001, 0x00000014, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7BB4, 0x0000001A, 0x00000001, 0x00000028, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7C1A, 0x0000001A, 0x00000001, 0x0000003C, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7C80, 0x0000001A, 0x00000001, 0x00000050, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7CE7, 0x0000001C, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7D4D, 0x00000023, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C8E, 0x00000005, 0x00000001, 0x00000005, 0x0000002D, 0x00000002, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xFE363C80, 0xFE363C80, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000046, 0x00000001, D_80238EE0_711DD0, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8023AF38_713E28 -.word 0x00000043, 0x00000002, LoadActionCommand, 0x00000012, 0x00000043, 0x00000001, action_command_jump_CreateHudElements, 0x00000043, 0x00000002, func_80269344, 0x00000000, 0x00000043, 0x00000007, SetupMashMeter, 0x00000005, 0x00000023, 0x0000003C, 0x00000050, 0x00000063, 0x00000064, 0x00000024, 0x00000002, 0xFE363C8B, 0x0000005A, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000002, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0xFE363C8B, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFFD, 0x00000043, 0x00000005, action_command_smack_MashActionCommandInit, 0x00000000, 0xFE363C80, 0x00000003, 0x00000001, 0x00000043, 0x00000003, SetBattleFlagBits, 0x00004000, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x000000C1, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0x00000037, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000056, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0003, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFE7, 0xFFFFFFF6, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000F, 0x00000000, 0x0000000A, 0x00000057, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x0000000D, 0x00000043, 0x00000002, BattleCamTargetActor, 0xFFFFFF81, 0x00000043, 0x00000002, SetBattleCamZoom, 0x000000B4, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000001E, 0x00000043, 0x00000002, SetBattleCamOffsetZ, 0x00000009, 0x00000043, 0x00000001, func_8024EDA4, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x000000C3, 0x00000024, 0x00000002, 0xFE363C80, 0x00000037, 0x00000005, 0x00000001, 0x00000005, 0x00000027, 0x00000002, 0xFE363C80, 0x00000028, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0x00000100, 0xFFFFFFFF, 0x000000FF, 0x00000043, 0x00000002, UseBattleCamPresetImmediately, 0x00000013, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0011, 0x00000008, 0x00000001, 0x00000014, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000002, SetGoalToTarget, 0xFFFFFF81, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0012, 0x00000005, 0x00000001, 0x0000001E, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0xF24A7C80, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetActorDispOffset, 0x00000100, 0xF24A7880, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C8B, 0x00000043, 0x00000002, func_80269600, 0xFE363C8D, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000007, PartnerTestEnemy, 0xFE363C80, 0x10000000, 0x00000095, 0x00000000, 0x00000001, 0x00000010, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000006, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D000A, 0x00000043, 0x00000001, CloseActionCommandInfo, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFD3, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFA6, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D001A, 0x00000043, 0x00000005, AddActorDecoration, 0xFFFFFF81, 0x00000000, 0x00000000, 0x00000003, 0x00000008, 0x00000001, 0x00000028, 0x00000043, 0x00000004, RemoveActorDecoration, 0xFFFFFF81, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000008, 0x00000001, 0x0000000A, 0x00000046, 0x00000001, D_80238D4C_711C3C, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8E, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8E, 0xFE363C8D, 0x00000004, 0x00000001, 0x00000002, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A801A, 0xF24A801A, 0xF24A7E80, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D000A, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000043, 0x00000002, func_80269EAC, 0x0000000E, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D000B, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000043, 0x00000002, func_80269EAC, 0x0000000F, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000056, 0x00000000, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000002, 0xF24A7C80, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000002, 0xF24A8080, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000001, 0xF24A7C80, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000001, 0xF24A7B4D, 0x00000057, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000043, 0x00000001, func_80238014_710F04, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFE363C80, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000012, 0x00000000, 0x00000043, 0x00000002, AddBattleCamZoom, 0x00000019, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000013, 0x00000000, 0x00000043, 0x00000005, GetGoalPos, 0x00000100, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x0000000F, PlayEffect, 0x00000044, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A7E80, 0x00000014, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetActorSounds, 0x00000100, 0x00000003, 0x0000201A, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8E, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8B, 0x00000063, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x10000000, 0x00000095, 0x00000000, 0xFE363C8C, 0x00000050, 0x00000012, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x10000000, 0x00000095, 0x00000000, 0xFE363C8C, 0x00000010, 0x00000013, 0x00000000, 0x00000004, 0x00000001, 0x00000001, 0x00000012, 0x00000000, 0x0000000D, 0x00000002, 0xFE363C8B, 0x00000063, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x10000000, 0x00000095, 0x00000000, 0xFE363C8C, 0x00000040, 0x00000012, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x10000000, 0x00000095, 0x00000000, 0xFE363C8C, 0x00000000, 0x00000013, 0x00000000, 0x00000004, 0x00000001, 0x00000001, 0x00000013, 0x00000000, 0x00000003, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x00000008, 0x00000027, 0x00000002, 0xFE363C80, 0x00000090, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x00000008, 0x00000028, 0x00000002, 0xFE363C80, 0x00000090, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8F, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000004, 0x00000001, 0x00000000, 0x00000003, 0x00000001, 0x00000002, 0x00000056, 0x00000000, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000002, 0xF24A7C80, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000002, 0xF24A8080, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000001, 0xF24A7C80, 0x00000043, 0x00000005, ShakeCam, 0x00000001, 0x00000000, 0x00000001, 0xF24A7B4D, 0x00000057, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000043, 0x00000001, func_80238014_710F04, 0x00000043, 0x00000002, AddBattleCamZoom, 0xFE363C80, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000012, 0x00000000, 0x00000043, 0x00000002, AddBattleCamZoom, 0x00000019, 0x00000043, 0x00000002, MoveBattleCamOver, 0x00000005, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A801A, 0xF24A801A, 0xF24A7E80, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D000A, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000043, 0x00000002, func_80269EAC, 0x00000010, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D000B, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000043, 0x00000002, func_80269EAC, 0x00000011, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000005, SetActorScale, 0x00000100, 0xF24A7E80, 0xF24A7E80, 0xF24A7E80, 0x00000043, 0x00000005, SetActorSounds, 0x00000100, 0x00000003, 0x0000201A, 0x00000000, 0x00000043, 0x00000002, GetActionCommandResult, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000019, 0x00000001, 0x00000063, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x10000000, 0x00000095, 0x00000000, 0xFE363C8C, 0x00000060, 0x0000001C, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x10000000, 0x00000095, 0x00000000, 0xFE363C8C, 0x00000020, 0x00000023, 0x00000000, 0x00000056, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x00000008, 0x00000027, 0x00000002, 0xFE363C80, 0x00000090, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x00000008, 0x00000028, 0x00000002, 0xFE363C80, 0x00000090, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8E, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x00000008, 0x00000027, 0x00000002, 0xFE363C80, 0x00000048, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x00000008, 0x00000028, 0x00000002, 0xFE363C80, 0x00000048, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000000, 0x00000057, 0x00000000, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000000, 0x0000001D, 0x00000001, 0x00000002, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000046, 0x00000001, D_80238D4C_711C3C, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000003, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x000D0001, 0x00000046, 0x00000001, D_80238BB8_711AA8, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/battle/partner/714DC0.data.s b/ver/us/asm/data/battle/partner/714DC0.data.s deleted file mode 100644 index 563b907e3e..0000000000 --- a/ver/us/asm/data/battle/partner/714DC0.data.s +++ /dev/null @@ -1,48 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802380D0_714DC0 -.word 0x00000001, 0x00200008, 0x00000012, 0x00200000, 0x00000000 - -dlabel D_802380E4_714DD4 -.word 0x00000001, 0x00000000, 0x00000000 - -dlabel D_802380F0_714DE0 -.word 0x00000001, 0x00000064, 0x00000002, 0x00000064, 0x00000006, 0x00000064, 0x00000009, 0x00000064, 0x00000007, 0x00000064, 0x00000004, 0x00000064, 0x00000003, 0x00000064, 0x0000000B, 0x00000064, 0x00000005, 0x00000064, 0x0000000A, 0x00000064, 0x00000008, 0x00000064, 0x0000001F, 0x00000000, 0x00000020, 0x00000000, 0x00000025, 0x00000000, 0x00000022, 0x00000000, 0x00000024, 0x00000000, 0x00000023, 0x00000000, 0x00000021, 0x00000000, 0x00000026, 0x00000000, 0x00000027, 0x00000000, 0x00000029, 0x00000000, 0x00000000 - -dlabel D_8023819C_714E8C -.word 0x00000000, 0x01000000, 0x000000FF, D_802380D0_714DC0, D_802380E4_714DD4, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel battle_partner_twink -.word 0x00400000, 0x00770063, 0x00010000, D_8023819C_714E8C, D_802381E8_714ED8, D_802380F0_714DE0, 0x00000000, 0x00045000, 0x14140000, 0xF61E0D1F - -dlabel D_802381E8_714ED8 -.word 0x00000043, 0x00000003, BindTakeTurn, 0xFFFFFF81, D_802384C4_7151B4, 0x00000043, 0x00000003, BindIdle, 0xFFFFFF81, D_802382FC_714FEC, 0x00000043, 0x00000003, BindHandleEvent, 0xFFFFFF81, D_80238338_715028, 0x00000043, 0x00000003, BindNextTurn, 0xFFFFFF81, D_80238694_715384, 0x00000043, 0x00000001, func_80238000_714CF0, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000004, SetActorFlagBits, 0xFFFFFF81, 0x00200000, 0x00000001, 0x00000013, 0x00000000, 0x00000043, 0x00000004, SetActorVar, 0xFFFFFF81, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetActorVar, 0xFFFFFF81, 0x00000001, D_802380E4_714DD4, 0x00000043, 0x00000005, AddActorDecoration, 0xFFFFFF81, 0x00000001, 0x00000000, 0x00000009, 0x00000043, 0x00000008, ModifyActorDecoration, 0xFFFFFF81, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802382F8_714FE8 -.word 0x00000000 - -dlabel D_802382FC_714FEC -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, func_80238028_714D18, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80238338_715028 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000000, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000001, CloseActionCommandInfo, 0x00000043, 0x00000003, GetLastEvent, 0x00000100, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000009, 0x0000001D, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x000C0005, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x00200020, 0x00000046, 0x00000001, DoNormalHit, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x000A0002, 0x00000020, 0x00000000, 0x0000001D, 0x00000001, 0x00000017, 0x0000001D, 0x00000001, 0x00000019, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x000C0005, 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x00200008, 0x00000046, 0x00000001, DoImmune, 0x00000043, 0x00000004, SetAnimation, 0x00000000, 0x00000000, 0x000A0002, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000000, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802384C4_7151B4 -.word 0x00000043, 0x00000002, GetBattlePhase, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000046, 0x00000001, D_802386A4_715394, 0x00000016, 0x00000001, 0x00000005, 0x00000046, 0x00000001, D_80238558_715248, 0x00000016, 0x00000001, 0x00000003, 0x00000046, 0x00000001, D_802385A4_715294, 0x00000016, 0x00000001, 0x00000007, 0x00000046, 0x00000001, D_802385E0_7152D0, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80238558_715248 -.word 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x00200005, 0x00000025, 0x00000002, 0xFE363C82, 0x00200005, 0x00000046, 0x00000001, D_80294720, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802385A4_715294 -.word 0x00000025, 0x00000002, 0xFE363C80, 0x00000001, 0x00000025, 0x00000002, 0xFE363C81, 0x00200008, 0x00000046, 0x00000001, D_80294AFC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802385E0_7152D0 -.word 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9280, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00200008, 0x00000043, 0x00000003, SetActorYaw, 0x00000100, 0x00000000, 0x00000043, 0x00000003, RunToGoal, 0x00000100, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00200001, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80238694_715384 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802386A4_715394 -.word 0x00000043, 0x00000003, EnableIdleScript, 0x00000100, 0x00000000, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000000, 0x00000043, 0x00000005, SetActorSounds, 0x00000100, 0x00000001, 0x0000207F, 0x000002AA, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000002, BattleCamTargetActor, 0xFFFFFF81, 0x00000043, 0x00000001, InitTargetIterator, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00200008, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFEC, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A8A80, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000000, 0xFFFFFFF6, 0x0000000A, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00200001, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x0020000E, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x00000000, 0x0000000A, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000005, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000005, SetActorSounds, 0x00000100, 0x00000001, 0x00000000, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x000003E2, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000034, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFD8, 0x0000000F, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000014, 0xFFFFFFEC, 0x00000006, 0x00000043, 0x00000004, GetActorVar, 0xFFFFFF81, 0x00000000, 0xFE363C8F, 0x0000000D, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000001, 0x00000013, 0x00000000, 0x00000043, 0x00000003, PlaySoundAtActor, 0x00000100, 0x0000207E, 0x00000043, 0x00000002, SetGoalToTarget, 0x00000100, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0xFFFFFFF6, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00200008, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000005, 0x00000000, 0x00000000, 0x00000043, 0x00000004, GetActorVar, 0xFFFFFF81, 0x00000000, 0xFE363C8F, 0x0000000D, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0xFE363C8F, 0x00000030, 0x00000012, 0x00000000, 0x00000043, 0x00000007, PartnerDamageEnemy, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0xFE363C8F, 0x00000030, 0x00000013, 0x00000000, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000003, 0x00000043, 0x00000002, MoveBattleCamOver, 0x0000000A, 0x00000043, 0x00000005, AddGoalPos, 0x00000100, 0x00000096, 0x00000064, 0x00000000, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x0000000F, 0x00000014, 0x00000000, 0x00000043, 0x00000003, EnableActorBlur, 0x00000100, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000002, UseBattleCamPreset, 0x00000002, 0x00000005, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, GetActorVar, 0x00000200, 0x00000001, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetActorSounds, 0x00000100, 0x00000001, 0x0000207F, 0x000002AA, 0x00000043, 0x00000002, SetGoalToHome, 0x00000100, 0x00000043, 0x00000004, SetAnimation, 0x00000100, 0xFFFFFFFF, 0x00200008, 0x00000043, 0x00000003, SetActorSpeed, 0x00000100, 0xF24A9A80, 0x00000043, 0x00000005, FlyToGoal, 0x00000100, 0x00000000, 0xFFFFFFEC, 0x0000000A, 0x00000043, 0x00000003, EnableIdleScript, 0x00000100, 0x00000001, 0x00000043, 0x00000003, UseIdleAnimation, 0x00000100, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/nonmatchings/battle/partner/lakilester/func_8023803C_70BD4C.s b/ver/us/asm/nonmatchings/battle/partner/lakilester/func_8023803C_70BD4C.s deleted file mode 100644 index 0f9107579a..0000000000 --- a/ver/us/asm/nonmatchings/battle/partner/lakilester/func_8023803C_70BD4C.s +++ /dev/null @@ -1,698 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel D_8023D1B0_710EC0 -.double 6.7 - -.section .text - -glabel func_8023803C_70BD4C -/* 70BD4C 8023803C 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 70BD50 80238040 AFB00030 */ sw $s0, 0x30($sp) -/* 70BD54 80238044 3C10800E */ lui $s0, %hi(gBattleStatus) -/* 70BD58 80238048 2610C070 */ addiu $s0, $s0, %lo(gBattleStatus) -/* 70BD5C 8023804C AFBF0054 */ sw $ra, 0x54($sp) -/* 70BD60 80238050 AFBE0050 */ sw $fp, 0x50($sp) -/* 70BD64 80238054 AFB7004C */ sw $s7, 0x4c($sp) -/* 70BD68 80238058 AFB60048 */ sw $s6, 0x48($sp) -/* 70BD6C 8023805C AFB50044 */ sw $s5, 0x44($sp) -/* 70BD70 80238060 AFB40040 */ sw $s4, 0x40($sp) -/* 70BD74 80238064 AFB3003C */ sw $s3, 0x3c($sp) -/* 70BD78 80238068 AFB20038 */ sw $s2, 0x38($sp) -/* 70BD7C 8023806C AFB10034 */ sw $s1, 0x34($sp) -/* 70BD80 80238070 F7B60060 */ sdc1 $f22, 0x60($sp) -/* 70BD84 80238074 F7B40058 */ sdc1 $f20, 0x58($sp) -/* 70BD88 80238078 AFA40068 */ sw $a0, 0x68($sp) -/* 70BD8C 8023807C 8E1700DC */ lw $s7, 0xdc($s0) -/* 70BD90 80238080 8E0200D8 */ lw $v0, 0xd8($s0) -/* 70BD94 80238084 26F6000C */ addiu $s6, $s7, 0xc -/* 70BD98 80238088 10A00002 */ beqz $a1, .L80238094 -/* 70BD9C 8023808C 245E000C */ addiu $fp, $v0, 0xc -/* 70BDA0 80238090 AC800070 */ sw $zero, 0x70($a0) -.L80238094: -/* 70BDA4 80238094 8FA80068 */ lw $t0, 0x68($sp) -/* 70BDA8 80238098 8D030070 */ lw $v1, 0x70($t0) -/* 70BDAC 8023809C 24020001 */ addiu $v0, $zero, 1 -/* 70BDB0 802380A0 106200B4 */ beq $v1, $v0, .L80238374 -/* 70BDB4 802380A4 28620002 */ slti $v0, $v1, 2 -/* 70BDB8 802380A8 10400005 */ beqz $v0, .L802380C0 -/* 70BDBC 802380AC 24020002 */ addiu $v0, $zero, 2 -/* 70BDC0 802380B0 10600007 */ beqz $v1, .L802380D0 -/* 70BDC4 802380B4 00000000 */ nop -/* 70BDC8 802380B8 0808E21D */ j .L80238874 -/* 70BDCC 802380BC 00000000 */ nop -.L802380C0: -/* 70BDD0 802380C0 106200CD */ beq $v1, $v0, .L802383F8 -/* 70BDD4 802380C4 00000000 */ nop -/* 70BDD8 802380C8 0808E21D */ j .L80238874 -/* 70BDDC 802380CC 00000000 */ nop -.L802380D0: -/* 70BDE0 802380D0 3C048029 */ lui $a0, %hi(HES_AimReticle) -/* 70BDE4 802380D4 2484369C */ addiu $a0, $a0, %lo(HES_AimReticle) -/* 70BDE8 802380D8 0C050529 */ jal hud_element_create -/* 70BDEC 802380DC 0000902D */ daddu $s2, $zero, $zero -/* 70BDF0 802380E0 0040202D */ daddu $a0, $v0, $zero -/* 70BDF4 802380E4 3C018024 */ lui $at, %hi(D_8023D288) -/* 70BDF8 802380E8 AC24D288 */ sw $a0, %lo(D_8023D288)($at) -/* 70BDFC 802380EC 0C051277 */ jal hud_element_set_render_depth -/* 70BE00 802380F0 2405000A */ addiu $a1, $zero, 0xa -/* 70BE04 802380F4 3C048029 */ lui $a0, %hi(HES_AimTarget) -/* 70BE08 802380F8 248436D4 */ addiu $a0, $a0, %lo(HES_AimTarget) -/* 70BE0C 802380FC 0C050529 */ jal hud_element_create -/* 70BE10 80238100 00000000 */ nop -/* 70BE14 80238104 0040202D */ daddu $a0, $v0, $zero -/* 70BE18 80238108 2405000A */ addiu $a1, $zero, 0xa -/* 70BE1C 8023810C 3C108024 */ lui $s0, %hi(D_8023D28C) -/* 70BE20 80238110 2610D28C */ addiu $s0, $s0, %lo(D_8023D28C) -/* 70BE24 80238114 0C051277 */ jal hud_element_set_render_depth -/* 70BE28 80238118 AE040000 */ sw $a0, ($s0) -/* 70BE2C 8023811C 3C148024 */ lui $s4, %hi(D_8023D2B8) -/* 70BE30 80238120 2694D2B8 */ addiu $s4, $s4, %lo(D_8023D2B8) -/* 70BE34 80238124 8E040000 */ lw $a0, ($s0) -/* 70BE38 80238128 3C138024 */ lui $s3, %hi(D_8023AB80_70E890) -/* 70BE3C 8023812C 0C0513CA */ jal hud_element_create_transform_A -/* 70BE40 80238130 2673AB80 */ addiu $s3, $s3, %lo(D_8023AB80_70E890) -/* 70BE44 80238134 3C048011 */ lui $a0, %hi(HES_StickNeutral) -/* 70BE48 80238138 24848E1C */ addiu $a0, $a0, %lo(HES_StickNeutral) -/* 70BE4C 8023813C 3C118024 */ lui $s1, %hi(D_8023D2C0) -/* 70BE50 80238140 2631D2C0 */ addiu $s1, $s1, %lo(D_8023D2C0) -/* 70BE54 80238144 2402FFD0 */ addiu $v0, $zero, -0x30 -/* 70BE58 80238148 3C108024 */ lui $s0, %hi(D_8023D2C4) -/* 70BE5C 8023814C 2610D2C4 */ addiu $s0, $s0, %lo(D_8023D2C4) -/* 70BE60 80238150 AE220000 */ sw $v0, ($s1) -/* 70BE64 80238154 24020046 */ addiu $v0, $zero, 0x46 -/* 70BE68 80238158 0C050529 */ jal hud_element_create -/* 70BE6C 8023815C AE020000 */ sw $v0, ($s0) -/* 70BE70 80238160 0040A82D */ daddu $s5, $v0, $zero -/* 70BE74 80238164 8E250000 */ lw $a1, ($s1) -/* 70BE78 80238168 8E060000 */ lw $a2, ($s0) -/* 70BE7C 8023816C 3C018024 */ lui $at, %hi(D_8023D2BC) -/* 70BE80 80238170 AC35D2BC */ sw $s5, %lo(D_8023D2BC)($at) -/* 70BE84 80238174 0C051261 */ jal hud_element_set_render_pos -/* 70BE88 80238178 02A0202D */ daddu $a0, $s5, $zero -/* 70BE8C 8023817C 02A0202D */ daddu $a0, $s5, $zero -/* 70BE90 80238180 0C051277 */ jal hud_element_set_render_depth -/* 70BE94 80238184 0240282D */ daddu $a1, $s2, $zero -.L80238188: -/* 70BE98 80238188 8E640000 */ lw $a0, ($s3) -/* 70BE9C 8023818C 26730004 */ addiu $s3, $s3, 4 -/* 70BEA0 80238190 0C050529 */ jal hud_element_create -/* 70BEA4 80238194 26520001 */ addiu $s2, $s2, 1 -/* 70BEA8 80238198 0040202D */ daddu $a0, $v0, $zero -/* 70BEAC 8023819C 2405000A */ addiu $a1, $zero, 0xa -/* 70BEB0 802381A0 0C051277 */ jal hud_element_set_render_depth -/* 70BEB4 802381A4 AE840000 */ sw $a0, ($s4) -/* 70BEB8 802381A8 1A40FFF7 */ blez $s2, .L80238188 -/* 70BEBC 802381AC 26940004 */ addiu $s4, $s4, 4 -/* 70BEC0 802381B0 C6E00144 */ lwc1 $f0, 0x144($s7) -/* 70BEC4 802381B4 3C014204 */ lui $at, 0x4204 -/* 70BEC8 802381B8 44813000 */ mtc1 $at, $f6 -/* 70BECC 802381BC 00000000 */ nop -/* 70BED0 802381C0 46060000 */ add.s $f0, $f0, $f6 -/* 70BED4 802381C4 3C014208 */ lui $at, 0x4208 -/* 70BED8 802381C8 44812000 */ mtc1 $at, $f4 -/* 70BEDC 802381CC E6C00000 */ swc1 $f0, ($s6) -/* 70BEE0 802381D0 C6E00148 */ lwc1 $f0, 0x148($s7) -/* 70BEE4 802381D4 46040000 */ add.s $f0, $f0, $f4 -/* 70BEE8 802381D8 3C014170 */ lui $at, 0x4170 -/* 70BEEC 802381DC 44811000 */ mtc1 $at, $f2 -/* 70BEF0 802381E0 E6C00004 */ swc1 $f0, 4($s6) -/* 70BEF4 802381E4 C6E0014C */ lwc1 $f0, 0x14c($s7) -/* 70BEF8 802381E8 46020000 */ add.s $f0, $f0, $f2 -/* 70BEFC 802381EC E6C00008 */ swc1 $f0, 8($s6) -/* 70BF00 802381F0 C6E00144 */ lwc1 $f0, 0x144($s7) -/* 70BF04 802381F4 46060000 */ add.s $f0, $f0, $f6 -/* 70BF08 802381F8 E6C00018 */ swc1 $f0, 0x18($s6) -/* 70BF0C 802381FC C6E00148 */ lwc1 $f0, 0x148($s7) -/* 70BF10 80238200 46040000 */ add.s $f0, $f0, $f4 -/* 70BF14 80238204 E6C0001C */ swc1 $f0, 0x1c($s6) -/* 70BF18 80238208 C6E0014C */ lwc1 $f0, 0x14c($s7) -/* 70BF1C 8023820C 46020000 */ add.s $f0, $f0, $f2 -/* 70BF20 80238210 E6C00020 */ swc1 $f0, 0x20($s6) -/* 70BF24 80238214 86E50428 */ lh $a1, 0x428($s7) -/* 70BF28 80238218 82E60426 */ lb $a2, 0x426($s7) -/* 70BF2C 8023821C 0C09A5D5 */ jal set_goal_pos_to_part -/* 70BF30 80238220 02C0202D */ daddu $a0, $s6, $zero -/* 70BF34 80238224 86E40428 */ lh $a0, 0x428($s7) -/* 70BF38 80238228 0C09A75B */ jal get_actor -/* 70BF3C 8023822C 00000000 */ nop -/* 70BF40 80238230 0040882D */ daddu $s1, $v0, $zero -/* 70BF44 80238234 82E50426 */ lb $a1, 0x426($s7) -/* 70BF48 80238238 0C099117 */ jal get_actor_part -/* 70BF4C 8023823C 0220202D */ daddu $a0, $s1, $zero -/* 70BF50 80238240 0040802D */ daddu $s0, $v0, $zero -/* 70BF54 80238244 C6CC0000 */ lwc1 $f12, ($s6) -/* 70BF58 80238248 82020075 */ lb $v0, 0x75($s0) -/* 70BF5C 8023824C C6C0000C */ lwc1 $f0, 0xc($s6) -/* 70BF60 80238250 44821000 */ mtc1 $v0, $f2 -/* 70BF64 80238254 00000000 */ nop -/* 70BF68 80238258 468010A0 */ cvt.s.w $f2, $f2 -/* 70BF6C 8023825C 46020000 */ add.s $f0, $f0, $f2 -/* 70BF70 80238260 C6CE0004 */ lwc1 $f14, 4($s6) -/* 70BF74 80238264 E6C0000C */ swc1 $f0, 0xc($s6) -/* 70BF78 80238268 82020076 */ lb $v0, 0x76($s0) -/* 70BF7C 8023826C C6C00010 */ lwc1 $f0, 0x10($s6) -/* 70BF80 80238270 44821000 */ mtc1 $v0, $f2 -/* 70BF84 80238274 00000000 */ nop -/* 70BF88 80238278 468010A0 */ cvt.s.w $f2, $f2 -/* 70BF8C 8023827C 46020000 */ add.s $f0, $f0, $f2 -/* 70BF90 80238280 8EC6000C */ lw $a2, 0xc($s6) -/* 70BF94 80238284 E6C00010 */ swc1 $f0, 0x10($s6) -/* 70BF98 80238288 44070000 */ mfc1 $a3, $f0 -/* 70BF9C 8023828C 0C00A7B5 */ jal dist2D -/* 70BFA0 80238290 C6C00014 */ lwc1 $f0, 0x14($s6) -/* 70BFA4 80238294 E6C0004C */ swc1 $f0, 0x4c($s6) -/* 70BFA8 80238298 3C014040 */ lui $at, 0x4040 -/* 70BFAC 8023829C 44810000 */ mtc1 $at, $f0 -/* 70BFB0 802382A0 3C01BF80 */ lui $at, 0xbf80 -/* 70BFB4 802382A4 44811000 */ mtc1 $at, $f2 -/* 70BFB8 802382A8 2402001E */ addiu $v0, $zero, 0x1e -/* 70BFBC 802382AC AEC00040 */ sw $zero, 0x40($s6) -/* 70BFC0 802382B0 AEC00030 */ sw $zero, 0x30($s6) -/* 70BFC4 802382B4 AEC00034 */ sw $zero, 0x34($s6) -/* 70BFC8 802382B8 3C018024 */ lui $at, %hi(D_8023D290) -/* 70BFCC 802382BC AC20D290 */ sw $zero, %lo(D_8023D290)($at) -/* 70BFD0 802382C0 3C018024 */ lui $at, %hi(D_8023D294) -/* 70BFD4 802382C4 AC20D294 */ sw $zero, %lo(D_8023D294)($at) -/* 70BFD8 802382C8 3C018024 */ lui $at, %hi(D_8023D298) -/* 70BFDC 802382CC AC22D298 */ sw $v0, %lo(D_8023D298)($at) -/* 70BFE0 802382D0 3C018024 */ lui $at, %hi(D_8023D2A0) -/* 70BFE4 802382D4 AC20D2A0 */ sw $zero, %lo(D_8023D2A0)($at) -/* 70BFE8 802382D8 3C018024 */ lui $at, %hi(D_8023D2A4) -/* 70BFEC 802382DC AC20D2A4 */ sw $zero, %lo(D_8023D2A4)($at) -/* 70BFF0 802382E0 3C018024 */ lui $at, %hi(D_8023D2A8) -/* 70BFF4 802382E4 AC20D2A8 */ sw $zero, %lo(D_8023D2A8)($at) -/* 70BFF8 802382E8 3C018024 */ lui $at, %hi(D_8023D2AC) -/* 70BFFC 802382EC AC20D2AC */ sw $zero, %lo(D_8023D2AC)($at) -/* 70C000 802382F0 3C018024 */ lui $at, %hi(D_8023D29C) -/* 70C004 802382F4 AC20D29C */ sw $zero, %lo(D_8023D29C)($at) -/* 70C008 802382F8 3C018024 */ lui $at, %hi(D_8023D2B0) -/* 70C00C 802382FC E420D2B0 */ swc1 $f0, %lo(D_8023D2B0)($at) -/* 70C010 80238300 3C018024 */ lui $at, %hi(D_8023D2B4) -/* 70C014 80238304 E422D2B4 */ swc1 $f2, %lo(D_8023D2B4)($at) -/* 70C018 80238308 92020073 */ lbu $v0, 0x73($s0) -/* 70C01C 8023830C 92030072 */ lbu $v1, 0x72($s0) -/* 70C020 80238310 3C014038 */ lui $at, 0x4038 -/* 70C024 80238314 44811800 */ mtc1 $at, $f3 -/* 70C028 80238318 44801000 */ mtc1 $zero, $f2 -/* 70C02C 8023831C 00431021 */ addu $v0, $v0, $v1 -/* 70C030 80238320 00021043 */ sra $v0, $v0, 1 -/* 70C034 80238324 44820000 */ mtc1 $v0, $f0 -/* 70C038 80238328 00000000 */ nop -/* 70C03C 8023832C 46800021 */ cvt.d.w $f0, $f0 -/* 70C040 80238330 46220003 */ div.d $f0, $f0, $f2 -/* 70C044 80238334 46200020 */ cvt.s.d $f0, $f0 -/* 70C048 80238338 E6C00024 */ swc1 $f0, 0x24($s6) -/* 70C04C 8023833C C6220188 */ lwc1 $f2, 0x188($s1) -/* 70C050 80238340 46020002 */ mul.s $f0, $f0, $f2 -/* 70C054 80238344 00000000 */ nop -/* 70C058 80238348 3C048024 */ lui $a0, %hi(D_8023D28C) -/* 70C05C 8023834C 8C84D28C */ lw $a0, %lo(D_8023D28C)($a0) -/* 70C060 80238350 44050000 */ mfc1 $a1, $f0 -/* 70C064 80238354 0C051308 */ jal hud_element_set_scale -/* 70C068 80238358 00000000 */ nop -/* 70C06C 8023835C 8FA90068 */ lw $t1, 0x68($sp) -/* 70C070 80238360 24020001 */ addiu $v0, $zero, 1 -/* 70C074 80238364 3C018024 */ lui $at, %hi(D_8023D2C8) -/* 70C078 80238368 AC22D2C8 */ sw $v0, %lo(D_8023D2C8)($at) -/* 70C07C 8023836C 0808E21D */ j .L80238874 -/* 70C080 80238370 AD220070 */ sw $v0, 0x70($t1) -.L80238374: -/* 70C084 80238374 8E02021C */ lw $v0, 0x21c($s0) -/* 70C088 80238378 14400004 */ bnez $v0, .L8023838C -/* 70C08C 8023837C 00000000 */ nop -/* 70C090 80238380 8E020220 */ lw $v0, 0x220($s0) -/* 70C094 80238384 10400003 */ beqz $v0, .L80238394 -/* 70C098 80238388 00000000 */ nop -.L8023838C: -/* 70C09C 8023838C 3C018024 */ lui $at, %hi(D_8023D298) -/* 70C0A0 80238390 AC20D298 */ sw $zero, %lo(D_8023D298)($at) -.L80238394: -/* 70C0A4 80238394 3C038024 */ lui $v1, %hi(D_8023D298) -/* 70C0A8 80238398 2463D298 */ addiu $v1, $v1, %lo(D_8023D298) -/* 70C0AC 8023839C 8C620000 */ lw $v0, ($v1) -/* 70C0B0 802383A0 10400003 */ beqz $v0, .L802383B0 -/* 70C0B4 802383A4 2442FFFF */ addiu $v0, $v0, -1 -/* 70C0B8 802383A8 0808E21D */ j .L80238874 -/* 70C0BC 802383AC AC620000 */ sw $v0, ($v1) -.L802383B0: -/* 70C0C0 802383B0 3C058011 */ lui $a1, %hi(HES_StickTapRight) -/* 70C0C4 802383B4 24A591E4 */ addiu $a1, $a1, %lo(HES_StickTapRight) -/* 70C0C8 802383B8 3C048024 */ lui $a0, %hi(D_8023D2BC) -/* 70C0CC 802383BC 8C84D2BC */ lw $a0, %lo(D_8023D2BC)($a0) -/* 70C0D0 802383C0 24020050 */ addiu $v0, $zero, 0x50 -/* 70C0D4 802383C4 0C0511FF */ jal hud_element_set_script -/* 70C0D8 802383C8 AC620000 */ sw $v0, ($v1) -/* 70C0DC 802383CC 44800000 */ mtc1 $zero, $f0 -/* 70C0E0 802383D0 24040312 */ addiu $a0, $zero, 0x312 -/* 70C0E4 802383D4 44060000 */ mfc1 $a2, $f0 -/* 70C0E8 802383D8 0000282D */ daddu $a1, $zero, $zero -/* 70C0EC 802383DC 00C0382D */ daddu $a3, $a2, $zero -/* 70C0F0 802383E0 0C052757 */ jal sfx_play_sound_at_position -/* 70C0F4 802383E4 AFA60010 */ sw $a2, 0x10($sp) -/* 70C0F8 802383E8 8FA80068 */ lw $t0, 0x68($sp) -/* 70C0FC 802383EC 24020002 */ addiu $v0, $zero, 2 -/* 70C100 802383F0 0808E21D */ j .L80238874 -/* 70C104 802383F4 AD020070 */ sw $v0, 0x70($t0) -.L802383F8: -/* 70C108 802383F8 8E05022C */ lw $a1, 0x22c($s0) -/* 70C10C 802383FC 28A20051 */ slti $v0, $a1, 0x51 -/* 70C110 80238400 50400001 */ beql $v0, $zero, .L80238408 -/* 70C114 80238404 24050050 */ addiu $a1, $zero, 0x50 -.L80238408: -/* 70C118 80238408 C6160228 */ lwc1 $f22, 0x228($s0) -/* 70C11C 8023840C 4680B5A0 */ cvt.s.w $f22, $f22 -/* 70C120 80238410 28A20023 */ slti $v0, $a1, 0x23 -/* 70C124 80238414 10400014 */ beqz $v0, .L80238468 -/* 70C128 80238418 00051040 */ sll $v0, $a1, 1 -/* 70C12C 8023841C 3C0140C9 */ lui $at, 0x40c9 -/* 70C130 80238420 34210FD0 */ ori $at, $at, 0xfd0 -/* 70C134 80238424 44810000 */ mtc1 $at, $f0 -/* 70C138 80238428 44826000 */ mtc1 $v0, $f12 -/* 70C13C 8023842C 00000000 */ nop -/* 70C140 80238430 46806320 */ cvt.s.w $f12, $f12 -/* 70C144 80238434 46006302 */ mul.s $f12, $f12, $f0 -/* 70C148 80238438 00000000 */ nop -/* 70C14C 8023843C 3C0143B4 */ lui $at, 0x43b4 -/* 70C150 80238440 44810000 */ mtc1 $at, $f0 -/* 70C154 80238444 4485A000 */ mtc1 $a1, $f20 -/* 70C158 80238448 00000000 */ nop -/* 70C15C 8023844C 4680A520 */ cvt.s.w $f20, $f20 -/* 70C160 80238450 0C00A85B */ jal sin_rad -/* 70C164 80238454 46006303 */ div.s $f12, $f12, $f0 -/* 70C168 80238458 4600A502 */ mul.s $f20, $f20, $f0 -/* 70C16C 8023845C 00000000 */ nop -/* 70C170 80238460 4600A28D */ trunc.w.s $f10, $f20 -/* 70C174 80238464 44055000 */ mfc1 $a1, $f10 -.L80238468: -/* 70C178 80238468 3C038024 */ lui $v1, %hi(D_8023D2A0) -/* 70C17C 8023846C 2463D2A0 */ addiu $v1, $v1, %lo(D_8023D2A0) -/* 70C180 80238470 3C048024 */ lui $a0, %hi(D_8023D2A4) -/* 70C184 80238474 2484D2A4 */ addiu $a0, $a0, %lo(D_8023D2A4) -/* 70C188 80238478 C4680000 */ lwc1 $f8, ($v1) -/* 70C18C 8023847C C4860000 */ lwc1 $f6, ($a0) -/* 70C190 80238480 3C028024 */ lui $v0, %hi(D_8023D2A8) -/* 70C194 80238484 2442D2A8 */ addiu $v0, $v0, %lo(D_8023D2A8) -/* 70C198 80238488 46064080 */ add.s $f2, $f8, $f6 -/* 70C19C 8023848C C4400000 */ lwc1 $f0, ($v0) -/* 70C1A0 80238490 3C014040 */ lui $at, 0x4040 -/* 70C1A4 80238494 44812000 */ mtc1 $at, $f4 -/* 70C1A8 80238498 46001080 */ add.s $f2, $f2, $f0 -/* 70C1AC 8023849C 44850000 */ mtc1 $a1, $f0 -/* 70C1B0 802384A0 00000000 */ nop -/* 70C1B4 802384A4 46800020 */ cvt.s.w $f0, $f0 -/* 70C1B8 802384A8 E4600000 */ swc1 $f0, ($v1) -/* 70C1BC 802384AC 46041083 */ div.s $f2, $f2, $f4 -/* 70C1C0 802384B0 46020001 */ sub.s $f0, $f0, $f2 -/* 70C1C4 802384B4 E4460000 */ swc1 $f6, ($v0) -/* 70C1C8 802384B8 4600028D */ trunc.w.s $f10, $f0 -/* 70C1CC 802384BC 44025000 */ mfc1 $v0, $f10 -/* 70C1D0 802384C0 00000000 */ nop -/* 70C1D4 802384C4 1840002B */ blez $v0, .L80238574 -/* 70C1D8 802384C8 E4880000 */ swc1 $f8, ($a0) -/* 70C1DC 802384CC C6E6004C */ lwc1 $f6, 0x4c($s7) -/* 70C1E0 802384D0 44800000 */ mtc1 $zero, $f0 -/* 70C1E4 802384D4 44822000 */ mtc1 $v0, $f4 -/* 70C1E8 802384D8 00000000 */ nop -/* 70C1EC 802384DC 46802120 */ cvt.s.w $f4, $f4 -/* 70C1F0 802384E0 3C018024 */ lui $at, %hi(D_8023D2AC) -/* 70C1F4 802384E4 E424D2AC */ swc1 $f4, %lo(D_8023D2AC)($at) -/* 70C1F8 802384E8 46003032 */ c.eq.s $f6, $f0 -/* 70C1FC 802384EC 00000000 */ nop -/* 70C200 802384F0 4503000F */ bc1tl .L80238530 -/* 70C204 802384F4 460020A1 */ cvt.d.s $f2, $f4 -/* 70C208 802384F8 460030A1 */ cvt.d.s $f2, $f6 -/* 70C20C 802384FC 46002021 */ cvt.d.s $f0, $f4 -/* 70C210 80238500 3C014021 */ lui $at, 0x4021 -/* 70C214 80238504 44812800 */ mtc1 $at, $f5 -/* 70C218 80238508 44802000 */ mtc1 $zero, $f4 -/* 70C21C 8023850C 3C014008 */ lui $at, 0x4008 -/* 70C220 80238510 44813800 */ mtc1 $at, $f7 -/* 70C224 80238514 44803000 */ mtc1 $zero, $f6 -/* 70C228 80238518 46240003 */ div.d $f0, $f0, $f4 -/* 70C22C 8023851C 46260003 */ div.d $f0, $f0, $f6 -/* 70C230 80238520 46201080 */ add.d $f2, $f2, $f0 -/* 70C234 80238524 462010A0 */ cvt.s.d $f2, $f2 -/* 70C238 80238528 0808E159 */ j .L80238564 -/* 70C23C 8023852C E6E2004C */ swc1 $f2, 0x4c($s7) -.L80238530: -/* 70C240 80238530 3C014021 */ lui $at, 0x4021 -/* 70C244 80238534 44810800 */ mtc1 $at, $f1 -/* 70C248 80238538 44800000 */ mtc1 $zero, $f0 -/* 70C24C 8023853C 3C013FE0 */ lui $at, 0x3fe0 -/* 70C250 80238540 44812800 */ mtc1 $at, $f5 -/* 70C254 80238544 44802000 */ mtc1 $zero, $f4 -/* 70C258 80238548 46201083 */ div.d $f2, $f2, $f0 -/* 70C25C 8023854C 46241082 */ mul.d $f2, $f2, $f4 -/* 70C260 80238550 00000000 */ nop -/* 70C264 80238554 46003021 */ cvt.d.s $f0, $f6 -/* 70C268 80238558 46220000 */ add.d $f0, $f0, $f2 -/* 70C26C 8023855C 46200020 */ cvt.s.d $f0, $f0 -/* 70C270 80238560 E6E0004C */ swc1 $f0, 0x4c($s7) -.L80238564: -/* 70C274 80238564 3C018024 */ lui $at, %hi(D_8023D2B4) -/* 70C278 80238568 E436D2B4 */ swc1 $f22, %lo(D_8023D2B4)($at) -/* 70C27C 8023856C 0808E163 */ j .L8023858C -/* 70C280 80238570 28A2001F */ slti $v0, $a1, 0x1f -.L80238574: -/* 70C284 80238574 44820000 */ mtc1 $v0, $f0 -/* 70C288 80238578 00000000 */ nop -/* 70C28C 8023857C 46800020 */ cvt.s.w $f0, $f0 -/* 70C290 80238580 3C018024 */ lui $at, %hi(D_8023D2AC) -/* 70C294 80238584 E420D2AC */ swc1 $f0, %lo(D_8023D2AC)($at) -/* 70C298 80238588 28A2001F */ slti $v0, $a1, 0x1f -.L8023858C: -/* 70C29C 8023858C 14400003 */ bnez $v0, .L8023859C -/* 70C2A0 80238590 00000000 */ nop -/* 70C2A4 80238594 3C018024 */ lui $at, %hi(D_8023D2B4) -/* 70C2A8 80238598 E436D2B4 */ swc1 $f22, %lo(D_8023D2B4)($at) -.L8023859C: -/* 70C2AC 8023859C C6C00040 */ lwc1 $f0, 0x40($s6) -/* 70C2B0 802385A0 3C018024 */ lui $at, %hi(D_8023D1B0_710EC0) -/* 70C2B4 802385A4 D422D1B0 */ ldc1 $f2, %lo(D_8023D1B0_710EC0)($at) -/* 70C2B8 802385A8 46000021 */ cvt.d.s $f0, $f0 -/* 70C2BC 802385AC 4620103C */ c.lt.d $f2, $f0 -/* 70C2C0 802385B0 00000000 */ nop -/* 70C2C4 802385B4 45000006 */ bc1f .L802385D0 -/* 70C2C8 802385B8 24020028 */ addiu $v0, $zero, 0x28 -/* 70C2CC 802385BC 3C0140D6 */ lui $at, 0x40d6 -/* 70C2D0 802385C0 34216666 */ ori $at, $at, 0x6666 -/* 70C2D4 802385C4 44810000 */ mtc1 $at, $f0 -/* 70C2D8 802385C8 00000000 */ nop -/* 70C2DC 802385CC E6C00040 */ swc1 $f0, 0x40($s6) -.L802385D0: -/* 70C2E0 802385D0 00451023 */ subu $v0, $v0, $a1 -/* 70C2E4 802385D4 44820000 */ mtc1 $v0, $f0 -/* 70C2E8 802385D8 00000000 */ nop -/* 70C2EC 802385DC 46800021 */ cvt.d.w $f0, $f0 -/* 70C2F0 802385E0 46200000 */ add.d $f0, $f0, $f0 -/* 70C2F4 802385E4 3C014044 */ lui $at, 0x4044 -/* 70C2F8 802385E8 44811800 */ mtc1 $at, $f3 -/* 70C2FC 802385EC 44801000 */ mtc1 $zero, $f2 -/* 70C300 802385F0 00000000 */ nop -/* 70C304 802385F4 46220003 */ div.d $f0, $f0, $f2 -/* 70C308 802385F8 C6C20040 */ lwc1 $f2, 0x40($s6) -/* 70C30C 802385FC 46200020 */ cvt.s.d $f0, $f0 -/* 70C310 80238600 46001081 */ sub.s $f2, $f2, $f0 -/* 70C314 80238604 4480B000 */ mtc1 $zero, $f22 -/* 70C318 80238608 00000000 */ nop -/* 70C31C 8023860C 4616103E */ c.le.s $f2, $f22 -/* 70C320 80238610 00000000 */ nop -/* 70C324 80238614 45000004 */ bc1f .L80238628 -/* 70C328 80238618 E6C20040 */ swc1 $f2, 0x40($s6) -/* 70C32C 8023861C E6D60040 */ swc1 $f22, 0x40($s6) -/* 70C330 80238620 3C018024 */ lui $at, %hi(D_8023D2AC) -/* 70C334 80238624 E436D2AC */ swc1 $f22, %lo(D_8023D2AC)($at) -.L80238628: -/* 70C338 80238628 3C018024 */ lui $at, %hi(D_8023D2B4) -/* 70C33C 8023862C C420D2B4 */ lwc1 $f0, %lo(D_8023D2B4)($at) -/* 70C340 80238630 4600B03E */ c.le.s $f22, $f0 -/* 70C344 80238634 00000000 */ nop -/* 70C348 80238638 4500001B */ bc1f .L802386A8 -/* 70C34C 8023863C 00000000 */ nop -/* 70C350 80238640 3C0140C9 */ lui $at, 0x40c9 -/* 70C354 80238644 34210FD0 */ ori $at, $at, 0xfd0 -/* 70C358 80238648 4481A000 */ mtc1 $at, $f20 -/* 70C35C 8023864C 00000000 */ nop -/* 70C360 80238650 46140502 */ mul.s $f20, $f0, $f20 -/* 70C364 80238654 00000000 */ nop -/* 70C368 80238658 3C0143B4 */ lui $at, 0x43b4 -/* 70C36C 8023865C 44810000 */ mtc1 $at, $f0 -/* 70C370 80238660 00000000 */ nop -/* 70C374 80238664 4600A503 */ div.s $f20, $f20, $f0 -/* 70C378 80238668 0C00A85B */ jal sin_rad -/* 70C37C 8023866C 4600A306 */ mov.s $f12, $f20 -/* 70C380 80238670 4600A306 */ mov.s $f12, $f20 -/* 70C384 80238674 0C00A874 */ jal cos_rad -/* 70C388 80238678 46000506 */ mov.s $f20, $f0 -/* 70C38C 8023867C C6C40040 */ lwc1 $f4, 0x40($s6) -/* 70C390 80238680 46142502 */ mul.s $f20, $f4, $f20 -/* 70C394 80238684 00000000 */ nop -/* 70C398 80238688 46002102 */ mul.s $f4, $f4, $f0 -/* 70C39C 8023868C 00000000 */ nop -/* 70C3A0 80238690 C6C20000 */ lwc1 $f2, ($s6) -/* 70C3A4 80238694 46141080 */ add.s $f2, $f2, $f20 -/* 70C3A8 80238698 C6C00004 */ lwc1 $f0, 4($s6) -/* 70C3AC 8023869C 46040000 */ add.s $f0, $f0, $f4 -/* 70C3B0 802386A0 E6C20000 */ swc1 $f2, ($s6) -/* 70C3B4 802386A4 E6C00004 */ swc1 $f0, 4($s6) -.L802386A8: -/* 70C3B8 802386A8 C6C00000 */ lwc1 $f0, ($s6) -/* 70C3BC 802386AC 3C01C1F0 */ lui $at, 0xc1f0 -/* 70C3C0 802386B0 44811000 */ mtc1 $at, $f2 -/* 70C3C4 802386B4 00000000 */ nop -/* 70C3C8 802386B8 4602003C */ c.lt.s $f0, $f2 -/* 70C3CC 802386BC 00000000 */ nop -/* 70C3D0 802386C0 45030001 */ bc1tl .L802386C8 -/* 70C3D4 802386C4 E6C20000 */ swc1 $f2, ($s6) -.L802386C8: -/* 70C3D8 802386C8 C6C00000 */ lwc1 $f0, ($s6) -/* 70C3DC 802386CC 3C01432A */ lui $at, 0x432a -/* 70C3E0 802386D0 44811000 */ mtc1 $at, $f2 -/* 70C3E4 802386D4 00000000 */ nop -/* 70C3E8 802386D8 4600103C */ c.lt.s $f2, $f0 -/* 70C3EC 802386DC 00000000 */ nop -/* 70C3F0 802386E0 45030001 */ bc1tl .L802386E8 -/* 70C3F4 802386E4 E6C20000 */ swc1 $f2, ($s6) -.L802386E8: -/* 70C3F8 802386E8 C6C00004 */ lwc1 $f0, 4($s6) -/* 70C3FC 802386EC 3C014302 */ lui $at, 0x4302 -/* 70C400 802386F0 44811000 */ mtc1 $at, $f2 -/* 70C404 802386F4 00000000 */ nop -/* 70C408 802386F8 4600103C */ c.lt.s $f2, $f0 -/* 70C40C 802386FC 00000000 */ nop -/* 70C410 80238700 45030001 */ bc1tl .L80238708 -/* 70C414 80238704 E6C20004 */ swc1 $f2, 4($s6) -.L80238708: -/* 70C418 80238708 C6C00004 */ lwc1 $f0, 4($s6) -/* 70C41C 8023870C 4616003C */ c.lt.s $f0, $f22 -/* 70C420 80238710 00000000 */ nop -/* 70C424 80238714 45030001 */ bc1tl .L8023871C -/* 70C428 80238718 E6D60004 */ swc1 $f22, 4($s6) -.L8023871C: -/* 70C42C 8023871C 8E020214 */ lw $v0, 0x214($s0) -/* 70C430 80238720 30428000 */ andi $v0, $v0, 0x8000 -/* 70C434 80238724 10400003 */ beqz $v0, .L80238734 -/* 70C438 80238728 00000000 */ nop -/* 70C43C 8023872C 3C018024 */ lui $at, %hi(D_8023D298) -/* 70C440 80238730 AC20D298 */ sw $zero, %lo(D_8023D298)($at) -.L80238734: -/* 70C444 80238734 3C108024 */ lui $s0, %hi(D_8023D298) -/* 70C448 80238738 2610D298 */ addiu $s0, $s0, %lo(D_8023D298) -/* 70C44C 8023873C 8E030000 */ lw $v1, ($s0) -/* 70C450 80238740 2402003C */ addiu $v0, $zero, 0x3c -/* 70C454 80238744 14620008 */ bne $v1, $v0, .L80238768 -/* 70C458 80238748 2402001E */ addiu $v0, $zero, 0x1e -/* 70C45C 8023874C 24040100 */ addiu $a0, $zero, 0x100 -/* 70C460 80238750 0000282D */ daddu $a1, $zero, $zero -/* 70C464 80238754 3C060010 */ lui $a2, 0x10 -/* 70C468 80238758 0C098F3F */ jal set_animation -/* 70C46C 8023875C 34C60010 */ ori $a2, $a2, 0x10 -/* 70C470 80238760 8E030000 */ lw $v1, ($s0) -/* 70C474 80238764 2402001E */ addiu $v0, $zero, 0x1e -.L80238768: -/* 70C478 80238768 14620005 */ bne $v1, $v0, .L80238780 -/* 70C47C 8023876C 24040100 */ addiu $a0, $zero, 0x100 -/* 70C480 80238770 0000282D */ daddu $a1, $zero, $zero -/* 70C484 80238774 3C060010 */ lui $a2, 0x10 -/* 70C488 80238778 0C098F3F */ jal set_animation -/* 70C48C 8023877C 34C60011 */ ori $a2, $a2, 0x11 -.L80238780: -/* 70C490 80238780 8E020000 */ lw $v0, ($s0) -/* 70C494 80238784 10400003 */ beqz $v0, .L80238794 -/* 70C498 80238788 2442FFFF */ addiu $v0, $v0, -1 -/* 70C49C 8023878C 0808E21D */ j .L80238874 -/* 70C4A0 80238790 AE020000 */ sw $v0, ($s0) -.L80238794: -/* 70C4A4 80238794 8FA90068 */ lw $t1, 0x68($sp) -/* 70C4A8 80238798 AD2000BC */ sw $zero, 0xbc($t1) -/* 70C4AC 8023879C AD2000C0 */ sw $zero, 0xc0($t1) -/* 70C4B0 802387A0 C6C00000 */ lwc1 $f0, ($s6) -/* 70C4B4 802387A4 4600028D */ trunc.w.s $f10, $f0 -/* 70C4B8 802387A8 E52A00A0 */ swc1 $f10, 0xa0($t1) -/* 70C4BC 802387AC C6C00004 */ lwc1 $f0, 4($s6) -/* 70C4C0 802387B0 4600028D */ trunc.w.s $f10, $f0 -/* 70C4C4 802387B4 E52A00A4 */ swc1 $f10, 0xa4($t1) -/* 70C4C8 802387B8 C6C00008 */ lwc1 $f0, 8($s6) -/* 70C4CC 802387BC 4600028D */ trunc.w.s $f10, $f0 -/* 70C4D0 802387C0 E52A00A8 */ swc1 $f10, 0xa8($t1) -/* 70C4D4 802387C4 C6CC0000 */ lwc1 $f12, ($s6) -/* 70C4D8 802387C8 C6CE0004 */ lwc1 $f14, 4($s6) -/* 70C4DC 802387CC 8EC6000C */ lw $a2, 0xc($s6) -/* 70C4E0 802387D0 0C00A7B5 */ jal dist2D -/* 70C4E4 802387D4 8EC70010 */ lw $a3, 0x10($s6) -/* 70C4E8 802387D8 C6C20024 */ lwc1 $f2, 0x24($s6) -/* 70C4EC 802387DC 3C014028 */ lui $at, 0x4028 -/* 70C4F0 802387E0 44812800 */ mtc1 $at, $f5 -/* 70C4F4 802387E4 44802000 */ mtc1 $zero, $f4 -/* 70C4F8 802387E8 46020003 */ div.s $f0, $f0, $f2 -/* 70C4FC 802387EC 460000A1 */ cvt.d.s $f2, $f0 -/* 70C500 802387F0 4624103E */ c.le.d $f2, $f4 -/* 70C504 802387F4 00000000 */ nop -/* 70C508 802387F8 45000004 */ bc1f .L8023880C -/* 70C50C 802387FC E6C0004C */ swc1 $f0, 0x4c($s6) -/* 70C510 80238800 8FA90068 */ lw $t1, 0x68($sp) -/* 70C514 80238804 24020001 */ addiu $v0, $zero, 1 -/* 70C518 80238808 AD2200C0 */ sw $v0, 0xc0($t1) -.L8023880C: -/* 70C51C 8023880C 3C048024 */ lui $a0, %hi(D_8023D28C) -/* 70C520 80238810 8C84D28C */ lw $a0, %lo(D_8023D28C)($a0) -/* 70C524 80238814 0C05123D */ jal hud_element_free -/* 70C528 80238818 0000902D */ daddu $s2, $zero, $zero -/* 70C52C 8023881C 3C048024 */ lui $a0, %hi(D_8023D288) -/* 70C530 80238820 8C84D288 */ lw $a0, %lo(D_8023D288)($a0) -/* 70C534 80238824 0C05123D */ jal hud_element_free -/* 70C538 80238828 00000000 */ nop -/* 70C53C 8023882C 3C048024 */ lui $a0, %hi(D_8023D2BC) -/* 70C540 80238830 8C84D2BC */ lw $a0, %lo(D_8023D2BC)($a0) -/* 70C544 80238834 3C108024 */ lui $s0, %hi(D_8023D2B8) -/* 70C548 80238838 2610D2B8 */ addiu $s0, $s0, %lo(D_8023D2B8) -/* 70C54C 8023883C 0C05123D */ jal hud_element_free -/* 70C550 80238840 00000000 */ nop -.L80238844: -/* 70C554 80238844 8E040000 */ lw $a0, ($s0) -/* 70C558 80238848 26100004 */ addiu $s0, $s0, 4 -/* 70C55C 8023884C 0C05123D */ jal hud_element_free -/* 70C560 80238850 26520001 */ addiu $s2, $s2, 1 -/* 70C564 80238854 1A40FFFB */ blez $s2, .L80238844 -/* 70C568 80238858 00000000 */ nop -/* 70C56C 8023885C 0C093EB1 */ jal btl_set_popup_duration -/* 70C570 80238860 0000202D */ daddu $a0, $zero, $zero -/* 70C574 80238864 0C05271B */ jal sfx_stop_sound -/* 70C578 80238868 24040312 */ addiu $a0, $zero, 0x312 -/* 70C57C 8023886C 0808E28D */ j .L80238A34 -/* 70C580 80238870 24020002 */ addiu $v0, $zero, 2 -.L80238874: -/* 70C584 80238874 3C148007 */ lui $s4, %hi(gCurrentCameraID) -/* 70C588 80238878 26947410 */ addiu $s4, $s4, %lo(gCurrentCameraID) -/* 70C58C 8023887C 27B30020 */ addiu $s3, $sp, 0x20 -/* 70C590 80238880 27B20024 */ addiu $s2, $sp, 0x24 -/* 70C594 80238884 8E840000 */ lw $a0, ($s4) -/* 70C598 80238888 27B10028 */ addiu $s1, $sp, 0x28 -/* 70C59C 8023888C AFB30010 */ sw $s3, 0x10($sp) -/* 70C5A0 80238890 AFB20014 */ sw $s2, 0x14($sp) -/* 70C5A4 80238894 AFB10018 */ sw $s1, 0x18($sp) -/* 70C5A8 80238898 8EC5000C */ lw $a1, 0xc($s6) -/* 70C5AC 8023889C 8EC60010 */ lw $a2, 0x10($s6) -/* 70C5B0 802388A0 0C00B94E */ jal get_screen_coords -/* 70C5B4 802388A4 8EC70014 */ lw $a3, 0x14($s6) -/* 70C5B8 802388A8 3C158024 */ lui $s5, %hi(D_8023D28C) -/* 70C5BC 802388AC 8EB5D28C */ lw $s5, %lo(D_8023D28C)($s5) -/* 70C5C0 802388B0 8FA50020 */ lw $a1, 0x20($sp) -/* 70C5C4 802388B4 8FA60024 */ lw $a2, 0x24($sp) -/* 70C5C8 802388B8 0C051261 */ jal hud_element_set_render_pos -/* 70C5CC 802388BC 02A0202D */ daddu $a0, $s5, $zero -/* 70C5D0 802388C0 02A0202D */ daddu $a0, $s5, $zero -/* 70C5D4 802388C4 3C108024 */ lui $s0, %hi(D_8023D290) -/* 70C5D8 802388C8 2610D290 */ addiu $s0, $s0, %lo(D_8023D290) -/* 70C5DC 802388CC 44800000 */ mtc1 $zero, $f0 -/* 70C5E0 802388D0 C60A0000 */ lwc1 $f10, ($s0) -/* 70C5E4 802388D4 468052A0 */ cvt.s.w $f10, $f10 -/* 70C5E8 802388D8 44050000 */ mfc1 $a1, $f0 -/* 70C5EC 802388DC 44075000 */ mfc1 $a3, $f10 -/* 70C5F0 802388E0 0C051489 */ jal hud_element_set_transform_rotation -/* 70C5F4 802388E4 00A0302D */ daddu $a2, $a1, $zero -/* 70C5F8 802388E8 8E020000 */ lw $v0, ($s0) -/* 70C5FC 802388EC 2442FFF6 */ addiu $v0, $v0, -0xa -/* 70C600 802388F0 44826000 */ mtc1 $v0, $f12 -/* 70C604 802388F4 00000000 */ nop -/* 70C608 802388F8 46806320 */ cvt.s.w $f12, $f12 -/* 70C60C 802388FC 0C00A6C9 */ jal clamp_angle -/* 70C610 80238900 AE020000 */ sw $v0, ($s0) -/* 70C614 80238904 8E840000 */ lw $a0, ($s4) -/* 70C618 80238908 AFB30010 */ sw $s3, 0x10($sp) -/* 70C61C 8023890C AFB20014 */ sw $s2, 0x14($sp) -/* 70C620 80238910 AFB10018 */ sw $s1, 0x18($sp) -/* 70C624 80238914 8EC50000 */ lw $a1, ($s6) -/* 70C628 80238918 8EC60004 */ lw $a2, 4($s6) -/* 70C62C 8023891C 8EC70008 */ lw $a3, 8($s6) -/* 70C630 80238920 4600028D */ trunc.w.s $f10, $f0 -/* 70C634 80238924 0C00B94E */ jal get_screen_coords -/* 70C638 80238928 E60A0000 */ swc1 $f10, ($s0) -/* 70C63C 8023892C 3C048024 */ lui $a0, %hi(D_8023D288) -/* 70C640 80238930 8C84D288 */ lw $a0, %lo(D_8023D288)($a0) -/* 70C644 80238934 8FA50020 */ lw $a1, 0x20($sp) -/* 70C648 80238938 0C051261 */ jal hud_element_set_render_pos -/* 70C64C 8023893C 8FA60024 */ lw $a2, 0x24($sp) -/* 70C650 80238940 8FA90068 */ lw $t1, 0x68($sp) -/* 70C654 80238944 8D230070 */ lw $v1, 0x70($t1) -/* 70C658 80238948 28620003 */ slti $v0, $v1, 3 -/* 70C65C 8023894C 10400013 */ beqz $v0, .L8023899C -/* 70C660 80238950 00000000 */ nop -/* 70C664 80238954 18600011 */ blez $v1, .L8023899C -/* 70C668 80238958 00000000 */ nop -/* 70C66C 8023895C 3C058024 */ lui $a1, %hi(D_8023D2C0) -/* 70C670 80238960 24A5D2C0 */ addiu $a1, $a1, %lo(D_8023D2C0) -/* 70C674 80238964 8CA20000 */ lw $v0, ($a1) -/* 70C678 80238968 24420014 */ addiu $v0, $v0, 0x14 -/* 70C67C 8023896C ACA20000 */ sw $v0, ($a1) -/* 70C680 80238970 28420033 */ slti $v0, $v0, 0x33 -/* 70C684 80238974 14400002 */ bnez $v0, .L80238980 -/* 70C688 80238978 24020032 */ addiu $v0, $zero, 0x32 -/* 70C68C 8023897C ACA20000 */ sw $v0, ($a1) -.L80238980: -/* 70C690 80238980 3C048024 */ lui $a0, %hi(D_8023D2BC) -/* 70C694 80238984 8C84D2BC */ lw $a0, %lo(D_8023D2BC)($a0) -/* 70C698 80238988 8CA50000 */ lw $a1, ($a1) -/* 70C69C 8023898C 3C068024 */ lui $a2, %hi(D_8023D2C4) -/* 70C6A0 80238990 8CC6D2C4 */ lw $a2, %lo(D_8023D2C4)($a2) -/* 70C6A4 80238994 0C051261 */ jal hud_element_set_render_pos -/* 70C6A8 80238998 00000000 */ nop -.L8023899C: -/* 70C6AC 8023899C 8FA80068 */ lw $t0, 0x68($sp) -/* 70C6B0 802389A0 8D040070 */ lw $a0, 0x70($t0) -/* 70C6B4 802389A4 28820003 */ slti $v0, $a0, 3 -/* 70C6B8 802389A8 1040001F */ beqz $v0, .L80238A28 -/* 70C6BC 802389AC 00000000 */ nop -/* 70C6C0 802389B0 1880001D */ blez $a0, .L80238A28 -/* 70C6C4 802389B4 0000902D */ daddu $s2, $zero, $zero -/* 70C6C8 802389B8 27B40020 */ addiu $s4, $sp, 0x20 -/* 70C6CC 802389BC C6C00000 */ lwc1 $f0, ($s6) -/* 70C6D0 802389C0 27B30024 */ addiu $s3, $sp, 0x24 -/* 70C6D4 802389C4 E7C00000 */ swc1 $f0, ($fp) -/* 70C6D8 802389C8 C6C00004 */ lwc1 $f0, 4($s6) -/* 70C6DC 802389CC 27B10028 */ addiu $s1, $sp, 0x28 -/* 70C6E0 802389D0 E7C00004 */ swc1 $f0, 4($fp) -/* 70C6E4 802389D4 C6C00008 */ lwc1 $f0, 8($s6) -/* 70C6E8 802389D8 3C108024 */ lui $s0, %hi(D_8023D2B8) -/* 70C6EC 802389DC 2610D2B8 */ addiu $s0, $s0, %lo(D_8023D2B8) -/* 70C6F0 802389E0 E7C00008 */ swc1 $f0, 8($fp) -.L802389E4: -/* 70C6F4 802389E4 3C048007 */ lui $a0, %hi(gCurrentCameraID) -/* 70C6F8 802389E8 8C847410 */ lw $a0, %lo(gCurrentCameraID)($a0) -/* 70C6FC 802389EC AFB40010 */ sw $s4, 0x10($sp) -/* 70C700 802389F0 AFB30014 */ sw $s3, 0x14($sp) -/* 70C704 802389F4 AFB10018 */ sw $s1, 0x18($sp) -/* 70C708 802389F8 8FC50000 */ lw $a1, ($fp) -/* 70C70C 802389FC 8FC60004 */ lw $a2, 4($fp) -/* 70C710 80238A00 8FC70008 */ lw $a3, 8($fp) -/* 70C714 80238A04 0C00B94E */ jal get_screen_coords -/* 70C718 80238A08 26520001 */ addiu $s2, $s2, 1 -/* 70C71C 80238A0C 8E040000 */ lw $a0, ($s0) -/* 70C720 80238A10 8FA50020 */ lw $a1, 0x20($sp) -/* 70C724 80238A14 8FA60024 */ lw $a2, 0x24($sp) -/* 70C728 80238A18 0C051261 */ jal hud_element_set_render_pos -/* 70C72C 80238A1C 26100004 */ addiu $s0, $s0, 4 -/* 70C730 80238A20 1A40FFF0 */ blez $s2, .L802389E4 -/* 70C734 80238A24 00000000 */ nop -.L80238A28: -/* 70C738 80238A28 0C093EB1 */ jal btl_set_popup_duration -/* 70C73C 80238A2C 24040063 */ addiu $a0, $zero, 0x63 -/* 70C740 80238A30 0000102D */ daddu $v0, $zero, $zero -.L80238A34: -/* 70C744 80238A34 8FBF0054 */ lw $ra, 0x54($sp) -/* 70C748 80238A38 8FBE0050 */ lw $fp, 0x50($sp) -/* 70C74C 80238A3C 8FB7004C */ lw $s7, 0x4c($sp) -/* 70C750 80238A40 8FB60048 */ lw $s6, 0x48($sp) -/* 70C754 80238A44 8FB50044 */ lw $s5, 0x44($sp) -/* 70C758 80238A48 8FB40040 */ lw $s4, 0x40($sp) -/* 70C75C 80238A4C 8FB3003C */ lw $s3, 0x3c($sp) -/* 70C760 80238A50 8FB20038 */ lw $s2, 0x38($sp) -/* 70C764 80238A54 8FB10034 */ lw $s1, 0x34($sp) -/* 70C768 80238A58 8FB00030 */ lw $s0, 0x30($sp) -/* 70C76C 80238A5C D7B60060 */ ldc1 $f22, 0x60($sp) -/* 70C770 80238A60 D7B40058 */ ldc1 $f20, 0x58($sp) -/* 70C774 80238A64 03E00008 */ jr $ra -/* 70C778 80238A68 27BD0068 */ addiu $sp, $sp, 0x68 diff --git a/ver/us/asm/nonmatchings/battle/partner/lakilester/func_80239140_70CE50.s b/ver/us/asm/nonmatchings/battle/partner/lakilester/func_80239140_70CE50.s deleted file mode 100644 index d29fabdea3..0000000000 --- a/ver/us/asm/nonmatchings/battle/partner/lakilester/func_80239140_70CE50.s +++ /dev/null @@ -1,971 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel D_8023D1C0_710ED0 -.double 0.1 - -dlabel D_8023D1C8_710ED8 -.double 2.8 - -.section .text - -glabel func_80239140_70CE50 -/* 70CE50 80239140 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 70CE54 80239144 AFB20038 */ sw $s2, 0x38($sp) -/* 70CE58 80239148 3C12800E */ lui $s2, %hi(gBattleStatus+0xDC) -/* 70CE5C 8023914C 8E52C14C */ lw $s2, %lo(gBattleStatus+0xDC)($s2) -/* 70CE60 80239150 AFB3003C */ sw $s3, 0x3c($sp) -/* 70CE64 80239154 0080982D */ daddu $s3, $a0, $zero -/* 70CE68 80239158 AFBF004C */ sw $ra, 0x4c($sp) -/* 70CE6C 8023915C AFB60048 */ sw $s6, 0x48($sp) -/* 70CE70 80239160 AFB50044 */ sw $s5, 0x44($sp) -/* 70CE74 80239164 AFB40040 */ sw $s4, 0x40($sp) -/* 70CE78 80239168 AFB10034 */ sw $s1, 0x34($sp) -/* 70CE7C 8023916C AFB00030 */ sw $s0, 0x30($sp) -/* 70CE80 80239170 F7BA0068 */ sdc1 $f26, 0x68($sp) -/* 70CE84 80239174 F7B80060 */ sdc1 $f24, 0x60($sp) -/* 70CE88 80239178 F7B60058 */ sdc1 $f22, 0x58($sp) -/* 70CE8C 8023917C F7B40050 */ sdc1 $f20, 0x50($sp) -/* 70CE90 80239180 10A00002 */ beqz $a1, .L8023918C -/* 70CE94 80239184 2656000C */ addiu $s6, $s2, 0xc -/* 70CE98 80239188 AE600070 */ sw $zero, 0x70($s3) -.L8023918C: -/* 70CE9C 8023918C 8E630070 */ lw $v1, 0x70($s3) -/* 70CEA0 80239190 10600005 */ beqz $v1, .L802391A8 -/* 70CEA4 80239194 24020001 */ addiu $v0, $zero, 1 -/* 70CEA8 80239198 10620075 */ beq $v1, $v0, .L80239370 -/* 70CEAC 8023919C 3C0451EB */ lui $a0, 0x51eb -/* 70CEB0 802391A0 0808E53B */ j .L802394EC -/* 70CEB4 802391A4 00000000 */ nop -.L802391A8: -/* 70CEB8 802391A8 0000202D */ daddu $a0, $zero, $zero -/* 70CEBC 802391AC 240200A5 */ addiu $v0, $zero, 0xa5 -/* 70CEC0 802391B0 24110001 */ addiu $s1, $zero, 1 -/* 70CEC4 802391B4 3C06C47A */ lui $a2, 0xc47a -/* 70CEC8 802391B8 44800000 */ mtc1 $zero, $f0 -/* 70CECC 802391BC 3C013F19 */ lui $at, 0x3f19 -/* 70CED0 802391C0 3421999A */ ori $at, $at, 0x999a -/* 70CED4 802391C4 44811000 */ mtc1 $at, $f2 -/* 70CED8 802391C8 44050000 */ mfc1 $a1, $f0 -/* 70CEDC 802391CC 3C01C000 */ lui $at, 0xc000 -/* 70CEE0 802391D0 44810000 */ mtc1 $at, $f0 -/* 70CEE4 802391D4 241000FF */ addiu $s0, $zero, 0xff -/* 70CEE8 802391D8 AE400054 */ sw $zero, 0x54($s2) -/* 70CEEC 802391DC A6420070 */ sh $v0, 0x70($s2) -/* 70CEF0 802391E0 A6400072 */ sh $zero, 0x72($s2) -/* 70CEF4 802391E4 3C018024 */ lui $at, %hi(D_8023D334) -/* 70CEF8 802391E8 AC31D334 */ sw $s1, %lo(D_8023D334)($at) -/* 70CEFC 802391EC 3C018024 */ lui $at, %hi(D_8023D338) -/* 70CF00 802391F0 AC30D338 */ sw $s0, %lo(D_8023D338)($at) -/* 70CF04 802391F4 AFA0001C */ sw $zero, 0x1c($sp) -/* 70CF08 802391F8 E7A20018 */ swc1 $f2, 0x18($sp) -/* 70CF0C 802391FC 00A0382D */ daddu $a3, $a1, $zero -/* 70CF10 80239200 AFA50010 */ sw $a1, 0x10($sp) -/* 70CF14 80239204 0C01C874 */ jal fx_huff_puff_breath -/* 70CF18 80239208 E7A00014 */ swc1 $f0, 0x14($sp) -/* 70CF1C 8023920C 8C44000C */ lw $a0, 0xc($v0) -/* 70CF20 80239210 24030014 */ addiu $v1, $zero, 0x14 -/* 70CF24 80239214 AC830018 */ sw $v1, 0x18($a0) -/* 70CF28 80239218 8C44000C */ lw $a0, 0xc($v0) -/* 70CF2C 8023921C 24030050 */ addiu $v1, $zero, 0x50 -/* 70CF30 80239220 AC83001C */ sw $v1, 0x1c($a0) -/* 70CF34 80239224 8C43000C */ lw $v1, 0xc($v0) -/* 70CF38 80239228 240500F0 */ addiu $a1, $zero, 0xf0 -/* 70CF3C 8023922C AC700020 */ sw $s0, 0x20($v1) -/* 70CF40 80239230 8C44000C */ lw $a0, 0xc($v0) -/* 70CF44 80239234 240300C8 */ addiu $v1, $zero, 0xc8 -/* 70CF48 80239238 AC830028 */ sw $v1, 0x28($a0) -/* 70CF4C 8023923C 8C43000C */ lw $v1, 0xc($v0) -/* 70CF50 80239240 3C068024 */ lui $a2, %hi(D_8023CCC0_7109D0) -/* 70CF54 80239244 24C6CCC0 */ addiu $a2, $a2, %lo(D_8023CCC0_7109D0) -/* 70CF58 80239248 AC65002C */ sw $a1, 0x2c($v1) -/* 70CF5C 8023924C 8C44000C */ lw $a0, 0xc($v0) -/* 70CF60 80239250 8CC30000 */ lw $v1, ($a2) -/* 70CF64 80239254 3C018024 */ lui $at, %hi(D_8023D1E4) -/* 70CF68 80239258 AC22D1E4 */ sw $v0, %lo(D_8023D1E4)($at) -/* 70CF6C 8023925C AC850030 */ sw $a1, 0x30($a0) -/* 70CF70 80239260 A060005C */ sb $zero, 0x5c($v1) -/* 70CF74 80239264 8CC40000 */ lw $a0, ($a2) -/* 70CF78 80239268 240200B1 */ addiu $v0, $zero, 0xb1 -/* 70CF7C 8023926C A4620054 */ sh $v0, 0x54($v1) -/* 70CF80 80239270 A4600044 */ sh $zero, 0x44($v1) -/* 70CF84 80239274 A4600046 */ sh $zero, 0x46($v1) -/* 70CF88 80239278 A4800070 */ sh $zero, 0x70($a0) -/* 70CF8C 8023927C 84820070 */ lh $v0, 0x70($a0) -/* 70CF90 80239280 3C014049 */ lui $at, 0x4049 -/* 70CF94 80239284 34210FD0 */ ori $at, $at, 0xfd0 -/* 70CF98 80239288 44810000 */ mtc1 $at, $f0 -/* 70CF9C 8023928C 44826000 */ mtc1 $v0, $f12 -/* 70CFA0 80239290 00000000 */ nop -/* 70CFA4 80239294 46806320 */ cvt.s.w $f12, $f12 -/* 70CFA8 80239298 46006302 */ mul.s $f12, $f12, $f0 -/* 70CFAC 8023929C 00000000 */ nop -/* 70CFB0 802392A0 3C018024 */ lui $at, %hi(D_8023D27C) -/* 70CFB4 802392A4 AC20D27C */ sw $zero, %lo(D_8023D27C)($at) -/* 70CFB8 802392A8 3C013F00 */ lui $at, 0x3f00 -/* 70CFBC 802392AC 44810000 */ mtc1 $at, $f0 -/* 70CFC0 802392B0 24021388 */ addiu $v0, $zero, 0x1388 -/* 70CFC4 802392B4 46006302 */ mul.s $f12, $f12, $f0 -/* 70CFC8 802392B8 00000000 */ nop -/* 70CFCC 802392BC A4820072 */ sh $v0, 0x72($a0) -/* 70CFD0 802392C0 3C01443B */ lui $at, 0x443b -/* 70CFD4 802392C4 34218000 */ ori $at, $at, 0x8000 -/* 70CFD8 802392C8 44810000 */ mtc1 $at, $f0 -/* 70CFDC 802392CC 2402FFFF */ addiu $v0, $zero, -1 -/* 70CFE0 802392D0 A482005A */ sh $v0, 0x5a($a0) -/* 70CFE4 802392D4 0C00A85B */ jal sin_rad -/* 70CFE8 802392D8 46006303 */ div.s $f12, $f12, $f0 -/* 70CFEC 802392DC 3C013FF0 */ lui $at, 0x3ff0 -/* 70CFF0 802392E0 44811800 */ mtc1 $at, $f3 -/* 70CFF4 802392E4 44801000 */ mtc1 $zero, $f2 -/* 70CFF8 802392E8 46000021 */ cvt.d.s $f0, $f0 -/* 70CFFC 802392EC 46201081 */ sub.d $f2, $f2, $f0 -/* 70D000 802392F0 3C014020 */ lui $at, 0x4020 -/* 70D004 802392F4 44810800 */ mtc1 $at, $f1 -/* 70D008 802392F8 44800000 */ mtc1 $zero, $f0 -/* 70D00C 802392FC 00000000 */ nop -/* 70D010 80239300 46201082 */ mul.d $f2, $f2, $f0 -/* 70D014 80239304 00000000 */ nop -/* 70D018 80239308 2402FFFF */ addiu $v0, $zero, -1 -/* 70D01C 8023930C 3C018024 */ lui $at, %hi(D_8023D274) -/* 70D020 80239310 AC22D274 */ sw $v0, %lo(D_8023D274)($at) -/* 70D024 80239314 3C01402A */ lui $at, 0x402a -/* 70D028 80239318 44810800 */ mtc1 $at, $f1 -/* 70D02C 8023931C 44800000 */ mtc1 $zero, $f0 -/* 70D030 80239320 240207D0 */ addiu $v0, $zero, 0x7d0 -/* 70D034 80239324 3C018024 */ lui $at, %hi(D_8023D26C) -/* 70D038 80239328 AC20D26C */ sw $zero, %lo(D_8023D26C)($at) -/* 70D03C 8023932C 3C018024 */ lui $at, %hi(D_8023D270) -/* 70D040 80239330 AC20D270 */ sw $zero, %lo(D_8023D270)($at) -/* 70D044 80239334 46201080 */ add.d $f2, $f2, $f0 -/* 70D048 80239338 3C018024 */ lui $at, %hi(D_8023D280) -/* 70D04C 8023933C AC20D280 */ sw $zero, %lo(D_8023D280)($at) -/* 70D050 80239340 3C018024 */ lui $at, %hi(D_8023D284) -/* 70D054 80239344 AC22D284 */ sw $v0, %lo(D_8023D284)($at) -/* 70D058 80239348 4620120D */ trunc.w.d $f8, $f2 -/* 70D05C 8023934C 3C018024 */ lui $at, %hi(D_8023D278) -/* 70D060 80239350 E428D278 */ swc1 $f8, %lo(D_8023D278)($at) -/* 70D064 80239354 0C00A67F */ jal rand_int -/* 70D068 80239358 2404000A */ addiu $a0, $zero, 0xa -/* 70D06C 8023935C 2442000B */ addiu $v0, $v0, 0xb -/* 70D070 80239360 AE620074 */ sw $v0, 0x74($s3) -/* 70D074 80239364 AE600078 */ sw $zero, 0x78($s3) -/* 70D078 80239368 0808E53B */ j .L802394EC -/* 70D07C 8023936C AE710070 */ sw $s1, 0x70($s3) -.L80239370: -/* 70D080 80239370 3C028024 */ lui $v0, %hi(D_8023D26C) -/* 70D084 80239374 8C42D26C */ lw $v0, %lo(D_8023D26C)($v0) -/* 70D088 80239378 3484851F */ ori $a0, $a0, 0x851f -/* 70D08C 8023937C 00021880 */ sll $v1, $v0, 2 -/* 70D090 80239380 00621821 */ addu $v1, $v1, $v0 -/* 70D094 80239384 00031100 */ sll $v0, $v1, 4 -/* 70D098 80239388 00431023 */ subu $v0, $v0, $v1 -/* 70D09C 8023938C 00021040 */ sll $v0, $v0, 1 -/* 70D0A0 80239390 00440018 */ mult $v0, $a0 -/* 70D0A4 80239394 0000882D */ daddu $s1, $zero, $zero -/* 70D0A8 80239398 000217C3 */ sra $v0, $v0, 0x1f -/* 70D0AC 8023939C 00004810 */ mfhi $t1 -/* 70D0B0 802393A0 00091943 */ sra $v1, $t1, 5 -/* 70D0B4 802393A4 00621823 */ subu $v1, $v1, $v0 -/* 70D0B8 802393A8 2463FFB5 */ addiu $v1, $v1, -0x4b -/* 70D0BC 802393AC 8242040C */ lb $v0, 0x40c($s2) -/* 70D0C0 802393B0 44830000 */ mtc1 $v1, $f0 -/* 70D0C4 802393B4 00000000 */ nop -/* 70D0C8 802393B8 46800020 */ cvt.s.w $f0, $f0 -/* 70D0CC 802393BC 18400024 */ blez $v0, .L80239450 -/* 70D0D0 802393C0 E6400054 */ swc1 $f0, 0x54($s2) -/* 70D0D4 802393C4 3C158024 */ lui $s5, %hi(D_8023D2D0) -/* 70D0D8 802393C8 26B5D2D0 */ addiu $s5, $s5, %lo(D_8023D2D0) -/* 70D0DC 802393CC 2414FFFF */ addiu $s4, $zero, -1 -/* 70D0E0 802393D0 3C014150 */ lui $at, 0x4150 -/* 70D0E4 802393D4 4481A000 */ mtc1 $at, $f20 -/* 70D0E8 802393D8 02511021 */ addu $v0, $s2, $s1 -.L802393DC: -/* 70D0EC 802393DC 8043040D */ lb $v1, 0x40d($v0) -/* 70D0F0 802393E0 00032080 */ sll $a0, $v1, 2 -/* 70D0F4 802393E4 00951021 */ addu $v0, $a0, $s5 -/* 70D0F8 802393E8 8C420000 */ lw $v0, ($v0) -/* 70D0FC 802393EC 10540013 */ beq $v0, $s4, .L8023943C -/* 70D100 802393F0 00000000 */ nop -/* 70D104 802393F4 10400011 */ beqz $v0, .L8023943C -/* 70D108 802393F8 00831021 */ addu $v0, $a0, $v1 -/* 70D10C 802393FC 00021080 */ sll $v0, $v0, 2 -/* 70D110 80239400 00521021 */ addu $v0, $v0, $s2 -/* 70D114 80239404 0C09A75B */ jal get_actor -/* 70D118 80239408 8444022C */ lh $a0, 0x22c($v0) -/* 70D11C 8023940C 0040802D */ daddu $s0, $v0, $zero -/* 70D120 80239410 C600018C */ lwc1 $f0, 0x18c($s0) -/* 70D124 80239414 3C028024 */ lui $v0, %hi(D_8023D270) -/* 70D128 80239418 8C42D270 */ lw $v0, %lo(D_8023D270)($v0) -/* 70D12C 8023941C 46140000 */ add.s $f0, $f0, $f20 -/* 70D130 80239420 00021080 */ sll $v0, $v0, 2 -/* 70D134 80239424 44826000 */ mtc1 $v0, $f12 -/* 70D138 80239428 00000000 */ nop -/* 70D13C 8023942C 46806320 */ cvt.s.w $f12, $f12 -/* 70D140 80239430 0C00A6C9 */ jal clamp_angle -/* 70D144 80239434 460C0300 */ add.s $f12, $f0, $f12 -/* 70D148 80239438 E600018C */ swc1 $f0, 0x18c($s0) -.L8023943C: -/* 70D14C 8023943C 8242040C */ lb $v0, 0x40c($s2) -/* 70D150 80239440 26310001 */ addiu $s1, $s1, 1 -/* 70D154 80239444 0222102A */ slt $v0, $s1, $v0 -/* 70D158 80239448 1440FFE4 */ bnez $v0, .L802393DC -/* 70D15C 8023944C 02511021 */ addu $v0, $s2, $s1 -.L80239450: -/* 70D160 80239450 86C20064 */ lh $v0, 0x64($s6) -/* 70D164 80239454 96C30064 */ lhu $v1, 0x64($s6) -/* 70D168 80239458 10400003 */ beqz $v0, .L80239468 -/* 70D16C 8023945C 2462FFFF */ addiu $v0, $v1, -1 -/* 70D170 80239460 0808E53B */ j .L802394EC -/* 70D174 80239464 A6C20064 */ sh $v0, 0x64($s6) -.L80239468: -/* 70D178 80239468 8242040C */ lb $v0, 0x40c($s2) -/* 70D17C 8023946C 18400017 */ blez $v0, .L802394CC -/* 70D180 80239470 0000882D */ daddu $s1, $zero, $zero -/* 70D184 80239474 3C138024 */ lui $s3, %hi(D_8023D2D0) -/* 70D188 80239478 2673D2D0 */ addiu $s3, $s3, %lo(D_8023D2D0) -/* 70D18C 8023947C 2410FFFF */ addiu $s0, $zero, -1 -/* 70D190 80239480 02511021 */ addu $v0, $s2, $s1 -.L80239484: -/* 70D194 80239484 8043040D */ lb $v1, 0x40d($v0) -/* 70D198 80239488 00032080 */ sll $a0, $v1, 2 -/* 70D19C 8023948C 00931021 */ addu $v0, $a0, $s3 -/* 70D1A0 80239490 8C420000 */ lw $v0, ($v0) -/* 70D1A4 80239494 10500008 */ beq $v0, $s0, .L802394B8 -/* 70D1A8 80239498 00000000 */ nop -/* 70D1AC 8023949C 10400006 */ beqz $v0, .L802394B8 -/* 70D1B0 802394A0 00831021 */ addu $v0, $a0, $v1 -/* 70D1B4 802394A4 00021080 */ sll $v0, $v0, 2 -/* 70D1B8 802394A8 00521021 */ addu $v0, $v0, $s2 -/* 70D1BC 802394AC 0C09A75B */ jal get_actor -/* 70D1C0 802394B0 8444022C */ lh $a0, 0x22c($v0) -/* 70D1C4 802394B4 AC40018C */ sw $zero, 0x18c($v0) -.L802394B8: -/* 70D1C8 802394B8 8242040C */ lb $v0, 0x40c($s2) -/* 70D1CC 802394BC 26310001 */ addiu $s1, $s1, 1 -/* 70D1D0 802394C0 0222102A */ slt $v0, $s1, $v0 -/* 70D1D4 802394C4 1440FFEF */ bnez $v0, .L80239484 -/* 70D1D8 802394C8 02511021 */ addu $v0, $s2, $s1 -.L802394CC: -/* 70D1DC 802394CC 3C048024 */ lui $a0, %hi(D_8023D1E4) -/* 70D1E0 802394D0 8C84D1E4 */ lw $a0, %lo(D_8023D1E4)($a0) -/* 70D1E4 802394D4 3C018024 */ lui $at, %hi(D_8023D334) -/* 70D1E8 802394D8 AC20D334 */ sw $zero, %lo(D_8023D334)($at) -/* 70D1EC 802394DC 0C016914 */ jal remove_effect -/* 70D1F0 802394E0 00000000 */ nop -/* 70D1F4 802394E4 0808E7D3 */ j .L80239F4C -/* 70D1F8 802394E8 24020002 */ addiu $v0, $zero, 2 -.L802394EC: -/* 70D1FC 802394EC 3C118024 */ lui $s1, %hi(D_8023D1E4) -/* 70D200 802394F0 2631D1E4 */ addiu $s1, $s1, %lo(D_8023D1E4) -/* 70D204 802394F4 3C018024 */ lui $at, %hi(D_8023D280) -/* 70D208 802394F8 C420D280 */ lwc1 $f0, %lo(D_8023D280)($at) -/* 70D20C 802394FC 46800021 */ cvt.d.w $f0, $f0 -/* 70D210 80239500 3C014049 */ lui $at, 0x4049 -/* 70D214 80239504 44811800 */ mtc1 $at, $f3 -/* 70D218 80239508 44801000 */ mtc1 $zero, $f2 -/* 70D21C 8023950C 3C013FF0 */ lui $at, 0x3ff0 -/* 70D220 80239510 44812800 */ mtc1 $at, $f5 -/* 70D224 80239514 44802000 */ mtc1 $zero, $f4 -/* 70D228 80239518 8E220000 */ lw $v0, ($s1) -/* 70D22C 8023951C 46220003 */ div.d $f0, $f0, $f2 -/* 70D230 80239520 46240000 */ add.d $f0, $f0, $f4 -/* 70D234 80239524 8C42000C */ lw $v0, 0xc($v0) -/* 70D238 80239528 46200020 */ cvt.s.d $f0, $f0 -/* 70D23C 8023952C E440004C */ swc1 $f0, 0x4c($v0) -/* 70D240 80239530 C6400144 */ lwc1 $f0, 0x144($s2) -/* 70D244 80239534 C6420148 */ lwc1 $f2, 0x148($s2) -/* 70D248 80239538 240403E8 */ addiu $a0, $zero, 0x3e8 -/* 70D24C 8023953C E7A00028 */ swc1 $f0, 0x28($sp) -/* 70D250 80239540 0C00A67F */ jal rand_int -/* 70D254 80239544 E7A2002C */ swc1 $f2, 0x2c($sp) -/* 70D258 80239548 3C108024 */ lui $s0, %hi(D_8023D274) -/* 70D25C 8023954C 8E10D274 */ lw $s0, %lo(D_8023D274)($s0) -/* 70D260 80239550 3C0140A0 */ lui $at, 0x40a0 -/* 70D264 80239554 4481A000 */ mtc1 $at, $f20 -/* 70D268 80239558 1200003E */ beqz $s0, .L80239654 -/* 70D26C 8023955C 00000000 */ nop -/* 70D270 80239560 1E000006 */ bgtz $s0, .L8023957C -/* 70D274 80239564 24020001 */ addiu $v0, $zero, 1 -/* 70D278 80239568 2402FFFF */ addiu $v0, $zero, -1 -/* 70D27C 8023956C 12020007 */ beq $s0, $v0, .L8023958C -/* 70D280 80239570 27A40028 */ addiu $a0, $sp, 0x28 -/* 70D284 80239574 0808E5CE */ j .L80239738 -/* 70D288 80239578 00000000 */ nop -.L8023957C: -/* 70D28C 8023957C 1202003F */ beq $s0, $v0, .L8023967C -/* 70D290 80239580 27A40028 */ addiu $a0, $sp, 0x28 -/* 70D294 80239584 0808E5CE */ j .L80239738 -/* 70D298 80239588 00000000 */ nop -.L8023958C: -/* 70D29C 8023958C 3C064140 */ lui $a2, 0x4140 -/* 70D2A0 80239590 C6400148 */ lwc1 $f0, 0x148($s2) -/* 70D2A4 80239594 3C014170 */ lui $at, 0x4170 -/* 70D2A8 80239598 44811000 */ mtc1 $at, $f2 -/* 70D2AC 8023959C 3C0742B4 */ lui $a3, 0x42b4 -/* 70D2B0 802395A0 C6440144 */ lwc1 $f4, 0x144($s2) -/* 70D2B4 802395A4 46020000 */ add.s $f0, $f0, $f2 -/* 70D2B8 802395A8 C642014C */ lwc1 $f2, 0x14c($s2) -/* 70D2BC 802395AC 27A5002C */ addiu $a1, $sp, 0x2c -/* 70D2C0 802395B0 E7A40028 */ swc1 $f4, 0x28($sp) -/* 70D2C4 802395B4 46141600 */ add.s $f24, $f2, $f20 -/* 70D2C8 802395B8 0C00A7E7 */ jal add_vec2D_polar -/* 70D2CC 802395BC E7A0002C */ swc1 $f0, 0x2c($sp) -/* 70D2D0 802395C0 8E230000 */ lw $v1, ($s1) -/* 70D2D4 802395C4 C7A00028 */ lwc1 $f0, 0x28($sp) -/* 70D2D8 802395C8 8C62000C */ lw $v0, 0xc($v1) -/* 70D2DC 802395CC E4400004 */ swc1 $f0, 4($v0) -/* 70D2E0 802395D0 8C62000C */ lw $v0, 0xc($v1) -/* 70D2E4 802395D4 C7A0002C */ lwc1 $f0, 0x2c($sp) -/* 70D2E8 802395D8 E4400008 */ swc1 $f0, 8($v0) -/* 70D2EC 802395DC 8C62000C */ lw $v0, 0xc($v1) -/* 70D2F0 802395E0 3C01C000 */ lui $at, 0xc000 -/* 70D2F4 802395E4 44810000 */ mtc1 $at, $f0 -/* 70D2F8 802395E8 E458000C */ swc1 $f24, 0xc($v0) -/* 70D2FC 802395EC 8C62000C */ lw $v0, 0xc($v1) -/* 70D300 802395F0 E440003C */ swc1 $f0, 0x3c($v0) -/* 70D304 802395F4 8C62000C */ lw $v0, 0xc($v1) -/* 70D308 802395F8 3C01C47A */ lui $at, 0xc47a -/* 70D30C 802395FC 44810000 */ mtc1 $at, $f0 -/* 70D310 80239600 AC400004 */ sw $zero, 4($v0) -/* 70D314 80239604 8C62000C */ lw $v0, 0xc($v1) -/* 70D318 80239608 E4400008 */ swc1 $f0, 8($v0) -/* 70D31C 8023960C 8C62000C */ lw $v0, 0xc($v1) -/* 70D320 80239610 AC40000C */ sw $zero, 0xc($v0) -/* 70D324 80239614 8E620078 */ lw $v0, 0x78($s3) -/* 70D328 80239618 10400007 */ beqz $v0, .L80239638 -/* 70D32C 8023961C 2404201E */ addiu $a0, $zero, 0x201e -/* 70D330 80239620 C640014C */ lwc1 $f0, 0x14c($s2) -/* 70D334 80239624 E7A00010 */ swc1 $f0, 0x10($sp) -/* 70D338 80239628 8E460144 */ lw $a2, 0x144($s2) -/* 70D33C 8023962C 8E470148 */ lw $a3, 0x148($s2) -/* 70D340 80239630 0C052757 */ jal sfx_play_sound_at_position -/* 70D344 80239634 0000282D */ daddu $a1, $zero, $zero -.L80239638: -/* 70D348 80239638 24040100 */ addiu $a0, $zero, 0x100 -/* 70D34C 8023963C 2405FFFF */ addiu $a1, $zero, -1 -/* 70D350 80239640 3C060010 */ lui $a2, 0x10 -/* 70D354 80239644 34C60016 */ ori $a2, $a2, 0x16 -/* 70D358 80239648 AE600078 */ sw $zero, 0x78($s3) -/* 70D35C 8023964C 0808E5CC */ j .L80239730 -/* 70D360 80239650 A6C00066 */ sh $zero, 0x66($s6) -.L80239654: -/* 70D364 80239654 8E230000 */ lw $v1, ($s1) -/* 70D368 80239658 3C01C47A */ lui $at, 0xc47a -/* 70D36C 8023965C 44810000 */ mtc1 $at, $f0 -/* 70D370 80239660 8C62000C */ lw $v0, 0xc($v1) -/* 70D374 80239664 AC400004 */ sw $zero, 4($v0) -/* 70D378 80239668 8C62000C */ lw $v0, 0xc($v1) -/* 70D37C 8023966C E4400008 */ swc1 $f0, 8($v0) -/* 70D380 80239670 8C62000C */ lw $v0, 0xc($v1) -/* 70D384 80239674 0808E5CE */ j .L80239738 -/* 70D388 80239678 AC40000C */ sw $zero, 0xc($v0) -.L8023967C: -/* 70D38C 8023967C 3C064140 */ lui $a2, 0x4140 -/* 70D390 80239680 C6400148 */ lwc1 $f0, 0x148($s2) -/* 70D394 80239684 3C014170 */ lui $at, 0x4170 -/* 70D398 80239688 44811000 */ mtc1 $at, $f2 -/* 70D39C 8023968C 3C0742B4 */ lui $a3, 0x42b4 -/* 70D3A0 80239690 C6440144 */ lwc1 $f4, 0x144($s2) -/* 70D3A4 80239694 46020000 */ add.s $f0, $f0, $f2 -/* 70D3A8 80239698 C642014C */ lwc1 $f2, 0x14c($s2) -/* 70D3AC 8023969C 27A5002C */ addiu $a1, $sp, 0x2c -/* 70D3B0 802396A0 E7A40028 */ swc1 $f4, 0x28($sp) -/* 70D3B4 802396A4 46141600 */ add.s $f24, $f2, $f20 -/* 70D3B8 802396A8 0C00A7E7 */ jal add_vec2D_polar -/* 70D3BC 802396AC E7A0002C */ swc1 $f0, 0x2c($sp) -/* 70D3C0 802396B0 8E230000 */ lw $v1, ($s1) -/* 70D3C4 802396B4 C7A00028 */ lwc1 $f0, 0x28($sp) -/* 70D3C8 802396B8 8C62000C */ lw $v0, 0xc($v1) -/* 70D3CC 802396BC E4400004 */ swc1 $f0, 4($v0) -/* 70D3D0 802396C0 8C62000C */ lw $v0, 0xc($v1) -/* 70D3D4 802396C4 C7A0002C */ lwc1 $f0, 0x2c($sp) -/* 70D3D8 802396C8 E4400008 */ swc1 $f0, 8($v0) -/* 70D3DC 802396CC 8C62000C */ lw $v0, 0xc($v1) -/* 70D3E0 802396D0 3C014000 */ lui $at, 0x4000 -/* 70D3E4 802396D4 44810000 */ mtc1 $at, $f0 -/* 70D3E8 802396D8 E458000C */ swc1 $f24, 0xc($v0) -/* 70D3EC 802396DC 8C62000C */ lw $v0, 0xc($v1) -/* 70D3F0 802396E0 E440003C */ swc1 $f0, 0x3c($v0) -/* 70D3F4 802396E4 8E620078 */ lw $v0, 0x78($s3) -/* 70D3F8 802396E8 54400009 */ bnel $v0, $zero, .L80239710 -/* 70D3FC 802396EC AE700078 */ sw $s0, 0x78($s3) -/* 70D400 802396F0 C640014C */ lwc1 $f0, 0x14c($s2) -/* 70D404 802396F4 2404201F */ addiu $a0, $zero, 0x201f -/* 70D408 802396F8 E7A00010 */ swc1 $f0, 0x10($sp) -/* 70D40C 802396FC 8E460144 */ lw $a2, 0x144($s2) -/* 70D410 80239700 8E470148 */ lw $a3, 0x148($s2) -/* 70D414 80239704 0C052757 */ jal sfx_play_sound_at_position -/* 70D418 80239708 0000282D */ daddu $a1, $zero, $zero -/* 70D41C 8023970C AE700078 */ sw $s0, 0x78($s3) -.L80239710: -/* 70D420 80239710 86C20066 */ lh $v0, 0x66($s6) -/* 70D424 80239714 50400001 */ beql $v0, $zero, .L8023971C -/* 70D428 80239718 AE700074 */ sw $s0, 0x74($s3) -.L8023971C: -/* 70D42C 8023971C A6D00066 */ sh $s0, 0x66($s6) -/* 70D430 80239720 24040100 */ addiu $a0, $zero, 0x100 -/* 70D434 80239724 2405FFFF */ addiu $a1, $zero, -1 -/* 70D438 80239728 3C060010 */ lui $a2, 0x10 -/* 70D43C 8023972C 34C60017 */ ori $a2, $a2, 0x17 -.L80239730: -/* 70D440 80239730 0C098F3F */ jal set_animation -/* 70D444 80239734 00000000 */ nop -.L80239738: -/* 70D448 80239738 3C108024 */ lui $s0, %hi(D_8023D270) -/* 70D44C 8023973C 2610D270 */ addiu $s0, $s0, %lo(D_8023D270) -/* 70D450 80239740 3C128007 */ lui $s2, %hi(gGameStatusPtr) -/* 70D454 80239744 2652419C */ addiu $s2, $s2, %lo(gGameStatusPtr) -/* 70D458 80239748 8E020000 */ lw $v0, ($s0) -/* 70D45C 8023974C 24110007 */ addiu $s1, $zero, 7 -/* 70D460 80239750 00021FC2 */ srl $v1, $v0, 0x1f -/* 70D464 80239754 00431021 */ addu $v0, $v0, $v1 -/* 70D468 80239758 8E430000 */ lw $v1, ($s2) -/* 70D46C 8023975C 00021043 */ sra $v0, $v0, 1 -/* 70D470 80239760 94630134 */ lhu $v1, 0x134($v1) -/* 70D474 80239764 02221023 */ subu $v0, $s1, $v0 -/* 70D478 80239768 14400002 */ bnez $v0, .L80239774 -/* 70D47C 8023976C 0062001A */ div $zero, $v1, $v0 -/* 70D480 80239770 0007000D */ break 7 -.L80239774: -/* 70D484 80239774 2401FFFF */ addiu $at, $zero, -1 -/* 70D488 80239778 14410004 */ bne $v0, $at, .L8023978C -/* 70D48C 8023977C 3C018000 */ lui $at, 0x8000 -/* 70D490 80239780 14610002 */ bne $v1, $at, .L8023978C -/* 70D494 80239784 00000000 */ nop -/* 70D498 80239788 0006000D */ break 6 -.L8023978C: -/* 70D49C 8023978C 00001010 */ mfhi $v0 -/* 70D4A0 80239790 14400043 */ bnez $v0, .L802398A0 -/* 70D4A4 80239794 24040064 */ addiu $a0, $zero, 0x64 -/* 70D4A8 80239798 3C014248 */ lui $at, 0x4248 -/* 70D4AC 8023979C 4481C000 */ mtc1 $at, $f24 -/* 70D4B0 802397A0 3C01C35C */ lui $at, 0xc35c -/* 70D4B4 802397A4 44810000 */ mtc1 $at, $f0 -/* 70D4B8 802397A8 0C00A67F */ jal rand_int -/* 70D4BC 802397AC E7A00028 */ swc1 $f0, 0x28($sp) -/* 70D4C0 802397B0 24040064 */ addiu $a0, $zero, 0x64 -/* 70D4C4 802397B4 240300B0 */ addiu $v1, $zero, 0xb0 -/* 70D4C8 802397B8 00621823 */ subu $v1, $v1, $v0 -/* 70D4CC 802397BC 44830000 */ mtc1 $v1, $f0 -/* 70D4D0 802397C0 00000000 */ nop -/* 70D4D4 802397C4 46800020 */ cvt.s.w $f0, $f0 -/* 70D4D8 802397C8 0C00A67F */ jal rand_int -/* 70D4DC 802397CC E7A0002C */ swc1 $f0, 0x2c($sp) -/* 70D4E0 802397D0 240403E8 */ addiu $a0, $zero, 0x3e8 -/* 70D4E4 802397D4 24420064 */ addiu $v0, $v0, 0x64 -/* 70D4E8 802397D8 C7A2002C */ lwc1 $f2, 0x2c($sp) -/* 70D4EC 802397DC 44820000 */ mtc1 $v0, $f0 -/* 70D4F0 802397E0 00000000 */ nop -/* 70D4F4 802397E4 46800020 */ cvt.s.w $f0, $f0 -/* 70D4F8 802397E8 0C00A67F */ jal rand_int -/* 70D4FC 802397EC 46001681 */ sub.s $f26, $f2, $f0 -/* 70D500 802397F0 4482A000 */ mtc1 $v0, $f20 -/* 70D504 802397F4 00000000 */ nop -/* 70D508 802397F8 4680A520 */ cvt.s.w $f20, $f20 -/* 70D50C 802397FC 3C01453B */ lui $at, 0x453b -/* 70D510 80239800 34218000 */ ori $at, $at, 0x8000 -/* 70D514 80239804 44810000 */ mtc1 $at, $f0 -/* 70D518 80239808 3C013FE0 */ lui $at, 0x3fe0 -/* 70D51C 8023980C 44811800 */ mtc1 $at, $f3 -/* 70D520 80239810 44801000 */ mtc1 $zero, $f2 -/* 70D524 80239814 4600A003 */ div.s $f0, $f20, $f0 -/* 70D528 80239818 46000021 */ cvt.d.s $f0, $f0 -/* 70D52C 8023981C 46220000 */ add.d $f0, $f0, $f2 -/* 70D530 80239820 240403E8 */ addiu $a0, $zero, 0x3e8 -/* 70D534 80239824 3C01435C */ lui $at, 0x435c -/* 70D538 80239828 4481B000 */ mtc1 $at, $f22 -/* 70D53C 8023982C 0C00A67F */ jal rand_int -/* 70D540 80239830 46200520 */ cvt.s.d $f20, $f0 -/* 70D544 80239834 44820000 */ mtc1 $v0, $f0 -/* 70D548 80239838 00000000 */ nop -/* 70D54C 8023983C 46800020 */ cvt.s.w $f0, $f0 -/* 70D550 80239840 4407C000 */ mfc1 $a3, $f24 -/* 70D554 80239844 3C014396 */ lui $at, 0x4396 -/* 70D558 80239848 44811000 */ mtc1 $at, $f2 -/* 70D55C 8023984C C7A40028 */ lwc1 $f4, 0x28($sp) -/* 70D560 80239850 C7A6002C */ lwc1 $f6, 0x2c($sp) -/* 70D564 80239854 24040001 */ addiu $a0, $zero, 1 -/* 70D568 80239858 E7B60010 */ swc1 $f22, 0x10($sp) -/* 70D56C 8023985C E7BA0014 */ swc1 $f26, 0x14($sp) -/* 70D570 80239860 E7B40020 */ swc1 $f20, 0x20($sp) -/* 70D574 80239864 46020083 */ div.s $f2, $f0, $f2 -/* 70D578 80239868 3C014017 */ lui $at, 0x4017 -/* 70D57C 8023986C 44810800 */ mtc1 $at, $f1 -/* 70D580 80239870 44800000 */ mtc1 $zero, $f0 -/* 70D584 80239874 460010A1 */ cvt.d.s $f2, $f2 -/* 70D588 80239878 46201080 */ add.d $f2, $f2, $f0 -/* 70D58C 8023987C AFA70018 */ sw $a3, 0x18($sp) -/* 70D590 80239880 C6000000 */ lwc1 $f0, ($s0) -/* 70D594 80239884 46800021 */ cvt.d.w $f0, $f0 -/* 70D598 80239888 46201080 */ add.d $f2, $f2, $f0 -/* 70D59C 8023988C 44052000 */ mfc1 $a1, $f4 -/* 70D5A0 80239890 44063000 */ mfc1 $a2, $f6 -/* 70D5A4 80239894 46201020 */ cvt.s.d $f0, $f2 -/* 70D5A8 80239898 0C01C904 */ jal fx_moving_cloud -/* 70D5AC 8023989C E7A0001C */ swc1 $f0, 0x1c($sp) -.L802398A0: -/* 70D5B0 802398A0 8E020000 */ lw $v0, ($s0) -/* 70D5B4 802398A4 00021FC2 */ srl $v1, $v0, 0x1f -/* 70D5B8 802398A8 00431021 */ addu $v0, $v0, $v1 -/* 70D5BC 802398AC 8E430000 */ lw $v1, ($s2) -/* 70D5C0 802398B0 00021043 */ sra $v0, $v0, 1 -/* 70D5C4 802398B4 94630134 */ lhu $v1, 0x134($v1) -/* 70D5C8 802398B8 02221023 */ subu $v0, $s1, $v0 -/* 70D5CC 802398BC 14400002 */ bnez $v0, .L802398C8 -/* 70D5D0 802398C0 0062001A */ div $zero, $v1, $v0 -/* 70D5D4 802398C4 0007000D */ break 7 -.L802398C8: -/* 70D5D8 802398C8 2401FFFF */ addiu $at, $zero, -1 -/* 70D5DC 802398CC 14410004 */ bne $v0, $at, .L802398E0 -/* 70D5E0 802398D0 3C018000 */ lui $at, 0x8000 -/* 70D5E4 802398D4 14610002 */ bne $v1, $at, .L802398E0 -/* 70D5E8 802398D8 00000000 */ nop -/* 70D5EC 802398DC 0006000D */ break 6 -.L802398E0: -/* 70D5F0 802398E0 00001010 */ mfhi $v0 -/* 70D5F4 802398E4 14400046 */ bnez $v0, .L80239A00 -/* 70D5F8 802398E8 24040064 */ addiu $a0, $zero, 0x64 -/* 70D5FC 802398EC 3C01C248 */ lui $at, 0xc248 -/* 70D600 802398F0 4481C000 */ mtc1 $at, $f24 -/* 70D604 802398F4 3C01C35C */ lui $at, 0xc35c -/* 70D608 802398F8 44810000 */ mtc1 $at, $f0 -/* 70D60C 802398FC 0C00A67F */ jal rand_int -/* 70D610 80239900 E7A00028 */ swc1 $f0, 0x28($sp) -/* 70D614 80239904 24040064 */ addiu $a0, $zero, 0x64 -/* 70D618 80239908 240300B0 */ addiu $v1, $zero, 0xb0 -/* 70D61C 8023990C 00621823 */ subu $v1, $v1, $v0 -/* 70D620 80239910 44830000 */ mtc1 $v1, $f0 -/* 70D624 80239914 00000000 */ nop -/* 70D628 80239918 46800020 */ cvt.s.w $f0, $f0 -/* 70D62C 8023991C 0C00A67F */ jal rand_int -/* 70D630 80239920 E7A0002C */ swc1 $f0, 0x2c($sp) -/* 70D634 80239924 240403E8 */ addiu $a0, $zero, 0x3e8 -/* 70D638 80239928 24420064 */ addiu $v0, $v0, 0x64 -/* 70D63C 8023992C C7A2002C */ lwc1 $f2, 0x2c($sp) -/* 70D640 80239930 44820000 */ mtc1 $v0, $f0 -/* 70D644 80239934 00000000 */ nop -/* 70D648 80239938 46800020 */ cvt.s.w $f0, $f0 -/* 70D64C 8023993C 0C00A67F */ jal rand_int -/* 70D650 80239940 46001681 */ sub.s $f26, $f2, $f0 -/* 70D654 80239944 4482A000 */ mtc1 $v0, $f20 -/* 70D658 80239948 00000000 */ nop -/* 70D65C 8023994C 4680A520 */ cvt.s.w $f20, $f20 -/* 70D660 80239950 3C01457A */ lui $at, 0x457a -/* 70D664 80239954 44810000 */ mtc1 $at, $f0 -/* 70D668 80239958 3C018024 */ lui $at, %hi(D_8023D1C0_710ED0) -/* 70D66C 8023995C D422D1C0 */ ldc1 $f2, %lo(D_8023D1C0_710ED0)($at) -/* 70D670 80239960 4600A003 */ div.s $f0, $f20, $f0 -/* 70D674 80239964 46000021 */ cvt.d.s $f0, $f0 -/* 70D678 80239968 46220000 */ add.d $f0, $f0, $f2 -/* 70D67C 8023996C 240403E8 */ addiu $a0, $zero, 0x3e8 -/* 70D680 80239970 3C01435C */ lui $at, 0x435c -/* 70D684 80239974 4481B000 */ mtc1 $at, $f22 -/* 70D688 80239978 0C00A67F */ jal rand_int -/* 70D68C 8023997C 46200520 */ cvt.s.d $f20, $f0 -/* 70D690 80239980 44820000 */ mtc1 $v0, $f0 -/* 70D694 80239984 00000000 */ nop -/* 70D698 80239988 46800020 */ cvt.s.w $f0, $f0 -/* 70D69C 8023998C 4407C000 */ mfc1 $a3, $f24 -/* 70D6A0 80239990 3C014396 */ lui $at, 0x4396 -/* 70D6A4 80239994 44811000 */ mtc1 $at, $f2 -/* 70D6A8 80239998 C7A40028 */ lwc1 $f4, 0x28($sp) -/* 70D6AC 8023999C C7A6002C */ lwc1 $f6, 0x2c($sp) -/* 70D6B0 802399A0 24040001 */ addiu $a0, $zero, 1 -/* 70D6B4 802399A4 E7B60010 */ swc1 $f22, 0x10($sp) -/* 70D6B8 802399A8 E7BA0014 */ swc1 $f26, 0x14($sp) -/* 70D6BC 802399AC E7B40020 */ swc1 $f20, 0x20($sp) -/* 70D6C0 802399B0 46020083 */ div.s $f2, $f0, $f2 -/* 70D6C4 802399B4 460010A1 */ cvt.d.s $f2, $f2 -/* 70D6C8 802399B8 AFA70018 */ sw $a3, 0x18($sp) -/* 70D6CC 802399BC 8E020000 */ lw $v0, ($s0) -/* 70D6D0 802399C0 3C014006 */ lui $at, 0x4006 -/* 70D6D4 802399C4 44810800 */ mtc1 $at, $f1 -/* 70D6D8 802399C8 44800000 */ mtc1 $zero, $f0 -/* 70D6DC 802399CC 00021FC2 */ srl $v1, $v0, 0x1f -/* 70D6E0 802399D0 00431021 */ addu $v0, $v0, $v1 -/* 70D6E4 802399D4 46201080 */ add.d $f2, $f2, $f0 -/* 70D6E8 802399D8 00821007 */ srav $v0, $v0, $a0 -/* 70D6EC 802399DC 44820000 */ mtc1 $v0, $f0 -/* 70D6F0 802399E0 00000000 */ nop -/* 70D6F4 802399E4 46800021 */ cvt.d.w $f0, $f0 -/* 70D6F8 802399E8 46201080 */ add.d $f2, $f2, $f0 -/* 70D6FC 802399EC 44052000 */ mfc1 $a1, $f4 -/* 70D700 802399F0 44063000 */ mfc1 $a2, $f6 -/* 70D704 802399F4 46201020 */ cvt.s.d $f0, $f2 -/* 70D708 802399F8 0C01C904 */ jal fx_moving_cloud -/* 70D70C 802399FC E7A0001C */ swc1 $f0, 0x1c($sp) -.L80239A00: -/* 70D710 80239A00 3C118024 */ lui $s1, %hi(D_8023CCC0_7109D0) -/* 70D714 80239A04 2631CCC0 */ addiu $s1, $s1, %lo(D_8023CCC0_7109D0) -/* 70D718 80239A08 8E230000 */ lw $v1, ($s1) -/* 70D71C 80239A0C 8064005C */ lb $a0, 0x5c($v1) -/* 70D720 80239A10 10800005 */ beqz $a0, .L80239A28 -/* 70D724 80239A14 24020001 */ addiu $v0, $zero, 1 -/* 70D728 80239A18 10820086 */ beq $a0, $v0, .L80239C34 -/* 70D72C 80239A1C 2402000A */ addiu $v0, $zero, 0xa -/* 70D730 80239A20 0808E710 */ j .L80239C40 -/* 70D734 80239A24 00000000 */ nop -.L80239A28: -/* 70D738 80239A28 8462005A */ lh $v0, 0x5a($v1) -/* 70D73C 80239A2C 24120001 */ addiu $s2, $zero, 1 -/* 70D740 80239A30 3C018024 */ lui $at, %hi(D_8023D274) -/* 70D744 80239A34 04410003 */ bgez $v0, .L80239A44 -/* 70D748 80239A38 AC32D274 */ sw $s2, %lo(D_8023D274)($at) -/* 70D74C 80239A3C 94620072 */ lhu $v0, 0x72($v1) -/* 70D750 80239A40 A462005A */ sh $v0, 0x5a($v1) -.L80239A44: -/* 70D754 80239A44 8E220000 */ lw $v0, ($s1) -/* 70D758 80239A48 84420072 */ lh $v0, 0x72($v0) -/* 70D75C 80239A4C 3C01459C */ lui $at, 0x459c -/* 70D760 80239A50 34214000 */ ori $at, $at, 0x4000 -/* 70D764 80239A54 44811000 */ mtc1 $at, $f2 -/* 70D768 80239A58 44820000 */ mtc1 $v0, $f0 -/* 70D76C 80239A5C 00000000 */ nop -/* 70D770 80239A60 46800020 */ cvt.s.w $f0, $f0 -/* 70D774 80239A64 4600103C */ c.lt.s $f2, $f0 -/* 70D778 80239A68 00000000 */ nop -/* 70D77C 80239A6C 45030001 */ bc1tl .L80239A74 -/* 70D780 80239A70 46001006 */ mov.s $f0, $f2 -.L80239A74: -/* 70D784 80239A74 3C014049 */ lui $at, 0x4049 -/* 70D788 80239A78 34210FD0 */ ori $at, $at, 0xfd0 -/* 70D78C 80239A7C 44816000 */ mtc1 $at, $f12 -/* 70D790 80239A80 00000000 */ nop -/* 70D794 80239A84 460C0302 */ mul.s $f12, $f0, $f12 -/* 70D798 80239A88 00000000 */ nop -/* 70D79C 80239A8C 3C013F00 */ lui $at, 0x3f00 -/* 70D7A0 80239A90 44810000 */ mtc1 $at, $f0 -/* 70D7A4 80239A94 00000000 */ nop -/* 70D7A8 80239A98 46006302 */ mul.s $f12, $f12, $f0 -/* 70D7AC 80239A9C 00000000 */ nop -/* 70D7B0 80239AA0 3C013FC9 */ lui $at, 0x3fc9 -/* 70D7B4 80239AA4 34210FD0 */ ori $at, $at, 0xfd0 -/* 70D7B8 80239AA8 44810000 */ mtc1 $at, $f0 -/* 70D7BC 80239AAC 46026303 */ div.s $f12, $f12, $f2 -/* 70D7C0 80239AB0 3C108024 */ lui $s0, %hi(D_8023D278) -/* 70D7C4 80239AB4 2610D278 */ addiu $s0, $s0, %lo(D_8023D278) -/* 70D7C8 80239AB8 C6140000 */ lwc1 $f20, ($s0) -/* 70D7CC 80239ABC 4680A521 */ cvt.d.w $f20, $f20 -/* 70D7D0 80239AC0 0C00A85B */ jal sin_rad -/* 70D7D4 80239AC4 46006300 */ add.s $f12, $f12, $f0 -/* 70D7D8 80239AC8 3C013FF0 */ lui $at, 0x3ff0 -/* 70D7DC 80239ACC 44811800 */ mtc1 $at, $f3 -/* 70D7E0 80239AD0 44801000 */ mtc1 $zero, $f2 -/* 70D7E4 80239AD4 46000021 */ cvt.d.s $f0, $f0 -/* 70D7E8 80239AD8 46201081 */ sub.d $f2, $f2, $f0 -/* 70D7EC 80239ADC 4622A082 */ mul.d $f2, $f20, $f2 -/* 70D7F0 80239AE0 00000000 */ nop -/* 70D7F4 80239AE4 3C013FF8 */ lui $at, 0x3ff8 -/* 70D7F8 80239AE8 44810800 */ mtc1 $at, $f1 -/* 70D7FC 80239AEC 44800000 */ mtc1 $zero, $f0 -/* 70D800 80239AF0 00000000 */ nop -/* 70D804 80239AF4 46201082 */ mul.d $f2, $f2, $f0 -/* 70D808 80239AF8 00000000 */ nop -/* 70D80C 80239AFC 3C068024 */ lui $a2, %hi(D_8023D27C) -/* 70D810 80239B00 24C6D27C */ addiu $a2, $a2, %lo(D_8023D27C) -/* 70D814 80239B04 8E250000 */ lw $a1, ($s1) -/* 70D818 80239B08 8CC20000 */ lw $v0, ($a2) -/* 70D81C 80239B0C 8E030000 */ lw $v1, ($s0) -/* 70D820 80239B10 84A40070 */ lh $a0, 0x70($a1) -/* 70D824 80239B14 00431021 */ addu $v0, $v0, $v1 -/* 70D828 80239B18 ACC20000 */ sw $v0, ($a2) -/* 70D82C 80239B1C 4622A500 */ add.d $f20, $f20, $f2 -/* 70D830 80239B20 84A20072 */ lh $v0, 0x72($a1) -/* 70D834 80239B24 44840000 */ mtc1 $a0, $f0 -/* 70D838 80239B28 00000000 */ nop -/* 70D83C 80239B2C 46800020 */ cvt.s.w $f0, $f0 -/* 70D840 80239B30 4620A520 */ cvt.s.d $f20, $f20 -/* 70D844 80239B34 46140000 */ add.s $f0, $f0, $f20 -/* 70D848 80239B38 28422329 */ slti $v0, $v0, 0x2329 -/* 70D84C 80239B3C 4600020D */ trunc.w.s $f8, $f0 -/* 70D850 80239B40 44034000 */ mfc1 $v1, $f8 -/* 70D854 80239B44 14400009 */ bnez $v0, .L80239B6C -/* 70D858 80239B48 A4A30070 */ sh $v1, 0x70($a1) -/* 70D85C 80239B4C 0060102D */ daddu $v0, $v1, $zero -/* 70D860 80239B50 00021C00 */ sll $v1, $v0, 0x10 -/* 70D864 80239B54 00032403 */ sra $a0, $v1, 0x10 -/* 70D868 80239B58 00031FC2 */ srl $v1, $v1, 0x1f -/* 70D86C 80239B5C 00832021 */ addu $a0, $a0, $v1 -/* 70D870 80239B60 00042043 */ sra $a0, $a0, 1 -/* 70D874 80239B64 00441023 */ subu $v0, $v0, $a0 -/* 70D878 80239B68 A4A20070 */ sh $v0, 0x70($a1) -.L80239B6C: -/* 70D87C 80239B6C 8E230000 */ lw $v1, ($s1) -/* 70D880 80239B70 84620070 */ lh $v0, 0x70($v1) -/* 70D884 80239B74 04420001 */ bltzl $v0, .L80239B7C -/* 70D888 80239B78 A4600070 */ sh $zero, 0x70($v1) -.L80239B7C: -/* 70D88C 80239B7C 8E230000 */ lw $v1, ($s1) -/* 70D890 80239B80 84620070 */ lh $v0, 0x70($v1) -/* 70D894 80239B84 44820000 */ mtc1 $v0, $f0 -/* 70D898 80239B88 00000000 */ nop -/* 70D89C 80239B8C 46800020 */ cvt.s.w $f0, $f0 -/* 70D8A0 80239B90 46140000 */ add.s $f0, $f0, $f20 -/* 70D8A4 80239B94 4600020D */ trunc.w.s $f8, $f0 -/* 70D8A8 80239B98 44024000 */ mfc1 $v0, $f8 -/* 70D8AC 80239B9C 00000000 */ nop -/* 70D8B0 80239BA0 A4620070 */ sh $v0, 0x70($v1) -/* 70D8B4 80239BA4 00021400 */ sll $v0, $v0, 0x10 -/* 70D8B8 80239BA8 00021403 */ sra $v0, $v0, 0x10 -/* 70D8BC 80239BAC 284202EF */ slti $v0, $v0, 0x2ef -/* 70D8C0 80239BB0 14400002 */ bnez $v0, .L80239BBC -/* 70D8C4 80239BB4 240202EE */ addiu $v0, $zero, 0x2ee -/* 70D8C8 80239BB8 A4620070 */ sh $v0, 0x70($v1) -.L80239BBC: -/* 70D8CC 80239BBC 8CC20000 */ lw $v0, ($a2) -/* 70D8D0 80239BC0 284203E9 */ slti $v0, $v0, 0x3e9 -/* 70D8D4 80239BC4 14400002 */ bnez $v0, .L80239BD0 -/* 70D8D8 80239BC8 240203E8 */ addiu $v0, $zero, 0x3e8 -/* 70D8DC 80239BCC ACC20000 */ sw $v0, ($a2) -.L80239BD0: -/* 70D8E0 80239BD0 8E240000 */ lw $a0, ($s1) -/* 70D8E4 80239BD4 94820072 */ lhu $v0, 0x72($a0) -/* 70D8E8 80239BD8 94830070 */ lhu $v1, 0x70($a0) -/* 70D8EC 80239BDC 3C058024 */ lui $a1, %hi(D_8023D284) -/* 70D8F0 80239BE0 24A5D284 */ addiu $a1, $a1, %lo(D_8023D284) -/* 70D8F4 80239BE4 00431021 */ addu $v0, $v0, $v1 -/* 70D8F8 80239BE8 A4820072 */ sh $v0, 0x72($a0) -/* 70D8FC 80239BEC 00021400 */ sll $v0, $v0, 0x10 -/* 70D900 80239BF0 8CA30000 */ lw $v1, ($a1) -/* 70D904 80239BF4 00021403 */ sra $v0, $v0, 0x10 -/* 70D908 80239BF8 24631388 */ addiu $v1, $v1, 0x1388 -/* 70D90C 80239BFC 0062182A */ slt $v1, $v1, $v0 -/* 70D910 80239C00 1060000F */ beqz $v1, .L80239C40 -/* 70D914 80239C04 00000000 */ nop -/* 70D918 80239C08 94A20002 */ lhu $v0, 2($a1) -/* 70D91C 80239C0C A092005C */ sb $s2, 0x5c($a0) -/* 70D920 80239C10 24421388 */ addiu $v0, $v0, 0x1388 -/* 70D924 80239C14 A4820072 */ sh $v0, 0x72($a0) -/* 70D928 80239C18 8E230000 */ lw $v1, ($s1) -/* 70D92C 80239C1C 24020005 */ addiu $v0, $zero, 5 -/* 70D930 80239C20 A062005D */ sb $v0, 0x5d($v1) -/* 70D934 80239C24 8E230000 */ lw $v1, ($s1) -/* 70D938 80239C28 94C20002 */ lhu $v0, 2($a2) -/* 70D93C 80239C2C 0808E710 */ j .L80239C40 -/* 70D940 80239C30 A4620070 */ sh $v0, 0x70($v1) -.L80239C34: -/* 70D944 80239C34 3C018024 */ lui $at, %hi(D_8023D274) -/* 70D948 80239C38 AC20D274 */ sw $zero, %lo(D_8023D274)($at) -/* 70D94C 80239C3C A062005C */ sb $v0, 0x5c($v1) -.L80239C40: -/* 70D950 80239C40 3C078024 */ lui $a3, %hi(D_8023CCC0_7109D0) -/* 70D954 80239C44 24E7CCC0 */ addiu $a3, $a3, %lo(D_8023CCC0_7109D0) -/* 70D958 80239C48 8CE50000 */ lw $a1, ($a3) -/* 70D95C 80239C4C 80A3005C */ lb $v1, 0x5c($a1) -/* 70D960 80239C50 2402000A */ addiu $v0, $zero, 0xa -/* 70D964 80239C54 10620005 */ beq $v1, $v0, .L80239C6C -/* 70D968 80239C58 2402000B */ addiu $v0, $zero, 0xb -/* 70D96C 80239C5C 1062003F */ beq $v1, $v0, .L80239D5C -/* 70D970 80239C60 00000000 */ nop -/* 70D974 80239C64 0808E792 */ j .L80239E48 -/* 70D978 80239C68 00000000 */ nop -.L80239C6C: -/* 70D97C 80239C6C 3C045555 */ lui $a0, 0x5555 -/* 70D980 80239C70 94A20070 */ lhu $v0, 0x70($a1) -/* 70D984 80239C74 34845556 */ ori $a0, $a0, 0x5556 -/* 70D988 80239C78 00021400 */ sll $v0, $v0, 0x10 -/* 70D98C 80239C7C 00021C03 */ sra $v1, $v0, 0x10 -/* 70D990 80239C80 00640018 */ mult $v1, $a0 -/* 70D994 80239C84 3C014348 */ lui $at, 0x4348 -/* 70D998 80239C88 44810000 */ mtc1 $at, $f0 -/* 70D99C 80239C8C 2408FFFF */ addiu $t0, $zero, -1 -/* 70D9A0 80239C90 3C018024 */ lui $at, %hi(D_8023D274) -/* 70D9A4 80239C94 AC28D274 */ sw $t0, %lo(D_8023D274)($at) -/* 70D9A8 80239C98 000217C3 */ sra $v0, $v0, 0x1f -/* 70D9AC 80239C9C 00004810 */ mfhi $t1 -/* 70D9B0 80239CA0 01221023 */ subu $v0, $t1, $v0 -/* 70D9B4 80239CA4 00021400 */ sll $v0, $v0, 0x10 -/* 70D9B8 80239CA8 00021403 */ sra $v0, $v0, 0x10 -/* 70D9BC 80239CAC 00621821 */ addu $v1, $v1, $v0 -/* 70D9C0 80239CB0 4483A000 */ mtc1 $v1, $f20 -/* 70D9C4 80239CB4 00000000 */ nop -/* 70D9C8 80239CB8 4680A520 */ cvt.s.w $f20, $f20 -/* 70D9CC 80239CBC 4600A03C */ c.lt.s $f20, $f0 -/* 70D9D0 80239CC0 00000000 */ nop -/* 70D9D4 80239CC4 45030001 */ bc1tl .L80239CCC -/* 70D9D8 80239CC8 46000506 */ mov.s $f20, $f0 -.L80239CCC: -/* 70D9DC 80239CCC 84A20072 */ lh $v0, 0x72($a1) -/* 70D9E0 80239CD0 44820000 */ mtc1 $v0, $f0 -/* 70D9E4 80239CD4 00000000 */ nop -/* 70D9E8 80239CD8 46800020 */ cvt.s.w $f0, $f0 -/* 70D9EC 80239CDC 46140001 */ sub.s $f0, $f0, $f20 -/* 70D9F0 80239CE0 3C048024 */ lui $a0, %hi(D_8023D284) -/* 70D9F4 80239CE4 2484D284 */ addiu $a0, $a0, %lo(D_8023D284) -/* 70D9F8 80239CE8 24061388 */ addiu $a2, $zero, 0x1388 -/* 70D9FC 80239CEC 4600020D */ trunc.w.s $f8, $f0 -/* 70DA00 80239CF0 44024000 */ mfc1 $v0, $f8 -/* 70DA04 80239CF4 00000000 */ nop -/* 70DA08 80239CF8 A4A20072 */ sh $v0, 0x72($a1) -/* 70DA0C 80239CFC 00021400 */ sll $v0, $v0, 0x10 -/* 70DA10 80239D00 8C830000 */ lw $v1, ($a0) -/* 70DA14 80239D04 00021403 */ sra $v0, $v0, 0x10 -/* 70DA18 80239D08 00C31823 */ subu $v1, $a2, $v1 -/* 70DA1C 80239D0C 0043102A */ slt $v0, $v0, $v1 -/* 70DA20 80239D10 1040004D */ beqz $v0, .L80239E48 -/* 70DA24 80239D14 2403000B */ addiu $v1, $zero, 0xb -/* 70DA28 80239D18 94820002 */ lhu $v0, 2($a0) -/* 70DA2C 80239D1C A0A3005C */ sb $v1, 0x5c($a1) -/* 70DA30 80239D20 00C21023 */ subu $v0, $a2, $v0 -/* 70DA34 80239D24 A4A20072 */ sh $v0, 0x72($a1) -/* 70DA38 80239D28 8CE30000 */ lw $v1, ($a3) -/* 70DA3C 80239D2C 24020005 */ addiu $v0, $zero, 5 -/* 70DA40 80239D30 A062005D */ sb $v0, 0x5d($v1) -/* 70DA44 80239D34 8C820000 */ lw $v0, ($a0) -/* 70DA48 80239D38 8CE30000 */ lw $v1, ($a3) -/* 70DA4C 80239D3C 244203E8 */ addiu $v0, $v0, 0x3e8 -/* 70DA50 80239D40 A468005A */ sh $t0, 0x5a($v1) -/* 70DA54 80239D44 AC820000 */ sw $v0, ($a0) -/* 70DA58 80239D48 28421389 */ slti $v0, $v0, 0x1389 -/* 70DA5C 80239D4C 5040003E */ beql $v0, $zero, .L80239E48 -/* 70DA60 80239D50 AC860000 */ sw $a2, ($a0) -/* 70DA64 80239D54 0808E792 */ j .L80239E48 -/* 70DA68 80239D58 00000000 */ nop -.L80239D5C: -/* 70DA6C 80239D5C 3C018024 */ lui $at, %hi(D_8023D274) -/* 70DA70 80239D60 AC20D274 */ sw $zero, %lo(D_8023D274)($at) -/* 70DA74 80239D64 A0A0005C */ sb $zero, 0x5c($a1) -/* 70DA78 80239D68 8CE30000 */ lw $v1, ($a3) -/* 70DA7C 80239D6C 84620070 */ lh $v0, 0x70($v1) -/* 70DA80 80239D70 3C018024 */ lui $at, %hi(D_8023D1C8_710ED8) -/* 70DA84 80239D74 D422D1C8 */ ldc1 $f2, %lo(D_8023D1C8_710ED8)($at) -/* 70DA88 80239D78 44820000 */ mtc1 $v0, $f0 -/* 70DA8C 80239D7C 00000000 */ nop -/* 70DA90 80239D80 46800021 */ cvt.d.w $f0, $f0 -/* 70DA94 80239D84 46220083 */ div.d $f2, $f0, $f2 -/* 70DA98 80239D88 46220001 */ sub.d $f0, $f0, $f2 -/* 70DA9C 80239D8C 4620020D */ trunc.w.d $f8, $f0 -/* 70DAA0 80239D90 44024000 */ mfc1 $v0, $f8 -/* 70DAA4 80239D94 00000000 */ nop -/* 70DAA8 80239D98 A4620070 */ sh $v0, 0x70($v1) -/* 70DAAC 80239D9C 84630070 */ lh $v1, 0x70($v1) -/* 70DAB0 80239DA0 3C014049 */ lui $at, 0x4049 -/* 70DAB4 80239DA4 34210FD0 */ ori $at, $at, 0xfd0 -/* 70DAB8 80239DA8 44810000 */ mtc1 $at, $f0 -/* 70DABC 80239DAC 44836000 */ mtc1 $v1, $f12 -/* 70DAC0 80239DB0 00000000 */ nop -/* 70DAC4 80239DB4 46806320 */ cvt.s.w $f12, $f12 -/* 70DAC8 80239DB8 46006302 */ mul.s $f12, $f12, $f0 -/* 70DACC 80239DBC 00000000 */ nop -/* 70DAD0 80239DC0 3C013F00 */ lui $at, 0x3f00 -/* 70DAD4 80239DC4 44810000 */ mtc1 $at, $f0 -/* 70DAD8 80239DC8 00000000 */ nop -/* 70DADC 80239DCC 46006302 */ mul.s $f12, $f12, $f0 -/* 70DAE0 80239DD0 00000000 */ nop -/* 70DAE4 80239DD4 00021400 */ sll $v0, $v0, 0x10 -/* 70DAE8 80239DD8 3C01443B */ lui $at, 0x443b -/* 70DAEC 80239DDC 34218000 */ ori $at, $at, 0x8000 -/* 70DAF0 80239DE0 44810000 */ mtc1 $at, $f0 -/* 70DAF4 80239DE4 00021403 */ sra $v0, $v0, 0x10 -/* 70DAF8 80239DE8 3C018024 */ lui $at, %hi(D_8023D27C) -/* 70DAFC 80239DEC AC22D27C */ sw $v0, %lo(D_8023D27C)($at) -/* 70DB00 80239DF0 0C00A85B */ jal sin_rad -/* 70DB04 80239DF4 46006303 */ div.s $f12, $f12, $f0 -/* 70DB08 80239DF8 3C013FF0 */ lui $at, 0x3ff0 -/* 70DB0C 80239DFC 44811800 */ mtc1 $at, $f3 -/* 70DB10 80239E00 44801000 */ mtc1 $zero, $f2 -/* 70DB14 80239E04 46000021 */ cvt.d.s $f0, $f0 -/* 70DB18 80239E08 46201081 */ sub.d $f2, $f2, $f0 -/* 70DB1C 80239E0C 3C014020 */ lui $at, 0x4020 -/* 70DB20 80239E10 44810800 */ mtc1 $at, $f1 -/* 70DB24 80239E14 44800000 */ mtc1 $zero, $f0 -/* 70DB28 80239E18 00000000 */ nop -/* 70DB2C 80239E1C 46201082 */ mul.d $f2, $f2, $f0 -/* 70DB30 80239E20 00000000 */ nop -/* 70DB34 80239E24 3C01402A */ lui $at, 0x402a -/* 70DB38 80239E28 44810800 */ mtc1 $at, $f1 -/* 70DB3C 80239E2C 44800000 */ mtc1 $zero, $f0 -/* 70DB40 80239E30 00000000 */ nop -/* 70DB44 80239E34 46201080 */ add.d $f2, $f2, $f0 -/* 70DB48 80239E38 4620120D */ trunc.w.d $f8, $f2 -/* 70DB4C 80239E3C 3C018024 */ lui $at, %hi(D_8023D278) -/* 70DB50 80239E40 0808E680 */ j .L80239A00 -/* 70DB54 80239E44 E428D278 */ swc1 $f8, %lo(D_8023D278)($at) -.L80239E48: -/* 70DB58 80239E48 3C048024 */ lui $a0, %hi(D_8023CCC0_7109D0) -/* 70DB5C 80239E4C 8C84CCC0 */ lw $a0, %lo(D_8023CCC0_7109D0)($a0) -/* 70DB60 80239E50 8082005C */ lb $v0, 0x5c($a0) -/* 70DB64 80239E54 14400008 */ bnez $v0, .L80239E78 -/* 70DB68 80239E58 00000000 */ nop -/* 70DB6C 80239E5C 84830070 */ lh $v1, 0x70($a0) -/* 70DB70 80239E60 04620001 */ bltzl $v1, .L80239E68 -/* 70DB74 80239E64 24630003 */ addiu $v1, $v1, 3 -.L80239E68: -/* 70DB78 80239E68 94820044 */ lhu $v0, 0x44($a0) -/* 70DB7C 80239E6C 00031883 */ sra $v1, $v1, 2 -/* 70DB80 80239E70 00431021 */ addu $v0, $v0, $v1 -/* 70DB84 80239E74 A4820044 */ sh $v0, 0x44($a0) -.L80239E78: -/* 70DB88 80239E78 3C048024 */ lui $a0, %hi(D_8023CCC0_7109D0) -/* 70DB8C 80239E7C 2484CCC0 */ addiu $a0, $a0, %lo(D_8023CCC0_7109D0) -/* 70DB90 80239E80 8C830000 */ lw $v1, ($a0) -/* 70DB94 80239E84 84620044 */ lh $v0, 0x44($v1) -/* 70DB98 80239E88 28422711 */ slti $v0, $v0, 0x2711 -/* 70DB9C 80239E8C 14400002 */ bnez $v0, .L80239E98 -/* 70DBA0 80239E90 24022710 */ addiu $v0, $zero, 0x2710 -/* 70DBA4 80239E94 A4620044 */ sh $v0, 0x44($v1) -.L80239E98: -/* 70DBA8 80239E98 8C850000 */ lw $a1, ($a0) -/* 70DBAC 80239E9C 3C0651EB */ lui $a2, 0x51eb -/* 70DBB0 80239EA0 94A30072 */ lhu $v1, 0x72($a1) -/* 70DBB4 80239EA4 34C6851F */ ori $a2, $a2, 0x851f -/* 70DBB8 80239EA8 00031C00 */ sll $v1, $v1, 0x10 -/* 70DBBC 80239EAC 00031403 */ sra $v0, $v1, 0x10 -/* 70DBC0 80239EB0 00460018 */ mult $v0, $a2 -/* 70DBC4 80239EB4 94A40070 */ lhu $a0, 0x70($a1) -/* 70DBC8 80239EB8 00031FC3 */ sra $v1, $v1, 0x1f -/* 70DBCC 80239EBC 00042400 */ sll $a0, $a0, 0x10 -/* 70DBD0 80239EC0 00004810 */ mfhi $t1 -/* 70DBD4 80239EC4 00091143 */ sra $v0, $t1, 5 -/* 70DBD8 80239EC8 00431023 */ subu $v0, $v0, $v1 -/* 70DBDC 80239ECC 00041C03 */ sra $v1, $a0, 0x10 -/* 70DBE0 80239ED0 00021400 */ sll $v0, $v0, 0x10 -/* 70DBE4 80239ED4 00660018 */ mult $v1, $a2 -/* 70DBE8 80239ED8 00021403 */ sra $v0, $v0, 0x10 -/* 70DBEC 80239EDC 3C038024 */ lui $v1, %hi(D_8023D270) -/* 70DBF0 80239EE0 2463D270 */ addiu $v1, $v1, %lo(D_8023D270) -/* 70DBF4 80239EE4 000427C3 */ sra $a0, $a0, 0x1f -/* 70DBF8 80239EE8 3C018024 */ lui $at, %hi(D_8023D26C) -/* 70DBFC 80239EEC AC22D26C */ sw $v0, %lo(D_8023D26C)($at) -/* 70DC00 80239EF0 00004810 */ mfhi $t1 -/* 70DC04 80239EF4 00091143 */ sra $v0, $t1, 5 -/* 70DC08 80239EF8 00441023 */ subu $v0, $v0, $a0 -/* 70DC0C 80239EFC 00021400 */ sll $v0, $v0, 0x10 -/* 70DC10 80239F00 00021403 */ sra $v0, $v0, 0x10 -/* 70DC14 80239F04 AC620000 */ sw $v0, ($v1) -/* 70DC18 80239F08 2842000B */ slti $v0, $v0, 0xb -/* 70DC1C 80239F0C 14400002 */ bnez $v0, .L80239F18 -/* 70DC20 80239F10 2402000A */ addiu $v0, $zero, 0xa -/* 70DC24 80239F14 AC620000 */ sw $v0, ($v1) -.L80239F18: -/* 70DC28 80239F18 94A40044 */ lhu $a0, 0x44($a1) -/* 70DC2C 80239F1C 00042400 */ sll $a0, $a0, 0x10 -/* 70DC30 80239F20 00041403 */ sra $v0, $a0, 0x10 -/* 70DC34 80239F24 00460018 */ mult $v0, $a2 -/* 70DC38 80239F28 0000102D */ daddu $v0, $zero, $zero -/* 70DC3C 80239F2C 000427C3 */ sra $a0, $a0, 0x1f -/* 70DC40 80239F30 00004810 */ mfhi $t1 -/* 70DC44 80239F34 00091943 */ sra $v1, $t1, 5 -/* 70DC48 80239F38 00641823 */ subu $v1, $v1, $a0 -/* 70DC4C 80239F3C 00031C00 */ sll $v1, $v1, 0x10 -/* 70DC50 80239F40 00031C03 */ sra $v1, $v1, 0x10 -/* 70DC54 80239F44 3C018024 */ lui $at, %hi(D_8023D280) -/* 70DC58 80239F48 AC23D280 */ sw $v1, %lo(D_8023D280)($at) -.L80239F4C: -/* 70DC5C 80239F4C 8FBF004C */ lw $ra, 0x4c($sp) -/* 70DC60 80239F50 8FB60048 */ lw $s6, 0x48($sp) -/* 70DC64 80239F54 8FB50044 */ lw $s5, 0x44($sp) -/* 70DC68 80239F58 8FB40040 */ lw $s4, 0x40($sp) -/* 70DC6C 80239F5C 8FB3003C */ lw $s3, 0x3c($sp) -/* 70DC70 80239F60 8FB20038 */ lw $s2, 0x38($sp) -/* 70DC74 80239F64 8FB10034 */ lw $s1, 0x34($sp) -/* 70DC78 80239F68 8FB00030 */ lw $s0, 0x30($sp) -/* 70DC7C 80239F6C D7BA0068 */ ldc1 $f26, 0x68($sp) -/* 70DC80 80239F70 D7B80060 */ ldc1 $f24, 0x60($sp) -/* 70DC84 80239F74 D7B60058 */ ldc1 $f22, 0x58($sp) -/* 70DC88 80239F78 D7B40050 */ ldc1 $f20, 0x50($sp) -/* 70DC8C 80239F7C 03E00008 */ jr $ra -/* 70DC90 80239F80 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/ver/us/asm/nonmatchings/battle/partner/watt/func_80238810_704300.s b/ver/us/asm/nonmatchings/battle/partner/watt/func_80238810_704300.s deleted file mode 100644 index 8743dfae15..0000000000 --- a/ver/us/asm/nonmatchings/battle/partner/watt/func_80238810_704300.s +++ /dev/null @@ -1,217 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80238810_704300 -/* 704300 80238810 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 704304 80238814 AFB20018 */ sw $s2, 0x18($sp) -/* 704308 80238818 0080902D */ daddu $s2, $a0, $zero -/* 70430C 8023881C 3C02800E */ lui $v0, %hi(gBattleStatus) -/* 704310 80238820 2442C070 */ addiu $v0, $v0, %lo(gBattleStatus) -/* 704314 80238824 AFBF0024 */ sw $ra, 0x24($sp) -/* 704318 80238828 AFB40020 */ sw $s4, 0x20($sp) -/* 70431C 8023882C AFB3001C */ sw $s3, 0x1c($sp) -/* 704320 80238830 AFB10014 */ sw $s1, 0x14($sp) -/* 704324 80238834 AFB00010 */ sw $s0, 0x10($sp) -/* 704328 80238838 F7B60030 */ sdc1 $f22, 0x30($sp) -/* 70432C 8023883C F7B40028 */ sdc1 $f20, 0x28($sp) -/* 704330 80238840 8C5000DC */ lw $s0, 0xdc($v0) -/* 704334 80238844 8E44000C */ lw $a0, 0xc($s2) -/* 704338 80238848 8C5100D8 */ lw $s1, 0xd8($v0) -/* 70433C 8023884C 10A00002 */ beqz $a1, .L80238858 -/* 704340 80238850 2613000C */ addiu $s3, $s0, 0xc -/* 704344 80238854 AE400070 */ sw $zero, 0x70($s2) -.L80238858: -/* 704348 80238858 8E430070 */ lw $v1, 0x70($s2) -/* 70434C 8023885C 24140001 */ addiu $s4, $zero, 1 -/* 704350 80238860 10740035 */ beq $v1, $s4, .L80238938 -/* 704354 80238864 28620002 */ slti $v0, $v1, 2 -/* 704358 80238868 50400005 */ beql $v0, $zero, .L80238880 -/* 70435C 8023886C 24020002 */ addiu $v0, $zero, 2 -/* 704360 80238870 10600009 */ beqz $v1, .L80238898 -/* 704364 80238874 00000000 */ nop -/* 704368 80238878 0808E2AA */ j .L80238AA8 -/* 70436C 8023887C 00000000 */ nop -.L80238880: -/* 704370 80238880 1062005A */ beq $v1, $v0, .L802389EC -/* 704374 80238884 24020003 */ addiu $v0, $zero, 3 -/* 704378 80238888 10620084 */ beq $v1, $v0, .L80238A9C -/* 70437C 8023888C 24020002 */ addiu $v0, $zero, 2 -/* 704380 80238890 0808E2AA */ j .L80238AA8 -/* 704384 80238894 00000000 */ nop -.L80238898: -/* 704388 80238898 8C850000 */ lw $a1, ($a0) -/* 70438C 8023889C 0C0B1EAF */ jal evt_get_variable -/* 704390 802388A0 0240202D */ daddu $a0, $s2, $zero -/* 704394 802388A4 AE420078 */ sw $v0, 0x78($s2) -/* 704398 802388A8 C62C0144 */ lwc1 $f12, 0x144($s1) -/* 70439C 802388AC C62E0148 */ lwc1 $f14, 0x148($s1) -/* 7043A0 802388B0 8E060144 */ lw $a2, 0x144($s0) -/* 7043A4 802388B4 0C00A7B5 */ jal dist2D -/* 7043A8 802388B8 8E070148 */ lw $a3, 0x148($s0) -/* 7043AC 802388BC E6000058 */ swc1 $f0, 0x58($s0) -/* 7043B0 802388C0 C6200144 */ lwc1 $f0, 0x144($s1) -/* 7043B4 802388C4 3C014210 */ lui $at, 0x4210 -/* 7043B8 802388C8 44811000 */ mtc1 $at, $f2 -/* 7043BC 802388CC C60A0144 */ lwc1 $f10, 0x144($s0) -/* 7043C0 802388D0 3C0142B4 */ lui $at, 0x42b4 -/* 7043C4 802388D4 44812000 */ mtc1 $at, $f4 -/* 7043C8 802388D8 3C0140A0 */ lui $at, 0x40a0 -/* 7043CC 802388DC 44813000 */ mtc1 $at, $f6 -/* 7043D0 802388E0 E6000018 */ swc1 $f0, 0x18($s0) -/* 7043D4 802388E4 C6200148 */ lwc1 $f0, 0x148($s1) -/* 7043D8 802388E8 3C013F00 */ lui $at, 0x3f00 -/* 7043DC 802388EC 44814000 */ mtc1 $at, $f8 -/* 7043E0 802388F0 46020000 */ add.s $f0, $f0, $f2 -/* 7043E4 802388F4 C602014C */ lwc1 $f2, 0x14c($s0) -/* 7043E8 802388F8 E600001C */ swc1 $f0, 0x1c($s0) -/* 7043EC 802388FC C62C014C */ lwc1 $f12, 0x14c($s1) -/* 7043F0 80238900 C6000148 */ lwc1 $f0, 0x148($s0) -/* 7043F4 80238904 2402005A */ addiu $v0, $zero, 0x5a -/* 7043F8 80238908 A6020070 */ sh $v0, 0x70($s0) -/* 7043FC 8023890C 2402000A */ addiu $v0, $zero, 0xa -/* 704400 80238910 E60A000C */ swc1 $f10, 0xc($s0) -/* 704404 80238914 E6020014 */ swc1 $f2, 0x14($s0) -/* 704408 80238918 E6040054 */ swc1 $f4, 0x54($s0) -/* 70440C 8023891C E6060050 */ swc1 $f6, 0x50($s0) -/* 704410 80238920 E6080048 */ swc1 $f8, 0x48($s0) -/* 704414 80238924 E6000010 */ swc1 $f0, 0x10($s0) -/* 704418 80238928 E60C0020 */ swc1 $f12, 0x20($s0) -/* 70441C 8023892C AE420074 */ sw $v0, 0x74($s2) -/* 704420 80238930 0808E2AA */ j .L80238AA8 -/* 704424 80238934 AE540070 */ sw $s4, 0x70($s2) -.L80238938: -/* 704428 80238938 C6000054 */ lwc1 $f0, 0x54($s0) -/* 70442C 8023893C 3C0140C9 */ lui $at, 0x40c9 -/* 704430 80238940 34210FD0 */ ori $at, $at, 0xfd0 -/* 704434 80238944 44811000 */ mtc1 $at, $f2 -/* 704438 80238948 00000000 */ nop -/* 70443C 8023894C 46020002 */ mul.s $f0, $f0, $f2 -/* 704440 80238950 00000000 */ nop -/* 704444 80238954 3C0143B4 */ lui $at, 0x43b4 -/* 704448 80238958 44811000 */ mtc1 $at, $f2 -/* 70444C 8023895C 00000000 */ nop -/* 704450 80238960 46020503 */ div.s $f20, $f0, $f2 -/* 704454 80238964 0C00A85B */ jal sin_rad -/* 704458 80238968 4600A306 */ mov.s $f12, $f20 -/* 70445C 8023896C 46000586 */ mov.s $f22, $f0 -/* 704460 80238970 0C00A874 */ jal cos_rad -/* 704464 80238974 4600A306 */ mov.s $f12, $f20 -/* 704468 80238978 C6020058 */ lwc1 $f2, 0x58($s0) -/* 70446C 8023897C 46161182 */ mul.s $f6, $f2, $f22 -/* 704470 80238980 00000000 */ nop -/* 704474 80238984 46001087 */ neg.s $f2, $f2 -/* 704478 80238988 46001202 */ mul.s $f8, $f2, $f0 -/* 70447C 8023898C 00000000 */ nop -/* 704480 80238990 C6020050 */ lwc1 $f2, 0x50($s0) -/* 704484 80238994 C6000048 */ lwc1 $f0, 0x48($s0) -/* 704488 80238998 46001080 */ add.s $f2, $f2, $f0 -/* 70448C 8023899C C60C0054 */ lwc1 $f12, 0x54($s0) -/* 704490 802389A0 46026300 */ add.s $f12, $f12, $f2 -/* 704494 802389A4 C6040018 */ lwc1 $f4, 0x18($s0) -/* 704498 802389A8 C600001C */ lwc1 $f0, 0x1c($s0) -/* 70449C 802389AC 46062100 */ add.s $f4, $f4, $f6 -/* 7044A0 802389B0 E6020050 */ swc1 $f2, 0x50($s0) -/* 7044A4 802389B4 46080000 */ add.s $f0, $f0, $f8 -/* 7044A8 802389B8 E60C0054 */ swc1 $f12, 0x54($s0) -/* 7044AC 802389BC E604000C */ swc1 $f4, 0xc($s0) -/* 7044B0 802389C0 0C00A6C9 */ jal clamp_angle -/* 7044B4 802389C4 E6000010 */ swc1 $f0, 0x10($s0) -/* 7044B8 802389C8 96020070 */ lhu $v0, 0x70($s0) -/* 7044BC 802389CC E6000054 */ swc1 $f0, 0x54($s0) -/* 7044C0 802389D0 2442FFFF */ addiu $v0, $v0, -1 -/* 7044C4 802389D4 A6020070 */ sh $v0, 0x70($s0) -/* 7044C8 802389D8 00021400 */ sll $v0, $v0, 0x10 -/* 7044CC 802389DC 14400032 */ bnez $v0, .L80238AA8 -/* 7044D0 802389E0 24020002 */ addiu $v0, $zero, 2 -/* 7044D4 802389E4 0808E2AA */ j .L80238AA8 -/* 7044D8 802389E8 AE420070 */ sw $v0, 0x70($s2) -.L802389EC: -/* 7044DC 802389EC C6000054 */ lwc1 $f0, 0x54($s0) -/* 7044E0 802389F0 3C0140C9 */ lui $at, 0x40c9 -/* 7044E4 802389F4 34210FD0 */ ori $at, $at, 0xfd0 -/* 7044E8 802389F8 44811000 */ mtc1 $at, $f2 -/* 7044EC 802389FC 00000000 */ nop -/* 7044F0 80238A00 46020002 */ mul.s $f0, $f0, $f2 -/* 7044F4 80238A04 00000000 */ nop -/* 7044F8 80238A08 3C0143B4 */ lui $at, 0x43b4 -/* 7044FC 80238A0C 44811000 */ mtc1 $at, $f2 -/* 704500 80238A10 00000000 */ nop -/* 704504 80238A14 46020503 */ div.s $f20, $f0, $f2 -/* 704508 80238A18 0C00A85B */ jal sin_rad -/* 70450C 80238A1C 4600A306 */ mov.s $f12, $f20 -/* 704510 80238A20 46000586 */ mov.s $f22, $f0 -/* 704514 80238A24 0C00A874 */ jal cos_rad -/* 704518 80238A28 4600A306 */ mov.s $f12, $f20 -/* 70451C 80238A2C C6020058 */ lwc1 $f2, 0x58($s0) -/* 704520 80238A30 46161182 */ mul.s $f6, $f2, $f22 -/* 704524 80238A34 00000000 */ nop -/* 704528 80238A38 46001087 */ neg.s $f2, $f2 -/* 70452C 80238A3C 46001202 */ mul.s $f8, $f2, $f0 -/* 704530 80238A40 00000000 */ nop -/* 704534 80238A44 C60C0054 */ lwc1 $f12, 0x54($s0) -/* 704538 80238A48 C6000050 */ lwc1 $f0, 0x50($s0) -/* 70453C 80238A4C 46006300 */ add.s $f12, $f12, $f0 -/* 704540 80238A50 C6020018 */ lwc1 $f2, 0x18($s0) -/* 704544 80238A54 46061080 */ add.s $f2, $f2, $f6 -/* 704548 80238A58 C600001C */ lwc1 $f0, 0x1c($s0) -/* 70454C 80238A5C 46080000 */ add.s $f0, $f0, $f8 -/* 704550 80238A60 E60C0054 */ swc1 $f12, 0x54($s0) -/* 704554 80238A64 E602000C */ swc1 $f2, 0xc($s0) -/* 704558 80238A68 0C00A6C9 */ jal clamp_angle -/* 70455C 80238A6C E6000010 */ swc1 $f0, 0x10($s0) -/* 704560 80238A70 3C014234 */ lui $at, 0x4234 -/* 704564 80238A74 44811000 */ mtc1 $at, $f2 -/* 704568 80238A78 00000000 */ nop -/* 70456C 80238A7C 4602003C */ c.lt.s $f0, $f2 -/* 704570 80238A80 00000000 */ nop -/* 704574 80238A84 45000004 */ bc1f .L80238A98 -/* 704578 80238A88 E6000054 */ swc1 $f0, 0x54($s0) -/* 70457C 80238A8C 24020003 */ addiu $v0, $zero, 3 -/* 704580 80238A90 0808E2AA */ j .L80238AA8 -/* 704584 80238A94 AE420070 */ sw $v0, 0x70($s2) -.L80238A98: -/* 704588 80238A98 24020002 */ addiu $v0, $zero, 2 -.L80238A9C: -/* 70458C 80238A9C AE20018C */ sw $zero, 0x18c($s1) -/* 704590 80238AA0 0808E2C5 */ j .L80238B14 -/* 704594 80238AA4 AE00018C */ sw $zero, 0x18c($s0) -.L80238AA8: -/* 704598 80238AA8 C6600048 */ lwc1 $f0, 0x48($s3) -/* 70459C 80238AAC 3C014334 */ lui $at, 0x4334 -/* 7045A0 80238AB0 44811000 */ mtc1 $at, $f2 -/* 7045A4 80238AB4 00000000 */ nop -/* 7045A8 80238AB8 4600103C */ c.lt.s $f2, $f0 -/* 7045AC 80238ABC 00000000 */ nop -/* 7045B0 80238AC0 45020002 */ bc1fl .L80238ACC -/* 7045B4 80238AC4 E602018C */ swc1 $f2, 0x18c($s0) -/* 7045B8 80238AC8 AE00018C */ sw $zero, 0x18c($s0) -.L80238ACC: -/* 7045BC 80238ACC C6600000 */ lwc1 $f0, ($s3) -/* 7045C0 80238AD0 E6000144 */ swc1 $f0, 0x144($s0) -/* 7045C4 80238AD4 C6600004 */ lwc1 $f0, 4($s3) -/* 7045C8 80238AD8 E6000148 */ swc1 $f0, 0x148($s0) -/* 7045CC 80238ADC C6600008 */ lwc1 $f0, 8($s3) -/* 7045D0 80238AE0 E600014C */ swc1 $f0, 0x14c($s0) -/* 7045D4 80238AE4 8E420078 */ lw $v0, 0x78($s2) -/* 7045D8 80238AE8 1440000A */ bnez $v0, .L80238B14 -/* 7045DC 80238AEC 0000102D */ daddu $v0, $zero, $zero -/* 7045E0 80238AF0 C620018C */ lwc1 $f0, 0x18c($s1) -/* 7045E4 80238AF4 C6420074 */ lwc1 $f2, 0x74($s2) -/* 7045E8 80238AF8 468010A0 */ cvt.s.w $f2, $f2 -/* 7045EC 80238AFC 46020000 */ add.s $f0, $f0, $f2 -/* 7045F0 80238B00 E620018C */ swc1 $f0, 0x18c($s1) -/* 7045F4 80238B04 8E420074 */ lw $v0, 0x74($s2) -/* 7045F8 80238B08 24420001 */ addiu $v0, $v0, 1 -/* 7045FC 80238B0C AE420074 */ sw $v0, 0x74($s2) -/* 704600 80238B10 0000102D */ daddu $v0, $zero, $zero -.L80238B14: -/* 704604 80238B14 8FBF0024 */ lw $ra, 0x24($sp) -/* 704608 80238B18 8FB40020 */ lw $s4, 0x20($sp) -/* 70460C 80238B1C 8FB3001C */ lw $s3, 0x1c($sp) -/* 704610 80238B20 8FB20018 */ lw $s2, 0x18($sp) -/* 704614 80238B24 8FB10014 */ lw $s1, 0x14($sp) -/* 704618 80238B28 8FB00010 */ lw $s0, 0x10($sp) -/* 70461C 80238B2C D7B60030 */ ldc1 $f22, 0x30($sp) -/* 704620 80238B30 D7B40028 */ ldc1 $f20, 0x28($sp) -/* 704624 80238B34 03E00008 */ jr $ra -/* 704628 80238B38 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/splat.yaml b/ver/us/splat.yaml index 5121078a9f..f6fb8f8133 100644 --- a/ver/us/splat.yaml +++ b/ver/us/splat.yaml @@ -7588,6 +7588,7 @@ segments: vram: 0x80238000 subsegments: - [0x6F0B30, c, goompa] + - [0x6F0B30] - name: battle_partner_goombario dir: battle/partner type: code @@ -7619,7 +7620,7 @@ segments: vram: 0x80238000 subsegments: - [0x6FFD80, c, parakarry] - - [0x701590, data] + - [0x701590] - name: battle_partner_watt dir: battle/partner type: code @@ -7627,7 +7628,7 @@ segments: vram: 0x80238000 subsegments: - [0x703AF0, c, watt] - - [0x704A80, data] + - [0x704A80] - name: battle_partner_sushie dir: battle/partner type: code @@ -7635,8 +7636,7 @@ segments: vram: 0x80238000 subsegments: - [0x707CA0, c, sushie] - - [0x708B70, data] - - [0x70BD00] + - [0x708B70] - name: battle_partner_lakilester dir: battle/partner type: code @@ -7644,8 +7644,7 @@ segments: vram: 0x80238000 subsegments: - [0x70BD10, c, lakilester] - - [0x70DEE0, data, 70DED0] - - [0x710EC0] + - [0x70DEE0] - name: battle_partner_bow dir: battle/partner type: code @@ -7653,7 +7652,7 @@ segments: vram: 0x80238000 subsegments: - [0x710EF0, c, bow] - - [0x7111F0, data] + - [0x7111F0] - name: battle_partner_twink dir: battle/partner type: code @@ -7661,7 +7660,7 @@ segments: vram: 0x80238000 subsegments: - [0x714CF0, c, twink] - - [0x714DC0, data] + - [0x714DC0] #################### ### Battle Items ### diff --git a/ver/us/symbol_addrs.txt b/ver/us/symbol_addrs.txt index 2dc3df7be9..c697d8a71c 100644 --- a/ver/us/symbol_addrs.txt +++ b/ver/us/symbol_addrs.txt @@ -7241,7 +7241,7 @@ PartnerTestEnemy = 0x802804D0; // type:func rom:0x1AEDB0 func_8028070C = 0x8028070C; // type:func rom:0x1AEFEC DeletePartner = 0x802807A8; // type:func rom:0x1AF088 GetActionCommandResult = 0x802807D0; // type:func rom:0x1AF0B0 -func_80280818 = 0x80280818; // type:func rom:0x1AF0F8 +PartnerYieldTurn = 0x80280818; // type:func rom:0x1AF0F8 GetDamageIntensity = 0x80280840; // type:func rom:0x1AF120 AddEffectOffset = 0x80280880; // type:func rom:0x1AF160 LoadStarPowerScript = 0x80280950; // type:func rom:0x1AF230 @@ -7557,15 +7557,15 @@ DoFreezeHit = 0x8029466C; // rom:0x1C2F4C DoShrinkHit = 0x802946B8; // rom:0x1C2F98 D_802946E0 = 0x802946E0; // type:data rom:0x1C2FC0 D_80294720 = 0x80294720; // type:data rom:0x1C3000 -D_80294AFC = 0x80294AFC; // type:data rom:0x1C33DC -D_80294C68 = 0x80294C68; // type:data rom:0x1C3548 -D_80294FE4 = 0x80294FE4; // type:data rom:0x1C38C4 +DoPartnerRunAway = 0x80294AFC; // type:data rom:0x1C33DC +DoPartnerBurnContact = 0x80294C68; // type:data rom:0x1C3548 +DoPartnerSpikeContact = 0x80294FE4; // type:data rom:0x1C38C4 D_80295350 = 0x80295350; // type:data rom:0x1C3C30 D_80295744 = 0x80295744; // type:data rom:0x1C4024 D_80295AC0 = 0x80295AC0; // type:data rom:0x1C43A0 DoPartnerRecover = 0x80295EC4; // type:data rom:0x1C47A4 -D_80296014 = 0x80296014; // type:data rom:0x1C48F4 -D_8029621C = 0x8029621C; // type:data rom:0x1C4AFC +DoPartnerHit = 0x80296014; // type:data rom:0x1C48F4 +DoPartnerBurn = 0x8029621C; // type:data rom:0x1C4AFC D_80296C8C = 0x80296C8C; // type:data rom:0x1C556C D_802975C8 = 0x802975C8; // type:data rom:0x1C5EA8 D_802976E8 = 0x802976E8; // type:data rom:0x1C5FC8 @@ -13879,19 +13879,19 @@ battle_partner_goombario_80238510 = 0x80238510; // type:data rom:0x6F1040 battle_partner_goombario_8023859C = 0x8023859C; // type:data rom:0x6F10CC battle_partner_goombario_func_80238000_6F10E0 = 0x80238000; // type:func rom:0x6F10E0 func_802380E4_6F11C4 = 0x802380E4; // type:func rom:0x6F11C4 -func_8023817C_6F125C = 0x8023817C; // type:func rom:0x6F125C -battle_partner_goombario_func_80238A20_6F1B00 = 0x80238A20; // type:func rom:0x6F1B00 -func_80238B60_6F1C40 = 0x80238B60; // type:func rom:0x6F1C40 -func_80238BCC_6F1CAC = 0x80238BCC; // type:func rom:0x6F1CAC -func_80238E04_6F1EE4 = 0x80238E04; // type:func rom:0x6F1EE4 -func_80238E48_6F1F28 = 0x80238E48; // type:func rom:0x6F1F28 -func_80238E74_6F1F54 = 0x80238E74; // type:func rom:0x6F1F54 -func_80238EDC_6F1FBC = 0x80238EDC; // type:func rom:0x6F1FBC -battle_partner_goombario_StopGlowing = 0x8023903C; // type:func rom:0x6F211C -battle_partner_goombario_StopGlowingAndGet = 0x80239068; // type:func rom:0x6F2148 -battle_partner_goombario_IsGlowing = 0x802390B0; // type:func rom:0x6F2190 -func_802390C8_6F21A8 = 0x802390C8; // type:func rom:0x6F21A8 -battle_partner_goombario_func_80239190_6F2270 = 0x80239190; // type:func rom:0x6F2270 +battle_partner_goombario_JumpOnTarget = 0x8023817C; // type:func rom:0x6F125C +battle_partner_goombario_OnMissHeadbonk = 0x80238A20; // type:func rom:0x6F1B00 +battle_partner_goombario_GetTattleMessage = 0x80238B60; // type:func rom:0x6F1C40 +battle_partner_goombario_GetTattleCamPos = 0x80238BCC; // type:func rom:0x6F1CAC +battle_partner_goombario_OpenTattleWindow = 0x80238E04; // type:func rom:0x6F1EE4 +battle_partner_goombario_CloseTattleWindow = 0x80238E48; // type:func rom:0x6F1F28 +battle_partner_goombario_CanChargeMore = 0x80238E74; // type:func rom:0x6F1F54 +battle_partner_goombario_Charge = 0x80238EDC; // type:func rom:0x6F1FBC +battle_partner_goombario_StopCharge = 0x8023903C; // type:func rom:0x6F211C +battle_partner_goombario_StopChargeAndGet = 0x80239068; // type:func rom:0x6F2148 +battle_partner_goombario_GetChargeAmount = 0x802390B0; // type:func rom:0x6F2190 +battle_partner_goombario_PlayChargeFX = 0x802390C8; // type:func rom:0x6F21A8 +battle_partner_goombario_GetChargeMessage = 0x80239190; // type:func rom:0x6F2270 battle_partner_goombario_idleAnimations_802391B0 = 0x802391B0; // type:data rom:0x6F2290 battle_partner_goombario_defenseTable_802391EC = 0x802391EC; // type:data rom:0x6F22CC battle_partner_goombario_statusTable_802391F8 = 0x802391F8; // type:data rom:0x6F22D8 @@ -26064,8 +26064,8 @@ D_8023C1C4 = 0x8023C1C4; // type:data D_8023C1C8 = 0x8023C1C8; // type:data D_8023C1CC = 0x8023C1CC; // type:data D_8023C1D0 = 0x8023C1D0; // type:data -D_8023CDA0 = 0x8023CDA0; // type:data -D_8023CDA4 = 0x8023CDA4; // type:data +goombarioTattleEffect = 0x8023CDA0; // type:data +goombarioIsCharged = 0x8023CDA4; // type:data D_8023D1E0 = 0x8023D1E0; // type:data D_8023D1E4 = 0x8023D1E4; // type:data D_8023D26C = 0x8023D26C; // type:data diff --git a/ver/us/undefined_syms.txt b/ver/us/undefined_syms.txt index 1f057e2bc6..112caec45d 100644 --- a/ver/us/undefined_syms.txt +++ b/ver/us/undefined_syms.txt @@ -275,8 +275,6 @@ D_80232C4C = 0x80232C4C; D_80235E00 = 0x80235E00; D_80235E6C_4CF05C = 0x80235E6C; D_80235F44_4CF134 = 0x80235F44; -D_8023BD70 = 0x8023BD70; -D_8023BD78 = 0x8023BD78; D_8023BD98 = 0x8023BD98; D_8023BDB4 = 0x8023BDB4; D_8023BDB8 = 0x8023BDB8; @@ -294,8 +292,6 @@ D_8023C1C4 = 0x8023C1C4; D_8023C1C8 = 0x8023C1C8; D_8023C1CC = 0x8023C1CC; D_8023C1D0 = 0x8023C1D0; -D_8023CDA0 = 0x8023CDA0; -D_8023CDA4 = 0x8023CDA4; D_8023D1E0 = 0x8023D1E0; D_8023D1E4 = 0x8023D1E4; D_8023D26C = 0x8023D26C;