From 7481bed65b1e551c760f703bf06d401e4885798a Mon Sep 17 00:00:00 2001 From: HailSanta <53960937+HailSanta@users.noreply.github.com> Date: Sun, 9 Oct 2022 01:55:27 -0400 Subject: [PATCH] area_arn (#810) * area_arn * iwa * iwa cleanup * run coverage Co-authored-by: HailSanta --- include/entity.h | 12 +- include/enums.h | 12 +- include/script_api/common.h | 5 + include/script_api/macros.h | 33 + include/script_api/map.h | 5 +- src/77480.c | 4 +- src/7B440.c | 2 +- src/C50A0.c | 18 +- src/EB9D90.c | 2 +- src/EF7A80.c | 2 +- src/EFEB00.c | 2 +- src/battle/area_arn/actor/tubbas_heart.c | 4 +- src/battle/area_flo/actor/ruff_puff.c | 6 +- src/battle/area_flo/stage/flo_03.c | 6 +- src/battle/area_flo/stage/flo_04.c | 6 +- src/battle/area_flo2/actor/huff_n_puff.c | 110 +- src/battle/area_flo2/actor/tuff_puff.c | 14 +- src/battle/area_flo2/stage/flo_03.c | 6 +- src/battle/area_flo2/stage/flo_04.c | 6 +- src/battle/area_kpa/684C30.c | 2 +- src/battle/area_kpa4/6CC1C0.c | 2 +- src/battle/area_pra2/actor/crystal_king.c | 6 +- src/battle/item/pow_block.c | 2 +- src/common/CosInterpMinMax.inc.c | 26 + src/common/UnkFloatFunc.inc.c | 24 - src/encounter_api.c | 2 +- src/entity/Block.c | 12 +- src/entity/sbk_omo/StarBoxLauncher.c | 2 +- src/evt/fa4c0_len_3bf0.c | 8 +- src/evt/player_api.c | 30 +- src/load_script.c | 2 +- src/world/area_arn/arn.h | 44 +- src/world/area_arn/arn_02/arn_02.h | 21 +- .../arn_02/{header.c => arn_02_0_header.c} | 21 +- src/world/area_arn/arn_02/arn_02_1_main.c | 29 + src/world/area_arn/arn_02/arn_02_2_entity.c | 15 + src/world/area_arn/arn_02/arn_02_3_npc.c | 80 ++ src/world/area_arn/arn_02/events.c | 234 ---- src/world/area_arn/arn_03/arn_03.h | 39 +- .../arn_03/{header.c => arn_03_0_header.c} | 20 +- src/world/area_arn/arn_03/arn_03_1_main.c | 63 + src/world/area_arn/arn_03/arn_03_2_npc.c | 578 ++++++++ src/world/area_arn/arn_03/arn_03_3_entity.c | 10 + src/world/area_arn/arn_03/events.c | 1011 ------------- src/world/area_arn/arn_04/arn_04.h | 25 +- .../arn_04/{header.c => arn_04_0_header.c} | 21 +- src/world/area_arn/arn_04/arn_04_1_main.c | 30 + src/world/area_arn/arn_04/arn_04_2_npc.c | 105 ++ src/world/area_arn/arn_04/arn_04_3_entity.c | 14 + src/world/area_arn/arn_04/events.c | 304 ---- src/world/area_arn/arn_05/arn_05.h | 40 +- .../arn_05/{header.c => arn_05_0_header.c} | 26 +- src/world/area_arn/arn_05/arn_05_1_main.c | 48 + src/world/area_arn/arn_05/arn_05_2_npc.c | 972 +++++++++++++ src/world/area_arn/arn_05/arn_05_3_entity.c | 8 + src/world/area_arn/arn_05/events.c | 1140 --------------- src/world/area_arn/arn_07/BECDF0.c | 382 ----- src/world/area_arn/arn_07/BED5F0.c | 11 - src/world/area_arn/arn_07/BED660.c | 5 - src/world/area_arn/arn_07/arn_07.h | 67 +- .../arn_07/{header.c => arn_07_0_header.c} | 29 +- src/world/area_arn/arn_07/arn_07_1_main.c | 368 +++++ src/world/area_arn/arn_07/arn_07_2_windmill.c | 58 + src/world/area_arn/arn_07/arn_07_3_entity.c | 54 + src/world/area_arn/arn_07/arn_07_4_npc.c | 902 ++++++++++++ src/world/area_arn/arn_07/events.c | 1245 ----------------- src/world/area_arn/arn_08/BF47A0.c | 25 - src/world/area_arn/arn_08/arn_08.h | 31 +- src/world/area_arn/arn_08/arn_08_0_header.c | 30 + src/world/area_arn/arn_08/arn_08_1_main.c | 122 ++ src/world/area_arn/arn_08/arn_08_2_well.c | 58 + src/world/area_arn/arn_08/arn_08_3_gears.c | 19 + src/world/area_arn/arn_08/arn_08_4_demo.c | 164 +++ src/world/area_arn/arn_08/arn_08_5_npc.c | 75 + src/world/area_arn/arn_08/arn_08_6_entity.c | 10 + src/world/area_arn/arn_08/events.c | 503 ------- src/world/area_arn/arn_08/header.c | 29 - src/world/area_arn/arn_09/arn_09.h | 21 +- src/world/area_arn/arn_09/arn_09_0_header.c | 28 + src/world/area_arn/arn_09/arn_09_1_main.c | 45 + src/world/area_arn/arn_09/arn_09_2_entity.c | 28 + src/world/area_arn/arn_09/arn_09_3_launch.c | 19 + src/world/area_arn/arn_09/arn_09_4_npc.c | 62 + src/world/area_arn/arn_09/events.c | 209 --- src/world/area_arn/arn_09/header.c | 27 - src/world/area_arn/arn_10/arn_10.h | 18 +- src/world/area_arn/arn_10/arn_10_0_header.c | 28 + src/world/area_arn/arn_10/arn_10_1_main.c | 49 + src/world/area_arn/arn_10/arn_10_2_npc.c | 101 ++ src/world/area_arn/arn_10/arn_10_3_entity.c | 17 + src/world/area_arn/arn_10/events.c | 274 ---- src/world/area_arn/arn_10/header.c | 27 - src/world/area_arn/arn_11/arn_11.h | 15 +- .../arn_11/{header.c => arn_11_0_header.c} | 19 +- src/world/area_arn/arn_11/arn_11_1_main.c | 104 ++ src/world/area_arn/arn_11/arn_11_2_npc.c | 166 +++ src/world/area_arn/arn_12/arn_12.h | 18 +- src/world/area_arn/arn_12/arn_12_0_header.c | 28 + src/world/area_arn/arn_12/arn_12_1_main.c | 48 + src/world/area_arn/arn_12/arn_12_2_npc.c | 102 ++ src/world/area_arn/arn_12/arn_12_3_entity.c | 17 + src/world/area_arn/arn_12/events.c | 270 ---- src/world/area_arn/arn_12/header.c | 27 - src/world/area_arn/arn_13/arn_13.h | 18 +- src/world/area_arn/arn_13/arn_13_0_header.c | 28 + src/world/area_arn/arn_13/arn_13_1_main.c | 49 + src/world/area_arn/arn_13/arn_13_2_npc.c | 102 ++ src/world/area_arn/arn_13/arn_13_3_entity.c | 17 + src/world/area_arn/arn_13/events.c | 273 ---- src/world/area_arn/arn_13/header.c | 27 - src/world/area_dgb/dgb_01/BFD8C0.c | 2 +- src/world/area_dgb/dgb_01/BFD9A0.c | 2 +- src/world/area_dgb/dgb_01/dgb_01.h | 2 +- src/world/area_dgb/dgb_03/C314E0.c | 2 +- src/world/area_dgb/dgb_03/C31730.c | 2 +- src/world/area_dgb/dgb_03/dgb_03.h | 2 +- src/world/area_dgb/dgb_15/C4F510.c | 2 +- src/world/area_dgb/dgb_15/C50CA0.c | 2 +- src/world/area_dgb/dgb_15/dgb_15.h | 2 +- src/world/area_flo/flo_00/C9DF60.c | 10 +- src/world/area_flo/flo_00/C9EE30.c | 2 +- src/world/area_flo/flo_00/flo_00.h | 2 +- src/world/area_flo/flo_18/CDC6A0.c | 10 +- src/world/area_flo/flo_18/flo_18.h | 2 +- src/world/area_flo/flo_19/CE36F0.c | 10 +- src/world/area_flo/flo_19/flo_19.h | 2 +- src/world/area_flo/flo_21/CE6700.c | 4 +- src/world/area_flo/flo_21/CE7240.c | 2 +- src/world/area_flo/flo_21/flo_21.h | 2 +- src/world/area_isk/isk_02/978710.c | 2 +- src/world/area_isk/isk_04/97B630.c | 2 +- src/world/area_isk/isk_07/9824F0.c | 2 +- src/world/area_isk/isk_11/98AB30.c | 2 +- src/world/area_iwa/iwa.h | 37 +- src/world/area_iwa/iwa_00/90CC40.c | 46 - src/world/area_iwa/iwa_00/90CEF0.c | 7 - src/world/area_iwa/iwa_00/iwa_00.h | 17 +- src/world/area_iwa/iwa_00/iwa_00_1_main.c | 61 + src/world/area_iwa/iwa_00/iwa_00_2_entity.c | 24 + src/world/area_iwa/iwa_00/iwa_00_3_npc.c | 424 ++++++ src/world/area_iwa/iwa_00/iwa_00_4_slide.c | 67 + src/world/area_iwa/iwa_01/90F6B0.c | 10 - src/world/area_iwa/iwa_01/90FBD0.c | 9 - src/world/area_iwa/iwa_01/912960.c | 7 - src/world/area_iwa/iwa_01/iwa_01.h | 20 +- src/world/area_iwa/iwa_01/iwa_01_1_main.c | 97 ++ src/world/area_iwa/iwa_01/iwa_01_2_entity.c | 14 + src/world/area_iwa/iwa_01/iwa_01_3_splash.c | 22 + src/world/area_iwa/iwa_01/iwa_01_4_npc.c | 167 +++ src/world/area_iwa/iwa_01/iwa_01_5_slide.c | 127 ++ src/world/area_iwa/iwa_02/915D70.c | 10 - src/world/area_iwa/iwa_02/iwa_02.h | 18 +- src/world/area_iwa/iwa_02/iwa_02_1_main.c | 48 + src/world/area_iwa/iwa_02/iwa_02_2_entity.c | 11 + src/world/area_iwa/iwa_02/iwa_02_3_npc.c | 238 ++++ src/world/area_iwa/iwa_03/918BB0.c | 27 - src/world/area_iwa/iwa_03/918EF0.c | 9 - src/world/area_iwa/iwa_03/iwa_03.h | 20 +- src/world/area_iwa/iwa_03/iwa_03_1_main.c | 42 + src/world/area_iwa/iwa_03/iwa_03_2_entity.c | 83 ++ src/world/area_iwa/iwa_03/iwa_03_3_npc.c | 132 ++ src/world/area_iwa/iwa_03/iwa_03_4_slide.c | 68 + src/world/area_iwa/iwa_04/91B8E0.c | 34 - src/world/area_iwa/iwa_04/iwa_04.h | 17 +- src/world/area_iwa/iwa_04/iwa_04_0_header.c | 23 + src/world/area_iwa/iwa_04/iwa_04_1_main.c | 39 + src/world/area_iwa/iwa_04/iwa_04_2_entity.c | 64 + src/world/area_iwa/iwa_04/iwa_04_3_npc.c | 342 +++++ src/world/area_iwa/iwa_10/91E570.c | 13 - src/world/area_iwa/iwa_10/91E5B0.c | 5 - src/world/area_iwa/iwa_10/91E6D0.c | 5 - src/world/area_iwa/iwa_10/91F5A0.c | 13 - src/world/area_iwa/iwa_10/91FA80.c | 6 - src/world/area_iwa/iwa_10/91FB20.c | 4 - src/world/area_iwa/iwa_10/iwa_10.h | 43 +- src/world/area_iwa/iwa_10/iwa_10_0_header.c | 38 + src/world/area_iwa/iwa_10/iwa_10_1_main.c | 88 ++ src/world/area_iwa/iwa_10/iwa_10_2_npc.c | 426 ++++++ src/world/area_iwa/iwa_10/iwa_10_3_train.c | 559 ++++++++ src/world/area_iwa/iwa_10/iwa_10_4_entity.c | 28 + .../area_iwa/iwa_10/iwa_10_5_parakarry.c | 351 +++++ .../area_iwa/iwa_10/iwa_10_6_new_party.c | 4 + src/world/area_iwa/iwa_10/iwa_10_7_foliage.c | 147 ++ src/world/area_iwa/iwa_11/9269F0.c | 16 - src/world/area_iwa/iwa_11/926A10.c | 17 - src/world/area_iwa/iwa_11/926C70.c | 21 - src/world/area_iwa/iwa_11/iwa_11.h | 23 +- src/world/area_iwa/iwa_11/iwa_11_0_header.c | 21 + src/world/area_iwa/iwa_11/iwa_11_1_main.c | 64 + src/world/area_iwa/iwa_11/iwa_11_2_train.c | 407 ++++++ src/world/area_iwa/iwa_11/iwa_11_3_scenery.c | 77 + src/world/area_iwa/iwa_11/iwa_11_4_npc.c | 51 + src/world/area_kkj/kkj_10/ACAB90.c | 2 +- src/world/area_kkj/kkj_11/ACE1B0.c | 2 +- src/world/area_kpa/kpa_113/A9CC30.c | 2 +- src/world/area_kpa/kpa_134/AA94B0.c | 2 +- src/world/area_kpa/kpa_14/A57830.c | 2 +- src/world/area_kpa/kpa_52/A67100.c | 2 +- src/world/area_kpa/kpa_60/A6CB00.c | 2 +- src/world/area_kpa/kpa_62/A72220.c | 2 +- src/world/area_kpa/kpa_91/A88280.c | 2 +- src/world/area_kpa/kpa_95/A8CA80.c | 2 +- src/world/area_kzn/kzn_02/kzn_02_3_npc.c | 31 +- src/world/area_kzn/kzn_03/kzn_03_2_npc.c | 155 +- src/world/area_kzn/kzn_03/kzn_03_3_entity.c | 2 +- src/world/area_kzn/kzn_06/kzn_06_2_entity.c | 2 +- src/world/area_kzn/kzn_07/kzn_07_2_entity.c | 2 +- src/world/area_kzn/kzn_07/kzn_07_3_enemy.c | 62 +- src/world/area_kzn/kzn_08/kzn_08.h | 4 +- src/world/area_kzn/kzn_08/kzn_08_3_enemy.c | 64 +- src/world/area_kzn/kzn_09/kzn_09_4_npc.c | 93 +- src/world/area_kzn/kzn_11/kzn_11_3_npc.c | 62 +- src/world/area_kzn/kzn_17/kzn_17_3_npc.c | 93 +- src/world/area_mac/mac_02/823BB0.c | 2 +- src/world/area_mac/mac_03/831B20.c | 2 +- src/world/area_mac/mac_04/844860.c | 2 +- src/world/area_nok/nok_01/9C53E0.c | 2 +- src/world/area_nok/nok_04/9EDBF0.c | 2 +- src/world/area_omo/omo_03/DA5260.c | 2 +- src/world/area_omo/omo_06/DB7910.c | 2 +- src/world/area_omo/omo_08/DC43D0.c | 2 +- src/world/area_omo/omo_10/DD79B0.c | 2 +- src/world/area_omo/omo_16/DEBED0.c | 2 +- src/world/area_omo/omo_17/DEEEA0.c | 2 +- src/world/area_pra/pra_02/D50010.c | 2 +- src/world/area_pra/pra_34/D8B3D0.c | 2 +- src/world/area_sam/sam_11/D3A850.c | 2 +- src/world/area_sbk/sbk.h | 12 +- src/world/area_sbk/sbk_00/sbk_00_2_npc.c | 64 +- src/world/area_sbk/sbk_01/sbk_01_2_npc.c | 64 +- src/world/area_sbk/sbk_02/sbk_02_3_npc.c | 4 +- src/world/area_sbk/sbk_03/sbk_03_2_npc.c | 128 +- src/world/area_sbk/sbk_04/sbk_04_2_npc.c | 64 +- src/world/area_sbk/sbk_05/sbk_05_3_npc.c | 320 +---- src/world/area_sbk/sbk_06/sbk_06_2_npc.c | 31 +- src/world/area_sbk/sbk_11/sbk_11_2_npc.c | 63 +- src/world/area_sbk/sbk_12/sbk_12_2_npc.c | 96 +- src/world/area_sbk/sbk_13/sbk_13_2_npc.c | 95 +- src/world/area_sbk/sbk_15/sbk_15_2_npc.c | 64 +- src/world/area_sbk/sbk_20/sbk_20_2_npc.c | 62 +- src/world/area_sbk/sbk_22/sbk_22_2_npc.c | 63 +- src/world/area_sbk/sbk_25/sbk_25_2_npc.c | 62 +- src/world/area_sbk/sbk_26/sbk_26_2_npc.c | 63 +- src/world/area_sbk/sbk_31/sbk_31_2_npc.c | 31 +- src/world/area_sbk/sbk_32/sbk_32_2_npc.c | 95 +- src/world/area_sbk/sbk_35/sbk_35_2_npc.c | 31 +- src/world/area_sbk/sbk_40/sbk_40_2_npc.c | 62 +- src/world/area_sbk/sbk_42/sbk_42_2_npc.c | 62 +- src/world/area_sbk/sbk_44/sbk_44_2_npc.c | 95 +- src/world/area_sbk/sbk_46/sbk_46_2_npc.c | 94 +- src/world/area_sbk/sbk_51/sbk_51_2_npc.c | 63 +- src/world/area_sbk/sbk_53/sbk_53_2_npc.c | 96 +- src/world/area_sbk/sbk_55/sbk_55_2_npc.c | 64 +- src/world/area_sbk/sbk_60/sbk_60_2_npc.c | 32 +- src/world/area_sbk/sbk_62/sbk_62_2_npc.c | 96 +- src/world/area_sbk/sbk_63/sbk_63_2_npc.c | 64 +- src/world/area_sbk/sbk_66/sbk_66_2_npc.c | 186 +-- src/world/area_trd/trd_01/trd_01_2_entity.c | 8 +- src/world/area_trd/trd_01/trd_01_3_npc.c | 115 +- src/world/area_trd/trd_02/trd_02_2_entity.c | 4 +- src/world/area_trd/trd_02/trd_02_3_npc.c | 96 +- src/world/area_trd/trd_03/trd_03_3_npc.c | 96 +- src/world/area_trd/trd_04/trd_04_2_entity.c | 6 +- src/world/area_trd/trd_04/trd_04_3_npc.c | 82 +- src/world/area_trd/trd_07/trd_07_2_npc.c | 94 +- ...yFlags100000.inc.c => RemovePadlock.inc.c} | 2 +- src/world/common/UnkFloatFunc001.inc.c | 2 +- src/world/common/UnkFloatFuncAbs.inc.c | 2 +- src/world/common/UnkFunc46.inc.c | 2 +- src/world/common/complete/GiveReward.inc.c | 31 + src/world/common/complete/KeyItems.inc.c | 46 + src/world/common/enemy/complete/Bandit.h | 35 + src/world/common/enemy/complete/Bandit.inc.c | 12 +- src/world/common/enemy/complete/Bobomb.h | 36 + .../enemy/complete/Bobomb_Stationary.inc.c | 1 + .../common/enemy/complete/Bobomb_Wander.inc.c | 1 + src/world/common/enemy/complete/Cleft.h | 31 + src/world/common/enemy/complete/Cleft.inc.c | 33 + src/world/common/enemy/complete/Goomba.inc.c | 30 + src/world/common/enemy/complete/HyperCleft.h | 31 + .../common/enemy/complete/HyperCleft.inc.c | 32 + src/world/common/enemy/complete/HyperGoomba.h | 35 + .../enemy/complete/HyperGoomba_Patrol.inc.c | 33 + .../enemy/complete/HyperGoomba_Wander.inc.c | 31 + .../common/enemy/complete/HyperParagoomba.h | 35 + .../enemy/complete/HyperParagoomba.inc.c | 40 + src/world/common/enemy/complete/KoopaTroopa.h | 36 + .../enemy/complete/KoopaTroopa_Patrol.inc.c | 1 + .../enemy/complete/KoopaTroopa_Wander.inc.c | 1 + src/world/common/enemy/complete/LavaBubble.h | 35 + .../common/enemy/complete/LavaBubble.inc.c | 2 +- src/world/common/enemy/complete/MontyMole.h | 55 + .../common/enemy/complete/MontyMole.inc.c | 1 + .../complete/MontyMole_GroundAmbush.inc.c | 90 ++ .../complete/MontyMole_StoneThrower.inc.c | 164 +++ .../enemy/complete/MontyMole_WallAmbush.inc.c | 100 ++ src/world/common/enemy/complete/Paratroopa.h | 35 + .../common/enemy/complete/Paratroopa.inc.c | 2 +- src/world/common/enemy/complete/Pokey.h | 36 + src/world/common/enemy/complete/Pokey.inc.c | 2 +- .../common/enemy/complete/PutridPiranha.h | 51 + .../common/enemy/complete/PutridPiranha.inc.c | 3 +- src/world/common/enemy/complete/SpikeTop.h | 35 + .../common/enemy/complete/SpikeTop.inc.c | 3 +- src/world/common/npc/Boo.h | 49 + src/world/common/npc/Boo.inc.c | 8 + src/world/common/npc/Boo_Patrol.inc.c | 124 ++ src/world/common/npc/TrainConductorToad.h | 29 + src/world/common/npc/TrainConductorToad.inc.c | 13 + src/world/common/npc/TubbasHeart.h | 29 + src/world/common/npc/TubbasHeart.inc.c | 20 + src/world/common/npc/Yakkey.h | 29 + src/world/common/npc/Yakkey.inc.c | 8 + src/world/partner/bombette.c | 2 +- src/world/partner/parakarry.c | 18 +- ver/us/asm/data/battle/area_kpa/685260.data.s | 2 +- .../asm/data/battle/area_kpa4/6CC6C0.data.s | 2 +- ver/us/asm/data/dead/EBA260.data.s | 8 +- ver/us/asm/data/dead/EF8250.data.s | 4 +- .../data/world/area_isk/isk_02/978B80.data.s | 2 +- .../data/world/area_isk/isk_04/97C300.data.s | 2 +- .../data/world/area_isk/isk_05/97FCE0.data.s | 2 +- .../data/world/area_isk/isk_07/982860.data.s | 2 +- .../data/world/area_isk/isk_07/983AD0.data.s | 2 +- .../data/world/area_isk/isk_11/98D3C0.data.s | 2 +- .../data/world/area_isk/isk_13/991A90.data.s | 2 +- .../data/world/area_isk/isk_14/9946D0.data.s | 2 +- .../data/world/area_iwa/iwa_00/90CF20.data.s | 108 -- .../data/world/area_iwa/iwa_01/912990.data.s | 33 - .../data/world/area_iwa/iwa_01/913070.data.s | 12 - .../data/world/area_iwa/iwa_01/9135D0.data.s | 84 -- .../data/world/area_iwa/iwa_01/9154B0.data.s | 21 - .../data/world/area_iwa/iwa_02/916E70.data.s | 21 - .../data/world/area_iwa/iwa_02/917170.data.s | 6 - .../data/world/area_iwa/iwa_02/917220.data.s | 78 -- .../data/world/area_iwa/iwa_03/919F00.data.s | 36 - .../data/world/area_iwa/iwa_03/91A6B0.data.s | 42 - .../data/world/area_iwa/iwa_03/91B510.data.s | 12 - .../data/world/area_iwa/iwa_04/91C9C0.data.s | 6 - .../data/world/area_iwa/iwa_04/91CA50.data.s | 21 - .../data/world/area_iwa/iwa_04/91CFA0.data.s | 36 - .../data/world/area_iwa/iwa_10/91FD60.data.s | 6 - .../data/world/area_iwa/iwa_10/91FE80.data.s | 12 - .../data/world/area_iwa/iwa_10/920280.data.s | 63 - .../data/world/area_iwa/iwa_10/921830.data.s | 21 - .../data/world/area_iwa/iwa_10/923FD0.data.s | 24 - .../data/world/area_iwa/iwa_10/9247B0.data.s | 81 -- .../data/world/area_iwa/iwa_11/926D00.data.s | 6 - .../data/world/area_iwa/iwa_11/926D90.data.s | 6 - .../data/world/area_iwa/iwa_11/927030.data.s | 27 - .../data/world/area_jan/jan_04/B461B0.data.s | 4 +- .../data/world/area_kkj/kkj_10/ACC510.data.s | 2 +- .../data/world/area_kkj/kkj_11/ACFD40.data.s | 2 +- .../data/world/area_kmr/kmr_02/8C4A40.data.s | 2 +- .../data/world/area_kpa/kpa_113/A9DA60.data.s | 2 +- .../data/world/area_kpa/kpa_134/AAC3B0.data.s | 2 +- .../data/world/area_kpa/kpa_14/A58DB0.data.s | 2 +- .../data/world/area_kpa/kpa_52/A68510.data.s | 2 +- .../data/world/area_kpa/kpa_60/A6CEF0.data.s | 2 +- .../data/world/area_kpa/kpa_62/A72740.data.s | 2 +- .../data/world/area_kpa/kpa_91/A8C230.data.s | 2 +- .../data/world/area_kpa/kpa_95/A8E450.data.s | 2 +- .../data/world/area_mac/mac_02/828F10.data.s | 6 +- .../data/world/area_mac/mac_03/835370.data.s | 6 +- .../data/world/area_mac/mac_04/851410.data.s | 2 +- .../data/world/area_mac/mac_05/857070.data.s | 4 +- .../data/world/area_mim/mim_04/B9FEA0.data.s | 4 +- .../data/world/area_nok/nok_01/9C89E0.data.s | 2 +- .../data/world/area_nok/nok_04/9EEEB0.data.s | 2 +- .../data/world/area_omo/omo_03/DA8190.data.s | 2 +- .../data/world/area_omo/omo_06/DB9060.data.s | 2 +- .../data/world/area_omo/omo_08/DC8100.data.s | 2 +- .../data/world/area_omo/omo_10/DD8A60.data.s | 2 +- .../data/world/area_omo/omo_16/DEC600.data.s | 2 +- .../data/world/area_omo/omo_17/DF2C90.data.s | 2 +- .../data/world/area_pra/pra_02/D52DE0.data.s | 4 +- .../data/world/area_pra/pra_34/D8C470.data.s | 2 +- .../data/world/area_sam/sam_04/D16E20.data.s | 2 +- .../data/world/area_sam/sam_11/D3D900.data.s | 2 +- ...90FA48.s => iwa_01_func_80240398_90FA48.s} | 2 +- ...000_90F6B0.s => iwa_01_gfx_build_splash.s} | 6 +- .../iwa_10/91F5A0/func_802413E0_91F950.s | 28 - .../iwa_10/91F5A0/func_80241434_91F9A4.s | 18 - .../iwa_10/91F5A0/func_8024146C_91F9DC.s | 50 - .../iwa_10/91FA80/func_80241510_91FA80.s | 51 - .../mim_03/B9B480/func_802400A0_B9B520.s | 4 +- .../osr_00/AACBB0/func_802406E0_AACF10.s | 4 +- .../sam_04/D138E0/func_802405C8_D13B98.s | 12 +- ver/us/splat.yaml | 195 +-- ver/us/symbol_addrs.txt | 173 ++- ver/us/undefined_syms.txt | 3 + 391 files changed, 11874 insertions(+), 11086 deletions(-) create mode 100644 src/common/CosInterpMinMax.inc.c delete mode 100644 src/common/UnkFloatFunc.inc.c rename src/world/area_arn/arn_02/{header.c => arn_02_0_header.c} (53%) create mode 100644 src/world/area_arn/arn_02/arn_02_1_main.c create mode 100644 src/world/area_arn/arn_02/arn_02_2_entity.c create mode 100644 src/world/area_arn/arn_02/arn_02_3_npc.c delete mode 100644 src/world/area_arn/arn_02/events.c rename src/world/area_arn/arn_03/{header.c => arn_03_0_header.c} (53%) create mode 100644 src/world/area_arn/arn_03/arn_03_1_main.c create mode 100644 src/world/area_arn/arn_03/arn_03_2_npc.c create mode 100644 src/world/area_arn/arn_03/arn_03_3_entity.c delete mode 100644 src/world/area_arn/arn_03/events.c rename src/world/area_arn/arn_04/{header.c => arn_04_0_header.c} (53%) create mode 100644 src/world/area_arn/arn_04/arn_04_1_main.c create mode 100644 src/world/area_arn/arn_04/arn_04_2_npc.c create mode 100644 src/world/area_arn/arn_04/arn_04_3_entity.c delete mode 100644 src/world/area_arn/arn_04/events.c rename src/world/area_arn/arn_05/{header.c => arn_05_0_header.c} (53%) create mode 100644 src/world/area_arn/arn_05/arn_05_1_main.c create mode 100644 src/world/area_arn/arn_05/arn_05_2_npc.c create mode 100644 src/world/area_arn/arn_05/arn_05_3_entity.c delete mode 100644 src/world/area_arn/arn_05/events.c delete mode 100644 src/world/area_arn/arn_07/BECDF0.c delete mode 100644 src/world/area_arn/arn_07/BED5F0.c delete mode 100644 src/world/area_arn/arn_07/BED660.c rename src/world/area_arn/arn_07/{header.c => arn_07_0_header.c} (55%) create mode 100644 src/world/area_arn/arn_07/arn_07_1_main.c create mode 100644 src/world/area_arn/arn_07/arn_07_2_windmill.c create mode 100644 src/world/area_arn/arn_07/arn_07_3_entity.c create mode 100644 src/world/area_arn/arn_07/arn_07_4_npc.c delete mode 100644 src/world/area_arn/arn_07/events.c delete mode 100644 src/world/area_arn/arn_08/BF47A0.c create mode 100644 src/world/area_arn/arn_08/arn_08_0_header.c create mode 100644 src/world/area_arn/arn_08/arn_08_1_main.c create mode 100644 src/world/area_arn/arn_08/arn_08_2_well.c create mode 100644 src/world/area_arn/arn_08/arn_08_3_gears.c create mode 100644 src/world/area_arn/arn_08/arn_08_4_demo.c create mode 100644 src/world/area_arn/arn_08/arn_08_5_npc.c create mode 100644 src/world/area_arn/arn_08/arn_08_6_entity.c delete mode 100644 src/world/area_arn/arn_08/events.c delete mode 100644 src/world/area_arn/arn_08/header.c create mode 100644 src/world/area_arn/arn_09/arn_09_0_header.c create mode 100644 src/world/area_arn/arn_09/arn_09_1_main.c create mode 100644 src/world/area_arn/arn_09/arn_09_2_entity.c create mode 100644 src/world/area_arn/arn_09/arn_09_3_launch.c create mode 100644 src/world/area_arn/arn_09/arn_09_4_npc.c delete mode 100644 src/world/area_arn/arn_09/events.c delete mode 100644 src/world/area_arn/arn_09/header.c create mode 100644 src/world/area_arn/arn_10/arn_10_0_header.c create mode 100644 src/world/area_arn/arn_10/arn_10_1_main.c create mode 100644 src/world/area_arn/arn_10/arn_10_2_npc.c create mode 100644 src/world/area_arn/arn_10/arn_10_3_entity.c delete mode 100644 src/world/area_arn/arn_10/events.c delete mode 100644 src/world/area_arn/arn_10/header.c rename src/world/area_arn/arn_11/{header.c => arn_11_0_header.c} (52%) create mode 100644 src/world/area_arn/arn_11/arn_11_1_main.c create mode 100644 src/world/area_arn/arn_11/arn_11_2_npc.c create mode 100644 src/world/area_arn/arn_12/arn_12_0_header.c create mode 100644 src/world/area_arn/arn_12/arn_12_1_main.c create mode 100644 src/world/area_arn/arn_12/arn_12_2_npc.c create mode 100644 src/world/area_arn/arn_12/arn_12_3_entity.c delete mode 100644 src/world/area_arn/arn_12/events.c delete mode 100644 src/world/area_arn/arn_12/header.c create mode 100644 src/world/area_arn/arn_13/arn_13_0_header.c create mode 100644 src/world/area_arn/arn_13/arn_13_1_main.c create mode 100644 src/world/area_arn/arn_13/arn_13_2_npc.c create mode 100644 src/world/area_arn/arn_13/arn_13_3_entity.c delete mode 100644 src/world/area_arn/arn_13/events.c delete mode 100644 src/world/area_arn/arn_13/header.c delete mode 100644 src/world/area_iwa/iwa_00/90CC40.c delete mode 100644 src/world/area_iwa/iwa_00/90CEF0.c create mode 100644 src/world/area_iwa/iwa_00/iwa_00_1_main.c create mode 100644 src/world/area_iwa/iwa_00/iwa_00_2_entity.c create mode 100644 src/world/area_iwa/iwa_00/iwa_00_3_npc.c create mode 100644 src/world/area_iwa/iwa_00/iwa_00_4_slide.c delete mode 100644 src/world/area_iwa/iwa_01/90F6B0.c delete mode 100644 src/world/area_iwa/iwa_01/90FBD0.c delete mode 100644 src/world/area_iwa/iwa_01/912960.c create mode 100644 src/world/area_iwa/iwa_01/iwa_01_1_main.c create mode 100644 src/world/area_iwa/iwa_01/iwa_01_2_entity.c create mode 100644 src/world/area_iwa/iwa_01/iwa_01_3_splash.c create mode 100644 src/world/area_iwa/iwa_01/iwa_01_4_npc.c create mode 100644 src/world/area_iwa/iwa_01/iwa_01_5_slide.c delete mode 100644 src/world/area_iwa/iwa_02/915D70.c create mode 100644 src/world/area_iwa/iwa_02/iwa_02_1_main.c create mode 100644 src/world/area_iwa/iwa_02/iwa_02_2_entity.c create mode 100644 src/world/area_iwa/iwa_02/iwa_02_3_npc.c delete mode 100644 src/world/area_iwa/iwa_03/918BB0.c delete mode 100644 src/world/area_iwa/iwa_03/918EF0.c create mode 100644 src/world/area_iwa/iwa_03/iwa_03_1_main.c create mode 100644 src/world/area_iwa/iwa_03/iwa_03_2_entity.c create mode 100644 src/world/area_iwa/iwa_03/iwa_03_3_npc.c create mode 100644 src/world/area_iwa/iwa_03/iwa_03_4_slide.c delete mode 100644 src/world/area_iwa/iwa_04/91B8E0.c create mode 100644 src/world/area_iwa/iwa_04/iwa_04_0_header.c create mode 100644 src/world/area_iwa/iwa_04/iwa_04_1_main.c create mode 100644 src/world/area_iwa/iwa_04/iwa_04_2_entity.c create mode 100644 src/world/area_iwa/iwa_04/iwa_04_3_npc.c delete mode 100644 src/world/area_iwa/iwa_10/91E570.c delete mode 100644 src/world/area_iwa/iwa_10/91E5B0.c delete mode 100644 src/world/area_iwa/iwa_10/91E6D0.c delete mode 100644 src/world/area_iwa/iwa_10/91F5A0.c delete mode 100644 src/world/area_iwa/iwa_10/91FA80.c delete mode 100644 src/world/area_iwa/iwa_10/91FB20.c create mode 100644 src/world/area_iwa/iwa_10/iwa_10_0_header.c create mode 100644 src/world/area_iwa/iwa_10/iwa_10_1_main.c create mode 100644 src/world/area_iwa/iwa_10/iwa_10_2_npc.c create mode 100644 src/world/area_iwa/iwa_10/iwa_10_3_train.c create mode 100644 src/world/area_iwa/iwa_10/iwa_10_4_entity.c create mode 100644 src/world/area_iwa/iwa_10/iwa_10_5_parakarry.c create mode 100644 src/world/area_iwa/iwa_10/iwa_10_6_new_party.c create mode 100644 src/world/area_iwa/iwa_10/iwa_10_7_foliage.c delete mode 100644 src/world/area_iwa/iwa_11/9269F0.c delete mode 100644 src/world/area_iwa/iwa_11/926A10.c delete mode 100644 src/world/area_iwa/iwa_11/926C70.c create mode 100644 src/world/area_iwa/iwa_11/iwa_11_0_header.c create mode 100644 src/world/area_iwa/iwa_11/iwa_11_1_main.c create mode 100644 src/world/area_iwa/iwa_11/iwa_11_2_train.c create mode 100644 src/world/area_iwa/iwa_11/iwa_11_3_scenery.c create mode 100644 src/world/area_iwa/iwa_11/iwa_11_4_npc.c rename src/world/common/{SetEntityFlags100000.inc.c => RemovePadlock.inc.c} (71%) create mode 100644 src/world/common/complete/GiveReward.inc.c create mode 100644 src/world/common/complete/KeyItems.inc.c create mode 100644 src/world/common/enemy/complete/Bandit.h create mode 100644 src/world/common/enemy/complete/Bobomb.h create mode 100644 src/world/common/enemy/complete/Cleft.h create mode 100644 src/world/common/enemy/complete/Cleft.inc.c create mode 100644 src/world/common/enemy/complete/Goomba.inc.c create mode 100644 src/world/common/enemy/complete/HyperCleft.h create mode 100644 src/world/common/enemy/complete/HyperCleft.inc.c create mode 100644 src/world/common/enemy/complete/HyperGoomba.h create mode 100644 src/world/common/enemy/complete/HyperGoomba_Patrol.inc.c create mode 100644 src/world/common/enemy/complete/HyperGoomba_Wander.inc.c create mode 100644 src/world/common/enemy/complete/HyperParagoomba.h create mode 100644 src/world/common/enemy/complete/HyperParagoomba.inc.c create mode 100644 src/world/common/enemy/complete/KoopaTroopa.h create mode 100644 src/world/common/enemy/complete/LavaBubble.h create mode 100644 src/world/common/enemy/complete/MontyMole.h create mode 100644 src/world/common/enemy/complete/MontyMole.inc.c create mode 100644 src/world/common/enemy/complete/MontyMole_GroundAmbush.inc.c create mode 100644 src/world/common/enemy/complete/MontyMole_StoneThrower.inc.c create mode 100644 src/world/common/enemy/complete/MontyMole_WallAmbush.inc.c create mode 100644 src/world/common/enemy/complete/Paratroopa.h create mode 100644 src/world/common/enemy/complete/Pokey.h create mode 100644 src/world/common/enemy/complete/PutridPiranha.h create mode 100644 src/world/common/enemy/complete/SpikeTop.h create mode 100644 src/world/common/npc/Boo.h create mode 100644 src/world/common/npc/Boo.inc.c create mode 100644 src/world/common/npc/Boo_Patrol.inc.c create mode 100644 src/world/common/npc/TrainConductorToad.h create mode 100644 src/world/common/npc/TrainConductorToad.inc.c create mode 100644 src/world/common/npc/TubbasHeart.h create mode 100644 src/world/common/npc/TubbasHeart.inc.c create mode 100644 src/world/common/npc/Yakkey.h create mode 100644 src/world/common/npc/Yakkey.inc.c delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_00/90CF20.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_01/912990.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_01/913070.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_01/9135D0.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_01/9154B0.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_02/916E70.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_02/917170.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_02/917220.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_03/919F00.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_03/91A6B0.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_03/91B510.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_04/91C9C0.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_04/91CA50.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_04/91CFA0.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_10/91FD60.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_10/91FE80.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_10/920280.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_10/921830.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_10/923FD0.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_10/9247B0.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_11/926D00.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_11/926D90.data.s delete mode 100644 ver/us/asm/data/world/area_iwa/iwa_11/927030.data.s rename ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/{func_80240398_90FA48.s => iwa_01_func_80240398_90FA48.s} (99%) rename ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/{func_80240000_90F6B0.s => iwa_01_gfx_build_splash.s} (98%) delete mode 100644 ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_802413E0_91F950.s delete mode 100644 ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_80241434_91F9A4.s delete mode 100644 ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_8024146C_91F9DC.s delete mode 100644 ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91FA80/func_80241510_91FA80.s diff --git a/include/entity.h b/include/entity.h index 141ac05f87..9311aa2da2 100644 --- a/include/entity.h +++ b/include/entity.h @@ -397,16 +397,16 @@ extern EntityBlueprint Entity_InertRedBlock; extern EntityBlueprint Entity_BrickBlock; extern EntityBlueprint Entity_MulticoinBlock; extern EntityBlueprint Entity_Hammer1Block; -extern EntityBlueprint Entity_Hammer1Block_WideHitbox; -extern EntityBlueprint Entity_Hammer1Block_TallHitbox; +extern EntityBlueprint Entity_Hammer1Block_WideX; +extern EntityBlueprint Entity_Hammer1Block_WideZ; extern EntityBlueprint Entity_Hammer1BlockTiny; extern EntityBlueprint Entity_Hammer2Block; -extern EntityBlueprint Entity_Hammer2Block_WideHitbox; -extern EntityBlueprint Entity_Hammer2Block_TallHitbox; +extern EntityBlueprint Entity_Hammer2Block_WideX; +extern EntityBlueprint Entity_Hammer2Block_WideZ; extern EntityBlueprint Entity_Hammer2BlockTiny; extern EntityBlueprint Entity_Hammer3Block; -extern EntityBlueprint Entity_Hammer3Block_WideHitbox; -extern EntityBlueprint Entity_Hammer3Block_TallHitbox; +extern EntityBlueprint Entity_Hammer3Block_WideX; +extern EntityBlueprint Entity_Hammer3Block_WideZ; extern EntityBlueprint Entity_Hammer3BlockTiny; extern EntityBlueprint Entity_PushBlock; extern EntityBlueprint Entity_PowBlock; diff --git a/include/enums.h b/include/enums.h index 01b7fd13fb..b4eb1f001d 100644 --- a/include/enums.h +++ b/include/enums.h @@ -1666,7 +1666,7 @@ enum ItemIDs { ITEM_DRIED_SHROOM = 0x0000008D, ITEM_ULTRA_SHROOM = 0x0000008E, ITEM_SLEEPY_SHEEP = 0x0000008F, - ITEM_P_O_W_BLOCK = 0x00000090, + ITEM_POW_BLOCK = 0x00000090, ITEM_HUSTLE_DRINK = 0x00000091, ITEM_STOP_WATCH = 0x00000092, ITEM_WHACKAS_BUMP = 0x00000093, @@ -1919,6 +1919,14 @@ enum GotItemType { ITEM_TYPE_BADGE = 2 }; +enum ItemPickupFlags { + ITEM_PICKUP_FLAG_NO_SOUND = 0x0001, + ITEM_PICKUP_FLAG_NO_ANIMS = 0x0002, + ITEM_PICKUP_FLAG_1_COIN = 0x0010, + ITEM_PICKUP_FLAG_3_STAR_PIECES = 0x0020, + ITEM_PICKUP_FLAG_UNIQUE = 0x0040, +}; + enum ItemTypeFlags { ITEM_TYPE_FLAG_WORLD_USABLE = 0x0001, ITEM_TYPE_FLAG_BATTLE_USABLE = 0x0002, @@ -3319,7 +3327,7 @@ enum PlayerStatusAnimFlags { PA_FLAGS_HOLDING_WATT = 0x00000001, PA_FLAGS_2 = 0x00000002, PA_FLAGS_INTERRUPT_USE_PARTNER = 0x00000004, ///< forces actions with bow, parakarry, watt, and lakilester to end (sushie not tested) - PA_FLAGS_8 = 0x00000008, ///< triggers partner use when set + PA_FLAGS_FORCE_USE_PARTNER = 0x00000008, ///< triggers partner use when set PA_FLAGS_INTERACT_PROMPT_AVAILABLE = 0x00000010, ///< ! prompt PA_FLAGS_SPEECH_PROMPT_AVAILABLE = 0x00000020, ///< (...) prompt PA_FLAGS_40 = 0x00000040, diff --git a/include/script_api/common.h b/include/script_api/common.h index 2563c1edff..22f1380db9 100644 --- a/include/script_api/common.h +++ b/include/script_api/common.h @@ -15,6 +15,7 @@ ApiStatus LoadDemoBattle(Evt* script, s32 isInitialCall); ApiStatus RemoveNpc(Evt* script, s32 isInitialCall); ApiStatus RemoveEncounter(Evt* script, s32 isInitialCall); ApiStatus GetBattleOutcome(Evt* script, s32 isInitialCall); +ApiStatus func_800445D4(Evt* script, s32 isInitialCall); ApiStatus GetOwnerEncounterTrigger(Evt* script, s32 isInitialCall); ApiStatus DoNpcDefeat(Evt* script, s32 isInitialCall); ApiStatus StartBattle(Evt* script, s32 isInitialCall); @@ -44,6 +45,7 @@ ApiStatus GetSelfNpcID(Evt* script, s32 isInitialCall); ApiStatus ClearDefeatedEnemies(Evt* script, s32 isInitialCall); ApiStatus SetEnemyFlagBits(Evt* script, s32 isInitialCall); ApiStatus GetSelfAnimationFromTable(Evt* script, s32 isInitialCall); +ApiStatus func_800457F8(Evt* script, s32 isInitialCall); ApiStatus ShowCoinCounter(Evt* script, s32 isInitialCall); ApiStatus MakeEntity(Evt* script, s32 isInitialCall); ApiStatus AssignScript(Evt* script, s32 isInitialCall); @@ -264,6 +266,7 @@ ApiStatus DemoSetButtons(Evt* script, s32 isInitialCall); ApiStatus DemoJoystickRadial(Evt* script, s32 isInitialCall); ApiStatus DemoJoystickXY(Evt* script, s32 isInitialCall); ApiStatus WaitForPlayerInputEnabled(Evt* script, s32 isInitialCall); +ApiStatus func_802D2484(Evt* script, s32 isInitialCall); ApiStatus IsPlayerOnValidFloor(Evt* script, s32 isInitialCall); ApiStatus WaitForPlayerMoveToComplete(Evt* script, s32 isInitialCall); ApiStatus func_802CFE2C(Evt* script, s32 isInitialCall); @@ -287,8 +290,10 @@ ApiStatus func_802D7B10(Evt* script, s32 isInitialCall); ApiStatus ShowConsumableChoicePopup(Evt* script, s32 isInitialCall); ApiStatus func_800458CC(Evt* script, s32 isInitialCall); ApiStatus OnPlayerFled(Evt* script, s32 isInitialCall); +ApiStatus SetTattleMessage(Evt* script, s32 isInitialCall); ApiStatus ShowKeyChoicePopup(Evt* script, s32 isInitialCall); ApiStatus CloseChoicePopup(Evt* script, s32 isInitialCall); +ApiStatus ForceUsePartner(Evt* script, s32 isInitialCall); ApiStatus InterruptUsePartner(Evt* script, s32 isInitialCall); ApiStatus func_80045838(Evt* script, s32 isInitialCall); ApiStatus ModifyGlobalOverrideFlags(Evt* script, s32 isInitialCall); diff --git a/include/script_api/macros.h b/include/script_api/macros.h index c35f6617a2..4a2b9088ac 100644 --- a/include/script_api/macros.h +++ b/include/script_api/macros.h @@ -613,6 +613,39 @@ EVT_END \ } +#define EVT_EXIT_SINGLE_DOOR(exitIdx, map, entryIdx, colliderID, modelID, swingDir) \ + { \ + EVT_SET_GROUP(EVT_GROUP_1B) \ + EVT_CALL(DisablePlayerInput, TRUE) \ + EVT_SET(LVar0, exitIdx) \ + EVT_SET(LVar1, colliderID) \ + EVT_SET(LVar2, modelID) \ + EVT_SET(LVar3, swingDir) \ + EVT_EXEC(ExitSingleDoor) \ + EVT_WAIT(17) \ + EVT_CALL(GotoMap, EVT_PTR(map), entryIdx) \ + EVT_WAIT(100) \ + EVT_RETURN \ + EVT_END \ + } + +#define EVT_EXIT_SPLIT_SINGLE_DOOR(exitIdx, map, entryIdx, colliderID, topModelID, bottomModelID, swingDir) \ + { \ + EVT_SET_GROUP(EVT_GROUP_1B) \ + EVT_CALL(DisablePlayerInput, TRUE) \ + EVT_SET(LVar0, exitIdx) \ + EVT_SET(LVar1, colliderID) \ + EVT_SET(LVar2, topModelID) \ + EVT_SET(LVar4, bottomModelID) \ + EVT_SET(LVar3, swingDir) \ + EVT_EXEC(ExitSplitSingleDoor) \ + EVT_WAIT(17) \ + EVT_CALL(GotoMap, EVT_PTR(map), entryIdx) \ + EVT_WAIT(100) \ + EVT_RETURN \ + EVT_END \ + } + #define EVT_EXIT_DOUBLE_DOOR(exitIdx, map, entryIdx, colliderID, leftDoorModelID, rightDoorModelID) \ { \ EVT_SET_GROUP(EVT_GROUP_1B) \ diff --git a/include/script_api/map.h b/include/script_api/map.h index d9e302b221..70c5c87065 100644 --- a/include/script_api/map.h +++ b/include/script_api/map.h @@ -26,8 +26,11 @@ extern EvtScript EnterSavePoint; extern EvtScript ExitWalk; extern EvtScript ExitSingleDoor; extern EvtScript EnterSingleDoor; +extern EvtScript ExitSplitSingleDoor; +extern EvtScript EnterSplitSingleDoor; extern EvtScript ExitDoubleDoor; extern EvtScript EnterDoubleDoor; - +extern EvtScript ExitSplitDoubleDoor; +extern EvtScript EnterSplitDoubleDoor; #endif diff --git a/src/77480.c b/src/77480.c index d5260a75ae..1228da1b84 100644 --- a/src/77480.c +++ b/src/77480.c @@ -672,7 +672,7 @@ void update_player(void) { playerStatus->pushVelocity.y = 0.0f; playerStatus->pushVelocity.z = 0.0f; playerStatus->flags &= ~PS_FLAGS_10; - playerStatus->animFlags &= ~PA_FLAGS_8; + playerStatus->animFlags &= ~PA_FLAGS_FORCE_USE_PARTNER; } void check_input_use_partner(void) { @@ -681,7 +681,7 @@ void check_input_use_partner(void) { u32 actionState = playerStatus->actionState; if (!(playerStatus->animFlags & PA_FLAGS_8BIT_MARIO)) { - if (playerStatus->animFlags & PA_FLAGS_8 || playerStatus->inputEnabledCounter == 0) { + if (playerStatus->animFlags & PA_FLAGS_FORCE_USE_PARTNER || playerStatus->inputEnabledCounter == 0) { if (playerStatus->pressedButtons & BUTTON_C_DOWN && !(playerStatus->flags & PS_FLAGS_80) && !(playerStatus->pressedButtons & BUTTON_B) && !(playerStatus->animFlags & PA_FLAGS_USING_PEACH_PHYSICS) && actionState <= ACTION_STATE_RUN) { diff --git a/src/7B440.c b/src/7B440.c index 02904835c0..5b630843b6 100644 --- a/src/7B440.c +++ b/src/7B440.c @@ -30,7 +30,7 @@ void update_player_input(void) { playerStatus->heldButtons = 0; } - if (playerStatus->animFlags & PA_FLAGS_8) { + if (playerStatus->animFlags & PA_FLAGS_FORCE_USE_PARTNER) { playerStatus->animFlags |= PA_FLAGS_200000; playerStatus->pressedButtons |= 4; } diff --git a/src/C50A0.c b/src/C50A0.c index c174fd3c5c..1fa1a770db 100644 --- a/src/C50A0.c +++ b/src/C50A0.c @@ -556,7 +556,7 @@ s32 make_item_entity(s32 itemID, f32 x, f32 y, f32 z, s32 itemSpawnMode, s32 pic y = itemEntity->position.y + 12.0f; z = itemEntity->position.z; hitDepth = 1000.0f; - npc_raycast_down_sides(0x20000, &x, &y, &z, &hitDepth); + npc_raycast_down_sides(COLLISION_CHANNEL_20000, &x, &y, &z, &hitDepth); shadow->position.x = x; shadow->position.y = y; shadow->position.z = z; @@ -658,7 +658,7 @@ s32 make_item_entity_at_player(s32 itemID, s32 category, s32 pickupMsgFlags) { posY = item->position.y + 12.0f; posZ = item->position.z; depth = 1000.0f; - npc_raycast_down_sides(0x20000, &posX, &posY, &posZ, &depth); + npc_raycast_down_sides(COLLISION_CHANNEL_20000, &posX, &posY, &posZ, &depth); shadow->position.x = posX; shadow->position.y = posY; shadow->position.z = posZ; @@ -790,7 +790,7 @@ void update_item_entities(void) { y = entity->position.y + 12.0f; z = entity->position.z; hitDepth = 1000.0f; - npc_raycast_down_sides(0x20000, &x, &y, &z, &hitDepth); + npc_raycast_down_sides(COLLISION_CHANNEL_20000, &x, &y, &z, &hitDepth); shadow->position.x = x; shadow->position.y = y; @@ -1558,9 +1558,9 @@ void update_item_entity_collectable(ItemEntity* item) { outDepth = temp + physData->verticalVelocity; if (physData->unk_20 == 0) { - hit = npc_raycast_up(0x20000, &outX, &outY, &outZ, &outDepth); + hit = npc_raycast_up(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, &outDepth); } else { - hit = npc_raycast_up(0x20000, &outX, &outY, &outZ, &outDepth); + hit = npc_raycast_up(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, &outDepth); } if (hit && outDepth < temp) { @@ -1579,9 +1579,9 @@ void update_item_entity_collectable(ItemEntity* item) { outZ = item->position.z; if (physData->unk_20 == 0) { - hit = npc_test_move_complex_with_slipping(0x20000, &outX, &outY, &outZ, 0.0f, physData->moveAngle, physData->constVelocity, physData->unk_08); + hit = npc_test_move_complex_with_slipping(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, 0.0f, physData->moveAngle, physData->constVelocity, physData->unk_08); } else { - hit = npc_test_move_simple_with_slipping(0x20000, &outX, &outY, &outZ, 0.0f, physData->moveAngle, physData->constVelocity, physData->unk_08); + hit = npc_test_move_simple_with_slipping(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, 0.0f, physData->moveAngle, physData->constVelocity, physData->unk_08); } if (hit) { @@ -1608,9 +1608,9 @@ void update_item_entity_collectable(ItemEntity* item) { outZ = item->position.z; outDepth = -physData->verticalVelocity + 12.0f; if (physData->unk_20 == 0) { - hit = npc_raycast_down_sides(0x20000, &outX, &outY, &outZ, &outDepth); + hit = npc_raycast_down_sides(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, &outDepth); } else { - hit = npc_raycast_down_around(0x20000, &outX, &outY, &outZ, &outDepth, 180.0f, 20.0f); + hit = npc_raycast_down_around(COLLISION_CHANNEL_20000, &outX, &outY, &outZ, &outDepth, 180.0f, 20.0f); } } else { outX = item->position.x; diff --git a/src/EB9D90.c b/src/EB9D90.c index b07d97a5c9..13c5fb43d6 100644 --- a/src/EB9D90.c +++ b/src/EB9D90.c @@ -50,7 +50,7 @@ ApiStatus func_802410E4_EB9F34(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" #include "world/common/SyncStatusMenu.inc.c" diff --git a/src/EF7A80.c b/src/EF7A80.c index 04b63d36eb..200c334e09 100644 --- a/src/EF7A80.c +++ b/src/EF7A80.c @@ -37,4 +37,4 @@ ApiStatus func_80240340_EF7DC0(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" diff --git a/src/EFEB00.c b/src/EFEB00.c index b0d72da4ed..d9a7c81efc 100644 --- a/src/EFEB00.c +++ b/src/EFEB00.c @@ -56,5 +56,5 @@ ApiStatus func_80240784_EFF284(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" diff --git a/src/battle/area_arn/actor/tubbas_heart.c b/src/battle/area_arn/actor/tubbas_heart.c index 10877e0895..47255171a2 100644 --- a/src/battle/area_arn/actor/tubbas_heart.c +++ b/src/battle/area_arn/actor/tubbas_heart.c @@ -142,7 +142,7 @@ EvtScript N(init_80223DA0) = { EVT_END }; -ApiStatus func_80218680_4FF0D0(Evt* script, s32 isInitialCall) { +ApiStatus N(func_80218680_4FF0D0)(Evt* script, s32 isInitialCall) { Bytecode *args = script->ptrReadPos; EffectInstance* effect = (EffectInstance*) evt_get_variable(script, *args++); @@ -174,7 +174,7 @@ EvtScript N(idle_80223E98) = { EVT_ADD(LVar2, 6) EVT_SETF(LVar4, EVT_FLOAT(0.4)) EVT_END_IF - EVT_CALL(func_80218680_4FF0D0, LVar0, LVar1, LVar2, LVar3, LVar4) + EVT_CALL(N(func_80218680_4FF0D0), LVar0, LVar1, LVar2, LVar3, LVar4) EVT_END_IF EVT_END_IF EVT_WAIT(1) diff --git a/src/battle/area_flo/actor/ruff_puff.c b/src/battle/area_flo/actor/ruff_puff.c index 511c39bd8a..916f7b9cce 100644 --- a/src/battle/area_flo/actor/ruff_puff.c +++ b/src/battle/area_flo/actor/ruff_puff.c @@ -100,13 +100,13 @@ EvtScript N(init) = { EVT_END }; -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" EvtScript N(idle) = { EVT_SET(LVarF, 0) EVT_LOOP(0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.97), EVT_FLOAT(1.03), 15, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar1, EVT_FLOAT(1.03), EVT_FLOAT(0.97), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.97), EVT_FLOAT(1.03), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar1, EVT_FLOAT(1.03), EVT_FLOAT(0.97), 15, 0, 0) EVT_ADD(LVarF, 1) EVT_CALL(SetActorScale, ACTOR_SELF, LVar1, LVar0, EVT_FLOAT(1.0)) EVT_IF_GE(LVarF, 30) diff --git a/src/battle/area_flo/stage/flo_03.c b/src/battle/area_flo/stage/flo_03.c index d98634f5c7..bc3068528d 100644 --- a/src/battle/area_flo/stage/flo_03.c +++ b/src/battle/area_flo/stage/flo_03.c @@ -41,7 +41,7 @@ EvtScript N(80232A30) = { #include "common/MakeSun.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" EvtScript N(80232C48) = { EVT_CALL(EnableModel, LVarF, 1) @@ -56,10 +56,10 @@ EvtScript N(80232C48) = { EVT_MULF(LVar6, EVT_FLOAT(1.01)) EVT_ADDF(LVar7, EVT_FLOAT(0.01)) EVT_SETF(LVar8, LVar6) - EVT_CALL(N(UnkFloatFunc), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 15, 0, 0) EVT_ADDF(LVar8, LVarA) EVT_SETF(LVar9, LVar7) - EVT_CALL(N(UnkFloatFunc), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 20, 0, 90) + EVT_CALL(N(CosInterpMinMax), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 20, 0, 90) EVT_ADDF(LVar9, LVarA) EVT_SETF(LVarA, LVar0) EVT_MULF(LVarA, EVT_FLOAT(10.0)) diff --git a/src/battle/area_flo/stage/flo_04.c b/src/battle/area_flo/stage/flo_04.c index 07f27cd881..f4b7aecd55 100644 --- a/src/battle/area_flo/stage/flo_04.c +++ b/src/battle/area_flo/stage/flo_04.c @@ -4,14 +4,14 @@ #define NAMESPACE b_area_flo_flo_04 -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" EvtScript N(80233470) = { EVT_SET(LVarA, LVar0) EVT_SET(LVarF, 0) EVT_LOOP(0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.96875), EVT_FLOAT(1.03125), 15, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar1, EVT_FLOAT(1.03125), EVT_FLOAT(0.96875), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.96875), EVT_FLOAT(1.03125), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar1, EVT_FLOAT(1.03125), EVT_FLOAT(0.96875), 15, 0, 0) EVT_CALL(ScaleModel, LVarA, LVar1, LVar0, 1) EVT_ADD(LVarF, 1) EVT_IF_GE(LVarF, 30) diff --git a/src/battle/area_flo2/actor/huff_n_puff.c b/src/battle/area_flo2/actor/huff_n_puff.c index 8b889e955b..c8b21bb9d4 100644 --- a/src/battle/area_flo2/actor/huff_n_puff.c +++ b/src/battle/area_flo2/actor/huff_n_puff.c @@ -71,7 +71,7 @@ ApiStatus SetHealthBarPos(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" ApiStatus SetTuffPuffPos(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; @@ -514,16 +514,16 @@ EvtScript N(idle) = { EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_COMBO_COUNTER), LVarA) EVT_SWITCH(LVarA) EVT_CASE_EQ(0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.97), EVT_FLOAT(1.03), 15, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar1, EVT_FLOAT(1.03), EVT_FLOAT(0.97), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.97), EVT_FLOAT(1.03), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar1, EVT_FLOAT(1.03), EVT_FLOAT(0.97), 15, 0, 0) EVT_ADD(LVarF, 1) EVT_CASE_EQ(1) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.95), EVT_FLOAT(1.05), 15, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar1, EVT_FLOAT(1.05), EVT_FLOAT(0.95), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.95), EVT_FLOAT(1.05), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar1, EVT_FLOAT(1.05), EVT_FLOAT(0.95), 15, 0, 0) EVT_ADD(LVarF, 3) EVT_CASE_EQ(2) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.9), EVT_FLOAT(1.1), 15, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar1, EVT_FLOAT(1.1), EVT_FLOAT(0.9), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.9), EVT_FLOAT(1.1), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar1, EVT_FLOAT(1.1), EVT_FLOAT(0.9), 15, 0, 0) EVT_ADD(LVarF, 5) EVT_END_SWITCH EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_SCALE_X), LVar2) @@ -2615,8 +2615,8 @@ EvtScript N(attackGroundSlam) = { EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_SCALE_Y), LVar1) EVT_SET(LVarF, 0) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.3), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.7), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.3), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.7), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ACTOR_SELF, N(VAR_SCALE_X), LVar2) @@ -2626,8 +2626,8 @@ EvtScript N(attackGroundSlam) = { EVT_END_LOOP EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_20B6) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ACTOR_SELF, N(VAR_SCALE_X), LVar2) @@ -3119,8 +3119,8 @@ EvtScript N(attackGroundSlam) = { EVT_SET(LVarF, 0) EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_20B7) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ACTOR_SELF, N(VAR_SCALE_X), LVar2) @@ -3130,8 +3130,8 @@ EvtScript N(attackGroundSlam) = { EVT_END_LOOP EVT_CALL(PlaySoundAtActor, ACTOR_SELF, SOUND_20B7) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ACTOR_SELF, N(VAR_SCALE_X), LVar2) @@ -3159,8 +3159,8 @@ EvtScript N(attackGroundSlam) = { EVT_CALL(GetActorVar, ArrayVar(0), 4, LVar1) EVT_SET(LVarF, 0) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(0), 3, LVar2) @@ -3169,8 +3169,8 @@ EvtScript N(attackGroundSlam) = { EVT_WAIT(1) EVT_END_LOOP EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(0), 3, LVar2) @@ -3203,8 +3203,8 @@ EvtScript N(attackGroundSlam) = { EVT_CALL(GetActorVar, ArrayVar(1), 4, LVar1) EVT_SET(LVarF, 0) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(1), 3, LVar2) @@ -3213,8 +3213,8 @@ EvtScript N(attackGroundSlam) = { EVT_WAIT(1) EVT_END_LOOP EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(1), 3, LVar2) @@ -3247,8 +3247,8 @@ EvtScript N(attackGroundSlam) = { EVT_CALL(GetActorVar, ArrayVar(2), 4, LVar1) EVT_SET(LVarF, 0) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(2), 3, LVar2) @@ -3257,8 +3257,8 @@ EvtScript N(attackGroundSlam) = { EVT_WAIT(1) EVT_END_LOOP EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(2), 3, LVar2) @@ -3291,8 +3291,8 @@ EvtScript N(attackGroundSlam) = { EVT_CALL(GetActorVar, ArrayVar(3), 4, LVar1) EVT_SET(LVarF, 0) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(3), 3, LVar2) @@ -3301,8 +3301,8 @@ EvtScript N(attackGroundSlam) = { EVT_WAIT(1) EVT_END_LOOP EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(3), 3, LVar2) @@ -3335,8 +3335,8 @@ EvtScript N(attackGroundSlam) = { EVT_CALL(GetActorVar, ArrayVar(4), 4, LVar1) EVT_SET(LVarF, 0) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(4), 3, LVar2) @@ -3345,8 +3345,8 @@ EvtScript N(attackGroundSlam) = { EVT_WAIT(1) EVT_END_LOOP EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(4), 3, LVar2) @@ -3379,8 +3379,8 @@ EvtScript N(attackGroundSlam) = { EVT_CALL(GetActorVar, ArrayVar(5), 4, LVar1) EVT_SET(LVarF, 0) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(5), 3, LVar2) @@ -3389,8 +3389,8 @@ EvtScript N(attackGroundSlam) = { EVT_WAIT(1) EVT_END_LOOP EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(5), 3, LVar2) @@ -3423,8 +3423,8 @@ EvtScript N(attackGroundSlam) = { EVT_CALL(GetActorVar, ArrayVar(6), 4, LVar1) EVT_SET(LVarF, 0) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(6), 3, LVar2) @@ -3433,8 +3433,8 @@ EvtScript N(attackGroundSlam) = { EVT_WAIT(1) EVT_END_LOOP EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(6), 3, LVar2) @@ -3467,8 +3467,8 @@ EvtScript N(attackGroundSlam) = { EVT_CALL(GetActorVar, ArrayVar(7), 4, LVar1) EVT_SET(LVarF, 0) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(7), 3, LVar2) @@ -3477,8 +3477,8 @@ EvtScript N(attackGroundSlam) = { EVT_WAIT(1) EVT_END_LOOP EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(7), 3, LVar2) @@ -3511,8 +3511,8 @@ EvtScript N(attackGroundSlam) = { EVT_CALL(GetActorVar, ArrayVar(8), 4, LVar1) EVT_SET(LVarF, 0) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(8), 3, LVar2) @@ -3521,8 +3521,8 @@ EvtScript N(attackGroundSlam) = { EVT_WAIT(1) EVT_END_LOOP EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(8), 3, LVar2) @@ -3555,8 +3555,8 @@ EvtScript N(attackGroundSlam) = { EVT_CALL(GetActorVar, ArrayVar(9), 4, LVar1) EVT_SET(LVarF, 0) EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.5), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.5), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(9), 3, LVar2) @@ -3565,8 +3565,8 @@ EvtScript N(attackGroundSlam) = { EVT_WAIT(1) EVT_END_LOOP EVT_LOOP(20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar2, EVT_FLOAT(1.0), EVT_FLOAT(1.2), 10, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar3, EVT_FLOAT(1.0), EVT_FLOAT(0.8), 10, 0, 0) EVT_MULF(LVar2, LVar0) EVT_MULF(LVar3, LVar1) EVT_CALL(SetActorVar, ArrayVar(9), 3, LVar2) diff --git a/src/battle/area_flo2/actor/tuff_puff.c b/src/battle/area_flo2/actor/tuff_puff.c index ddfc3ec302..025c78e57f 100644 --- a/src/battle/area_flo2/actor/tuff_puff.c +++ b/src/battle/area_flo2/actor/tuff_puff.c @@ -173,7 +173,7 @@ EvtScript N(nextTurn) = { EVT_END }; -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" EvtScript N(idle) = { EVT_SET(LVarF, 0) @@ -181,16 +181,16 @@ EvtScript N(idle) = { EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_2), LVarA) EVT_SWITCH(LVarA) EVT_CASE_EQ(0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.97), EVT_FLOAT(1.03), 15, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar1, EVT_FLOAT(1.03), EVT_FLOAT(0.97), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.97), EVT_FLOAT(1.03), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar1, EVT_FLOAT(1.03), EVT_FLOAT(0.97), 15, 0, 0) EVT_ADD(LVarF, 1) EVT_CASE_EQ(1) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.95), EVT_FLOAT(1.05), 15, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar1, EVT_FLOAT(1.05), EVT_FLOAT(0.95), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.95), EVT_FLOAT(1.05), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar1, EVT_FLOAT(1.05), EVT_FLOAT(0.95), 15, 0, 0) EVT_ADD(LVarF, 3) EVT_CASE_EQ(2) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.9), EVT_FLOAT(1.1), 15, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar1, EVT_FLOAT(1.1), EVT_FLOAT(0.9), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.9), EVT_FLOAT(1.1), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar1, EVT_FLOAT(1.1), EVT_FLOAT(0.9), 15, 0, 0) EVT_ADD(LVarF, 5) EVT_END_SWITCH EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_SCALE_X), LVar2) diff --git a/src/battle/area_flo2/stage/flo_03.c b/src/battle/area_flo2/stage/flo_03.c index eaa40bf492..43aa402aae 100644 --- a/src/battle/area_flo2/stage/flo_03.c +++ b/src/battle/area_flo2/stage/flo_03.c @@ -41,7 +41,7 @@ EvtScript N(80232A30) = { #include "common/MakeSun.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" EvtScript N(80232C48) = { EVT_CALL(EnableModel, LVarF, 1) @@ -56,10 +56,10 @@ EvtScript N(80232C48) = { EVT_MULF(LVar6, EVT_FLOAT(1.01)) EVT_ADDF(LVar7, EVT_FLOAT(0.01)) EVT_SETF(LVar8, LVar6) - EVT_CALL(N(UnkFloatFunc), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 15, 0, 0) EVT_ADDF(LVar8, LVarA) EVT_SETF(LVar9, LVar7) - EVT_CALL(N(UnkFloatFunc), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 20, 0, 90) + EVT_CALL(N(CosInterpMinMax), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 20, 0, 90) EVT_ADDF(LVar9, LVarA) EVT_SETF(LVarA, LVar0) EVT_MULF(LVarA, EVT_FLOAT(10.0)) diff --git a/src/battle/area_flo2/stage/flo_04.c b/src/battle/area_flo2/stage/flo_04.c index 213eeb058a..d9f15c19a5 100644 --- a/src/battle/area_flo2/stage/flo_04.c +++ b/src/battle/area_flo2/stage/flo_04.c @@ -4,14 +4,14 @@ #define NAMESPACE b_area_flo2_flo_04 -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" EvtScript N(80233470) = { EVT_SET(LVarA, LVar0) EVT_SET(LVarF, 0) EVT_LOOP(0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.96875), EVT_FLOAT(1.03125), 15, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar1, EVT_FLOAT(1.03125), EVT_FLOAT(0.96875), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.96875), EVT_FLOAT(1.03125), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar1, EVT_FLOAT(1.03125), EVT_FLOAT(0.96875), 15, 0, 0) EVT_CALL(ScaleModel, LVarA, LVar1, LVar0, 1) EVT_ADD(LVarF, 1) EVT_IF_GE(LVarF, 30) diff --git a/src/battle/area_kpa/684C30.c b/src/battle/area_kpa/684C30.c index f80f3098a8..cc6e67c74b 100644 --- a/src/battle/area_kpa/684C30.c +++ b/src/battle/area_kpa/684C30.c @@ -4,7 +4,7 @@ #include "common/ShrinkActor.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" #include "common/GetSelectedMoveID.inc.c" diff --git a/src/battle/area_kpa4/6CC1C0.c b/src/battle/area_kpa4/6CC1C0.c index 879706972b..351b5dd3ef 100644 --- a/src/battle/area_kpa4/6CC1C0.c +++ b/src/battle/area_kpa4/6CC1C0.c @@ -4,7 +4,7 @@ #include "common/ShrinkActor.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" #include "common/GetSelectedMoveID.inc.c" diff --git a/src/battle/area_pra2/actor/crystal_king.c b/src/battle/area_pra2/actor/crystal_king.c index d8dc665cd4..90cb8aa97b 100644 --- a/src/battle/area_pra2/actor/crystal_king.c +++ b/src/battle/area_pra2/actor/crystal_king.c @@ -152,7 +152,7 @@ EvtScript N(init) = { }; #include "common/StartRumbleWithParams.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" ApiStatus GetActorPartOpacity(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; @@ -243,7 +243,7 @@ EvtScript N(idle) = { EVT_CALL(GetActorVar, ACTOR_SELF, N(VAR_CLONE2_ID), LVar2) EVT_CALL(ActorExists, LVar1, LVar3) EVT_IF_EQ(LVar3, TRUE) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar4, EVT_FLOAT(128.0), EVT_FLOAT(254.0), 20, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar4, EVT_FLOAT(128.0), EVT_FLOAT(254.0), 20, 0, 0) EVT_SET(LVar4, LVar4) EVT_CALL(SetPartAlpha, ACTOR_SELF, 1, LVar4) EVT_CALL(SetPartAlpha, LVar1, 1, LVar4) @@ -312,7 +312,7 @@ EvtScript N(FlyWithClones) = { EVT_SET(LVar4, 41) EVT_ADD(LVar4, LVarE) EVT_CALL(SetActorPos, LVar2, LVar3, LVar4, LVar5) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.0), EVT_FLOAT(5.0), 30, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.0), EVT_FLOAT(5.0), 30, 0, 0) EVT_SET(LVarA, LVarB) EVT_SET(LVarB, LVarC) EVT_SET(LVarC, LVarD) diff --git a/src/battle/item/pow_block.c b/src/battle/item/pow_block.c index 2f1ee1a9c6..efdec3f200 100644 --- a/src/battle/item/pow_block.c +++ b/src/battle/item/pow_block.c @@ -104,7 +104,7 @@ EvtScript N(main) = { EVT_IF_EQ(LVar0, 6) EVT_GOTO(1) EVT_END_IF - EVT_CALL(GetItemPower, ITEM_P_O_W_BLOCK, LVar3, LVar4) + EVT_CALL(GetItemPower, ITEM_POW_BLOCK, LVar3, LVar4) EVT_CALL(ApplyShrinkFromOwner, LVar3) EVT_CALL(func_80269EAC, 22) EVT_CALL(ItemDamageEnemy, LVar0, 939525120, 0, LVar3, 32) diff --git a/src/common/CosInterpMinMax.inc.c b/src/common/CosInterpMinMax.inc.c new file mode 100644 index 0000000000..efa0086a01 --- /dev/null +++ b/src/common/CosInterpMinMax.inc.c @@ -0,0 +1,26 @@ +#include "common.h" +#include "npc.h" + +ApiStatus N(CosInterpMinMax)(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; + s32 outVarTime = *args++; + s32 time = evt_get_variable(script, outVarTime); + s32 outValue = *args++; + f32 min = evt_get_float_variable(script, *args++); + f32 max = evt_get_float_variable(script, *args++); + s32 duration = evt_get_variable(script, *args++); + s32 onlyOnce = evt_get_variable(script, *args++); + f32 phaseOffset = (evt_get_float_variable(script, *args++) / 180.0f) * PI; + f32 delta = (max - min) / 2; + + if (onlyOnce && duration < time) { + time = duration; + evt_set_variable(script, outVarTime, duration); + } + + evt_set_float_variable(script, outValue, + (min + delta) // average value + - (delta * cos_rad(((time * PI) / duration) + phaseOffset))); // perturbation + + return ApiStatus_DONE2; +} diff --git a/src/common/UnkFloatFunc.inc.c b/src/common/UnkFloatFunc.inc.c deleted file mode 100644 index eda07adbaa..0000000000 --- a/src/common/UnkFloatFunc.inc.c +++ /dev/null @@ -1,24 +0,0 @@ -#include "common.h" -#include "npc.h" - -ApiStatus N(UnkFloatFunc)(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - s32 a1 = *args++; - s32 var0 = evt_get_variable(script, a1); - s32 a2 = *args++; - f32 var1 = evt_get_float_variable(script, *args++); - f32 var2 = evt_get_float_variable(script, *args++); - s32 var3 = evt_get_variable(script, *args++); - s32 var4 = evt_get_variable(script, *args++); - f32 temp = (evt_get_float_variable(script, *args++) / 180.0f) * PI; - f32 diff = (var2 - var1) / 2; - - if (var4 != 0 && var3 < var0) { - var0 = var3; - evt_set_variable(script, a1, var3); - } - - evt_set_float_variable(script, a2, (var1 + diff) - (diff * cos_rad(((var0 * PI) / var3) + temp))); - - return ApiStatus_DONE2; -} diff --git a/src/encounter_api.c b/src/encounter_api.c index 9a469e58c7..7b56754e1a 100644 --- a/src/encounter_api.c +++ b/src/encounter_api.c @@ -835,7 +835,7 @@ ApiStatus OnPlayerFled(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus SetTattleMsg(Evt* script, s32 isInitialCall) { +ApiStatus SetTattleMessage(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; s32 enemyId = evt_get_variable(script, *args++); u32 tattleMsg = evt_get_variable(script, *args); diff --git a/src/entity/Block.c b/src/entity/Block.c index 238e488240..6c23f21d48 100644 --- a/src/entity/Block.c +++ b/src/entity/Block.c @@ -608,7 +608,7 @@ EntityBlueprint Entity_Hammer1Block = { .aabbSize = { 50, 50, 50 } }; -EntityBlueprint Entity_Hammer1Block_WideHitbox = { +EntityBlueprint Entity_Hammer1Block_WideX = { .flags = ENTITY_FLAGS_4000 | ENTITY_FLAGS_FIXED_SHADOW_SIZE | ENTITY_FLAGS_80, .typeDataSize = sizeof(BlockData), .renderCommandList = Entity_Hammer1Block_RenderScript, @@ -621,7 +621,7 @@ EntityBlueprint Entity_Hammer1Block_WideHitbox = { .aabbSize = { 100, 50, 50 } }; -EntityBlueprint Entity_Hammer1Block_TallHitbox = { +EntityBlueprint Entity_Hammer1Block_WideZ = { .flags = ENTITY_FLAGS_4000 | ENTITY_FLAGS_FIXED_SHADOW_SIZE | ENTITY_FLAGS_80, .typeDataSize = sizeof(BlockData), .renderCommandList = Entity_Hammer1Block_RenderScript, @@ -660,7 +660,7 @@ EntityBlueprint Entity_Hammer2Block = { .aabbSize = { 50, 50, 50 } }; -EntityBlueprint Entity_Hammer2Block_WideHitbox = { +EntityBlueprint Entity_Hammer2Block_WideX = { .flags = ENTITY_FLAGS_4000 | ENTITY_FLAGS_FIXED_SHADOW_SIZE | ENTITY_FLAGS_80, .typeDataSize = sizeof(BlockData), .renderCommandList = Entity_Hammer2Block_RenderScript, @@ -673,7 +673,7 @@ EntityBlueprint Entity_Hammer2Block_WideHitbox = { .aabbSize = { 100, 50, 50 } }; -EntityBlueprint Entity_Hammer2Block_TallHitbox = { +EntityBlueprint Entity_Hammer2Block_WideZ = { .flags = ENTITY_FLAGS_4000 | ENTITY_FLAGS_FIXED_SHADOW_SIZE | ENTITY_FLAGS_80, .typeDataSize = sizeof(BlockData), .renderCommandList = Entity_Hammer2Block_RenderScript, @@ -712,7 +712,7 @@ EntityBlueprint Entity_Hammer3Block = { .aabbSize = { 50, 50, 50 } }; -EntityBlueprint Entity_Hammer3Block_WideHitbox = { +EntityBlueprint Entity_Hammer3Block_WideX = { .flags = ENTITY_FLAGS_4000 | ENTITY_FLAGS_FIXED_SHADOW_SIZE | ENTITY_FLAGS_80, .typeDataSize = sizeof(BlockData), .renderCommandList = Entity_Hammer3Block_RenderScript, @@ -725,7 +725,7 @@ EntityBlueprint Entity_Hammer3Block_WideHitbox = { .aabbSize = { 100, 50, 50 } }; -EntityBlueprint Entity_Hammer3Block_TallHitbox = { +EntityBlueprint Entity_Hammer3Block_WideZ = { .flags = ENTITY_FLAGS_4000 | ENTITY_FLAGS_FIXED_SHADOW_SIZE | ENTITY_FLAGS_80, .typeDataSize = sizeof(BlockData), .renderCommandList = Entity_Hammer3Block_RenderScript, diff --git a/src/entity/sbk_omo/StarBoxLauncher.c b/src/entity/sbk_omo/StarBoxLauncher.c index b17b9ed78a..c510da924a 100644 --- a/src/entity/sbk_omo/StarBoxLauncher.c +++ b/src/entity/sbk_omo/StarBoxLauncher.c @@ -74,7 +74,7 @@ void entity_StarBoxLauncher_check_launch(Entity* entity) { hitDepth = 10.0f; add_vec2D_polar(&x, &z, 10.0f, func_800E5348()); - if (npc_raycast_down_sides(0x10000, &x, &y, &z, &hitDepth) != 0) { + if (npc_raycast_down_sides(COLLISION_CHANNEL_10000, &x, &y, &z, &hitDepth) != 0) { if (D_8010C978 & COLLISION_WITH_ENTITY_BIT) { result = get_entity_type(D_8010C978) == ENTITY_TYPE_STAR_BOX_LAUCHER; } diff --git a/src/evt/fa4c0_len_3bf0.c b/src/evt/fa4c0_len_3bf0.c index 104234fe95..eeb013f87b 100644 --- a/src/evt/fa4c0_len_3bf0.c +++ b/src/evt/fa4c0_len_3bf0.c @@ -769,6 +769,7 @@ ApiStatus GetItemPower(Evt* script, s32 isInitialCall) { ApiStatus ShowGotItem(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; + s32 itemID, category, pickupMsgFlags; if (isInitialCall) { script->functionTemp[0] = 0; @@ -776,9 +777,10 @@ ApiStatus ShowGotItem(Evt* script, s32 isInitialCall) { switch (script->functionTemp[0]) { case 0: - script->functionTemp[1] = make_item_entity_at_player(evt_get_variable(script, *args++), - evt_get_variable(script, *args++), - *args++); + itemID = evt_get_variable(script, *args++); + category = evt_get_variable(script, *args++); + pickupMsgFlags = *args++; + script->functionTemp[1] = make_item_entity_at_player(itemID, category, pickupMsgFlags); script->functionTemp[0] = 1; break; case 1: diff --git a/src/evt/player_api.c b/src/evt/player_api.c index ad3175468e..59caf47ad5 100644 --- a/src/evt/player_api.c +++ b/src/evt/player_api.c @@ -602,7 +602,11 @@ ApiStatus WaitForPlayerTouchingFloor(Evt* script, s32 isInitialCall) { } ApiStatus func_802D2484(Evt* script, s32 isInitialCall) { - return (gCollisionStatus.currentFloor >= 0) * ApiStatus_DONE2; + if (gCollisionStatus.currentFloor >= 0) { + return ApiStatus_DONE2; + } else { + return ApiStatus_BLOCK; + } } ApiStatus IsPlayerOnValidFloor(Evt* script, s32 isInitialCall) { @@ -644,36 +648,36 @@ ApiStatus func_802D2520(Evt* script, s32 isInitialCall) { switch (val) { case 0: - playerStatus->renderMode = 0xD; + playerStatus->renderMode = RENDER_MODE_ALPHATEST; func_802DDFF8(a0, 0, 0, 0, 0, 0, D_802DB5B0); break; case 2: case 3: - playerStatus->renderMode = 0xD; + playerStatus->renderMode = RENDER_MODE_ALPHATEST; case 1: func_802DDFF8(a0, val, 0, 0, 0, 0, D_802DB5B0); break; case 4: - playerStatus->renderMode = 13; + playerStatus->renderMode = RENDER_MODE_ALPHATEST; a2 = evt_get_variable(script, *args++); a3 = evt_get_variable(script, *args++); a4 = evt_get_variable(script, *args++); func_802DDFF8(a0, 4, a2, a3, a4, 0, D_802DB5B0); break; case 6: - playerStatus->renderMode = 13; + playerStatus->renderMode = RENDER_MODE_ALPHATEST; a2 = evt_get_variable(script, *args++); a3 = evt_get_variable(script, *args++); a4 = evt_get_variable(script, *args++); - func_802DDFF8(a0, 6, a2, a3, a4, 0xFF, D_802DB5B0); + func_802DDFF8(a0, 6, a2, a3, a4, 255, D_802DB5B0); break; case 7: - playerStatus->renderMode = 22; + playerStatus->renderMode = RENDER_MODE_SURFACE_XLU_LAYER2; a5 = evt_get_variable(script, *args++); - func_802DDFF8(a0, 7, 0xFF, 0xFF, 0xFF, a5, D_802DB5B0); + func_802DDFF8(a0, 7, 255, 255, 255, a5, D_802DB5B0); break; case 8: - playerStatus->renderMode = 22; + playerStatus->renderMode = RENDER_MODE_SURFACE_XLU_LAYER2; a2 = evt_get_variable(script, *args++); a3 = evt_get_variable(script, *args++); a4 = evt_get_variable(script, *args++); @@ -681,14 +685,14 @@ ApiStatus func_802D2520(Evt* script, s32 isInitialCall) { func_802DDFF8(a0, 8, a2, a3, a4, a5, D_802DB5B0); break; case 5: - playerStatus->renderMode = 13; + playerStatus->renderMode = RENDER_MODE_ALPHATEST; a2 = evt_get_variable(script, *args++); a3 = evt_get_variable(script, *args++); a4 = evt_get_variable(script, *args++); func_802DDFF8(a0, 5, a2, a3, a4, 0, D_802DB5B0); break; case 13: - playerStatus->renderMode = 22; + playerStatus->renderMode = RENDER_MODE_SURFACE_XLU_LAYER2; a2 = evt_get_variable(script, *args++); a3 = evt_get_variable(script, *args++); a4 = evt_get_variable(script, *args++); @@ -778,10 +782,10 @@ ApiStatus GetCurrentPartner(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus func_802D2B50(void) { +ApiStatus ForceUsePartner(Evt* script, s32 isInitialCall) { PlayerStatus* playerStatus = &gPlayerStatus; - playerStatus->animFlags |= PA_FLAGS_8; + playerStatus->animFlags |= PA_FLAGS_FORCE_USE_PARTNER; return ApiStatus_DONE2; } diff --git a/src/load_script.c b/src/load_script.c index 9ad29986d3..7ff7ed9fe8 100644 --- a/src/load_script.c +++ b/src/load_script.c @@ -6,7 +6,7 @@ s32 D_80293B80[] = { ITEM_MUSHROOM, ITEM_FIRE_FLOWER, ITEM_DUSTY_HAMMER, - ITEM_P_O_W_BLOCK, + ITEM_POW_BLOCK, ITEM_PEBBLE, ITEM_VOLT_SHROOM, ITEM_THUNDER_RAGE, diff --git a/src/world/area_arn/arn.h b/src/world/area_arn/arn.h index 7db651630f..e762feeeb8 100644 --- a/src/world/area_arn/arn.h +++ b/src/world/area_arn/arn.h @@ -2,25 +2,35 @@ #define _WORLD_AREA_ARN_ARN_H_ enum { - AB_ARN_0 = AreaByte(0), - AB_ARN_1 = AreaByte(1), - AB_ARN_2 = AreaByte(2), - AB_ARN_3 = AreaByte(3), - AB_ARN_4 = AreaByte(4), - AB_ARN_5 = AreaByte(5), - AB_ARN_6 = AreaByte(6), - AB_ARN_7 = AreaByte(7), - AB_ARN_8 = AreaByte(8), - AB_ARN_9 = AreaByte(9), - AB_ARN_A = AreaByte(10), - AB_ARN_B = AreaByte(11), - AB_ARN_C = AreaByte(12), - AB_ARN_D = AreaByte(13), - AB_ARN_E = AreaByte(14), - AB_ARN_F = AreaByte(15), + AB_ARN_0 = AreaByte(0), + AB_ARN_1 = AreaByte(1), + AB_ARN_2 = AreaByte(2), + AB_ARN_3 = AreaByte(3), + AB_ARN_4 = AreaByte(4), + AB_ARN_5 = AreaByte(5), + AB_ARN_6 = AreaByte(6), + AB_ARN_7 = AreaByte(7), + AB_ARN_8 = AreaByte(8), + AB_ARN_9 = AreaByte(9), + AB_ARN_A = AreaByte(10), + AB_ARN_B = AreaByte(11), + AB_ARN_C = AreaByte(12), + AB_ARN_D = AreaByte(13), + AB_ARN_E = AreaByte(14), + AB_ARN_F = AreaByte(15), }; -#define AF_ARN(index) AreaFlag(index) +enum { + AF_ARN_01 = AreaFlag(1), + AF_ARN_02 = AreaFlag(2), + AF_ARN_03 = AreaFlag(3), + AF_ARN_04 = AreaFlag(4), + AF_ARN_05 = AreaFlag(5), + AF_ARN_06 = AreaFlag(6), + AF_ARN_07 = AreaFlag(7), + AF_ARN_08 = AreaFlag(8), + AF_ARN_09 = AreaFlag(9), +}; extern MapSettings arn_02_settings; extern MapSettings arn_03_settings; diff --git a/src/world/area_arn/arn_02/arn_02.h b/src/world/area_arn/arn_02/arn_02.h index 1d95456e7a..e2640bf834 100644 --- a/src/world/area_arn/arn_02/arn_02.h +++ b/src/world/area_arn/arn_02/arn_02.h @@ -2,15 +2,20 @@ /// @brief Gusty Gulch - Wasteland Ascent 1 #include "common.h" -#include "../arn.h" #include "message_ids.h" #include "map.h" +#include "../arn.h" +#include "mapfs/arn_02_shape.h" +#include "mapfs/arn_02_hit.h" + +#include "sprite/npc/Cleft.h" +#include "sprite/npc/Goomba.h" + +enum { + NPC_HyperCleft_01 = 0, + NPC_HyperCleft_02 = 1, + NPC_HyperGoomba = 2, +}; + #define NAMESPACE arn_02 - -ApiStatus N(CleftAI_Main)(Evt *script, s32 isInitialCall); - -extern EvtScript N(main); -extern EvtScript N(80241040); -extern NpcGroupList N(npcGroupList_80241A9C); -extern EvtScript N(makeEntities); diff --git a/src/world/area_arn/arn_02/header.c b/src/world/area_arn/arn_02/arn_02_0_header.c similarity index 53% rename from src/world/area_arn/arn_02/header.c rename to src/world/area_arn/arn_02/arn_02_0_header.c index d8972783ac..0ef1a24986 100644 --- a/src/world/area_arn/arn_02/header.c +++ b/src/world/area_arn/arn_02/arn_02_0_header.c @@ -1,24 +1,25 @@ #include "arn_02.h" -#include "message_ids.h" -EntryList N(entryList) = { - { -585.0f, 60.0f, 150.0f, 90.0f }, - { 880.0f, 320.0f, 150.0f, 270.0f }, +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [arn_02_ENTRY_0] { -585.0, 60.0, 150.0, 90.0 }, + [arn_02_ENTRY_1] { 880.0, 320.0, 150.0, 270.0 }, }; MapSettings N(settings) = { - .main = &N(main), - .entryList = &N(entryList), - .entryCount = ENTRY_COUNT(N(entryList)), + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), .background = &gBackgroundImage, .tattle = { MSG_MapTattle_arn_02 }, }; -EvtScript N(80241040) = { +EvtScript N(EVS_SetupMusic) = { EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-29) + EVT_CASE_LT(STORY_CH3_TUBBA_WOKE_UP) EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) - EVT_CASE_LT(-16) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) EVT_CASE_DEFAULT EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) diff --git a/src/world/area_arn/arn_02/arn_02_1_main.c b/src/world/area_arn/arn_02/arn_02_1_main.c new file mode 100644 index 0000000000..6f9528beb9 --- /dev/null +++ b/src/world/area_arn/arn_02/arn_02_1_main.c @@ -0,0 +1,29 @@ +#include "arn_02.h" + +extern EvtScript N(EVS_SetupMusic); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(DefaultNPCs); + +EvtScript N(EVS_ExitWalk_arn_05_1) = EVT_EXIT_WALK(60, arn_02_ENTRY_0, "arn_05", arn_05_ENTRY_1); +EvtScript N(EVS_ExitWalk_arn_04_0) = EVT_EXIT_WALK(60, arn_02_ENTRY_1, "arn_04", arn_04_ENTRY_0); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_arn_05_1)), TRIGGER_FLOOR_ABOVE, COLLIDER_deiliw, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_arn_04_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deilie, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_GUSTY_GULCH) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_DEFAULT() + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_02/arn_02_2_entity.c b/src/world/area_arn/arn_02/arn_02_2_entity.c new file mode 100644 index 0000000000..ab7fb296c6 --- /dev/null +++ b/src/world/area_arn/arn_02/arn_02_2_entity.c @@ -0,0 +1,15 @@ +#include "arn_02.h" +#include "entity.h" + +EvtScript N(EVS_MakeEntities) = { + EVT_CALL(MakeItemEntity, ITEM_DIZZY_DIAL, -248, 193, 45, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_ARN02_Item_DizzyDial) + EVT_CALL(MakeItemEntity, ITEM_LETTER07, 536, 260, 227, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_ARN02_Item_Letter07) + EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), -350, 172, 170, 0, ITEM_COIN, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_ARN02_ItemBlock_CoinA) + EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 225, 265, 30, 0, ITEM_COIN, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_ARN02_ItemBlock_CoinB) + EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 275, 265, 150, 0, ITEM_REPEL_GEL, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_ARN02_ItemBlock_RepelGel) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_02/arn_02_3_npc.c b/src/world/area_arn/arn_02/arn_02_3_npc.c new file mode 100644 index 0000000000..ceb08691f0 --- /dev/null +++ b/src/world/area_arn/arn_02/arn_02_3_npc.c @@ -0,0 +1,80 @@ +#include "arn_02.h" + +#include "world/common/enemy/complete/HyperGoomba_Wander.inc.c" +#include "world/common/enemy/complete/HyperCleft.inc.c" + +StaticNpc N(NpcData_HyperCleft_01) = { + .id = NPC_HyperCleft_01, + .settings = &N(NpcSettings_HyperCleft), + .pos = { -196.0f, 130.0f, 104.0f }, + .yaw = 90, + .flags = NPC_FLAG_LOCK_ANIMS, + .drops = HYPER_CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_RECT, + .centerPos = { -196, 130, 104 }, + .wanderSize = { 50, 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { -196, 130, 104 }, + .detectSize = { 120 }, + } + }, + .animations = HYPER_CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_HyperCleft_02) = { + .id = NPC_HyperCleft_02, + .settings = &N(NpcSettings_HyperCleft), + .pos = { 641.0f, 268.0f, 202.0f }, + .yaw = 90, + .flags = NPC_FLAG_LOCK_ANIMS, + .drops = HYPER_CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_RECT, + .centerPos = { 641, 268, 202 }, + .wanderSize = { 50, 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 641, 268, 202 }, + .detectSize = { 120 }, + } + }, + .animations = HYPER_CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_HyperGoomba) = { + .id = NPC_HyperGoomba, + .settings = &N(NpcSettings_HyperGoomba), + .pos = { 333.0f, 215.0f, 85.0f }, + .yaw = 90, + .flags = NPC_FLAG_LOCK_ANIMS, + .drops = HYPER_GOOMBA_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_RECT, + .centerPos = { 333, 215, 85 }, + .wanderSize = { 40, 30 }, + .detectShape = SHAPE_RECT, + .detectPos = { 360, 215, 150 }, + .detectSize = { 120, 137 }, + } + }, + .animations = HYPER_GOOMBA_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_HyperCleft_01), BTL_ARN_FORMATION_0A, BTL_ARN_STAGE_00), + NPC_GROUP(N(NpcData_HyperCleft_02), BTL_ARN_FORMATION_0D, BTL_ARN_STAGE_00), + NPC_GROUP(N(NpcData_HyperGoomba), BTL_ARN_FORMATION_03, BTL_ARN_STAGE_00), + {} +}; diff --git a/src/world/area_arn/arn_02/events.c b/src/world/area_arn/arn_02/events.c deleted file mode 100644 index 10d0b5b0d9..0000000000 --- a/src/world/area_arn/arn_02/events.c +++ /dev/null @@ -1,234 +0,0 @@ -#include "arn_02.h" -#include "sprite/npc/Cleft.h" -#include "sprite/npc/Goomba.h" -#include "effects.h" -#include "entity.h" - -EvtScript N(exitWalk_802410F0) = EVT_EXIT_WALK(60, 0, "arn_05", 1); - -EvtScript N(exitWalk_8024114C) = EVT_EXIT_WALK(60, 1, "arn_04", 0); - -EvtScript N(802411A8) = { - EVT_BIND_TRIGGER(N(exitWalk_802410F0), TRIGGER_FLOOR_ABOVE, 1, 1, 0) - EVT_BIND_TRIGGER(N(exitWalk_8024114C), TRIGGER_FLOOR_ABOVE, 6, 1, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(main) = { - EVT_SET(GB_WorldLocation, 34) - EVT_CALL(SetSpriteShading, -1) - EVT_CALL(SetCamPerspective, 0, 3, 25, 16, 4096) - EVT_CALL(SetCamBGColor, 0, 0, 0, 0) - EVT_CALL(SetCamEnabled, 0, 1) - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_80241A9C))) - EVT_EXEC_WAIT(N(makeEntities)) - EVT_EXEC(N(80241040)) - EVT_SET(LVar0, EVT_PTR(N(802411A8))) - EVT_EXEC(EnterWalk) - EVT_WAIT(1) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_12C4)[] = { - 0x00000000, 0x00000000, 0x00000000, -}; - -EvtScript N(makeEntities) = { - EVT_CALL(MakeItemEntity, ITEM_DIZZY_DIAL, -248, 193, 45, 17, GF_ARN02_Item_DizzyDial) - EVT_CALL(MakeItemEntity, ITEM_LETTER07, 536, 260, 227, 17, GF_ARN02_Item_Letter07) - EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), -350, 172, 170, 0, 343, MAKE_ENTITY_END) - EVT_CALL(AssignBlockFlag, GF_ARN02_ItemBlock_CoinA) - EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 225, 265, 30, 0, 343, MAKE_ENTITY_END) - EVT_CALL(AssignBlockFlag, GF_ARN02_ItemBlock_CoinB) - EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 275, 265, 150, 0, 151, MAKE_ENTITY_END) - EVT_CALL(AssignBlockFlag, GF_ARN02_ItemBlock_RepelGel) - EVT_RETURN - EVT_END -}; - -MobileAISettings N(npcAISettings_802413D0) = { - .moveSpeed = 1.8f, - .moveTime = 40, - .waitTime = 15, - .alertRadius = 150.0f, - .playerSearchInterval = 2, - .chaseSpeed = 3.3f, - .chaseTurnRate= 70, - .chaseUpdateInterval = 1, - .chaseRadius = 180.0f, - .unk_AI_2C = 1, -}; - -EvtScript N(npcAI_80241400) = { - EVT_CALL(BasicAI_Main, EVT_PTR(N(npcAISettings_802413D0))) - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_80241420) = { - .height = 20, - .radius = 23, - .ai = &N(npcAI_80241400), - .onHit = &EnemyNpcHit, - .onDefeat = &EnemyNpcDefeat, - .level = 12, -}; - -MobileAISettings N(npcAISettings_8024144C) = { - .moveSpeed = 1.0f, - .moveTime = 30, - .waitTime = 30, - .alertRadius = 120.0f, - .playerSearchInterval = 3, - .chaseSpeed = 8.5f, - .chaseTurnRate= 60, - .chaseUpdateInterval = 3, - .chaseRadius = 100.0f, - .chaseOffsetDist = 60.0f, - .unk_AI_2C = 1, -}; - -EvtScript N(npcAI_8024147C) = { - EVT_CALL(N(CleftAI_Main), EVT_PTR(N(npcAISettings_8024144C)), 8) - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_802414A0) = { - .height = 24, - .radius = 24, - .ai = &N(npcAI_8024147C), - .onHit = &EnemyNpcHit, - .onDefeat = &EnemyNpcDefeat, - .level = 15, -}; - -StaticNpc N(npcGroup_802414CC) = { - .id = 0, - .settings = &N(npcSettings_802414A0), - .pos = { -196.0f, 130.0f, 104.0f }, - .flags = NPC_FLAG_LOCK_ANIMS, - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = STANDARD_HEART_DROPS(3), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, - .territory = { - .wander = { - .isFlying = FALSE, - .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, - .wanderShape = SHAPE_RECT, - .centerPos = { -196, 130, 104 }, - .wanderSize = { 50, 30 }, - .detectShape = SHAPE_CYLINDER, - .detectPos = { -196, 130, 104 }, - .detectSize = { 120 }, - } - }, - .animations = { - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim06, - ANIM_Cleft_Hyper_Anim07, - ANIM_Cleft_Hyper_Anim07, - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim08, - ANIM_Cleft_Hyper_Anim08, - ANIM_Cleft_Hyper_Anim14, - ANIM_Cleft_Hyper_Anim17, - ANIM_Cleft_Hyper_Anim13, - ANIM_Cleft_Hyper_Anim15, - ANIM_Cleft_Hyper_Anim10, - ANIM_Cleft_Hyper_Anim11, - ANIM_Cleft_Hyper_Anim16, - ANIM_Cleft_Hyper_Anim00, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -StaticNpc N(npcGroup_802416BC) = { - .id = 1, - .settings = &N(npcSettings_802414A0), - .pos = { 641.0f, 268.0f, 202.0f }, - .flags = NPC_FLAG_LOCK_ANIMS, - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = STANDARD_HEART_DROPS(3), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, - .territory = { .temp = { 641, 268, 202, 50, 30, -32767, 1, 641, 268, 202, 120 }}, - .animations = { - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim06, - ANIM_Cleft_Hyper_Anim07, - ANIM_Cleft_Hyper_Anim07, - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim08, - ANIM_Cleft_Hyper_Anim08, - ANIM_Cleft_Hyper_Anim14, - ANIM_Cleft_Hyper_Anim17, - ANIM_Cleft_Hyper_Anim13, - ANIM_Cleft_Hyper_Anim15, - ANIM_Cleft_Hyper_Anim10, - ANIM_Cleft_Hyper_Anim11, - ANIM_Cleft_Hyper_Anim16, - ANIM_Cleft_Hyper_Anim00, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -StaticNpc N(npcGroup_802418AC) = { - .id = 2, - .settings = &N(npcSettings_80241420), - .pos = { 333.0f, 215.0f, 85.0f }, - .flags = NPC_FLAG_LOCK_ANIMS, - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 20, - .itemDrops = { - { ITEM_DRIED_SHROOM, 10, 0 } - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .maxCoinBonus = 2, - }, - .territory = { .temp = { 333, 215, 85, 40, 30, -32767, 1, 360, 215, 150, 120, 137, 1 }}, - .animations = { - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Walk, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Hurt, - ANIM_Goomba_Hyper_Hurt, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -NpcGroupList N(npcGroupList_80241A9C) = { - NPC_GROUP(N(npcGroup_802414CC), 0x0E0A, 0x00), - NPC_GROUP(N(npcGroup_802416BC), 0x0E0D, 0x00), - NPC_GROUP(N(npcGroup_802418AC), 0x0E03, 0x00), - {}, -}; - -#include "world/common/enemy/CleftAI.inc.c" diff --git a/src/world/area_arn/arn_03/arn_03.h b/src/world/area_arn/arn_03/arn_03.h index 16f814023b..f93f736b57 100644 --- a/src/world/area_arn/arn_03/arn_03.h +++ b/src/world/area_arn/arn_03/arn_03.h @@ -2,20 +2,33 @@ /// @brief Gusty Gulch - Ghost Town 1 #include "common.h" -#include "../arn.h" #include "message_ids.h" #include "map.h" +#include "../arn.h" +#include "mapfs/arn_03_shape.h" +#include "mapfs/arn_03_hit.h" + +#include "sprite/npc/Boo.h" +#include "sprite/npc/WorldBow.h" + +enum { + NPC_Boo_01 = 0, + NPC_Boo_02 = 1, + NPC_Boo_03 = 2, + NPC_Boo_04 = 3, + NPC_Boo_05 = 4, + NPC_Boo_06 = 5, + NPC_Boo_07 = 6, + NPC_Boo_08 = 7, + NPC_Boo_09 = 8, +}; + +enum { + MV_Unk_00 = MapVar(0), + MV_Unk_01 = MapVar(1), + MV_Unk_02 = MapVar(2), + MV_Unk_03 = MapVar(3), +}; + #define NAMESPACE arn_03 - -ApiStatus N(AddPlayerHandsOffset)(Evt* script, s32 isInitialCall); -ApiStatus N(ItemChoice_SaveSelected)(Evt* script, s32 isInitialCall); -ApiStatus N(BuildKeyItemChoiceList)(Evt* script, s32 isInitialCall); -ApiStatus N(ItemChoice_WaitForSelection)(Evt* script, s32 isInitialCall); -ApiStatus N(func_8024113C_BDFECC)(Evt* script, s32 isInitialCall); - -extern EvtScript N(main); -extern EvtScript N(80241780); -extern NpcGroupList N(npcGroupList_80244740); -extern NpcGroupList N(npcGroupList_80244788); -extern EvtScript N(makeEntities); diff --git a/src/world/area_arn/arn_03/header.c b/src/world/area_arn/arn_03/arn_03_0_header.c similarity index 53% rename from src/world/area_arn/arn_03/header.c rename to src/world/area_arn/arn_03/arn_03_0_header.c index e2c61ce82d..32bb349fe5 100644 --- a/src/world/area_arn/arn_03/header.c +++ b/src/world/area_arn/arn_03/arn_03_0_header.c @@ -1,23 +1,25 @@ #include "arn_03.h" -EntryList N(entryList) = { - { -76.0, 165.0, 150.0, 90.0 }, - { 576.0, 225.0, 150.0, 270.0 }, +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [arn_03_ENTRY_0] { -76.0, 165.0, 150.0, 90.0 }, + [arn_03_ENTRY_1] { 576.0, 225.0, 150.0, 270.0 }, }; MapSettings N(settings) = { - .main = &N(main), - .entryList = &N(entryList), - .entryCount = ENTRY_COUNT(N(entryList)), + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), .background = &gBackgroundImage, .tattle = { MSG_MapTattle_arn_03 }, }; -EvtScript N(80241780) = { +EvtScript N(EVS_SetupMusic) = { EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-29) + EVT_CASE_LT(STORY_CH3_TUBBA_WOKE_UP) EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) - EVT_CASE_LT(-16) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) EVT_CASE_DEFAULT EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) diff --git a/src/world/area_arn/arn_03/arn_03_1_main.c b/src/world/area_arn/arn_03/arn_03_1_main.c new file mode 100644 index 0000000000..b922e5b127 --- /dev/null +++ b/src/world/area_arn/arn_03/arn_03_1_main.c @@ -0,0 +1,63 @@ +#include "arn_03.h" + +extern EvtScript N(EVS_SetupMusic); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(BeforeNPCs); +extern NpcGroupList N(AfterNPCs); + +EvtScript N(EVS_ExitWalk_arn_07_1) = EVT_EXIT_WALK(60, arn_03_ENTRY_0, "arn_07", arn_07_ENTRY_1); +EvtScript N(EVS_ExitWalk_arn_05_0) = EVT_EXIT_WALK(60, arn_03_ENTRY_1, "arn_05", arn_05_ENTRY_0); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_arn_07_1)), TRIGGER_FLOOR_ABOVE, COLLIDER_deiliw, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_arn_05_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deilie, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(GetLoadType, LVar1) + EVT_IF_EQ(LVar1, LOAD_FROM_FILE_SELECT) + EVT_EXEC(EnterSavePoint) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_RETURN + EVT_END_IF + EVT_IF_LT(GB_StoryProgress, STORY_CH3_ARRIVED_AT_GHOST_TOWN) + EVT_CALL(SetPlayerPos, -175, 165, 160) + EVT_CALL(InterpPlayerYaw, 90, 0) + EVT_CALL(SetNpcPos, NPC_PARTNER, -175, 165, 160) + EVT_CALL(InterpNpcYaw, NPC_PARTNER, 90, 0) + EVT_CALL(SetPlayerSpeed, 4) + EVT_CALL(PlayerMoveTo, -55, 160, 0) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_RETURN + EVT_END_IF + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_GUSTY_GULCH) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_DEFAULT() + EVT_SET(AF_ARN_03, FALSE) + EVT_SET(AF_ARN_04, FALSE) + EVT_SET(AF_ARN_05, FALSE) + EVT_IF_LT(GB_StoryProgress, STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(BeforeNPCs))) + EVT_ELSE + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(AfterNPCs))) + EVT_END_IF + EVT_IF_EQ(GF_ARN03_WaitingForPackage, TRUE) + EVT_SET(MV_Unk_00, 450) + EVT_SET(MV_Unk_01, 450) + EVT_END_IF + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_EXEC(N(EVS_EnterMap)) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_03/arn_03_2_npc.c b/src/world/area_arn/arn_03/arn_03_2_npc.c new file mode 100644 index 0000000000..ce2b3aeac0 --- /dev/null +++ b/src/world/area_arn/arn_03/arn_03_2_npc.c @@ -0,0 +1,578 @@ +#include "arn_03.h" +#include "entity.h" + +#include "world/common/npc/Boo_Patrol.inc.c" +#include "world/common/npc/Boo.inc.c" + +//TODO understand this key item support +#include "world/common/complete/KeyItems.inc.c" + +EvtScript N(EVS_PlayerReact) = { + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_WAIT(1) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_80007) + EVT_WAIT(20) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_01) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_IF_EQ(AF_ARN_02, FALSE) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0073) + EVT_SET(AF_ARN_02, TRUE) + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0074) + EVT_SET(AF_ARN_02, FALSE) + EVT_END_IF + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0075) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0076) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0077) + EVT_CASE_GE(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0078) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_WAIT(10) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_80007) + EVT_WAIT(20) + EVT_CALL(EndSpeech, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcIdle_Boo_01) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_WAIT(25) + EVT_THREAD + EVT_WAIT(50) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 325) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(20) + EVT_CALL(GetCurrentPartnerID, LVar6) + EVT_IF_NE(LVar6, PARTNER_BOW) + EVT_CALL(BringPartnerOut, PARTNER_BOW) + EVT_CALL(DisablePartnerAI, 0) + EVT_WAIT(1) + EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_SELF, 0) + EVT_WAIT(5) + EVT_CALL(SetNpcJumpscale, NPC_PARTNER, 0) + EVT_IF_EQ(LVar6, PARTNER_PARAKARRY) + EVT_CALL(NpcJump0, NPC_PARTNER, -81, 176, 171, 20) + EVT_ELSE + EVT_CALL(NpcJump0, NPC_PARTNER, -81, 186, 171, 20) + EVT_END_IF + EVT_CALL(EnablePartnerAI) + EVT_END_IF + EVT_END_THREAD + EVT_CALL(SetNpcJumpscale, NPC_SELF, 0) + EVT_CALL(NpcJump0, NPC_SELF, -8, 186, 159, 60) + EVT_WAIT(15) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(InterpNpcYaw, NPC_SELF, -4, 0) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_006E) + EVT_CALL(InterpNpcYaw, NPC_PARTNER, -1, 0) + EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 5, MSG_CH3_006F) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_0070) + EVT_CALL(InterpNpcYaw, NPC_PARTNER, -1, 0) + EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 5, MSG_CH3_0071) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_0072) + EVT_CALL(EnablePartnerAI) + EVT_WAIT(10) + EVT_CALL(GetCurrentPartnerID, LVar6) + EVT_IF_NE(LVar6, PARTNER_BOW) + EVT_CALL(PutPartnerAway) + EVT_END_IF + EVT_THREAD + EVT_CALL(NpcMoveTo, NPC_SELF, 30, 125, 30) + EVT_CALL(InterpNpcYaw, NPC_SELF, 270, 0) + EVT_END_THREAD + EVT_CALL(func_802CF56C, 2) + EVT_WAIT(15) + EVT_SET(GB_StoryProgress, STORY_CH3_ARRIVED_AT_GHOST_TOWN) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, 3) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_01) = { + EVT_IF_LT(GB_StoryProgress, STORY_CH3_ARRIVED_AT_GHOST_TOWN) + EVT_CALL(SetNpcPos, NPC_SELF, 175, 240, 145) + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo_01))) + EVT_END_IF + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Boo_01))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_02) = { + EVT_IF_NE(MV_Unk_00, 0) + EVT_IF_GE(MV_Unk_00, MV_Unk_01) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0081) + EVT_SET(LVar0, 118) + EVT_SET(LVar1, 1) + EVT_EXEC_WAIT(N(GiveKeyReward)) + EVT_CALL(AddKeyItem, ITEM_KOOT_PACKAGE) + EVT_SET(MV_Unk_00, 0) + EVT_SET(GF_ARN03_RecievedPackage, TRUE) + EVT_SET(GF_ARN03_WaitingForPackage, FALSE) + EVT_RETURN + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0080) + EVT_RETURN + EVT_END_IF + EVT_END_IF + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_IF_EQ(AF_ARN_03, FALSE) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0079) + EVT_SET(AF_ARN_03, TRUE) + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007A) + EVT_SET(AF_ARN_03, FALSE) + EVT_END_IF + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007B) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007C) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007D) + EVT_CASE_GE(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007E) + EVT_END_SWITCH + EVT_IF_EQ(GF_ARN03_RecievedPackage, FALSE) + EVT_IF_EQ(GB_KootFavor_Current, 18) + EVT_EXEC_WAIT(N(EVS_PlayerReact)) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007F) + EVT_CALL(EndSpeech, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0) + EVT_SET(MV_Unk_00, 0) + EVT_SET(MV_Unk_01, 450) + EVT_SET(GF_ARN03_WaitingForPackage, TRUE) + EVT_THREAD + EVT_LOOP(0) + EVT_ADD(MV_Unk_00, 1) + EVT_WAIT(1) + EVT_IF_GE(MV_Unk_00, MV_Unk_01) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_END_IF + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_02) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Boo_02))) + EVT_RETURN + EVT_END +}; + +EvtScript N(802428CC) = { + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(GetNpcPos, NPC_SELF, LVar3, LVar4, LVar5) + EVT_IF_GT(LVar0, LVar3) + EVT_ADD(LVar0, 60) + EVT_CALL(SetNpcYaw, NPC_Boo_05, 90) + EVT_ELSE + EVT_SUB(LVar0, 60) + EVT_CALL(SetNpcYaw, NPC_Boo_05, 270) + EVT_END_IF + EVT_ADD(LVar1, 20) + EVT_CALL(SetNpcPos, NPC_Boo_05, LVar0, LVar1, LVar2) + EVT_CALL(func_802CFD30, NPC_Boo_05, 7, 0, 0, 0, 0) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; + +EvtScript N(802429D4) = { + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(GetNpcPos, NPC_SELF, LVar3, LVar4, LVar5) + EVT_IF_GT(LVar0, LVar3) + EVT_ADD(LVar0, 30) + EVT_ELSE + EVT_SUB(LVar0, 30) + EVT_END_IF + EVT_THREAD + EVT_CALL(MakeLerp, 0, 255, 40, EASING_LINEAR) + EVT_LABEL(10) + EVT_CALL(UpdateLerp) + EVT_CALL(func_802CFD30, NPC_Boo_05, 7, LVar0, 0, 0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 1) + EVT_GOTO(10) + EVT_END_IF + EVT_END_THREAD + EVT_CALL(NpcMoveTo, NPC_Boo_05, LVar0, LVar2, 40) + EVT_RETURN + EVT_END +}; + +EvtScript N(80242B0C) = { + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(GetNpcPos, NPC_SELF, LVar3, LVar4, LVar5) + EVT_IF_GT(LVar0, LVar3) + EVT_ADD(LVar0, 60) + EVT_ELSE + EVT_SUB(LVar0, 60) + EVT_END_IF + EVT_THREAD + EVT_CALL(MakeLerp, 255, 0, 40, EASING_LINEAR) + EVT_LABEL(10) + EVT_CALL(UpdateLerp) + EVT_CALL(func_802CFD30, NPC_Boo_05, 7, LVar0, 0, 0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 1) + EVT_GOTO(10) + EVT_END_IF + EVT_END_THREAD + EVT_CALL(NpcMoveTo, NPC_Boo_05, LVar0, LVar2, 40) + EVT_CALL(SetNpcPos, NPC_Boo_05, 0, -1000, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(80242C60) = { + EVT_EXEC_WAIT(N(802429D4)) + EVT_SET(MV_Unk_02, 0) + EVT_SET(MV_Unk_03, 0) + EVT_THREAD + EVT_WAIT(25) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_80017) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Cower) + EVT_LOOP(0) + EVT_IF_EQ(MV_Unk_02, 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Idle) + EVT_END_THREAD + EVT_CALL(SetNpcAnimation, NPC_Boo_05, ANIM_Boo_Tan_Spook) + EVT_CALL(EndSpeech, NPC_Boo_05, ANIM_Boo_Tan_Spook, ANIM_Boo_Tan_Spook, 5) + EVT_WAIT(30) + EVT_CALL(SetNpcAnimation, NPC_Boo_05, ANIM_Boo_Tan_Idle) + EVT_WAIT(10) + EVT_EXEC_WAIT(N(80242B0C)) + EVT_SET(MV_Unk_02, 1) + EVT_WAIT(15) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_03) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_IF_EQ(AF_ARN_04, FALSE) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0082) + EVT_SET(AF_ARN_04, TRUE) + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0083) + EVT_SET(AF_ARN_04, FALSE) + EVT_END_IF + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0084) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0085) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_THREAD + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_ADD(LVar2, -20) + EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(2.0)) + EVT_CALL(NpcMoveTo, NPC_PARTNER, LVar0, LVar2, 0) + EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_SELF, 1) + EVT_END_THREAD + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0086) + EVT_EXEC_WAIT(N(802428CC)) + EVT_CALL(PlayerFaceNpc, NPC_Boo_05, TRUE) + EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_Boo_05, 1) + EVT_CALL(SpeakToPlayer, NPC_Boo_05, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_0087) + EVT_EXEC_WAIT(N(80242C60)) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0088) + EVT_CALL(DisablePlayerPhysics, FALSE) + EVT_CALL(EnablePartnerAI) + EVT_CASE_GE(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_THREAD + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_ADD(LVar2, -20) + EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(2.0)) + EVT_CALL(NpcMoveTo, NPC_PARTNER, LVar0, LVar2, 0) + EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_SELF, 1) + EVT_END_THREAD + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0089) + EVT_EXEC_WAIT(N(802428CC)) + EVT_CALL(PlayerFaceNpc, NPC_Boo_05, TRUE) + EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_Boo_05, 1) + EVT_CALL(SpeakToPlayer, NPC_Boo_05, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_008A) + EVT_EXEC_WAIT(N(80242C60)) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_008B) + EVT_CALL(DisablePlayerPhysics, FALSE) + EVT_CALL(EnablePartnerAI) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_03) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Boo_03))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_04) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_IF_EQ(AF_ARN_05, FALSE) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_008C) + EVT_SET(AF_ARN_05, TRUE) + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_008D) + EVT_SET(AF_ARN_05, FALSE) + EVT_END_IF + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_008E) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_008F) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0090) + EVT_CASE_GE(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0091) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_04) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Boo_04))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_05) = { + EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_Boo_01) = { + .id = NPC_Boo_01, + .settings = &N(NpcSettings_Boo_Patrol), + .pos = { 36.0f, 185.0f, 140.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS, + .init = &N(EVS_NpcInit_Boo_01), + .drops = BOO_DROPS, + .territory = { + .patrol = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .numPoints = 2, + .points = { + { 36, 10, 185 }, + { 56, 10, 185 }, + }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 479, 215, 198 }, + .detectSize = { 150 }, + } + }, + .animations = GUSTY_BOO_ANIMS, + .tattle = MSG_NpcTattle_ARN_LovesBow, +}; + +StaticNpc N(NpcData_Boo_02) = { + .id = NPC_Boo_02, + .settings = &N(NpcSettings_Boo), + .pos = { 209.0f, 185.0f, 217.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS, + .init = &N(EVS_NpcInit_Boo_02), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, + .tattle = MSG_NpcTattle_ARN_BooA, +}; + +StaticNpc N(NpcData_Boo_03) = { + .id = NPC_Boo_03, + .settings = &N(NpcSettings_Boo_Patrol), + .pos = { 379.0f, 186.0f, 186.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS, + .init = &N(EVS_NpcInit_Boo_03), + .drops = BOO_DROPS, + .territory = { + .patrol = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .numPoints = 2, + .points = { + { 379, 10, 186 }, + { 399, 10, 186 }, + }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 479, 215, 198 }, + .detectSize = { 150 }, + } + }, + .animations = GUSTY_BOO_ANIMS, + .tattle = MSG_NpcTattle_ARN_BooB, +}; + +StaticNpc N(NpcData_Boo_04) = { + .id = NPC_Boo_04, + .settings = &N(NpcSettings_Boo), + .pos = { 544.0f, 235.0f, 128.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS, + .init = &N(EVS_NpcInit_Boo_04), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, + .tattle = MSG_NpcTattle_ARN_BooC, +}; + +StaticNpc N(NpcData_Boo_05) = { + .id = NPC_Boo_05, + .settings = &N(NpcSettings_Boo), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS, + .init = &N(EVS_NpcInit_Boo_05), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, +}; + +EvtScript N(EVS_NpcIdle_Boo_06) = { + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SET(LVar3, LVar0) + EVT_ADD(LVar3, -60) + EVT_SET(LVar4, LVar0) + EVT_ADD(LVar4, 60) + EVT_LOOP(0) + EVT_CALL(RandInt, 5, LVar5) + EVT_SETF(LVar6, LVar5) + EVT_MULF(LVar6, EVT_FLOAT(0.1)) + EVT_ADDF(LVar6, EVT_FLOAT(0.8)) + EVT_CALL(SetNpcSpeed, NPC_SELF, LVar6) + EVT_CALL(NpcMoveTo, NPC_SELF, LVar3, LVar2, 0) + EVT_CALL(RandInt, 5, LVar5) + EVT_SETF(LVar6, LVar5) + EVT_MULF(LVar6, EVT_FLOAT(0.1)) + EVT_ADDF(LVar6, EVT_FLOAT(0.8)) + EVT_CALL(SetNpcSpeed, NPC_SELF, LVar6) + EVT_CALL(NpcMoveTo, NPC_SELF, LVar4, LVar2, 0) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_06) = { + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo_06))) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_HAS_SHADOW, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_07) = { + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo_06))) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_HAS_SHADOW, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_08) = { + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo_06))) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_HAS_SHADOW, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_09) = { + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo_06))) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_HAS_SHADOW, FALSE) + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_Boo_06)[] = { + { + .id = NPC_Boo_06, + .settings = &N(NpcSettings_Boo), + .pos = { 36.0f, 277.0f, 140.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_Boo_06), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, + }, + { + .id = NPC_Boo_07, + .settings = &N(NpcSettings_Boo), + .pos = { 180.0f, 285.0f, 182.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_Boo_07), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, + }, + { + .id = NPC_Boo_08, + .settings = &N(NpcSettings_Boo), + .pos = { 349.0f, 286.0f, 152.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_Boo_08), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, + }, + { + .id = NPC_Boo_09, + .settings = &N(NpcSettings_Boo), + .pos = { 490.0f, 324.0f, 128.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_Boo_09), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, + }, +}; + +NpcGroupList N(BeforeNPCs) = { + NPC_GROUP(N(NpcData_Boo_01)), + NPC_GROUP(N(NpcData_Boo_02)), + NPC_GROUP(N(NpcData_Boo_03)), + NPC_GROUP(N(NpcData_Boo_04)), + NPC_GROUP(N(NpcData_Boo_05)), + {} +}; + +NpcGroupList N(AfterNPCs) = { + NPC_GROUP(N(NpcData_Boo_01)), + NPC_GROUP(N(NpcData_Boo_02)), + NPC_GROUP(N(NpcData_Boo_03)), + NPC_GROUP(N(NpcData_Boo_04)), + NPC_GROUP(N(NpcData_Boo_05)), + NPC_GROUP(N(NpcData_Boo_06)), + {} +}; diff --git a/src/world/area_arn/arn_03/arn_03_3_entity.c b/src/world/area_arn/arn_03/arn_03_3_entity.c new file mode 100644 index 0000000000..32e185c7d9 --- /dev/null +++ b/src/world/area_arn/arn_03/arn_03_3_entity.c @@ -0,0 +1,10 @@ +#include "arn_03.h" +#include "entity.h" + +EvtScript N(EVS_MakeEntities) = { + EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 300, 237, 60, 0, ITEM_COIN, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_ARN03_ItemBlock_Coin) + EVT_CALL(MakeEntity, EVT_PTR(Entity_SavePoint), 250, 237, 125, 0, MAKE_ENTITY_END) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_03/events.c b/src/world/area_arn/arn_03/events.c deleted file mode 100644 index 0bac266227..0000000000 --- a/src/world/area_arn/arn_03/events.c +++ /dev/null @@ -1,1011 +0,0 @@ -#include "arn_03.h" -#include "entity.h" -#include "sprite/npc/Boo.h" -#include "sprite/npc/WorldBow.h" - - -static s32 N(KeyItemChoiceList)[112]; - -EvtScript N(exitWalk_80241830) = EVT_EXIT_WALK(60, 0, "arn_07", 1); - -EvtScript N(exitWalk_8024188C) = EVT_EXIT_WALK(60, 1, "arn_05", 0); - -EvtScript N(802418E8) = { - EVT_BIND_TRIGGER(N(exitWalk_80241830), TRIGGER_FLOOR_ABOVE, 1, 1, 0) - EVT_BIND_TRIGGER(N(exitWalk_8024188C), TRIGGER_FLOOR_ABOVE, 5, 1, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(enterWalk_80241930) = { - EVT_CALL(GetLoadType, LVar1) - EVT_IF_EQ(LVar1, 1) - EVT_EXEC(EnterSavePoint) - EVT_EXEC(N(802418E8)) - EVT_RETURN - EVT_END_IF - EVT_IF_LT(GB_StoryProgress, -34) - EVT_CALL(SetPlayerPos, -175, 165, 160) - EVT_CALL(InterpPlayerYaw, 90, 0) - EVT_CALL(SetNpcPos, NPC_PARTNER, -175, 165, 160) - EVT_CALL(InterpNpcYaw, NPC_PARTNER, 90, 0) - EVT_CALL(SetPlayerSpeed, 4) - EVT_CALL(PlayerMoveTo, -55, 160, 0) - EVT_EXEC(N(802418E8)) - EVT_RETURN - EVT_END_IF - EVT_SET(LVar0, EVT_PTR(N(802418E8))) - EVT_EXEC(EnterWalk) - EVT_RETURN - EVT_END -}; - -EvtScript N(main) = { - EVT_SET(GB_WorldLocation, 34) - EVT_CALL(SetSpriteShading, -1) - EVT_CALL(SetCamPerspective, 0, 3, 25, 16, 4096) - EVT_CALL(SetCamBGColor, 0, 0, 0, 0) - EVT_CALL(SetCamEnabled, 0, 1) - EVT_SET(AreaFlag(3), 0) - EVT_SET(AreaFlag(4), 0) - EVT_SET(AreaFlag(5), 0) - EVT_IF_LT(GB_StoryProgress, -16) - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_80244740))) - EVT_ELSE - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_80244788))) - EVT_END_IF - EVT_IF_EQ(GF_ARN03_WaitingForPackage, 1) - EVT_SET(MapVar(0), 450) - EVT_SET(MapVar(1), 450) - EVT_END_IF - EVT_EXEC_WAIT(N(makeEntities)) - EVT_EXEC(N(80241780)) - EVT_EXEC(N(enterWalk_80241930)) - EVT_WAIT(1) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_1BB8)[] = { - 0x00000000, 0x00000000, -}; - -MobileAISettings N(npcAISettings_80241BC0) = { - .moveSpeed = 1.0f, - .moveTime = 25, - .waitTime = 30, - .alertRadius = 50.0f, - .alertOffsetDist = 50.0f, - .playerSearchInterval = 10, - .chaseRadius = 100.0f, - .chaseOffsetDist = 80.0f, - .unk_AI_2C = 1, -}; - -EvtScript N(npcAI_80241BF0) = { - EVT_CALL(N(func_8024113C_BDFECC), EVT_PTR(N(npcAISettings_80241BC0))) - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_80241C10) = { - .height = 24, - .radius = 24, - .ai = &N(npcAI_80241BF0), - .level = 99, -}; - -NpcSettings N(npcSettings_80241C3C) = { - .height = 24, - .radius = 24, - .level = 99, -}; - -#include "world/common/enemy/PatrolNoAttackAI.inc.c" - -void N(func_80240E90_BDFC20)(Evt* script, MobileAISettings* aiSettings, EnemyDetectVolume* territory) { - Enemy* enemy = script->owner1.enemy; - Npc* npc = get_npc_unsafe(enemy->npcID); - f32 posX, posY, posZ, posW; - f32 temp_f20; - f32 temp_f22; - - posX = npc->pos.x; - posZ = npc->pos.z; - temp_f22 = (*(enemy->territory->patrol.points + script->functionTemp[2])).x; - temp_f20 = (*(enemy->territory->patrol.points + script->functionTemp[2])).z; - - npc->yaw = atan2(posX, posZ, temp_f22, temp_f20); - npc_move_heading(npc, npc->moveSpeed, npc->yaw); - - posX = npc->pos.x; - posY = npc->pos.y + (*(enemy->territory->patrol.points + script->functionTemp[2])).y; - posZ = npc->pos.z; - posW = 1000.0f; - npc_raycast_down_sides(npc->collisionChannel, &posX, &posY, &posZ, &posW); - posY += (*(enemy->territory->patrol.points + script->functionTemp[2])).y; - posW = posY - npc->pos.y; - if (posW > 2.0) { - npc->pos.y += 2.0; - } else if (posW < -2.0) { - npc->pos.y -= 2.0; - } else { - npc->pos.y = posY; - } - - posW = dist2D(npc->pos.x, npc->pos.z, temp_f22, temp_f20); - if (!(posW > npc->moveSpeed)) { - script->functionTemp[0] = 2; - } -} - -void N(func_80241068_BDFDF8)(Evt* script, MobileAISettings* aiSettings, EnemyDetectVolume* territory) { - Enemy* enemy = script->owner1.enemy; - Npc* npc = get_npc_unsafe(enemy->npcID); - - npc->duration--; - if (npc->duration < 0) { - script->functionTemp[1]--; - if (script->functionTemp[1] >= 0) { - npc->yaw = clamp_angle(npc->yaw + 180.0f); - npc->duration = aiSettings->waitTime / 2 + rand_int(aiSettings->waitTime / 2 + 1); - } else { - script->functionTemp[0] = 4; - npc->currentAnim = enemy->animList[ENEMY_ANIM_IDLE]; - } - } -} - -ApiStatus N(func_8024113C_BDFECC)(Evt* script, s32 isInitialCall) { - Enemy* enemy = script->owner1.enemy; - Bytecode* args = script->ptrReadPos; - Npc* npc = get_npc_unsafe(enemy->npcID); - EnemyDetectVolume territory; - EnemyDetectVolume* territoryPtr = &territory; - MobileAISettings* npcAISettings = (MobileAISettings*)evt_get_variable(script, *args++); - - territory.skipPlayerDetectChance = 0; - territory.shape = enemy->territory->patrol.detectShape; - territory.pointX = enemy->territory->patrol.detectPos.x; - territory.pointZ = enemy->territory->patrol.detectPos.z; - territory.sizeX = enemy->territory->patrol.detectSize.x; - territory.sizeZ = enemy->territory->patrol.detectSize.z; - territory.halfHeight = 100.0f; - territory.detectFlags = 0; - - if (isInitialCall) { - script->functionTemp[0] = 0; - npc->duration = 0; - npc->flags &= ~NPC_FLAG_JUMPING; - } - - switch (script->functionTemp[0]) { - case 0: - N(PatrolAI_MoveInit)(script, npcAISettings, territoryPtr); - case 1: - N(func_80240E90_BDFC20)(script, npcAISettings, territoryPtr); - break; - case 2: - N(PatrolAI_LoiterInit)(script, npcAISettings, territoryPtr); - case 3: - N(func_80241068_BDFDF8)(script, npcAISettings, territoryPtr); - break; - case 4: - N(PatrolAI_PostLoiter)(script, npcAISettings, territoryPtr); - break; - } - - enemy->varTable[0] = npc->pos.y; - return ApiStatus_BLOCK; -} - -static s32** N(varStash) = NULL; - - -EvtScript N(80241C6C) = { - EVT_CALL(ShowGotItem, LVar0, 1, 0) - EVT_RETURN - EVT_RETURN - EVT_END -}; - -EvtScript N(80241C9C) = { - EVT_CALL(ShowGotItem, LVar0, 1, 16) - EVT_RETURN - EVT_RETURN - EVT_END -}; - -s32 N(ItemChoice_HasSelectedItem) = { - 0x00000000, -}; - -s32 N(ItemChoice_SelectedItemID) = { - 0x00000000, -}; - -EvtScript N(80241CD4) = { - EVT_SET(LVar9, LVar1) - EVT_CALL(ShowKeyChoicePopup) - EVT_SET(LVarA, LVar0) - EVT_SWITCH(LVar0) - EVT_CASE_EQ(0) - EVT_CASE_EQ(-1) - EVT_CASE_DEFAULT - EVT_CALL(RemoveKeyItemAt, LVar1) - EVT_CALL(GetPlayerPos, LVar3, LVar4, LVar5) - EVT_CALL(N(AddPlayerHandsOffset), LVar3, LVar4, LVar5) - EVT_BITWISE_OR_CONST(LVar0, 0x50000) - EVT_CALL(MakeItemEntity, LVar0, LVar3, LVar4, LVar5, 1, 0) - EVT_CALL(SetPlayerAnimation, 393221) - EVT_WAIT(30) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) - EVT_CALL(RemoveItemEntity, LVar0) - EVT_END_SWITCH - EVT_CALL(N(ItemChoice_SaveSelected), LVarA) - EVT_CALL(CloseChoicePopup) - EVT_UNBIND - EVT_RETURN - EVT_END -}; - -EvtScript N(80241E18) = { - EVT_CALL(N(BuildKeyItemChoiceList), LVar0) - EVT_BIND_PADLOCK(N(80241CD4), TRIGGER_FORCE_ACTIVATE, 0, EVT_PTR(N(KeyItemChoiceList)), 0, 1) - EVT_CALL(N(ItemChoice_WaitForSelection), LVar0) - EVT_RETURN - EVT_END -}; - -EvtScript N(80241E68) = { - EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) - EVT_WAIT(1) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_80007) - EVT_WAIT(20) - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_80241EB0) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-26) - EVT_IF_EQ(AreaFlag(2), 0) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0073) - EVT_SET(AreaFlag(2), 1) - EVT_ELSE - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0074) - EVT_SET(AreaFlag(2), 0) - EVT_END_IF - EVT_CASE_LT(-16) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0075) - EVT_CASE_LT(-14) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0076) - EVT_CASE_LT(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0077) - EVT_CASE_GE(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0078) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) - EVT_WAIT(10) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_80007) - EVT_WAIT(20) - EVT_CALL(EndSpeech, -1, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(idle_80242064) = { - EVT_CALL(DisablePlayerInput, TRUE) - EVT_WAIT(25) - EVT_THREAD - EVT_WAIT(50) - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_CALL(UseSettingsFrom, 0, LVar0, LVar1, LVar2) - EVT_CALL(SetCamDistance, 0, 325) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(4.0)) - EVT_CALL(SetPanTarget, 0, LVar0, LVar1, LVar2) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_END_THREAD - EVT_THREAD - EVT_WAIT(20) - EVT_CALL(GetCurrentPartnerID, LVar6) - EVT_IF_NE(LVar6, 9) - EVT_CALL(BringPartnerOut, 9) - EVT_CALL(DisablePartnerAI, 0) - EVT_WAIT(1) - EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_SELF, 0) - EVT_WAIT(5) - EVT_CALL(SetNpcJumpscale, NPC_PARTNER, 0) - EVT_IF_EQ(LVar6, 4) - EVT_CALL(NpcJump0, NPC_PARTNER, -81, 176, 171, 20) - EVT_ELSE - EVT_CALL(NpcJump0, NPC_PARTNER, -81, 186, 171, 20) - EVT_END_IF - EVT_CALL(EnablePartnerAI) - EVT_END_IF - EVT_END_THREAD - EVT_CALL(SetNpcJumpscale, NPC_SELF, 0) - EVT_CALL(NpcJump0, NPC_SELF, -8, 186, 159, 60) - EVT_WAIT(15) - EVT_CALL(DisablePartnerAI, 0) - EVT_CALL(InterpNpcYaw, NPC_SELF, -4, 0) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_006E) - EVT_CALL(InterpNpcYaw, NPC_PARTNER, -1, 0) - EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 5, MSG_CH3_006F) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_0070) - EVT_CALL(InterpNpcYaw, NPC_PARTNER, -1, 0) - EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 5, MSG_CH3_0071) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_0072) - EVT_CALL(EnablePartnerAI) - EVT_WAIT(10) - EVT_CALL(GetCurrentPartnerID, LVar6) - EVT_IF_NE(LVar6, 9) - EVT_CALL(PutPartnerAway) - EVT_END_IF - EVT_THREAD - EVT_CALL(NpcMoveTo, NPC_SELF, 30, 125, 30) - EVT_CALL(InterpNpcYaw, NPC_SELF, 270, 0) - EVT_END_THREAD - EVT_CALL(func_802CF56C, 2) - EVT_WAIT(15) - EVT_SET(GB_StoryProgress, -34) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_CALL(UseSettingsFrom, 0, LVar0, LVar1, LVar2) - EVT_CALL(SetCamSpeed, 0, 3) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_CALL(PanToTarget, 0, 0, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_802424E0) = { - EVT_IF_LT(GB_StoryProgress, -34) - EVT_CALL(SetNpcPos, NPC_SELF, 175, 240, 145) - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_80242064))) - EVT_END_IF - EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(interact_80241EB0))) - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_8024254C) = { - EVT_IF_NE(MapVar(0), 0) - EVT_IF_GE(MapVar(0), MapVar(1)) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0081) - EVT_SET(LVar0, 118) - EVT_SET(LVar1, 1) - EVT_EXEC_WAIT(N(80241C6C)) - EVT_CALL(AddKeyItem, ITEM_KOOT_PACKAGE) - EVT_SET(MapVar(0), 0) - EVT_SET(GF_ARN03_RecievedPackage, 1) - EVT_SET(GF_ARN03_WaitingForPackage, 0) - EVT_RETURN - EVT_ELSE - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0080) - EVT_RETURN - EVT_END_IF - EVT_END_IF - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-26) - EVT_IF_EQ(AreaFlag(3), 0) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0079) - EVT_SET(AreaFlag(3), 1) - EVT_ELSE - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007A) - EVT_SET(AreaFlag(3), 0) - EVT_END_IF - EVT_CASE_LT(-16) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007B) - EVT_CASE_LT(-14) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007C) - EVT_CASE_LT(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007D) - EVT_CASE_GE(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007E) - EVT_END_SWITCH - EVT_IF_EQ(GF_ARN03_RecievedPackage, 0) - EVT_IF_EQ(GB_KootFavor_Current, 18) - EVT_EXEC_WAIT(N(80241E68)) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_007F) - EVT_CALL(EndSpeech, -1, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0) - EVT_SET(MapVar(0), 0) - EVT_SET(MapVar(1), 450) - EVT_SET(GF_ARN03_WaitingForPackage, 1) - EVT_THREAD - EVT_LOOP(0) - EVT_ADD(MapVar(0), 1) - EVT_WAIT(1) - EVT_IF_GE(MapVar(0), MapVar(1)) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_END_THREAD - EVT_END_IF - EVT_END_IF - EVT_RETURN - EVT_END -}; - -EvtScript N(init_802428A8) = { - EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(interact_8024254C))) - EVT_RETURN - EVT_END -}; - -EvtScript N(802428CC) = { - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_CALL(GetNpcPos, NPC_SELF, LVar3, LVar4, LVar5) - EVT_IF_GT(LVar0, LVar3) - EVT_ADD(LVar0, 60) - EVT_CALL(SetNpcYaw, 4, 90) - EVT_ELSE - EVT_SUB(LVar0, 60) - EVT_CALL(SetNpcYaw, 4, 270) - EVT_END_IF - EVT_ADD(LVar1, 20) - EVT_CALL(SetNpcPos, 4, LVar0, LVar1, LVar2) - EVT_CALL(func_802CFD30, 4, 7, 0, 0, 0, 0) - EVT_WAIT(1) - EVT_RETURN - EVT_END -}; - -EvtScript N(802429D4) = { - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_CALL(GetNpcPos, NPC_SELF, LVar3, LVar4, LVar5) - EVT_IF_GT(LVar0, LVar3) - EVT_ADD(LVar0, 30) - EVT_ELSE - EVT_SUB(LVar0, 30) - EVT_END_IF - EVT_THREAD - EVT_CALL(MakeLerp, 0, 255, 40, 0) - EVT_LABEL(10) - EVT_CALL(UpdateLerp) - EVT_CALL(func_802CFD30, 4, 7, LVar0, 0, 0, 0) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 1) - EVT_GOTO(10) - EVT_END_IF - EVT_END_THREAD - EVT_CALL(NpcMoveTo, 4, LVar0, LVar2, 40) - EVT_RETURN - EVT_END -}; - -EvtScript N(80242B0C) = { - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_CALL(GetNpcPos, NPC_SELF, LVar3, LVar4, LVar5) - EVT_IF_GT(LVar0, LVar3) - EVT_ADD(LVar0, 60) - EVT_ELSE - EVT_SUB(LVar0, 60) - EVT_END_IF - EVT_THREAD - EVT_CALL(MakeLerp, 255, 0, 40, 0) - EVT_LABEL(10) - EVT_CALL(UpdateLerp) - EVT_CALL(func_802CFD30, 4, 7, LVar0, 0, 0, 0) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 1) - EVT_GOTO(10) - EVT_END_IF - EVT_END_THREAD - EVT_CALL(NpcMoveTo, 4, LVar0, LVar2, 40) - EVT_CALL(SetNpcPos, 4, 0, -1000, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(80242C60) = { - EVT_EXEC_WAIT(N(802429D4)) - EVT_SET(MapVar(2), 0) - EVT_SET(MapVar(3), 0) - EVT_THREAD - EVT_WAIT(25) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_80017) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Cower) - EVT_LOOP(0) - EVT_IF_EQ(MapVar(2), 1) - EVT_BREAK_LOOP - EVT_END_IF - EVT_WAIT(1) - EVT_END_LOOP - EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Idle) - EVT_END_THREAD - EVT_CALL(SetNpcAnimation, 4, ANIM_Boo_Tan_Spook) - EVT_CALL(EndSpeech, 4, ANIM_Boo_Tan_Spook, ANIM_Boo_Tan_Spook, 5) - EVT_WAIT(30) - EVT_CALL(SetNpcAnimation, 4, ANIM_Boo_Tan_Idle) - EVT_WAIT(10) - EVT_EXEC_WAIT(N(80242B0C)) - EVT_SET(MapVar(2), 1) - EVT_WAIT(15) - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_80242DC4) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-26) - EVT_IF_EQ(AreaFlag(4), 0) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0082) - EVT_SET(AreaFlag(4), 1) - EVT_ELSE - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0083) - EVT_SET(AreaFlag(4), 0) - EVT_END_IF - EVT_CASE_LT(-16) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0084) - EVT_CASE_LT(-14) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0085) - EVT_CASE_LT(39) - EVT_CALL(DisablePartnerAI, 0) - EVT_CALL(DisablePlayerPhysics, TRUE) - EVT_THREAD - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_ADD(LVar2, -20) - EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(2.0)) - EVT_CALL(NpcMoveTo, NPC_PARTNER, LVar0, LVar2, 0) - EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_SELF, 1) - EVT_END_THREAD - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0086) - EVT_EXEC_WAIT(N(802428CC)) - EVT_CALL(PlayerFaceNpc, 4, 1) - EVT_CALL(NpcFaceNpc, NPC_PARTNER, 4, 1) - EVT_CALL(SpeakToPlayer, 4, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_0087) - EVT_EXEC_WAIT(N(80242C60)) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0088) - EVT_CALL(DisablePlayerPhysics, FALSE) - EVT_CALL(EnablePartnerAI) - EVT_CASE_GE(39) - EVT_CALL(DisablePartnerAI, 0) - EVT_CALL(DisablePlayerPhysics, TRUE) - EVT_THREAD - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_ADD(LVar2, -20) - EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(2.0)) - EVT_CALL(NpcMoveTo, NPC_PARTNER, LVar0, LVar2, 0) - EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_SELF, 1) - EVT_END_THREAD - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0089) - EVT_EXEC_WAIT(N(802428CC)) - EVT_CALL(PlayerFaceNpc, 4, 1) - EVT_CALL(NpcFaceNpc, NPC_PARTNER, 4, 1) - EVT_CALL(SpeakToPlayer, 4, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_008A) - EVT_EXEC_WAIT(N(80242C60)) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_008B) - EVT_CALL(DisablePlayerPhysics, FALSE) - EVT_CALL(EnablePartnerAI) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(init_802431A4) = { - EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(interact_80242DC4))) - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_802431C8) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-26) - EVT_IF_EQ(AreaFlag(5), 0) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_008C) - EVT_SET(AreaFlag(5), 1) - EVT_ELSE - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_008D) - EVT_SET(AreaFlag(5), 0) - EVT_END_IF - EVT_CASE_LT(-16) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_008E) - EVT_CASE_LT(-14) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_008F) - EVT_CASE_LT(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0090) - EVT_CASE_GE(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0091) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80243328) = { - EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(interact_802431C8))) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_8024334C) = { - EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) - EVT_RETURN - EVT_END -}; - -StaticNpc N(npcGroup_80243378) = { - .id = 0, - .settings = &N(npcSettings_80241C10), - .pos = { 36.0f, 185.0f, 140.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS, - .init = &N(init_802424E0), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .territory = { .temp = { 2, 36, 10, 185, 56, 10, 185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -32767, 479, 215, 198, 150 }}, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .tattle = MSG_NpcTattle_ARN_LovesBow, -}; - -StaticNpc N(npcGroup_80243568) = { - .id = 1, - .settings = &N(npcSettings_80241C3C), - .pos = { 209.0f, 185.0f, 217.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS, - .init = &N(init_802428A8), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .tattle = MSG_NpcTattle_ARN_BooA, -}; - -StaticNpc N(npcGroup_80243758) = { - .id = 2, - .settings = &N(npcSettings_80241C10), - .pos = { 379.0f, 186.0f, 186.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS, - .init = &N(init_802431A4), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .territory = { .temp = { 2, 379, 10, 186, 399, 10, 186, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -32767, 479, 215, 198, 150 }}, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .tattle = MSG_NpcTattle_ARN_BooB, -}; - -StaticNpc N(npcGroup_80243948) = { - .id = 3, - .settings = &N(npcSettings_80241C3C), - .pos = { 544.0f, 235.0f, 128.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS, - .init = &N(init_80243328), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .tattle = MSG_NpcTattle_ARN_BooC, -}; - -StaticNpc N(npcGroup_80243B38) = { - .id = 4, - .settings = &N(npcSettings_80241C3C), - .pos = { 0.0f, -1000.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS, - .init = &N(init_8024334C), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, -}; - -EvtScript N(idle_80243D28) = { - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_SET(LVar3, LVar0) - EVT_ADD(LVar3, -60) - EVT_SET(LVar4, LVar0) - EVT_ADD(LVar4, 60) - EVT_LOOP(0) - EVT_CALL(RandInt, 5, LVar5) - EVT_SETF(LVar6, LVar5) - EVT_MULF(LVar6, EVT_FLOAT(0.1)) - EVT_ADDF(LVar6, EVT_FLOAT(0.8)) - EVT_CALL(SetNpcSpeed, NPC_SELF, LVar6) - EVT_CALL(NpcMoveTo, NPC_SELF, LVar3, LVar2, 0) - EVT_CALL(RandInt, 5, LVar5) - EVT_SETF(LVar6, LVar5) - EVT_MULF(LVar6, EVT_FLOAT(0.1)) - EVT_ADDF(LVar6, EVT_FLOAT(0.8)) - EVT_CALL(SetNpcSpeed, NPC_SELF, LVar6) - EVT_CALL(NpcMoveTo, NPC_SELF, LVar4, LVar2, 0) - EVT_END_LOOP - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80243E90) = { - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_80243D28))) - EVT_CALL(SetNpcFlagBits, NPC_SELF, ((NPC_FLAG_HAS_SHADOW)), FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80243ECC) = { - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_80243D28))) - EVT_CALL(SetNpcFlagBits, NPC_SELF, ((NPC_FLAG_HAS_SHADOW)), FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80243F08) = { - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_80243D28))) - EVT_CALL(SetNpcFlagBits, NPC_SELF, ((NPC_FLAG_HAS_SHADOW)), FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80243F44) = { - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_80243D28))) - EVT_CALL(SetNpcFlagBits, NPC_SELF, ((NPC_FLAG_HAS_SHADOW)), FALSE) - EVT_RETURN - EVT_END -}; - -StaticNpc N(npcGroup_80243F80)[] = { - { - .id = 5, - .settings = &N(npcSettings_80241C3C), - .pos = { 36.0f, 277.0f, 140.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, - .init = &N(init_80243E90), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - }, - { - .id = 6, - .settings = &N(npcSettings_80241C3C), - .pos = { 180.0f, 285.0f, 182.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, - .init = &N(init_80243ECC), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - }, - { - .id = 7, - .settings = &N(npcSettings_80241C3C), - .pos = { 349.0f, 286.0f, 152.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, - .init = &N(init_80243F08), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - }, - { - .id = 8, - .settings = &N(npcSettings_80241C3C), - .pos = { 490.0f, 324.0f, 128.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, - .init = &N(init_80243F44), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - }, -}; - -NpcGroupList N(npcGroupList_80244740) = { - NPC_GROUP(N(npcGroup_80243378)), - NPC_GROUP(N(npcGroup_80243568)), - NPC_GROUP(N(npcGroup_80243758)), - NPC_GROUP(N(npcGroup_80243948)), - NPC_GROUP(N(npcGroup_80243B38)), - {}, -}; - -NpcGroupList N(npcGroupList_80244788) = { - NPC_GROUP(N(npcGroup_80243378)), - NPC_GROUP(N(npcGroup_80243568)), - NPC_GROUP(N(npcGroup_80243758)), - NPC_GROUP(N(npcGroup_80243948)), - NPC_GROUP(N(npcGroup_80243B38)), - NPC_GROUP(N(npcGroup_80243F80)), - {}, -}; - -static s32 N(pad_47DC) = { - 0x00000000, -}; - -EvtScript N(makeEntities) = { - EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 300, 237, 60, 0, 343, MAKE_ENTITY_END) - EVT_CALL(AssignBlockFlag, GF_ARN03_ItemBlock_Coin) - EVT_CALL(MakeEntity, EVT_PTR(Entity_SavePoint), 250, 237, 125, 0, MAKE_ENTITY_END) - EVT_RETURN - EVT_END -}; - -#include "world/common/StashVars.inc.c" - -#include "world/common/GetItemName.inc.c" - -#include "world/common/atomic/ItemChoice_PartA.inc.c" - -#include "world/common/atomic/MakeKeyChoice.inc.c" diff --git a/src/world/area_arn/arn_04/arn_04.h b/src/world/area_arn/arn_04/arn_04.h index 1d4a703de4..c18e4d5215 100644 --- a/src/world/area_arn/arn_04/arn_04.h +++ b/src/world/area_arn/arn_04/arn_04.h @@ -2,17 +2,22 @@ /// @brief Gusty Gulch - Wasteland Ascent 2 #include "common.h" -#include "../arn.h" #include "message_ids.h" #include "map.h" +#include "../arn.h" +#include "mapfs/arn_04_shape.h" +#include "mapfs/arn_04_hit.h" + +#include "sprite/npc/Paragoomba.h" +#include "sprite/npc/Goomba.h" +#include "sprite/npc/Cleft.h" + +enum { + NPC_HyperParagoomba = 0, + NPC_HyperGoomba = 1, + NPC_HyperCleft_01 = 2, + NPC_HyperCleft_02 = 3, +}; + #define NAMESPACE arn_04 - -ApiStatus N(PatrolNoAttackAI_Main)(Evt* script, s32 isInitialCall); -ApiStatus N(FlyingAI_Main)(Evt* script, s32 isInitialCall); -ApiStatus N(CleftAI_Main)(Evt* script, s32 isInitialCall); - -extern EvtScript N(main); -extern EvtScript N(802433D0); -extern NpcGroupList N(npcGroupList_80244000); -extern EvtScript N(makeEntities); diff --git a/src/world/area_arn/arn_04/header.c b/src/world/area_arn/arn_04/arn_04_0_header.c similarity index 53% rename from src/world/area_arn/arn_04/header.c rename to src/world/area_arn/arn_04/arn_04_0_header.c index 5bdd57258f..1891dcd990 100644 --- a/src/world/area_arn/arn_04/header.c +++ b/src/world/area_arn/arn_04/arn_04_0_header.c @@ -1,24 +1,25 @@ #include "arn_04.h" -#include "message_ids.h" -EntryList N(entryList) = { - { -585.0, 60.0, 150.0, 90.0 }, - { 820.0, 285.0, 150.0, 270.0 }, +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [arn_04_ENTRY_0] { -585.0, 60.0, 150.0, 90.0 }, + [arn_04_ENTRY_1] { 820.0, 285.0, 150.0, 270.0 }, }; MapSettings N(settings) = { - .main = &N(main), - .entryList = &N(entryList), - .entryCount = ENTRY_COUNT(N(entryList)), + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), .background = &gBackgroundImage, .tattle = { MSG_MapTattle_arn_04 }, }; -EvtScript N(802433D0) = { +EvtScript N(EVS_SetupMusic) = { EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-29) + EVT_CASE_LT(STORY_CH3_TUBBA_WOKE_UP) EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) - EVT_CASE_LT(-16) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) EVT_CASE_DEFAULT EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) diff --git a/src/world/area_arn/arn_04/arn_04_1_main.c b/src/world/area_arn/arn_04/arn_04_1_main.c new file mode 100644 index 0000000000..eb6f141523 --- /dev/null +++ b/src/world/area_arn/arn_04/arn_04_1_main.c @@ -0,0 +1,30 @@ +#include "arn_04.h" +#include "entity.h" + +extern EvtScript N(EVS_SetupMusic); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(DefaultNPCs); + +EvtScript N(EVS_ExitWalk_arn_02_1) = EVT_EXIT_WALK(60, arn_04_ENTRY_0, "arn_02", arn_02_ENTRY_1); +EvtScript N(EVS_ExitWalk_dgb_00_0) = EVT_EXIT_WALK(60, arn_04_ENTRY_1, "dgb_00", dgb_00_ENTRY_0); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_arn_02_1)), TRIGGER_FLOOR_ABOVE, COLLIDER_deiliw, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_dgb_00_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deilie, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_GUSTY_GULCH) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_DEFAULT() + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_04/arn_04_2_npc.c b/src/world/area_arn/arn_04/arn_04_2_npc.c new file mode 100644 index 0000000000..7df762badc --- /dev/null +++ b/src/world/area_arn/arn_04/arn_04_2_npc.c @@ -0,0 +1,105 @@ +#include "arn_04.h" + +#include "world/common/enemy/complete/HyperGoomba_Patrol.inc.c" +#include "world/common/enemy/complete/HyperParagoomba.inc.c" +#include "world/common/enemy/complete/HyperCleft.inc.c" + +StaticNpc N(NpcData_HyperParagoomba) = { + .id = NPC_HyperParagoomba, + .settings = &N(NpcSettings_HyperParagoomba), + .pos = { -350.0f, 180.0f, 150.0f }, + .yaw = 90, + .flags = NPC_FLAG_LOCK_ANIMS, + .drops = HYPER_PARAGOOMBA_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { -350, 180, 150 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { -350, 180, 150 }, + .detectSize = { 150 }, + } + }, + .animations = HYPER_PARAGOOMBA_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_HyperGoomba) = { + .id = NPC_HyperGoomba, + .settings = &N(NpcSettings_HyperGoomba_Patrol), + .pos = { 360.0f, 208.0f, 100.0f }, + .yaw = 90, + .flags = NPC_FLAG_LOCK_ANIMS, + .drops = HYPER_GOOMBA_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 360, 208, 100 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 360, 208, 100 }, + .detectSize = { 150 }, + } + }, + .animations = HYPER_GOOMBA_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_HyperCleft_01) = { + .id = NPC_HyperCleft_01, + .settings = &N(NpcSettings_HyperCleft), + .pos = { 150.0f, 177.0f, 160.0f }, + .yaw = 90, + .flags = NPC_FLAG_LOCK_ANIMS, + .drops = HYPER_CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 150, 177, 160 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 150, 177, 160 }, + .detectSize = { 150 }, + } + }, + .animations = HYPER_CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_HyperCleft_02) = { + .id = NPC_HyperCleft_02, + .settings = &N(NpcSettings_HyperCleft), + .pos = { 550.0f, 230.0f, 125.0f }, + .yaw = 90, + .flags = NPC_FLAG_LOCK_ANIMS, + .drops = HYPER_CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 550, 230, 125 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 550, 230, 125 }, + .detectSize = { 150 }, + } + }, + .animations = HYPER_CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_HyperParagoomba), BTL_ARN_FORMATION_09, BTL_ARN_STAGE_00), + NPC_GROUP(N(NpcData_HyperGoomba), BTL_ARN_FORMATION_03, BTL_ARN_STAGE_00), + NPC_GROUP(N(NpcData_HyperCleft_01), BTL_ARN_FORMATION_0C, BTL_ARN_STAGE_00), + NPC_GROUP(N(NpcData_HyperCleft_02), BTL_ARN_FORMATION_0E, BTL_ARN_STAGE_00), + {} +}; diff --git a/src/world/area_arn/arn_04/arn_04_3_entity.c b/src/world/area_arn/arn_04/arn_04_3_entity.c new file mode 100644 index 0000000000..a89cfa132a --- /dev/null +++ b/src/world/area_arn/arn_04/arn_04_3_entity.c @@ -0,0 +1,14 @@ +#include "arn_04.h" +#include "entity.h" + +EvtScript N(EVS_MakeEntities) = { + EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 450, 285, 120, 0, ITEM_SUPER_SHROOM, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_ARN04_ItemBlock_SuperShroom) + EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 720, 333, 75, 0, ITEM_COIN, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_ARN04_ItemBlock_Coin) + EVT_CALL(MakeEntity, EVT_PTR(Entity_MulticoinBlock), 600, 290, 200, 0, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_ARN04_MultiCoinBrick) + EVT_CALL(MakeItemEntity, ITEM_STAR_PIECE, 540, 230, 13, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_ARN04_Item_StarPiece) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_04/events.c b/src/world/area_arn/arn_04/events.c deleted file mode 100644 index a858aedc6b..0000000000 --- a/src/world/area_arn/arn_04/events.c +++ /dev/null @@ -1,304 +0,0 @@ -#include "arn_04.h" -#include "sprite/npc/Paragoomba.h" -#include "sprite/npc/Goomba.h" -#include "sprite/npc/Cleft.h" -#include "effects.h" -#include "entity.h" - -EvtScript N(exitWalk_80243480) = EVT_EXIT_WALK(60, 0, "arn_02", 1); - -EvtScript N(exitWalk_802434DC) = EVT_EXIT_WALK(60, 1, "dgb_00", 0); - -EvtScript N(80243538) = { - EVT_BIND_TRIGGER(N(exitWalk_80243480), TRIGGER_FLOOR_ABOVE, 1, 1, 0) - EVT_BIND_TRIGGER(N(exitWalk_802434DC), TRIGGER_FLOOR_ABOVE, 6, 1, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(main) = { - EVT_SET(GB_WorldLocation, 34) - EVT_CALL(SetSpriteShading, -1) - EVT_CALL(SetCamPerspective, 0, 3, 25, 16, 4096) - EVT_CALL(SetCamBGColor, 0, 0, 0, 0) - EVT_CALL(SetCamEnabled, 0, 1) - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_80244000))) - EVT_EXEC_WAIT(N(makeEntities)) - EVT_EXEC(N(802433D0)) - EVT_SET(LVar0, EVT_PTR(N(80243538))) - EVT_EXEC(EnterWalk) - EVT_WAIT(1) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_3654)[] = { - 0x00000000, 0x00000000, 0x00000000, -}; - -MobileAISettings N(npcAISettings_80243660) = { - .moveSpeed = 1.5f, - .moveTime = 30, - .waitTime = 30, - .alertRadius = 130.0f, - .playerSearchInterval = 1, - .chaseSpeed = 2.5f, - .chaseTurnRate= 180, - .chaseUpdateInterval = 3, - .chaseRadius = 150.0f, - .unk_AI_2C = 1, -}; - -EvtScript N(npcAI_80243690) = { - EVT_CALL(N(PatrolNoAttackAI_Main), EVT_PTR(N(npcAISettings_80243660))) - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_802436B0) = { - .height = 20, - .radius = 23, - .ai = &N(npcAI_80243690), - .onHit = &EnemyNpcHit, - .onDefeat = &EnemyNpcDefeat, - .level = 12, -}; - -#include "world/common/enemy/PatrolNoAttackAI.inc.c" - -f32 N(FlyingAI_JumpVels)[] = { - 4.5f, 3.5f, 2.6f, 2.0f, - 1.5f, 20.0f, -}; - -#include "world/common/enemy/FlyingAI.inc.c" - -MobileAISettings N(npcAISettings_802436F4) = { - .moveSpeed = 1.8f, - .moveTime = 60, - .waitTime = 15, - .alertRadius = 120.0f, - .playerSearchInterval = 3, - .chaseSpeed = 4.0f, - .chaseTurnRate= 5, - .chaseUpdateInterval = 1, - .chaseRadius = 150.0f, - .unk_AI_2C = 1, -}; - -EvtScript N(npcAI_80243724) = { - EVT_CALL(SetSelfVar, 0, 1) - EVT_CALL(SetSelfVar, 5, -850) - EVT_CALL(SetSelfVar, 6, 60) - EVT_CALL(SetSelfVar, 1, 700) - EVT_CALL(N(FlyingAI_Main), EVT_PTR(N(npcAISettings_802436F4))) - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_80243794) = { - .height = 18, - .radius = 20, - .ai = &N(npcAI_80243724), - .onHit = &EnemyNpcHit, - .onDefeat = &EnemyNpcDefeat, - .level = 12, - .actionFlags = 1, -}; - -MobileAISettings N(npcAISettings_802437C0) = { - .moveSpeed = 1.0f, - .moveTime = 30, - .waitTime = 30, - .alertRadius = 120.0f, - .playerSearchInterval = 3, - .chaseSpeed = 8.5f, - .chaseTurnRate= 60, - .chaseUpdateInterval = 3, - .chaseRadius = 100.0f, - .chaseOffsetDist = 60.0f, - .unk_AI_2C = 1, -}; - -EvtScript N(npcAI_802437F0) = { - EVT_CALL(N(CleftAI_Main), EVT_PTR(N(npcAISettings_802437C0)), 8) - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_80243814) = { - .height = 24, - .radius = 24, - .ai = &N(npcAI_802437F0), - .onHit = &EnemyNpcHit, - .onDefeat = &EnemyNpcDefeat, - .level = 15, -}; - -StaticNpc N(npcGroup_80243840) = { - .id = 0, - .settings = &N(npcSettings_80243794), - .pos = { -350.0f, 180.0f, 150.0f }, - .flags = NPC_FLAG_LOCK_ANIMS, - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 20, - { ITEM_DRIED_SHROOM, 10, 0 }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .maxCoinBonus = 2, - }, - .territory = { .temp = { -350, 180, 150, 30, 0, -32767, 0, -350, 180, 150, 150 }}, - .animations = { - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Walk, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Hurt, - ANIM_Paragoomba_Hyper_Hurt, - ANIM_Paragoomba_Hyper_Dive, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -StaticNpc N(npcGroup_80243A30) = { - .id = 1, - .settings = &N(npcSettings_802436B0), - .pos = { 360.0f, 208.0f, 100.0f }, - .flags = NPC_FLAG_LOCK_ANIMS, - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 20, - { ITEM_DRIED_SHROOM, 10, 0 }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .maxCoinBonus = 2, - }, - .territory = { .temp = { 360, 208, 100, 30, 0, -32767, 0, 360, 208, 100, 150 }}, - .animations = { - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Walk, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Hurt, - ANIM_Goomba_Hyper_Hurt, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -StaticNpc N(npcGroup_80243C20) = { - .id = 2, - .settings = &N(npcSettings_80243814), - .pos = { 150.0f, 177.0f, 160.0f }, - .flags = NPC_FLAG_LOCK_ANIMS, - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = STANDARD_HEART_DROPS(3), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, - .territory = { .temp = { 150, 177, 160, 30, 0, -32767, 0, 150, 177, 160, 150 }}, - .animations = { - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim06, - ANIM_Cleft_Hyper_Anim07, - ANIM_Cleft_Hyper_Anim07, - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim08, - ANIM_Cleft_Hyper_Anim08, - ANIM_Cleft_Hyper_Anim14, - ANIM_Cleft_Hyper_Anim17, - ANIM_Cleft_Hyper_Anim13, - ANIM_Cleft_Hyper_Anim15, - ANIM_Cleft_Hyper_Anim10, - ANIM_Cleft_Hyper_Anim11, - ANIM_Cleft_Hyper_Anim16, - ANIM_Cleft_Hyper_Anim00, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -StaticNpc N(npcGroup_80243E10) = { - .id = 3, - .settings = &N(npcSettings_80243814), - .pos = { 550.0f, 230.0f, 125.0f }, - .flags = NPC_FLAG_LOCK_ANIMS, - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = STANDARD_HEART_DROPS(3), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, - .territory = { .temp = { 550, 230, 125, 30, 0, -32767, 0, 550, 230, 125, 150 }}, - .animations = { - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim06, - ANIM_Cleft_Hyper_Anim07, - ANIM_Cleft_Hyper_Anim07, - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim02, - ANIM_Cleft_Hyper_Anim08, - ANIM_Cleft_Hyper_Anim08, - ANIM_Cleft_Hyper_Anim14, - ANIM_Cleft_Hyper_Anim17, - ANIM_Cleft_Hyper_Anim13, - ANIM_Cleft_Hyper_Anim15, - ANIM_Cleft_Hyper_Anim10, - ANIM_Cleft_Hyper_Anim11, - ANIM_Cleft_Hyper_Anim16, - ANIM_Cleft_Hyper_Anim00, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -NpcGroupList N(npcGroupList_80244000) = { - NPC_GROUP(N(npcGroup_80243840), 0x0E09, 0x00), - NPC_GROUP(N(npcGroup_80243A30), 0x0E03, 0x00), - NPC_GROUP(N(npcGroup_80243C20), 0x0E0C, 0x00), - NPC_GROUP(N(npcGroup_80243E10), 0x0E0E, 0x00), - {}, -}; - -static s32 N(pad_403C)[] = { - 0x00000000, -}; - -EvtScript N(makeEntities) = { - EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 450, 285, 120, 0, 140, MAKE_ENTITY_END) - EVT_CALL(AssignBlockFlag, GF_ARN04_ItemBlock_SuperShroom) - EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 720, 333, 75, 0, 343, MAKE_ENTITY_END) - EVT_CALL(AssignBlockFlag, GF_ARN04_ItemBlock_Coin) - EVT_CALL(MakeEntity, EVT_PTR(Entity_MulticoinBlock), 600, 290, 200, 0, MAKE_ENTITY_END) - EVT_CALL(AssignBlockFlag, GF_ARN04_MultiCoinBrick) - EVT_CALL(MakeItemEntity, ITEM_STAR_PIECE, 540, 230, 13, 17, GF_ARN04_Item_StarPiece) - EVT_RETURN - EVT_END -}; - -#include "world/common/enemy/CleftAI.inc.c" diff --git a/src/world/area_arn/arn_05/arn_05.h b/src/world/area_arn/arn_05/arn_05.h index cfb35f4dad..50d34a5f8a 100644 --- a/src/world/area_arn/arn_05/arn_05.h +++ b/src/world/area_arn/arn_05/arn_05.h @@ -2,21 +2,33 @@ /// @brief Gusty Gulch - Ghost Town 2 #include "common.h" -#include "../arn.h" #include "message_ids.h" #include "map.h" +#include "../arn.h" +#include "mapfs/arn_05_shape.h" +#include "mapfs/arn_05_hit.h" + +#include "sprite/npc/Boo.h" +#include "sprite/npc/WorldBow.h" +#include "sprite/npc/WorldTubba.h" + +enum { + NPC_Boo_01 = 0, + NPC_Boo_02 = 1, + NPC_Boo_03 = 2, + NPC_Boo_04 = 3, + NPC_Boo_05 = 4, + NPC_Tubba = 5, + NPC_Boo_06 = 6, + NPC_Boo_07 = 7, + NPC_Boo_08 = 8, + NPC_Boo_09 = 9, +}; + +enum { + MV_Unk_00 = MapVar(0), + MV_Unk_01 = MapVar(1), +}; + #define NAMESPACE arn_05 - -ApiStatus func_802D2B50(void); - -ApiStatus N(SwitchToPartner)(Evt* script, s32 isInitialCall); -ApiStatus N(func_802412B0_BE8E90)(Evt* script, s32 isInitialCall); -ApiStatus N(func_8024113C_BE8D1C)(Evt* script, s32 isInitialCall); - -extern EvtScript N(makeEntities); -extern EvtScript N(main); -extern EvtScript N(80241360); -extern EvtScript N(802441FC); -extern NpcGroupList N(npcGroupList_80244FC8); -extern NpcGroupList N(npcGroupList_80244FA4); diff --git a/src/world/area_arn/arn_05/header.c b/src/world/area_arn/arn_05/arn_05_0_header.c similarity index 53% rename from src/world/area_arn/arn_05/header.c rename to src/world/area_arn/arn_05/arn_05_0_header.c index efc3308391..dce2c52c58 100644 --- a/src/world/area_arn/arn_05/header.c +++ b/src/world/area_arn/arn_05/arn_05_0_header.c @@ -1,26 +1,28 @@ -#include "arn_05.h" -#include "message_ids.h" -EntryList N(entryList) = { - { -77.0f, 135.0f, 150.0f, 90.0f }, - { 577.0f, 200.0f, 150.0f, 270.0f }, +#include "arn_05.h" + +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [arn_05_ENTRY_0] { -77.0, 135.0, 150.0, 90.0 }, + [arn_05_ENTRY_1] { 577.0, 200.0, 150.0, 270.0 }, }; MapSettings N(settings) = { - .main = &N(main), - .entryList = &N(entryList), - .entryCount = ENTRY_COUNT(N(entryList)), + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), .background = &gBackgroundImage, .tattle = { MSG_MapTattle_arn_05 }, }; -EvtScript N(80241360) = { +EvtScript N(EVS_SetupMusic) = { EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-33) + EVT_CASE_LT(STORY_CH3_SAW_TUBBA_EAT_BOO) EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) - EVT_CASE_LT(-29) + EVT_CASE_LT(STORY_CH3_TUBBA_WOKE_UP) EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) - EVT_CASE_LT(-16) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) EVT_CASE_DEFAULT EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) diff --git a/src/world/area_arn/arn_05/arn_05_1_main.c b/src/world/area_arn/arn_05/arn_05_1_main.c new file mode 100644 index 0000000000..16fde3d7da --- /dev/null +++ b/src/world/area_arn/arn_05/arn_05_1_main.c @@ -0,0 +1,48 @@ +#include "arn_05.h" + +extern EvtScript N(EVS_SetupTubbaRaid); +extern EvtScript N(EVS_SetupMusic); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(DefaultNPCs); +extern NpcGroupList N(NpcGroup1); + +EvtScript N(EVS_ExitWalk_arn_03_1) = EVT_EXIT_WALK(60, arn_05_ENTRY_0, "arn_03", arn_03_ENTRY_1); +EvtScript N(EVS_ExitWalk_arn_02_0) = EVT_EXIT_WALK(60, arn_05_ENTRY_1, "arn_02", arn_02_ENTRY_0); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_arn_03_1)), TRIGGER_FLOOR_ABOVE, COLLIDER_deiliw, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_arn_02_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deilie, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(GetLoadType, LVar1) + EVT_IF_EQ(LVar1, LOAD_FROM_FILE_SELECT) + EVT_EXEC(EnterSavePoint) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_RETURN + EVT_END_IF + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_GUSTY_GULCH) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_DEFAULT() + EVT_IF_LT(GB_StoryProgress, STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_ELSE + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(NpcGroup1))) + EVT_END_IF + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_SetupTubbaRaid)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_EXEC(N(EVS_EnterMap)) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_05/arn_05_2_npc.c b/src/world/area_arn/arn_05/arn_05_2_npc.c new file mode 100644 index 0000000000..eb110a3dfc --- /dev/null +++ b/src/world/area_arn/arn_05/arn_05_2_npc.c @@ -0,0 +1,972 @@ +#include "arn_05.h" + +extern EvtScript(N(EVS_SetupMusic)); + +NpcSettings N(NpcSettings_Tubba) = { + .height = 90, + .radius = 65, + .level = 13, + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, +}; + +#include "world/common/npc/Boo_Patrol.inc.c" +#include "world/common/npc/Boo.inc.c" + +EvtScript N(EVS_NpcIdle_Boo_01) = { + EVT_RETURN + EVT_END +}; + +API_CALLABLE(N(AwaitCDownPress)) { + if (gGameStatusPtr->pressedButtons[0] & BUTTON_C_DOWN) { + return ApiStatus_DONE2; + } else { + return ApiStatus_BLOCK; + } +} + +#include "world/common/SwitchToPartner.inc.c" + +EvtScript N(EVS_NpcInteract_Boo_01) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_IF_EQ(AF_ARN_06, FALSE) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0092) + EVT_SET(AF_ARN_06, TRUE) + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0093) + EVT_SET(AF_ARN_06, FALSE) + EVT_END_IF + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0095) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0096) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0097) + EVT_CASE_GE(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0098) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_01_Mourning) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0094) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_02) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_IF_EQ(AF_ARN_07, FALSE) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0099) + EVT_SET(AF_ARN_07, TRUE) + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009A) + EVT_SET(AF_ARN_07, FALSE) + EVT_END_IF + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009C) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009D) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009E) + EVT_CASE_GE(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009F) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_02_Mourning) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009B) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_03) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00A9) + EVT_CASE_GE(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_IF_EQ(GF_ARN05_GaveGiftAdvice, TRUE) + EVT_IF_EQ(AF_ARN_09, TRUE) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Wave, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AE) + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B0) + EVT_END_IF + EVT_ELSE + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Conceal) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Conceal, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AA) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Cower) + EVT_CALL(ContinueSpeech, NPC_SELF, ANIM_Boo_Tan_Cower, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AB) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Confused) + EVT_CALL(ContinueSpeech, NPC_SELF, ANIM_Boo_Tan_Confused, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AC) + EVT_CALL(ShowChoice, MSG_Choice_001E) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(0) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Wave) + EVT_CALL(ContinueSpeech, NPC_SELF, ANIM_Boo_Tan_Wave, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AD) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Idle) + EVT_SET(GF_ARN05_GaveGiftAdvice, TRUE) + EVT_SET(AF_ARN_09, TRUE) + EVT_CASE_EQ(1) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Wave) + EVT_CALL(ContinueSpeech, NPC_SELF, ANIM_Boo_Tan_Wave, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AD) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Idle) + EVT_SET(GF_ARN05_GaveGiftAdvice, TRUE) + EVT_SET(AF_ARN_09, TRUE) + EVT_CASE_EQ(2) + EVT_CALL(ContinueSpeech, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AF) + EVT_END_SWITCH + EVT_END_IF + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_04) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B1) + EVT_CASE_GE(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B2) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_05) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_IF_EQ(AF_ARN_08, FALSE) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B3) + EVT_SET(AF_ARN_08, TRUE) + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B4) + EVT_SET(AF_ARN_08, FALSE) + EVT_END_IF + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B6) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B7) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B8) + EVT_CASE_GE(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B9) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_05_Mourning) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B5) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_01) = { + EVT_IF_LT(GB_StoryProgress, STORY_CH3_SAW_TUBBA_EAT_BOO) + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo_01))) + EVT_END_IF + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Boo_01))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_02) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Boo_02))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_03) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Boo_03))) + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_SAW_TUBBA_EAT_BOO) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_100, TRUE) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CASE_GE(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_04) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Boo_04))) + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_SAW_TUBBA_EAT_BOO) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_CASE_GE(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_05) = { + EVT_IF_LT(GB_StoryProgress, STORY_CH3_SAW_TUBBA_EAT_BOO) + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo_01))) + EVT_END_IF + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Boo_05))) + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_Boo_01)[] = { + { + .id = NPC_Boo_01, + .settings = &N(NpcSettings_Boo_Patrol), + .pos = { 55.0f, 195.0f, 160.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_Boo_01), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .territory = { + .patrol = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .numPoints = 2, + .points = { + { 55, 10, 160 }, + { 75, 10, 160 }, + }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 55, 195, 160 }, + .detectSize = { 50 }, + } + }, + .animations = { + .idle = ANIM_Boo_Tan_Idle, + .walk = ANIM_Boo_Tan_Walk, + .run = ANIM_Boo_Tan_Run, + .chase = ANIM_Boo_Tan_Run, + .anim_4 = ANIM_Boo_Tan_Idle, + .anim_5 = ANIM_Boo_Tan_Idle, + .death = ANIM_Boo_Tan_Still, + .hit = ANIM_Boo_Tan_Still, + .anim_8 = ANIM_Boo_Tan_Confused, + .anim_9 = ANIM_Boo_Tan_Run, + .anim_A = ANIM_Boo_Tan_Run, + .anim_B = ANIM_Boo_Tan_Run, + .anim_C = ANIM_Boo_Tan_Run, + .anim_D = ANIM_Boo_Tan_Run, + .anim_E = ANIM_Boo_Tan_Run, + .anim_F = ANIM_Boo_Tan_Run, + }, + .tattle = MSG_NpcTattle_ARN_BooD, + }, + { + .id = NPC_Boo_02, + .settings = &N(NpcSettings_Boo), + .pos = { 160.0f, 191.0f, 250.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_Boo_02), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Boo_Tan_Idle, + .walk = ANIM_Boo_Tan_Walk, + .run = ANIM_Boo_Tan_Run, + .chase = ANIM_Boo_Tan_Run, + .anim_4 = ANIM_Boo_Tan_Idle, + .anim_5 = ANIM_Boo_Tan_Idle, + .death = ANIM_Boo_Tan_Still, + .hit = ANIM_Boo_Tan_Still, + .anim_8 = ANIM_Boo_Tan_Confused, + .anim_9 = ANIM_Boo_Tan_Run, + .anim_A = ANIM_Boo_Tan_Run, + .anim_B = ANIM_Boo_Tan_Run, + .anim_C = ANIM_Boo_Tan_Run, + .anim_D = ANIM_Boo_Tan_Run, + .anim_E = ANIM_Boo_Tan_Run, + .anim_F = ANIM_Boo_Tan_Run, + }, + .tattle = MSG_NpcTattle_ARN_BooE, + }, + { + .id = NPC_Boo_03, + .settings = &N(NpcSettings_Boo), + .pos = { 390.0f, 190.0f, 255.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_Boo_03), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Boo_Tan_Idle, + .walk = ANIM_Boo_Tan_Walk, + .run = ANIM_Boo_Tan_Run, + .chase = ANIM_Boo_Tan_Run, + .anim_4 = ANIM_Boo_Tan_Idle, + .anim_5 = ANIM_Boo_Tan_Idle, + .death = ANIM_Boo_Tan_Still, + .hit = ANIM_Boo_Tan_Still, + .anim_8 = ANIM_Boo_Tan_Confused, + .anim_9 = ANIM_Boo_Tan_Run, + .anim_A = ANIM_Boo_Tan_Run, + .anim_B = ANIM_Boo_Tan_Run, + .anim_C = ANIM_Boo_Tan_Run, + .anim_D = ANIM_Boo_Tan_Run, + .anim_E = ANIM_Boo_Tan_Run, + .anim_F = ANIM_Boo_Tan_Run, + }, + .tattle = MSG_NpcTattle_ARN_BooF, + }, + { + .id = NPC_Boo_04, + .settings = &N(NpcSettings_Boo), + .pos = { 503.0f, 206.0f, 210.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_Boo_04), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Boo_Tan_Idle, + .walk = ANIM_Boo_Tan_Walk, + .run = ANIM_Boo_Tan_Run, + .chase = ANIM_Boo_Tan_Run, + .anim_4 = ANIM_Boo_Tan_Idle, + .anim_5 = ANIM_Boo_Tan_Idle, + .death = ANIM_Boo_Tan_Still, + .hit = ANIM_Boo_Tan_Still, + .anim_8 = ANIM_Boo_Tan_Confused, + .anim_9 = ANIM_Boo_Tan_Run, + .anim_A = ANIM_Boo_Tan_Run, + .anim_B = ANIM_Boo_Tan_Run, + .anim_C = ANIM_Boo_Tan_Run, + .anim_D = ANIM_Boo_Tan_Run, + .anim_E = ANIM_Boo_Tan_Run, + .anim_F = ANIM_Boo_Tan_Run, + }, + .tattle = MSG_NpcTattle_ARN_BooG, + }, + { + .id = NPC_Boo_05, + .settings = &N(NpcSettings_Boo_Patrol), + .pos = { 350.0f, 185.0f, 197.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_Boo_05), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .territory = { + .patrol = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .numPoints = 2, + .points = { + { 350, 10, 197 }, + { 330, 10, 197 }, + }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 350, 185, 197 }, + .detectSize = { 50 }, + } + }, + .animations = { + .idle = ANIM_Boo_Tan_Idle, + .walk = ANIM_Boo_Tan_Walk, + .run = ANIM_Boo_Tan_Run, + .chase = ANIM_Boo_Tan_Run, + .anim_4 = ANIM_Boo_Tan_Idle, + .anim_5 = ANIM_Boo_Tan_Idle, + .death = ANIM_Boo_Tan_Still, + .hit = ANIM_Boo_Tan_Still, + .anim_8 = ANIM_Boo_Tan_Confused, + .anim_9 = ANIM_Boo_Tan_Run, + .anim_A = ANIM_Boo_Tan_Run, + .anim_B = ANIM_Boo_Tan_Run, + .anim_C = ANIM_Boo_Tan_Run, + .anim_D = ANIM_Boo_Tan_Run, + .anim_E = ANIM_Boo_Tan_Run, + .anim_F = ANIM_Boo_Tan_Run, + }, + .tattle = MSG_NpcTattle_ARN_BooH, + }, +}; + +EvtScript N(EVS_TubbaWalking) = { + EVT_LOOP(LVar0) + EVT_CALL(PlaySoundAtNpc, NPC_Tubba, SOUND_20F6, 0) + EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 10, EVT_FLOAT(0.5)) + EVT_WAIT(5) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Scene_TubbaRaid) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(NpcFacePlayer, NPC_Boo_03, 1) + EVT_CALL(PlaySoundAtNpc, NPC_Boo_03, SOUND_262, 0) + EVT_CALL(ShowEmote, NPC_Boo_03, EMOTE_EXCLAMATION, -45, 20, TRUE, 0, 0, 0, 0) + EVT_WAIT(20) + EVT_CALL(GetNpcPos, NPC_Boo_03, LVar0, LVar1, LVar2) + EVT_CALL(GetPlayerPos, LVar3, LVar4, LVar5) + EVT_SUB(LVar0, LVar3) + EVT_SUB(LVar0, 50) + EVT_SUB(LVar1, LVar4) + EVT_SUB(LVar2, LVar5) + EVT_CALL(GetNpcPos, NPC_Boo_03, LVar3, LVar4, LVar5) + EVT_SUB(LVar3, LVar0) + EVT_SUB(LVar4, LVar1) + EVT_SUB(LVar5, LVar2) + EVT_CALL(NpcMoveTo, NPC_Boo_03, LVar3, LVar5, 30) + EVT_CALL(SetCamType, CAM_DEFAULT, 6, TRUE) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(5.0)) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 350) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_Boo_03, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00A0) + EVT_CALL(PlaySoundAt, SOUND_20F6, 0, 450, 200, 160) + EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 20, EVT_FLOAT(0.8)) + EVT_CALL(PlaySoundAtNpc, NPC_Boo_01, SOUND_262, 0) + EVT_CALL(PlaySoundAtNpc, NPC_Boo_02, SOUND_262, 0) + EVT_CALL(PlaySoundAtNpc, NPC_Boo_03, SOUND_262, 0) + EVT_CALL(PlaySoundAtNpc, NPC_Boo_05, SOUND_262, 0) + EVT_CALL(ShowEmote, NPC_Boo_01, EMOTE_EXCLAMATION, -45, 20, TRUE, 0, 0, 0, 0) + EVT_CALL(ShowEmote, NPC_Boo_02, EMOTE_EXCLAMATION, -45, 20, TRUE, 0, 0, 0, 0) + EVT_CALL(ShowEmote, NPC_Boo_03, EMOTE_EXCLAMATION, -45, 20, TRUE, 0, 0, 0, 0) + EVT_CALL(ShowEmote, NPC_Boo_05, EMOTE_EXCLAMATION, -45, 20, TRUE, 0, 0, 0, 0) + EVT_CALL(FadeOutMusic, 0, 500) + EVT_CALL(ClearAmbientSounds, 250) + EVT_WAIT(20) + EVT_CALL(InterpNpcYaw, NPC_Boo_03, 90, 1) + EVT_CALL(InterpNpcYaw, NPC_Boo_05, 90, 1) + EVT_WAIT(20) + EVT_CALL(PlaySound, SOUND_BOO_APPEAR) + EVT_SETF(LVar0, EVT_FLOAT(240.0)) + EVT_LOOP(20) + EVT_SUBF(LVar0, EVT_FLOAT(12.0)) + EVT_CALL(func_802CFD30, NPC_Boo_01, 7, LVar0, 0, 0, 0) + EVT_CALL(func_802CFD30, NPC_Boo_02, 7, LVar0, 0, 0, 0) + EVT_CALL(func_802CFD30, NPC_Boo_05, 7, LVar0, 0, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetNpcPos, NPC_Boo_01, 420, 300, 220) + EVT_CALL(SetNpcPos, NPC_Boo_02, 460, 250, 210) + EVT_CALL(SetNpcPos, NPC_Boo_05, 0, -1000, 0) + EVT_CALL(EnableNpcShadow, NPC_Boo_01, FALSE) + EVT_CALL(EnableNpcShadow, NPC_Boo_02, FALSE) + EVT_CALL(EnableNpcShadow, NPC_Boo_05, FALSE) + EVT_CALL(PlaySound, SOUND_BOO_VANISH) + EVT_SETF(LVar0, EVT_FLOAT(0.0)) + EVT_LOOP(20) + EVT_ADDF(LVar0, EVT_FLOAT(12.0)) + EVT_CALL(func_802CFD30, NPC_Boo_01, 7, LVar0, 0, 0, 0) + EVT_CALL(func_802CFD30, NPC_Boo_02, 7, LVar0, 0, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SpeakToPlayer, NPC_Boo_03, ANIM_Boo_Tan_Flail, ANIM_Boo_Tan_Flail, 0, MSG_CH3_00A1) + EVT_CALL(GetCurrentPartnerID, LVar0) + EVT_IF_NE(LVar0, PARTNER_BOW) + EVT_CALL(N(SwitchToPartner), PARTNER_BOW) + EVT_THREAD + EVT_SET(MV_Unk_00, 0) + EVT_CALL(ShowMessageAtScreenPos, MSG_CH3_00A2, 160, 40) + EVT_SET(MV_Unk_00, 1) + EVT_END_THREAD + EVT_WAIT(50) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SetNpcYaw, NPC_PARTNER, 90) + EVT_CALL(EnablePartnerAI) + EVT_LOOP(0) + EVT_WAIT(1) + EVT_IF_EQ(MV_Unk_00, 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_IF + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 0, MSG_CH3_00A3) + EVT_CALL(EnablePartnerAI) + EVT_CALL(InterpPlayerYaw, 90, 0) + EVT_WAIT(5) + EVT_CALL(N(AwaitCDownPress)) + EVT_CALL(CloseMessage) + EVT_CALL(ForceUsePartner) + EVT_WAIT(60) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBAS_MANOR, 1, 8) + EVT_CALL(SetCamType, CAM_DEFAULT, 6, TRUE) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-11.5)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 450) + EVT_CALL(SetCamPosA, CAM_DEFAULT, -40, 206) + EVT_CALL(SetCamPosB, CAM_DEFAULT, 530, 206) + EVT_CALL(SetCamPosC, CAM_DEFAULT, 0, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 426, 190, 194) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SetNpcFlagBits, NPC_Tubba, NPC_FLAG_GRAVITY, TRUE) + EVT_CALL(SetNpcSpeed, NPC_Tubba, EVT_FLOAT(2.5)) + EVT_CALL(SetNpcPos, NPC_Tubba, 675, 200, 180) + EVT_CALL(NpcFaceNpc, NPC_Boo_01, NPC_Tubba, 1) + EVT_CALL(NpcFaceNpc, NPC_Boo_02, NPC_Tubba, 1) + EVT_CALL(SetNpcPos, NPC_Boo_03, 272, 190, 214) + EVT_CALL(PlaySoundAtNpc, NPC_Boo_01, SOUND_262, 0) + EVT_CALL(PlaySoundAtNpc, NPC_Boo_02, SOUND_262, 0) + EVT_CALL(ShowEmote, NPC_Boo_01, EMOTE_EXCLAMATION, 45, 20, TRUE, 0, 0, 0, 0) + EVT_CALL(ShowEmote, NPC_Boo_02, EMOTE_EXCLAMATION, 45, 20, TRUE, 0, 0, 0, 0) + EVT_THREAD + EVT_CALL(PlaySound, SOUND_BOO_APPEAR) + EVT_WAIT(20) + EVT_SETF(LVar0, EVT_FLOAT(240.0)) + EVT_LOOP(20) + EVT_SUBF(LVar0, EVT_FLOAT(12.0)) + EVT_CALL(func_802CFD30, 0, 7, LVar0, 0, 0, 0) + EVT_CALL(func_802CFD30, 1, 7, LVar0, 0, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetNpcPos, NPC_Boo_01, 0, -1000, 0) + EVT_CALL(SetNpcPos, NPC_Boo_02, 0, -1000, 0) + EVT_WAIT(10) + EVT_END_THREAD + EVT_SET(LVar0, 4) + EVT_EXEC(N(EVS_TubbaWalking)) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim09) + EVT_CALL(NpcMoveTo, NPC_Tubba, 550, 196, 0) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim06) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-11.5)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 375) + EVT_CALL(SetCamPosA, CAM_DEFAULT, -40, 206) + EVT_CALL(SetCamPosB, CAM_DEFAULT, 530, 206) + EVT_CALL(SetCamPosC, CAM_DEFAULT, 0, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 426, 190, 194) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_WAIT(30) + EVT_SET(MV_Unk_01, 0) + EVT_THREAD + EVT_SET(LVar0, 7) + EVT_EXEC(N(EVS_TubbaWalking)) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim09) + EVT_CALL(NpcMoveTo, NPC_Tubba, 370, 220, 0) + EVT_CALL(GetNpcPos, NPC_Boo_03, LVar0, LVar1, LVar2) + EVT_CALL(NpcMoveTo, NPC_Tubba, 330, LVar2, 0) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim06) + EVT_SET(MV_Unk_01, 1) + EVT_END_THREAD + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-11.5)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 375) + EVT_CALL(SetCamPosA, CAM_DEFAULT, -40, 206) + EVT_CALL(SetCamPosB, CAM_DEFAULT, 530, 206) + EVT_CALL(SetCamPosC, CAM_DEFAULT, 0, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 240, 169, 206) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_Boo_03, ANIM_Boo_Tan_Flail, ANIM_Boo_Tan_Flail, 0, MSG_CH3_00A4) + EVT_WAIT(15) + EVT_LOOP(0) + EVT_WAIT(1) + EVT_IF_EQ(MV_Unk_01, 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(NpcFaceNpc, NPC_Boo_03, NPC_Tubba, 1) + EVT_WAIT(30) + EVT_CALL(SpeakToPlayer, NPC_Boo_03, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_00A5) + EVT_CALL(SetNpcAnimation, NPC_Boo_03, ANIM_Boo_Tan_Cower) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim1E) + EVT_CALL(SetNpcJumpscale, NPC_Boo_03, EVT_FLOAT(0.0)) + EVT_CALL(NpcJump1, NPC_Boo_03, 265, 206, 212, 3) + EVT_WAIT(20) + EVT_CALL(SpeakToPlayer, NPC_Tubba, ANIM_WorldTubba_Anim1E, ANIM_WorldTubba_Anim1E, 5, MSG_CH3_00A6) + EVT_CALL(SetNpcPos, NPC_Boo_03, 303, 237, 228) + EVT_CALL(SetNpcAnimation, NPC_Boo_03, ANIM_Boo_Tan_Flail) + EVT_CALL(EnableNpcShadow, NPC_Boo_03, FALSE) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim1F) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(5.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-17.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 250) + EVT_CALL(SetCamPosA, CAM_DEFAULT, -40, 206) + EVT_CALL(SetCamPosB, CAM_DEFAULT, 530, 206) + EVT_CALL(SetCamPosC, CAM_DEFAULT, 0, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 280, 169, 206) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_THREAD + EVT_WAIT(50) + EVT_CALL(PlaySoundAtNpc, NPC_Tubba, SOUND_315, 0) + EVT_END_THREAD + EVT_WAIT(40) + EVT_CALL(SetNpcPos, NPC_Boo_03, 0, -1000, 0) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim20) + EVT_WAIT(80) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-11.5)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 375) + EVT_CALL(SetCamPosA, CAM_DEFAULT, -40, 206) + EVT_CALL(SetCamPosB, CAM_DEFAULT, 530, 206) + EVT_CALL(SetCamPosC, CAM_DEFAULT, 0, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 240, 169, 206) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim06) + EVT_WAIT(15) + EVT_CALL(SpeakToPlayer, NPC_Tubba, ANIM_WorldTubba_Anim21, ANIM_WorldTubba_Anim06, 5, MSG_CH3_00A7) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim21) + EVT_CALL(GetNpcPos, NPC_Tubba, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, -50) + EVT_ADD(LVar1, 50) + EVT_ADD(LVar2, 10) + EVT_PLAY_EFFECT(EFFECT_LANDING_DUST, 1, LVar0, LVar1, LVar2, 10) + EVT_WAIT(20) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim06) + EVT_CALL(InterpNpcYaw, NPC_Tubba, 90, 1) + EVT_WAIT(30) + EVT_SET(LVar0, 7) + EVT_EXEC(N(EVS_TubbaWalking)) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim09) + EVT_CALL(NpcMoveTo, NPC_Tubba, 370, 220, 0) + EVT_CALL(NpcMoveTo, NPC_Tubba, 550, 196, 0) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim06) + EVT_CALL(SetNpcPos, NPC_Tubba, 0, -1000, 0) + EVT_CALL(SetNpcFlagBits, NPC_Tubba, NPC_FLAG_GRAVITY, FALSE) + EVT_CALL(NpcFacePlayer, NPC_Boo_01, 3) + EVT_CALL(SetNpcPos, NPC_Boo_01, 55, 195, 160) + EVT_CALL(SetNpcPos, NPC_Boo_02, 160, 191, 250) + EVT_CALL(SetNpcPos, NPC_Boo_05, 350, 185, 197) + EVT_CALL(EnableNpcShadow, NPC_Boo_01, TRUE) + EVT_CALL(EnableNpcShadow, NPC_Boo_02, TRUE) + EVT_CALL(EnableNpcShadow, NPC_Boo_05, TRUE) + EVT_CALL(PlaySound, SOUND_BOO_VANISH) + EVT_SETF(LVar0, EVT_FLOAT(0.0)) + EVT_LOOP(20) + EVT_ADDF(LVar0, EVT_FLOAT(12.5)) + EVT_CALL(func_802CFD30, 0, 7, LVar0, 0, 0, 0) + EVT_CALL(func_802CFD30, 1, 7, LVar0, 0, 0, 0) + EVT_CALL(func_802CFD30, 4, 7, LVar0, 0, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(func_802CFD30, 0, 0, 0, 0, 0, 0) + EVT_CALL(func_802CFD30, 1, 0, 0, 0, 0, 0) + EVT_CALL(func_802CFD30, 4, 0, 0, 0, 0, 0) + EVT_WAIT(10) + EVT_CALL(SetCamType, CAM_DEFAULT, 4, FALSE) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0)) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0) + EVT_CALL(SpeakToPlayer, NPC_Boo_05, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_00A8) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_SetupTubbaRaid) = { + EVT_IF_LT(GB_StoryProgress, STORY_CH3_SAW_TUBBA_EAT_BOO) + EVT_CALL(SetNpcPos, NPC_Boo_03, 330, 184, 240) + EVT_LOOP(0) + EVT_SET(LVarA, 0) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_IF_GE(LVar2, 110) + EVT_IF_GE(LVar0, 220) + EVT_SET(LVarA, 1) + EVT_END_IF + EVT_END_IF + EVT_IF_EQ(LVarA, 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(InterruptUsePartner) + EVT_EXEC_WAIT(N(EVS_Scene_TubbaRaid)) + EVT_CALL(BindNpcInteract, NPC_Boo_01, EVT_PTR(N(EVS_NpcInteract_Boo_01_Mourning))) + EVT_CALL(BindNpcInteract, NPC_Boo_02, EVT_PTR(N(EVS_NpcInteract_Boo_02_Mourning))) + EVT_CALL(BindNpcInteract, NPC_Boo_05, EVT_PTR(N(EVS_NpcInteract_Boo_05_Mourning))) + EVT_SET(GB_StoryProgress, STORY_CH3_SAW_TUBBA_EAT_BOO) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Tubba) = { + EVT_IF_GE(GB_StoryProgress, STORY_CH3_SAW_TUBBA_EAT_BOO) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +s32 N(extraAnimationList_80244390)[] = { + ANIM_WorldTubba_Anim06, + ANIM_WorldTubba_Anim09, + ANIM_WorldTubba_Anim1E, + ANIM_WorldTubba_Anim1F, + ANIM_WorldTubba_Anim20, + ANIM_WorldTubba_Anim21, + -1 +}; + +StaticNpc N(NpcData_Tubba) = { + .id = NPC_Tubba, + .settings = &N(NpcSettings_Tubba), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_Tubba), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_WorldTubba_Anim06, + .walk = ANIM_WorldTubba_Anim09, + .run = ANIM_WorldTubba_Anim0C, + .chase = ANIM_WorldTubba_Anim0C, + .anim_4 = ANIM_WorldTubba_Anim00, + .anim_5 = ANIM_WorldTubba_Anim00, + .death = ANIM_WorldTubba_Anim00, + .hit = ANIM_WorldTubba_Anim00, + .anim_8 = ANIM_WorldTubba_Anim00, + .anim_9 = ANIM_WorldTubba_Anim00, + .anim_A = ANIM_WorldTubba_Anim00, + .anim_B = ANIM_WorldTubba_Anim00, + .anim_C = ANIM_WorldTubba_Anim00, + .anim_D = ANIM_WorldTubba_Anim00, + .anim_E = ANIM_WorldTubba_Anim00, + .anim_F = ANIM_WorldTubba_Anim00, + }, + .extraAnimations = N(extraAnimationList_80244390), +}; + +EvtScript N(EVS_NpcIdle_Boo_06) = { + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SET(LVar3, LVar0) + EVT_ADD(LVar3, -60) + EVT_SET(LVar4, LVar0) + EVT_ADD(LVar4, 60) + EVT_LOOP(0) + EVT_CALL(RandInt, 5, LVar5) + EVT_SETF(LVar6, LVar5) + EVT_MULF(LVar6, EVT_FLOAT(0.1)) + EVT_ADDF(LVar6, EVT_FLOAT(0.8)) + EVT_CALL(SetNpcSpeed, NPC_SELF, LVar6) + EVT_CALL(NpcMoveTo, NPC_SELF, LVar3, LVar2, 0) + EVT_CALL(RandInt, 5, LVar5) + EVT_SETF(LVar6, LVar5) + EVT_MULF(LVar6, EVT_FLOAT(0.1)) + EVT_ADDF(LVar6, EVT_FLOAT(0.8)) + EVT_CALL(SetNpcSpeed, NPC_SELF, LVar6) + EVT_CALL(NpcMoveTo, NPC_SELF, LVar4, LVar2, 0) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_06) = { + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo_06))) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_07) = { + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo_06))) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_08) = { + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo_06))) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_09) = { + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo_06))) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_Boo_06)[] = { + { + .id = NPC_Boo_06, + .settings = &N(NpcSettings_Boo), + .pos = { 36.0f, 277.0f, 140.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_Boo_06), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Boo_Tan_Idle, + .walk = ANIM_Boo_Tan_Walk, + .run = ANIM_Boo_Tan_Run, + .chase = ANIM_Boo_Tan_Run, + .anim_4 = ANIM_Boo_Tan_Idle, + .anim_5 = ANIM_Boo_Tan_Idle, + .death = ANIM_Boo_Tan_Still, + .hit = ANIM_Boo_Tan_Still, + .anim_8 = ANIM_Boo_Tan_Confused, + .anim_9 = ANIM_Boo_Tan_Run, + .anim_A = ANIM_Boo_Tan_Run, + .anim_B = ANIM_Boo_Tan_Run, + .anim_C = ANIM_Boo_Tan_Run, + .anim_D = ANIM_Boo_Tan_Run, + .anim_E = ANIM_Boo_Tan_Run, + .anim_F = ANIM_Boo_Tan_Run, + }, + }, + { + .id = NPC_Boo_07, + .settings = &N(NpcSettings_Boo), + .pos = { 200.0f, 275.0f, 182.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_Boo_07), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Boo_Tan_Idle, + .walk = ANIM_Boo_Tan_Walk, + .run = ANIM_Boo_Tan_Run, + .chase = ANIM_Boo_Tan_Run, + .anim_4 = ANIM_Boo_Tan_Idle, + .anim_5 = ANIM_Boo_Tan_Idle, + .death = ANIM_Boo_Tan_Still, + .hit = ANIM_Boo_Tan_Still, + .anim_8 = ANIM_Boo_Tan_Confused, + .anim_9 = ANIM_Boo_Tan_Run, + .anim_A = ANIM_Boo_Tan_Run, + .anim_B = ANIM_Boo_Tan_Run, + .anim_C = ANIM_Boo_Tan_Run, + .anim_D = ANIM_Boo_Tan_Run, + .anim_E = ANIM_Boo_Tan_Run, + .anim_F = ANIM_Boo_Tan_Run, + }, + }, + { + .id = NPC_Boo_08, + .settings = &N(NpcSettings_Boo), + .pos = { 379.0f, 300.0f, 192.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_Boo_08), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Boo_Tan_Idle, + .walk = ANIM_Boo_Tan_Walk, + .run = ANIM_Boo_Tan_Run, + .chase = ANIM_Boo_Tan_Run, + .anim_4 = ANIM_Boo_Tan_Idle, + .anim_5 = ANIM_Boo_Tan_Idle, + .death = ANIM_Boo_Tan_Still, + .hit = ANIM_Boo_Tan_Still, + .anim_8 = ANIM_Boo_Tan_Confused, + .anim_9 = ANIM_Boo_Tan_Run, + .anim_A = ANIM_Boo_Tan_Run, + .anim_B = ANIM_Boo_Tan_Run, + .anim_C = ANIM_Boo_Tan_Run, + .anim_D = ANIM_Boo_Tan_Run, + .anim_E = ANIM_Boo_Tan_Run, + .anim_F = ANIM_Boo_Tan_Run, + }, + }, + { + .id = NPC_Boo_09, + .settings = &N(NpcSettings_Boo), + .pos = { 525.0f, 286.0f, 178.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_Boo_09), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Boo_Tan_Idle, + .walk = ANIM_Boo_Tan_Walk, + .run = ANIM_Boo_Tan_Run, + .chase = ANIM_Boo_Tan_Run, + .anim_4 = ANIM_Boo_Tan_Idle, + .anim_5 = ANIM_Boo_Tan_Idle, + .death = ANIM_Boo_Tan_Still, + .hit = ANIM_Boo_Tan_Still, + .anim_8 = ANIM_Boo_Tan_Confused, + .anim_9 = ANIM_Boo_Tan_Run, + .anim_A = ANIM_Boo_Tan_Run, + .anim_B = ANIM_Boo_Tan_Run, + .anim_C = ANIM_Boo_Tan_Run, + .anim_D = ANIM_Boo_Tan_Run, + .anim_E = ANIM_Boo_Tan_Run, + .anim_F = ANIM_Boo_Tan_Run, + }, + }, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_Tubba)), + NPC_GROUP(N(NpcData_Boo_01)), + {} +}; + +NpcGroupList N(NpcGroup1) = { + NPC_GROUP(N(NpcData_Tubba)), + NPC_GROUP(N(NpcData_Boo_01)), + NPC_GROUP(N(NpcData_Boo_06)), + {} +}; diff --git a/src/world/area_arn/arn_05/arn_05_3_entity.c b/src/world/area_arn/arn_05/arn_05_3_entity.c new file mode 100644 index 0000000000..beb3a68fd3 --- /dev/null +++ b/src/world/area_arn/arn_05/arn_05_3_entity.c @@ -0,0 +1,8 @@ +#include "arn_05.h" +#include "entity.h" + +EvtScript N(EVS_MakeEntities) = { + EVT_CALL(MakeEntity, EVT_PTR(Entity_HeartBlock), 17, 238, 80, 0, MAKE_ENTITY_END) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_05/events.c b/src/world/area_arn/arn_05/events.c deleted file mode 100644 index 29a15d98b9..0000000000 --- a/src/world/area_arn/arn_05/events.c +++ /dev/null @@ -1,1140 +0,0 @@ -#include "arn_05.h" -#include "entity.h" -#include "sprite/npc/Boo.h" -#include "sprite/npc/WorldBow.h" -#include "sprite/npc/WorldTubba.h" - -enum { - NPC_BOO0, - NPC_BOO1, - NPC_BOO2, - NPC_BOO3, - NPC_BOO4, - NPC_WORLD_TUBBA, - NPC_BOO5, - NPC_BOO6, - NPC_BOO7, - NPC_BOO8, -}; - -EvtScript N(exitWalk_80241430) = EVT_EXIT_WALK(60, 0, "arn_03", 1); - -EvtScript N(exitWalk_8024148C) = EVT_EXIT_WALK(60, 1, "arn_02", 0); - -EvtScript N(802414E8) = { - EVT_BIND_TRIGGER(N(exitWalk_80241430), TRIGGER_FLOOR_ABOVE, 1, 1, 0) - EVT_BIND_TRIGGER(N(exitWalk_8024148C), TRIGGER_FLOOR_ABOVE, 5, 1, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(enterWalk_80241530) = { - EVT_CALL(GetLoadType, LVar1) - EVT_IF_EQ(LVar1, 1) - EVT_EXEC(EnterSavePoint) - EVT_EXEC(N(802414E8)) - EVT_RETURN - EVT_END_IF - EVT_SET(LVar0, EVT_PTR(N(802414E8))) - EVT_EXEC(EnterWalk) - EVT_WAIT(1) - EVT_RETURN - EVT_END -}; - -EvtScript N(main) = { - EVT_SET(GB_WorldLocation, 34) - EVT_CALL(SetSpriteShading, -1) - EVT_CALL(SetCamPerspective, 0, 3, 25, 16, 4096) - EVT_CALL(SetCamBGColor, 0, 0, 0, 0) - EVT_CALL(SetCamEnabled, 0, 1) - EVT_IF_LT(GB_StoryProgress, -16) - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_80244FA4))) - EVT_ELSE - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_80244FC8))) - EVT_END_IF - EVT_EXEC_WAIT(N(makeEntities)) - EVT_EXEC(N(802441FC)) - EVT_EXEC(N(80241360)) - EVT_EXEC(N(enterWalk_80241530)) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_16A8)[] = { - 0x00000000, 0x00000000, -}; - -NpcSettings N(npcSettings_802416B0) = { - .height = 90, - .radius = 65, - .onHit = &EnemyNpcHit, - .onDefeat = &EnemyNpcDefeat, - .level = 13, -}; - -MobileAISettings N(npcAISettings_802416DC) = { - .moveSpeed = 1.0f, - .moveTime = 25, - .waitTime = 30, - .alertRadius = 50.0f, - .alertOffsetDist = 50.0f, - .playerSearchInterval = 10, - .chaseRadius = 100.0f, - .chaseOffsetDist = 80.0f, - .unk_AI_2C = 1, -}; - -EvtScript N(npcAI_8024170C) = { - EVT_CALL(N(func_8024113C_BE8D1C), EVT_PTR(N(npcAISettings_802416DC))) - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_8024172C) = { - .height = 24, - .radius = 24, - .ai = &N(npcAI_8024170C), - .level = 99, -}; - -NpcSettings N(npcSettings_80241758) = { - .height = 24, - .radius = 24, - .level = 99, -}; - -EvtScript N(idle_80241784) = { - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_80241794) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-26) - EVT_IF_EQ(AreaFlag(6), 0) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0092) - EVT_SET(AreaFlag(6), 1) - EVT_ELSE - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0093) - EVT_SET(AreaFlag(6), 0) - EVT_END_IF - EVT_CASE_LT(-16) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0095) - EVT_CASE_LT(-14) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0096) - EVT_CASE_LT(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0097) - EVT_CASE_GE(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0098) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_802418F4) = { - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0094) - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_80241924) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-26) - EVT_IF_EQ(AreaFlag(7), 0) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_0099) - EVT_SET(AreaFlag(7), 1) - EVT_ELSE - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009A) - EVT_SET(AreaFlag(7), 0) - EVT_END_IF - EVT_CASE_LT(-16) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009C) - EVT_CASE_LT(-14) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009D) - EVT_CASE_LT(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009E) - EVT_CASE_GE(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009F) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_80241A84) = { - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_009B) - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_80241AB4) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-26) - EVT_CASE_LT(-16) - EVT_CASE_LT(-14) - EVT_CASE_LT(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00A9) - EVT_CASE_GE(39) - EVT_IF_EQ(GF_ARN05_GaveGiftAdvice, 1) - EVT_IF_EQ(AreaFlag(9), 1) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Wave, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AE) - EVT_ELSE - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B0) - EVT_END_IF - EVT_ELSE - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Conceal) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Conceal, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AA) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Cower) - EVT_CALL(ContinueSpeech, -1, ANIM_Boo_Tan_Cower, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AB) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Confused) - EVT_CALL(ContinueSpeech, -1, ANIM_Boo_Tan_Confused, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AC) - EVT_CALL(ShowChoice, MSG_Choice_001E) - EVT_SWITCH(LVar0) - EVT_CASE_EQ(0) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Wave) - EVT_CALL(ContinueSpeech, -1, ANIM_Boo_Tan_Wave, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AD) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Idle) - EVT_SET(GF_ARN05_GaveGiftAdvice, 1) - EVT_SET(AreaFlag(9), 1) - EVT_CASE_EQ(1) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Wave) - EVT_CALL(ContinueSpeech, -1, ANIM_Boo_Tan_Wave, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AD) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Boo_Tan_Idle) - EVT_SET(GF_ARN05_GaveGiftAdvice, 1) - EVT_SET(AreaFlag(9), 1) - EVT_CASE_EQ(2) - EVT_CALL(ContinueSpeech, -1, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00AF) - EVT_END_SWITCH - EVT_END_IF - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_80241D88) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-26) - EVT_CASE_LT(-16) - EVT_CASE_LT(-14) - EVT_CASE_LT(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B1) - EVT_CASE_GE(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B2) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_80241E28) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-26) - EVT_IF_EQ(AreaFlag(8), 0) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B3) - EVT_SET(AreaFlag(8), 1) - EVT_ELSE - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B4) - EVT_SET(AreaFlag(8), 0) - EVT_END_IF - EVT_CASE_LT(-16) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B6) - EVT_CASE_LT(-14) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B7) - EVT_CASE_LT(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B8) - EVT_CASE_GE(39) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B9) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_80241F88) = { - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00B5) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80241FB8) = { - EVT_IF_LT(GB_StoryProgress, -33) - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_80241784))) - EVT_END_IF - EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(interact_80241794))) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80242008) = { - EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(interact_80241924))) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_8024202C) = { - EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(interact_80241AB4))) - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-33) - EVT_CALL(SetNpcFlagBits, NPC_SELF, ((NPC_FLAG_100)), TRUE) - EVT_CASE_LT(-26) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_CASE_LT(-16) - EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_CASE_LT(-14) - EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_CASE_LT(39) - EVT_CASE_GE(39) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(init_8024212C) = { - EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(interact_80241D88))) - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-33) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_CASE_LT(-26) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_CASE_LT(-16) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_CASE_LT(-14) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_CASE_LT(39) - EVT_CASE_GE(39) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(init_802421EC) = { - EVT_IF_LT(GB_StoryProgress, -33) - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_80241784))) - EVT_END_IF - EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(interact_80241E28))) - EVT_RETURN - EVT_END -}; - -StaticNpc N(npcGroup_8024223C)[] = { - { - .id = NPC_BOO0, - .settings = &N(npcSettings_8024172C), - .pos = { 55.0f, 195.0f, 160.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_80241FB8), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .territory = { .temp = { 2, 55, 10, 160, 75, 10, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -32767, 55, 195, 160, 50 }}, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .tattle = MSG_NpcTattle_ARN_BooD, - }, - { - .id = NPC_BOO1, - .settings = &N(npcSettings_80241758), - .pos = { 160.0f, 191.0f, 250.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_80242008), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .tattle = MSG_NpcTattle_ARN_BooE, - }, - { - .id = NPC_BOO2, - .settings = &N(npcSettings_80241758), - .pos = { 390.0f, 190.0f, 255.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_8024202C), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .tattle = MSG_NpcTattle_ARN_BooF, - }, - { - .id = NPC_BOO3, - .settings = &N(npcSettings_80241758), - .pos = { 503.0f, 206.0f, 210.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_8024212C), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .tattle = MSG_NpcTattle_ARN_BooG, - }, - { - .id = NPC_BOO4, - .settings = &N(npcSettings_8024172C), - .pos = { 350.0f, 185.0f, 197.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_802421EC), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .territory = { .temp = { 2, 350, 10, 197, 330, 10, 197, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -32767, 350, 185, 197, 50 }}, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .tattle = MSG_NpcTattle_ARN_BooH, - }, -}; - -EvtScript N(80242BEC) = { - EVT_LOOP(LVar0) - EVT_CALL(PlaySoundAtNpc, 5, SOUND_20F6, 0) - EVT_CALL(ShakeCam, 0, 0, 10, EVT_FLOAT(0.5)) - EVT_WAIT(5) - EVT_END_LOOP - EVT_RETURN - EVT_END -}; - -EvtScript N(80242C50) = { - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(NpcFacePlayer, 2, 1) - EVT_CALL(PlaySoundAtNpc, 2, SOUND_262, 0) - EVT_CALL(ShowEmote, 2, EMOTE_EXCLAMATION, -45, 20, 1, 0, 0, 0, 0) - EVT_WAIT(20) - EVT_CALL(GetNpcPos, 2, LVar0, LVar1, LVar2) - EVT_CALL(GetPlayerPos, LVar3, LVar4, LVar5) - EVT_SUB(LVar0, LVar3) - EVT_SUB(LVar0, 50) - EVT_SUB(LVar1, LVar4) - EVT_SUB(LVar2, LVar5) - EVT_CALL(GetNpcPos, 2, LVar3, LVar4, LVar5) - EVT_SUB(LVar3, LVar0) - EVT_SUB(LVar4, LVar1) - EVT_SUB(LVar5, LVar2) - EVT_CALL(NpcMoveTo, 2, LVar3, LVar5, 30) - EVT_CALL(SetCamType, 0, 6, 1) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(5.0)) - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_CALL(UseSettingsFrom, 0, LVar0, LVar1, LVar2) - EVT_CALL(SetPanTarget, 0, LVar0, LVar1, LVar2) - EVT_CALL(SetCamDistance, 0, 350) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_CALL(SpeakToPlayer, 2, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_CH3_00A0) - EVT_CALL(PlaySoundAt, SOUND_20F6, 0, 450, 200, 160) - EVT_CALL(ShakeCam, 0, 0, 20, EVT_FLOAT(0.8)) - EVT_CALL(PlaySoundAtNpc, 0, SOUND_262, 0) - EVT_CALL(PlaySoundAtNpc, 1, SOUND_262, 0) - EVT_CALL(PlaySoundAtNpc, 2, SOUND_262, 0) - EVT_CALL(PlaySoundAtNpc, 4, SOUND_262, 0) - EVT_CALL(ShowEmote, 0, EMOTE_EXCLAMATION, -45, 20, 1, 0, 0, 0, 0) - EVT_CALL(ShowEmote, 1, EMOTE_EXCLAMATION, -45, 20, 1, 0, 0, 0, 0) - EVT_CALL(ShowEmote, 2, EMOTE_EXCLAMATION, -45, 20, 1, 0, 0, 0, 0) - EVT_CALL(ShowEmote, 4, EMOTE_EXCLAMATION, -45, 20, 1, 0, 0, 0, 0) - EVT_CALL(FadeOutMusic, 0, 500) - EVT_CALL(ClearAmbientSounds, 250) - EVT_WAIT(20) - EVT_CALL(InterpNpcYaw, 2, 90, 1) - EVT_CALL(InterpNpcYaw, 4, 90, 1) - EVT_WAIT(20) - EVT_CALL(PlaySound, SOUND_BOO_APPEAR) - EVT_SETF(LVar0, EVT_FLOAT(240.0)) - EVT_LOOP(20) - EVT_SUBF(LVar0, EVT_FLOAT(12.0)) - EVT_CALL(func_802CFD30, 0, 7, LVar0, 0, 0, 0) - EVT_CALL(func_802CFD30, 1, 7, LVar0, 0, 0, 0) - EVT_CALL(func_802CFD30, 4, 7, LVar0, 0, 0, 0) - EVT_WAIT(1) - EVT_END_LOOP - EVT_CALL(SetNpcPos, 0, 420, 300, 220) - EVT_CALL(SetNpcPos, 1, 460, 250, 210) - EVT_CALL(SetNpcPos, 4, 0, -1000, 0) - EVT_CALL(EnableNpcShadow, 0, FALSE) - EVT_CALL(EnableNpcShadow, 1, FALSE) - EVT_CALL(EnableNpcShadow, 4, FALSE) - EVT_CALL(PlaySound, SOUND_BOO_VANISH) - EVT_SETF(LVar0, EVT_FLOAT(0.0)) - EVT_LOOP(20) - EVT_ADDF(LVar0, EVT_FLOAT(12.0)) - EVT_CALL(func_802CFD30, 0, 7, LVar0, 0, 0, 0) - EVT_CALL(func_802CFD30, 1, 7, LVar0, 0, 0, 0) - EVT_WAIT(1) - EVT_END_LOOP - EVT_CALL(SpeakToPlayer, 2, ANIM_Boo_Tan_Flail, ANIM_Boo_Tan_Flail, 0, MSG_CH3_00A1) - EVT_CALL(GetCurrentPartnerID, LVar0) - EVT_IF_NE(LVar0, 9) - EVT_CALL(N(SwitchToPartner), 9) - EVT_THREAD - EVT_SET(MapVar(0), 0) - EVT_CALL(ShowMessageAtScreenPos, MSG_CH3_00A2, 160, 40) - EVT_SET(MapVar(0), 1) - EVT_END_THREAD - EVT_WAIT(50) - EVT_CALL(DisablePartnerAI, 0) - EVT_CALL(SetNpcYaw, NPC_PARTNER, 90) - EVT_CALL(EnablePartnerAI) - EVT_LOOP(0) - EVT_WAIT(1) - EVT_IF_EQ(MapVar(0), 1) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_END_IF - EVT_CALL(DisablePartnerAI, 0) - EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 0, MSG_CH3_00A3) - EVT_CALL(EnablePartnerAI) - EVT_CALL(InterpPlayerYaw, 90, 0) - EVT_WAIT(5) - EVT_CALL(N(func_802412B0_BE8E90)) - EVT_CALL(CloseMessage) - EVT_CALL(func_802D2B50) - EVT_WAIT(60) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBAS_MANOR, 1, 8) - EVT_CALL(SetCamType, 0, 6, 1) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(90.0)) - EVT_CALL(SetCamPitch, 0, EVT_FLOAT(17.0), EVT_FLOAT(-11.5)) - EVT_CALL(SetCamDistance, 0, 450) - EVT_CALL(SetCamPosA, 0, -40, 206) - EVT_CALL(SetCamPosB, 0, 530, 206) - EVT_CALL(SetCamPosC, 0, 0, 0) - EVT_CALL(SetPanTarget, 0, 426, 190, 194) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_CALL(SetNpcFlagBits, 5, ((NPC_FLAG_GRAVITY)), TRUE) - EVT_CALL(SetNpcSpeed, 5, EVT_FLOAT(2.5)) - EVT_CALL(SetNpcPos, 5, 675, 200, 180) - EVT_CALL(NpcFaceNpc, 0, 5, 1) - EVT_CALL(NpcFaceNpc, 1, 5, 1) - EVT_CALL(SetNpcPos, 2, 272, 190, 214) - EVT_CALL(PlaySoundAtNpc, 0, SOUND_262, 0) - EVT_CALL(PlaySoundAtNpc, 1, SOUND_262, 0) - EVT_CALL(ShowEmote, 0, EMOTE_EXCLAMATION, 45, 20, 1, 0, 0, 0, 0) - EVT_CALL(ShowEmote, 1, EMOTE_EXCLAMATION, 45, 20, 1, 0, 0, 0, 0) - EVT_THREAD - EVT_CALL(PlaySound, SOUND_BOO_APPEAR) - EVT_WAIT(20) - EVT_SETF(LVar0, EVT_FLOAT(240.0)) - EVT_LOOP(20) - EVT_SUBF(LVar0, EVT_FLOAT(12.0)) - EVT_CALL(func_802CFD30, 0, 7, LVar0, 0, 0, 0) - EVT_CALL(func_802CFD30, 1, 7, LVar0, 0, 0, 0) - EVT_WAIT(1) - EVT_END_LOOP - EVT_CALL(SetNpcPos, 0, 0, -1000, 0) - EVT_CALL(SetNpcPos, 1, 0, -1000, 0) - EVT_WAIT(10) - EVT_END_THREAD - EVT_SET(LVar0, 4) - EVT_EXEC(N(80242BEC)) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim09) - EVT_CALL(NpcMoveTo, 5, 550, 196, 0) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim06) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(4.0)) - EVT_CALL(SetCamPitch, 0, EVT_FLOAT(17.0), EVT_FLOAT(-11.5)) - EVT_CALL(SetCamDistance, 0, 375) - EVT_CALL(SetCamPosA, 0, -40, 206) - EVT_CALL(SetCamPosB, 0, 530, 206) - EVT_CALL(SetCamPosC, 0, 0, 0) - EVT_CALL(SetPanTarget, 0, 426, 190, 194) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_WAIT(30) - EVT_SET(MapVar(1), 0) - EVT_THREAD - EVT_SET(LVar0, 7) - EVT_EXEC(N(80242BEC)) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim09) - EVT_CALL(NpcMoveTo, 5, 370, 220, 0) - EVT_CALL(GetNpcPos, 2, LVar0, LVar1, LVar2) - EVT_CALL(NpcMoveTo, 5, 330, LVar2, 0) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim06) - EVT_SET(MapVar(1), 1) - EVT_END_THREAD - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(90.0)) - EVT_CALL(SetCamPitch, 0, EVT_FLOAT(17.0), EVT_FLOAT(-11.5)) - EVT_CALL(SetCamDistance, 0, 375) - EVT_CALL(SetCamPosA, 0, -40, 206) - EVT_CALL(SetCamPosB, 0, 530, 206) - EVT_CALL(SetCamPosC, 0, 0, 0) - EVT_CALL(SetPanTarget, 0, 240, 169, 206) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_CALL(SpeakToPlayer, 2, ANIM_Boo_Tan_Flail, ANIM_Boo_Tan_Flail, 0, MSG_CH3_00A4) - EVT_WAIT(15) - EVT_LOOP(0) - EVT_WAIT(1) - EVT_IF_EQ(MapVar(1), 1) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_CALL(NpcFaceNpc, 2, 5, 1) - EVT_WAIT(30) - EVT_CALL(SpeakToPlayer, 2, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_00A5) - EVT_CALL(SetNpcAnimation, 2, ANIM_Boo_Tan_Cower) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim1E) - EVT_CALL(SetNpcJumpscale, 2, EVT_FLOAT(0.0)) - EVT_CALL(NpcJump1, 2, 265, 206, 212, 3) - EVT_WAIT(20) - EVT_CALL(SpeakToPlayer, 5, ANIM_WorldTubba_Anim1E, ANIM_WorldTubba_Anim1E, 5, MSG_CH3_00A6) - EVT_CALL(SetNpcPos, 2, 303, 237, 228) - EVT_CALL(SetNpcAnimation, 2, ANIM_Boo_Tan_Flail) - EVT_CALL(EnableNpcShadow, 2, FALSE) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim1F) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(5.0)) - EVT_CALL(SetCamPitch, 0, EVT_FLOAT(17.0), EVT_FLOAT(-17.0)) - EVT_CALL(SetCamDistance, 0, 250) - EVT_CALL(SetCamPosA, 0, -40, 206) - EVT_CALL(SetCamPosB, 0, 530, 206) - EVT_CALL(SetCamPosC, 0, 0, 0) - EVT_CALL(SetPanTarget, 0, 280, 169, 206) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_THREAD - EVT_WAIT(50) - EVT_CALL(PlaySoundAtNpc, 5, SOUND_315, 0) - EVT_END_THREAD - EVT_WAIT(40) - EVT_CALL(SetNpcPos, 2, 0, -1000, 0) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim20) - EVT_WAIT(80) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(90.0)) - EVT_CALL(SetCamPitch, 0, EVT_FLOAT(17.0), EVT_FLOAT(-11.5)) - EVT_CALL(SetCamDistance, 0, 375) - EVT_CALL(SetCamPosA, 0, -40, 206) - EVT_CALL(SetCamPosB, 0, 530, 206) - EVT_CALL(SetCamPosC, 0, 0, 0) - EVT_CALL(SetPanTarget, 0, 240, 169, 206) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim06) - EVT_WAIT(15) - EVT_CALL(SpeakToPlayer, 5, ANIM_WorldTubba_Anim21, ANIM_WorldTubba_Anim06, 5, MSG_CH3_00A7) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim21) - EVT_CALL(GetNpcPos, 5, LVar0, LVar1, LVar2) - EVT_ADD(LVar0, -50) - EVT_ADD(LVar1, 50) - EVT_ADD(LVar2, 10) - EVT_CALL(PlayEffect, 0x6, 1, LVar0, LVar1, LVar2, 10, 0, 0, 0, 0, 0, 0, 0, 0) - EVT_WAIT(20) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim06) - EVT_CALL(InterpNpcYaw, 5, 90, 1) - EVT_WAIT(30) - EVT_SET(LVar0, 7) - EVT_EXEC(N(80242BEC)) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim09) - EVT_CALL(NpcMoveTo, 5, 370, 220, 0) - EVT_CALL(NpcMoveTo, 5, 550, 196, 0) - EVT_CALL(SetNpcAnimation, 5, ANIM_WorldTubba_Anim06) - EVT_CALL(SetNpcPos, 5, 0, -1000, 0) - EVT_CALL(SetNpcFlagBits, 5, ((NPC_FLAG_GRAVITY)), FALSE) - EVT_CALL(NpcFacePlayer, 0, 3) - EVT_CALL(SetNpcPos, 0, 55, 195, 160) - EVT_CALL(SetNpcPos, 1, 160, 191, 250) - EVT_CALL(SetNpcPos, 4, 350, 185, 197) - EVT_CALL(EnableNpcShadow, 0, TRUE) - EVT_CALL(EnableNpcShadow, 1, TRUE) - EVT_CALL(EnableNpcShadow, 4, TRUE) - EVT_CALL(PlaySound, SOUND_BOO_VANISH) - EVT_SETF(LVar0, EVT_FLOAT(0.0)) - EVT_LOOP(20) - EVT_ADDF(LVar0, EVT_FLOAT(12.5)) - EVT_CALL(func_802CFD30, 0, 7, LVar0, 0, 0, 0) - EVT_CALL(func_802CFD30, 1, 7, LVar0, 0, 0, 0) - EVT_CALL(func_802CFD30, 4, 7, LVar0, 0, 0, 0) - EVT_WAIT(1) - EVT_END_LOOP - EVT_CALL(func_802CFD30, 0, 0, 0, 0, 0, 0) - EVT_CALL(func_802CFD30, 1, 0, 0, 0, 0, 0) - EVT_CALL(func_802CFD30, 4, 0, 0, 0, 0, 0) - EVT_WAIT(10) - EVT_CALL(SetCamType, 0, 4, 0) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(3.0)) - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_CALL(UseSettingsFrom, 0, LVar0, LVar1, LVar2) - EVT_CALL(SetPanTarget, 0, LVar0, LVar1, LVar2) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_CALL(PanToTarget, 0, 0, 0) - EVT_CALL(SpeakToPlayer, 4, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 5, MSG_CH3_00A8) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(802441FC) = { - EVT_IF_LT(GB_StoryProgress, -33) - EVT_CALL(SetNpcPos, 2, 330, 184, 240) - EVT_LOOP(0) - EVT_SET(LVarA, 0) - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_IF_GE(LVar2, 110) - EVT_IF_GE(LVar0, 220) - EVT_SET(LVarA, 1) - EVT_END_IF - EVT_END_IF - EVT_IF_EQ(LVarA, 1) - EVT_BREAK_LOOP - EVT_END_IF - EVT_WAIT(1) - EVT_END_LOOP - EVT_CALL(InterruptUsePartner) - EVT_EXEC_WAIT(N(80242C50)) - EVT_CALL(BindNpcInteract, 0, EVT_PTR(N(interact_802418F4))) - EVT_CALL(BindNpcInteract, 1, EVT_PTR(N(interact_80241A84))) - EVT_CALL(BindNpcInteract, 4, EVT_PTR(N(interact_80241F88))) - EVT_SET(GB_StoryProgress, -33) - EVT_EXEC(N(80241360)) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80244358) = { - EVT_IF_GE(GB_StoryProgress, -33) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -s32 N(extraAnimationList_80244390)[] = { - ANIM_WorldTubba_Anim06, - ANIM_WorldTubba_Anim09, - ANIM_WorldTubba_Anim1E, - ANIM_WorldTubba_Anim1F, - ANIM_WorldTubba_Anim20, - ANIM_WorldTubba_Anim21, - ANIM_LIST_END, -}; - -StaticNpc N(npcGroup_802443AC) = { - .id = NPC_WORLD_TUBBA, - .settings = &N(npcSettings_802416B0), - .pos = { 0.0f, -1000.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_JUMPING, - .init = &N(init_80244358), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_WorldTubba_Anim06, - ANIM_WorldTubba_Anim09, - ANIM_WorldTubba_Anim0C, - ANIM_WorldTubba_Anim0C, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - }, - .extraAnimations = N(extraAnimationList_80244390), -}; - -EvtScript N(idle_8024459C) = { - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_SET(LVar3, LVar0) - EVT_ADD(LVar3, -60) - EVT_SET(LVar4, LVar0) - EVT_ADD(LVar4, 60) - EVT_LOOP(0) - EVT_CALL(RandInt, 5, LVar5) - EVT_SETF(LVar6, LVar5) - EVT_MULF(LVar6, EVT_FLOAT(0.1)) - EVT_ADDF(LVar6, EVT_FLOAT(0.8)) - EVT_CALL(SetNpcSpeed, NPC_SELF, LVar6) - EVT_CALL(NpcMoveTo, NPC_SELF, LVar3, LVar2, 0) - EVT_CALL(RandInt, 5, LVar5) - EVT_SETF(LVar6, LVar5) - EVT_MULF(LVar6, EVT_FLOAT(0.1)) - EVT_ADDF(LVar6, EVT_FLOAT(0.8)) - EVT_CALL(SetNpcSpeed, NPC_SELF, LVar6) - EVT_CALL(NpcMoveTo, NPC_SELF, LVar4, LVar2, 0) - EVT_END_LOOP - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80244704) = { - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_8024459C))) - EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_8024473C) = { - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_8024459C))) - EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80244774) = { - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_8024459C))) - EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_802447AC) = { - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_8024459C))) - EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) - EVT_RETURN - EVT_END -}; - -StaticNpc N(npcGroup_802447E4)[] = { - { - .id = NPC_BOO5, - .settings = &N(npcSettings_80241758), - .pos = { 36.0f, 277.0f, 140.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, - .init = &N(init_80244704), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - }, - { - .id = NPC_BOO6, - .settings = &N(npcSettings_80241758), - .pos = { 200.0f, 275.0f, 182.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, - .init = &N(init_8024473C), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - }, - { - .id = NPC_BOO7, - .settings = &N(npcSettings_80241758), - .pos = { 379.0f, 300.0f, 192.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, - .init = &N(init_80244774), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - }, - { - .id = NPC_BOO8, - .settings = &N(npcSettings_80241758), - .pos = { 525.0f, 286.0f, 178.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, - .init = &N(init_802447AC), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - }, -}; - -NpcGroupList N(npcGroupList_80244FA4) = { - NPC_GROUP(N(npcGroup_802443AC)), - NPC_GROUP(N(npcGroup_8024223C)), - {}, -}; - -NpcGroupList N(npcGroupList_80244FC8) = { - NPC_GROUP(N(npcGroup_802443AC)), - NPC_GROUP(N(npcGroup_8024223C)), - NPC_GROUP(N(npcGroup_802447E4)), - {}, -}; - -static s32 N(pad_4FF8)[] = { - 0x00000000, 0x00000000, -}; - -EvtScript N(makeEntities) = { - EVT_CALL(MakeEntity, EVT_PTR(Entity_HeartBlock), 17, 238, 80, 0, MAKE_ENTITY_END) - EVT_RETURN - EVT_END -}; - -#include "world/common/enemy/PatrolNoAttackAI.inc.c" - -void N(func_80240E90_BE8A70)(Evt* script, MobileAISettings* aiSettings, EnemyDetectVolume* territory) { - Enemy* enemy = script->owner1.enemy; - Npc* npc = get_npc_unsafe(enemy->npcID); - f32 posX, posY, posZ, posW; - f32 temp_f20; - f32 temp_f22; - - posX = npc->pos.x; - posZ = npc->pos.z; - temp_f22 = script->functionTemp[2][enemy->territory->patrol.points].x; - temp_f20 = script->functionTemp[2][enemy->territory->patrol.points].z; - - npc->yaw = atan2(posX, posZ, temp_f22, temp_f20); - npc_move_heading(npc, npc->moveSpeed, npc->yaw); - - posX = npc->pos.x; - posY = npc->pos.y + script->functionTemp[2][enemy->territory->patrol.points].y; - posZ = npc->pos.z; - posW = 1000.0f; - npc_raycast_down_sides(npc->collisionChannel, &posX, &posY, &posZ, &posW); - posY += script->functionTemp[2][enemy->territory->patrol.points].y; - posW = posY - npc->pos.y; - if (posW > 2.0) { - npc->pos.y += 2.0; - } else if (posW < -2.0) { - npc->pos.y -= 2.0; - } else { - npc->pos.y = posY; - } - - posW = dist2D(npc->pos.x, npc->pos.z, temp_f22, temp_f20); - if (!(posW > npc->moveSpeed)) { - script->functionTemp[0] = 2; - } -} - -void N(func_80241068_BE8C48)(Evt* script, MobileAISettings* aiSettings, EnemyDetectVolume* territory) { - Enemy* enemy = script->owner1.enemy; - Npc* npc = get_npc_unsafe(enemy->npcID); - - npc->duration--; - if (npc->duration < 0) { - script->functionTemp[1]--; - if (script->functionTemp[1] >= 0) { - npc->yaw = clamp_angle(npc->yaw + 180.0f); - npc->duration = aiSettings->waitTime / 2 + rand_int(aiSettings->waitTime / 2 + 1); - } else { - script->functionTemp[0] = 4; - npc->currentAnim = enemy->animList[ENEMY_ANIM_IDLE]; - } - } -} - -ApiStatus N(func_8024113C_BE8D1C)(Evt* script, s32 isInitialCall) { - Enemy* enemy = script->owner1.enemy; - Bytecode* args = script->ptrReadPos; - Npc* npc = get_npc_unsafe(enemy->npcID); - EnemyDetectVolume territory; - EnemyDetectVolume* territoryPtr = &territory; - MobileAISettings* aiSettings = (MobileAISettings*)evt_get_variable(script, *args++); - - territory.skipPlayerDetectChance = 0; - territory.shape = enemy->territory->patrol.detectShape; - territory.pointX = enemy->territory->patrol.detectPos.x; - territory.pointZ = enemy->territory->patrol.detectPos.z; - territory.sizeX = enemy->territory->patrol.detectSize.x; - territory.sizeZ = enemy->territory->patrol.detectSize.z; - territory.halfHeight = 100.0f; - territory.detectFlags = 0; - - if (isInitialCall) { - script->functionTemp[0] = 0; - npc->duration = 0; - npc->flags &= ~NPC_FLAG_JUMPING; - } - - switch (script->functionTemp[0]) { - case 0: - N(PatrolAI_MoveInit)(script, aiSettings, territoryPtr); - case 1: - N(func_80240E90_BE8A70)(script, aiSettings, territoryPtr); - break; - case 2: - N(PatrolAI_LoiterInit)(script, aiSettings, territoryPtr); - case 3: - N(func_80241068_BE8C48)(script, aiSettings, territoryPtr); - break; - case 4: - N(PatrolAI_PostLoiter)(script, aiSettings, territoryPtr); - } - - enemy->varTable[0] = npc->pos.y; - return ApiStatus_BLOCK; -} - -ApiStatus N(func_802412B0_BE8E90)(Evt* script, s32 isInitialCall) { - return (gGameStatusPtr->pressedButtons[0] >> 1) & ApiStatus_DONE2; -} - -#include "world/common/SwitchToPartner.inc.c" diff --git a/src/world/area_arn/arn_07/BECDF0.c b/src/world/area_arn/arn_07/BECDF0.c deleted file mode 100644 index c543b0d453..0000000000 --- a/src/world/area_arn/arn_07/BECDF0.c +++ /dev/null @@ -1,382 +0,0 @@ -#include "arn_07.h" -#include "effects.h" -#include "sprite/npc/WorldTubba.h" -#include "sprite/npc/TubbasHeart.h" - -#include "world/common/StarSpiritEffectFunc.inc.c" - -s32 N(itemList_80242040)[] = { - ITEM_MYSTICAL_KEY, - ITEM_NONE, -}; - -EvtScript N(80242048) = { - EVT_CALL(FadeOutMusic, 0, 1000) - EVT_SET(LVar0, 0) - EVT_IF_EQ(LVar0, 0) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(UseSettingsFrom, 0, 145, 65, 0) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(0.6)) - EVT_CALL(SetPanTarget, 0, 145, 30, 0) - EVT_CALL(GetCamDistance, 0, LVar1) - EVT_SUB(LVar1, 100) - EVT_CALL(SetCamDistance, 0, LVar1) - EVT_IF_NE(10000, 10000) - EVT_CALL(GetCamPitch, 0, LVar2, LVar3) - EVT_CALL(SetCamPitch, 0, LVar2, 10000) - EVT_END_IF - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(N(StarSpiritEffectFunc2), 2, 50, 100, 31, -6, 145, 65, 0, 30, 0) - EVT_THREAD - EVT_CALL(N(StarSpiritEffectFunc3)) - EVT_END_THREAD - EVT_THREAD - EVT_WAIT(1) - EVT_CALL(PlaySound, 0x80000067) - EVT_CALL(N(StarSpiritEffectFunc1)) - EVT_CALL(StopSound, 0x80000067) - EVT_CALL(PlaySoundAt, 0xB2, 0, 145, 65, 0) - EVT_END_THREAD - EVT_THREAD - EVT_WAIT(12) - EVT_CALL(SetPlayerAnimation, 65578) - EVT_END_THREAD - EVT_THREAD - EVT_WAIT(50) - EVT_WAIT(115) - EVT_CALL(PlaySoundAt, 0x137, 0, 145, 65, 0) - EVT_END_THREAD - EVT_CALL(N(StarSpiritEffectFunc4), 1) - EVT_THREAD - EVT_WAIT(80) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) - EVT_END_THREAD - EVT_ADD(LVar1, 100) - EVT_CALL(SetCamDistance, 0, LVar1) - EVT_CALL(SetPanTarget, 0, 145, 0, 0) - EVT_CALL(N(StarSpiritEffectFunc4), 2) - EVT_CALL(GetPlayerPos, LVar2, LVar3, LVar4) - EVT_CALL(UseSettingsFrom, 0, LVar2, LVar3, LVar4) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(1.0)) - EVT_CALL(SetPanTarget, 0, LVar2, LVar3, LVar4) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_CALL(PanToTarget, 0, 0, 0) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_ELSE - EVT_CALL(N(StarSpiritEffectFunc5), 2, 145, 30, 0, 0) - EVT_THREAD - EVT_CALL(N(StarSpiritEffectFunc6)) - EVT_END_THREAD - EVT_WAIT(1) - EVT_END_IF - EVT_CALL(N(StarSpiritEffectFunc4), 3) - EVT_CALL(PlaySoundAtPlayer, 312, 0) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_SET(GB_StoryProgress, -15) - EVT_CALL(GotoMapSpecial, EVT_PTR("kmr_23"), 2, 14) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(80242498) = { - EVT_SET(LVar0, 1) - EVT_IF_EQ(LVar0, 0) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(UseSettingsFrom, 0, 145, 65, 0) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(0.6)) - EVT_CALL(SetPanTarget, 0, 145, 30, 0) - EVT_CALL(GetCamDistance, 0, LVar1) - EVT_SUB(LVar1, 100) - EVT_CALL(SetCamDistance, 0, LVar1) - EVT_IF_NE(10000, 10000) - EVT_CALL(GetCamPitch, 0, LVar2, LVar3) - EVT_CALL(SetCamPitch, 0, LVar2, 10000) - EVT_END_IF - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(N(StarSpiritEffectFunc2), 2, 50, 100, 31, -6, 145, 65, 0, 30, 0) - EVT_THREAD - EVT_CALL(N(StarSpiritEffectFunc3)) - EVT_END_THREAD - EVT_THREAD - EVT_WAIT(1) - EVT_CALL(PlaySound, 0x80000067) - EVT_CALL(N(StarSpiritEffectFunc1)) - EVT_CALL(StopSound, 0x80000067) - EVT_CALL(PlaySoundAt, 0xB2, 0, 145, 65, 0) - EVT_END_THREAD - EVT_THREAD - EVT_WAIT(12) - EVT_CALL(SetPlayerAnimation, 65578) - EVT_END_THREAD - EVT_THREAD - EVT_WAIT(50) - EVT_WAIT(115) - EVT_CALL(PlaySoundAt, 0x137, 0, 145, 65, 0) - EVT_END_THREAD - EVT_CALL(N(StarSpiritEffectFunc4), 1) - EVT_THREAD - EVT_WAIT(80) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) - EVT_END_THREAD - EVT_ADD(LVar1, 100) - EVT_CALL(SetCamDistance, 0, LVar1) - EVT_CALL(SetPanTarget, 0, 145, 0, 0) - EVT_CALL(N(StarSpiritEffectFunc4), 2) - EVT_CALL(GetPlayerPos, LVar2, LVar3, LVar4) - EVT_CALL(UseSettingsFrom, 0, LVar2, LVar3, LVar4) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(1.0)) - EVT_CALL(SetPanTarget, 0, LVar2, LVar3, LVar4) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_CALL(PanToTarget, 0, 0, 0) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_ELSE - EVT_CALL(N(StarSpiritEffectFunc5), 2, 145, 30, 0, 0) - EVT_THREAD - EVT_CALL(N(StarSpiritEffectFunc6)) - EVT_END_THREAD - EVT_WAIT(1) - EVT_END_IF - EVT_CALL(N(StarSpiritEffectFunc4), 3) - EVT_CALL(PlaySoundAtPlayer, 312, 0) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_SET(GB_StoryProgress, -15) - EVT_CALL(GotoMapSpecial, EVT_PTR("kmr_23"), 2, 14) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(exitSingleDoor_802428D4) = { - EVT_SET_GROUP(EVT_GROUP_1B) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_SET(LVar0, 0) - EVT_SET(LVar1, 10) - EVT_SET(LVar2, 29) - EVT_SET(LVar3, 1) - EVT_EXEC(ExitSingleDoor) - EVT_WAIT(17) - EVT_CALL(GotoMap, EVT_PTR("arn_08"), 0) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(exitWalk_80242978) = EVT_EXIT_WALK(60, 1, "arn_03", 0); - -EvtScript N(exitWalk_802429D4) = EVT_EXIT_WALK(60, 2, "mim_12", 1); - -static const f64 rodata_alignment = 0.0; - -EvtScript N(80242A30) = { - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(DisablePartnerAI, 0) - EVT_CALL(SetPlayerPos, -28, 0, -333) - EVT_CALL(SetNpcPos, NPC_PARTNER, -28, 0, -333) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(90.0)) - EVT_CALL(SetCamType, 0, 0, 0) - EVT_CALL(SetCamPitch, 0, EVT_FLOAT(25.0), EVT_FLOAT(-4.0)) - EVT_CALL(SetCamDistance, 0, 1100) - EVT_CALL(SetCamPosA, 0, 500, 0) - EVT_CALL(SetCamPosB, 0, 0, -500) - EVT_CALL(SetCamPosC, 0, 0, 0) - EVT_CALL(SetPanTarget, 0, 5, 0, -147) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(RotateModel, 29, 80, 0, -1, 0) - EVT_CALL(PlaySoundAtNpc, 0, 0x20C8, 0) - EVT_CALL(SetNpcJumpscale, 0, EVT_FLOAT(2.5)) - EVT_CALL(NpcJump0, 0, 0, 20, -120, 8) - EVT_WAIT(1) - EVT_CALL(PlaySoundAtNpc, 0, 0x20C8, 0) - EVT_CALL(NpcJump0, 0, 0, 10, -60, 12) - EVT_WAIT(1) - EVT_CALL(PlaySoundAtNpc, 0, 0x20C8, 0) - EVT_CALL(NpcJump0, 0, 0, 0, 0, 12) - EVT_WAIT(1) - EVT_CALL(SetNpcVar, 0, 0, 0) - EVT_THREAD - EVT_LOOP(0) - EVT_CALL(PlaySoundAtNpc, 0, 0x20C8, 0) - EVT_CALL(NpcJump0, 0, 0, 0, 0, 10) - EVT_WAIT(1) - EVT_CALL(GetNpcVar, 0, 0, LVar0) - EVT_IF_EQ(LVar0, 1) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_CALL(SetNpcVar, 0, 0, 2) - EVT_END_THREAD - EVT_THREAD - EVT_CALL(MakeLerp, 80, 0, 10, 0) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_CALL(RotateModel, 29, LVar0, 0, -1, 0) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_CALL(PlaySoundAtCollider, 10, 450, 0) - EVT_END_THREAD - EVT_CALL(NpcFaceNpc, 0, 1, 0) - EVT_CALL(SpeakToPlayer, 0, ANIM_TubbasHeart_Anim0A, ANIM_TubbasHeart_Anim01, 5, MSG_CH3_00C7) - EVT_CALL(SetNpcVar, 0, 0, 1) - EVT_LOOP(0) - EVT_CALL(GetNpcVar, 0, 0, LVar0) - EVT_IF_EQ(LVar0, 2) - EVT_BREAK_LOOP - EVT_END_IF - EVT_WAIT(1) - EVT_END_LOOP - EVT_CALL(PlaySoundAtNpc, 0, 0x20C8, 0) - EVT_CALL(NpcJump0, 0, 75, 0, 10, 12) - EVT_WAIT(1) - EVT_CALL(PlaySoundAtNpc, 0, 0x20C8, 0) - EVT_CALL(NpcJump0, 0, 150, 0, 20, 12) - EVT_WAIT(1) - EVT_THREAD - EVT_WAIT(4) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(90.0)) - EVT_CALL(SetCamPitch, 0, EVT_FLOAT(2.0), EVT_FLOAT(-9.0)) - EVT_CALL(SetCamDistance, 0, 700) - EVT_CALL(SetCamPosA, 0, 500, 0) - EVT_CALL(SetCamPosB, 0, 0, -500) - EVT_CALL(SetCamPosC, 0, 0, 0) - EVT_CALL(SetPanTarget, 0, 65, 0, -137) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(SetNpcAnimation, 1, ANIM_WorldTubba_Anim22) - EVT_END_THREAD - EVT_CALL(PlaySoundAtNpc, 0, 0x20C8, 0) - EVT_CALL(NpcJump0, 0, 298, 56, 31, 18) - EVT_CALL(SetNpcPos, 0, 0, -1000, 0) - EVT_CALL(EnableNpcShadow, 0, FALSE) - EVT_THREAD - EVT_CALL(SetNpcAnimation, 1, ANIM_WorldTubba_Anim23) - EVT_WAIT(20) - EVT_CALL(SetNpcAnimation, 1, ANIM_WorldTubba_Anim06) - EVT_END_THREAD - EVT_WAIT(20) - EVT_THREAD - EVT_CALL(PlaySoundAtCollider, 10, 449, 0) - EVT_CALL(MakeLerp, 0, 80, 10, 0) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_CALL(RotateModel, 29, LVar0, 0, -1, 0) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_END_THREAD - EVT_THREAD - EVT_WAIT(30) - EVT_CALL(UseSettingsFrom, 0, 236, 0, -46) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(4.0)) - EVT_CALL(SetCamPitch, 0, EVT_FLOAT(8.0), EVT_FLOAT(-9.0)) - EVT_CALL(SetCamDistance, 0, 450) - EVT_CALL(SetPanTarget, 0, 250, 0, -46) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_END_THREAD - EVT_CALL(ModifyColliderFlags, 0, 10, 0x7FFFFE00) - EVT_CALL(SetPlayerPos, 0, 20, -195) - EVT_CALL(SetNpcPos, NPC_PARTNER, 0, 20, -195) - EVT_CALL(EnablePartnerAI) - EVT_CALL(PlayerMoveTo, 0, 0, 45) - EVT_CALL(ModifyColliderFlags, 1, 10, 0x7FFFFE00) - EVT_THREAD - EVT_CALL(MakeLerp, 80, 0, 10, 0) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_CALL(RotateModel, 29, LVar0, 0, -1, 0) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_CALL(PlaySoundAtCollider, 10, 450, 0) - EVT_END_THREAD - EVT_CALL(PlayerMoveTo, 200, 0, 35) - EVT_WAIT(5) - EVT_CALL(SpeakToPlayer, 1, ANIM_WorldTubba_Anim10, ANIM_WorldTubba_Anim06, 0, MSG_CH3_00C8) - EVT_CALL(SetNpcVar, 1, 0, 1) - EVT_WAIT(30) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(802433C8) = { - EVT_BIND_TRIGGER(N(exitWalk_80242978), TRIGGER_FLOOR_ABOVE, 5, 1, 0) - EVT_BIND_TRIGGER(N(exitWalk_802429D4), TRIGGER_FLOOR_ABOVE, 1, 1, 0) - EVT_IF_LT(GB_StoryProgress, -24) - EVT_BIND_PADLOCK(N(802439B0), TRIGGER_WALL_PRESS_A, EVT_ENTITY_INDEX(0), EVT_PTR(N(itemList_80242040)), 0, 1) - EVT_ELSE - EVT_BIND_TRIGGER(N(exitSingleDoor_802428D4), TRIGGER_WALL_PRESS_A, 10, 1, 0) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -EvtScript N(enterWalk_8024346C) = { - EVT_CALL(GetEntryID, LVar0) - EVT_SWITCH(LVar0) - EVT_CASE_EQ(0) - EVT_IF_EQ(GB_StoryProgress, -17) - EVT_EXEC_WAIT(N(80242A30)) - EVT_EXEC(N(802433C8)) - EVT_ELSE - EVT_SET(LVar2, 29) - EVT_SET(LVar3, 1) - EVT_EXEC_WAIT(EnterSingleDoor) - EVT_EXEC(N(802433C8)) - EVT_END_IF - EVT_CASE_EQ(1) - EVT_SET(LVar0, EVT_PTR(N(802433C8))) - EVT_EXEC(EnterWalk) - EVT_WAIT(1) - EVT_CASE_EQ(2) - EVT_SET(LVar0, EVT_PTR(N(802433C8))) - EVT_EXEC(EnterWalk) - EVT_WAIT(1) - EVT_CASE_EQ(3) - EVT_EXEC(N(802433C8)) - EVT_WAIT(1) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(main) = { - EVT_SET(GB_WorldLocation, 34) - EVT_CALL(SetSpriteShading, -1) - EVT_CALL(SetCamPerspective, 0, 3, 25, 16, 4096) - EVT_CALL(SetCamBGColor, 0, 0, 0, 0) - EVT_CALL(SetCamLeadPlayer, 0, 0) - EVT_CALL(SetCamEnabled, 0, 1) - EVT_SET(GF_MAP_GustyGulch, 1) - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-26) - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_802478B8))) - EVT_CASE_LT(-14) - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_8024787C))) - EVT_CASE_EQ(-14) - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_802478E8))) - EVT_CASE_DEFAULT - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_802478B8))) - EVT_END_SWITCH - EVT_EXEC_WAIT(N(makeEntities)) - EVT_IF_EQ(GB_StoryProgress, -16) - EVT_EXEC(N(80242498)) - EVT_END_IF - EVT_EXEC(N(enterWalk_8024346C)) - EVT_CALL(GetEntryID, LVar0) - EVT_IF_EQ(LVar0, 3) - EVT_WAIT(65) - EVT_END_IF - EVT_EXEC(N(80243790)) - EVT_EXEC(N(80241F10)) - EVT_CALL(UseDoorSounds, 0) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(0.3)) - EVT_RETURN - EVT_END -}; diff --git a/src/world/area_arn/arn_07/BED5F0.c b/src/world/area_arn/arn_07/BED5F0.c deleted file mode 100644 index dfba8e8548..0000000000 --- a/src/world/area_arn/arn_07/BED5F0.c +++ /dev/null @@ -1,11 +0,0 @@ -#include "arn_07.h" - -ApiStatus N(func_80240800_BED5F0)(Evt* script, s32 isInitialCall) { - f32 temp_f0 = evt_get_float_variable(script, LVar0); - - if (temp_f0 >= 360.0) { - temp_f0 -= 360.0; - } - evt_set_float_variable(script, LVar0, temp_f0); - return ApiStatus_DONE2; -} diff --git a/src/world/area_arn/arn_07/BED660.c b/src/world/area_arn/arn_07/BED660.c deleted file mode 100644 index 39042de7f0..0000000000 --- a/src/world/area_arn/arn_07/BED660.c +++ /dev/null @@ -1,5 +0,0 @@ -#include "arn_07.h" - -#include "world/common/SetEntityFlags100000.inc.c" - -#include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_arn/arn_07/arn_07.h b/src/world/area_arn/arn_07/arn_07.h index ae43e38c2c..eed6e990e7 100644 --- a/src/world/area_arn/arn_07/arn_07.h +++ b/src/world/area_arn/arn_07/arn_07.h @@ -2,49 +2,40 @@ /// @brief Gusty Gulch - Windmill Exterior #include "common.h" -#include "../arn.h" #include "message_ids.h" #include "map.h" -#define NAMESPACE arn_07 +#include "../arn.h" +#include "mapfs/arn_07_shape.h" +#include "mapfs/arn_07_hit.h" + +#include "sprite/npc/TubbasHeart.h" +#include "sprite/npc/WorldTubba.h" +#include "sprite/npc/WorldBow.h" +#include "sprite/npc/Boo.h" +#include "sprite/npc/Bootler.h" +#include "sprite/npc/WorldSkolar.h" +#include "sprite/npc/Paragoomba.h" enum { - NPC_TUBBAS_HEART, - NPC_WORLD_TUBBA, - NPC_BOO0, - NPC_BOO1, - NPC_BOO2, - NPC_BOO3, - NPC_BOO4, - NPC_BOO5, - NPC_WORLD_BOW, - NPC_BOOTLER, - NPC_PARAGOOMBA0, - NPC_PARAGOOMBA1, - NPC_PARAGOOMBA2, - NPC_WORLD_SKOLAR, + NPC_TubbasHeart = 0, + NPC_Tubba = 1, + NPC_Boo_01 = 2, + NPC_Boo_02 = 3, + NPC_Boo_03 = 4, + NPC_Boo_04 = 5, + NPC_Boo_05 = 6, + NPC_Boo_06 = 7, + NPC_Bow = 8, + NPC_Bootler = 9, + NPC_HyperParagoomba_01 = 10, + NPC_HyperParagoomba_02 = 11, + NPC_HyperParagoomba_03 = 12, + NPC_Skolar = 13, }; -ApiStatus N(arn_07_StarSpiritEffectFunc1)(Evt* script, s32 isInitialCall); -ApiStatus N(arn_07_StarSpiritEffectFunc2)(Evt* script, s32 isInitialCall); -ApiStatus N(arn_07_StarSpiritEffectFunc3)(Evt* script, s32 isInitialCall); -ApiStatus N(arn_07_StarSpiritEffectFunc4)(Evt* script, s32 isInitialCall); -ApiStatus N(arn_07_StarSpiritEffectFunc5)(Evt* script, s32 isInitialCall); -ApiStatus N(arn_07_StarSpiritEffectFunc6)(Evt* script, s32 isInitialCall); -ApiStatus N(func_80240800_BED5F0)(Evt* script, s32 isInitialCall); -ApiStatus N(FlyingAI_Main)(Evt* script, s32 isInitialCall); -ApiStatus N(SetEntityFlags100000)(Evt* script, s32 isInitialCall); -ApiStatus N(GetEntityPosition)(Evt* script, s32 isInitialCall); -ApiStatus PostChapter3StatUpdate(Evt* script, s32 isInitialCall); +enum { + MV_Unk_00 = MapVar(0), +}; -extern EvtScript N(exitSingleDoor_802428D4); -extern NpcGroupList N(npcGroupList_8024787C); -extern NpcGroupList N(npcGroupList_802478B8); -extern NpcGroupList N(npcGroupList_802478E8); -extern EvtScript N(80243790); -extern EvtScript N(802437AC); -extern EvtScript N(802439B0); -extern EvtScript N(80242048); -extern EvtScript N(80241F10); -extern EvtScript N(main); -extern EvtScript N(makeEntities); +#define NAMESPACE arn_07 diff --git a/src/world/area_arn/arn_07/header.c b/src/world/area_arn/arn_07/arn_07_0_header.c similarity index 55% rename from src/world/area_arn/arn_07/header.c rename to src/world/area_arn/arn_07/arn_07_0_header.c index 1d9105d528..5978dcfaae 100644 --- a/src/world/area_arn/arn_07/header.c +++ b/src/world/area_arn/arn_07/arn_07_0_header.c @@ -1,33 +1,34 @@ #include "arn_07.h" -#include "message_ids.h" -EntryList N(entryList) = { - { 0.0f, 20.0f, -147.0f, 180.0f }, - { 485.0f, 0.0f, 0.0f, 270.0f }, - { -488.0f, 0.0f, 0.0f, 90.0f }, - { 194.0f, 0.0f, 0.0f, 0.0f }, +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [arn_07_ENTRY_0] { 0.0, 20.0, -147.0, 180.0 }, + [arn_07_ENTRY_1] { 485.0, 0.0, 0.0, 270.0 }, + [arn_07_ENTRY_2] { -488.0, 0.0, 0.0, 90.0 }, + [arn_07_ENTRY_3] { 194.0, 0.0, 0.0, 0.0 }, }; MapSettings N(settings) = { - .main = &N(main), - .entryList = &N(entryList), - .entryCount = ENTRY_COUNT(N(entryList)), + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), .background = &gBackgroundImage, .tattle = { MSG_MapTattle_arn_07 }, }; -EvtScript N(80241F10) = { +EvtScript N(EVS_SetupMusic) = { EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-29) + EVT_CASE_LT(STORY_CH3_TUBBA_WOKE_UP) EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) EVT_CALL(PlayAmbientSounds, AMBIENT_WIND) - EVT_CASE_LT(-17) + EVT_CASE_LT(STORY_CH3_HEART_ESCAPED_WINDY_MILL) EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) EVT_CALL(PlayAmbientSounds, AMBIENT_WIND) - EVT_CASE_LT(-16) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) EVT_CALL(PlayAmbientSounds, AMBIENT_WIND) - EVT_CASE_EQ(-14) + EVT_CASE_EQ(STORY_CH3_BEGAN_PEACH_MISSION) EVT_CALL(SetMusicTrack, 0, SONG_STAR_SPIRIT_THEME, 1, 8) EVT_CASE_DEFAULT EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) diff --git a/src/world/area_arn/arn_07/arn_07_1_main.c b/src/world/area_arn/arn_07/arn_07_1_main.c new file mode 100644 index 0000000000..daa3bebcee --- /dev/null +++ b/src/world/area_arn/arn_07/arn_07_1_main.c @@ -0,0 +1,368 @@ +#include "arn_07.h" + +extern EvtScript N(EVS_MakeEntities); +extern EvtScript N(EVS_UnlockDoor); +extern EvtScript N(EVS_SetupWindmill); +extern EvtScript N(EVS_SetupMusic); +extern NpcGroupList N(DefaultNPCs); +extern NpcGroupList N(BossNPCs); +extern NpcGroupList N(SpiritNPCs); + +#include "world/common/StarSpiritEffectFunc.inc.c" + +s32 N(KeyList)[] = { + ITEM_MYSTICAL_KEY, + ITEM_NONE +}; + +EvtScript N(EVS_SpawnStarCard) = { + EVT_CALL(FadeOutMusic, 0, 1000) + EVT_SET(LVar0, 0) + EVT_IF_EQ(LVar0, 0) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 145, 65, 0) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.6)) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 145, 30, 0) + EVT_CALL(GetCamDistance, CAM_DEFAULT, LVar1) + EVT_SUB(LVar1, 100) + EVT_CALL(SetCamDistance, CAM_DEFAULT, LVar1) + EVT_IF_NE(10000, 10000) + EVT_CALL(GetCamPitch, CAM_DEFAULT, LVar2, LVar3) + EVT_CALL(SetCamPitch, CAM_DEFAULT, LVar2, 10000) + EVT_END_IF + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(N(StarSpiritEffectFunc2), 2, 50, 100, 31, -6, 145, 65, 0, 30, 0) + EVT_THREAD + EVT_CALL(N(StarSpiritEffectFunc3)) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(1) + EVT_CALL(PlaySound, SOUND_80000067) + EVT_CALL(N(StarSpiritEffectFunc1)) + EVT_CALL(StopSound, SOUND_80000067) + EVT_CALL(PlaySoundAt, SOUND_B2, 0, 145, 65, 0) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(12) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_1002A) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(50) + EVT_WAIT(115) + EVT_CALL(PlaySoundAt, SOUND_137, 0, 145, 65, 0) + EVT_END_THREAD + EVT_CALL(N(StarSpiritEffectFunc4), 1) + EVT_THREAD + EVT_WAIT(80) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_END_THREAD + EVT_ADD(LVar1, 100) + EVT_CALL(SetCamDistance, CAM_DEFAULT, LVar1) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 145, 0, 0) + EVT_CALL(N(StarSpiritEffectFunc4), 2) + EVT_CALL(GetPlayerPos, LVar2, LVar3, LVar4) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar2, LVar3, LVar4) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar2, LVar3, LVar4) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_ELSE + EVT_CALL(N(StarSpiritEffectFunc5), 2, 145, 30, 0, 0) + EVT_THREAD + EVT_CALL(N(StarSpiritEffectFunc6)) + EVT_END_THREAD + EVT_WAIT(1) + EVT_END_IF + EVT_CALL(N(StarSpiritEffectFunc4), 3) + EVT_CALL(PlaySoundAtPlayer, SOUND_138, 0) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_SET(GB_StoryProgress, STORY_CH3_STAR_SPIRIT_RESCUED) + EVT_CALL(GotoMapSpecial, EVT_PTR("kmr_23"), kmr_23_ENTRY_2, TRANSITION_14) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_RespawnStarCard) = { + EVT_SET(LVar0, 1) + EVT_IF_EQ(LVar0, 0) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 145, 65, 0) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.6)) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 145, 30, 0) + EVT_CALL(GetCamDistance, CAM_DEFAULT, LVar1) + EVT_SUB(LVar1, 100) + EVT_CALL(SetCamDistance, CAM_DEFAULT, LVar1) + EVT_IF_NE(10000, 10000) + EVT_CALL(GetCamPitch, CAM_DEFAULT, LVar2, LVar3) + EVT_CALL(SetCamPitch, CAM_DEFAULT, LVar2, 10000) + EVT_END_IF + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(N(StarSpiritEffectFunc2), 2, 50, 100, 31, -6, 145, 65, 0, 30, 0) + EVT_THREAD + EVT_CALL(N(StarSpiritEffectFunc3)) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(1) + EVT_CALL(PlaySound, SOUND_80000067) + EVT_CALL(N(StarSpiritEffectFunc1)) + EVT_CALL(StopSound, SOUND_80000067) + EVT_CALL(PlaySoundAt, SOUND_B2, 0, 145, 65, 0) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(12) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_1002A) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(50) + EVT_WAIT(115) + EVT_CALL(PlaySoundAt, SOUND_137, 0, 145, 65, 0) + EVT_END_THREAD + EVT_CALL(N(StarSpiritEffectFunc4), 1) + EVT_THREAD + EVT_WAIT(80) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_END_THREAD + EVT_ADD(LVar1, 100) + EVT_CALL(SetCamDistance, CAM_DEFAULT, LVar1) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 145, 0, 0) + EVT_CALL(N(StarSpiritEffectFunc4), 2) + EVT_CALL(GetPlayerPos, LVar2, LVar3, LVar4) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar2, LVar3, LVar4) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar2, LVar3, LVar4) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_ELSE + EVT_CALL(N(StarSpiritEffectFunc5), 2, 145, 30, 0, 0) + EVT_THREAD + EVT_CALL(N(StarSpiritEffectFunc6)) + EVT_END_THREAD + EVT_WAIT(1) + EVT_END_IF + EVT_CALL(N(StarSpiritEffectFunc4), 3) + EVT_CALL(PlaySoundAtPlayer, SOUND_138, 0) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_SET(GB_StoryProgress, STORY_CH3_STAR_SPIRIT_RESCUED) + EVT_CALL(GotoMapSpecial, EVT_PTR("kmr_23"), kmr_23_ENTRY_2, TRANSITION_14) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_ExitDoor_arn_08_0) = EVT_EXIT_SINGLE_DOOR(arn_07_ENTRY_0, "arn_08", arn_08_ENTRY_0, + COLLIDER_tt3, MODEL_o39, DOOR_SWING_OUT); +EvtScript N(EVS_ExitWalk_arn_03_0) = EVT_EXIT_WALK(60, arn_07_ENTRY_1, "arn_03", arn_03_ENTRY_0); +EvtScript N(EVS_ExitWalk_mim_12_1) = EVT_EXIT_WALK(60, arn_07_ENTRY_2, "mim_12", mim_12_ENTRY_1); + +EvtScript N(EVS_Scene_TubbaReunion) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SetPlayerPos, -28, 0, -333) + EVT_CALL(SetNpcPos, NPC_PARTNER, -28, 0, -333) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(SetCamType, CAM_DEFAULT, 0, FALSE) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(25.0), EVT_FLOAT(-4.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 1100) + EVT_CALL(SetCamPosA, CAM_DEFAULT, 500, 0) + EVT_CALL(SetCamPosB, CAM_DEFAULT, 0, -500) + EVT_CALL(SetCamPosC, CAM_DEFAULT, 0, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 5, 0, -147) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(RotateModel, MODEL_o39, 80, 0, -1, 0) + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(SetNpcJumpscale, NPC_TubbasHeart, EVT_FLOAT(2.5)) + EVT_CALL(NpcJump0, NPC_TubbasHeart, 0, 20, -120, 8) + EVT_WAIT(1) + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, 0, 10, -60, 12) + EVT_WAIT(1) + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, 0, 0, 0, 12) + EVT_WAIT(1) + EVT_CALL(SetNpcVar, NPC_TubbasHeart, 0, 0) + EVT_THREAD + EVT_LOOP(0) + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, 0, 0, 0, 10) + EVT_WAIT(1) + EVT_CALL(GetNpcVar, NPC_TubbasHeart, 0, LVar0) + EVT_IF_EQ(LVar0, 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(SetNpcVar, NPC_TubbasHeart, 0, 2) + EVT_END_THREAD + EVT_THREAD + EVT_CALL(MakeLerp, 80, 0, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_o39, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(PlaySoundAtCollider, COLLIDER_tt3, SOUND_BASIC_DOOR_CLOSE, 0) + EVT_END_THREAD + EVT_CALL(NpcFaceNpc, NPC_TubbasHeart, NPC_Tubba, 0) + EVT_CALL(SpeakToPlayer, NPC_TubbasHeart, ANIM_TubbasHeart_Anim0A, ANIM_TubbasHeart_Anim01, 5, MSG_CH3_00C7) + EVT_CALL(SetNpcVar, NPC_TubbasHeart, 0, 1) + EVT_LOOP(0) + EVT_CALL(GetNpcVar, NPC_TubbasHeart, 0, LVar0) + EVT_IF_EQ(LVar0, 2) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, 75, 0, 10, 12) + EVT_WAIT(1) + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, 150, 0, 20, 12) + EVT_WAIT(1) + EVT_THREAD + EVT_WAIT(4) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(2.0), EVT_FLOAT(-9.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 700) + EVT_CALL(SetCamPosA, CAM_DEFAULT, 500, 0) + EVT_CALL(SetCamPosB, CAM_DEFAULT, 0, -500) + EVT_CALL(SetCamPosC, CAM_DEFAULT, 0, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 65, 0, -137) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim22) + EVT_END_THREAD + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, 298, 56, 31, 18) + EVT_CALL(SetNpcPos, NPC_TubbasHeart, 0, -1000, 0) + EVT_CALL(EnableNpcShadow, NPC_TubbasHeart, FALSE) + EVT_THREAD + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim23) + EVT_WAIT(20) + EVT_CALL(SetNpcAnimation, NPC_Tubba, ANIM_WorldTubba_Anim06) + EVT_END_THREAD + EVT_WAIT(20) + EVT_THREAD + EVT_CALL(PlaySoundAtCollider, COLLIDER_tt3, SOUND_BASIC_DOOR_OPEN, 0) + EVT_CALL(MakeLerp, 0, 80, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_o39, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(30) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 236, 0, -46) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(8.0), EVT_FLOAT(-9.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 450) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 250, 0, -46) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_END_THREAD + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt3, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(SetPlayerPos, 0, 20, -195) + EVT_CALL(SetNpcPos, NPC_PARTNER, 0, 20, -195) + EVT_CALL(EnablePartnerAI) + EVT_CALL(PlayerMoveTo, 0, 0, 45) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_tt3, COLLIDER_FLAGS_UPPER_MASK) + EVT_THREAD + EVT_CALL(MakeLerp, 80, 0, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_o39, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(PlaySoundAtCollider, COLLIDER_tt3, SOUND_BASIC_DOOR_CLOSE, 0) + EVT_END_THREAD + EVT_CALL(PlayerMoveTo, 200, 0, 35) + EVT_WAIT(5) + EVT_CALL(SpeakToPlayer, NPC_Tubba, ANIM_WorldTubba_Anim10, ANIM_WorldTubba_Anim06, 0, MSG_CH3_00C8) + EVT_CALL(SetNpcVar, NPC_Tubba, 0, 1) + EVT_WAIT(30) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_arn_03_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deilie, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_mim_12_1)), TRIGGER_FLOOR_ABOVE, COLLIDER_deiliw, 1, 0) + EVT_IF_LT(GB_StoryProgress, STORY_CH3_UNLOCKED_WINDY_MILL) + EVT_BIND_PADLOCK(EVT_PTR(N(EVS_UnlockDoor)), TRIGGER_WALL_PRESS_A, EVT_ENTITY_INDEX(0), EVT_PTR(N(KeyList)), 0, 1) + EVT_ELSE + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_arn_08_0)), TRIGGER_WALL_PRESS_A, COLLIDER_tt3, 1, 0) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(arn_07_ENTRY_0) + EVT_IF_EQ(GB_StoryProgress, STORY_CH3_HEART_ESCAPED_WINDY_MILL) + EVT_EXEC_WAIT(N(EVS_Scene_TubbaReunion)) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_ELSE + EVT_SET(LVar2, MODEL_o39) + EVT_SET(LVar3, DOOR_SWING_OUT) + EVT_EXEC_WAIT(EnterSingleDoor) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_END_IF + EVT_CASE_EQ(arn_07_ENTRY_1) + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_WAIT(1) + EVT_CASE_EQ(arn_07_ENTRY_2) + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_WAIT(1) + EVT_CASE_EQ(arn_07_ENTRY_3) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_WAIT(1) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_GUSTY_GULCH) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_ALT_NO_LEAD() + EVT_SET(GF_MAP_GustyGulch, TRUE) + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(BossNPCs))) + EVT_CASE_EQ(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(SpiritNPCs))) + EVT_CASE_DEFAULT + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_END_SWITCH + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_IF_EQ(GB_StoryProgress, STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_EXEC(N(EVS_RespawnStarCard)) + EVT_END_IF + EVT_EXEC(N(EVS_EnterMap)) + EVT_CALL(GetEntryID, LVar0) + EVT_IF_EQ(LVar0, arn_07_ENTRY_3) + EVT_WAIT(65) + EVT_END_IF + EVT_EXEC(N(EVS_SetupWindmill)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_CALL(UseDoorSounds, DOOR_SOUNDS_BASIC) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.3)) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_07/arn_07_2_windmill.c b/src/world/area_arn/arn_07/arn_07_2_windmill.c new file mode 100644 index 0000000000..5486e82aab --- /dev/null +++ b/src/world/area_arn/arn_07/arn_07_2_windmill.c @@ -0,0 +1,58 @@ +#include "arn_07.h" + +extern EvtScript(N(EVS_UpdateWindmill)); + +MAP_RODATA_PAD(1,windmill); + +API_CALLABLE(N(WrapWindmillAngle)) { + f32 angle = evt_get_float_variable(script, LVar0); + + if (angle >= 360.0) { + angle -= 360.0; + } + evt_set_float_variable(script, LVar0, angle); + return ApiStatus_DONE2; +} + +EvtScript N(EVS_SetupWindmill) = { + EVT_EXEC(N(EVS_UpdateWindmill)) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_UpdateWindmill) = { + EVT_SETF(LVar0, EVT_FLOAT(0.0)) + EVT_SET(LVar1, 30) + EVT_CALL(PlaySoundAtModel, MODEL_o36, SOUND_8000004A, 0) + EVT_LABEL(0) + EVT_ADDF(LVar0, EVT_FLOAT(1.0)) + EVT_CALL(N(WrapWindmillAngle)) + EVT_CALL(RotateModel, MODEL_o40, LVar0, 0, 0, 1) + EVT_WAIT(1) + EVT_SUB(LVar1, 1) + EVT_IF_GT(LVar1, 0) + EVT_GOTO(0) + EVT_END_IF + EVT_SET(LVar1, 30) + EVT_CALL(RandInt, 100, LVar2) + EVT_IF_GT(LVar2, 10) + EVT_GOTO(0) + EVT_END_IF + EVT_SETF(LVar2, EVT_FLOAT(1.0)) + EVT_LOOP(50) + EVT_SUBF(LVar2, EVT_FLOAT(0.01)) + EVT_ADDF(LVar0, LVar2) + EVT_CALL(RotateModel, MODEL_o40, LVar0, 0, 0, 1) + EVT_WAIT(1) + EVT_END_LOOP + EVT_LOOP(50) + EVT_ADDF(LVar2, EVT_FLOAT(0.01)) + EVT_ADDF(LVar0, LVar2) + EVT_CALL(RotateModel, MODEL_o40, LVar0, 0, 0, 1) + EVT_WAIT(1) + EVT_END_LOOP + EVT_SET(LVar1, 30) + EVT_GOTO(0) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_07/arn_07_3_entity.c b/src/world/area_arn/arn_07/arn_07_3_entity.c new file mode 100644 index 0000000000..fe008e9b33 --- /dev/null +++ b/src/world/area_arn/arn_07/arn_07_3_entity.c @@ -0,0 +1,54 @@ +#include "arn_07.h" +#include "entity.h" + +extern EvtScript(N(EVS_ExitDoor_arn_08_0)); + +MAP_RODATA_PAD(1,entity); + +#include "world/common/RemovePadlock.inc.c" +#include "world/common/GetEntityPosition.inc.c" + +EvtScript N(EVS_UnlockDoor) = { + EVT_SET_GROUP(EVT_GROUP_00) + EVT_CALL(SetTimeFreezeMode, TIME_FREEZE_PARTIAL) + EVT_CALL(ShowKeyChoicePopup) + EVT_IF_EQ(LVar0, 0) + EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_00D8, 160, 40) + EVT_CALL(CloseChoicePopup) + EVT_CALL(SetTimeFreezeMode, TIME_FREEZE_NORMAL) + EVT_RETURN + EVT_END_IF + EVT_IF_EQ(LVar0, -1) + EVT_CALL(CloseChoicePopup) + EVT_CALL(SetTimeFreezeMode, TIME_FREEZE_NORMAL) + EVT_RETURN + EVT_END_IF + EVT_CALL(FindKeyItem, ITEM_MYSTICAL_KEY, LVar0) + EVT_CALL(RemoveKeyItemAt, LVar0) + EVT_CALL(CloseChoicePopup) + EVT_SET(GB_StoryProgress, STORY_CH3_UNLOCKED_WINDY_MILL) + EVT_CALL(N(GetEntityPosition), MV_Unk_00, LVar0, LVar1, LVar2) + EVT_CALL(PlaySoundAt, SOUND_269, 0, LVar0, LVar1, LVar2) + EVT_SET(LVar0, MV_Unk_00) + EVT_CALL(N(RemovePadlock)) + EVT_CALL(SetTimeFreezeMode, TIME_FREEZE_NORMAL) + EVT_UNBIND + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindLockTrigger) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_arn_08_0)), TRIGGER_WALL_PRESS_A, COLLIDER_tt3, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_MakeEntities) = { + EVT_IF_LT(GB_StoryProgress, STORY_CH3_UNLOCKED_WINDY_MILL) + EVT_CALL(MakeEntity, EVT_PTR(Entity_Padlock), 10, 30, -155, 0, MAKE_ENTITY_END) + EVT_CALL(AssignScript, EVT_PTR(N(EVS_BindLockTrigger))) + EVT_SET(MV_Unk_00, LVar0) + EVT_END_IF + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_07/arn_07_4_npc.c b/src/world/area_arn/arn_07/arn_07_4_npc.c new file mode 100644 index 0000000000..9290d1d142 --- /dev/null +++ b/src/world/area_arn/arn_07/arn_07_4_npc.c @@ -0,0 +1,902 @@ +#include "arn_07.h" +#include "effects.h" + +extern EvtScript(N(EVS_SetupMusic)); +extern EvtScript(N(EVS_SpawnStarCard)); + +#include "world/common/enemy/complete/HyperParagoomba.inc.c" +#include "world/common/npc/TubbasHeart.inc.c" + +NpcSettings N(NpcSettings_Tubba) = { + .height = 90, + .radius = 65, + .level = 13, + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, +}; + +#include "world/common/npc/Boo.inc.c" + +NpcSettings N(NpcSettings_Skolar) = { + .height = 26, + .radius = 24, + .level = 99, +}; + +NpcSettings N(NpcSettings_Unused1) = { + .height = 20, + .radius = 20, + .level = 99, +}; + +NpcSettings N(NpcSettings_Unused2) = { + .height = 22, + .radius = 24, + .level = 99, +}; + +API_CALLABLE(N(UpgradeStarPower)) { + PlayerData* playerData = &gPlayerData; + + set_max_SP(3); + playerData->curHP = playerData->curMaxHP; + playerData->curFP = playerData->curMaxFP; + sync_status_menu(); + return ApiStatus_DONE2; +} + +EvtScript N(EVS_TubbaWalking) = { + EVT_LOOP(0) + EVT_CALL(PlaySoundAtNpc, NPC_Tubba, SOUND_20F6, 0) + EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 3, EVT_FLOAT(0.8)) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Scene_TubbaRelents) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 236, 0, -46) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 250, 0, -46) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim08) + EVT_CALL(SetNpcYaw, NPC_SELF, 90) + EVT_WAIT(10) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_WorldTubba_Anim12, ANIM_WorldTubba_Anim08, 5, MSG_CH3_00CA) + EVT_WAIT(10) + EVT_CALL(InterpNpcYaw, NPC_SELF, 270, 0) + EVT_WAIT(10) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_WorldTubba_Anim12, ANIM_WorldTubba_Anim08, 5, MSG_CH3_00CB) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 300) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(5.0), EVT_FLOAT(-16.0)) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Scene_BossDefeated) = { + EVT_WAIT(10) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim22) + EVT_WAIT(15) + EVT_LOOP(4) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_B0000010, 0) + EVT_CALL(SetNpcVar, NPC_Boo_02, 0, 1) + EVT_WAIT(4) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_B0000010, 0) + EVT_CALL(SetNpcVar, NPC_Boo_05, 0, 1) + EVT_WAIT(4) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_B0000010, 0) + EVT_CALL(SetNpcVar, NPC_Boo_01, 0, 1) + EVT_WAIT(6) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_B0000010, 0) + EVT_CALL(SetNpcVar, NPC_Boo_03, 0, 1) + EVT_WAIT(8) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_B0000010, 0) + EVT_CALL(SetNpcVar, NPC_Boo_04, 0, 1) + EVT_WAIT(6) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_B0000010, 0) + EVT_CALL(SetNpcVar, NPC_Boo_06, 0, 1) + EVT_WAIT(6) + EVT_END_LOOP + EVT_WAIT(10) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim23) + EVT_WAIT(30) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim22) + EVT_WAIT(10) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_B0000010, 0) + EVT_CALL(SetNpcVar, NPC_Boo_02, 0, 1) + EVT_WAIT(15) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim21) + EVT_WAIT(45) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 236, 0, -46) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SUB(LVar0, 50) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_WAIT(5) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_StandStill) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim0F) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_WorldTubba_Anim12, ANIM_WorldTubba_Anim08, 0, MSG_CH3_00CC) + EVT_THREAD + EVT_WAIT(5) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_LOOP(40) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_CALL(func_802CF56C, 2) + EVT_LOOP(45) + EVT_CALL(PlayerFaceNpc, NPC_SELF, TRUE) + EVT_END_LOOP + EVT_END_THREAD + EVT_EXEC_GET_TID(N(EVS_TubbaWalking), LVarA) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SUB(LVar0, 800) + EVT_CALL(NpcMoveTo, NPC_SELF, LVar0, LVar2, 80) + EVT_KILL_THREAD(LVarA) + EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_SET(GB_StoryProgress, STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SetMusicTrack, 0, SONG_CHEERFUL_BOOS_MANSION, 0, 8) + EVT_CALL(GetCurrentPartnerID, LVar6) + EVT_IF_EQ(LVar6, PARTNER_BOW) + EVT_SET(LVar5, -4) + EVT_CALL(func_802CF56C, 0) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SetNpcPos, NPC_PARTNER, 257, 25, 0) + EVT_END_IF + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 300) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 30) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_WAIT(10) + EVT_IF_NE(LVar6, PARTNER_BOW) + EVT_SET(LVar5, 8) + EVT_CALL(SetNpcPos, NPC_Bow, 257, 25, 0) + EVT_CALL(func_802CFD30, 8, 7, 0, 0, 0, 0) + EVT_CALL(NpcFacePlayer, NPC_Bow, 0) + EVT_CALL(MakeLerp, 0, 240, 20, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(func_802CFD30, 8, 7, LVar0, 0, 0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(func_802CF56C, 0) + EVT_END_IF + EVT_WAIT(10) + EVT_THREAD + EVT_IF_NE(LVar6, PARTNER_BOW) + EVT_CALL(DisablePartnerAI, 0) + EVT_WAIT(1) + EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_Bow, 0) + EVT_WAIT(5) + EVT_END_IF + EVT_END_THREAD + EVT_CALL(SpeakToPlayer, LVar5, ANIM_WorldBow_Celebrate, ANIM_WorldBow_Celebrate, 0, MSG_CH3_00CD) + EVT_CALL(InterpPlayerYaw, 270, 0) + EVT_WAIT(10) + EVT_CALL(GetNpcPos, LVar5, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, -20) + EVT_CALL(SetCamProperties, CAM_DEFAULT, EVT_FLOAT(2.0), LVar0, LVar1, LVar2, EVT_FLOAT(300.0), EVT_FLOAT(15.0), EVT_FLOAT(-7.0)) + EVT_CALL(PlayerFaceNpc, LVar5, FALSE) + EVT_WAIT(10) + EVT_CALL(SpeakToPlayer, LVar5, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 0, MSG_CH3_00CE) + EVT_CALL(ShowChoice, MSG_Choice_000D) + EVT_IF_EQ(LVar0, 0) + EVT_CALL(ContinueSpeech, LVar5, ANIM_WorldBow_Celebrate, ANIM_WorldBow_Celebrate, 0, MSG_CH3_00CF) + EVT_ELSE + EVT_CALL(ContinueSpeech, LVar5, ANIM_WorldBow_Celebrate, ANIM_WorldBow_Celebrate, 0, MSG_CH3_00D0) + EVT_END_IF + EVT_CALL(SpeakToPlayer, LVar5, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 0, MSG_CH3_00D1) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 175, 0, 0) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 175, 0, 0) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SetNpcPos, NPC_Bootler, 93, 160, -6) + EVT_CALL(InterpNpcYaw, NPC_Bootler, 90, 0) + EVT_THREAD + EVT_WAIT(10) + EVT_CALL(InterpPlayerYaw, 270, 0) + EVT_END_THREAD + EVT_THREAD + EVT_IF_NE(LVar6, PARTNER_BOW) + EVT_WAIT(12) + EVT_CALL(InterpNpcYaw, NPC_PARTNER, 270, 0) + EVT_END_IF + EVT_END_THREAD + EVT_CALL(MakeLerp, 160, 31, 70, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(SetNpcPos, NPC_Bootler, 93, LVar0, -6) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_THREAD + EVT_IF_NE(LVar6, PARTNER_BOW) + EVT_CALL(InterpNpcYaw, NPC_PARTNER, 90, 0) + EVT_END_IF + EVT_END_THREAD + EVT_CALL(SpeakToPlayer, LVar5, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 0, MSG_CH3_00D2) + EVT_THREAD + EVT_IF_NE(LVar6, PARTNER_BOW) + EVT_WAIT(12) + EVT_CALL(InterpNpcYaw, NPC_PARTNER, 270, 0) + EVT_END_IF + EVT_END_THREAD + EVT_WAIT(10) + EVT_CALL(InterpPlayerYaw, 270, 0) + EVT_EXEC(N(EVS_SpawnStarCard)) + EVT_WAIT(20) + EVT_THREAD + EVT_IF_NE(LVar6, 9) + EVT_CALL(MakeLerp, 240, 0, 20, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(func_802CFD30, 8, 7, LVar0, 0, 0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(SetNpcPos, NPC_Bow, NPC_DISPOSE_LOCATION) + EVT_CALL(EnablePartnerAI) + EVT_ELSE + EVT_WAIT(20) + EVT_CALL(ClearPartnerMoveHistory, NPC_PARTNER) + EVT_CALL(EnablePartnerAI) + EVT_END_IF + EVT_WAIT(8) + EVT_CALL(func_802CF56C, 2) + EVT_END_THREAD + EVT_WAIT(20) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcIdle_Tubba) = { + EVT_LOOP(0) + EVT_CALL(GetSelfVar, 0, LVar0) + EVT_IF_EQ(LVar0, 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(StartBossBattle, SONG_TUBBA_BLUBBA_BATTLE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcIdle_Boo) = { + EVT_LABEL(10) + EVT_LOOP(0) + EVT_CALL(GetSelfVar, 0, LVar0) + EVT_IF_EQ(LVar0, 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_THREAD + EVT_SETF(LVar0, EVT_FLOAT(0.5)) + EVT_CALL(MakeLerp, 50, 80, 15, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_SETF(LVar2, LVar0) + EVT_DIVF(LVar2, 100) + EVT_CALL(SetNpcScale, NPC_SELF, LVar2, LVar2, LVar2) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_CALL(RandInt, 80, LVar2) + EVT_CALL(RandInt, 10, LVar3) + EVT_ADD(LVar3, 5) + EVT_CALL(MakeLerp, LVar2, 240, LVar3, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(func_802CFD30, -1, 7, LVar0, 0, 0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(SetNpcPos, NPC_SELF, 293, 59, 21) + EVT_WAIT(1) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(-0.3)) + EVT_CALL(RandInt, 100, LVar3) + EVT_SUB(LVar0, LVar3) + EVT_ADD(LVar1, 100) + EVT_CALL(NpcJump0, NPC_SELF, LVar0, LVar1, LVar2, 20) + EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION) + EVT_CALL(SetSelfVar, 0, 0) + EVT_GOTO(10) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcDefeat_Tubba) = { + EVT_CALL(SetEncounterStatusFlags, 2, TRUE) + EVT_CALL(GetBattleOutcome, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(OUTCOME_PLAYER_WON) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBAS_MANOR, 1, 8) + EVT_EXEC_WAIT(N(EVS_Scene_TubbaRelents)) + EVT_EXEC(N(EVS_Scene_BossDefeated)) + EVT_CASE_EQ(OUTCOME_PLAYER_LOST) + EVT_CASE_EQ(OUTCOME_PLAYER_FLED) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_TubbasHeart) = { + EVT_IF_NE(GB_StoryProgress, STORY_CH3_HEART_ESCAPED_WINDY_MILL) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Tubba) = { + EVT_CALL(SetSelfVar, 0, 0) + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Tubba))) + EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(EVS_NpcDefeat_Tubba))) + EVT_IF_NE(GB_StoryProgress, STORY_CH3_HEART_ESCAPED_WINDY_MILL) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo) = { + EVT_CALL(SetSelfVar, 0, 0) + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Boo))) + EVT_IF_NE(GB_StoryProgress, STORY_CH3_HEART_ESCAPED_WINDY_MILL) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Bow) = { + EVT_IF_NE(GB_StoryProgress, STORY_CH3_HEART_ESCAPED_WINDY_MILL) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Bootler) = { + EVT_IF_NE(GB_StoryProgress, STORY_CH3_HEART_ESCAPED_WINDY_MILL) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +s32 N(ExtraAnims_Tubba)[] = { + ANIM_WorldTubba_Anim00, + ANIM_WorldTubba_Anim22, + ANIM_WorldTubba_Anim23, + ANIM_WorldTubba_Anim06, + ANIM_WorldTubba_Anim10, + ANIM_WorldTubba_Anim08, + ANIM_WorldTubba_Anim0F, + ANIM_WorldTubba_Anim12, + -1 +}; + +s32 N(ExtraAnims_Boo)[] = { + ANIM_Boo_Still, + -1 +}; + +s32 N(ExtraAnims_GustyBoo)[] = { + ANIM_Boo_Tan_Still, + -1 +}; + +s32 N(ExtraAnims_Bootler)[] = { + ANIM_Bootler_Idle, + -1 +}; + +EvtScript N(EVS_NpcIdle_Skolar) = { + EVT_LOOP(0) + EVT_LOOP(10) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SUB(LVar1, 1) + EVT_CALL(SetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_END_LOOP + EVT_LOOP(10) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 1) + EVT_CALL(SetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Scene_SkolarRescued) = { + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(func_802CF56C, 2) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_SET(LVar3, LVar0) + EVT_ADD(LVar3, -50) + EVT_SET(LVar4, LVar1) + EVT_ADD(LVar4, 26) + EVT_CALL(SetNpcPos, NPC_Skolar, LVar3, LVar4, LVar2) + EVT_CALL(PlayerFaceNpc, NPC_Skolar, FALSE) + EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_Skolar, 0) + EVT_ADD(LVar0, -25) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(475.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, 18, -8) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_WAIT(1) + EVT_CALL(WaitForPlayerInputEnabled) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_WAIT(40) + EVT_CALL(SpeakToPlayer, NPC_Skolar, ANIM_WorldSkolar_TalkAngry, ANIM_WorldSkolar_Idle, 512, MSG_CH3_00D3) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, 18, -9) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(MakeLerp, 0, 360, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(SetNpcRotation, NPC_Skolar, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(EnableNpcAI, NPC_Skolar, FALSE) + EVT_CALL(SetNpcAnimation, NPC_Skolar, ANIM_WorldSkolar_Leap) + EVT_WAIT(20) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_GotItem) + EVT_CALL(PlaySoundAtPlayer, SOUND_139, 0) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_SET(LVar3, LVar1) + EVT_ADD(LVar1, 50) + EVT_ADD(LVar2, 10) + EVT_ADD(LVar3, 30) + EVT_LOOP(5) + EVT_PLAY_EFFECT(EFFECT_SPARKLES, 3, LVar0, LVar1, LVar2, 20) + EVT_WAIT(6) + EVT_PLAY_EFFECT(EFFECT_SPARKLES, 1, LVar0, LVar3, LVar2, 20) + EVT_WAIT(6) + EVT_END_LOOP + EVT_WAIT(20) + EVT_CALL(PlaySoundAtPlayer, SOUND_188, 0) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 20) + EVT_PLAY_EFFECT(EFFECT_ENERGY_ORB_WAVE, 4, LVar0, LVar1, LVar2, 1, 30) + EVT_WAIT(30) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_CALL(SetNpcAnimation, NPC_Skolar, ANIM_WorldSkolar_Idle) + EVT_CALL(EnableNpcAI, NPC_Skolar, TRUE) + EVT_CALL(N(UpgradeStarPower)) + EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_0193, 160, 40) + EVT_WAIT(10) + EVT_CALL(GetNpcPos, NPC_Skolar, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(250.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_WAIT(10) + EVT_CALL(SpeakToPlayer, NPC_Skolar, ANIM_WorldSkolar_TalkAngry, ANIM_WorldSkolar_Idle, 512, MSG_CH3_00D4) + EVT_WAIT(10) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, -25) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_WAIT(10) + EVT_CALL(SpeakToPlayer, NPC_Skolar, ANIM_WorldSkolar_TalkAngry, ANIM_WorldSkolar_Idle, 512, MSG_CH3_00D5) + EVT_CALL(SetNpcFlagBits, NPC_Skolar, NPC_FLAG_40000, TRUE) + EVT_THREAD + EVT_LOOP(25) + EVT_CALL(GetNpcPos, NPC_Skolar, LVar0, LVar1, LVar2) + EVT_PLAY_EFFECT(EFFECT_SPARKLES, 4, LVar0, LVar1, LVar2, 20) + EVT_WAIT(4) + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_SET(LVar2, 0) + EVT_SET(LVar3, 1800) + EVT_CALL(MakeLerp, LVar2, LVar3, 100, EASING_CUBIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(SetNpcRotation, NPC_Skolar, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_CALL(GetNpcPos, NPC_Skolar, LVar2, LVar3, LVar4) + EVT_SET(LVar5, LVar3) + EVT_ADD(LVar5, 180) + EVT_CALL(MakeLerp, LVar3, LVar5, 100, EASING_CUBIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(SetNpcPos, NPC_Skolar, LVar2, LVar0, LVar4) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(SetNpcPos, NPC_Skolar, NPC_DISPOSE_LOCATION) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(15) + EVT_CALL(PlaySoundAtNpc, NPC_Skolar, SOUND_2045, 0) + EVT_END_THREAD + EVT_WAIT(10) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_1002A) + EVT_WAIT(90) + EVT_CALL(ResetCam, CAM_DEFAULT, 3) + EVT_WAIT(20) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_SET(GB_StoryProgress, STORY_CH3_STAR_SPRIT_DEPARTED) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_CALL(EnablePartnerAI) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Skolar) = { + EVT_CALL(GetEntryID, LVar0) + EVT_IF_EQ(LVar0, arn_07_ENTRY_3) + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Skolar))) + EVT_EXEC(N(EVS_Scene_SkolarRescued)) + EVT_ELSE + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_Tubba)[] = { + { + .id = NPC_Tubba, + .settings = &N(NpcSettings_Tubba), + .pos = { 309.0f, 0.0f, 11.0f }, + .yaw = 270, + .flags = NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_40000 | NPC_FLAG_200000, + .init = &N(EVS_NpcInit_Tubba), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_WorldTubba_Anim06, + .walk = ANIM_WorldTubba_Anim09, + .run = ANIM_WorldTubba_Anim0C, + .chase = ANIM_WorldTubba_Anim0C, + .anim_4 = ANIM_WorldTubba_Anim00, + .anim_5 = ANIM_WorldTubba_Anim00, + .death = ANIM_WorldTubba_Anim00, + .hit = ANIM_WorldTubba_Anim00, + .anim_8 = ANIM_WorldTubba_Anim00, + .anim_9 = ANIM_WorldTubba_Anim00, + .anim_A = ANIM_WorldTubba_Anim00, + .anim_B = ANIM_WorldTubba_Anim00, + .anim_C = ANIM_WorldTubba_Anim00, + .anim_D = ANIM_WorldTubba_Anim00, + .anim_E = ANIM_WorldTubba_Anim00, + .anim_F = ANIM_WorldTubba_Anim00, + }, + .extraAnimations = N(ExtraAnims_Tubba), + }, + { + .id = NPC_TubbasHeart, + .settings = &N(NpcSettings_TubbasHeart), + .pos = { -10.0f, 50.0f, -170.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_40000 | NPC_FLAG_200000, + .init = &N(EVS_NpcInit_TubbasHeart), + .drops = TUBBAS_HEART_DROPS, + .animations = TUBBAS_HEART_ANIMS, + }, +}; + +StaticNpc N(NpcData_Boos)[] = { + { + .id = NPC_Boo_01, + .settings = &N(NpcSettings_Boo), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, + .init = &N(EVS_NpcInit_Boo), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, + .extraAnimations = N(ExtraAnims_GustyBoo), + }, + { + .id = NPC_Boo_02, + .settings = &N(NpcSettings_Boo), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, + .init = &N(EVS_NpcInit_Boo), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, + .extraAnimations = N(ExtraAnims_GustyBoo), + }, + { + .id = NPC_Boo_03, + .settings = &N(NpcSettings_Boo), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, + .init = &N(EVS_NpcInit_Boo), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, + .extraAnimations = N(ExtraAnims_GustyBoo), + }, + { + .id = NPC_Boo_04, + .settings = &N(NpcSettings_Boo), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, + .init = &N(EVS_NpcInit_Boo), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, + .extraAnimations = N(ExtraAnims_GustyBoo), + }, + { + .id = NPC_Boo_05, + .settings = &N(NpcSettings_Boo), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, + .init = &N(EVS_NpcInit_Boo), + .drops = BOO_DROPS, + .animations = NORMAL_BOO_ANIMS, + .extraAnimations = N(ExtraAnims_Boo), + }, + { + .id = NPC_Boo_06, + .settings = &N(NpcSettings_Boo), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, + .init = &N(EVS_NpcInit_Boo), + .drops = BOO_DROPS, + .animations = NORMAL_BOO_ANIMS, + .extraAnimations = N(ExtraAnims_Boo), + }, +}; + +StaticNpc N(NpcData_Bow) = { + .id = NPC_Bow, + .settings = &N(NpcSettings_Boo), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 0, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, + .init = &N(EVS_NpcInit_Bow), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_WorldBow_Idle, + .walk = ANIM_WorldBow_Walk, + .run = ANIM_WorldBow_Run, + .chase = ANIM_WorldBow_Run, + .anim_4 = ANIM_WorldBow_Idle, + .anim_5 = ANIM_WorldBow_Idle, + .death = ANIM_WorldBow_Still, + .hit = ANIM_WorldBow_Still, + .anim_8 = ANIM_WorldBow_Run, + .anim_9 = ANIM_WorldBow_Run, + .anim_A = ANIM_WorldBow_Run, + .anim_B = ANIM_WorldBow_Run, + .anim_C = ANIM_WorldBow_Run, + .anim_D = ANIM_WorldBow_Run, + .anim_E = ANIM_WorldBow_Run, + .anim_F = ANIM_WorldBow_Run, + }, +}; + +StaticNpc N(NpcData_Bootler) = { + .id = NPC_Bootler, + .settings = &N(NpcSettings_Boo), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 0, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, + .init = &N(EVS_NpcInit_Bootler), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Bootler_Idle, + .walk = ANIM_Bootler_Walk, + .run = ANIM_Bootler_Run, + .chase = ANIM_Bootler_Run, + .anim_4 = ANIM_Bootler_Idle, + .anim_5 = ANIM_Bootler_Idle, + .death = ANIM_Bootler_Still, + .hit = ANIM_Bootler_Still, + .anim_8 = ANIM_Bootler_Shock, + .anim_9 = ANIM_Bootler_Panic, + .anim_A = ANIM_Bootler_Dejected, + .anim_B = ANIM_Bootler_Quaver, + .anim_C = ANIM_Bootler_Shock, + .anim_D = ANIM_Bootler_Panic, + .anim_E = ANIM_Bootler_Dejected, + .anim_F = ANIM_Bootler_Quaver, + }, + .extraAnimations = N(ExtraAnims_Bootler), +}; + +EvtScript N(EVS_NpcInit_HyperParagoomba) = { + EVT_IF_GE(GB_StoryProgress, STORY_CH3_TUBBA_CHASED_MARIO_IN_FOYER) + EVT_IF_LT(GB_StoryProgress, STORY_CH3_STAR_SPIRIT_RESCUED) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_END_IF + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_HyperParagoomba_01) = { + .id = NPC_HyperParagoomba_01, + .settings = &N(NpcSettings_HyperParagoomba), + .pos = { -216.0f, 60.0f, -10.0f }, + .yaw = 90, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_HyperParagoomba), + .drops = HYPER_PARAGOOMBA_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { -216, 60, -10 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { -216, 60, -10 }, + .detectSize = { 250 }, + } + }, + .animations = HYPER_PARAGOOMBA_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_HyperParagoomba_02) = { + .id = NPC_HyperParagoomba_02, + .settings = &N(NpcSettings_HyperParagoomba), + .pos = { 0.0f, 60.0f, 150.0f }, + .yaw = 270, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_HyperParagoomba), + .drops = HYPER_PARAGOOMBA_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 0, 60, 150 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 0, 60, 150 }, + .detectSize = { 250 }, + } + }, + .animations = HYPER_PARAGOOMBA_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_HyperParagoomba_03) = { + .id = NPC_HyperParagoomba_03, + .settings = &N(NpcSettings_HyperParagoomba), + .pos = { 260.0f, 60.0f, 30.0f }, + .yaw = 90, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_HyperParagoomba), + .drops = HYPER_PARAGOOMBA_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 260, 60, 30 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 260, 60, 30 }, + .detectSize = { 250 }, + } + }, + .animations = HYPER_PARAGOOMBA_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_Skolar) = { + .id = NPC_Skolar, + .settings = &N(NpcSettings_Skolar), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 0, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_Skolar), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_WorldSkolar_Idle, + .walk = ANIM_WorldSkolar_Idle, + .run = ANIM_WorldSkolar_Idle, + .chase = ANIM_WorldSkolar_Idle, + .anim_4 = ANIM_WorldSkolar_Idle, + .anim_5 = ANIM_WorldSkolar_Idle, + .death = ANIM_WorldSkolar_Idle, + .hit = ANIM_WorldSkolar_Idle, + .anim_8 = ANIM_WorldSkolar_Still, + .anim_9 = ANIM_WorldSkolar_Idle, + .anim_A = ANIM_WorldSkolar_Idle, + .anim_B = ANIM_WorldSkolar_Idle, + .anim_C = ANIM_WorldSkolar_Idle, + .anim_D = ANIM_WorldSkolar_Idle, + .anim_E = ANIM_WorldSkolar_Idle, + .anim_F = ANIM_WorldSkolar_Idle, + }, +}; + +NpcGroupList N(BossNPCs) = { + NPC_GROUP(N(NpcData_Tubba), BTL_ARN_FORMATION_10, BTL_ARN_STAGE_01), + NPC_GROUP(N(NpcData_Boos)), + NPC_GROUP(N(NpcData_Bow)), + NPC_GROUP(N(NpcData_Bootler)), + {} +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_HyperParagoomba_01), BTL_ARN_FORMATION_06, BTL_ARN_STAGE_01), + NPC_GROUP(N(NpcData_HyperParagoomba_02), BTL_ARN_FORMATION_07, BTL_ARN_STAGE_01), + NPC_GROUP(N(NpcData_HyperParagoomba_03), BTL_ARN_FORMATION_08, BTL_ARN_STAGE_01), + {} +}; + +NpcGroupList N(SpiritNPCs) = { + NPC_GROUP(N(NpcData_Skolar)), + {} +}; diff --git a/src/world/area_arn/arn_07/events.c b/src/world/area_arn/arn_07/events.c deleted file mode 100644 index da17182950..0000000000 --- a/src/world/area_arn/arn_07/events.c +++ /dev/null @@ -1,1245 +0,0 @@ -#include "arn_07.h" -#include "entity.h" -#include "sprite/npc/WorldTubba.h" -#include "sprite/npc/Paragoomba.h" -#include "sprite/npc/WorldSkolar.h" -#include "sprite/npc/WorldBow.h" -#include "sprite/npc/TubbasHeart.h" -#include "sprite/npc/Boo.h" -#include "sprite/npc/Bootler.h" - -EvtScript N(80243790) = { - EVT_EXEC(N(802437AC)) - EVT_RETURN - EVT_END -}; - -EvtScript N(802437AC) = { - EVT_SETF(LVar0, EVT_FLOAT(0.0)) - EVT_SET(LVar1, 30) - EVT_CALL(PlaySoundAtModel, 23, 0x8000004A, 0) - EVT_LABEL(0) - EVT_ADDF(LVar0, EVT_FLOAT(1.0)) - EVT_CALL(N(func_80240800_BED5F0)) - EVT_CALL(RotateModel, 27, LVar0, 0, 0, 1) - EVT_WAIT(1) - EVT_SUB(LVar1, 1) - EVT_IF_GT(LVar1, 0) - EVT_GOTO(0) - EVT_END_IF - EVT_SET(LVar1, 30) - EVT_CALL(RandInt, 100, LVar2) - EVT_IF_GT(LVar2, 10) - EVT_GOTO(0) - EVT_END_IF - EVT_SETF(LVar2, EVT_FLOAT(1.0)) - EVT_LOOP(50) - EVT_SUBF(LVar2, EVT_FLOAT(0.01)) - EVT_ADDF(LVar0, LVar2) - EVT_CALL(RotateModel, 27, LVar0, 0, 0, 1) - EVT_WAIT(1) - EVT_END_LOOP - EVT_LOOP(50) - EVT_ADDF(LVar2, EVT_FLOAT(0.01)) - EVT_ADDF(LVar0, LVar2) - EVT_CALL(RotateModel, 27, LVar0, 0, 0, 1) - EVT_WAIT(1) - EVT_END_LOOP - EVT_SET(LVar1, 30) - EVT_GOTO(0) - EVT_RETURN - EVT_END -}; - -EvtScript N(802439B0) = { - EVT_SET_GROUP(EVT_GROUP_00) - EVT_CALL(SetTimeFreezeMode, 1) - EVT_CALL(ShowKeyChoicePopup) - EVT_IF_EQ(LVar0, 0) - EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_00D8, 160, 40) - EVT_CALL(CloseChoicePopup) - EVT_CALL(SetTimeFreezeMode, 0) - EVT_RETURN - EVT_END_IF - EVT_IF_EQ(LVar0, -1) - EVT_CALL(CloseChoicePopup) - EVT_CALL(SetTimeFreezeMode, 0) - EVT_RETURN - EVT_END_IF - EVT_CALL(FindKeyItem, ITEM_MYSTICAL_KEY, LVar0) - EVT_CALL(RemoveKeyItemAt, LVar0) - EVT_CALL(CloseChoicePopup) - EVT_SET(GB_StoryProgress, -24) - EVT_CALL(N(GetEntityPosition), MapVar(0), LVar0, LVar1, LVar2) - EVT_CALL(PlaySoundAt, 0x269, 0, LVar0, LVar1, LVar2) - EVT_SET(LVar0, MapVar(0)) - EVT_CALL(N(SetEntityFlags100000)) - EVT_CALL(SetTimeFreezeMode, 0) - EVT_UNBIND - EVT_RETURN - EVT_END -}; - -EvtScript N(80243B28) = { - EVT_BIND_TRIGGER(N(exitSingleDoor_802428D4), TRIGGER_WALL_PRESS_A, 10, 1, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(makeEntities) = { - EVT_IF_LT(GB_StoryProgress, -24) - EVT_CALL(MakeEntity, EVT_PTR(Entity_Padlock), 10, 30, -155, 0, MAKE_ENTITY_END) - EVT_CALL(AssignScript, EVT_PTR(N(80243B28))) - EVT_SET(MapVar(0), LVar0) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -f32 N(FlyingAI_JumpVels)[] = { - 4.5f, 3.5f, 2.6f, 2.0f, - 1.5f, 20.0f, -}; - -MobileAISettings N(npcAISettings_80243BD8) = { - .moveSpeed = 1.8f, - .moveTime = 60, - .waitTime = 15, - .alertRadius = 120.0f, - .playerSearchInterval = 3, - .chaseSpeed = 4.0f, - .chaseTurnRate= 5, - .chaseUpdateInterval = 1, - .chaseRadius = 150.0f, - .unk_AI_2C = 1, -}; - -EvtScript N(npcAI_80243C08) = { - EVT_CALL(SetSelfVar, 0, 1) - EVT_CALL(SetSelfVar, 5, -850) - EVT_CALL(SetSelfVar, 6, 60) - EVT_CALL(SetSelfVar, 1, 700) - EVT_CALL(N(FlyingAI_Main), EVT_PTR(N(npcAISettings_80243BD8))) - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_80243C78) = { - .height = 18, - .radius = 20, - .ai = &N(npcAI_80243C08), - .onHit = &EnemyNpcHit, - .onDefeat = &EnemyNpcDefeat, - .level = 12, - .actionFlags = 1, -}; - -EvtScript N(80243CA4) = { - EVT_RETURN - EVT_END -}; - -EvtScript N(80243CB4) = { - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_80243CC4) = { - .height = 24, - .radius = 24, - .otherAI = &N(80243CA4), - .onDefeat = &N(80243CB4), - .level = 13, -}; - -NpcSettings N(npcSettings_80243CF0) = { - .height = 90, - .radius = 65, - .onHit = &EnemyNpcHit, - .onDefeat = &EnemyNpcDefeat, - .level = 13, -}; - -NpcSettings N(npcSettings_80243D1C) = { - .height = 24, - .radius = 24, - .level = 99, -}; - -NpcSettings N(npcSettings_80243D48) = { - .height = 26, - .radius = 24, - .level = 99, -}; - -NpcSettings N(npcSettings_80243D74) = { - .height = 20, - .radius = 20, - .level = 99, -}; - -NpcSettings N(npcSettings_80243DA0) = { - .height = 22, - .radius = 24, - .level = 99, -}; - -EvtScript N(80243DCC) = { - EVT_LOOP(0) - EVT_CALL(PlaySoundAtNpc, 1, SOUND_20F6, 0) - EVT_CALL(ShakeCam, 0, 0, 3, EVT_FLOAT(0.8)) - EVT_END_LOOP - EVT_RETURN - EVT_END -}; - -EvtScript N(80243E24) = { - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(UseSettingsFrom, 0, 236, 0, -46) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(90.0)) - EVT_CALL(SetPanTarget, 0, 250, 0, -46) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim08) - EVT_CALL(SetNpcYaw, NPC_SELF, 90) - EVT_WAIT(10) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_WorldTubba_Anim12, ANIM_WorldTubba_Anim08, 5, MSG_CH3_00CA) - EVT_WAIT(10) - EVT_CALL(InterpNpcYaw, NPC_SELF, 270, 0) - EVT_WAIT(10) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_WorldTubba_Anim12, ANIM_WorldTubba_Anim08, 5, MSG_CH3_00CB) - EVT_CALL(SetCamDistance, 0, 300) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(2.0)) - EVT_CALL(SetCamPitch, 0, EVT_FLOAT(5.0), EVT_FLOAT(-16.0)) - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_CALL(SetPanTarget, 0, LVar0, LVar1, LVar2) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_RETURN - EVT_END -}; - -EvtScript N(80243FE8) = { - EVT_WAIT(10) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim22) - EVT_WAIT(15) - EVT_LOOP(4) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0xB0000010, 0) - EVT_CALL(SetNpcVar, 3, 0, 1) - EVT_WAIT(4) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0xB0000010, 0) - EVT_CALL(SetNpcVar, 6, 0, 1) - EVT_WAIT(4) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0xB0000010, 0) - EVT_CALL(SetNpcVar, 2, 0, 1) - EVT_WAIT(6) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0xB0000010, 0) - EVT_CALL(SetNpcVar, 4, 0, 1) - EVT_WAIT(8) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0xB0000010, 0) - EVT_CALL(SetNpcVar, 5, 0, 1) - EVT_WAIT(6) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0xB0000010, 0) - EVT_CALL(SetNpcVar, 7, 0, 1) - EVT_WAIT(6) - EVT_END_LOOP - EVT_WAIT(10) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim23) - EVT_WAIT(30) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim22) - EVT_WAIT(10) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0xB0000010, 0) - EVT_CALL(SetNpcVar, 3, 0, 1) - EVT_WAIT(15) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim21) - EVT_WAIT(45) - EVT_CALL(UseSettingsFrom, 0, 236, 0, -46) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(90.0)) - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_SUB(LVar0, 50) - EVT_CALL(SetPanTarget, 0, LVar0, LVar1, LVar2) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_WAIT(5) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_StandStill) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldTubba_Anim0F) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_WorldTubba_Anim12, ANIM_WorldTubba_Anim08, 0, MSG_CH3_00CC) - EVT_THREAD - EVT_WAIT(5) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(90.0)) - EVT_LOOP(40) - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_CALL(SetPanTarget, 0, LVar0, LVar1, LVar2) - EVT_WAIT(1) - EVT_END_LOOP - EVT_END_THREAD - EVT_THREAD - EVT_CALL(func_802CF56C, 2) - EVT_LOOP(45) - EVT_CALL(PlayerFaceNpc, -1, 1) - EVT_END_LOOP - EVT_END_THREAD - EVT_EXEC_GET_TID(N(80243DCC), LVarA) - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_SUB(LVar0, 800) - EVT_CALL(NpcMoveTo, NPC_SELF, LVar0, LVar2, 80) - EVT_KILL_THREAD(LVarA) - EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) - EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) - EVT_SET(GB_StoryProgress, -16) - EVT_CALL(SetMusicTrack, 0, SONG_CHEERFUL_BOOS_MANSION, 0, 8) - EVT_CALL(GetCurrentPartnerID, LVar6) - EVT_IF_EQ(LVar6, 9) - EVT_SET(LVar5, -4) - EVT_CALL(func_802CF56C, 0) - EVT_CALL(DisablePartnerAI, 0) - EVT_CALL(SetNpcPos, NPC_PARTNER, 257, 25, 0) - EVT_END_IF - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(90.0)) - EVT_CALL(SetCamDistance, 0, 300) - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_ADD(LVar0, 30) - EVT_CALL(SetPanTarget, 0, LVar0, LVar1, LVar2) - EVT_WAIT(10) - EVT_IF_NE(LVar6, 9) - EVT_SET(LVar5, 8) - EVT_CALL(SetNpcPos, 8, 257, 25, 0) - EVT_CALL(func_802CFD30, 8, 7, 0, 0, 0, 0) - EVT_CALL(NpcFacePlayer, 8, 0) - EVT_CALL(MakeLerp, 0, 240, 20, 0) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_CALL(func_802CFD30, 8, 7, LVar0, 0, 0, 0) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_CALL(func_802CF56C, 0) - EVT_END_IF - EVT_WAIT(10) - EVT_THREAD - EVT_IF_NE(LVar6, 9) - EVT_CALL(DisablePartnerAI, 0) - EVT_WAIT(1) - EVT_CALL(NpcFaceNpc, NPC_PARTNER, 8, 0) - EVT_WAIT(5) - EVT_END_IF - EVT_END_THREAD - EVT_CALL(SpeakToPlayer, LVar5, ANIM_WorldBow_Celebrate, ANIM_WorldBow_Celebrate, 0, MSG_CH3_00CD) - EVT_CALL(InterpPlayerYaw, 270, 0) - EVT_WAIT(10) - EVT_CALL(GetNpcPos, LVar5, LVar0, LVar1, LVar2) - EVT_ADD(LVar1, -20) - EVT_CALL(SetCamProperties, 0, EVT_FLOAT(2.0), LVar0, LVar1, LVar2, EVT_FLOAT(300.0), EVT_FLOAT(15.0), EVT_FLOAT(-7.0)) - EVT_CALL(PlayerFaceNpc, LVar5, 0) - EVT_WAIT(10) - EVT_CALL(SpeakToPlayer, LVar5, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 0, MSG_CH3_00CE) - EVT_CALL(ShowChoice, MSG_Choice_000D) - EVT_IF_EQ(LVar0, 0) - EVT_CALL(ContinueSpeech, LVar5, ANIM_WorldBow_Celebrate, ANIM_WorldBow_Celebrate, 0, MSG_CH3_00CF) - EVT_ELSE - EVT_CALL(ContinueSpeech, LVar5, ANIM_WorldBow_Celebrate, ANIM_WorldBow_Celebrate, 0, MSG_CH3_00D0) - EVT_END_IF - EVT_CALL(SpeakToPlayer, LVar5, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 0, MSG_CH3_00D1) - EVT_CALL(UseSettingsFrom, 0, 175, 0, 0) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(4.0)) - EVT_CALL(SetPanTarget, 0, 175, 0, 0) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_CALL(SetNpcPos, 9, 93, 160, -6) - EVT_CALL(InterpNpcYaw, 9, 90, 0) - EVT_THREAD - EVT_WAIT(10) - EVT_CALL(InterpPlayerYaw, 270, 0) - EVT_END_THREAD - EVT_THREAD - EVT_IF_NE(LVar6, 9) - EVT_WAIT(12) - EVT_CALL(InterpNpcYaw, NPC_PARTNER, 270, 0) - EVT_END_IF - EVT_END_THREAD - EVT_CALL(MakeLerp, 160, 31, 70, 0) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_CALL(SetNpcPos, 9, 93, LVar0, -6) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_THREAD - EVT_IF_NE(LVar6, 9) - EVT_CALL(InterpNpcYaw, NPC_PARTNER, 90, 0) - EVT_END_IF - EVT_END_THREAD - EVT_CALL(SpeakToPlayer, LVar5, ANIM_WorldBow_Talk, ANIM_WorldBow_Idle, 0, MSG_CH3_00D2) - EVT_THREAD - EVT_IF_NE(LVar6, 9) - EVT_WAIT(12) - EVT_CALL(InterpNpcYaw, NPC_PARTNER, 270, 0) - EVT_END_IF - EVT_END_THREAD - EVT_WAIT(10) - EVT_CALL(InterpPlayerYaw, 270, 0) - EVT_EXEC(N(80242048)) - EVT_WAIT(20) - EVT_THREAD - EVT_IF_NE(LVar6, 9) - EVT_CALL(MakeLerp, 240, 0, 20, 0) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_CALL(func_802CFD30, 8, 7, LVar0, 0, 0, 0) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_CALL(SetNpcPos, 8, 0, -1000, 0) - EVT_CALL(EnablePartnerAI) - EVT_ELSE - EVT_WAIT(20) - EVT_CALL(ClearPartnerMoveHistory, -4) - EVT_CALL(EnablePartnerAI) - EVT_END_IF - EVT_WAIT(8) - EVT_CALL(func_802CF56C, 2) - EVT_END_THREAD - EVT_WAIT(20) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(idle_80244C54) = { - EVT_LOOP(0) - EVT_CALL(GetSelfVar, 0, LVar0) - EVT_IF_EQ(LVar0, 1) - EVT_BREAK_LOOP - EVT_END_IF - EVT_WAIT(1) - EVT_END_LOOP - EVT_CALL(StartBossBattle, 11) - EVT_RETURN - EVT_END -}; - -EvtScript N(idle_80244CC8) = { - EVT_LABEL(10) - EVT_LOOP(0) - EVT_CALL(GetSelfVar, 0, LVar0) - EVT_IF_EQ(LVar0, 1) - EVT_BREAK_LOOP - EVT_END_IF - EVT_WAIT(1) - EVT_END_LOOP - EVT_THREAD - EVT_SETF(LVar0, EVT_FLOAT(0.5)) - EVT_CALL(MakeLerp, 50, 80, 15, 0) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_SETF(LVar2, LVar0) - EVT_DIVF(LVar2, 100) - EVT_CALL(SetNpcScale, NPC_SELF, LVar2, LVar2, LVar2) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_END_THREAD - EVT_THREAD - EVT_CALL(RandInt, 80, LVar2) - EVT_CALL(RandInt, 10, LVar3) - EVT_ADD(LVar3, 5) - EVT_CALL(MakeLerp, LVar2, 240, LVar3, 0) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_CALL(func_802CFD30, NPC_SELF, 7, LVar0, 0, 0, 0) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_END_THREAD - EVT_CALL(SetNpcPos, NPC_SELF, 293, 59, 21) - EVT_WAIT(1) - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(-0.3)) - EVT_CALL(RandInt, 100, LVar3) - EVT_SUB(LVar0, LVar3) - EVT_ADD(LVar1, 100) - EVT_CALL(NpcJump0, NPC_SELF, LVar0, LVar1, LVar2, 20) - EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) - EVT_CALL(SetSelfVar, 0, 0) - EVT_GOTO(10) - EVT_RETURN - EVT_END -}; - -EvtScript N(defeat_80244FB8) = { - EVT_CALL(SetEncounterStatusFlags, 2, 1) - EVT_CALL(GetBattleOutcome, LVar0) - EVT_SWITCH(LVar0) - EVT_CASE_EQ(0) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBAS_MANOR, 1, 8) - EVT_EXEC_WAIT(N(80243E24)) - EVT_EXEC(N(80243FE8)) - EVT_CASE_EQ(1) - EVT_CASE_EQ(2) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80245058) = { - EVT_IF_NE(GB_StoryProgress, -17) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80245090) = { - EVT_CALL(SetSelfVar, 0, 0) - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_80244C54))) - EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(defeat_80244FB8))) - EVT_IF_NE(GB_StoryProgress, -17) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80245104) = { - EVT_CALL(SetSelfVar, 0, 0) - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_80244CC8))) - EVT_IF_NE(GB_StoryProgress, -17) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80245164) = { - EVT_IF_NE(GB_StoryProgress, -17) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -EvtScript N(init_8024519C) = { - EVT_IF_NE(GB_StoryProgress, -17) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -s32 N(extraAnimationList_802451D4)[] = { - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim22, - ANIM_WorldTubba_Anim23, - ANIM_WorldTubba_Anim06, - ANIM_WorldTubba_Anim10, - ANIM_WorldTubba_Anim08, - ANIM_WorldTubba_Anim0F, - ANIM_WorldTubba_Anim12, - ANIM_LIST_END, -}; - -s32 N(extraAnimationList_802451F8)[] = { - ANIM_Boo_Still, - ANIM_LIST_END, -}; - -s32 N(extraAnimationList_80245200)[] = { - ANIM_Boo_Tan_Still, - ANIM_LIST_END, -}; - -s32 N(extraAnimationList_80245208)[] = { - ANIM_Bootler_Idle, - ANIM_LIST_END, -}; - -EvtScript N(idle_80245210) = { - EVT_LOOP(0) - EVT_LOOP(10) - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_SUB(LVar1, 1) - EVT_CALL(SetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_WAIT(1) - EVT_END_LOOP - EVT_LOOP(10) - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_ADD(LVar1, 1) - EVT_CALL(SetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_WAIT(1) - EVT_END_LOOP - EVT_END_LOOP - EVT_RETURN - EVT_END -}; - -EvtScript N(80245304) = { - EVT_CALL(DisablePartnerAI, 0) - EVT_CALL(func_802CF56C, 2) - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_SET(LVar3, LVar0) - EVT_ADD(LVar3, -50) - EVT_SET(LVar4, LVar1) - EVT_ADD(LVar4, 26) - EVT_CALL(SetNpcPos, 13, LVar3, LVar4, LVar2) - EVT_CALL(PlayerFaceNpc, 13, 0) - EVT_CALL(NpcFaceNpc, NPC_PARTNER, 13, 0) - EVT_ADD(LVar0, -25) - EVT_CALL(UseSettingsFrom, 0, LVar0, LVar1, LVar2) - EVT_CALL(SetPanTarget, 0, LVar0, LVar1, LVar2) - EVT_CALL(SetCamDistance, 0, EVT_FLOAT(475.0)) - EVT_CALL(SetCamPitch, 0, 18, -8) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(90.0)) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_WAIT(1) - EVT_CALL(WaitForPlayerInputEnabled) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_WAIT(40) - EVT_CALL(SpeakToPlayer, 13, ANIM_WorldSkolar_TalkAngry, ANIM_WorldSkolar_Idle, 512, MSG_CH3_00D3) - EVT_CALL(SetCamDistance, 0, EVT_FLOAT(300.0)) - EVT_CALL(SetCamPitch, 0, 18, -9) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(4.0)) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_CALL(MakeLerp, 0, 360, 10, 0) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_CALL(SetNpcRotation, 13, 0, LVar0, 0) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_CALL(EnableNpcAI, 13, 0) - EVT_CALL(SetNpcAnimation, 13, ANIM_WorldSkolar_Leap) - EVT_WAIT(20) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_GotItem) - EVT_CALL(PlaySoundAtPlayer, 313, 0) - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_SET(LVar3, LVar1) - EVT_ADD(LVar1, 50) - EVT_ADD(LVar2, 10) - EVT_ADD(LVar3, 30) - EVT_LOOP(5) - EVT_CALL(PlayEffect, 0x11, 3, LVar0, LVar1, LVar2, 20, 0, 0, 0, 0, 0, 0, 0, 0) - EVT_WAIT(6) - EVT_CALL(PlayEffect, 0x11, 1, LVar0, LVar3, LVar2, 20, 0, 0, 0, 0, 0, 0, 0, 0) - EVT_WAIT(6) - EVT_END_LOOP - EVT_WAIT(20) - EVT_CALL(PlaySoundAtPlayer, 392, 0) - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_ADD(LVar1, 20) - EVT_CALL(PlayEffect, 0x52, 4, LVar0, LVar1, LVar2, 1, 30, 0, 0, 0, 0, 0, 0, 0) - EVT_WAIT(30) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) - EVT_CALL(SetNpcAnimation, 13, ANIM_WorldSkolar_Idle) - EVT_CALL(EnableNpcAI, 13, 1) - EVT_CALL(PostChapter3StatUpdate) - EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_0193, 160, 40) - EVT_WAIT(10) - EVT_CALL(GetNpcPos, 13, LVar0, LVar1, LVar2) - EVT_CALL(SetPanTarget, 0, LVar0, LVar1, LVar2) - EVT_CALL(SetCamDistance, 0, EVT_FLOAT(250.0)) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_WAIT(10) - EVT_CALL(SpeakToPlayer, 13, ANIM_WorldSkolar_TalkAngry, ANIM_WorldSkolar_Idle, 512, MSG_CH3_00D4) - EVT_WAIT(10) - EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) - EVT_ADD(LVar0, -25) - EVT_CALL(SetPanTarget, 0, LVar0, LVar1, LVar2) - EVT_CALL(SetCamDistance, 0, EVT_FLOAT(300.0)) - EVT_CALL(SetCamSpeed, 0, EVT_FLOAT(4.0)) - EVT_CALL(PanToTarget, 0, 0, 1) - EVT_CALL(WaitForCam, 0, EVT_FLOAT(1.0)) - EVT_WAIT(10) - EVT_CALL(SpeakToPlayer, 13, ANIM_WorldSkolar_TalkAngry, ANIM_WorldSkolar_Idle, 512, MSG_CH3_00D5) - EVT_CALL(SetNpcFlagBits, 13, ((NPC_FLAG_40000)), TRUE) - EVT_THREAD - EVT_LOOP(25) - EVT_CALL(GetNpcPos, 13, LVar0, LVar1, LVar2) - EVT_CALL(PlayEffect, 0x11, 4, LVar0, LVar1, LVar2, 20, 0, 0, 0, 0, 0, 0, 0, 0) - EVT_WAIT(4) - EVT_END_LOOP - EVT_END_THREAD - EVT_THREAD - EVT_SET(LVar2, 0) - EVT_SET(LVar3, 1800) - EVT_CALL(MakeLerp, LVar2, LVar3, 100, 2) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_CALL(SetNpcRotation, 13, 0, LVar0, 0) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_END_THREAD - EVT_THREAD - EVT_CALL(GetNpcPos, 13, LVar2, LVar3, LVar4) - EVT_SET(LVar5, LVar3) - EVT_ADD(LVar5, 180) - EVT_CALL(MakeLerp, LVar3, LVar5, 100, 2) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_CALL(SetNpcPos, 13, LVar2, LVar0, LVar4) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_CALL(SetNpcPos, 13, 0, -1000, 0) - EVT_END_THREAD - EVT_THREAD - EVT_WAIT(15) - EVT_CALL(PlaySoundAtNpc, 13, 0x2045, 0) - EVT_END_THREAD - EVT_WAIT(10) - EVT_CALL(SetPlayerAnimation, 65578) - EVT_WAIT(90) - EVT_CALL(ResetCam, 0, 3) - EVT_WAIT(20) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) - EVT_SET(GB_StoryProgress, -13) - EVT_EXEC(N(80241F10)) - EVT_CALL(EnablePartnerAI) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80245C9C) = { - EVT_CALL(GetEntryID, LVar0) - EVT_IF_EQ(LVar0, 3) - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_80245210))) - EVT_EXEC(N(80245304)) - EVT_ELSE - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -StaticNpc N(npcGroup_80245D0C)[] = { - { - .id = NPC_WORLD_TUBBA, - .settings = &N(npcSettings_80243CF0), - .pos = { 309.0f, 0.0f, 11.0f }, - .flags = NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_40000 | NPC_FLAG_200000, - .init = &N(init_80245090), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_WorldTubba_Anim06, - ANIM_WorldTubba_Anim09, - ANIM_WorldTubba_Anim0C, - ANIM_WorldTubba_Anim0C, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - ANIM_WorldTubba_Anim00, - }, - .extraAnimations = N(extraAnimationList_802451D4), - }, - { - .id = NPC_TUBBAS_HEART, - .settings = &N(npcSettings_80243CC4), - .pos = { -10.0f, 50.0f, -170.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_40000 | NPC_FLAG_200000, - .init = &N(init_80245058), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - }, - }, -}; - -StaticNpc N(npcGroup_802460EC)[] = { - { - .id = NPC_BOO0, - .settings = &N(npcSettings_80243D1C), - .pos = { 0.0f, -1000.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, - .init = &N(init_80245104), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .extraAnimations = N(extraAnimationList_80245200), - }, - { - .id = NPC_BOO1, - .settings = &N(npcSettings_80243D1C), - .pos = { 0.0f, -1000.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, - .init = &N(init_80245104), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .extraAnimations = N(extraAnimationList_80245200), - }, - { - .id = NPC_BOO2, - .settings = &N(npcSettings_80243D1C), - .pos = { 0.0f, -1000.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, - .init = &N(init_80245104), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .extraAnimations = N(extraAnimationList_80245200), - }, - { - .id = NPC_BOO3, - .settings = &N(npcSettings_80243D1C), - .pos = { 0.0f, -1000.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, - .init = &N(init_80245104), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Walk, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Idle, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Still, - ANIM_Boo_Tan_Confused, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - ANIM_Boo_Tan_Run, - }, - .extraAnimations = N(extraAnimationList_80245200), - }, - { - .id = NPC_BOO4, - .settings = &N(npcSettings_80243D1C), - .pos = { 0.0f, -1000.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, - .init = &N(init_80245104), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Idle, - ANIM_Boo_Walk, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Idle, - ANIM_Boo_Idle, - ANIM_Boo_Still, - ANIM_Boo_Still, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - }, - .extraAnimations = N(extraAnimationList_802451F8), - }, - { - .id = NPC_BOO5, - .settings = &N(npcSettings_80243D1C), - .pos = { 0.0f, -1000.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, - .init = &N(init_80245104), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Boo_Idle, - ANIM_Boo_Walk, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Idle, - ANIM_Boo_Idle, - ANIM_Boo_Still, - ANIM_Boo_Still, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - ANIM_Boo_Run, - }, - .extraAnimations = N(extraAnimationList_802451F8), - }, -}; - -StaticNpc N(npcGroup_80246C8C) = { - .id = NPC_WORLD_BOW, - .settings = &N(npcSettings_80243D1C), - .pos = { 0.0f, -1000.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, - .init = &N(init_80245164), - .yaw = 0, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_WorldBow_Idle, - ANIM_WorldBow_Walk, - ANIM_WorldBow_Run, - ANIM_WorldBow_Run, - ANIM_WorldBow_Idle, - ANIM_WorldBow_Idle, - ANIM_WorldBow_Still, - ANIM_WorldBow_Still, - ANIM_WorldBow_Run, - ANIM_WorldBow_Run, - ANIM_WorldBow_Run, - ANIM_WorldBow_Run, - ANIM_WorldBow_Run, - ANIM_WorldBow_Run, - ANIM_WorldBow_Run, - ANIM_WorldBow_Run, - }, -}; - -StaticNpc N(npcGroup_80246E7C) = { - .id = NPC_BOOTLER, - .settings = &N(npcSettings_80243D1C), - .pos = { 0.0f, -1000.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, - .init = &N(init_8024519C), - .yaw = 0, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Bootler_Idle, - ANIM_Bootler_Walk, - ANIM_Bootler_Run, - ANIM_Bootler_Run, - ANIM_Bootler_Idle, - ANIM_Bootler_Idle, - ANIM_Bootler_Still, - ANIM_Bootler_Still, - ANIM_Bootler_Shock, - ANIM_Bootler_Panic, - ANIM_Bootler_Dejected, - ANIM_Bootler_Quaver, - ANIM_Bootler_Shock, - ANIM_Bootler_Panic, - ANIM_Bootler_Dejected, - ANIM_Bootler_Quaver, - }, - .extraAnimations = N(extraAnimationList_80245208), -}; - -EvtScript N(init_8024706C) = { - EVT_IF_GE(GB_StoryProgress, -26) - EVT_IF_LT(GB_StoryProgress, -15) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_END_IF - EVT_END_IF - EVT_RETURN - EVT_END -}; - -StaticNpc N(npcGroup_802470BC) = { - .id = NPC_PARAGOOMBA0, - .settings = &N(npcSettings_80243C78), - .pos = { -216.0f, 60.0f, -10.0f }, - .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_8024706C), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 20, - .itemDrops = { - { ITEM_DRIED_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .maxCoinBonus = 2, - }, - .territory = { .temp = { -216, 60, -10, 30, 0, -32767, 0, -216, 60, -10, 250 }}, - .animations = { - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Walk, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Hurt, - ANIM_Paragoomba_Hyper_Hurt, - ANIM_Paragoomba_Hyper_Dive, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -StaticNpc N(npcGroup_802472AC) = { - .id = NPC_PARAGOOMBA1, - .settings = &N(npcSettings_80243C78), - .pos = { 0.0f, 60.0f, 150.0f }, - .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_8024706C), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 20, - .itemDrops = { - { ITEM_DRIED_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .maxCoinBonus = 2, - }, - .territory = { .temp = { 0, 60, 150, 30, 0, -32767, 0, 0, 60, 150, 250 }}, - .animations = { - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Walk, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Hurt, - ANIM_Paragoomba_Hyper_Hurt, - ANIM_Paragoomba_Hyper_Dive, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -StaticNpc N(npcGroup_8024749C) = { - .id = NPC_PARAGOOMBA2, - .settings = &N(npcSettings_80243C78), - .pos = { 260.0f, 60.0f, 30.0f }, - .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_8024706C), - .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 20, - .itemDrops = { - { ITEM_DRIED_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .maxCoinBonus = 2, - }, - .territory = { .temp = { 260, 60, 30, 30, 0, -32767, 0, 260, 60, 30, 250 }}, - .animations = { - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Walk, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Idle, - ANIM_Paragoomba_Hyper_Hurt, - ANIM_Paragoomba_Hyper_Hurt, - ANIM_Paragoomba_Hyper_Dive, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - ANIM_Paragoomba_Hyper_Run, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -StaticNpc N(npcGroup_8024768C) = { - .id = NPC_WORLD_SKOLAR, - .settings = &N(npcSettings_80243D48), - .pos = { 0.0f, -1000.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_80245C9C), - .yaw = 0, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Still, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - ANIM_WorldSkolar_Idle, - }, -}; - -NpcGroupList N(npcGroupList_8024787C) = { - NPC_GROUP(N(npcGroup_80245D0C), 0x0E10, 0x01), - NPC_GROUP(N(npcGroup_802460EC)), - NPC_GROUP(N(npcGroup_80246C8C)), - NPC_GROUP(N(npcGroup_80246E7C)), - {}, -}; - -NpcGroupList N(npcGroupList_802478B8) = { - NPC_GROUP(N(npcGroup_802470BC), 0x0E06, 0x01), - NPC_GROUP(N(npcGroup_802472AC), 0x0E07, 0x01), - NPC_GROUP(N(npcGroup_8024749C), 0x0E08, 0x01), - {}, -}; - -NpcGroupList N(npcGroupList_802478E8) = { - NPC_GROUP(N(npcGroup_8024768C)), - {}, -}; - -#include "world/common/enemy/FlyingAI.inc.c" - -ApiStatus PostChapter3StatUpdate(Evt* script, s32 isInitialCall) { - PlayerData* playerData = &gPlayerData; - - set_max_SP(3); - playerData->curHP = playerData->curMaxHP; - playerData->curFP = playerData->curMaxFP; - sync_status_menu(); - return ApiStatus_DONE2; -} diff --git a/src/world/area_arn/arn_08/BF47A0.c b/src/world/area_arn/arn_08/BF47A0.c deleted file mode 100644 index b473772e7c..0000000000 --- a/src/world/area_arn/arn_08/BF47A0.c +++ /dev/null @@ -1,25 +0,0 @@ -#include "arn_08.h" - -ApiStatus N(func_80240000_BF47A0)(Evt* script, s32 isInitialCall) { - PlayerStatus* playerStatus = &gPlayerStatus; - f32 temp_f20; - s32 colliderID; - - if (isInitialCall) { - script->functionTemp[0] = 0; - suggest_player_anim_clearUnkFlag(ANIM_Mario_AnimMidairStill); - } - - temp_f20 = func_800E34D8(); - playerStatus->position.y = player_check_collision_below(temp_f20, &colliderID); - script->functionTemp[0] += fabsf(temp_f20); - do {} while (0); - return (script->functionTemp[0] > 50) * ApiStatus_DONE2; -} - -ApiStatus N(func_8024008C_BF482C)(Evt* script, s32 isInitialCall) { - if (gPlayerStatus.position.y < -10.0f) { - return ApiStatus_DONE2; - } - return ApiStatus_BLOCK; -} diff --git a/src/world/area_arn/arn_08/arn_08.h b/src/world/area_arn/arn_08/arn_08.h index a83e621519..46dd196fd7 100644 --- a/src/world/area_arn/arn_08/arn_08.h +++ b/src/world/area_arn/arn_08/arn_08.h @@ -2,26 +2,19 @@ /// @brief Gusty Gulch - Windmill Interior #include "common.h" -#include "../arn.h" #include "message_ids.h" #include "map.h" +#include "../arn.h" +#include "mapfs/arn_08_shape.h" +#include "mapfs/arn_08_hit.h" + +#include "sprite/npc/TubbasHeart.h" +#include "sprite/npc/Yakkey.h" + +enum { + NPC_TubbasHeart = 0, + NPC_Yakkey = 1, +}; + #define NAMESPACE arn_08 - -f32 player_check_collision_below(f32, s32*); -f32 func_800E34D8(void); - -ApiStatus N(func_80240000_BF47A0)(Evt* script, s32 isInitialCall); -ApiStatus N(func_8024008C_BF482C)(Evt* script, s32 isInitialCall); -ApiStatus N(func_802400C0_BF4860)(Evt* script, s32 isInitialCall); -ApiStatus N(func_802400D4_BF4874)(Evt* script, s32 isInitialCall); -ApiStatus N(func_802400F4_BF4894)(Evt* script, s32 isInitialCall); -ApiStatus N(func_8024019C_BF493C)(Evt* script, s32 isInitialCall); - -extern NpcGroupList N(npcGroupList_80241828); -extern EvtScript N(80240B50); -extern EvtScript N(80240BA0); -extern EvtScript N(8024118C); -extern EvtScript N(80240300); -extern EvtScript N(main); -extern EvtScript N(makeEntities); diff --git a/src/world/area_arn/arn_08/arn_08_0_header.c b/src/world/area_arn/arn_08/arn_08_0_header.c new file mode 100644 index 0000000000..ab614142db --- /dev/null +++ b/src/world/area_arn/arn_08/arn_08_0_header.c @@ -0,0 +1,30 @@ +#include "arn_08.h" + +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [arn_08_ENTRY_0] { -80.0, 0.0, 108.0, 45.0 }, + [arn_08_ENTRY_1] { 0.0, 0.0, 0.0, 0.0 }, + [arn_08_ENTRY_2] { -85.0, 0.0, 55.0, 45.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .tattle = { MSG_MapTattle_arn_08 }, +}; + +EvtScript N(EVS_SetupMusic) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_HEART_FLED_FIRST_TUNNEL) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) + EVT_CASE_DEFAULT + EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) + EVT_END_SWITCH + EVT_CALL(ClearAmbientSounds, 250) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_08/arn_08_1_main.c b/src/world/area_arn/arn_08/arn_08_1_main.c new file mode 100644 index 0000000000..17ce1a227c --- /dev/null +++ b/src/world/area_arn/arn_08/arn_08_1_main.c @@ -0,0 +1,122 @@ +#include "arn_08.h" + +extern EvtScript N(EVS_AnimateGears); +extern EvtScript N(EVS_SetupHole); +extern EvtScript N(EVS_PlayDemoScene); +extern EvtScript N(EVS_MakeEntities); +extern EvtScript N(EVS_SetupMusic); +extern NpcGroupList N(DefaultNPCs); + +EvtScript N(EVS_ExitDoor_arn_07_0) = { + EVT_SET_GROUP(EVT_GROUP_1B) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(ClearDefeatedEnemies) + EVT_SET(LVar0, arn_08_ENTRY_0) + EVT_SET(LVar1, COLLIDER_tts) + EVT_SET(LVar2, MODEL_doa) + EVT_SET(LVar4, MODEL_o37) + EVT_SET(LVar3, DOOR_SWING_IN) + EVT_EXEC(ExitSplitSingleDoor) + EVT_WAIT(17) + EVT_CALL(GotoMap, EVT_PTR("arn_07"), arn_07_ENTRY_0) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_arn_07_0)), TRIGGER_WALL_PRESS_A, COLLIDER_tts, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(GetLoadType, LVar1) + EVT_IF_EQ(LVar1, LOAD_FROM_FILE_SELECT) + EVT_EXEC(EnterSavePoint) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_RETURN + EVT_END_IF + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(arn_08_ENTRY_0) + EVT_SET(LVar4, MODEL_o37) + EVT_SET(LVar2, MODEL_doa) + EVT_SET(LVar3, DOOR_SWING_IN) + EVT_EXEC_WAIT(EnterSplitSingleDoor) + EVT_SET(AF_ARN_01, FALSE) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_CASE_EQ(arn_08_ENTRY_1) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_IF_EQ(GB_StoryProgress, STORY_CH3_HEART_ESCAPED_WELL) + EVT_CALL(SetPlayerPos, 1000, 1000, 0) + EVT_CALL(SetNpcPos, NPC_PARTNER, 1000, 1000, 0) + EVT_CALL(RotateModel, MODEL_doa, 80, 0, -1, 0) + EVT_CALL(RotateModel, MODEL_o37, 80, 0, -1, 0) + EVT_CALL(SetNpcAnimation, NPC_TubbasHeart, ANIM_TubbasHeart_Anim06) + EVT_CALL(SetNpcJumpscale, NPC_TubbasHeart, EVT_FLOAT(2.5)) + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, -50, 0, 50, 10) + EVT_CALL(SetNpcAnimation, NPC_TubbasHeart, ANIM_TubbasHeart_Anim07) + EVT_WAIT(1) + EVT_CALL(SetNpcAnimation, NPC_TubbasHeart, ANIM_TubbasHeart_Anim06) + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, -110, 0, 110, 10) + EVT_CALL(SetNpcAnimation, NPC_TubbasHeart, ANIM_TubbasHeart_Anim07) + EVT_WAIT(1) + EVT_CALL(SetNpcAnimation, NPC_TubbasHeart, ANIM_TubbasHeart_Anim06) + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, -180, 0, 180, 10) + EVT_CALL(SetNpcAnimation, NPC_TubbasHeart, ANIM_TubbasHeart_Anim07) + EVT_WAIT(1) + EVT_CALL(MakeLerp, 80, 0, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_doa, LVar0, 0, -1, 0) + EVT_CALL(RotateModel, MODEL_o37, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(PlaySoundAtCollider, COLLIDER_tts, SOUND_BASIC_DOOR_CLOSE, 0) + EVT_WAIT(20) + EVT_CALL(SetPlayerPos, 0, 0, 0) + EVT_CALL(SetNpcPos, NPC_PARTNER, 0, 0, 0) + EVT_SET(GB_StoryProgress, STORY_CH3_HEART_ESCAPED_WINDY_MILL) + EVT_END_IF + EVT_CALL(DisablePlayerPhysics, FALSE) + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(2.0)) + EVT_CALL(PlayerJump, -10, 0, 75, 18) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_WINDY_MILL) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_ALT_NO_LEAD() + EVT_SET(GF_MAP_WindyMill, TRUE) + EVT_IF_GE(GB_StoryProgress, STORY_CH4_FRYING_PAN_STOLEN) + EVT_SET(GF_ARN10_Defeated_Goomba, FALSE) + EVT_SET(GF_ARN12_Defeated_Goomba, FALSE) + EVT_SET(GF_ARN13_Defeated_Goomba, FALSE) + EVT_END_IF + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_AnimateGears)) + EVT_CALL(GetDemoState, LVar0) + EVT_IF_NE(LVar0, DEMO_STATE_NONE) + EVT_EXEC_WAIT(N(EVS_PlayDemoScene)) + EVT_RETURN + EVT_END_IF + EVT_EXEC(N(EVS_EnterMap)) + EVT_EXEC(N(EVS_SetupHole)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_08/arn_08_2_well.c b/src/world/area_arn/arn_08/arn_08_2_well.c new file mode 100644 index 0000000000..3bae954916 --- /dev/null +++ b/src/world/area_arn/arn_08/arn_08_2_well.c @@ -0,0 +1,58 @@ +#include "arn_08.h" + +API_CALLABLE(N(AwaitPlayerFallDist)) { + PlayerStatus* playerStatus = &gPlayerStatus; + f32 fallSpeed; + s32 colliderID; + + if (isInitialCall) { + script->functionTemp[0] = 0; + suggest_player_anim_clearUnkFlag(ANIM_Mario_AnimMidairStill); + } + + fallSpeed = func_800E34D8(); + playerStatus->position.y = player_check_collision_below(fallSpeed, &colliderID); + script->functionTemp[0] += fabsf(fallSpeed); + + if (script->functionTemp[0] > 50) { + return ApiStatus_DONE2; + } else { + return ApiStatus_BLOCK; + } +} + +API_CALLABLE(N(AwaitPlayerJumpDown)) { + if (gPlayerStatus.position.y < -10.0f) { + return ApiStatus_DONE2; + } else { + return ApiStatus_BLOCK; + } +} + +EvtScript N(EVS_ExitWell) = { + EVT_LOOP(0) + EVT_IF_NE(GB_StoryProgress, STORY_CH3_HEART_ESCAPED_WELL) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(N(AwaitPlayerJumpDown)) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(N(AwaitPlayerFallDist)) + EVT_SET(AF_ARN_01, TRUE) + EVT_IF_LT(GB_StoryProgress, STORY_CH3_WENT_DOWN_THE_WELL) + EVT_SET(GB_StoryProgress, STORY_CH3_WENT_DOWN_THE_WELL) + EVT_END_IF + EVT_CALL(GotoMap, EVT_PTR("arn_09"), arn_09_ENTRY_1) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_SetupHole) = { + EVT_CALL(SetCamProperties, CAM_DEFAULT, EVT_FLOAT(90.0), 0, 0, 0, EVT_FLOAT(470.0), EVT_FLOAT(17.0), EVT_FLOAT(-7.0)) + EVT_EXEC(N(EVS_ExitWell)) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_08/arn_08_3_gears.c b/src/world/area_arn/arn_08/arn_08_3_gears.c new file mode 100644 index 0000000000..14847a41b5 --- /dev/null +++ b/src/world/area_arn/arn_08/arn_08_3_gears.c @@ -0,0 +1,19 @@ +#include "arn_08.h" + +EvtScript N(EVS_AnimateGears) = { + EVT_CALL(PlaySound, SOUND_8000004B) + EVT_THREAD + EVT_SET(LVar0, 0) + EVT_LABEL(10) + EVT_CALL(RotateModel, MODEL_o45, LVar0, 0, 0, 1) + EVT_CALL(RotateModel, MODEL_o47, LVar0, 0, 0, 1) + EVT_CALL(RotateModel, MODEL_o46, LVar0, 0, 0, 1) + EVT_CALL(RotateModel, MODEL_o44, LVar0, 0, 0, -1) + EVT_CALL(RotateModel, MODEL_o48, LVar0, 0, 0, -1) + EVT_ADD(LVar0, 1) + EVT_WAIT(1) + EVT_GOTO(10) + EVT_END_THREAD + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_08/arn_08_4_demo.c b/src/world/area_arn/arn_08/arn_08_4_demo.c new file mode 100644 index 0000000000..da62adf2ec --- /dev/null +++ b/src/world/area_arn/arn_08/arn_08_4_demo.c @@ -0,0 +1,164 @@ +#include "arn_08.h" +#include "world/partners.h" + +API_CALLABLE(N(InitializeDemoEquipment)) { + gPlayerData.bootsLevel = 1; + return ApiStatus_DONE2; +} + +API_CALLABLE(N(SetPartnerFollowDist)) { + func_800EF300(); + return ApiStatus_DONE2; +} + +EvtScript N(EVS_ProvideDemoInputs) = { + EVT_CALL(N(InitializeDemoEquipment)) + EVT_CALL(DemoJoystickXY, 2, 0) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 12, 4) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 28, 11) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 47, 22) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 68, 38) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 67, 48) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 64, 59) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 64, 62) + EVT_WAIT(4) + EVT_CALL(DemoSetButtons, BUTTON_A) + EVT_WAIT(10) + EVT_CALL(DemoJoystickXY, 64, 58) + EVT_CALL(DemoSetButtons, 0) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 70, 34) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 77, -2) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 74, -23) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 71, -36) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 69, -44) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 67, -49) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 30, -30) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 0, 0) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 0, -1) + EVT_WAIT(8) + EVT_CALL(DemoSetButtons, BUTTON_A) + EVT_WAIT(2) + EVT_CALL(DemoJoystickXY, 0, -2) + EVT_WAIT(2) + EVT_CALL(DemoJoystickXY, 0, -1) + EVT_WAIT(2) + EVT_CALL(DemoJoystickXY, 0, 0) + EVT_WAIT(1) + EVT_CALL(DemoSetButtons, 0) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 1, 0) + EVT_WAIT(1) + EVT_CALL(DemoJoystickXY, 0, 0) + EVT_CALL(N(SetPartnerFollowDist)) + EVT_CALL(DemoSetButtons, BUTTON_A) + EVT_WAIT(12) + EVT_CALL(DemoSetButtons, 0) + EVT_WAIT(20) + EVT_IF_EQ(GF_DemoSceneDone, TRUE) + EVT_RETURN + EVT_END_IF + EVT_SET(GF_DemoSceneDone, TRUE) + EVT_CALL(GotoMapSpecial, EVT_PTR("arn_08"), arn_08_ENTRY_2, TRANSITION_2) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_MonitorDemoState) = { + EVT_WAIT(10) + EVT_LOOP(0) + EVT_CALL(GetDemoState, LVar0) + EVT_IF_EQ(LVar0, DEMO_STATE_CHANGE_MAP) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_IF_EQ(GF_DemoSceneDone, TRUE) + EVT_RETURN + EVT_END_IF + EVT_SET(GF_DemoSceneDone, TRUE) + EVT_CALL(GotoMapSpecial, EVT_PTR("arn_08"), arn_08_ENTRY_2, TRANSITION_3) + EVT_WAIT(35) + EVT_RETURN + EVT_END +}; + +API_CALLABLE(N(func_802400F4_BF4894)) { + PlayerStatus* playerStatus = &gPlayerStatus; + + if (isInitialCall) { + script->functionTemp[0] = 0; + } + + if (!(playerStatus->position.y > -10.0f)) { + f32 temp_f20 = func_800E34D8(); + s32 colliderID; + + playerStatus->position.y = player_check_collision_below(temp_f20, &colliderID); + script->functionTemp[0] += fabsf(temp_f20); + + return (script->functionTemp[0] > 50) * ApiStatus_DONE2; + } + + return ApiStatus_BLOCK; +} + +EvtScript N(EVS_8024116C) = { + EVT_CALL(N(func_802400F4_BF4894)) + EVT_RETURN + EVT_END +}; + +s32 N(DemoSceneState) = 0; + +API_CALLABLE(N(SetupDemoScene)) { + PlayerStatus* playerStatus = &gPlayerStatus; + + switch (N(DemoSceneState)) { + case 0: + N(DemoSceneState) = 1; + break; + case 1: + case 2: + N(DemoSceneState)++; + break; + case 3: { + partner_clear_player_tracking(wPartnerNpc); + partner_set_goal_pos(playerStatus->position.x, playerStatus->position.z); + func_800EF3D4(0); + set_npc_yaw(wPartnerNpc, 90.0f); + playerStatus->targetYaw = 90.0f; + playerStatus->currentYaw = 90.0f; + playerStatus->spriteFacingAngle = 0.0f; + return ApiStatus_DONE2; + } + } + + return ApiStatus_BLOCK; +} + +EvtScript N(EVS_PlayDemoScene) = { + EVT_CALL(SetCamProperties, CAM_DEFAULT, EVT_FLOAT(90.0), 0, 0, 0, EVT_FLOAT(470.0), EVT_FLOAT(17.0), EVT_FLOAT(-7.0)) + EVT_CALL(N(SetupDemoScene)) + EVT_SET(GF_DemoSceneDone, FALSE) + EVT_EXEC(N(EVS_MonitorDemoState)) + EVT_EXEC(N(EVS_ProvideDemoInputs)) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_08/arn_08_5_npc.c b/src/world/area_arn/arn_08/arn_08_5_npc.c new file mode 100644 index 0000000000..f8fbf0e8b8 --- /dev/null +++ b/src/world/area_arn/arn_08/arn_08_5_npc.c @@ -0,0 +1,75 @@ +#include "arn_08.h" + +#include "world/common/npc/TubbasHeart.inc.c" +#include "world/common/npc/Yakkey.inc.c" + +EvtScript N(EVS_NpcIdle_TubbasHeart) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_TubbasHeart) = { + EVT_IF_NE(GB_StoryProgress, STORY_CH3_HEART_ESCAPED_WELL) + EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION) + EVT_ELSE + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_TubbasHeart))) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Yakkey) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH5_WHALE_MOUTH_OPEN) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Yakkey_Talk, ANIM_Yakkey_Idle, 0, MSG_CH3_00BA) + EVT_CASE_LT(STORY_CH6_FLOWER_GATE_OPEN) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Yakkey_Talk, ANIM_Yakkey_Idle, 0, MSG_CH3_00BB) + EVT_CASE_LT(STORY_CH7_INVITED_TO_STARBORN_VALLEY) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Yakkey_Talk, ANIM_Yakkey_Idle, 0, MSG_CH3_00BC) + EVT_CASE_LT(STORY_CH8_OPENED_PATH_TO_STAR_WAY) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Yakkey_Talk, ANIM_Yakkey_Idle, 0, MSG_CH3_00BD) + EVT_CASE_GE(STORY_CH8_OPENED_PATH_TO_STAR_WAY) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Yakkey_Talk, ANIM_Yakkey_Idle, 0, MSG_CH3_00BE) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Yakkey) = { + EVT_IF_LT(GB_StoryProgress, STORY_CH4_FRYING_PAN_STOLEN) + EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION) + EVT_ELSE + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Yakkey))) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_TubbasHeart) = { + .id = NPC_TubbasHeart, + .settings = &N(NpcSettings_TubbasHeart), + .pos = { -23.0f, 75.0f, 31.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_TubbasHeart), + .drops = TUBBAS_HEART_DROPS, + .animations = TUBBAS_HEART_ANIMS, +}; + +StaticNpc N(NpcData_Yakkey) = { + .id = NPC_Yakkey, + .settings = &N(NpcSettings_Yakkey), + .pos = { 38.0f, 0.0f, 97.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_Yakkey), + .drops = YAKKEY_DROPS, + .animations = YAKKEY_ANIMS, + .tattle = MSG_NpcTattle_Yakkey, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_TubbasHeart)), + NPC_GROUP(N(NpcData_Yakkey)), + {} +}; diff --git a/src/world/area_arn/arn_08/arn_08_6_entity.c b/src/world/area_arn/arn_08/arn_08_6_entity.c new file mode 100644 index 0000000000..d6aa214d0f --- /dev/null +++ b/src/world/area_arn/arn_08/arn_08_6_entity.c @@ -0,0 +1,10 @@ +#include "arn_08.h" +#include "entity.h" + +EvtScript N(EVS_MakeEntities) = { + EVT_IF_LT(GB_StoryProgress, STORY_CH3_WENT_DOWN_THE_WELL) + EVT_CALL(MakeEntity, EVT_PTR(Entity_BoardedFloor), 0, 30, 0, 0, MAKE_ENTITY_END) + EVT_END_IF + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_08/events.c b/src/world/area_arn/arn_08/events.c deleted file mode 100644 index 522435d32a..0000000000 --- a/src/world/area_arn/arn_08/events.c +++ /dev/null @@ -1,503 +0,0 @@ -#include "arn_08.h" -#include "sprite/npc/TubbasHeart.h" -#include "sprite/npc/Yakkey.h" -#include "world/partners.h" -#include "entity.h" - -enum { - NPC_TUBBAS_HEART, - NPC_YAKKEY, -}; - -EvtScript N(802403B0) = { - EVT_SET_GROUP(EVT_GROUP_1B) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(ClearDefeatedEnemies) - EVT_SET(LVar0, 0) - EVT_SET(LVar1, 6) - EVT_SET(LVar2, 0) - EVT_SET(LVar4, 1) - EVT_SET(LVar3, -1) - EVT_EXEC(0x80285DFC) - EVT_WAIT(17) - EVT_CALL(GotoMap, EVT_PTR("arn_07"), 0) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(80240470) = { - EVT_BIND_TRIGGER(N(802403B0), TRIGGER_WALL_PRESS_A, 6, 1, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(8024049C) = { - EVT_CALL(GetLoadType, LVar1) - EVT_IF_EQ(LVar1, 1) - EVT_EXEC(EnterSavePoint) - EVT_EXEC(N(80240470)) - EVT_RETURN - EVT_END_IF - EVT_CALL(GetEntryID, LVar0) - EVT_SWITCH(LVar0) - EVT_CASE_EQ(0) - EVT_SET(LVar4, 1) - EVT_SET(LVar2, 0) - EVT_SET(LVar3, -1) - EVT_EXEC_WAIT(0x80285E24) - EVT_SET(AreaFlag(1), 0) - EVT_EXEC(N(80240470)) - EVT_CASE_EQ(1) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(DisablePlayerPhysics, TRUE) - EVT_IF_EQ(GB_StoryProgress, -18) - EVT_CALL(SetPlayerPos, 1000, 1000, 0) - EVT_CALL(SetNpcPos, NPC_PARTNER, 1000, 1000, 0) - EVT_CALL(RotateModel, 0, 80, 0, -1, 0) - EVT_CALL(RotateModel, 1, 80, 0, -1, 0) - EVT_CALL(SetNpcAnimation, 0, ANIM_TubbasHeart_Anim06) - EVT_CALL(SetNpcJumpscale, 0, EVT_FLOAT(2.5)) - EVT_CALL(PlaySoundAtNpc, 0, 0x20C8, 0) - EVT_CALL(NpcJump0, 0, -50, 0, 50, 10) - EVT_CALL(SetNpcAnimation, 0, ANIM_TubbasHeart_Anim07) - EVT_WAIT(1) - EVT_CALL(SetNpcAnimation, 0, ANIM_TubbasHeart_Anim06) - EVT_CALL(PlaySoundAtNpc, 0, 0x20C8, 0) - EVT_CALL(NpcJump0, 0, -110, 0, 110, 10) - EVT_CALL(SetNpcAnimation, 0, ANIM_TubbasHeart_Anim07) - EVT_WAIT(1) - EVT_CALL(SetNpcAnimation, 0, ANIM_TubbasHeart_Anim06) - EVT_CALL(PlaySoundAtNpc, 0, 0x20C8, 0) - EVT_CALL(NpcJump0, 0, -180, 0, 180, 10) - EVT_CALL(SetNpcAnimation, 0, ANIM_TubbasHeart_Anim07) - EVT_WAIT(1) - EVT_CALL(MakeLerp, 80, 0, 10, 0) - EVT_LOOP(0) - EVT_CALL(UpdateLerp) - EVT_CALL(RotateModel, 0, LVar0, 0, -1, 0) - EVT_CALL(RotateModel, 1, LVar0, 0, -1, 0) - EVT_WAIT(1) - EVT_IF_EQ(LVar1, 0) - EVT_BREAK_LOOP - EVT_END_IF - EVT_END_LOOP - EVT_CALL(PlaySoundAtCollider, 6, 450, 0) - EVT_WAIT(20) - EVT_CALL(SetPlayerPos, 0, 0, 0) - EVT_CALL(SetNpcPos, NPC_PARTNER, 0, 0, 0) - EVT_SET(GB_StoryProgress, -17) - EVT_END_IF - EVT_CALL(DisablePlayerPhysics, FALSE) - EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(2.0)) - EVT_CALL(PlayerJump, -10, 0, 75, 18) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_EXEC(N(80240470)) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(main) = { - EVT_SET(GB_WorldLocation, 35) - EVT_CALL(SetSpriteShading, -1) - EVT_CALL(SetCamPerspective, 0, 3, 25, 16, 4096) - EVT_CALL(SetCamBGColor, 0, 0, 0, 0) - EVT_CALL(SetCamLeadPlayer, 0, 0) - EVT_CALL(SetCamEnabled, 0, 1) - EVT_SET(GF_MAP_WindyMill, 1) - EVT_IF_GE(GB_StoryProgress, -12) - EVT_SET(GF_ARN10_Defeated_Goomba, 0) - EVT_SET(GF_ARN12_Defeated_Goomba, 0) - EVT_SET(GF_ARN13_Defeated_Goomba, 0) - EVT_END_IF - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_80241828))) - EVT_EXEC_WAIT(N(makeEntities)) - EVT_EXEC(N(80240BA0)) - EVT_CALL(GetDemoState, LVar0) - EVT_IF_NE(LVar0, 0) - EVT_EXEC_WAIT(N(8024118C)) - EVT_RETURN - EVT_END_IF - EVT_EXEC(N(8024049C)) - EVT_EXEC(N(80240B50)) - EVT_EXEC(N(80240300)) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_A6C) = { - 0x00000000, -}; - -EvtScript N(80240A70) = { - EVT_LOOP(0) - EVT_IF_NE(GB_StoryProgress, -18) - EVT_BREAK_LOOP - EVT_END_IF - EVT_WAIT(1) - EVT_END_LOOP - EVT_CALL(N(func_8024008C_BF482C)) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(DisablePlayerPhysics, TRUE) - EVT_CALL(N(func_80240000_BF47A0)) - EVT_SET(AreaFlag(1), 1) - EVT_IF_LT(GB_StoryProgress, -23) - EVT_SET(GB_StoryProgress, -23) - EVT_END_IF - EVT_CALL(GotoMap, EVT_PTR("arn_09"), 1) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(80240B50) = { - EVT_CALL(SetCamProperties, 0, EVT_FLOAT(90.0), 0, 0, 0, EVT_FLOAT(470.0), EVT_FLOAT(17.0), EVT_FLOAT(-7.0)) - EVT_EXEC(N(80240A70)) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_B98)[] = { - 0x00000000, 0x00000000, -}; - -EvtScript N(80240BA0) = { - EVT_CALL(PlaySound, 0x8000004B) - EVT_THREAD - EVT_SET(LVar0, 0) - EVT_LABEL(10) - EVT_CALL(RotateModel, 9, LVar0, 0, 0, 1) - EVT_CALL(RotateModel, 15, LVar0, 0, 0, 1) - EVT_CALL(RotateModel, 11, LVar0, 0, 0, 1) - EVT_CALL(RotateModel, 13, LVar0, 0, 0, -1) - EVT_CALL(RotateModel, 17, LVar0, 0, 0, -1) - EVT_ADD(LVar0, 1) - EVT_WAIT(1) - EVT_GOTO(10) - EVT_END_THREAD - EVT_RETURN - EVT_END -}; - -static s32 N(pad_CB4)[] = { - 0x00000000, 0x00000000, 0x00000000, -}; - -EvtScript N(80240CC0) = { - EVT_CALL(N(func_802400C0_BF4860)) - EVT_CALL(DemoJoystickXY, 2, 0) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 12, 4) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 28, 11) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 47, 22) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 68, 38) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 67, 48) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 64, 59) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 64, 62) - EVT_WAIT(4) - EVT_CALL(DemoSetButtons, 32768) - EVT_WAIT(10) - EVT_CALL(DemoJoystickXY, 64, 58) - EVT_CALL(DemoSetButtons, 0) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 70, 34) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 77, -2) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 74, -23) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 71, -36) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 69, -44) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 67, -49) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 30, -30) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 0, 0) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 0, -1) - EVT_WAIT(8) - EVT_CALL(DemoSetButtons, 32768) - EVT_WAIT(2) - EVT_CALL(DemoJoystickXY, 0, -2) - EVT_WAIT(2) - EVT_CALL(DemoJoystickXY, 0, -1) - EVT_WAIT(2) - EVT_CALL(DemoJoystickXY, 0, 0) - EVT_WAIT(1) - EVT_CALL(DemoSetButtons, 0) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 1, 0) - EVT_WAIT(1) - EVT_CALL(DemoJoystickXY, 0, 0) - EVT_CALL(N(func_802400D4_BF4874)) - EVT_CALL(DemoSetButtons, 32768) - EVT_WAIT(12) - EVT_CALL(DemoSetButtons, 0) - EVT_WAIT(20) - EVT_IF_EQ(GF_DemoSceneDone, 1) - EVT_RETURN - EVT_END_IF - EVT_SET(GF_DemoSceneDone, 1) - EVT_CALL(GotoMapSpecial, EVT_PTR("arn_08"), 2, 2) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(802410AC) = { - EVT_WAIT(10) - EVT_LOOP(0) - EVT_CALL(GetDemoState, LVar0) - EVT_IF_EQ(LVar0, 2) - EVT_BREAK_LOOP - EVT_END_IF - EVT_WAIT(1) - EVT_END_LOOP - EVT_IF_EQ(GF_DemoSceneDone, 1) - EVT_RETURN - EVT_END_IF - EVT_SET(GF_DemoSceneDone, 1) - EVT_CALL(GotoMapSpecial, EVT_PTR("arn_08"), 2, 3) - EVT_WAIT(35) - EVT_RETURN - EVT_END -}; - -EvtScript N(8024116C) = { - EVT_CALL(N(func_802400F4_BF4894)) - EVT_RETURN - EVT_END -}; - -s32 N(D_80241188_BF5928) = { - 0x00000000, -}; - -EvtScript N(8024118C) = { - EVT_CALL(SetCamProperties, 0, EVT_FLOAT(90.0), 0, 0, 0, EVT_FLOAT(470.0), EVT_FLOAT(17.0), EVT_FLOAT(-7.0)) - EVT_CALL(N(func_8024019C_BF493C)) - EVT_SET(GF_DemoSceneDone, 0) - EVT_EXEC(N(802410AC)) - EVT_EXEC(N(80240CC0)) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_11FC) = { - 0x00000000, -}; - -EvtScript N(80241200) = { - EVT_RETURN - EVT_END -}; - -EvtScript N(80241210) = { - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_80241220) = { - .height = 24, - .radius = 24, - .otherAI = &N(80241200), - .onDefeat = &N(80241210), - .level = 13, -}; - -NpcSettings N(npcSettings_8024124C) = { - .height = 24, - .radius = 24, - .level = 13, -}; - -EvtScript N(idle_80241278) = { - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80241288) = { - EVT_IF_NE(GB_StoryProgress, -18) - EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) - EVT_ELSE - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_80241278))) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -EvtScript N(interact_802412E8) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(8) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Yakkey_Talk, ANIM_Yakkey_Idle, 0, MSG_CH3_00BA) - EVT_CASE_LT(42) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Yakkey_Talk, ANIM_Yakkey_Idle, 0, MSG_CH3_00BB) - EVT_CASE_LT(61) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Yakkey_Talk, ANIM_Yakkey_Idle, 0, MSG_CH3_00BC) - EVT_CASE_LT(90) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Yakkey_Talk, ANIM_Yakkey_Idle, 0, MSG_CH3_00BD) - EVT_CASE_GE(90) - EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Yakkey_Talk, ANIM_Yakkey_Idle, 0, MSG_CH3_00BE) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(init_802413E8) = { - EVT_IF_LT(GB_StoryProgress, -12) - EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) - EVT_ELSE - EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(interact_802412E8))) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -StaticNpc N(npcGroup_80241448) = { - .id = NPC_TUBBAS_HEART, - .settings = &N(npcSettings_80241220), - .pos = { -23.0f, 75.0f, 31.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_80241288), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - }, -}; - -StaticNpc N(npcGroup_80241638) = { - .id = NPC_YAKKEY, - .settings = &N(npcSettings_8024124C), - .pos = { 38.0f, 0.0f, 97.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_JUMPING, - .init = &N(init_802413E8), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - ANIM_Yakkey_Idle, - }, - .tattle = MSG_NpcTattle_Yakkey, -}; - -NpcGroupList N(npcGroupList_80241828) = { - NPC_GROUP(N(npcGroup_80241448)), - NPC_GROUP(N(npcGroup_80241638)), - {}, -}; - -static s32 N(pad_184C) = { - 0x00000000, -}; - -EvtScript N(makeEntities) = { - EVT_IF_LT(GB_StoryProgress, -23) - EVT_CALL(MakeEntity, EVT_PTR(Entity_BoardedFloor), 0, 30, 0, 0, MAKE_ENTITY_END) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -ApiStatus N(func_802400C0_BF4860)(Evt* script, s32 isInitialCall) { - gPlayerData.bootsLevel = 1; - return ApiStatus_DONE2; -} - -ApiStatus N(func_802400D4_BF4874)(Evt* script, s32 isInitialCall) { - func_800EF300(); - return ApiStatus_DONE2; -} - -ApiStatus N(func_802400F4_BF4894)(Evt* script, s32 isInitialCall) { - PlayerStatus* playerStatus = &gPlayerStatus; - - if (isInitialCall) { - script->functionTemp[0] = 0; - } - - if (!(playerStatus->position.y > -10.0f)) { - f32 temp_f20 = func_800E34D8(); - s32 colliderID; - - playerStatus->position.y = player_check_collision_below(temp_f20, &colliderID); - script->functionTemp[0] += fabsf(temp_f20); - - return (script->functionTemp[0] > 50) * ApiStatus_DONE2; - } - - return ApiStatus_BLOCK; -} - -ApiStatus N(func_8024019C_BF493C)(Evt* script, s32 isInitialCall) { - PlayerStatus* playerStatus = &gPlayerStatus; - s32* dataPtr = &N(D_80241188_BF5928); - - switch (*dataPtr) { - case 0: - *dataPtr = 1; - break; - case 1: - case 2: - (*dataPtr)++; - break; - case 3: { - partner_clear_player_tracking(wPartnerNpc); - partner_set_goal_pos(playerStatus->position.x, playerStatus->position.z); - func_800EF3D4(0); - set_npc_yaw(wPartnerNpc, 90.0f); - playerStatus->targetYaw = 90.0f; - playerStatus->currentYaw = 90.0f; - playerStatus->spriteFacingAngle = 0.0f; - return ApiStatus_DONE2; - } - } - - return ApiStatus_BLOCK; -} diff --git a/src/world/area_arn/arn_08/header.c b/src/world/area_arn/arn_08/header.c deleted file mode 100644 index e03c248b8c..0000000000 --- a/src/world/area_arn/arn_08/header.c +++ /dev/null @@ -1,29 +0,0 @@ -#include "arn_08.h" -#include "message_ids.h" - -EntryList N(entryList) = { - { -80.0f, 0.0f, 108.0f, 45.0f }, - { 0.0f, 0.0f, 0.0f, 0.0f }, - { -85.0f, 0.0f, 55.0f, 45.0f }, -}; - -MapSettings N(settings) = { - .main = &N(main), - .entryList = &N(entryList), - .entryCount = ENTRY_COUNT(N(entryList)), - .tattle = { MSG_MapTattle_arn_08 }, -}; - -EvtScript N(80240300) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-22) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) - EVT_CASE_LT(-16) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) - EVT_CASE_DEFAULT - EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) - EVT_END_SWITCH - EVT_CALL(ClearAmbientSounds, 250) - EVT_RETURN - EVT_END -}; diff --git a/src/world/area_arn/arn_09/arn_09.h b/src/world/area_arn/arn_09/arn_09.h index d1532eb65c..ad417c0590 100644 --- a/src/world/area_arn/arn_09/arn_09.h +++ b/src/world/area_arn/arn_09/arn_09.h @@ -2,18 +2,17 @@ /// @brief Gusty Gulch - Windmill Tunnel Entry #include "common.h" -#include "../arn.h" #include "message_ids.h" #include "map.h" +#include "../arn.h" +#include "mapfs/arn_09_shape.h" +#include "mapfs/arn_09_hit.h" + +#include "sprite/npc/TubbasHeart.h" + +enum { + NPC_TubbasHeart = 0, +}; + #define NAMESPACE arn_09 - -ApiStatus func_802D2484(Evt* script, s32 isInitialCall); -ApiStatus N(func_80240000_BF6060)(Evt *script, s32 isInitialCall); - -extern EvtScript N(main); -extern EvtScript N(802400A0); -extern NpcGroupList N(npcGroupList_80240974); -extern EvtScript N(makeEntities); -extern EvtScript N(802404D0); - diff --git a/src/world/area_arn/arn_09/arn_09_0_header.c b/src/world/area_arn/arn_09/arn_09_0_header.c new file mode 100644 index 0000000000..b4afd70aec --- /dev/null +++ b/src/world/area_arn/arn_09/arn_09_0_header.c @@ -0,0 +1,28 @@ +#include "arn_09.h" + +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [arn_09_ENTRY_0] { 125.0, 0.0, 0.0, 270.0 }, + [arn_09_ENTRY_1] { 0.0, 200.0, 0.0, 90.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .tattle = { MSG_MapTattle_arn_09 }, +}; + +EvtScript N(EVS_SetupMusic) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_HEART_FLED_FIRST_TUNNEL) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) + EVT_CASE_DEFAULT + EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_09/arn_09_1_main.c b/src/world/area_arn/arn_09/arn_09_1_main.c new file mode 100644 index 0000000000..1cafa8415a --- /dev/null +++ b/src/world/area_arn/arn_09/arn_09_1_main.c @@ -0,0 +1,45 @@ +#include "arn_09.h" + +extern EvtScript N(EVS_Main); +extern EvtScript N(EVS_LaunchPlayer); +extern EvtScript N(EVS_SetupMusic); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(DefaultNPCs); + +EvtScript N(EVS_ExitDoor_arn_10_0) = EVT_EXIT_SPLIT_SINGLE_DOOR(arn_09_ENTRY_0, "arn_10", arn_10_ENTRY_0, + COLLIDER_tte, MODEL_doa, MODEL_o37, DOOR_SWING_OUT); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_arn_10_0)), TRIGGER_WALL_PRESS_A, COLLIDER_tte, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(arn_09_ENTRY_0) + EVT_SET(LVar2, MODEL_doa) + EVT_SET(LVar4, MODEL_o37) + EVT_SET(LVar3, DOOR_SWING_OUT) + EVT_EXEC_WAIT(EnterSplitSingleDoor) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_CASE_EQ(arn_09_ENTRY_1) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_WINDY_MILL) + EVT_CALL(SetSpriteShading, SHADING_ARN_09) + EVT_SETUP_CAMERA_ALT_NO_LEAD() + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_EnterMap)) + EVT_EXEC(N(EVS_LaunchPlayer)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_09/arn_09_2_entity.c b/src/world/area_arn/arn_09/arn_09_2_entity.c new file mode 100644 index 0000000000..c40ccc76b9 --- /dev/null +++ b/src/world/area_arn/arn_09/arn_09_2_entity.c @@ -0,0 +1,28 @@ +#include "arn_09.h" +#include "entity.h" + +EvtScript N(EVS_UseSpring) = { + EVT_IF_EQ(AF_ARN_01, TRUE) + EVT_RETURN + EVT_END_IF + EVT_SET(AF_ARN_01, TRUE) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(SetPlayerActionState, ACTION_STATE_LAUNCH) + EVT_WAIT(1) + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.0)) + EVT_CALL(PlayerJump, 0, 200, 0, 30) + EVT_CALL(GotoMap, EVT_PTR("arn_08"), arn_08_ENTRY_1) + EVT_WAIT(100) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_CALL(DisablePlayerPhysics, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_MakeEntities) = { + EVT_CALL(MakeEntity, EVT_PTR(Entity_ScriptSpring), 0, 0, 0, 0, MAKE_ENTITY_END) + EVT_CALL(AssignScript, EVT_PTR(N(EVS_UseSpring))) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_09/arn_09_3_launch.c b/src/world/area_arn/arn_09/arn_09_3_launch.c new file mode 100644 index 0000000000..9ae9389b4c --- /dev/null +++ b/src/world/area_arn/arn_09/arn_09_3_launch.c @@ -0,0 +1,19 @@ +#include "arn_09.h" + +EvtScript N(EVS_LaunchPlayer) = { + EVT_IF_EQ(AF_ARN_01, FALSE) + EVT_RETURN + EVT_END_IF + EVT_SET(AF_ARN_01, TRUE) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(SetPlayerActionState, ACTION_STATE_FALLING) + EVT_CALL(func_802D2484) + EVT_CALL(SetPlayerActionState, ACTION_STATE_LAUNCH) + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.5)) + EVT_CALL(PlayerJump, 50, 0, 0, 16) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_SET(AF_ARN_01, FALSE) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_09/arn_09_4_npc.c b/src/world/area_arn/arn_09/arn_09_4_npc.c new file mode 100644 index 0000000000..cdf00c0ba3 --- /dev/null +++ b/src/world/area_arn/arn_09/arn_09_4_npc.c @@ -0,0 +1,62 @@ +#include "arn_09.h" +#include "entity.h" +#include "animation_script.h" + +extern AnimScript Entity_ScriptSpring_AnimLaunch; + +#include "world/common/npc/TubbasHeart.inc.c" + +API_CALLABLE(N(PlaySpringAnimation)) { + Entity* entity = get_entity_by_index(0); + + if (entity == NULL) { + return ApiStatus_BLOCK; + } + + play_model_animation(entity->virtualModelIndex, Entity_ScriptSpring_AnimLaunch); + return ApiStatus_DONE2; +} + +EvtScript N(EVS_NpcIdle_TubbasHeart) = { + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_SELF, 0, 25, -10, 6) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_2086, 0) + EVT_CALL(N(PlaySpringAnimation)) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_SELF, 0, 200, 0, 15) + EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) + EVT_SET(GB_StoryProgress, STORY_CH3_HEART_ESCAPED_WELL) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_TubbasHeart) = { + EVT_IF_NE(GB_StoryProgress, STORY_CH3_HEART_FLED_SECOND_TUNNEL) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_ELSE + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_TubbasHeart))) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_TubbasHeart) = { + .id = NPC_TubbasHeart, + .settings = &N(NpcSettings_TubbasHeart), + .pos = { 0.0f, 25.0f, 0.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_TubbasHeart), + .drops = TUBBAS_HEART_DROPS, + .animations = TUBBAS_HEART_ANIMS, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_TubbasHeart)), + {} +}; diff --git a/src/world/area_arn/arn_09/events.c b/src/world/area_arn/arn_09/events.c deleted file mode 100644 index b7f6a08b09..0000000000 --- a/src/world/area_arn/arn_09/events.c +++ /dev/null @@ -1,209 +0,0 @@ -#include "arn_09.h" -#include "entity.h" -#include "sprite/npc/TubbasHeart.h" - -extern s16 Entity_ScriptSpring_AnimLaunch[]; - -EvtScript N(80240140) = { - EVT_SET_GROUP(EVT_GROUP_1B) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_SET(LVar0, 0) - EVT_SET(LVar1, 5) - EVT_SET(LVar2, 0) - EVT_SET(LVar4, 1) - EVT_SET(LVar3, 1) - EVT_EXEC(0x80285DFC) - EVT_WAIT(17) - EVT_CALL(GotoMap, EVT_PTR("arn_10"), 0) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(802401F4) = { - EVT_BIND_TRIGGER(N(80240140), TRIGGER_WALL_PRESS_A, 5, 1, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(80240220) = { - EVT_CALL(GetEntryID, LVar0) - EVT_SWITCH(LVar0) - EVT_CASE_EQ(0) - EVT_SET(LVar2, 0) - EVT_SET(LVar4, 1) - EVT_SET(LVar3, 1) - EVT_EXEC_WAIT(0x80285E24) - EVT_EXEC(N(802401F4)) - EVT_CASE_EQ(1) - EVT_EXEC(N(802401F4)) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(main) = { - EVT_SET(GB_WorldLocation, 35) - EVT_CALL(SetSpriteShading, 524288) - EVT_CALL(SetCamPerspective, 0, 3, 25, 16, 4096) - EVT_CALL(SetCamBGColor, 0, 0, 0, 0) - EVT_CALL(SetCamLeadPlayer, 0, 0) - EVT_CALL(SetCamEnabled, 0, 1) - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_80240974))) - EVT_EXEC_WAIT(N(makeEntities)) - EVT_EXEC(N(80240220)) - EVT_EXEC(N(802404D0)) - EVT_EXEC(N(802400A0)) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_398)[] = { - 0x00000000, 0x00000000, -}; - -EvtScript N(802403A0) = { - EVT_IF_EQ(AreaFlag(1), 1) - EVT_RETURN - EVT_END_IF - EVT_SET(AreaFlag(1), 1) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(DisablePlayerPhysics, TRUE) - EVT_CALL(SetPlayerActionState, 6) - EVT_WAIT(1) - EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.0)) - EVT_CALL(PlayerJump, 0, 200, 0, 30) - EVT_CALL(GotoMap, EVT_PTR("arn_08"), 1) - EVT_WAIT(100) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_CALL(DisablePlayerPhysics, FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(makeEntities) = { - EVT_CALL(MakeEntity, EVT_PTR(Entity_ScriptSpring), 0, 0, 0, 0, MAKE_ENTITY_END) - EVT_CALL(AssignScript, EVT_PTR(N(802403A0))) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_4CC)[] = { - 0x00000000, -}; - -EvtScript N(802404D0) = { - EVT_IF_EQ(AreaFlag(1), 0) - EVT_RETURN - EVT_END_IF - EVT_SET(AreaFlag(1), 1) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(SetPlayerActionState, 8) - EVT_CALL(func_802D2484) - EVT_CALL(SetPlayerActionState, 6) - EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.5)) - EVT_CALL(PlayerJump, 50, 0, 0, 16) - EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) - EVT_SET(AreaFlag(1), 0) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_5A8)[] = { - 0x00000000, 0x00000000, -}; - -EvtScript N(802405B0) = { - EVT_RETURN - EVT_END -}; - -EvtScript N(802405C0) = { - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_802405D0) = { - .height = 24, - .radius = 24, - .otherAI = &N(802405B0), - .onDefeat = &N(802405C0), - .level = 13, -}; - -EvtScript N(idle_802405FC) = { - EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x20C8, 0) - EVT_CALL(NpcJump0, NPC_SELF, 0, 25, -10, 6) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x2086, 0) - EVT_CALL(N(func_80240000_BF6060)) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x20C8, 0) - EVT_CALL(NpcJump0, NPC_SELF, 0, 200, 0, 15) - EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) - EVT_SET(GB_StoryProgress, -18) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80240730) = { - EVT_IF_NE(GB_StoryProgress, -19) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_ELSE - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_802405FC))) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -StaticNpc N(npcGroup_80240784) = { - .id = 0, - .settings = &N(npcSettings_802405D0), - .pos = { 0.0f, 25.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_80240730), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - }, -}; - -NpcGroupList N(npcGroupList_80240974) = { - NPC_GROUP(N(npcGroup_80240784)), - {}, -}; - -ApiStatus N(func_80240000_BF6060)(Evt* script, s32 isInitialCall) { - Entity* entity = get_entity_by_index(0); - - if (entity == NULL) { - return ApiStatus_BLOCK; - } - - play_model_animation(entity->virtualModelIndex, Entity_ScriptSpring_AnimLaunch); - return ApiStatus_DONE2; -} diff --git a/src/world/area_arn/arn_09/header.c b/src/world/area_arn/arn_09/header.c deleted file mode 100644 index fafd1d2327..0000000000 --- a/src/world/area_arn/arn_09/header.c +++ /dev/null @@ -1,27 +0,0 @@ -#include "arn_09.h" -#include "message_ids.h" - -EntryList N(entryList) = { - { 125.0f, 0.0f, 0.0f, 270.0f }, - { 0.0f, 200.0f, 0.0f, 90.0f }, -}; - -MapSettings N(settings) = { - .main = &N(main), - .entryList = &N(entryList), - .entryCount = ENTRY_COUNT(N(entryList)), - .tattle = { MSG_MapTattle_arn_09 }, -}; - -EvtScript N(802400A0) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-22) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) - EVT_CASE_LT(-16) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) - EVT_CASE_DEFAULT - EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; diff --git a/src/world/area_arn/arn_10/arn_10.h b/src/world/area_arn/arn_10/arn_10.h index 0c5db80c37..a511ef12a8 100644 --- a/src/world/area_arn/arn_10/arn_10.h +++ b/src/world/area_arn/arn_10/arn_10.h @@ -2,13 +2,19 @@ /// @brief Gusty Gulch - Tunnel 1 #include "common.h" -#include "../arn.h" #include "message_ids.h" #include "map.h" -#define NAMESPACE arn_10 +#include "../arn.h" +#include "mapfs/arn_10_shape.h" +#include "mapfs/arn_10_hit.h" -extern EvtScript N(main); -extern EvtScript N(80240060); -extern NpcGroupList N(npcGroupList_80240BB8); -extern EvtScript N(makeEntities); +#include "sprite/npc/TubbasHeart.h" +#include "sprite/npc/Goomba.h" + +enum { + NPC_TubbasHeart = 0, + NPC_HyperGoomba = 1, +}; + +#define NAMESPACE arn_10 diff --git a/src/world/area_arn/arn_10/arn_10_0_header.c b/src/world/area_arn/arn_10/arn_10_0_header.c new file mode 100644 index 0000000000..1a46455d4b --- /dev/null +++ b/src/world/area_arn/arn_10/arn_10_0_header.c @@ -0,0 +1,28 @@ +#include "arn_10.h" + +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [arn_10_ENTRY_0] { -225.0, 0.0, 0.0, 90.0 }, + [arn_10_ENTRY_1] { 225.0, 0.0, 0.0, 270.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .tattle = { MSG_MapTattle_arn_10 }, +}; + +EvtScript N(EVS_SetupMusic) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_HEART_FLED_FIRST_TUNNEL) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) + EVT_CASE_DEFAULT + EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_10/arn_10_1_main.c b/src/world/area_arn/arn_10/arn_10_1_main.c new file mode 100644 index 0000000000..77e4eec9d6 --- /dev/null +++ b/src/world/area_arn/arn_10/arn_10_1_main.c @@ -0,0 +1,49 @@ +#include "arn_10.h" + +extern NpcGroupList N(DefaultNPCs); +extern EvtScript N(EVS_SetupMusic); +extern EvtScript N(EVS_MakeEntities); + +EvtScript N(EVS_ExitDoor_arn_09_0) = EVT_EXIT_SINGLE_DOOR(arn_10_ENTRY_0, "arn_09", arn_09_ENTRY_0, + COLLIDER_ttw, MODEL_o44, DOOR_SWING_IN); + +EvtScript N(EVS_ExitDoor_arn_12_0) = EVT_EXIT_SINGLE_DOOR(arn_10_ENTRY_1, "arn_12", arn_12_ENTRY_0, + COLLIDER_tte, MODEL_o37, DOOR_SWING_OUT); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_arn_09_0)), TRIGGER_WALL_PRESS_A, COLLIDER_ttw, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_arn_12_0)), TRIGGER_WALL_PRESS_A, COLLIDER_tte, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(arn_10_ENTRY_0) + EVT_SET(LVar2, MODEL_o44) + EVT_SET(LVar3, DOOR_SWING_IN) + EVT_EXEC_WAIT(EnterSingleDoor) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_CASE_EQ(arn_10_ENTRY_1) + EVT_SET(LVar2, MODEL_o37) + EVT_SET(LVar3, DOOR_SWING_OUT) + EVT_EXEC_WAIT(EnterSingleDoor) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_WINDY_MILL) + EVT_CALL(SetSpriteShading, SHADING_ARN_10) + EVT_SETUP_CAMERA_ALT_NO_LEAD() + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_EXEC(N(EVS_EnterMap)) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_10/arn_10_2_npc.c b/src/world/area_arn/arn_10/arn_10_2_npc.c new file mode 100644 index 0000000000..db510e3da9 --- /dev/null +++ b/src/world/area_arn/arn_10/arn_10_2_npc.c @@ -0,0 +1,101 @@ +#include "arn_10.h" + +#include "world/common/npc/TubbasHeart.inc.c" +#include "world/common/enemy/complete/HyperGoomba_Wander.inc.c" + +EvtScript N(EVS_NpcIdle_TubbasHeart) = { + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(3.0)) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SUB(LVar0, 30) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 8) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) + EVT_WAIT(1) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) + EVT_SUB(LVar0, 80) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) + EVT_WAIT(1) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) + EVT_SUB(LVar0, 80) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) + EVT_SET(GB_StoryProgress, STORY_CH3_HEART_FLED_SECOND_TUNNEL) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcDefeat_HyperGoomba) = { + EVT_SET(GF_ARN10_Defeated_Goomba, TRUE) + EVT_CALL(DoNpcDefeat) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_TubbasHeart) = { + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_TubbasHeart))) + EVT_IF_NE(GB_StoryProgress, STORY_UNUSED_FFFFFFEC) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_HyperGoomba) = { + EVT_IF_LT(GB_StoryProgress, STORY_CH4_FRYING_PAN_STOLEN) + EVT_IF_EQ(GF_ARN10_Defeated_Goomba, TRUE) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_RETURN + EVT_END_IF + EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(EVS_NpcDefeat_HyperGoomba))) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_TubbasHeart) = { + .id = NPC_TubbasHeart, + .settings = &N(NpcSettings_TubbasHeart), + .pos = { 80.0f, 50.0f, 0.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_TubbasHeart), + .drops = TUBBAS_HEART_DROPS, + .animations = TUBBAS_HEART_ANIMS, +}; + +StaticNpc N(NpcData_HyperGoomba) = { + .id = NPC_HyperGoomba, + .settings = &N(NpcSettings_HyperGoomba), + .pos = { 0.0f, 0.0f, 0.0f }, + .yaw = 270, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_HyperGoomba), + .drops = HYPER_GOOMBA_DROPS, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 0, 0, 0 }, + .wanderSize = { 20 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 0, 0, 0 }, + .detectSize = { 150 }, + } + }, + .animations = HYPER_GOOMBA_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_TubbasHeart)), + NPC_GROUP(N(NpcData_HyperGoomba), BTL_ARN_FORMATION_00, BTL_ARN_STAGE_04), + {} +}; diff --git a/src/world/area_arn/arn_10/arn_10_3_entity.c b/src/world/area_arn/arn_10/arn_10_3_entity.c new file mode 100644 index 0000000000..e136a4ac1a --- /dev/null +++ b/src/world/area_arn/arn_10/arn_10_3_entity.c @@ -0,0 +1,17 @@ +#include "arn_10.h" +#include "entity.h" + +EvtScript N(80240BE0) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_0182, 160, 40) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_MakeEntities) = { + EVT_CALL(MakeEntity, EVT_PTR(Entity_Signpost), 200, 0, -40, 0, MAKE_ENTITY_END) + EVT_CALL(AssignScript, EVT_PTR(N(80240BE0))) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_10/events.c b/src/world/area_arn/arn_10/events.c deleted file mode 100644 index c4961e275f..0000000000 --- a/src/world/area_arn/arn_10/events.c +++ /dev/null @@ -1,274 +0,0 @@ -#include "arn_10.h" -#include "entity.h" -#include "sprite/npc/TubbasHeart.h" -#include "sprite/npc/Goomba.h" - -EvtScript N(exitSingleDoor_80240100) = { - EVT_SET_GROUP(EVT_GROUP_1B) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_SET(LVar0, 0) - EVT_SET(LVar1, 6) - EVT_SET(LVar2, 0) - EVT_SET(LVar3, -1) - EVT_EXEC(ExitSingleDoor) - EVT_WAIT(17) - EVT_CALL(GotoMap, EVT_PTR("arn_09"), 0) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(exitSingleDoor_802401A4) = { - EVT_SET_GROUP(EVT_GROUP_1B) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_SET(LVar0, 1) - EVT_SET(LVar1, 11) - EVT_SET(LVar2, 2) - EVT_SET(LVar3, 1) - EVT_EXEC(ExitSingleDoor) - EVT_WAIT(17) - EVT_CALL(GotoMap, EVT_PTR("arn_12"), 0) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(80240248) = { - EVT_BIND_TRIGGER(N(exitSingleDoor_80240100), TRIGGER_WALL_PRESS_A, 6, 1, 0) - EVT_BIND_TRIGGER(N(exitSingleDoor_802401A4), TRIGGER_WALL_PRESS_A, 11, 1, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(enterSingleDoor_80240290) = { - EVT_CALL(GetEntryID, LVar0) - EVT_SWITCH(LVar0) - EVT_CASE_EQ(0) - EVT_SET(LVar2, 0) - EVT_SET(LVar3, -1) - EVT_EXEC_WAIT(EnterSingleDoor) - EVT_EXEC(N(80240248)) - EVT_CASE_EQ(1) - EVT_SET(LVar2, 2) - EVT_SET(LVar3, 1) - EVT_EXEC_WAIT(EnterSingleDoor) - EVT_EXEC(N(80240248)) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(main) = { - EVT_SET(GB_WorldLocation, 35) - EVT_CALL(SetSpriteShading, 524289) - EVT_CALL(SetCamPerspective, 0, 3, 25, 16, 4096) - EVT_CALL(SetCamBGColor, 0, 0, 0, 0) - EVT_CALL(SetCamLeadPlayer, 0, 0) - EVT_CALL(SetCamEnabled, 0, 1) - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_80240BB8))) - EVT_EXEC_WAIT(N(makeEntities)) - EVT_EXEC(N(80240060)) - EVT_EXEC(N(enterSingleDoor_80240290)) - EVT_WAIT(1) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_424)[] = { - 0x00000000, 0x00000000, 0x00000000, -}; - -EvtScript N(80240430) = { - EVT_RETURN - EVT_END -}; - -EvtScript N(80240440) = { - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_80240450) = { - .height = 24, - .radius = 24, - .otherAI = &N(80240430), - .onDefeat = &N(80240440), - .level = 13, -}; - -MobileAISettings N(npcAISettings_8024047C) = { - .moveSpeed = 1.8f, - .moveTime = 40, - .waitTime = 15, - .alertRadius = 150.0f, - .playerSearchInterval = 2, - .chaseSpeed = 3.3f, - .chaseTurnRate= 70, - .chaseUpdateInterval = 1, - .chaseRadius = 180.0f, - .unk_AI_2C = 1, -}; - -EvtScript N(npcAI_802404AC) = { - EVT_CALL(BasicAI_Main, EVT_PTR(N(npcAISettings_8024047C))) - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_802404CC) = { - .height = 20, - .radius = 23, - .ai = &N(npcAI_802404AC), - .onHit = &EnemyNpcHit, - .onDefeat = &EnemyNpcDefeat, - .level = 12, -}; - -EvtScript N(idle_802404F8) = { - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(3.0)) - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_SUB(LVar0, 30) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x20C8, 0) - EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 8) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) - EVT_WAIT(1) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) - EVT_SUB(LVar0, 80) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x20C8, 0) - EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) - EVT_WAIT(1) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) - EVT_SUB(LVar0, 80) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x20C8, 0) - EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) - EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) - EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) - EVT_SET(GB_StoryProgress, -19) - EVT_RETURN - EVT_END -}; - -EvtScript N(defeat_802406F4) = { - EVT_SET(GF_ARN10_Defeated_Goomba, 1) - EVT_CALL(DoNpcDefeat) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80240720) = { - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_802404F8))) - EVT_IF_NE(GB_StoryProgress, -20) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -EvtScript N(init_8024076C) = { - EVT_IF_LT(GB_StoryProgress, -12) - EVT_IF_EQ(GF_ARN10_Defeated_Goomba, 1) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_RETURN - EVT_END_IF - EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(defeat_802406F4))) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -StaticNpc N(npcGroup_802407D8) = { - .id = 0, - .settings = &N(npcSettings_80240450), - .pos = { 80.0f, 50.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_80240720), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - }, -}; - -StaticNpc N(npcGroup_802409C8) = { - .id = 1, - .settings = &N(npcSettings_802404CC), - .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_8024076C), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 20, - { ITEM_DRIED_SHROOM, 10, 0 }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .maxCoinBonus = 2, - }, - .territory = { .temp = { 0, 0, 0, 20, 0, -32767, 0, 0, 0, 0, 150, 0, 0, 1 }}, - .animations = { - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Walk, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Hurt, - ANIM_Goomba_Hyper_Hurt, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -NpcGroupList N(npcGroupList_80240BB8) = { - NPC_GROUP(N(npcGroup_802407D8)), - NPC_GROUP(N(npcGroup_802409C8), 0x0E00, 0x04), - {}, -}; - -static s32 N(pad_BDC)[] = { - 0x00000000, -}; - -EvtScript N(80240BE0) = { - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_0182, 160, 40) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(makeEntities) = { - EVT_CALL(MakeEntity, EVT_PTR(Entity_Signpost), 200, 0, -40, 0, MAKE_ENTITY_END) - EVT_CALL(AssignScript, EVT_PTR(N(80240BE0))) - EVT_RETURN - EVT_END -}; diff --git a/src/world/area_arn/arn_10/header.c b/src/world/area_arn/arn_10/header.c deleted file mode 100644 index b07553f063..0000000000 --- a/src/world/area_arn/arn_10/header.c +++ /dev/null @@ -1,27 +0,0 @@ -#include "arn_10.h" -#include "message_ids.h" - -EntryList N(entryList) = { - { -225.0f, 0.0f, 0.0f, 90.0f }, - { 225.0f, 0.0f, 0.0f, 270.0f }, -}; - -MapSettings N(settings) = { - .main = &N(main), - .entryList = &N(entryList), - .entryCount = ENTRY_COUNT(N(entryList)), - .tattle = { MSG_MapTattle_arn_10 }, -}; - -EvtScript N(80240060) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-22) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) - EVT_CASE_LT(-16) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) - EVT_CASE_DEFAULT - EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; diff --git a/src/world/area_arn/arn_11/arn_11.h b/src/world/area_arn/arn_11/arn_11.h index b59d749c57..61d3d30dc4 100644 --- a/src/world/area_arn/arn_11/arn_11.h +++ b/src/world/area_arn/arn_11/arn_11.h @@ -2,12 +2,17 @@ /// @brief Gusty Gulch - Tubba's Heart Chamber #include "common.h" -#include "../arn.h" #include "message_ids.h" #include "map.h" -#define NAMESPACE arn_11 +#include "../arn.h" +#include "mapfs/arn_11_shape.h" +#include "mapfs/arn_11_hit.h" -extern EvtScript N(main); -extern EvtScript N(80240050); -extern NpcGroupList N(npcGroupList_802410DC); +#include "sprite/npc/TubbasHeart.h" + +enum { + NPC_TubbasHeart = 0, +}; + +#define NAMESPACE arn_11 diff --git a/src/world/area_arn/arn_11/header.c b/src/world/area_arn/arn_11/arn_11_0_header.c similarity index 52% rename from src/world/area_arn/arn_11/header.c rename to src/world/area_arn/arn_11/arn_11_0_header.c index 1d213568f6..a719a365cc 100644 --- a/src/world/area_arn/arn_11/header.c +++ b/src/world/area_arn/arn_11/arn_11_0_header.c @@ -1,22 +1,23 @@ #include "arn_11.h" -#include "message_ids.h" -EntryList N(entryList) = { - { -165.0f, 0.0f, 0.0f, 90.0f }, +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [arn_11_ENTRY_0] { -165.0, 0.0, 0.0, 90.0 }, }; MapSettings N(settings) = { - .main = &N(main), - .entryList = &N(entryList), - .entryCount = ENTRY_COUNT(N(entryList)), + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), .tattle = { MSG_MapTattle_arn_11 }, }; -EvtScript N(80240050) = { +EvtScript N(EVS_SetupMusic) = { EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-23) + EVT_CASE_LT(STORY_CH3_WENT_DOWN_THE_WELL) EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) - EVT_CASE_LT(-16) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) EVT_CASE_DEFAULT EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) diff --git a/src/world/area_arn/arn_11/arn_11_1_main.c b/src/world/area_arn/arn_11/arn_11_1_main.c new file mode 100644 index 0000000000..bbaec802f6 --- /dev/null +++ b/src/world/area_arn/arn_11/arn_11_1_main.c @@ -0,0 +1,104 @@ +#include "arn_11.h" + +extern EvtScript N(EVS_SetupMusic); +extern NpcGroupList N(DefaultNPCs); + +EvtScript N(EVS_SetupCamera) = { + EVT_CALL(SetCamType, CAM_DEFAULT, 6, TRUE) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(3.0)) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 60, 30, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 60, 30, 0) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(20.0), EVT_FLOAT(-13.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 275) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Scene_MeetHeart) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_WAIT(30) + EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0)) + EVT_CALL(PlayerMoveTo, 6, 0, 0) + EVT_CALL(SpeakToPlayer, NPC_TubbasHeart, ANIM_TubbasHeart_Anim0B, ANIM_TubbasHeart_Anim01, 0, MSG_CH3_00BF) + EVT_WAIT(10) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_80007) + EVT_WAIT(40) + EVT_CALL(SpeakToPlayer, NPC_TubbasHeart, ANIM_TubbasHeart_Anim0B, ANIM_TubbasHeart_Anim01, 0, MSG_CH3_00C0) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_WAIT(10) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_90000) + EVT_WAIT(30) + EVT_CALL(SpeakToPlayer, NPC_TubbasHeart, ANIM_TubbasHeart_Anim0B, ANIM_TubbasHeart_Anim01, 0, MSG_CH3_00C1) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_WAIT(20) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_90000) + EVT_THREAD + EVT_CALL(SetNpcJumpscale, NPC_TubbasHeart, EVT_FLOAT(2.5)) + EVT_CALL(GetNpcPos, NPC_TubbasHeart, LVar0, LVar1, LVar2) + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, LVar0, LVar1, LVar2, 10) + EVT_WAIT(1) + EVT_CALL(PlaySoundAtNpc, NPC_TubbasHeart, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, LVar0, LVar1, LVar2, 10) + EVT_END_THREAD + EVT_WAIT(40) + EVT_CALL(SpeakToPlayer, NPC_TubbasHeart, ANIM_TubbasHeart_Anim0B, ANIM_TubbasHeart_Anim01, 0, MSG_CH3_00C2) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_90000) + EVT_WAIT(10) + EVT_CALL(SetNpcVar, NPC_TubbasHeart, 0, 1) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_ExitDoor_arn_13_1) = { + EVT_SET_GROUP(EVT_GROUP_1B) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_SET(LVar0, arn_11_ENTRY_0) + EVT_SET(LVar1, COLLIDER_ttw) + EVT_SET(LVar2, MODEL_o37) + EVT_SET(LVar3, DOOR_SWING_IN) + EVT_EXEC(ExitSingleDoor) + EVT_WAIT(17) + EVT_CALL(GotoMap, EVT_PTR("arn_13"), arn_13_ENTRY_1) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_arn_13_1)), TRIGGER_WALL_PRESS_A, COLLIDER_ttw, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_SET(LVar2, MODEL_o37) + EVT_SET(LVar3, DOOR_SWING_IN) + EVT_EXEC_WAIT(EnterSingleDoor) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_IF_LT(GB_StoryProgress, STORY_CH3_HEART_FLED_FIRST_TUNNEL) + EVT_WAIT(10) + EVT_EXEC(N(EVS_SetupCamera)) + EVT_EXEC(N(EVS_Scene_MeetHeart)) + EVT_WAIT(1) + EVT_END_IF + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_WINDY_MILL) + EVT_CALL(SetSpriteShading, SHADING_ARN_11) + EVT_SETUP_CAMERA_ALT_NO_LEAD() + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_EXEC(N(EVS_EnterMap)) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_11/arn_11_2_npc.c b/src/world/area_arn/arn_11/arn_11_2_npc.c new file mode 100644 index 0000000000..c005edf176 --- /dev/null +++ b/src/world/area_arn/arn_11/arn_11_2_npc.c @@ -0,0 +1,166 @@ +#include "arn_11.h" + +#include "world/common/npc/TubbasHeart.inc.c" + +EvtScript N(EVS_NpcIdle_TubbasHeart) = { + EVT_LOOP(0) + EVT_CALL(GetSelfVar, 0, LVar0) + EVT_IF_NE(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_THREAD + EVT_CALL(SetCamType, CAM_DEFAULT, 6, TRUE) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 50) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 3000) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_END_THREAD + EVT_CALL(StartBossBattle, SONG_TUBBA_BLUBBA_BATTLE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Heart_OpenDoor) = { + EVT_WAIT(15) + EVT_CALL(PlaySoundAtCollider, COLLIDER_ttw, SOUND_BASIC_DOOR_OPEN, 0) + EVT_CALL(MakeLerp, 0, 80, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_o37, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Heart_CloseDoor) = { + EVT_CALL(MakeLerp, 80, 0, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_o37, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(PlaySoundAtCollider, COLLIDER_ttw, SOUND_BASIC_DOOR_CLOSE, 0) + EVT_RETURN + EVT_END +}; + +#define SUBLIST_DONE -10000 + +Vec3i N(HeartJumpPath)[] = { + { 100, 30, 70 }, + { 25, 30, 80 }, + { SUBLIST_DONE, 0, 0 }, + { -70, 10, 20 }, + { -180, 0, 0 }, + { -300, 0, 0 }, + { SUBLIST_DONE, 0, 0 }, +}; + +EvtScript N(EVS_Scene_HeartEscape) = { + EVT_THREAD + EVT_CALL(SetCamType, CAM_DEFAULT, 6, TRUE) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 50) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 450) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_END_THREAD + EVT_WAIT(10) + EVT_CALL(PlayerFaceNpc, NPC_TubbasHeart, TRUE) + EVT_LOOP(2) + EVT_CALL(GetNpcPos, NPC_TubbasHeart, LVar0, LVar1, LVar2) + EVT_CALL(SetNpcJumpscale, NPC_TubbasHeart, EVT_FLOAT(2.5)) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, LVar0, LVar1, LVar2, 12) + EVT_WAIT(1) + EVT_END_LOOP + EVT_THREAD + EVT_WAIT(10) + EVT_CALL(SetCamType, CAM_DEFAULT, 4, TRUE) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-7.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 450) + EVT_CALL(SetCamPosA, CAM_DEFAULT, -56, 70) + EVT_CALL(SetCamPosB, CAM_DEFAULT, -90, 40) + EVT_CALL(SetCamPosC, CAM_DEFAULT, 0, 0) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_END_THREAD + EVT_CALL(PlayerFaceNpc, NPC_TubbasHeart, TRUE) + EVT_USE_BUF(EVT_PTR(N(HeartJumpPath))) + EVT_LOOP(0) + EVT_BUF_READ3(LVar0, LVar1, LVar2) + EVT_IF_EQ(LVar0, SUBLIST_DONE) + EVT_BREAK_LOOP + EVT_END_IF + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, LVar0, LVar1, LVar2, 12) + EVT_WAIT(1) + EVT_END_LOOP + EVT_EXEC(N(EVS_Heart_OpenDoor)) + EVT_LOOP(0) + EVT_BUF_READ3(LVar0, LVar1, LVar2) + EVT_IF_EQ(LVar0, SUBLIST_DONE) + EVT_BREAK_LOOP + EVT_END_IF + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_TubbasHeart, LVar0, LVar1, LVar2, 12) + EVT_WAIT(1) + EVT_END_LOOP + EVT_EXEC(N(EVS_Heart_CloseDoor)) + EVT_WAIT(30) + EVT_CALL(SetCamType, CAM_DEFAULT, 6, TRUE) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 450) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0) + EVT_SET(GB_StoryProgress, STORY_CH3_HEART_FLED_FIRST_TUNNEL) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_TubbasHeart) = { + EVT_IF_GE(GB_StoryProgress, STORY_CH3_HEART_FLED_FIRST_TUNNEL) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_ELSE + EVT_CALL(SetSelfVar, 0, 0) + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_TubbasHeart))) + EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(EVS_Scene_HeartEscape))) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_TubbasHeart) = { + .id = NPC_TubbasHeart, + .settings = &N(NpcSettings_TubbasHeart), + .pos = { 119.0f, 60.0f, 0.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_JUMPING | NPC_FLAG_40000, + .init = &N(EVS_NpcInit_TubbasHeart), + .drops = TUBBAS_HEART_DROPS, + .animations = TUBBAS_HEART_ANIMS, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_TubbasHeart), BTL_ARN_FORMATION_0F), + {} +}; diff --git a/src/world/area_arn/arn_12/arn_12.h b/src/world/area_arn/arn_12/arn_12.h index eb902b5709..ff7b64e8b0 100644 --- a/src/world/area_arn/arn_12/arn_12.h +++ b/src/world/area_arn/arn_12/arn_12.h @@ -2,13 +2,19 @@ /// @brief Gusty Gulch - Tunnel 2 #include "common.h" -#include "../arn.h" #include "message_ids.h" #include "map.h" -#define NAMESPACE arn_12 +#include "../arn.h" +#include "mapfs/arn_12_shape.h" +#include "mapfs/arn_12_hit.h" -extern EvtScript N(main); -extern EvtScript N(80240060); -extern NpcGroupList N(npcGroupList_80240BBC); -extern EvtScript N(makeEntities); +#include "sprite/npc/TubbasHeart.h" +#include "sprite/npc/Goomba.h" + +enum { + NPC_TubbasHeart = 0, + NPC_HyperGoomba = 1, +}; + +#define NAMESPACE arn_12 diff --git a/src/world/area_arn/arn_12/arn_12_0_header.c b/src/world/area_arn/arn_12/arn_12_0_header.c new file mode 100644 index 0000000000..2f8254c1bd --- /dev/null +++ b/src/world/area_arn/arn_12/arn_12_0_header.c @@ -0,0 +1,28 @@ +#include "arn_12.h" + +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [arn_12_ENTRY_0] { -231.0, 0.0, 5.0, 90.0 }, + [arn_12_ENTRY_1] { 231.0, 0.0, 5.0, 270.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .tattle = { MSG_MapTattle_arn_12 }, +}; + +EvtScript N(EVS_SetupMusic) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_HEART_FLED_FIRST_TUNNEL) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) + EVT_CASE_DEFAULT + EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_12/arn_12_1_main.c b/src/world/area_arn/arn_12/arn_12_1_main.c new file mode 100644 index 0000000000..2335a21909 --- /dev/null +++ b/src/world/area_arn/arn_12/arn_12_1_main.c @@ -0,0 +1,48 @@ +#include "arn_12.h" + +extern EvtScript N(EVS_SetupMusic); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(DefaultNPCs); + +EvtScript N(EVS_ExitDoor_arn_10_1) = EVT_EXIT_SINGLE_DOOR(arn_12_ENTRY_0, "arn_10", arn_10_ENTRY_1, + COLLIDER_ttw, MODEL_o44, DOOR_SWING_IN); + +EvtScript N(EVS_ExitDoor_arn_13_0) = EVT_EXIT_SINGLE_DOOR(arn_12_ENTRY_1, "arn_13", arn_13_ENTRY_0, + COLLIDER_tte, MODEL_o37, DOOR_SWING_OUT); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_arn_10_1)), TRIGGER_WALL_PRESS_A, COLLIDER_ttw, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_arn_13_0)), TRIGGER_WALL_PRESS_A, COLLIDER_tte, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(arn_12_ENTRY_0) + EVT_SET(LVar2, MODEL_o44) + EVT_SET(LVar3, DOOR_SWING_IN) + EVT_EXEC_WAIT(EnterSingleDoor) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_CASE_EQ(arn_12_ENTRY_1) + EVT_SET(LVar2, MODEL_o37) + EVT_SET(LVar3, DOOR_SWING_OUT) + EVT_EXEC_WAIT(EnterSingleDoor) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_WINDY_MILL) + EVT_CALL(SetSpriteShading, SHADING_ARN_12) + EVT_SETUP_CAMERA_ALT_NO_LEAD() + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_EnterMap)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_12/arn_12_2_npc.c b/src/world/area_arn/arn_12/arn_12_2_npc.c new file mode 100644 index 0000000000..33655b3a35 --- /dev/null +++ b/src/world/area_arn/arn_12/arn_12_2_npc.c @@ -0,0 +1,102 @@ +#include "arn_12.h" + +#include "world/common/npc/TubbasHeart.inc.c" +#include "world/common/enemy/complete/HyperGoomba_Wander.inc.c" + +EvtScript N(EVS_NpcIdle_TubbasHeart) = { + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(3.0)) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SUB(LVar0, 30) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 8) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) + EVT_WAIT(1) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) + EVT_SUB(LVar0, 80) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) + EVT_WAIT(1) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) + EVT_SUB(LVar0, 80) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) + EVT_SET(GB_StoryProgress, STORY_UNUSED_FFFFFFEC) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcDefeat_HyperGoomba) = { + EVT_SET(GF_ARN12_Defeated_Goomba, TRUE) + EVT_CALL(DoNpcDefeat) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_TubbasHeart) = { + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_TubbasHeart))) + EVT_IF_NE(GB_StoryProgress, STORY_UNUSED_FFFFFFEB) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_HyperGoomba) = { + EVT_IF_LT(GB_StoryProgress, STORY_CH4_FRYING_PAN_STOLEN) + EVT_IF_EQ(GF_ARN12_Defeated_Goomba, TRUE) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_RETURN + EVT_END_IF + EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(EVS_NpcDefeat_HyperGoomba))) + EVT_END_IF + EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(EVS_NpcDefeat_HyperGoomba))) + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_TubbasHeart) = { + .id = NPC_TubbasHeart, + .settings = &N(NpcSettings_TubbasHeart), + .pos = { 80.0f, 50.0f, 0.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_TubbasHeart), + .drops = TUBBAS_HEART_DROPS, + .animations = TUBBAS_HEART_ANIMS, +}; + +StaticNpc N(NpcData_HyperGoomba) = { + .id = NPC_HyperGoomba, + .settings = &N(NpcSettings_HyperGoomba), + .pos = { 0.0f, 0.0f, 0.0f }, + .yaw = 270, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_HyperGoomba), + .drops = HYPER_GOOMBA_DROPS, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 0, 0, 0 }, + .wanderSize = { 20 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 0, 0, 0 }, + .detectSize = { 150 }, + } + }, + .animations = HYPER_GOOMBA_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_TubbasHeart)), + NPC_GROUP(N(NpcData_HyperGoomba), BTL_ARN_FORMATION_01, BTL_ARN_STAGE_04), + {} +}; diff --git a/src/world/area_arn/arn_12/arn_12_3_entity.c b/src/world/area_arn/arn_12/arn_12_3_entity.c new file mode 100644 index 0000000000..7db7aa1973 --- /dev/null +++ b/src/world/area_arn/arn_12/arn_12_3_entity.c @@ -0,0 +1,17 @@ +#include "arn_12.h" +#include "entity.h" + +EvtScript N(EVS_ReadSign) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_0183, 160, 40) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_MakeEntities) = { + EVT_CALL(MakeEntity, EVT_PTR(Entity_Signpost), 200, 0, -40, 0, MAKE_ENTITY_END) + EVT_CALL(AssignScript, EVT_PTR(N(EVS_ReadSign))) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_12/events.c b/src/world/area_arn/arn_12/events.c deleted file mode 100644 index 82cc95923b..0000000000 --- a/src/world/area_arn/arn_12/events.c +++ /dev/null @@ -1,270 +0,0 @@ -#include "arn_12.h" -#include "entity.h" -#include "sprite/npc/TubbasHeart.h" -#include "sprite/npc/Goomba.h" - -EvtScript N(exitSingleDoor_80240100) = { - EVT_SET_GROUP(EVT_GROUP_1B) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_SET(LVar0, 0) - EVT_SET(LVar1, 2) - EVT_SET(LVar2, 0) - EVT_SET(LVar3, -1) - EVT_EXEC(ExitSingleDoor) - EVT_WAIT(17) - EVT_CALL(GotoMap, EVT_PTR("arn_10"), 1) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(exitSingleDoor_802401A4) = { - EVT_SET_GROUP(EVT_GROUP_1B) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_SET(LVar0, 1) - EVT_SET(LVar1, 7) - EVT_SET(LVar2, 2) - EVT_SET(LVar3, 1) - EVT_EXEC(ExitSingleDoor) - EVT_WAIT(17) - EVT_CALL(GotoMap, EVT_PTR("arn_13"), 0) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(80240248) = { - EVT_BIND_TRIGGER(N(exitSingleDoor_80240100), TRIGGER_WALL_PRESS_A, 2, 1, 0) - EVT_BIND_TRIGGER(N(exitSingleDoor_802401A4), TRIGGER_WALL_PRESS_A, 7, 1, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(enterSingleDoor_80240290) = { - EVT_CALL(GetEntryID, LVar0) - EVT_SWITCH(LVar0) - EVT_CASE_EQ(0) - EVT_SET(LVar2, 0) - EVT_SET(LVar3, -1) - EVT_EXEC_WAIT(EnterSingleDoor) - EVT_EXEC(N(80240248)) - EVT_CASE_EQ(1) - EVT_SET(LVar2, 2) - EVT_SET(LVar3, 1) - EVT_EXEC_WAIT(EnterSingleDoor) - EVT_EXEC(N(80240248)) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(main) = { - EVT_SET(GB_WorldLocation, 35) - EVT_CALL(SetSpriteShading, 524291) - EVT_CALL(SetCamPerspective, 0, 3, 25, 16, 4096) - EVT_CALL(SetCamBGColor, 0, 0, 0, 0) - EVT_CALL(SetCamLeadPlayer, 0, 0) - EVT_CALL(SetCamEnabled, 0, 1) - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_80240BBC))) - EVT_EXEC_WAIT(N(makeEntities)) - EVT_EXEC(N(enterSingleDoor_80240290)) - EVT_EXEC(N(80240060)) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_418)[] = { - 0x00000000, 0x00000000, -}; - -EvtScript N(80240420) = { - EVT_RETURN - EVT_END -}; - -EvtScript N(80240430) = { - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_80240440) = { - .height = 24, - .radius = 24, - .otherAI = &N(80240420), - .onDefeat = &N(80240430), - .level = 13, -}; - -MobileAISettings N(npcAISettings_8024046C) = { - .moveSpeed = 1.8f, - .moveTime = 40, - .waitTime = 15, - .alertRadius = 150.0f, - .playerSearchInterval = 2, - .chaseSpeed = 3.3f, - .chaseTurnRate= 70, - .chaseUpdateInterval = 1, - .chaseRadius = 180.0f, - .unk_AI_2C = 1, -}; - -EvtScript N(npcAI_8024049C) = { - EVT_CALL(BasicAI_Main, EVT_PTR(N(npcAISettings_8024046C))) - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_802404BC) = { - .height = 20, - .radius = 23, - .ai = &N(npcAI_8024049C), - .onHit = &EnemyNpcHit, - .onDefeat = &EnemyNpcDefeat, - .level = 12, -}; - -EvtScript N(idle_802404E8) = { - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(3.0)) - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_SUB(LVar0, 30) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x20C8, 0) - EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 8) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) - EVT_WAIT(1) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) - EVT_SUB(LVar0, 80) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x20C8, 0) - EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) - EVT_WAIT(1) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) - EVT_SUB(LVar0, 80) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x20C8, 0) - EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) - EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) - EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) - EVT_SET(GB_StoryProgress, -20) - EVT_RETURN - EVT_END -}; - -EvtScript N(defeat_802406E4) = { - EVT_SET(GF_ARN12_Defeated_Goomba, 1) - EVT_CALL(DoNpcDefeat) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80240710) = { - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_802404E8))) - EVT_IF_NE(GB_StoryProgress, -21) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -EvtScript N(init_8024075C) = { - EVT_IF_LT(GB_StoryProgress, -12) - EVT_IF_EQ(GF_ARN12_Defeated_Goomba, 1) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_RETURN - EVT_END_IF - EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(defeat_802406E4))) - EVT_END_IF - EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(defeat_802406E4))) - EVT_RETURN - EVT_END -}; - -StaticNpc N(npcGroup_802407DC) = { - .id = 0, - .settings = &N(npcSettings_80240440), - .pos = { 80.0f, 50.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_80240710), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - }, -}; - -StaticNpc N(npcGroup_802409CC) = { - .id = 1, - .settings = &N(npcSettings_802404BC), - .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_8024075C), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 20, - { ITEM_DRIED_SHROOM, 10, 0 }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .maxCoinBonus = 2, - }, - .territory = { .temp = { 0, 0, 0, 20, 0, -32767, 0, 0, 0, 0, 150, 0, 0, 1 }}, - .animations = { - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Walk, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Hurt, - ANIM_Goomba_Hyper_Hurt, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -NpcGroupList N(npcGroupList_80240BBC) = { - NPC_GROUP(N(npcGroup_802407DC)), - NPC_GROUP(N(npcGroup_802409CC), 0x0E01, 0x04), - {}, -}; - -EvtScript N(80240BE0) = { - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_0183, 160, 40) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(makeEntities) = { - EVT_CALL(MakeEntity, EVT_PTR(Entity_Signpost), 200, 0, -40, 0, MAKE_ENTITY_END) - EVT_CALL(AssignScript, EVT_PTR(N(80240BE0))) - EVT_RETURN - EVT_END -}; diff --git a/src/world/area_arn/arn_12/header.c b/src/world/area_arn/arn_12/header.c deleted file mode 100644 index 020c7b9cae..0000000000 --- a/src/world/area_arn/arn_12/header.c +++ /dev/null @@ -1,27 +0,0 @@ -#include "arn_12.h" -#include "message_ids.h" - -EntryList N(entryList) = { - { -231.0f, 0.0f, 5.0f, 90.0f }, - { 231.0f, 0.0f, 5.0f, 270.0f }, -}; - -MapSettings N(settings) = { - .main = &N(main), - .entryList = &N(entryList), - .entryCount = ENTRY_COUNT(N(entryList)), - .tattle = { MSG_MapTattle_arn_12 }, -}; - -EvtScript N(80240060) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-22) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) - EVT_CASE_LT(-16) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) - EVT_CASE_DEFAULT - EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; diff --git a/src/world/area_arn/arn_13/arn_13.h b/src/world/area_arn/arn_13/arn_13.h index 606f14eda1..1de81db8c9 100644 --- a/src/world/area_arn/arn_13/arn_13.h +++ b/src/world/area_arn/arn_13/arn_13.h @@ -2,13 +2,19 @@ /// @brief Gusty Gulch - Tunnel 3 #include "common.h" -#include "../arn.h" #include "message_ids.h" #include "map.h" -#define NAMESPACE arn_13 +#include "../arn.h" +#include "mapfs/arn_13_shape.h" +#include "mapfs/arn_13_hit.h" -extern EvtScript N(main); -extern EvtScript N(80240060); -extern NpcGroupList N(npcGroupList_80240BCC); -extern EvtScript N(makeEntities); +#include "sprite/npc/TubbasHeart.h" +#include "sprite/npc/Goomba.h" + +enum { + NPC_TubbasHeart = 0, + NPC_HyperGoomba = 1, +}; + +#define NAMESPACE arn_13 diff --git a/src/world/area_arn/arn_13/arn_13_0_header.c b/src/world/area_arn/arn_13/arn_13_0_header.c new file mode 100644 index 0000000000..5b0d532542 --- /dev/null +++ b/src/world/area_arn/arn_13/arn_13_0_header.c @@ -0,0 +1,28 @@ +#include "arn_13.h" + +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [arn_13_ENTRY_0] { -231.0, 0.0, 5.0, 90.0 }, + [arn_13_ENTRY_1] { 231.0, 0.0, 5.0, 270.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .tattle = { MSG_MapTattle_arn_13 }, +}; + +EvtScript N(EVS_SetupMusic) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_HEART_FLED_FIRST_TUNNEL) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) + EVT_CASE_LT(STORY_CH3_DEFEATED_TUBBA_BLUBBA) + EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) + EVT_CASE_DEFAULT + EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_13/arn_13_1_main.c b/src/world/area_arn/arn_13/arn_13_1_main.c new file mode 100644 index 0000000000..fb773bbce9 --- /dev/null +++ b/src/world/area_arn/arn_13/arn_13_1_main.c @@ -0,0 +1,49 @@ +#include "arn_13.h" + +extern EvtScript N(EVS_SetupMusic); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(DefaultNPCs); + +EvtScript N(EVS_ExitDoor_arn_12_1) = EVT_EXIT_SINGLE_DOOR(arn_13_ENTRY_0, "arn_12", arn_12_ENTRY_1, + COLLIDER_ttw, MODEL_o44, DOOR_SWING_IN); + +EvtScript N(EVS_ExitDoor_arn_11_0) = EVT_EXIT_SINGLE_DOOR(arn_13_ENTRY_1, "arn_11", arn_12_ENTRY_0, + COLLIDER_tte, MODEL_o37, DOOR_SWING_OUT); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_arn_12_1)), TRIGGER_WALL_PRESS_A, COLLIDER_ttw, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_arn_11_0)), TRIGGER_WALL_PRESS_A, COLLIDER_tte, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(arn_13_ENTRY_0) + EVT_SET(LVar2, MODEL_o44) + EVT_SET(LVar3, DOOR_SWING_IN) + EVT_EXEC_WAIT(EnterSingleDoor) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_CASE_EQ(arn_13_ENTRY_1) + EVT_SET(LVar2, MODEL_o37) + EVT_SET(LVar3, DOOR_SWING_OUT) + EVT_EXEC_WAIT(EnterSingleDoor) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_WINDY_MILL) + EVT_CALL(SetSpriteShading, SHADING_ARN_13) + EVT_SETUP_CAMERA_ALT_NO_LEAD() + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_EXEC(N(EVS_EnterMap)) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_13/arn_13_2_npc.c b/src/world/area_arn/arn_13/arn_13_2_npc.c new file mode 100644 index 0000000000..eb064729b0 --- /dev/null +++ b/src/world/area_arn/arn_13/arn_13_2_npc.c @@ -0,0 +1,102 @@ +#include "arn_13.h" + +#include "world/common/npc/TubbasHeart.inc.c" +#include "world/common/enemy/complete/HyperGoomba_Wander.inc.c" + +EvtScript N(EVS_NpcIdle_TubbasHeart) = { + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(3.0)) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SUB(LVar0, 30) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 8) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) + EVT_WAIT(1) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) + EVT_SUB(LVar0, 80) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) + EVT_WAIT(1) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) + EVT_SUB(LVar0, 80) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20C8, 0) + EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) + EVT_SET(GB_StoryProgress, STORY_CH3_HEART_FLED_SECOND_TUNNEL) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcDefeat_HyperGoomba) = { + EVT_SET(GF_ARN13_Defeated_Goomba, TRUE) + EVT_CALL(DoNpcDefeat) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_TubbasHeart) = { + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_TubbasHeart))) + EVT_IF_NE(GB_StoryProgress, STORY_CH3_HEART_FLED_FIRST_TUNNEL) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_HyperGoomba) = { + EVT_IF_LT(GB_StoryProgress, STORY_CH4_FRYING_PAN_STOLEN) + EVT_IF_EQ(GF_ARN13_Defeated_Goomba, TRUE) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_RETURN + EVT_END_IF + EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(EVS_NpcDefeat_HyperGoomba))) + EVT_END_IF + EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(EVS_NpcDefeat_HyperGoomba))) + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_TubbasHeart) = { + .id = NPC_TubbasHeart, + .settings = &N(NpcSettings_TubbasHeart), + .pos = { 80.0f, 50.0f, 0.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_TubbasHeart), + .drops = TUBBAS_HEART_DROPS, + .animations = TUBBAS_HEART_ANIMS, +}; + +StaticNpc N(NpcData_HyperGoomba) = { + .id = NPC_HyperGoomba, + .settings = &N(NpcSettings_HyperGoomba), + .pos = { 0.0f, 0.0f, 0.0f }, + .yaw = 270, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_HyperGoomba), + .drops = HYPER_GOOMBA_DROPS, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 0, 0, 0 }, + .wanderSize = { 20 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 0, 0, 0 }, + .detectSize = { 150 }, + } + }, + .animations = HYPER_GOOMBA_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_TubbasHeart)), + NPC_GROUP(N(NpcData_HyperGoomba), BTL_ARN_FORMATION_02, BTL_ARN_STAGE_04), + {} +}; diff --git a/src/world/area_arn/arn_13/arn_13_3_entity.c b/src/world/area_arn/arn_13/arn_13_3_entity.c new file mode 100644 index 0000000000..5e2b4a85d5 --- /dev/null +++ b/src/world/area_arn/arn_13/arn_13_3_entity.c @@ -0,0 +1,17 @@ +#include "arn_13.h" +#include "entity.h" + +EvtScript N(EVS_ReadSign) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_0184, 160, 40) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_MakeEntities) = { + EVT_CALL(MakeEntity, EVT_PTR(Entity_Signpost), 200, 0, -40, 0, MAKE_ENTITY_END) + EVT_CALL(AssignScript, EVT_PTR(N(EVS_ReadSign))) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_arn/arn_13/events.c b/src/world/area_arn/arn_13/events.c deleted file mode 100644 index 8be91cb7cf..0000000000 --- a/src/world/area_arn/arn_13/events.c +++ /dev/null @@ -1,273 +0,0 @@ -#include "arn_13.h" -#include "entity.h" -#include "sprite/npc/Goomba.h" -#include "sprite/npc/TubbasHeart.h" - -EvtScript N(exitSingleDoor_80240100) = { - EVT_SET_GROUP(EVT_GROUP_1B) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_SET(LVar0, 0) - EVT_SET(LVar1, 2) - EVT_SET(LVar2, 0) - EVT_SET(LVar3, -1) - EVT_EXEC(ExitSingleDoor) - EVT_WAIT(17) - EVT_CALL(GotoMap, EVT_PTR("arn_12"), 1) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(exitSingleDoor_802401A4) = { - EVT_SET_GROUP(EVT_GROUP_1B) - EVT_CALL(DisablePlayerInput, TRUE) - EVT_SET(LVar0, 1) - EVT_SET(LVar1, 7) - EVT_SET(LVar2, 2) - EVT_SET(LVar3, 1) - EVT_EXEC(ExitSingleDoor) - EVT_WAIT(17) - EVT_CALL(GotoMap, EVT_PTR("arn_11"), 0) - EVT_WAIT(100) - EVT_RETURN - EVT_END -}; - -EvtScript N(80240248) = { - EVT_BIND_TRIGGER(N(exitSingleDoor_80240100), TRIGGER_WALL_PRESS_A, 2, 1, 0) - EVT_BIND_TRIGGER(N(exitSingleDoor_802401A4), TRIGGER_WALL_PRESS_A, 7, 1, 0) - EVT_RETURN - EVT_END -}; - -EvtScript N(enterSingleDoor_80240290) = { - EVT_CALL(GetEntryID, LVar0) - EVT_SWITCH(LVar0) - EVT_CASE_EQ(0) - EVT_SET(LVar2, 0) - EVT_SET(LVar3, -1) - EVT_EXEC_WAIT(EnterSingleDoor) - EVT_EXEC(N(80240248)) - EVT_CASE_EQ(1) - EVT_SET(LVar2, 2) - EVT_SET(LVar3, 1) - EVT_EXEC_WAIT(EnterSingleDoor) - EVT_EXEC(N(80240248)) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; - -EvtScript N(main) = { - EVT_SET(GB_WorldLocation, 35) - EVT_CALL(SetSpriteShading, 524292) - EVT_CALL(SetCamPerspective, 0, 3, 25, 16, 4096) - EVT_CALL(SetCamBGColor, 0, 0, 0, 0) - EVT_CALL(SetCamLeadPlayer, 0, 0) - EVT_CALL(SetCamEnabled, 0, 1) - EVT_CALL(MakeNpcs, 0, EVT_PTR(N(npcGroupList_80240BCC))) - EVT_EXEC_WAIT(N(makeEntities)) - EVT_EXEC(N(80240060)) - EVT_EXEC(N(enterSingleDoor_80240290)) - EVT_WAIT(1) - EVT_RETURN - EVT_END -}; - -static s32 N(pad_424)[] = { - 0x00000000, 0x00000000, 0x00000000, -}; - -EvtScript N(80240430) = { - EVT_RETURN - EVT_END -}; - -EvtScript N(80240440) = { - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_80240450) = { - .height = 24, - .radius = 24, - .otherAI = &N(80240430), - .onDefeat = &N(80240440), - .level = 13, -}; - -MobileAISettings N(npcAISettings_8024047C) = { - .moveSpeed = 1.8f, - .moveTime = 40, - .waitTime = 15, - .alertRadius = 150.0f, - .playerSearchInterval = 2, - .chaseSpeed = 3.3f, - .chaseTurnRate= 70, - .chaseUpdateInterval = 1, - .chaseRadius = 180.0f, - .unk_AI_2C = 1, -}; - -EvtScript N(npcAI_802404AC) = { - EVT_CALL(BasicAI_Main, EVT_PTR(N(npcAISettings_8024047C))) - EVT_RETURN - EVT_END -}; - -NpcSettings N(npcSettings_802404CC) = { - .height = 20, - .radius = 23, - .ai = &N(npcAI_802404AC), - .onHit = &EnemyNpcHit, - .onDefeat = &EnemyNpcDefeat, - .level = 12, -}; - -EvtScript N(idle_802404F8) = { - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(3.0)) - EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) - EVT_SUB(LVar0, 30) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x20C8, 0) - EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 8) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) - EVT_WAIT(1) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) - EVT_SUB(LVar0, 80) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x20C8, 0) - EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim14) - EVT_WAIT(1) - EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_TubbasHeart_Anim13) - EVT_SUB(LVar0, 80) - EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(2.5)) - EVT_CALL(PlaySoundAtNpc, NPC_SELF, 0x20C8, 0) - EVT_CALL(NpcJump0, NPC_SELF, LVar0, 0, LVar2, 12) - EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) - EVT_CALL(SetNpcPos, NPC_SELF, 0, -1000, 0) - EVT_SET(GB_StoryProgress, -19) - EVT_RETURN - EVT_END -}; - -EvtScript N(defeat_802406F4) = { - EVT_SET(GF_ARN13_Defeated_Goomba, 1) - EVT_CALL(DoNpcDefeat) - EVT_RETURN - EVT_END -}; - -EvtScript N(init_80240720) = { - EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(idle_802404F8))) - EVT_IF_NE(GB_StoryProgress, -22) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_END_IF - EVT_RETURN - EVT_END -}; - -EvtScript N(init_8024076C) = { - EVT_IF_LT(GB_StoryProgress, -12) - EVT_IF_EQ(GF_ARN13_Defeated_Goomba, 1) - EVT_CALL(RemoveNpc, NPC_SELF) - EVT_RETURN - EVT_END_IF - EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(defeat_802406F4))) - EVT_END_IF - EVT_CALL(BindNpcDefeat, NPC_SELF, EVT_PTR(N(defeat_802406F4))) - EVT_RETURN - EVT_END -}; - -StaticNpc N(npcGroup_802407EC)[] = { - { - .id = 0, - .settings = &N(npcSettings_80240450), - .pos = { 80.0f, 50.0f, 0.0f }, - .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_80240720), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - ANIM_TubbasHeart_Anim01, - }, - } -}; - -StaticNpc N(npcGroup_802409DC) = { - .id = 1, - .settings = &N(npcSettings_802404CC), - .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .init = &N(init_8024076C), - .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 20, - { ITEM_DRIED_SHROOM, 10, 0 }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .maxCoinBonus = 2, - }, - .territory = { .temp = { 0, 0, 0, 20, 0, -32767, 0, 0, 0, 0, 150, 0, 0, 1 }}, - .animations = { - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Walk, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Idle, - ANIM_Goomba_Hyper_Hurt, - ANIM_Goomba_Hyper_Hurt, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - ANIM_Goomba_Hyper_Run, - }, - .aiDetectFlags = AI_DETECT_SIGHT, -}; - -NpcGroupList N(npcGroupList_80240BCC) = { - NPC_GROUP(N(npcGroup_802407EC)), - NPC_GROUP(N(npcGroup_802409DC), BTL_ARN_FORMATION_02, BTL_ARN_STAGE_04), - {}, -}; - -EvtScript N(80240BF0) = { - EVT_CALL(DisablePlayerInput, TRUE) - EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_0184, 160, 40) - EVT_CALL(DisablePlayerInput, FALSE) - EVT_RETURN - EVT_END -}; - -EvtScript N(makeEntities) = { - EVT_CALL(MakeEntity, EVT_PTR(Entity_Signpost), 200, 0, -40, 0, MAKE_ENTITY_END) - EVT_CALL(AssignScript, EVT_PTR(N(80240BF0))) - EVT_RETURN - EVT_END -}; diff --git a/src/world/area_arn/arn_13/header.c b/src/world/area_arn/arn_13/header.c deleted file mode 100644 index aa0bb036bc..0000000000 --- a/src/world/area_arn/arn_13/header.c +++ /dev/null @@ -1,27 +0,0 @@ -#include "arn_13.h" -#include "message_ids.h" - -EntryList N(entryList) = { - { -231.0f, 0.0f, 5.0f, 90.0f }, - { 231.0f, 0.0f, 5.0f, 270.0f }, -}; - -MapSettings N(settings) = { - .main = &N(main), - .entryList = &N(entryList), - .entryCount = ENTRY_COUNT(N(entryList)), - .tattle = { MSG_MapTattle_arn_13 }, -}; - -EvtScript N(80240060) = { - EVT_SWITCH(GB_StoryProgress) - EVT_CASE_LT(-22) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_ESCAPE, 0, 8) - EVT_CASE_LT(-16) - EVT_CALL(SetMusicTrack, 0, SONG_TUBBA_BLUBBA_THEME, 0, 8) - EVT_CASE_DEFAULT - EVT_CALL(SetMusicTrack, 0, SONG_GUSTY_GULCH, 0, 8) - EVT_END_SWITCH - EVT_RETURN - EVT_END -}; diff --git a/src/world/area_dgb/dgb_01/BFD8C0.c b/src/world/area_dgb/dgb_01/BFD8C0.c index e29b4bd9be..6535160fb2 100644 --- a/src/world/area_dgb/dgb_01/BFD8C0.c +++ b/src/world/area_dgb/dgb_01/BFD8C0.c @@ -1,6 +1,6 @@ #include "dgb_01.h" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_dgb/dgb_01/BFD9A0.c b/src/world/area_dgb/dgb_01/BFD9A0.c index 5d244f4e7a..d452d73734 100644 --- a/src/world/area_dgb/dgb_01/BFD9A0.c +++ b/src/world/area_dgb/dgb_01/BFD9A0.c @@ -456,7 +456,7 @@ EvtScript N(80244AD0) = { EVT_CALL(N(GetEntityPosition), MapVar(0), LVar0, LVar1, LVar2) EVT_CALL(PlaySoundAt, 0x269, 0, LVar0, LVar1, LVar2) EVT_SET(LVar0, MapVar(0)) - EVT_CALL(N(SetEntityFlags100000)) + EVT_CALL(N(RemovePadlock)) EVT_RESUME_GROUP(1) EVT_UNBIND EVT_RETURN diff --git a/src/world/area_dgb/dgb_01/dgb_01.h b/src/world/area_dgb/dgb_01/dgb_01.h index 80fc027c9e..12e36aeeea 100644 --- a/src/world/area_dgb/dgb_01/dgb_01.h +++ b/src/world/area_dgb/dgb_01/dgb_01.h @@ -23,7 +23,7 @@ ApiStatus DeleteAnimatedModel(Evt* script, s32 isInitialCall); ApiStatus N(func_80240000_BFD880)(void); ApiStatus N(GetEntityPosition)(Evt* script, s32 isInitialCall); -ApiStatus N(SetEntityFlags100000)(Evt* script, s32 isInitialCall); +ApiStatus N(RemovePadlock)(Evt* script, s32 isInitialCall); ApiStatus N(UnkFunc1)(Evt* script, s32 isInitialCall); ApiStatus N(SentinelAI_Main)(Evt* script, s32 isInitialCall); ApiStatus N(PatrolNoAttackAI_Main)(Evt* script, s32 isInitialCall); diff --git a/src/world/area_dgb/dgb_03/C314E0.c b/src/world/area_dgb/dgb_03/C314E0.c index 77e2cb3aa6..3d0f581cca 100644 --- a/src/world/area_dgb/dgb_03/C314E0.c +++ b/src/world/area_dgb/dgb_03/C314E0.c @@ -4,6 +4,6 @@ #include "world/common/UnkFunc12.inc.c" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_dgb/dgb_03/C31730.c b/src/world/area_dgb/dgb_03/C31730.c index 9f53180736..406c2205d9 100644 --- a/src/world/area_dgb/dgb_03/C31730.c +++ b/src/world/area_dgb/dgb_03/C31730.c @@ -365,7 +365,7 @@ EvtScript N(80243740) = { EVT_CALL(N(GetEntityPosition), MapVar(0), LVar0, LVar1, LVar2) EVT_CALL(PlaySoundAt, 0x269, 0, LVar0, LVar1, LVar2) EVT_SET(LVar0, MapVar(0)) - EVT_CALL(N(SetEntityFlags100000)) + EVT_CALL(N(RemovePadlock)) EVT_RESUME_GROUP(1) EVT_UNBIND EVT_RETURN diff --git a/src/world/area_dgb/dgb_03/dgb_03.h b/src/world/area_dgb/dgb_03/dgb_03.h index 87ca79a5ef..e5824f47d5 100644 --- a/src/world/area_dgb/dgb_03/dgb_03.h +++ b/src/world/area_dgb/dgb_03/dgb_03.h @@ -14,7 +14,7 @@ ApiStatus N(MeleeHitbox_Main)(Evt* script, s32 isInitialCall); ApiStatus N(WanderMeleeAI_Main)(Evt* script, s32 isInitialCall); ApiStatus N(ClubbaPatrolAI_Main)(Evt* script, s32 isInitialCall); ApiStatus N(ClubbaNappingAI_Main)(Evt* script, s32 isInitialCall); -ApiStatus N(SetEntityFlags100000)(Evt* script, s32 isInitialCall); +ApiStatus N(RemovePadlock)(Evt* script, s32 isInitialCall); ApiStatus N(GetEntityPosition)(Evt* script, s32 isInitialCall); extern NpcGroupList N(npcGroupList_80244988); diff --git a/src/world/area_dgb/dgb_15/C4F510.c b/src/world/area_dgb/dgb_15/C4F510.c index 689f1b0d6a..53a6267a0f 100644 --- a/src/world/area_dgb/dgb_15/C4F510.c +++ b/src/world/area_dgb/dgb_15/C4F510.c @@ -444,7 +444,7 @@ EvtScript N(80242AD0) = { EVT_CALL(N(GetEntityPosition), MapVar(0), LVar0, LVar1, LVar2) EVT_CALL(PlaySoundAt, 0x269, 0, LVar0, LVar1, LVar2) EVT_SET(LVar0, MapVar(0)) - EVT_CALL(N(SetEntityFlags100000)) + EVT_CALL(N(RemovePadlock)) EVT_RESUME_GROUP(1) EVT_UNBIND EVT_RETURN diff --git a/src/world/area_dgb/dgb_15/C50CA0.c b/src/world/area_dgb/dgb_15/C50CA0.c index 6a214ee8f0..b8d22cdde1 100644 --- a/src/world/area_dgb/dgb_15/C50CA0.c +++ b/src/world/area_dgb/dgb_15/C50CA0.c @@ -2,4 +2,4 @@ #include "world/common/GetEntityPosition.inc.c" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" diff --git a/src/world/area_dgb/dgb_15/dgb_15.h b/src/world/area_dgb/dgb_15/dgb_15.h index e07a5c170b..56496ed905 100644 --- a/src/world/area_dgb/dgb_15/dgb_15.h +++ b/src/world/area_dgb/dgb_15/dgb_15.h @@ -9,7 +9,7 @@ #define NAMESPACE dgb_15 ApiStatus N(GetEntityPosition)(Evt* script, s32 isInitialCall); -ApiStatus N(SetEntityFlags100000)(Evt* script, s32 isInitialCall); +ApiStatus N(RemovePadlock)(Evt* script, s32 isInitialCall); ApiStatus N(UnkFunc1)(Evt* script, s32 isInitialCall); ApiStatus N(WanderMeleeAI_Main)(Evt* script, s32 isInitialCall); ApiStatus N(PatrolNoAttackAI_Main)(Evt* script, s32 isInitialCall); diff --git a/src/world/area_flo/flo_00/C9DF60.c b/src/world/area_flo/flo_00/C9DF60.c index 54a3f1c266..eaf0211f2c 100644 --- a/src/world/area_flo/flo_00/C9DF60.c +++ b/src/world/area_flo/flo_00/C9DF60.c @@ -1700,7 +1700,7 @@ EvtScript N(802477EC) = { EVT_SET(LVarF, 0) EVT_LOOP(0) EVT_ADD(LVarF, 1) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, 0, 700, 800, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, 0, 700, 800, 0, 0) EVT_EXEC(N(80247770)) EVT_SETF(LVar2, LVar0) EVT_MULF(LVar2, EVT_FLOAT(-3.0)) @@ -1759,7 +1759,7 @@ EvtScript N(80247BCC) = { EVT_SET(LVarF, 0) EVT_LOOP(120) EVT_ADD(LVarF, 1) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, 70, 0, 120, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, 70, 0, 120, 0, 0) EVT_EXEC(N(80247770)) EVT_SETF(LVar2, LVar0) EVT_MULF(LVar2, EVT_FLOAT(-3.0)) @@ -1791,7 +1791,7 @@ EvtScript N(80247FAC) = { EVT_SET(LVarF, 0) EVT_LOOP(100) EVT_ADD(LVarF, 1) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, 0, EVT_FLOAT(1.0), 100, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, 0, EVT_FLOAT(1.0), 100, 0, 0) EVT_EXEC(N(80247588)) EVT_WAIT(1) EVT_END_LOOP @@ -1800,7 +1800,7 @@ EvtScript N(80247FAC) = { EVT_SET(LVarF, 0) EVT_LOOP(1200) EVT_ADD(LVarF, 1) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, -700, 0, 1200, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, -700, 0, 1200, 0, 0) EVT_SETF(LVar2, LVar0) EVT_MULF(LVar2, EVT_FLOAT(1.0)) EVT_SETF(LVar0, LVar2) @@ -1867,7 +1867,7 @@ EvtScript N(8024834C) = { EVT_SET(LVarF, 0) EVT_LOOP(5) EVT_ADD(LVarF, 20) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.0), EVT_FLOAT(1.0), 100, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.0), EVT_FLOAT(1.0), 100, 0, 0) EVT_EXEC(N(802476F4)) EVT_WAIT(1) EVT_END_LOOP diff --git a/src/world/area_flo/flo_00/C9EE30.c b/src/world/area_flo/flo_00/C9EE30.c index e5d4340c38..bfe747df35 100644 --- a/src/world/area_flo/flo_00/C9EE30.c +++ b/src/world/area_flo/flo_00/C9EE30.c @@ -40,7 +40,7 @@ ApiStatus N(func_802410B4_C9EFD4)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" #include "world/common/SyncStatusMenu.inc.c" diff --git a/src/world/area_flo/flo_00/flo_00.h b/src/world/area_flo/flo_00/flo_00.h index a089b27f77..015457c082 100644 --- a/src/world/area_flo/flo_00/flo_00.h +++ b/src/world/area_flo/flo_00/flo_00.h @@ -10,7 +10,7 @@ ApiStatus N(SyncStatusMenu)(Evt* script, s32 isInitialCall); ApiStatus N(PostChapter6StatUpdate)(Evt* script, s32 isInitialCall); -ApiStatus N(UnkFloatFunc)(Evt* script, s32 isInitialCall); +ApiStatus N(CosInterpMinMax)(Evt* script, s32 isInitialCall); ApiStatus N(func_80240000_C9DF20)(Evt* script, s32 isInitialCall); ApiStatus N(PatrolNoAttackAI_Main)(Evt* script, s32 isInitialCall); ApiStatus N(func_80240ED0_C9EDF0)(Evt* script, s32 isInitialCall); diff --git a/src/world/area_flo/flo_18/CDC6A0.c b/src/world/area_flo/flo_18/CDC6A0.c index c1ea306e43..03183b473f 100644 --- a/src/world/area_flo/flo_18/CDC6A0.c +++ b/src/world/area_flo/flo_18/CDC6A0.c @@ -193,10 +193,10 @@ EvtScript N(80241094) = { EVT_MULF(LVar6, EVT_FLOAT(1.01)) EVT_ADDF(LVar7, EVT_FLOAT(0.01)) EVT_SETF(LVar8, LVar6) - EVT_CALL(N(UnkFloatFunc), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 15, 0, 0) EVT_ADDF(LVar8, LVarA) EVT_SETF(LVar9, LVar7) - EVT_CALL(N(UnkFloatFunc), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 20, 0, 90) + EVT_CALL(N(CosInterpMinMax), LVarE, LVarA, EVT_FLOAT(0.0), EVT_FLOAT(0.203125), 20, 0, 90) EVT_ADDF(LVar9, LVarA) EVT_SETF(LVarA, LVar0) EVT_MULF(LVarA, EVT_FLOAT(10.0)) @@ -253,8 +253,8 @@ EvtScript N(802413F0) = { EVT_SUB(LVar2, 25) EVT_CALL(PlayEffect, 0x0, LVar0, LVar1, LVar2, 5, 10, 1, 1, 0, 0, 0, 0, 0, 0) EVT_ADD(LVarF, 1) - EVT_CALL(N(UnkFloatFunc), LVarF, LVarE, EVT_FLOAT(1.0), EVT_FLOAT(1.09375), 2, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVarD, EVT_FLOAT(1.09375), EVT_FLOAT(1.0), 2, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVarE, EVT_FLOAT(1.0), EVT_FLOAT(1.09375), 2, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVarD, EVT_FLOAT(1.09375), EVT_FLOAT(1.0), 2, 0, 0) EVT_SETF(LVar0, LVarE) EVT_SETF(LVar1, LVarD) EVT_SETF(LVar2, LVarE) @@ -1771,4 +1771,4 @@ ApiStatus N(func_80240340_CDC9E0)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" diff --git a/src/world/area_flo/flo_18/flo_18.h b/src/world/area_flo/flo_18/flo_18.h index 859fbbe7d9..65e911add9 100644 --- a/src/world/area_flo/flo_18/flo_18.h +++ b/src/world/area_flo/flo_18/flo_18.h @@ -11,7 +11,7 @@ ApiStatus N(TransformFoliage)(Evt* script, s32 isInitialCall); ApiStatus N(UpdateTexturePanSmooth)(Evt* script, s32 isInitialCall); ApiStatus N(UpdateTexturePanStepped)(Evt* script, s32 isInitialCall); -ApiStatus N(UnkFloatFunc)(Evt* script, s32 isInitialCall); +ApiStatus N(CosInterpMinMax)(Evt* script, s32 isInitialCall); ApiStatus N(func_8024030C_CDC9AC)(Evt* script, s32 isInitialCall); ApiStatus N(func_80240340_CDC9E0)(Evt* script, s32 isInitialCall); diff --git a/src/world/area_flo/flo_19/CE36F0.c b/src/world/area_flo/flo_19/CE36F0.c index 7bd2668d04..20b60a9af9 100644 --- a/src/world/area_flo/flo_19/CE36F0.c +++ b/src/world/area_flo/flo_19/CE36F0.c @@ -474,7 +474,7 @@ EvtScript N(80241CC4) = { EVT_SET(LVarF, 0) EVT_LOOP(344) EVT_ADD(LVarF, 1) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, -210, 0, 344, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, -210, 0, 344, 0, 0) EVT_SETF(LVar1, LVar0) EVT_MULF(LVar1, EVT_FLOAT(-3.0)) EVT_CALL(TranslateModel, 86, EVT_FLOAT(1.3134765625), LVar0, EVT_FLOAT(-0.56640625)) @@ -574,7 +574,7 @@ EvtScript N(802423F8) = { EVT_SET(LVarF, 0) EVT_LOOP(344) EVT_ADD(LVarF, 1) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, 0, -210, 344, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, 0, -210, 344, 0, 0) EVT_SETF(LVar1, LVar0) EVT_MULF(LVar1, EVT_FLOAT(-3.0)) EVT_CALL(TranslateModel, 86, EVT_FLOAT(1.3134765625), LVar0, EVT_FLOAT(-0.56640625)) @@ -665,7 +665,7 @@ EvtScript N(80242A2C) = { EVT_END_IF EVT_END_IF EVT_ADD(LVarF, 1) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, -350, 0, 400, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, -350, 0, 400, 0, 0) EVT_SETF(MapVar(11), LVarF) EVT_MULF(MapVar(11), EVT_FLOAT(1.6)) EVT_SETF(LVar2, LVar0) @@ -706,7 +706,7 @@ ApiStatus N(func_8024030C_CE39FC)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -// Identical to UnkFloatFunc except for the presence of the fabsf +// Identical to CosInterpMinMax except for the presence of the fabsf ApiStatus N(func_80240340_CE3A30)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; s32 a1 = *args++; @@ -774,4 +774,4 @@ ApiStatus N(func_80240784_CE3E74)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" diff --git a/src/world/area_flo/flo_19/flo_19.h b/src/world/area_flo/flo_19/flo_19.h index 0cba5556be..9e030c4046 100644 --- a/src/world/area_flo/flo_19/flo_19.h +++ b/src/world/area_flo/flo_19/flo_19.h @@ -10,7 +10,7 @@ ApiStatus N(UpdateTexturePanSmooth)(Evt* script, s32 isInitialCall); ApiStatus N(UpdateTexturePanStepped)(Evt* script, s32 isInitialCall); -ApiStatus N(UnkFloatFunc)(Evt* script, s32 isInitialCall); +ApiStatus N(CosInterpMinMax)(Evt* script, s32 isInitialCall); ApiStatus N(func_8024030C_CE39FC)(Evt* script, s32 isInitialCall); ApiStatus N(func_80240340_CE3A30)(Evt* script, s32 isInitialCall); ApiStatus N(func_802404D0_CE3BC0)(Evt* script, s32 isInitialCall); diff --git a/src/world/area_flo/flo_21/CE6700.c b/src/world/area_flo/flo_21/CE6700.c index a3a90eee92..83ec34d314 100644 --- a/src/world/area_flo/flo_21/CE6700.c +++ b/src/world/area_flo/flo_21/CE6700.c @@ -224,8 +224,8 @@ EvtScript N(80241600) = { EVT_THREAD EVT_SET(LVarF, 0) EVT_LABEL(0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar0, EVT_FLOAT(0.96875), EVT_FLOAT(1.03125), 15, 0, 0) - EVT_CALL(N(UnkFloatFunc), LVarF, LVar1, EVT_FLOAT(1.03125), EVT_FLOAT(0.96875), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar0, EVT_FLOAT(0.96875), EVT_FLOAT(1.03125), 15, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVarF, LVar1, EVT_FLOAT(1.03125), EVT_FLOAT(0.96875), 15, 0, 0) EVT_CALL(ScaleModel, 88, LVar1, LVar0, 1) EVT_CALL(ScaleModel, 90, LVar1, LVar0, 1) EVT_CALL(ScaleModel, 92, LVar0, LVar1, 1) diff --git a/src/world/area_flo/flo_21/CE7240.c b/src/world/area_flo/flo_21/CE7240.c index 62b5a8b739..db6e1fdc74 100644 --- a/src/world/area_flo/flo_21/CE7240.c +++ b/src/world/area_flo/flo_21/CE7240.c @@ -1,5 +1,5 @@ #include "flo_21.h" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" #include "world/common/UnsetCamera0MoveFlag1.inc.c" diff --git a/src/world/area_flo/flo_21/flo_21.h b/src/world/area_flo/flo_21/flo_21.h index 429e1d28c9..fa73fe5b47 100644 --- a/src/world/area_flo/flo_21/flo_21.h +++ b/src/world/area_flo/flo_21/flo_21.h @@ -10,7 +10,7 @@ ApiStatus N(UpdateTexturePanSmooth)(Evt* script, s32 isInitialCall); ApiStatus N(UpdateTexturePanStepped)(Evt* script, s32 isInitialCall); -ApiStatus N(UnkFloatFunc)(Evt* script, s32 isInitialCall); +ApiStatus N(CosInterpMinMax)(Evt* script, s32 isInitialCall); ApiStatus N(flo_21_StarSpiritEffectFunc1)(Evt* script, s32 isInitialCall); ApiStatus N(flo_21_StarSpiritEffectFunc2)(Evt* script, s32 isInitialCall); ApiStatus N(flo_21_StarSpiritEffectFunc3)(Evt* script, s32 isInitialCall); diff --git a/src/world/area_isk/isk_02/978710.c b/src/world/area_isk/isk_02/978710.c index ed735de065..5e24f70980 100644 --- a/src/world/area_isk/isk_02/978710.c +++ b/src/world/area_isk/isk_02/978710.c @@ -3,4 +3,4 @@ static char* N(exit_str_0) = "isk_01"; static char* N(exit_str_1) = "isk_03"; -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" diff --git a/src/world/area_isk/isk_04/97B630.c b/src/world/area_isk/isk_04/97B630.c index f5460db1cf..ecb023c8bb 100644 --- a/src/world/area_isk/isk_04/97B630.c +++ b/src/world/area_isk/isk_04/97B630.c @@ -5,4 +5,4 @@ static char* N(exit_str_1) = "isk_07"; static char* N(exit_str_2) = "isk_06"; static char* N(exit_str_3) = "isk_05"; -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" diff --git a/src/world/area_isk/isk_07/9824F0.c b/src/world/area_isk/isk_07/9824F0.c index 53a684c994..5a2fe77b09 100644 --- a/src/world/area_isk/isk_07/9824F0.c +++ b/src/world/area_isk/isk_07/9824F0.c @@ -1,3 +1,3 @@ #include "isk_07.h" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" diff --git a/src/world/area_isk/isk_11/98AB30.c b/src/world/area_isk/isk_11/98AB30.c index 8ffc9d2cac..b017174c07 100644 --- a/src/world/area_isk/isk_11/98AB30.c +++ b/src/world/area_isk/isk_11/98AB30.c @@ -1,3 +1,3 @@ #include "isk_11.h" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" diff --git a/src/world/area_iwa/iwa.h b/src/world/area_iwa/iwa.h index 2686efa9d9..1adc1e410c 100644 --- a/src/world/area_iwa/iwa.h +++ b/src/world/area_iwa/iwa.h @@ -2,24 +2,27 @@ #define _WORLD_AREA_IWA_IWA_H_ enum { - AB_IWA_0 = AreaByte(0), - AB_IWA_1 = AreaByte(1), - AB_IWA_2 = AreaByte(2), - AB_IWA_3 = AreaByte(3), - AB_IWA_4 = AreaByte(4), - AB_IWA_5 = AreaByte(5), - AB_IWA_6 = AreaByte(6), - AB_IWA_7 = AreaByte(7), - AB_IWA_8 = AreaByte(8), - AB_IWA_9 = AreaByte(9), - AB_IWA_A = AreaByte(10), - AB_IWA_B = AreaByte(11), - AB_IWA_C = AreaByte(12), - AB_IWA_D = AreaByte(13), - AB_IWA_E = AreaByte(14), - AB_IWA_F = AreaByte(15), + AB_IWA_0 = AreaByte(0), + AB_IWA_1 = AreaByte(1), + AB_IWA_2 = AreaByte(2), + AB_IWA_3 = AreaByte(3), + AB_IWA_4 = AreaByte(4), + AB_IWA_5 = AreaByte(5), + AB_IWA_6 = AreaByte(6), + AB_IWA_7 = AreaByte(7), + AB_IWA_8 = AreaByte(8), + AB_IWA_9 = AreaByte(9), + AB_IWA_A = AreaByte(10), + AB_IWA_B = AreaByte(11), + AB_IWA_C = AreaByte(12), + AB_IWA_D = AreaByte(13), + AB_IWA_E = AreaByte(14), + AB_IWA_F = AreaByte(15), }; -#define AF_IWA(index) AreaFlag(index) +enum { + AF_IWA_SpokeWithBulbulb = AreaFlag(1), + AF_IWA_SpokeWIthDryite = AreaFlag(2), +}; #endif diff --git a/src/world/area_iwa/iwa_00/90CC40.c b/src/world/area_iwa/iwa_00/90CC40.c deleted file mode 100644 index 876a96847f..0000000000 --- a/src/world/area_iwa/iwa_00/90CC40.c +++ /dev/null @@ -1,46 +0,0 @@ -#include "iwa_00.h" -#include "effects.h" - -static char* N(exit_str_0) = "iwa_10"; -static char* N(exit_str_1) = "iwa_01"; - -#include "world/common/StashVars.inc.c" - -#include "world/common/GetItemName.inc.c" - -// slightly modified version of OnDefeatEnemy which uses a spatialized death sound -ApiStatus func_80240118_90CD58(Evt* script, s32 isInitialCall) { - Enemy* enemy = script->owner1.enemy; - Npc* npc = get_npc_unsafe(enemy->npcID); - s32 temp; - - if (isInitialCall) { - script->functionTemp[0] = 0; - script->functionTemp[1] = 20; - } - if (script->functionTemp[1] & 1) { - npc->flags &= ~NPC_FLAG_2; - } else { - npc->flags |= NPC_FLAG_2; - } - if (script->functionTemp[1] == 15) { - sfx_play_sound_at_position(SOUND_DEATH, 0, npc->pos.x, npc->pos.y + (npc->collisionHeight / 2), npc->pos.z); - fx_damage_stars(1, npc->pos.x, npc->pos.y + (npc->collisionHeight / 2), npc->pos.z, 0.0f, -1.0f, 0.0f, 0xA); - } - - temp = script->functionTemp[1]; - if (script->functionTemp[1] == 10) { - fx_big_smoke_puff(npc->pos.x, npc->pos.y + 10.0f, npc->pos.z + 10.0f); - // odd logic needed to match - if (script->functionTemp[1] == temp) { - spawn_drops(enemy); - } - } - - script->functionTemp[1]--; - if (script->functionTemp[1] == 0) { - return ApiStatus_DONE1; - } else { - return ApiStatus_BLOCK; - } -} diff --git a/src/world/area_iwa/iwa_00/90CEF0.c b/src/world/area_iwa/iwa_00/90CEF0.c deleted file mode 100644 index 2c0b80203e..0000000000 --- a/src/world/area_iwa/iwa_00/90CEF0.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "iwa_00.h" - -ApiStatus func_802402B0_90CEF0(Evt* script, s32 isInitialCall) { - gPlayerStatus.slideParams = script->varTablePtr[0]; - gPlayerStatus.flags |= PS_FLAGS_10; - return ApiStatus_DONE2; -} diff --git a/src/world/area_iwa/iwa_00/iwa_00.h b/src/world/area_iwa/iwa_00/iwa_00.h index b08e4ca3e3..4c4b54bd6a 100644 --- a/src/world/area_iwa/iwa_00/iwa_00.h +++ b/src/world/area_iwa/iwa_00/iwa_00.h @@ -2,8 +2,23 @@ /// @brief Mt Rugged - Mt Rugged 1 #include "common.h" -#include "../iwa.h" #include "message_ids.h" #include "map.h" +#include "../iwa.h" +#include "mapfs/iwa_00_shape.h" +#include "mapfs/iwa_00_hit.h" + +#include "sprite/npc/MontyMole.h" +#include "sprite/npc/Whacka.h" + +enum { + NPC_MontyMole_01 = 0, + NPC_MontyMole_01_Hole = 1, + NPC_MontyMole_02 = 2, + NPC_MontyMole_02_Hole = 3, + NPC_Whacka_01 = 4, + NPC_Whacka_02 = 5, +}; + #define NAMESPACE iwa_00 diff --git a/src/world/area_iwa/iwa_00/iwa_00_1_main.c b/src/world/area_iwa/iwa_00/iwa_00_1_main.c new file mode 100644 index 0000000000..d8d10f1e99 --- /dev/null +++ b/src/world/area_iwa/iwa_00/iwa_00_1_main.c @@ -0,0 +1,61 @@ +#include "iwa_00.h" + +extern EvtScript N(EVS_Main); +extern EvtScript N(EVS_BindSlideTriggers); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(DefaultNPCs); + +EntryList N(Entrances) = { + [iwa_00_ENTRY_0] { 55.0, -5.0, -25.0, 90.0 }, + [iwa_00_ENTRY_1] { 1313.0, 90.0, -40.0, 270.0 }, + [iwa_00_ENTRY_2] { 625.0, -30.0, 259.0, 45.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, + .tattle = { MSG_MapTattle_iwa_00 }, +}; + +EvtScript N(EVS_ExitWalk_iwa_10_1) = EVT_EXIT_WALK(60, iwa_00_ENTRY_0, "iwa_10", iwa_10_ENTRY_1); +EvtScript N(EVS_ExitWalk_iwa_01_0) = EVT_EXIT_WALK(60, iwa_00_ENTRY_1, "iwa_01", iwa_01_ENTRY_0); + +EvtScript N(EVS_TexPan_Water) = { + EVT_CALL(EnableTexPanning, MODEL_o949, TRUE) + EVT_CALL(EnableTexPanning, MODEL_water, TRUE) + EVT_SET(LVar0, 0) + EVT_LOOP(0) + EVT_ADD(LVar0, 3000) + EVT_CALL(SetTexPanOffset, TEX_PANNER_1, TEX_PANNER_MAIN, 0, LVar0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_10_1)), TRIGGER_FLOOR_ABOVE, COLLIDER_deili1, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_01_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deili2, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_MT_RUGGED) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_DEFAULT() + EVT_CALL(MakeNpcs, TRUE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_TexPan_Water)) + EVT_EXEC(N(EVS_BindSlideTriggers)) + EVT_CALL(SetMusicTrack, 0, SONG_MT_RUGGED, 0, 8) + EVT_CALL(PlaySoundAtF, SOUND_8000000B, 1, 35, -80, -120) + EVT_CALL(PlaySoundAtF, SOUND_8000000C, 1, 500, 85, -120) + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_00/iwa_00_2_entity.c b/src/world/area_iwa/iwa_00/iwa_00_2_entity.c new file mode 100644 index 0000000000..7e5ba045d2 --- /dev/null +++ b/src/world/area_iwa/iwa_00/iwa_00_2_entity.c @@ -0,0 +1,24 @@ +#include "iwa_00.h" +#include "entity.h" + +EvtScript N(EVS_OnSmashBlock) = { + EVT_SET(GF_IWA01_Hammer1Block, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_MakeEntities) = { + EVT_IF_EQ(GF_IWA01_Hammer1Block, FALSE) + EVT_CALL(MakeEntity, EVT_PTR(Entity_Hammer1Block_WideZ), 900, -30, 220, 0, MAKE_ENTITY_END) + EVT_CALL(AssignScript, EVT_PTR(N(EVS_OnSmashBlock))) + EVT_END_IF + EVT_CALL(MakeItemEntity, ITEM_COIN, 405, 25, 25, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA00_Item_CoinA) + EVT_CALL(MakeItemEntity, ITEM_COIN, 465, 53, 25, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA00_Item_CoinB) + EVT_CALL(MakeItemEntity, ITEM_COIN, 515, 92, 25, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA00_Item_CoinC) + EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 1260, 30, 140, 0, ITEM_SLEEPY_SHEEP, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_IWA00_ItemBlock_SleepySheep) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), 58, -5, -73, -30, 90, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), 926, 70, -45, 22, 90, MAKE_ENTITY_END) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_00/iwa_00_3_npc.c b/src/world/area_iwa/iwa_00/iwa_00_3_npc.c new file mode 100644 index 0000000000..08a5b3dc1c --- /dev/null +++ b/src/world/area_iwa/iwa_00/iwa_00_3_npc.c @@ -0,0 +1,424 @@ +#include "iwa_00.h" +#include "effects.h" + +#include "world/common/enemy/complete/MontyMole_GroundAmbush.inc.c" +#include "world/common/enemy/complete/MontyMole_WallAmbush.inc.c" + +NpcSettings N(NpcSettings_Whacka_01) = { + .height = 30, + .radius = 26, + .level = 99, + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, +}; + +#include "world/common/complete/GiveReward.inc.c" + +API_CALLABLE(N(func_80240118_90CD58)) { + Enemy* enemy = script->owner1.enemy; + Npc* npc = get_npc_unsafe(enemy->npcID); + s32 temp; + + if (isInitialCall) { + script->functionTemp[0] = 0; + script->functionTemp[1] = 20; + } + if (script->functionTemp[1] & 1) { + npc->flags &= ~NPC_FLAG_2; + } else { + npc->flags |= NPC_FLAG_2; + } + if (script->functionTemp[1] == 15) { + sfx_play_sound_at_position(SOUND_DEATH, 0, npc->pos.x, npc->pos.y + (npc->collisionHeight / 2), npc->pos.z); + fx_damage_stars(1, npc->pos.x, npc->pos.y + (npc->collisionHeight / 2), npc->pos.z, 0.0f, -1.0f, 0.0f, 10); + } + + temp = script->functionTemp[1]; + if (script->functionTemp[1] == 10) { + fx_big_smoke_puff(npc->pos.x, npc->pos.y + 10.0f, npc->pos.z + 10.0f); + // odd logic needed to match + if (script->functionTemp[1] == temp) { + spawn_drops(enemy); + } + } + + script->functionTemp[1]--; + if (script->functionTemp[1] == 0) { + return ApiStatus_DONE1; + } else { + return ApiStatus_BLOCK; + } +} + +StaticNpc N(NpcData_MontyMole_01)[] = { + { + .id = NPC_MontyMole_01, + .settings = &N(NpcSettings_MontyMole_GroundAmbush), + .pos = { 880.0f, 70.0f, 67.0f }, + .yaw = 0, + .flags = NPC_FLAG_LOCK_ANIMS, + .drops = MONTY_MOLE_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 880, 70, 67 }, + .wanderSize = { 50 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 880, 70, 67 }, + .detectSize = { 120 }, + } + }, + .animations = MONTY_MOLE_AMBUSH_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, + }, + { + .id = NPC_MontyMole_01_Hole, + .settings = &N(NpcSettings_MontyMole_GroundAmbush_Hole), + .pos = { 880.0f, 70.0f, 67.0f }, + .yaw = 0, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_NO_AI | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 880, 70, 67 }, + .wanderSize = { 0 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 0, 0, 0 }, + .detectSize = { 0 }, + } + }, + .animations = MONTY_MOLE_AMBUSH_ANIMS, + }, +}; + +StaticNpc N(NpcData_MontyMole_03)[] = { + { + .id = NPC_MontyMole_02, + .settings = &N(NpcSettings_MontyMole_WallAmbush), + .pos = { 1220.0f, -30.0f, 70.0f }, + .yaw = 0, + .flags = NPC_FLAG_LOCK_ANIMS, + .drops = MONTY_MOLE_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 1220, -30, 70 }, + .wanderSize = { 50 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 1220, -30, 70 }, + .detectSize = { 120 }, + } + }, + .animations = MONTY_MOLE_AMBUSH_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, + }, + { + .id = NPC_MontyMole_02_Hole, + .settings = &N(NpcSettings_MontyMole_WallAmbush_Hole), + .pos = { 1220.0f, -30.0f, 70.0f }, + .yaw = 0, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_NO_AI | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 1220, -30, 70 }, + .wanderSize = { 0 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 0, 0, 0 }, + .detectSize = { 0 }, + } + }, + .animations = MONTY_MOLE_AMBUSH_ANIMS, + }, +}; + +EvtScript N(EVS_NpcInteract_Whacka_01) = { + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(GetNpcPos, NPC_SELF, LVar3, LVar4, LVar5) + EVT_IF_LT(LVar0, LVar3) + EVT_CALL(InterpNpcYaw, NPC_SELF, 270, 0) + EVT_ELSE + EVT_CALL(InterpNpcYaw, NPC_SELF, 90, 0) + EVT_END_IF + EVT_SWITCH(GB_IWA00_Whacka_HitCount) + EVT_CASE_EQ(0) + EVT_IF_EQ(GF_IWA00_Met_Whacka, FALSE) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Whacka_Talk, ANIM_Whacka_Idle, 0, MSG_CH2_0027) + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Whacka_Talk, ANIM_Whacka_Idle, 0, MSG_CH2_0028) + EVT_END_IF + EVT_CASE_LE(2) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Whacka_Talk, ANIM_Whacka_Idle, 0, MSG_CH2_0028) + EVT_CASE_LE(4) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Whacka_Talk, ANIM_Whacka_Idle, 0, MSG_CH2_0029) + EVT_CASE_LE(6) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Whacka_Talk, ANIM_Whacka_Idle, 0, MSG_CH2_002A) + EVT_CASE_DEFAULT + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Whacka_Talk, ANIM_Whacka_Idle, 0, MSG_CH2_002B) + EVT_END_SWITCH + EVT_SET(GF_IWA00_Met_Whacka, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcIdle_Whacka_01) = { + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Whacka_Idle) + EVT_CALL(GetNpcPos, NPC_SELF, LVarA, LVarB, LVarC) + EVT_CALL(SetNpcPos, NPC_Whacka_01, 0, -1000, 0) + EVT_CALL(SetNpcPos, NPC_Whacka_02, 0, -1000, 0) + EVT_LABEL(0) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_IF_GE(LVar1, 20) + EVT_WAIT(1) + EVT_GOTO(0) + EVT_END_IF + EVT_IF_LT(LVar0, 600) + EVT_WAIT(1) + EVT_GOTO(0) + EVT_END_IF + EVT_IF_GT(LVar0, 850) + EVT_WAIT(1) + EVT_GOTO(0) + EVT_END_IF + EVT_CALL(SetNpcPos, NPC_Whacka_01, LVarA, LVarB, LVarC) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_BURROW_SURFACE, 0) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Whacka_PopUp) + EVT_WAIT(15) + EVT_CALL(SetNpcPos, NPC_Whacka_02, LVarA, LVarB, LVarC) + EVT_WAIT(5) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Whacka_Idle) + EVT_WAIT(30) + EVT_LABEL(10) + EVT_WAIT(1) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_IF_LE(LVar0, 900) + EVT_GOTO(10) + EVT_END_IF + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Whacka_Burrow) + EVT_CALL(SetNpcPos, NPC_Whacka_02, 0, -1000, 0) + EVT_WAIT(15) + EVT_CALL(SetNpcPos, NPC_Whacka_01, 0, -1000, 0) + EVT_GOTO(0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcHit_Whacka_02) = { + EVT_CALL(GetOwnerEncounterTrigger, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(ENCOUNTER_TRIGGER_HAMMER) + EVT_SET(LVarA, 1) + EVT_CASE_EQ(ENCOUNTER_TRIGGER_JUMP) + EVT_SET(LVarA, 1) + EVT_CASE_EQ(ENCOUNTER_TRIGGER_PARTNER) + EVT_CALL(GetCurrentPartnerID, LVar2) + EVT_IF_EQ(LVar2, PARTNER_KOOPER) + EVT_SET(LVarA, 2) + EVT_ELSE + EVT_SET(LVarA, 3) + EVT_END_IF + EVT_CASE_DEFAULT + EVT_SET(LVarA, 0) + EVT_END_SWITCH + EVT_IF_EQ(LVarA, 0) + EVT_RETURN + EVT_END_IF + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(BindNpcInteract, NPC_Whacka_01, 0) + EVT_CALL(EnableNpcAI, NPC_Whacka_01, FALSE) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(GetNpcPos, NPC_SELF, LVar3, LVar4, LVar5) + EVT_IF_LT(LVar0, LVar3) + EVT_CALL(InterpNpcYaw, NPC_SELF, 270, 0) + EVT_SET(LVarB, 0) + EVT_ELSE + EVT_CALL(InterpNpcYaw, NPC_SELF, 90, 0) + EVT_SET(LVarB, 1) + EVT_END_IF + EVT_ADD(GB_IWA00_Whacka_HitCount, 1) + EVT_IF_EQ(LVarA, 3) + EVT_ADD(GB_IWA00_Whacka_HitCount, 1) + EVT_END_IF + EVT_SWITCH(LVarA) + EVT_CASE_OR_EQ(2) + EVT_CASE_OR_EQ(3) + EVT_CALL(PlaySoundAtNpc, NPC_Whacka_01, SOUND_HIT_PLAYER_NORMAL, 0) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_SWITCH(LVarA) + EVT_CASE_OR_EQ(1) + EVT_CASE_OR_EQ(2) + EVT_WAIT(1) + EVT_CALL(SetNpcAnimation, NPC_Whacka_01, ANIM_Whacka_Hurt) + EVT_WAIT(15) + EVT_CALL(GetNpcPos, NPC_Whacka_01, LVar0, LVar1, LVar2) + EVT_IF_EQ(LVarB, 0) + EVT_ADD(LVar0, 14) + EVT_ELSE + EVT_SUB(LVar0, 14) + EVT_END_IF + EVT_ADD(LVar1, 30) + EVT_ADD(LVar2, 2) + EVT_CALL(MakeItemEntity, ITEM_WHACKAS_BUMP, LVar0, LVar1, LVar2, ITEM_SPAWN_MODE_FALL_NEVER_VANISH, 0) + EVT_CALL(SetNpcAnimation, NPC_Whacka_01, ANIM_Whacka_Idle) + EVT_WAIT(5) + EVT_END_CASE_GROUP + EVT_CASE_EQ(3) + EVT_CALL(GetNpcPos, NPC_Whacka_01, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 1) + EVT_CALL(SetNpcPos, NPC_Whacka_01, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_SUB(LVar0, 2) + EVT_CALL(SetNpcPos, NPC_Whacka_01, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_ADD(LVar0, 2) + EVT_CALL(SetNpcPos, NPC_Whacka_01, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_SUB(LVar0, 1) + EVT_CALL(SetNpcPos, NPC_Whacka_01, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_IF_LT(GB_IWA00_Whacka_HitCount, 8) + EVT_SWITCH(LVarA) + EVT_CASE_EQ(1) + EVT_CALL(SpeakToPlayer, NPC_Whacka_01, ANIM_Whacka_Talk, ANIM_Whacka_Idle, 0, MSG_CH2_002C) + EVT_CASE_EQ(2) + EVT_CALL(SpeakToPlayer, NPC_Whacka_01, ANIM_Whacka_Talk, ANIM_Whacka_Idle, 0, MSG_CH2_002D) + EVT_CASE_EQ(3) + EVT_CALL(SpeakToPlayer, NPC_Whacka_01, ANIM_Whacka_Talk, ANIM_Whacka_Idle, 0, MSG_CH2_002E) + EVT_END_SWITCH + EVT_CALL(SetNpcAnimation, NPC_Whacka_01, ANIM_Whacka_Burrow) + EVT_WAIT(15) + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_Whacka_01, ANIM_Whacka_Talk, ANIM_Whacka_Idle, 0, MSG_CH2_002F) + EVT_WAIT(2) + EVT_END_IF + EVT_IF_GE(GB_IWA00_Whacka_HitCount, 8) + EVT_CALL(N(func_80240118_90CD58)) + EVT_END_IF + EVT_CALL(SetNpcPos, NPC_Whacka_01, 0, -1000, 0) + EVT_CALL(SetNpcPos, NPC_Whacka_02, 0, -1000, 0) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_CALL(RemoveNpc, NPC_Whacka_01) + EVT_CALL(RemoveNpc, NPC_Whacka_02) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Whacka_01) = { + EVT_CALL(SetNpcVar, NPC_Whacka_01, 8, 0) + EVT_IF_LT(GB_IWA00_Whacka_HitCount, 8) + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Whacka_01))) + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Whacka_01))) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_200000, TRUE) + EVT_ELSE + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Whacka_02) = { + EVT_IF_LT(GB_IWA00_Whacka_HitCount, 8) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(BindNpcHit, NPC_SELF, EVT_PTR(N(EVS_NpcHit_Whacka_02))) + EVT_ELSE + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_Whacka_01)[] = { + { + .id = NPC_Whacka_01, + .settings = &N(NpcSettings_Whacka_01), + .pos = { 725.0f, -30.0f, 225.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_Whacka_01), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Whacka_Idle, + .walk = ANIM_Whacka_Idle, + .run = ANIM_Whacka_Idle, + .chase = ANIM_Whacka_Idle, + .anim_4 = ANIM_Whacka_Idle, + .anim_5 = ANIM_Whacka_Idle, + .death = ANIM_Whacka_Idle, + .hit = ANIM_Whacka_Idle, + .anim_8 = ANIM_Whacka_Idle, + .anim_9 = ANIM_Whacka_Idle, + .anim_A = ANIM_Whacka_Idle, + .anim_B = ANIM_Whacka_Idle, + .anim_C = ANIM_Whacka_Idle, + .anim_D = ANIM_Whacka_Idle, + .anim_E = ANIM_Whacka_Idle, + .anim_F = ANIM_Whacka_Idle, + }, + .tattle = MSG_NpcTattle_Whacka, + }, + { + .id = NPC_Whacka_02, + .settings = &N(NpcSettings_Whacka_01), + .pos = { 725.0f, -30.0f, 225.0f }, + .yaw = 90, + .flags = NPC_FLAG_4 | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_4000 | NPC_FLAG_MOTION_BLUR | NPC_FLAG_200000 | NPC_FLAG_400000 | NPC_FLAG_1000000 | NPC_FLAG_SIMPLIFIED_PHYSICS, + .init = &N(EVS_NpcInit_Whacka_02), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Whacka_Idle, + .walk = ANIM_Whacka_Idle, + .run = ANIM_Whacka_Idle, + .chase = ANIM_Whacka_Idle, + .anim_4 = ANIM_Whacka_Idle, + .anim_5 = ANIM_Whacka_Idle, + .death = ANIM_Whacka_Idle, + .hit = ANIM_Whacka_Idle, + .anim_8 = ANIM_Whacka_Idle, + .anim_9 = ANIM_Whacka_Idle, + .anim_A = ANIM_Whacka_Idle, + .anim_B = ANIM_Whacka_Idle, + .anim_C = ANIM_Whacka_Idle, + .anim_D = ANIM_Whacka_Idle, + .anim_E = ANIM_Whacka_Idle, + .anim_F = ANIM_Whacka_Idle, + }, + .tattle = MSG_NpcTattle_Whacka, + }, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_MontyMole_01), BTL_IWA_FORMATION_06, BTL_IWA_STAGE_01), + NPC_GROUP(N(NpcData_MontyMole_03), BTL_IWA_FORMATION_07, BTL_IWA_STAGE_01), + NPC_GROUP(N(NpcData_Whacka_01)), + {} +}; diff --git a/src/world/area_iwa/iwa_00/iwa_00_4_slide.c b/src/world/area_iwa/iwa_00/iwa_00_4_slide.c new file mode 100644 index 0000000000..674c612ba7 --- /dev/null +++ b/src/world/area_iwa/iwa_00/iwa_00_4_slide.c @@ -0,0 +1,67 @@ +#include "iwa_00.h" + +SlideParams N(SlideData) = { + .heading = 270.0f, + .maxDescendAccel = 0.4f, + .launchVelocity = -0.05f, + .maxDescendVelocity = 20.0f, + .integrator = { 0.0, 0.0, 0.0, 0.0 }, +}; + +API_CALLABLE(N(SetPlayerSliding)) { + gPlayerStatus.slideParams = script->varTablePtr[0]; + gPlayerStatus.flags |= PS_FLAGS_10; + return ApiStatus_DONE2; +} + +EvtScript N(EVS_UpdateSliding) = { + EVT_SET(LVar0, EVT_PTR(N(SlideData))) + EVT_CALL(N(SetPlayerSliding)) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_UseSlide) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_WAIT(10) + EVT_THREAD + EVT_CALL(PlaySoundAtCollider, COLLIDER_st1, SOUND_20A2, 0) + EVT_CALL(MakeLerp, 0, 80, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_se1, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_WAIT(15) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_st1, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(PlayerMoveTo, 543, 17, 20) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_WAIT(100) + EVT_THREAD + EVT_CALL(PlaySoundAtCollider, COLLIDER_st1, SOUND_20A2, 0) + EVT_CALL(MakeLerp, 80, 0, 30, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_se1, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_st1, COLLIDER_FLAGS_UPPER_MASK) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindSlideTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_UseSlide)), TRIGGER_WALL_PRESS_A, COLLIDER_st1, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_UpdateSliding)), TRIGGER_FLOOR_TOUCH, COLLIDER_suberi01, 1, 0) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_SURFACE, COLLIDER_suberi01, SURFACE_TYPE_SLIDE) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_01/90F6B0.c b/src/world/area_iwa/iwa_01/90F6B0.c deleted file mode 100644 index 7b21adeaca..0000000000 --- a/src/world/area_iwa/iwa_01/90F6B0.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "iwa_01.h" - -static char* N(exit_str_0) = "iwa_00"; -static char* N(exit_str_1) = "iwa_03"; -static char* N(exit_str_2) = "iwa_02"; -static char* N(exit_str_3) = ""; - -INCLUDE_ASM(s32, "world/area_iwa/iwa_01/90F6B0", func_80240000_90F6B0); - -INCLUDE_ASM(s32, "world/area_iwa/iwa_01/90F6B0", func_80240398_90FA48); diff --git a/src/world/area_iwa/iwa_01/90FBD0.c b/src/world/area_iwa/iwa_01/90FBD0.c deleted file mode 100644 index 7fd385f459..0000000000 --- a/src/world/area_iwa/iwa_01/90FBD0.c +++ /dev/null @@ -1,9 +0,0 @@ -#include "iwa_01.h" - -#include "world/common/enemy/MontyMoleAI.inc.c" - -#include "world/common/enemy/RangedAttackAI.inc.c" - -#include "world/common/GetEncounterEnemyIsOwner.inc.c" - -#include "world/common/enemy/CleftAI.inc.c" diff --git a/src/world/area_iwa/iwa_01/912960.c b/src/world/area_iwa/iwa_01/912960.c deleted file mode 100644 index a5e8e5b31e..0000000000 --- a/src/world/area_iwa/iwa_01/912960.c +++ /dev/null @@ -1,7 +0,0 @@ -#include "iwa_01.h" - -ApiStatus func_802432B0_912960(Evt* script, s32 isInitialCall) { - gPlayerStatus.slideParams = script->varTablePtr[0]; - gPlayerStatus.flags |= PS_FLAGS_10; - return ApiStatus_DONE2; -} diff --git a/src/world/area_iwa/iwa_01/iwa_01.h b/src/world/area_iwa/iwa_01/iwa_01.h index c8aa3cba4b..697a3d0f5a 100644 --- a/src/world/area_iwa/iwa_01/iwa_01.h +++ b/src/world/area_iwa/iwa_01/iwa_01.h @@ -2,8 +2,26 @@ /// @brief Mt Rugged - Mt Rugged 2 #include "common.h" -#include "../iwa.h" #include "message_ids.h" #include "map.h" +#include "../iwa.h" +#include "mapfs/iwa_01_shape.h" +#include "mapfs/iwa_01_hit.h" + +#include "sprite/npc/MontyMole.h" +#include "sprite/npc/Cleft.h" + +enum { + NPC_MontyMole_01 = 0, + NPC_MontyMole_01_Hole = 1, + NPC_MontyMole_02 = 2, + NPC_MontyMole_02_Stone = 3, + NPC_MontyMole_03 = 4, + NPC_MontyMole_03_Stone = 5, + NPC_MontyMole_04 = 6, + NPC_MontyMole_04_Stone = 7, + NPC_Cleft = 8, +}; + #define NAMESPACE iwa_01 diff --git a/src/world/area_iwa/iwa_01/iwa_01_1_main.c b/src/world/area_iwa/iwa_01/iwa_01_1_main.c new file mode 100644 index 0000000000..5b6743d513 --- /dev/null +++ b/src/world/area_iwa/iwa_01/iwa_01_1_main.c @@ -0,0 +1,97 @@ +#include "iwa_01.h" + +extern EvtScript N(EVS_Main); +extern EvtScript N(EVS_MakeSplashes); +extern EvtScript N(EVS_BindSlideTriggers1); +extern EvtScript N(EVS_BindSlideTriggers2); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(DefaultNPCs); + +EntryList N(Entrances) = { + [iwa_01_ENTRY_0] { -786.0, 63.0, 323.0, 90.0 }, + [iwa_01_ENTRY_1] { -770.0, 163.0, 45.0, 90.0 }, + [iwa_01_ENTRY_2] { 958.0, 170.0, 173.0, 270.0 }, + [iwa_01_ENTRY_3] { 989.0, 370.0, 235.0, 270.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, + .tattle = { MSG_MapTattle_iwa_01 }, +}; + +EvtScript N(EVS_ExitWalk_iwa_00_1) = EVT_EXIT_WALK(60, iwa_01_ENTRY_0, "iwa_00", iwa_00_ENTRY_1); +EvtScript N(EVS_ExitWalk_iwa_03_0) = EVT_EXIT_WALK(60, iwa_01_ENTRY_1, "iwa_03", iwa_03_ENTRY_0); +EvtScript N(EVS_ExitWalk_iwa_02_0) = EVT_EXIT_WALK(60, iwa_01_ENTRY_2, "iwa_02", iwa_02_ENTRY_0); +EvtScript N(EVS_ExitWalk_iwa_02_1) = EVT_EXIT_WALK(60, iwa_01_ENTRY_3, "iwa_02", iwa_02_ENTRY_1); + +EvtScript N(EVS_TexPan_Water) = { + EVT_CALL(EnableTexPanning, MODEL_o946, TRUE) + EVT_CALL(EnableTexPanning, MODEL_o947, TRUE) + EVT_SET(LVar0, 0) + EVT_LABEL(10) + EVT_SUB(LVar0, 3000) + EVT_CALL(SetTexPanOffset, TEX_PANNER_1, TEX_PANNER_MAIN, 0, LVar0) + EVT_WAIT(1) + EVT_GOTO(10) + EVT_RETURN + EVT_END +}; + +EvtScript N(D_80243568_912C18) = { + EVT_CALL(EnableTexPanning, MODEL_o952, TRUE) + EVT_CALL(EnableTexPanning, MODEL_o956, TRUE) + EVT_CALL(EnableTexPanning, MODEL_o957, TRUE) + EVT_SET(LVar0, 0) + EVT_SET(LVar1, 0) + EVT_LABEL(10) + EVT_CALL(SetTexPanOffset, TEX_PANNER_C, TEX_PANNER_MAIN, LVar0, 0) + EVT_CALL(SetTexPanOffset, TEX_PANNER_D, TEX_PANNER_MAIN, 0, LVar1) + EVT_ADD(LVar0, 0x8000) + EVT_ADD(LVar1, 0x8000) + EVT_WAIT(2) + EVT_CALL(SetTexPanOffset, TEX_PANNER_D, TEX_PANNER_MAIN, 0, LVar1) + EVT_ADD(LVar1, 0x8000) + EVT_WAIT(2) + EVT_GOTO(10) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_00_1)), TRIGGER_FLOOR_ABOVE, COLLIDER_deili1, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_03_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deili2, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_02_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deili3, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_02_1)), TRIGGER_FLOOR_ABOVE, COLLIDER_deili4, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_MT_RUGGED) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_DEFAULT() + EVT_CALL(MakeNpcs, TRUE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_TexPan_Water)) + EVT_EXEC(N(D_80243568_912C18)) + EVT_EXEC_WAIT(N(EVS_MakeSplashes)) + EVT_EXEC(N(EVS_BindSlideTriggers2)) + EVT_EXEC(N(EVS_BindSlideTriggers1)) + EVT_CALL(SetMusicTrack, 0, SONG_MT_RUGGED, 0, 8) + EVT_CALL(PlaySoundAtF, SOUND_8000000D, 1, -570, -180, 425) + EVT_CALL(PlaySoundAtF, SOUND_8000000E, 1, 740, -170, 330) + EVT_CALL(GetLoadType, LVar1) + EVT_IF_EQ(LVar1, 1) + EVT_EXEC(EnterSavePoint) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_ELSE + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_END_IF + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_01/iwa_01_2_entity.c b/src/world/area_iwa/iwa_01/iwa_01_2_entity.c new file mode 100644 index 0000000000..65471d007d --- /dev/null +++ b/src/world/area_iwa/iwa_01/iwa_01_2_entity.c @@ -0,0 +1,14 @@ +#include "iwa_01.h" +#include "entity.h" + +EvtScript N(EVS_MakeEntities) = { + EVT_CALL(MakeEntity, EVT_PTR(Entity_SavePoint), -650, 123, 375, 0, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), -503, 63, 225, 0, 90, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), 825, 170, 115, 0, 90, MAKE_ENTITY_END) + EVT_CALL(MakeItemEntity, ITEM_QUAKE_HAMMER, 160, 125, 125, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA01_Item_QuakeHammer) + EVT_CALL(MakeItemEntity, ITEM_LETTER01, 410, 140, 135, ITEM_SPAWN_MODE_KEY, GF_IWA01_Item_Letter01) + EVT_CALL(MakeEntity, EVT_PTR(Entity_HiddenPanel), 45, 10, 60, 0, MODEL_cam2b, MAKE_ENTITY_END) + EVT_CALL(AssignPanelFlag, GF_IWA01_HiddenPanel) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_01/iwa_01_3_splash.c b/src/world/area_iwa/iwa_01/iwa_01_3_splash.c new file mode 100644 index 0000000000..afbae42991 --- /dev/null +++ b/src/world/area_iwa/iwa_01/iwa_01_3_splash.c @@ -0,0 +1,22 @@ +#include "iwa_01.h" + +MAP_RODATA_PAD(1,splash); + +#include "world/area_iwa/iwa_01/splash.png.inc.c" +#include "world/area_iwa/iwa_01/splash.vtx.inc.c" +#include "world/area_iwa/iwa_01/splash.gfx.inc.c" + +API_CALLABLE(N(func_80240398_90FA48)); +void N(gfx_build_splash)(void); + +INCLUDE_ASM(s32, "world/area_iwa/iwa_01/90F6B0", iwa_01_gfx_build_splash); +INCLUDE_ASM(s32, "world/area_iwa/iwa_01/90F6B0", iwa_01_func_80240398_90FA48); +MAP_DATA_SECTION_START; + +EvtScript N(EVS_MakeSplashes) = { + EVT_CALL(N(func_80240398_90FA48)) + EVT_CALL(SetCustomGfxBuilders, 0, 0, EVT_PTR(N(gfx_build_splash))) + EVT_CALL(SetModelCustomGfx, MODEL_dummy_sprash2, 0, -1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_01/iwa_01_4_npc.c b/src/world/area_iwa/iwa_01/iwa_01_4_npc.c new file mode 100644 index 0000000000..d6eacc5d79 --- /dev/null +++ b/src/world/area_iwa/iwa_01/iwa_01_4_npc.c @@ -0,0 +1,167 @@ +#include "iwa_01.h" + +#include "world/common/enemy/complete/MontyMole_StoneThrower.inc.c" +#include "world/common/enemy/complete/MontyMole_GroundAmbush.inc.c" +#include "world/common/enemy/complete/MontyMole_WallAmbush.inc.c" +#include "world/common/enemy/complete/Cleft.inc.c" + +StaticNpc N(NpcData_MontyMole_WallAmbush)[] = { + { + .id = NPC_MontyMole_01, + .settings = &N(NpcSettings_MontyMole_WallAmbush), + .pos = { 340.0f, 70.0f, 101.0f }, + .yaw = 0, + .flags = NPC_FLAG_LOCK_ANIMS, + .drops = MONTY_MOLE_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 345, 70, 245 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_RECT, + .detectPos = { 425, 70, 245 }, + .detectSize = { 145, 300 }, + } + }, + .animations = MONTY_MOLE_AMBUSH_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, + }, + { + .id = NPC_MontyMole_01_Hole, + .settings = &N(NpcSettings_MontyMole_WallAmbush_Hole), + .pos = { 340.0f, 70.0f, 101.0f }, + .yaw = 0, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_NO_AI | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_DROPS, + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 0, 0, 0 }, + .wanderSize = { 0 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 0, 0, 0 }, + .detectSize = { 0 }, + } + }, + .animations = MONTY_MOLE_AMBUSH_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, + }, +}; + +StaticNpc N(NpcData_MontyMole_StoneThrower_01)[] = { + { + .id = NPC_MontyMole_02, + .settings = &N(NpcSettings_MontyMole_StoneThrower), + .pos = { -250.0f, 10.0f, 260.0f }, + .yaw = 90, + .flags = NPC_FLAG_JUMPING, + .drops = MONTY_MOLE_DROPS, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { -250, 10, 260 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { -250, 10, 260 }, + .detectSize = { 180 }, + } + }, + .animations = MONTY_MOLE_THROWER_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, + }, + MONTY_MOLE_STONE_HITBOX(NPC_MontyMole_02_Stone) +}; + +StaticNpc N(NpcData_MontyMole_StoneThrower_02)[] = { + { + .id = NPC_MontyMole_03, + .settings = &N(NpcSettings_MontyMole_StoneThrower), + .pos = { -175.0f, 10.0f, 240.0f }, + .yaw = 270, + .flags = NPC_FLAG_JUMPING, + .drops = MONTY_MOLE_DROPS, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { -175, 10, 240 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { -175, 10, 240 }, + .detectSize = { 180 }, + } + }, + .animations = MONTY_MOLE_THROWER_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, + }, + MONTY_MOLE_STONE_HITBOX(NPC_MontyMole_03_Stone) +}; + +StaticNpc N(NpcData_MontyMole_StoneThrower_03)[] = { + { + .id = NPC_MontyMole_04, + .settings = &N(NpcSettings_MontyMole_StoneThrower), + .pos = { -55.0f, 10.0f, 180.0f }, + .yaw = 270, + .flags = NPC_FLAG_JUMPING, + .drops = MONTY_MOLE_DROPS, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { -55, 10, 180 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { -55, 10, 180 }, + .detectSize = { 180 }, + } + }, + .animations = MONTY_MOLE_THROWER_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, + }, + MONTY_MOLE_STONE_HITBOX(NPC_MontyMole_04_Stone) +}; + +StaticNpc N(NpcData_Cleft) = { + .id = NPC_Cleft, + .settings = &N(NpcSettings_Cleft), + .pos = { -657.0f, 163.0f, 155.0f }, + .yaw = 0, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .drops = CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { -639, 163, 100 }, + .wanderSize = { 0 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { -655, 0, 125 }, + .detectSize = { 125, 125 }, + } + }, + .animations = CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_MontyMole_WallAmbush), BTL_IWA_FORMATION_06, BTL_IWA_STAGE_01), + NPC_GROUP(N(NpcData_MontyMole_StoneThrower_01), BTL_IWA_FORMATION_07, BTL_IWA_STAGE_01), + NPC_GROUP(N(NpcData_MontyMole_StoneThrower_02), BTL_IWA_FORMATION_06, BTL_IWA_STAGE_01), + NPC_GROUP(N(NpcData_MontyMole_StoneThrower_03), BTL_IWA_FORMATION_07, BTL_IWA_STAGE_01), + NPC_GROUP(N(NpcData_Cleft), BTL_IWA_FORMATION_04, BTL_IWA_STAGE_01), + {} +}; diff --git a/src/world/area_iwa/iwa_01/iwa_01_5_slide.c b/src/world/area_iwa/iwa_01/iwa_01_5_slide.c new file mode 100644 index 0000000000..4f5daf7485 --- /dev/null +++ b/src/world/area_iwa/iwa_01/iwa_01_5_slide.c @@ -0,0 +1,127 @@ +#include "iwa_01.h" + +API_CALLABLE(N(SetPlayerSliding)) { + gPlayerStatus.slideParams = script->varTablePtr[0]; + gPlayerStatus.flags |= PS_FLAGS_10; + return ApiStatus_DONE2; +} + +SlideParams N(SlideData1) = { + .heading = 90.0f, + .maxDescendAccel = 0.5f, + .launchVelocity = -0.5f, + .maxDescendVelocity = 16.0f, + .integrator = { 0.0, 0.0, 0.0, 0.0 }, +}; + +SlideParams N(SlideData2) = { + .heading = 270.0f, + .maxDescendAccel = 0.5f, + .launchVelocity = -0.18f, + .maxDescendVelocity = 18.0f, + .integrator = { 10.9716, -0.34, 0.003, -0.012 }, +}; + +EvtScript N(EVS_UpdateSliding1) = { + EVT_SET(LVar0, EVT_PTR(N(SlideData1))) + EVT_CALL(N(SetPlayerSliding)) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_UpdateSliding2) = { + EVT_SET(LVar0, EVT_PTR(N(SlideData2))) + EVT_CALL(N(SetPlayerSliding)) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_UseSlide1) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_WAIT(10) + EVT_THREAD + EVT_CALL(PlaySoundAtCollider, COLLIDER_st1, SOUND_20A2, 0) + EVT_CALL(MakeLerp, 0, -80, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_se1, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_WAIT(15) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_st1, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(PlayerMoveTo, -440, 60, 30) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_WAIT(100) + EVT_THREAD + EVT_CALL(PlaySoundAtCollider, COLLIDER_st1, SOUND_20A2, 0) + EVT_CALL(MakeLerp, -80, 0, 30, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_se1, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_st1, COLLIDER_FLAGS_UPPER_MASK) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_UseSlide2) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_WAIT(10) + EVT_THREAD + EVT_CALL(PlaySoundAtCollider, COLLIDER_st2, SOUND_20A2, 0) + EVT_CALL(MakeLerp, 0, 80, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_se2, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_WAIT(15) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_st2, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(PlayerMoveTo, 543, 50, 20) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_WAIT(100) + EVT_THREAD + EVT_CALL(PlaySoundAtCollider, COLLIDER_st2, SOUND_20A2, 0) + EVT_CALL(MakeLerp, 80, 0, 30, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_se2, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_st2, COLLIDER_FLAGS_UPPER_MASK) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindSlideTriggers1) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_UseSlide1)), TRIGGER_WALL_PRESS_A, COLLIDER_st1, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_UpdateSliding1)), TRIGGER_FLOOR_TOUCH, COLLIDER_suberi1, 1, 0) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_SURFACE, COLLIDER_suberi1, SURFACE_TYPE_SLIDE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindSlideTriggers2) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_UseSlide2)), TRIGGER_WALL_PRESS_A, COLLIDER_st2, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_UpdateSliding2)), TRIGGER_FLOOR_TOUCH, COLLIDER_suberi01, 1, 0) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_SURFACE, COLLIDER_suberi01, SURFACE_TYPE_SLIDE) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_02/915D70.c b/src/world/area_iwa/iwa_02/915D70.c deleted file mode 100644 index 1b84220863..0000000000 --- a/src/world/area_iwa/iwa_02/915D70.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "iwa_02.h" - -static char* N(exit_str_0) = "iwa_01"; -static char* N(exit_str_1) = "iwa_04"; - -#include "world/common/enemy/CleftAI.inc.c" - -#include "world/common/StashVars.inc.c" - -#include "world/common/GetItemName.inc.c" diff --git a/src/world/area_iwa/iwa_02/iwa_02.h b/src/world/area_iwa/iwa_02/iwa_02.h index 9be146ccc0..22506e2590 100644 --- a/src/world/area_iwa/iwa_02/iwa_02.h +++ b/src/world/area_iwa/iwa_02/iwa_02.h @@ -2,8 +2,24 @@ /// @brief Mt Rugged - Mt Rugged 3 #include "common.h" -#include "../iwa.h" #include "message_ids.h" #include "map.h" +#include "../iwa.h" +#include "mapfs/iwa_02_shape.h" +#include "mapfs/iwa_02_hit.h" + +#include "sprite/npc/MontyMole.h" +#include "sprite/npc/Cleft.h" +#include "sprite/npc/Bubulb.h" + +enum { + NPC_Cleft_01 = 0, + NPC_Cleft_02 = 1, + NPC_Cleft_03 = 2, + NPC_MontyMole = 3, + NPC_MontyMole_Hole = 4, + NPC_Bubulb = 5, +}; + #define NAMESPACE iwa_02 diff --git a/src/world/area_iwa/iwa_02/iwa_02_1_main.c b/src/world/area_iwa/iwa_02/iwa_02_1_main.c new file mode 100644 index 0000000000..142228a1ec --- /dev/null +++ b/src/world/area_iwa/iwa_02/iwa_02_1_main.c @@ -0,0 +1,48 @@ +#include "iwa_02.h" +#include "entity.h" + +extern EvtScript N(EVS_Main); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(DefaultNPCs); + +EntryList N(Entrances) = { + [iwa_02_ENTRY_0] { -172.0, 0.0, 164.0, 90.0 }, + [iwa_02_ENTRY_1] { -194.0, 238.0, 238.0, 90.0 }, + [iwa_02_ENTRY_2] { 1183.0, 288.0, 60.0, 270.0 }, + [iwa_02_ENTRY_3] { 1231.0, 50.0, 243.0, 270.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, + .tattle = { MSG_MapTattle_iwa_02 }, +}; + +EvtScript N(EVS_ExitWalk_iwa_01_2) = EVT_EXIT_WALK(60, iwa_02_ENTRY_0, "iwa_01", iwa_01_ENTRY_2); +EvtScript N(EVS_ExitWalk_iwa_01_3) = EVT_EXIT_WALK(60, iwa_02_ENTRY_1, "iwa_01", iwa_01_ENTRY_3); +EvtScript N(EVS_ExitWalk_iwa_04_0) = EVT_EXIT_WALK(60, iwa_02_ENTRY_2, "iwa_04", iwa_04_ENTRY_0); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_01_2)), TRIGGER_FLOOR_ABOVE, COLLIDER_deili1, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_01_3)), TRIGGER_FLOOR_ABOVE, COLLIDER_deili2, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_04_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deili3, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_MT_RUGGED) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_DEFAULT() + EVT_CALL(MakeNpcs, TRUE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_CALL(SetMusicTrack, 0, SONG_MT_RUGGED, 0, 8) + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_WAIT(1) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt1, COLLIDER_FLAGS_UPPER_MASK) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_02/iwa_02_2_entity.c b/src/world/area_iwa/iwa_02/iwa_02_2_entity.c new file mode 100644 index 0000000000..b737531eb4 --- /dev/null +++ b/src/world/area_iwa/iwa_02/iwa_02_2_entity.c @@ -0,0 +1,11 @@ +#include "iwa_02.h" +#include "entity.h" + +EvtScript N(EVS_MakeEntities) = { + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), 64, 0, 95, 0, 120, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), 307, 67, 99, 0, 120, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), 700, 238, 15, 0, 90, MAKE_ENTITY_END) + EVT_CALL(MakeItemEntity, ITEM_STAR_PIECE, 35, 167, 120, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA02_Item_StarPiece) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_02/iwa_02_3_npc.c b/src/world/area_iwa/iwa_02/iwa_02_3_npc.c new file mode 100644 index 0000000000..8cb51ad8ba --- /dev/null +++ b/src/world/area_iwa/iwa_02/iwa_02_3_npc.c @@ -0,0 +1,238 @@ +#include "iwa_02.h" + +#include "world/common/enemy/complete/MontyMole_GroundAmbush.inc.c" +#include "world/common/enemy/complete/MontyMole_WallAmbush.inc.c" +#include "world/common/enemy/complete/Cleft.inc.c" + +EvtScript N(EVS_NpcAuxAI_Bubulb) = { + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_Bubulb) = { + .height = 42, + .radius = 26, + .level = 99, + .otherAI = &N(EVS_NpcAuxAI_Bubulb), +}; + +#include "world/common/complete/GiveReward.inc.c" + +StaticNpc N(NpcData_Cleft_01) = { + .id = NPC_Cleft_01, + .settings = &N(NpcSettings_Cleft), + .pos = { 526.0f, 238.0f, 69.0f }, + .yaw = 0, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW, + .drops = CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 526, 238, 69 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 526, 238, 69 }, + .detectSize = { 200 }, + } + }, + .animations = CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_Cleft_02) = { + .id = NPC_Cleft_02, + .settings = &N(NpcSettings_Cleft), + .pos = { 450.0f, 50.0f, 215.0f }, + .yaw = 90, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW, + .drops = CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 450, 50, 215 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 450, 50, 215 }, + .detectSize = { 200 }, + } + }, + .animations = CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_Cleft_03) = { + .id = NPC_Cleft_03, + .settings = &N(NpcSettings_Cleft), + .pos = { 90.0f, 0.0f, 160.0f }, + .yaw = 270, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW, + .drops = CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 90, 0, 160 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 90, 0, 160 }, + .detectSize = { 200 }, + } + }, + .animations = CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_MontyMole_01)[] = { + { + .id = NPC_MontyMole, + .settings = &N(NpcSettings_MontyMole_WallAmbush), + .pos = { 867.0f, 0.0f, 101.0f }, + .yaw = 0, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .drops = MONTY_MOLE_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 867, 0, 101 }, + .wanderSize = { 40 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 867, 0, 101 }, + .detectSize = { 150 }, + } + }, + .animations = MONTY_MOLE_AMBUSH_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, + }, + { + .id = NPC_MontyMole_Hole, + .settings = &N(NpcSettings_MontyMole_WallAmbush_Hole), + .pos = { 867.0f, 0.0f, 101.0f }, + .yaw = 0, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_NO_AI | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 0, 0, 0 }, + .wanderSize = { 0 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 0, 0, 0 }, + .detectSize = { 0 }, + } + }, + .animations = MONTY_MOLE_AMBUSH_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, + }, +}; + +EvtScript N(EVS_Bulbulb_Conversation) = { + EVT_IF_EQ(AF_IWA_SpokeWithBulbulb, FALSE) + EVT_SET(LVar2, LVar0) + EVT_SET(AF_IWA_SpokeWithBulbulb, TRUE) + EVT_ELSE + EVT_SET(LVar2, LVar1) + EVT_SET(AF_IWA_SpokeWithBulbulb, FALSE) + EVT_END_IF + EVT_CALL(SpeakToPlayer, NPC_Bubulb, ANIM_Bubulb_Purple_Talk, ANIM_Bubulb_Purple_Idle, 0, LVar2) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Bubulb) = { + EVT_IF_EQ(GF_IWA02_Gift_MagicalSeed2, FALSE) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_BURROW_SURFACE, 0) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_MOLE_POP, 0) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Bubulb_Purple_PopUp) + EVT_WAIT(45) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Bubulb_Purple_Idle) + EVT_CALL(SetNpcCollisionSize, NPC_SELF, 45, 26) + EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(10.0), 0, 350, EVT_FLOAT(15.0), EVT_FLOAT(-6.5)) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Bubulb_Purple_Talk, ANIM_Bubulb_Purple_Idle, 0, MSG_CH2_001F) + EVT_GIVE_KEY_REWARD(ITEM_MAGICAL_SEED2) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Bubulb_Purple_Talk, ANIM_Bubulb_Purple_Idle, 0, MSG_CH2_0020) + EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(10.0)) + EVT_SET(GF_IWA02_Gift_MagicalSeed2, TRUE) + EVT_CALL(SetTattleMessage, NPC_Bubulb, MSG_NpcTattle_IWA_Bubulb_Revealed) + EVT_ELSE + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH3_STAR_SPIRIT_RESCUED) + EVT_SET(LVar0, MSG_CH2_0021) + EVT_SET(LVar1, MSG_CH2_0022) + EVT_CASE_LT(STORY_CH5_HIDDEN_PASSAGE_OPEN) + EVT_SET(LVar0, MSG_CH2_0023) + EVT_SET(LVar1, MSG_CH2_0024) + EVT_CASE_DEFAULT + EVT_SET(LVar0, MSG_CH2_0025) + EVT_SET(LVar1, MSG_CH2_0026) + EVT_END_SWITCH + EVT_EXEC_WAIT(N(EVS_Bulbulb_Conversation)) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Bubulb) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Bubulb))) + EVT_IF_EQ(GF_IWA02_Gift_MagicalSeed2, FALSE) + EVT_CALL(SetNpcCollisionSize, NPC_SELF, 25, 25) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Bubulb_Purple_BuriedIdle) + EVT_CALL(SetTattleMessage, NPC_Bubulb, MSG_NpcTattle_IWA_Bubulb_Hidden) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_Bubulb) = { + .id = NPC_Bubulb, + .settings = &N(NpcSettings_Bubulb), + .pos = { 1075.0f, 50.0f, 230.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_JUMPING, + .init = &N(EVS_NpcInit_Bubulb), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Bubulb_Purple_Idle, + .walk = ANIM_Bubulb_Purple_Walk, + .run = ANIM_Bubulb_Purple_Walk, + .chase = ANIM_Bubulb_Purple_Idle, + .anim_4 = ANIM_Bubulb_Purple_Idle, + .anim_5 = ANIM_Bubulb_Purple_Idle, + .death = ANIM_Bubulb_Purple_Idle, + .hit = ANIM_Bubulb_Purple_Idle, + .anim_8 = ANIM_Bubulb_Purple_Idle, + .anim_9 = ANIM_Bubulb_Purple_Idle, + .anim_A = ANIM_Bubulb_Purple_Idle, + .anim_B = ANIM_Bubulb_Purple_Idle, + .anim_C = ANIM_Bubulb_Purple_Idle, + .anim_D = ANIM_Bubulb_Purple_Idle, + .anim_E = ANIM_Bubulb_Purple_Idle, + .anim_F = ANIM_Bubulb_Purple_Idle, + }, + .tattle = MSG_NpcTattle_IWA_Bubulb_Revealed, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_Cleft_01), BTL_IWA_FORMATION_03, BTL_IWA_STAGE_01), + NPC_GROUP(N(NpcData_Cleft_02), BTL_IWA_FORMATION_01, BTL_IWA_STAGE_01), + NPC_GROUP(N(NpcData_Cleft_03), BTL_IWA_FORMATION_00, BTL_IWA_STAGE_01), + NPC_GROUP(N(NpcData_MontyMole_01), BTL_IWA_FORMATION_05, BTL_IWA_STAGE_01), + NPC_GROUP(N(NpcData_Bubulb)), + {} +}; diff --git a/src/world/area_iwa/iwa_03/918BB0.c b/src/world/area_iwa/iwa_03/918BB0.c deleted file mode 100644 index ad8d0e37ff..0000000000 --- a/src/world/area_iwa/iwa_03/918BB0.c +++ /dev/null @@ -1,27 +0,0 @@ -#include "iwa_03.h" - -static char* N(exit_str_0) = "iwa_01"; -static char* N(exit_str_1) = ""; - -#include "world/common/StashVars.inc.c" - -#include "world/common/GetItemName.inc.c" - -#include "world/common/SomeItemEntityFunc.inc.c" - -#include "world/common/IsItemBadge.inc.c" - -ApiStatus func_802402BC_918E6C(Evt* script, s32 isInitialCall) { - s32 result = -1; - - if (gPlayerStatus.lastGoodPosition.y > 200.0) { - result = 0; - } - if (gPlayerStatus.lastGoodPosition.y < 40.0) { - result = 1; - } - if (result >= 0) { - evt_set_variable(script, MapVar(9), result); - } - return ApiStatus_BLOCK; -} diff --git a/src/world/area_iwa/iwa_03/918EF0.c b/src/world/area_iwa/iwa_03/918EF0.c deleted file mode 100644 index 74865c4968..0000000000 --- a/src/world/area_iwa/iwa_03/918EF0.c +++ /dev/null @@ -1,9 +0,0 @@ -#include "iwa_03.h" - -#include "world/common/enemy/CleftAI.inc.c" - -ApiStatus func_80241320_919ED0(Evt* script, s32 isInitialCall) { - gPlayerStatus.slideParams = script->varTablePtr[0]; - gPlayerStatus.flags |= PS_FLAGS_10; - return ApiStatus_DONE2; -} diff --git a/src/world/area_iwa/iwa_03/iwa_03.h b/src/world/area_iwa/iwa_03/iwa_03.h index b2e154981a..a8b029bcdd 100644 --- a/src/world/area_iwa/iwa_03/iwa_03.h +++ b/src/world/area_iwa/iwa_03/iwa_03.h @@ -2,8 +2,26 @@ /// @brief Mt Rugged - Mt Rugged 4 #include "common.h" -#include "../iwa.h" #include "message_ids.h" #include "map.h" +#include "../iwa.h" +#include "mapfs/iwa_03_shape.h" +#include "mapfs/iwa_03_hit.h" + +#include "sprite/npc/MontyMole.h" +#include "sprite/npc/Cleft.h" + +enum { + NPC_Cleft_01 = 0, + NPC_Cleft_02 = 1, + NPC_Cleft_03 = 2, + NPC_MontyMole = 3, + NPC_MontyMole_Hole = 4, +}; + +enum { + MV_PlayerCliffLevel = MapVar(9), +}; + #define NAMESPACE iwa_03 diff --git a/src/world/area_iwa/iwa_03/iwa_03_1_main.c b/src/world/area_iwa/iwa_03/iwa_03_1_main.c new file mode 100644 index 0000000000..7a96991909 --- /dev/null +++ b/src/world/area_iwa/iwa_03/iwa_03_1_main.c @@ -0,0 +1,42 @@ +#include "iwa_03.h" + +extern EvtScript N(EVS_Main); +extern EvtScript N(EVS_BindSlideTriggers); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(DefaultNPCs); + +EntryList N(Entrances) = { + [iwa_03_ENTRY_0] { 14.0, -18.0, 7.0, 270.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, + .tattle = { MSG_MapTattle_iwa_03 }, +}; + +EvtScript N(EVS_ExitWalk_iwa_01_1) = EVT_EXIT_WALK(60, iwa_03_ENTRY_0, "iwa_01", iwa_01_ENTRY_1); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_01_1)), TRIGGER_FLOOR_ABOVE, COLLIDER_deili1, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_MT_RUGGED) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_DEFAULT() + EVT_CALL(MakeNpcs, TRUE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_BindSlideTriggers)) + EVT_CALL(SetMusicTrack, 0, SONG_MT_RUGGED, 0, 8) + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_WAIT(1) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_patapata, COLLIDER_FLAGS_UPPER_MASK) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_03/iwa_03_2_entity.c b/src/world/area_iwa/iwa_03/iwa_03_2_entity.c new file mode 100644 index 0000000000..84ab6f1657 --- /dev/null +++ b/src/world/area_iwa/iwa_03/iwa_03_2_entity.c @@ -0,0 +1,83 @@ +#include "iwa_03.h" +#include "entity.h" + +#include "world/common/atomic/Chest.inc.c" + +MAP_RODATA_PAD(1,entity); + +API_CALLABLE(N(MonitorPlayerAltitude)) { + s32 result = -1; + + if (gPlayerStatus.lastGoodPosition.y > 200.0) { + result = 0; + } + if (gPlayerStatus.lastGoodPosition.y < 40.0) { + result = 1; + } + if (result >= 0) { + evt_set_variable(script, MV_PlayerCliffLevel, result); + } + return ApiStatus_BLOCK; +} + +EvtScript N(EVS_TetherCameraToPlayer) = { + EVT_LOOP(0) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(SetCamTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_UseSpring) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(SetPlayerActionState, ACTION_STATE_LAUNCH) + EVT_WAIT(1) + EVT_EXEC_GET_TID(N(EVS_TetherCameraToPlayer), LVarA) + EVT_IF_EQ(MV_PlayerCliffLevel, 0) + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.4)) + EVT_CALL(PlayerJump, -1582, 23, 60, 15) + EVT_ELSE + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(0.7)) + EVT_CALL(PlayerJump, -1582, 408, -60, 40) + EVT_END_IF + EVT_KILL_THREAD(LVarA) + EVT_CALL(SetPlayerActionState, ACTION_STATE_IDLE) + EVT_CALL(DisablePlayerPhysics, FALSE) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_OpenChest) = EVT_OPEN_CHEST_BADGE(ITEM_DAMAGE_DODGE_B, GF_IWA03_Chest_DamageDodgeB); + +EvtScript N(EVS_MakeEntities) = { + EVT_THREAD + EVT_CALL(N(MonitorPlayerAltitude)) + EVT_END_THREAD + EVT_CALL(MakeEntity, EVT_PTR(Entity_ScriptSpring), -1580, 23, 20, 0, MAKE_ENTITY_END) + EVT_CALL(AssignScript, EVT_PTR(N(EVS_UseSpring))) + EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), -1775, 408, -120, 0, ITEM_COIN, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_IWA03_ItemBlock_Coin) + EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), -620, -15, -69, 0, ITEM_MUSHROOM, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_IWA03_ItemBlock_Mushroom) + EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), -1090, 408, -130, 0, ITEM_HONEY_SYRUP, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_IWA03_ItemBlock_HoneySyrup) + EVT_CALL(MakeItemEntity, ITEM_LETTER25, -20, 95, -85, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA03_Item_Letter25) + EVT_CALL(MakeItemEntity, ITEM_STAR_PIECE, -1865, 23, 20, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA03_Item_StarPiece) + EVT_CALL(MakeItemEntity, ITEM_COIN, -1815, 23, 20, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA03_Item_CoinC) + EVT_CALL(MakeItemEntity, ITEM_COIN, -1915, 23, 20, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA03_Item_CoinD) + EVT_CALL(MakeItemEntity, ITEM_COIN, -1840, 23, 63, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA03_Item_CoinE) + EVT_CALL(MakeItemEntity, ITEM_COIN, -1890, 23, 63, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA03_Item_CoinF) + EVT_CALL(MakeItemEntity, ITEM_COIN, -1840, 23, -23, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA03_Item_CoinG) + EVT_CALL(MakeItemEntity, ITEM_COIN, -1890, 23, -23, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA03_Item_CoinH) + EVT_CALL(MakeItemEntity, ITEM_COIN, -1707, -60, 0, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA03_Item_CoinA) + EVT_CALL(MakeItemEntity, ITEM_COIN, -1707, -60, 60, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA03_Item_CoinB) + EVT_CALL(MakeEntity, EVT_PTR(Entity_Chest), -1717, 93, -127, 0, 0, MAKE_ENTITY_END) + EVT_CALL(AssignChestFlag, GF_IWA03_Chest_DamageDodgeB) + EVT_CALL(AssignScript, EVT_PTR(N(EVS_OpenChest))) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_03/iwa_03_3_npc.c b/src/world/area_iwa/iwa_03/iwa_03_3_npc.c new file mode 100644 index 0000000000..f3bc065223 --- /dev/null +++ b/src/world/area_iwa/iwa_03/iwa_03_3_npc.c @@ -0,0 +1,132 @@ +#include "iwa_03.h" + +#include "world/common/enemy/complete/MontyMole_GroundAmbush.inc.c" +#include "world/common/enemy/complete/Cleft.inc.c" + +StaticNpc N(NpcData_Cleft_01) = { + .id = NPC_Cleft_01, + .settings = &N(NpcSettings_Cleft), + .pos = { -525.0f, -75.0f, 60.0f }, + .yaw = 0, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .drops = CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { -525, -75, 60 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { -525, -75, 60 }, + .detectSize = { 250 }, + } + }, + .animations = CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_Cleft_02) = { + .id = NPC_Cleft_02, + .settings = &N(NpcSettings_Cleft), + .pos = { -1686.0f, -60.0f, 180.0f }, + .yaw = 0, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .drops = CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { -1686, -60, 180 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { -1686, -60, 180 }, + .detectSize = { 250 }, + } + }, + .animations = CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_Cleft_03) = { + .id = NPC_Cleft_03, + .settings = &N(NpcSettings_Cleft), + .pos = { -1300.0f, 408.0f, -125.0f }, + .yaw = 0, + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .drops = CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { -1300, 408, -125 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { -1290, 408, -125 }, + .detectSize = { 140 }, + } + }, + .animations = CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_MontyMole)[] = { + { + .id = NPC_MontyMole, + .settings = &N(NpcSettings_MontyMole_GroundAmbush), + .pos = { -1000.0f, 23.0f, 60.0f }, + .yaw = 0, + .flags = NPC_FLAG_LOCK_ANIMS, + .drops = MONTY_MOLE_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { -1000, 23, 60 }, + .wanderSize = { 40 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { -1000, 23, 60 }, + .detectSize = { 250 }, + } + }, + .animations = MONTY_MOLE_AMBUSH_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, + }, + { + .id = NPC_MontyMole_Hole, + .settings = &N(NpcSettings_MontyMole_GroundAmbush_Hole), + .pos = { -1000.0f, 23.0f, 60.0f }, + .yaw = 0, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_NO_AI | NPC_FLAG_100 | NPC_FLAG_GRAVITY | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .territory = { + .wander = { + .isFlying = TRUE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { 0, 0, 0 }, + .wanderSize = { 0 }, + .detectShape = SHAPE_CYLINDER, + .detectPos = { 0, 0, 0 }, + .detectSize = { 0 }, + } + }, + .animations = MONTY_MOLE_AMBUSH_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, + }, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_Cleft_01), BTL_IWA_FORMATION_03, BTL_IWA_STAGE_00), + NPC_GROUP(N(NpcData_Cleft_02), BTL_IWA_FORMATION_00, BTL_IWA_STAGE_00), + NPC_GROUP(N(NpcData_Cleft_03), BTL_IWA_FORMATION_01, BTL_IWA_STAGE_00), + NPC_GROUP(N(NpcData_MontyMole), BTL_IWA_FORMATION_09, BTL_IWA_STAGE_00), + {} +}; diff --git a/src/world/area_iwa/iwa_03/iwa_03_4_slide.c b/src/world/area_iwa/iwa_03/iwa_03_4_slide.c new file mode 100644 index 0000000000..24149cfb07 --- /dev/null +++ b/src/world/area_iwa/iwa_03/iwa_03_4_slide.c @@ -0,0 +1,68 @@ +#include "iwa_03.h" + +SlideParams N(SlideData) = { + .heading = 89.0f, + .maxDescendAccel = 0.41f, + .launchVelocity = -0.25f, + .maxDescendVelocity = 16.0f, + .integrator = { 9.612, -0.452, 0.003, -0.023 }, +}; + +API_CALLABLE(N(SetPlayerSliding)) { + gPlayerStatus.slideParams = script->varTablePtr[0]; + gPlayerStatus.flags |= PS_FLAGS_10; + return ApiStatus_DONE2; +} + +EvtScript N(EVS_UpdateSliding) = { + EVT_SET(LVar0, EVT_PTR(N(SlideData))) + EVT_CALL(N(SetPlayerSliding)) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_UseSlide) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_WAIT(10) + EVT_THREAD + EVT_CALL(PlaySoundAtCollider, COLLIDER_st1, SOUND_20A2, 0) + EVT_CALL(MakeLerp, 0, -80, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_se1, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_WAIT(15) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_st1, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0)) + EVT_CALL(PlayerMoveTo, -1460, -60, 0) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_WAIT(100) + EVT_THREAD + EVT_CALL(PlaySoundAtCollider, COLLIDER_st1, SOUND_20A2, 0) + EVT_CALL(MakeLerp, -80, 0, 30, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateModel, MODEL_se1, LVar0, 0, -1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_st1, COLLIDER_FLAGS_UPPER_MASK) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindSlideTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_UseSlide)), TRIGGER_WALL_PRESS_A, COLLIDER_st1, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_UpdateSliding)), TRIGGER_FLOOR_TOUCH, COLLIDER_suberi0, 1, 0) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_SURFACE, COLLIDER_suberi0, SURFACE_TYPE_SLIDE) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_04/91B8E0.c b/src/world/area_iwa/iwa_04/91B8E0.c deleted file mode 100644 index 13430ed0c6..0000000000 --- a/src/world/area_iwa/iwa_04/91B8E0.c +++ /dev/null @@ -1,34 +0,0 @@ -#include "iwa_04.h" - -static char* N(exit_str_0) = "iwa_02"; -static char* N(exit_str_1) = "sbk_99"; - -ApiStatus func_80240000_91B8E0(Evt* script, s32 isInitialCall) { - s32 status = -1; - - if (gPlayerStatus.lastGoodPosition.y > -100.0) { - status = 0; - } - if (gPlayerStatus.lastGoodPosition.y < -240.0) { - status = 1; - } - if (status >= 0) { - evt_set_variable(script, MapVar(9), status); - } - - return ApiStatus_BLOCK; -} - -#include "world/common/enemy/CleftAI.inc.c" - -ApiStatus func_80241060_91C940(Evt* script, s32 isInitialCall) { - gCameras[CAM_DEFAULT].unk_498 = 1.0f; - return ApiStatus_BLOCK; -} - -ApiStatus func_8024107C_91C95C(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - Npc* npc = resolve_npc(script, NPC_SELF); - npc->renderYaw = (f32) evt_get_variable(script, *args++); - return ApiStatus_DONE2; -} diff --git a/src/world/area_iwa/iwa_04/iwa_04.h b/src/world/area_iwa/iwa_04/iwa_04.h index 421fc1eed7..74a553a43c 100644 --- a/src/world/area_iwa/iwa_04/iwa_04.h +++ b/src/world/area_iwa/iwa_04/iwa_04.h @@ -2,8 +2,23 @@ /// @brief Mt Rugged - Suspension Bridge #include "common.h" -#include "../iwa.h" #include "message_ids.h" #include "map.h" +#include "../iwa.h" +#include "mapfs/iwa_04_shape.h" +#include "mapfs/iwa_04_hit.h" + +#include "sprite/npc/Buzzar.h" +#include "sprite/npc/Cleft.h" + +enum { + NPC_Cleft = 0, + NPC_Buzzar = 1, +}; + +enum { + MV_PlayerCliffLevel = MapVar(9), +}; + #define NAMESPACE iwa_04 diff --git a/src/world/area_iwa/iwa_04/iwa_04_0_header.c b/src/world/area_iwa/iwa_04/iwa_04_0_header.c new file mode 100644 index 0000000000..7b6a81cce0 --- /dev/null +++ b/src/world/area_iwa/iwa_04/iwa_04_0_header.c @@ -0,0 +1,23 @@ +#include "iwa_04.h" +#include "entity.h" + +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [iwa_04_ENTRY_0] { -630.0, 0.0, -49.0, 90.0 }, + [iwa_04_ENTRY_1] { 770.0, -250.0, -40.0, 270.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, + .tattle = { MSG_MapTattle_iwa_04 }, +}; + +EvtScript N(EVS_SetupMusic) = { + EVT_CALL(SetMusicTrack, 0, SONG_MT_RUGGED, 0, 8) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_04/iwa_04_1_main.c b/src/world/area_iwa/iwa_04/iwa_04_1_main.c new file mode 100644 index 0000000000..97c659f456 --- /dev/null +++ b/src/world/area_iwa/iwa_04/iwa_04_1_main.c @@ -0,0 +1,39 @@ +#include "iwa_04.h" + +extern EvtScript N(EVS_MakeEntities); +extern EvtScript N(EVS_SetupMusic); +extern NpcGroupList N(DefaultNPCs); + +EvtScript N(EVS_ExitWalk_iwa_02_2) = EVT_EXIT_WALK(60, iwa_04_ENTRY_0, "iwa_02", iwa_02_ENTRY_2); +EvtScript N(EVS_ExitWalk_sbk_99_0) = EVT_EXIT_WALK(60, iwa_04_ENTRY_1, "sbk_99", sbk_99_ENTRY_0); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_02_2)), TRIGGER_FLOOR_ABOVE, COLLIDER_deiliw, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_sbk_99_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deilie, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_MT_RUGGED) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_NO_LEAD() + EVT_CALL(MakeNpcs, TRUE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_CALL(ParentColliderToModel, COLLIDER_o962, MODEL_o962) + EVT_CALL(ParentColliderToModel, COLLIDER_o979, MODEL_o979) + EVT_CALL(ParentColliderToModel, COLLIDER_o980, MODEL_o980) + EVT_CALL(ParentColliderToModel, COLLIDER_o981, MODEL_o981) + EVT_CALL(ParentColliderToModel, COLLIDER_o982, MODEL_o982) + EVT_CALL(ParentColliderToModel, COLLIDER_o983, MODEL_o983) + EVT_CALL(ParentColliderToModel, COLLIDER_o984, MODEL_o984) + EVT_CALL(ParentColliderToModel, COLLIDER_o985, MODEL_o985) + EVT_CALL(ParentColliderToModel, COLLIDER_o992, MODEL_o992) + EVT_CALL(ParentColliderToModel, COLLIDER_o993, MODEL_o993) + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_04/iwa_04_2_entity.c b/src/world/area_iwa/iwa_04/iwa_04_2_entity.c new file mode 100644 index 0000000000..05908c2a3b --- /dev/null +++ b/src/world/area_iwa/iwa_04/iwa_04_2_entity.c @@ -0,0 +1,64 @@ +#include "iwa_04.h" +#include "entity.h" + +ApiStatus N(MonitorPlayerAltitude)(Evt* script, s32 isInitialCall) { + s32 status = -1; + + if (gPlayerStatus.lastGoodPosition.y > -100.0) { + status = 0; + } + if (gPlayerStatus.lastGoodPosition.y < -240.0) { + status = 1; + } + if (status >= 0) { + evt_set_variable(script, MV_PlayerCliffLevel, status); + } + + return ApiStatus_BLOCK; +} + +EvtScript N(TetherCameraToPlayer) = { + EVT_LOOP(0) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(SetCamTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_UseSpring) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(SetPlayerActionState, ACTION_STATE_LAUNCH) + EVT_WAIT(1) + EVT_EXEC_GET_TID(N(TetherCameraToPlayer), LVarA) + EVT_IF_EQ(MV_PlayerCliffLevel, 0) + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.4)) + EVT_CALL(PlayerJump, -560, -250, 190, 15) + EVT_ELSE + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(0.7)) + EVT_CALL(PlayerJump, -560, 0, 90, 40) + EVT_END_IF + EVT_KILL_THREAD(LVarA) + EVT_CALL(SetPlayerActionState, ACTION_STATE_IDLE) + EVT_CALL(DisablePlayerPhysics, FALSE) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_MakeEntities) = { + EVT_THREAD + EVT_CALL(N(MonitorPlayerAltitude)) + EVT_END_THREAD + EVT_CALL(MakeEntity, EVT_PTR(Entity_ScriptSpring), -561, -250, 121, 0, MAKE_ENTITY_END) + EVT_CALL(AssignScript, EVT_PTR(N(EVS_UseSpring))) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), -513, 0, -97, 0, 90, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), 600, 0, 200, 0, 270, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), 336, -140, 203, 0, 70, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), 730, -250, -95, 0, 90, MAKE_ENTITY_END) + EVT_CALL(MakeItemEntity, ITEM_LETTER10, -275, -250, 150, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_IWA04_Item_Letter10) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_04/iwa_04_3_npc.c b/src/world/area_iwa/iwa_04/iwa_04_3_npc.c new file mode 100644 index 0000000000..c81301b6d0 --- /dev/null +++ b/src/world/area_iwa/iwa_04/iwa_04_3_npc.c @@ -0,0 +1,342 @@ +#include "iwa_04.h" + +extern EvtScript N(EVS_SetupMusic); + +#include "world/common/enemy/complete/Cleft.inc.c" + +API_CALLABLE(N(func_80241060_91C940)) { + gCameras[CAM_DEFAULT].unk_498 = 1.0f; + return ApiStatus_BLOCK; +} + +API_CALLABLE(N(func_8024107C_91C95C)) { + Bytecode* args = script->ptrReadPos; + Npc* npc = resolve_npc(script, NPC_SELF); + npc->renderYaw = (f32) evt_get_variable(script, *args++); + return ApiStatus_DONE2; +} + +EvtScript N(EVS_FlapWingSounds) = { + EVT_LOOP(0) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_20EF, 0) + EVT_WAIT(16) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_MonitorFlyingAnimation) = { + EVT_LOOP(0) + EVT_LOOP(0) + EVT_CALL(GetNpcAnimation, NPC_SELF, LVar0) + EVT_IF_EQ(LVar0, ANIM_Buzzar_Anim02) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_EXEC_GET_TID(N(EVS_FlapWingSounds), LVarA) + EVT_LOOP(0) + EVT_CALL(GetNpcAnimation, NPC_SELF, LVar0) + EVT_IF_NE(LVar0, ANIM_Buzzar_Anim02) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_KILL_THREAD(LVarA) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcAuxAI_Buzzar) = { + EVT_IF_EQ(GF_IWA04_Defeated_Buzzar, TRUE) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_ELSE + EVT_EXEC(N(EVS_MonitorFlyingAnimation)) + EVT_CALL(SetNpcPos, NPC_SELF, 10, 96, -347) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcAI_Buzzar) = { + EVT_LOOP(0) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(GetNpcPos, NPC_Buzzar, LVar3, LVar4, LVar5) + EVT_IF_LT(LVar0, LVar3) + EVT_CALL(InterpNpcYaw, NPC_Buzzar, 270, 0) + EVT_ELSE + EVT_CALL(InterpNpcYaw, NPC_Buzzar, 90, 0) + EVT_END_IF + EVT_IF_GE(LVar0, 400) + EVT_IF_LT(LVar0, 450) + EVT_IF_LT(LVar2, 100) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_IF + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetMusicTrack, 0, SONG_MINIBOSS_BATTLE, 0, 8) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(GetCurrentPartner, LVar0) + EVT_IF_NE(LVar0, 0) + EVT_CALL(InterruptUsePartner) + EVT_WAIT(5) + EVT_END_IF + EVT_CALL(NpcFacePlayer, NPC_SELF, 0) + EVT_CALL(ShowMessageAtScreenPos, MSG_CH2_0030, 160, 40) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 15) + EVT_CALL(SetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_CALL(GetAngleToPlayer, NPC_SELF, LVarA) + EVT_WAIT(4) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 430, 0, -25) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_WAIT(1) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 30, 180, -600) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(100.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Buzzar_Anim05, ANIM_Buzzar_Anim05, 5, MSG_CH2_0031) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Buzzar_Anim02) + EVT_CALL(GetNpcPos, NPC_SELF, LVar2, LVar3, LVar4) + EVT_SET(LVar5, LVar3) + EVT_ADD(LVar5, 150) + EVT_CALL(MakeLerp, LVar3, LVar5, 15, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(SetNpcPos, NPC_SELF, LVar2, LVar0, LVar4) + EVT_WAIT(5) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(SetPlayerPos, 430, 0, -25) + EVT_CALL(func_802CF56C, 2) + EVT_CALL(SetNpcPos, NPC_SELF, 538, 200, -25) + EVT_CALL(EnableNpcShadow, NPC_SELF, TRUE) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamPosA, CAM_DEFAULT, 0, 0) + EVT_CALL(SetCamPosB, CAM_DEFAULT, 100, -100) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 600) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_THREAD + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 40) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 500) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, EVT_FLOAT(0.5), 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(func_802CF56C, 2) + EVT_END_THREAD + EVT_CALL(PlayerFaceNpc, NPC_SELF, FALSE) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_1002A) + EVT_CALL(NpcFacePlayer, NPC_SELF, 0) + EVT_CALL(GetNpcPos, NPC_SELF, LVar2, LVar3, LVar4) + EVT_SET(LVar5, LVar3) + EVT_SUB(LVar5, 150) + EVT_CALL(MakeLerp, LVar3, LVar5, 15, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(SetNpcPos, NPC_SELF, LVar2, LVar0, LVar4) + EVT_WAIT(5) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(SetNpcAnimation, NPC_Buzzar, ANIM_Buzzar_Anim01) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_WAIT(30) + EVT_CALL(SetNpcAnimation, NPC_Buzzar, ANIM_Buzzar_Anim07) + EVT_WAIT(30) + EVT_CALL(SetNpcAnimation, NPC_Buzzar, ANIM_Buzzar_Anim08) + EVT_WAIT(30) + EVT_CALL(SetNpcAnimation, NPC_Buzzar, ANIM_Buzzar_Anim09) + EVT_WAIT(30) + EVT_CALL(SetNpcAnimation, NPC_Buzzar, ANIM_Buzzar_Anim0A) + EVT_WAIT(30) + EVT_CALL(SetNpcAnimation, NPC_Buzzar, ANIM_Buzzar_Anim01) + EVT_WAIT(30) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, 0, LVar2) + EVT_ADD(LVar1, 20) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 275) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_WAIT(10) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Buzzar_Anim03, ANIM_Buzzar_Anim01, 0, MSG_CH2_0032) + EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(90.0), 50, 350, EVT_FLOAT(15.0), EVT_FLOAT(-12.0)) + EVT_CALL(ShowChoice, MSG_Choice_0017) + EVT_CALL(EndSpeech, NPC_SELF, ANIM_Buzzar_Anim03, ANIM_Buzzar_Anim01, 0) + EVT_SET(LVarA, LVar0) + EVT_SWITCH(LVarA) + EVT_CASE_EQ(0) + EVT_SET(LVarB, MSG_CH2_0033) + EVT_SET(LVarC, ANIM_Buzzar_Anim04) + EVT_CASE_EQ(1) + EVT_SET(LVarB, MSG_CH2_0034) + EVT_SET(LVarC, ANIM_Buzzar_Anim03) + EVT_CASE_EQ(2) + EVT_SET(LVarB, MSG_CH2_0035) + EVT_SET(LVarC, ANIM_Buzzar_Anim04) + EVT_END_SWITCH + EVT_WAIT(10) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, 0, LVar2) + EVT_ADD(LVar1, 20) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 275) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_WAIT(10) + EVT_CALL(SpeakToPlayer, NPC_SELF, LVarC, ANIM_Buzzar_Anim01, 0, LVarB) + EVT_IF_EQ(LVarA, 1) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Buzzar_Anim06) + EVT_WAIT(30) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Buzzar_Anim02) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_CALL(GetNpcPos, NPC_SELF, LVar2, LVar3, LVar4) + EVT_SET(LVar5, LVar3) + EVT_ADD(LVar5, 150) + EVT_CALL(MakeLerp, LVar3, LVar5, 15, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(SetNpcPos, NPC_SELF, LVar2, LVar0, LVar4) + EVT_WAIT(5) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(SetNpcPos, NPC_SELF, 10, 96, -347) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Buzzar_Anim05) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_ELSE + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_WAIT(5) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_CALL(StartBossBattle, SONG_SPECIAL_BATTLE) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcDefeat_Buzzar) = { + EVT_CALL(GetBattleOutcome, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(OUTCOME_PLAYER_WON) + EVT_SET(GF_IWA04_Defeated_Buzzar, TRUE) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_CALL(SetNpcPos, NPC_SELF, 530, 15, -20) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Buzzar_Anim0B) + EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(90.0), 50, 350, EVT_FLOAT(15.0), EVT_FLOAT(-12.0)) + EVT_WAIT(10) + EVT_CALL(SpeakToPlayer, NPC_SELF, -1, -1, 0, MSG_CH2_0036) + EVT_THREAD + EVT_CALL(GetNpcYaw, NPC_SELF, LVar0) + EVT_LOOP(55) + EVT_ADD(LVar0, 30) + EVT_CALL(SetNpcRotation, NPC_SELF, 0, LVar0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(0.75)) + EVT_CALL(NpcJump1, NPC_SELF, 400, -200, -300, 60) + EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION) + EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(2.5)) + EVT_CASE_EQ(OUTCOME_PLAYER_LOST) + EVT_CASE_EQ(OUTCOME_PLAYER_FLED) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_Buzzar) = { + .defaultAnim = ANIM_Buzzar_Anim05, + .height = 32, + .radius = 32, + .otherAI = &N(EVS_NpcAuxAI_Buzzar), + .ai = &N(EVS_NpcAI_Buzzar), + .onDefeat = &N(EVS_NpcDefeat_Buzzar), +}; + +StaticNpc N(NpcData_Cleft) = { + .id = NPC_Cleft, + .settings = &N(NpcSettings_Cleft), + .pos = { -412.0f, -250.0f, 143.0f }, + .yaw = 0, + .flags = NPC_FLAG_100 | NPC_FLAG_JUMPING, + .drops = CLEFT_DROPS, + .territory = { + .wander = { + .isFlying = FALSE, + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, + .wanderShape = SHAPE_CYLINDER, + .centerPos = { -412, -250, 143 }, + .wanderSize = { 30 }, + .detectShape = SHAPE_RECT, + .detectPos = { -355, -250, 105 }, + .detectSize = { 175, 195 }, + } + }, + .animations = CLEFT_ANIMS, + .aiDetectFlags = AI_DETECT_SIGHT, +}; + +StaticNpc N(NpcData_Buzzar) = { + .id = NPC_Buzzar, + .settings = &N(NpcSettings_Buzzar), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = NPC_FLAG_4 | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_40000 | NPC_FLAG_200000 | NPC_FLAG_NO_DROPS, + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = STANDARD_HEART_DROPS(3), + .flowerDrops = STANDARD_FLOWER_DROPS(2), + .minCoinBonus = 1, + .maxCoinBonus = 3, + }, + .animations = { + .idle = ANIM_Buzzar_Anim01, + .walk = ANIM_Buzzar_Anim01, + .run = ANIM_Buzzar_Anim01, + .chase = ANIM_Buzzar_Anim01, + .anim_4 = ANIM_Buzzar_Anim01, + .anim_5 = ANIM_Buzzar_Anim01, + .death = ANIM_Buzzar_Anim0B, + .hit = ANIM_Buzzar_Anim0B, + .anim_8 = ANIM_Buzzar_Anim01, + .anim_9 = ANIM_Buzzar_Anim01, + .anim_A = ANIM_Buzzar_Anim01, + .anim_B = ANIM_Buzzar_Anim01, + .anim_C = ANIM_Buzzar_Anim01, + .anim_D = ANIM_Buzzar_Anim01, + .anim_E = ANIM_Buzzar_Anim01, + .anim_F = ANIM_Buzzar_Anim01, + }, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_Cleft), BTL_IWA_FORMATION_01, BTL_IWA_STAGE_01), + NPC_GROUP(N(NpcData_Buzzar), BTL_IWA_FORMATION_0C, BTL_IWA_STAGE_02), + {} +}; diff --git a/src/world/area_iwa/iwa_10/91E570.c b/src/world/area_iwa/iwa_10/91E570.c deleted file mode 100644 index 15c7583e38..0000000000 --- a/src/world/area_iwa/iwa_10/91E570.c +++ /dev/null @@ -1,13 +0,0 @@ -#include "iwa_10.h" - -static char* N(exit_str_0) = "iwa_00"; -static char* N(exit_str_1) = "iwa_11"; - -ApiStatus func_80240000_91E570(Evt* script, s32 isInitialCall) { - if (script->varTable[15] > 720) { - script->varTable[15] = 0; - } - script->varTable[0] = script->varTable[15] * 6; - script->varTable[1] = script->varTable[15] / 2; - return ApiStatus_DONE2; -} diff --git a/src/world/area_iwa/iwa_10/91E5B0.c b/src/world/area_iwa/iwa_10/91E5B0.c deleted file mode 100644 index f7a087413f..0000000000 --- a/src/world/area_iwa/iwa_10/91E5B0.c +++ /dev/null @@ -1,5 +0,0 @@ -#include "iwa_10.h" - -#include "world/common/StashVars.inc.c" - -#include "world/common/GetItemName.inc.c" diff --git a/src/world/area_iwa/iwa_10/91E6D0.c b/src/world/area_iwa/iwa_10/91E6D0.c deleted file mode 100644 index 15397fc759..0000000000 --- a/src/world/area_iwa/iwa_10/91E6D0.c +++ /dev/null @@ -1,5 +0,0 @@ -#include "iwa_10.h" - -#include "common/UnkFloatFunc.inc.c" - -#include "world/common/atomic/SuperBlock.inc.c" diff --git a/src/world/area_iwa/iwa_10/91F5A0.c b/src/world/area_iwa/iwa_10/91F5A0.c deleted file mode 100644 index 233b7bb198..0000000000 --- a/src/world/area_iwa/iwa_10/91F5A0.c +++ /dev/null @@ -1,13 +0,0 @@ -#include "iwa_10.h" - -#include "world/common/util/ChangeNpcToPartner.inc.c" - -#include "world/common/GetNpcCollisionHeight.inc.c" - -#include "world/common/AddPlayerHandsOffset.inc.c" - -INCLUDE_ASM(s32, "world/area_iwa/iwa_10/91F5A0", func_802413E0_91F950); - -INCLUDE_ASM(s32, "world/area_iwa/iwa_10/91F5A0", func_80241434_91F9A4); - -INCLUDE_ASM(s32, "world/area_iwa/iwa_10/91F5A0", func_8024146C_91F9DC); diff --git a/src/world/area_iwa/iwa_10/91FA80.c b/src/world/area_iwa/iwa_10/91FA80.c deleted file mode 100644 index 3769c22eff..0000000000 --- a/src/world/area_iwa/iwa_10/91FA80.c +++ /dev/null @@ -1,6 +0,0 @@ -#include "iwa_10.h" - -// TODO(data) -//#define PARTY_IMAGE "party_pareta" -//#include "world/common/LoadPartyImage.inc.c" -INCLUDE_ASM(s32, "world/area_iwa/iwa_10/91FA80", func_80241510_91FA80); diff --git a/src/world/area_iwa/iwa_10/91FB20.c b/src/world/area_iwa/iwa_10/91FB20.c deleted file mode 100644 index db7d4282ce..0000000000 --- a/src/world/area_iwa/iwa_10/91FB20.c +++ /dev/null @@ -1,4 +0,0 @@ -#include "iwa_10.h" - -#include "common/foliage.inc.c" - diff --git a/src/world/area_iwa/iwa_10/iwa_10.h b/src/world/area_iwa/iwa_10/iwa_10.h index bf4be200cc..3468c3207a 100644 --- a/src/world/area_iwa/iwa_10/iwa_10.h +++ b/src/world/area_iwa/iwa_10/iwa_10.h @@ -2,8 +2,49 @@ /// @brief Mt Rugged - Train Station #include "common.h" -#include "../iwa.h" #include "message_ids.h" #include "map.h" +#include "../iwa.h" +#include "mapfs/iwa_10_shape.h" +#include "mapfs/iwa_10_hit.h" + +#include "sprite/npc/TrainStationToad.h" +#include "sprite/npc/Toad.h" +#include "sprite/npc/Toadette.h" +#include "sprite/npc/Dryite.h" +#include "sprite/npc/WorldParakarry.h" + +enum { + NPC_TrainStationToad_01 = 0, + NPC_TrainStationToad_02 = 1, + NPC_Dryite = 2, + NPC_ThreeSisters_01 = 3, + NPC_Parakarry = 4, + NPC_Toad = 5, + NPC_ThreeSisters_02 = 6, + NPC_ThreeSisters_03 = 7, + NPC_ThreeSisters_04 = 8, +}; + +enum { + MF_TrainArriveDoorOpen = MapFlag(0), + MF_TrainArrivePlayerDisembark = MapFlag(1), + MF_TrainDepartDoorOpen = MapFlag(2), + MF_TrainDepartPlayerBoard = MapFlag(3), + MF_TrainMoving = MapFlag(4), + MF_TrainReverseDir = MapFlag(5), + MF_DropBush1 = MapFlag(10), + MF_DropBush2 = MapFlag(11), + MF_DropBush3 = MapFlag(12), + MF_DropBush4 = MapFlag(13), +}; + +enum { + MV_TrainMoveDist = MapVar(0), + MV_TrainMoveSpeed = MapVar(1), + MV_ParakarryPosZ = MapVar(10), + MV_SuperBlock = MapVar(11), +}; + #define NAMESPACE iwa_10 diff --git a/src/world/area_iwa/iwa_10/iwa_10_0_header.c b/src/world/area_iwa/iwa_10/iwa_10_0_header.c new file mode 100644 index 0000000000..6ae6c8e024 --- /dev/null +++ b/src/world/area_iwa/iwa_10/iwa_10_0_header.c @@ -0,0 +1,38 @@ +#include "iwa_10.h" + +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [iwa_10_ENTRY_0] { -1250.0, 30.0, 0.0, 90.0 }, + [iwa_10_ENTRY_1] { -445.0, 215.0, -500.0, 270.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, + .tattle = { MSG_MapTattle_iwa_10 }, +}; + +EvtScript N(EVS_SetupMusic) = { + EVT_CALL(SetMusicTrack, 0, SONG_MT_RUGGED, 0, 8) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_PushSong) = { + EVT_CALL(StopSound, SOUND_80000009) + EVT_CALL(PushSong, 130, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_PopSong) = { + EVT_CALL(FadeOutMusic, 0, 500) + EVT_WAIT(15) + EVT_CALL(PopSong) + EVT_CALL(PlaySoundAtF, SOUND_80000009, 1, -560, 0, -233) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_10/iwa_10_1_main.c b/src/world/area_iwa/iwa_10/iwa_10_1_main.c new file mode 100644 index 0000000000..ae7d19a868 --- /dev/null +++ b/src/world/area_iwa/iwa_10/iwa_10_1_main.c @@ -0,0 +1,88 @@ +#include "iwa_10.h" + +extern EvtScript N(EVS_ArriveFromToadTown); +extern EvtScript N(EVS_InitializeTrainScene); +extern EvtScript N(EVS_SetupMusic); +extern EvtScript N(EVS_Scene_MeetParakarry); +extern EvtScript N(EVS_SetupFoliage); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(DefaultNPCs); + +API_CALLABLE(N(GetClockHandAngles)) { + if (script->varTable[15] > 720) { + script->varTable[15] = 0; + } + script->varTable[0] = script->varTable[15] * 6; + script->varTable[1] = script->varTable[15] / 2; + return ApiStatus_DONE2; +} + +EvtScript N(EVS_ExitWalk_iwa_00_0) = EVT_EXIT_WALK(60, iwa_10_ENTRY_1, "iwa_00", iwa_00_ENTRY_0); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_iwa_00_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deili1, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(GetLoadType, LVar1) + EVT_IF_EQ(LVar1, LOAD_FROM_FILE_SELECT) + EVT_EXEC(EnterSavePoint) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_RETURN + EVT_END_IF + EVT_CALL(GetEntryID, LVar0) + EVT_IF_EQ(LVar0, iwa_10_ENTRY_1) + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_ELSE + EVT_EXEC(N(EVS_ArriveFromToadTown)) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_MT_RUGGED) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_ALT_NO_LEAD() + EVT_SET(GF_MAP_MtRugged, TRUE) + EVT_CALL(MakeNpcs, TRUE, EVT_PTR(N(DefaultNPCs))) + EVT_CALL(ClearDefeatedEnemies) + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_EXEC_WAIT(N(EVS_InitializeTrainScene)) + EVT_EXEC(N(EVS_EnterMap)) + EVT_WAIT(1) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_EXEC(N(EVS_SetupFoliage)) + EVT_CALL(PlaySoundAtF, SOUND_80000009, 1, -560, 0, -233) + EVT_THREAD + EVT_SET(LVarF, 0) + EVT_LABEL(10) + EVT_ADD(LVarF, 1) + EVT_CALL(N(GetClockHandAngles)) + EVT_CALL(RotateModel, MODEL_o148, LVar0, 0, 0, -1) + EVT_CALL(RotateModel, MODEL_o147, LVar1, 0, 0, -1) + EVT_WAIT(10) + EVT_GOTO(10) + EVT_END_THREAD + EVT_THREAD + EVT_CALL(SetTexPanner, MODEL_o256, 2) + EVT_CALL(SetTexPanner, MODEL_o266, 2) + EVT_CALL(EnableTexPanning, MODEL_o256, TRUE) + EVT_CALL(EnableTexPanning, MODEL_o266, TRUE) + EVT_SET(LVar0, 0) + EVT_LABEL(20) + EVT_SUB(LVar0, 3000) + EVT_CALL(SetTexPanOffset, 2, 0, 0, LVar0) + EVT_WAIT(1) + EVT_GOTO(20) + EVT_END_THREAD + EVT_IF_LT(GB_StoryProgress, STORY_CH2_SPOKE_WITH_PARAKARRY) + EVT_EXEC(N(EVS_Scene_MeetParakarry)) + EVT_END_IF + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_10/iwa_10_2_npc.c b/src/world/area_iwa/iwa_10/iwa_10_2_npc.c new file mode 100644 index 0000000000..51f8b796b5 --- /dev/null +++ b/src/world/area_iwa/iwa_10/iwa_10_2_npc.c @@ -0,0 +1,426 @@ +#include "iwa_10.h" + +extern EvtScript N(EVS_DepartForToadTown); +extern StaticNpc N(NpcData_Parakarry); + +EvtScript N(EVS_NpcAuxAI_TrainStationToad_01) = { + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_TrainStationToad_01) = { + .height = 32, + .radius = 24, + .level = 99, + .otherAI = &N(EVS_NpcAuxAI_TrainStationToad_01), +}; + +NpcSettings N(NpcSettings_Toad) = { + .height = 30, + .radius = 24, + .level = 99, +}; + +NpcSettings N(NpcSettings_Unused) = { + .height = 23, + .radius = 19, + .level = 99, +}; + +NpcSettings N(NpcSettings_Dryite) = { + .height = 26, + .radius = 23, + .level = 99, +}; + +#include "world/common/complete/GiveReward.inc.c" + +EvtScript N(EVS_NpcInteract_TrainStationToad_01) = { + EVT_CALL(GetEntryID, LVar0) + EVT_IF_EQ(LVar0, iwa_10_ENTRY_0) + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_TrainStationToad_White_Talk, ANIM_TrainStationToad_White_Idle, 0, MSG_CH2_0001) + EVT_ELSE + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_TrainStationToad_White_Talk, ANIM_TrainStationToad_White_Idle, 0, MSG_CH2_0002) + EVT_CALL(ShowChoice, MSG_Choice_000C) + EVT_CALL(EndSpeech, NPC_SELF, ANIM_TrainStationToad_White_Talk, ANIM_TrainStationToad_White_Idle, 0) + EVT_IF_EQ(LVar0, 0) + EVT_EXEC(N(EVS_DepartForToadTown)) + EVT_ELSE + EVT_END_IF + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_TrainStationToad_01) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_TrainStationToad_01))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_TrainStationToad_02) = { + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(GetEntryID, LVar0) + EVT_IF_EQ(LVar0, iwa_10_ENTRY_0) + EVT_CALL(SetNpcPos, NPC_SELF, -425, 70, -20) + EVT_CALL(InterpNpcYaw, NPC_SELF, 90, 0) + EVT_ELSE + EVT_CALL(SetNpcPos, NPC_SELF, -425, 70, -20) + EVT_CALL(InterpNpcYaw, NPC_SELF, 270, 0) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Toad) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_CH2_0004) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Toad) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Toad))) + EVT_IF_GE(GB_StoryProgress, STORY_CH2_ARRIVED_AT_DRY_DRY_OUTPOST) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_ThreeSisters_02) = { + EVT_CALL(SpeakToPlayer, NPC_ThreeSisters_02, ANIM_Toadette_Pink_Talk, ANIM_Toadette_Pink_Idle, 0, MSG_CH2_000B) + EVT_CALL(SpeakToPlayer, NPC_ThreeSisters_03, ANIM_Toadette_Pink_Talk, ANIM_Toadette_Pink_Idle, 0, MSG_CH2_000C) + EVT_CALL(SpeakToPlayer, NPC_ThreeSisters_04, ANIM_Toadette_Pink_Talk, ANIM_Toadette_Pink_Idle, 0, MSG_CH2_000D) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_ThreeSisters_02) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_ThreeSisters_02))) + EVT_IF_LT(GB_StoryProgress, STORY_CH2_ARRIVED_AT_DRY_DRY_OUTPOST) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_RETURN + EVT_END_IF + EVT_IF_GE(GB_StoryProgress, STORY_CH2_STAR_SPRIT_DEPARTED) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Dryite) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH2_STAR_SPRIT_DEPARTED) + EVT_IF_EQ(AF_IWA_SpokeWIthDryite, FALSE) + EVT_SET(LVar0, MSG_CH2_0005) + EVT_SET(AF_IWA_SpokeWIthDryite, TRUE) + EVT_ELSE + EVT_SET(LVar0, MSG_CH2_0006) + EVT_SET(AF_IWA_SpokeWIthDryite, TRUE) + EVT_END_IF + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_SET(LVar0, MSG_CH2_0007) + EVT_CASE_DEFAULT + EVT_SET(LVar0, MSG_CH2_0008) + EVT_END_SWITCH + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Dryite_Green_Talk, ANIM_Dryite_Green_Idle, 0, LVar0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Dryite) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Dryite))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_ThreeSisters_01) = { + EVT_IF_LT(GB_IWA00_Whacka_HitCount, 8) + EVT_SET(LVar0, MSG_CH2_0009) + EVT_ELSE + EVT_SET(LVar0, MSG_CH2_000A) + EVT_END_IF + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Toadette_Green_Talk, ANIM_Toadette_Green_Idle, 0, LVar0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_ThreeSisters_01) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_ThreeSisters_01))) + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_TrainConductorToad)[] = { + { + .id = NPC_TrainStationToad_01, + .settings = &N(NpcSettings_TrainStationToad_01), + .pos = { -440.0f, 20.0f, 110.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_TrainStationToad_01), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_TrainStationToad_White_Idle, + .walk = ANIM_TrainStationToad_White_Idle, + .run = ANIM_TrainStationToad_White_Idle, + .chase = ANIM_TrainStationToad_White_Idle, + .anim_4 = ANIM_TrainStationToad_White_Idle, + .anim_5 = ANIM_TrainStationToad_White_Idle, + .death = ANIM_TrainStationToad_White_Idle, + .hit = ANIM_TrainStationToad_White_Idle, + .anim_8 = ANIM_TrainStationToad_White_Idle, + .anim_9 = ANIM_TrainStationToad_White_Idle, + .anim_A = ANIM_TrainStationToad_White_Idle, + .anim_B = ANIM_TrainStationToad_White_Idle, + .anim_C = ANIM_TrainStationToad_White_Idle, + .anim_D = ANIM_TrainStationToad_White_Idle, + .anim_E = ANIM_TrainStationToad_White_Idle, + .anim_F = ANIM_TrainStationToad_White_Idle, + }, + .tattle = MSG_NpcTattle_IWA_StationMaster, + }, + { + .id = NPC_TrainStationToad_02, + .settings = &N(NpcSettings_TrainStationToad_01), + .pos = { -425.0f, 70.0f, -20.0f }, + .yaw = 0, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_TrainStationToad_02), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_TrainStationToad_Idle, + .walk = ANIM_TrainStationToad_Walk, + .run = ANIM_TrainStationToad_Idle, + .chase = ANIM_TrainStationToad_Idle, + .anim_4 = ANIM_TrainStationToad_Idle, + .anim_5 = ANIM_TrainStationToad_Idle, + .death = ANIM_TrainStationToad_Idle, + .hit = ANIM_TrainStationToad_Idle, + .anim_8 = ANIM_TrainStationToad_Idle, + .anim_9 = ANIM_TrainStationToad_Idle, + .anim_A = ANIM_TrainStationToad_Idle, + .anim_B = ANIM_TrainStationToad_Idle, + .anim_C = ANIM_TrainStationToad_Idle, + .anim_D = ANIM_TrainStationToad_Idle, + .anim_E = ANIM_TrainStationToad_Idle, + .anim_F = ANIM_TrainStationToad_Idle, + }, + }, +}; + +StaticNpc N(NpcData_Toad) = { + .id = NPC_Toad, + .settings = &N(NpcSettings_Toad), + .pos = { -254.0f, 20.0f, 165.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_Toad), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Toad_Red_Idle, + .walk = ANIM_Toad_Red_Walk, + .run = ANIM_Toad_Red_Run, + .chase = ANIM_Toad_Red_Run, + .anim_4 = ANIM_Toad_Red_Idle, + .anim_5 = ANIM_Toad_Red_Idle, + .death = ANIM_Toad_Red_Disappointed, + .hit = ANIM_Toad_Red_Disappointed, + .anim_8 = ANIM_Toad_Red_Run, + .anim_9 = ANIM_Toad_Red_Run, + .anim_A = ANIM_Toad_Red_Run, + .anim_B = ANIM_Toad_Red_Run, + .anim_C = ANIM_Toad_Red_Run, + .anim_D = ANIM_Toad_Red_Run, + .anim_E = ANIM_Toad_Red_Run, + .anim_F = ANIM_Toad_Red_Run, + }, + .tattle = MSG_NpcTattle_IWA_TravelAgent, +}; + +StaticNpc N(NpcData_ThreeSisters)[] = { + { + .id = NPC_ThreeSisters_02, + .settings = &N(NpcSettings_Toad), + .pos = { -562.0f, 0.0f, 384.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_ThreeSisters_02), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Toadette_Pink_Idle, + .walk = ANIM_Toadette_Pink_Walk, + .run = ANIM_Toadette_Pink_Run, + .chase = ANIM_Toadette_Pink_Run, + .anim_4 = ANIM_Toadette_Pink_Idle, + .anim_5 = ANIM_Toadette_Pink_Idle, + .death = ANIM_Toadette_Pink_Disappointed, + .hit = ANIM_Toadette_Pink_Disappointed, + .anim_8 = ANIM_Toadette_Pink_Run, + .anim_9 = ANIM_Toadette_Pink_Run, + .anim_A = ANIM_Toadette_Pink_Run, + .anim_B = ANIM_Toadette_Pink_Run, + .anim_C = ANIM_Toadette_Pink_Run, + .anim_D = ANIM_Toadette_Pink_Run, + .anim_E = ANIM_Toadette_Pink_Run, + .anim_F = ANIM_Toadette_Pink_Run, + }, + .tattle = MSG_NpcTattle_TravelingMaidA, + }, + { + .id = NPC_ThreeSisters_03, + .settings = &N(NpcSettings_Toad), + .pos = { -582.0f, 0.0f, 406.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_ThreeSisters_02), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Toadette_Pink_Idle, + .walk = ANIM_Toadette_Pink_Walk, + .run = ANIM_Toadette_Pink_Run, + .chase = ANIM_Toadette_Pink_Run, + .anim_4 = ANIM_Toadette_Pink_Idle, + .anim_5 = ANIM_Toadette_Pink_Idle, + .death = ANIM_Toadette_Pink_Disappointed, + .hit = ANIM_Toadette_Pink_Disappointed, + .anim_8 = ANIM_Toadette_Pink_Run, + .anim_9 = ANIM_Toadette_Pink_Run, + .anim_A = ANIM_Toadette_Pink_Run, + .anim_B = ANIM_Toadette_Pink_Run, + .anim_C = ANIM_Toadette_Pink_Run, + .anim_D = ANIM_Toadette_Pink_Run, + .anim_E = ANIM_Toadette_Pink_Run, + .anim_F = ANIM_Toadette_Pink_Run, + }, + .tattle = MSG_NpcTattle_TravelingMaidB, + }, + { + .id = NPC_ThreeSisters_04, + .settings = &N(NpcSettings_Toad), + .pos = { -524.0f, 0.0f, 411.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_ThreeSisters_02), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Toadette_Pink_Idle, + .walk = ANIM_Toadette_Pink_Walk, + .run = ANIM_Toadette_Pink_Run, + .chase = ANIM_Toadette_Pink_Run, + .anim_4 = ANIM_Toadette_Pink_Idle, + .anim_5 = ANIM_Toadette_Pink_Idle, + .death = ANIM_Toadette_Pink_Disappointed, + .hit = ANIM_Toadette_Pink_Disappointed, + .anim_8 = ANIM_Toadette_Pink_Run, + .anim_9 = ANIM_Toadette_Pink_Run, + .anim_A = ANIM_Toadette_Pink_Run, + .anim_B = ANIM_Toadette_Pink_Run, + .anim_C = ANIM_Toadette_Pink_Run, + .anim_D = ANIM_Toadette_Pink_Run, + .anim_E = ANIM_Toadette_Pink_Run, + .anim_F = ANIM_Toadette_Pink_Run, + }, + .tattle = MSG_NpcTattle_TravelingMaidC, + }, +}; + +StaticNpc N(NpcData_Dryite)[] = { + { + .id = NPC_Dryite, + .settings = &N(NpcSettings_Dryite), + .pos = { -344.0f, 0.0f, 379.0f }, + .yaw = 270, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_Dryite), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Dryite_Green_Idle, + .walk = ANIM_Dryite_Green_Walk, + .run = ANIM_Dryite_Green_Run, + .chase = ANIM_Dryite_Green_Run, + .anim_4 = ANIM_Dryite_Green_Idle, + .anim_5 = ANIM_Dryite_Green_Idle, + .death = ANIM_Dryite_Green_Still, + .hit = ANIM_Dryite_Green_Still, + .anim_8 = ANIM_Dryite_Green_Idle, + .anim_9 = ANIM_Dryite_Green_Idle, + .anim_A = ANIM_Dryite_Green_Idle, + .anim_B = ANIM_Dryite_Green_Idle, + .anim_C = ANIM_Dryite_Green_Idle, + .anim_D = ANIM_Dryite_Green_Idle, + .anim_E = ANIM_Dryite_Green_Idle, + .anim_F = ANIM_Dryite_Green_Idle, + }, + .tattle = MSG_NpcTattle_IWA_StationLoiterer, + }, + { + .id = NPC_ThreeSisters_01, + .settings = &N(NpcSettings_Toad), + .pos = { -760.0f, 0.0f, 160.0f }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_ThreeSisters_01), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_Toadette_Green_Idle, + .walk = ANIM_Toadette_Green_Walk, + .run = ANIM_Toadette_Green_Run, + .chase = ANIM_Toadette_Green_Run, + .anim_4 = ANIM_Toadette_Green_Idle, + .anim_5 = ANIM_Toadette_Green_Idle, + .death = ANIM_Toadette_Green_Disappointed, + .hit = ANIM_Toadette_Green_Disappointed, + .anim_8 = ANIM_Toadette_Green_Run, + .anim_9 = ANIM_Toadette_Green_Run, + .anim_A = ANIM_Toadette_Green_Run, + .anim_B = ANIM_Toadette_Green_Run, + .anim_C = ANIM_Toadette_Green_Run, + .anim_D = ANIM_Toadette_Green_Run, + .anim_E = ANIM_Toadette_Green_Run, + .anim_F = ANIM_Toadette_Green_Run, + }, + .tattle = MSG_NpcTattle_IWA_Conservationist, + }, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_TrainConductorToad)), + NPC_GROUP(N(NpcData_Toad)), + NPC_GROUP(N(NpcData_ThreeSisters)), + NPC_GROUP(N(NpcData_Dryite)), + NPC_GROUP(N(NpcData_Parakarry)), + {} +}; diff --git a/src/world/area_iwa/iwa_10/iwa_10_3_train.c b/src/world/area_iwa/iwa_10/iwa_10_3_train.c new file mode 100644 index 0000000000..25a57d1e30 --- /dev/null +++ b/src/world/area_iwa/iwa_10/iwa_10_3_train.c @@ -0,0 +1,559 @@ +#include "iwa_10.h" + +#include "common/CosInterpMinMax.inc.c" + +EvtScript N(EVS_SpawnSmoke) = { + EVT_CALL(PlaySoundAtModel, MODEL_07, SOUND_B000001A, 0) + EVT_SETF(LVar0, MV_TrainMoveDist) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_ADDF(LVar0, -310) + EVT_ELSE + EVT_ADDF(LVar0, -450) + EVT_END_IF + EVT_SETF(LVar1, 140) + EVT_SETF(LVar2, 0) + EVT_SETF(LVar3, EVT_FLOAT(1.0)) + EVT_SETF(LVar4, EVT_FLOAT(3.0)) + EVT_ADD(LVarB, CLONED_MODEL(0)) + EVT_CALL(EnableModel, LVarB, TRUE) + EVT_LOOP(20) + EVT_CALL(TranslateModel, LVarB, LVar0, LVar1, LVar2) + EVT_CALL(ScaleModel, LVarB, LVar3, LVar3, 1) + EVT_ADDF(LVar1, LVar4) + EVT_ADDF(LVar3, EVT_FLOAT(0.046875)) + EVT_MULF(LVar4, EVT_FLOAT(0.90625)) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(EnableModel, LVarB, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_OpenCrossingGates) = { + EVT_CALL(MakeLerp, 0, 105, 30, EASING_COS_IN_OUT) + EVT_LABEL(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateGroup, MODEL_fumi1, LVar0, 0, 1, 0) + EVT_CALL(RotateGroup, MODEL_fumi2, LVar0, 0, 1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 1) + EVT_GOTO(0) + EVT_END_IF + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt1, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt2, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_tt3, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_tt4, COLLIDER_FLAGS_UPPER_MASK) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_CloseCrossingGates) = { + EVT_CALL(MakeLerp, 105, 0, 30, EASING_COS_IN_OUT) + EVT_LABEL(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateGroup, MODEL_fumi1, LVar0, 0, 1, 0) + EVT_CALL(RotateGroup, MODEL_fumi2, LVar0, 0, 1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 1) + EVT_GOTO(0) + EVT_END_IF + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_tt1, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_tt2, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt3, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt4, COLLIDER_FLAGS_UPPER_MASK) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_AnimateTrain) = { + EVT_LABEL(0) + EVT_SET(LVar0, MV_TrainMoveDist) + EVT_CALL(TranslateModel, MODEL_08, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_07, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_10, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_11, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_12, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_13, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_09, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_01, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_02, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_03, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_04, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_05, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_06, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_ura, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_omote, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_ura2, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_omote2, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_14, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_15, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_16, LVar0, 0, 0) + EVT_IF_EQ(MF_TrainReverseDir, TRUE) + EVT_SET(LVar0, 180) + EVT_CALL(TranslateModel, MODEL_08, -69, -50, 0) + EVT_CALL(TranslateModel, MODEL_07, -69, -50, 0) + EVT_CALL(TranslateModel, MODEL_10, 75, 25, 2) + EVT_CALL(TranslateModel, MODEL_11, 30, 30, 2) + EVT_CALL(TranslateModel, MODEL_12, -10, 30, 2) + EVT_CALL(TranslateModel, MODEL_13, -50, 30, 2) + EVT_CALL(TranslateModel, MODEL_09, -1, -58, 0) + EVT_CALL(TranslateModel, MODEL_ura, 82, -19, -35) + EVT_CALL(TranslateModel, MODEL_omote, 82, -19, -35) + EVT_CALL(TranslateModel, MODEL_ura2, 82, -19, 35) + EVT_CALL(TranslateModel, MODEL_omote2, 82, -19, 35) + EVT_CALL(TranslateModel, MODEL_14, -21, 30, 0) + EVT_CALL(TranslateModel, MODEL_15, -25, 30, 0) + EVT_CALL(TranslateModel, MODEL_16, -63, 15, 0) + EVT_CALL(RotateModel, MODEL_08, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_07, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_10, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_11, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_12, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_13, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_09, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_01, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_02, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_03, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_04, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_05, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_06, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_ura, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_omote, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_ura2, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_omote2, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_14, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_15, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_16, LVar0, 0, 1, 0) + EVT_CALL(TranslateModel, MODEL_08, 69, 50, 0) + EVT_CALL(TranslateModel, MODEL_07, 69, 50, 0) + EVT_CALL(TranslateModel, MODEL_10, -75, -25, -2) + EVT_CALL(TranslateModel, MODEL_11, -30, -30, -2) + EVT_CALL(TranslateModel, MODEL_12, 10, -30, -2) + EVT_CALL(TranslateModel, MODEL_13, 50, -30, -2) + EVT_CALL(TranslateModel, MODEL_09, 1, 58, 0) + EVT_CALL(TranslateModel, MODEL_ura, -82, 19, 35) + EVT_CALL(TranslateModel, MODEL_omote, -82, 19, 35) + EVT_CALL(TranslateModel, MODEL_ura2, -82, 19, -35) + EVT_CALL(TranslateModel, MODEL_omote2, -82, 19, -35) + EVT_CALL(TranslateModel, MODEL_14, 21, -30, 0) + EVT_CALL(TranslateModel, MODEL_15, 25, -30, 0) + EVT_CALL(TranslateModel, MODEL_16, 63, -15, 0) + EVT_END_IF + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_SET(LVar2, MV_TrainMoveDist) + EVT_ELSE + EVT_SET(LVar2, 1000) + EVT_SUB(LVar2, MV_TrainMoveDist) + EVT_END_IF + EVT_SETF(LVar0, LVar2) + EVT_MULF(LVar0, EVT_FLOAT(-2.40625)) + EVT_CALL(RotateModel, MODEL_11, LVar0, 0, 0, 1) + EVT_CALL(RotateModel, MODEL_12, LVar0, 0, 0, 1) + EVT_CALL(RotateModel, MODEL_13, LVar0, 0, 0, 1) + EVT_MULF(LVar0, EVT_FLOAT(0.6)) + EVT_CALL(RotateModel, MODEL_10, LVar0, 0, 0, 1) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar0, 0, -20, 75, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar1, -10, 10, 75, 0, -90) + EVT_CALL(TranslateModel, MODEL_14, LVar0, LVar1, 0) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar0, 0, -20, 75, 0, 0) + EVT_ADD(LVar0, 5) + EVT_CALL(TranslateModel, MODEL_16, LVar0, -14, 0) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar0, 0, -20, 75, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar1, -10, 10, 75, 0, -90) + EVT_CALL(TranslateModel, MODEL_15, LVar0, LVar1, 0) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar0, -40, 40, 75, 0, 90) + EVT_CALL(RotateModel, MODEL_15, LVar0, 0, 0, 1) + EVT_CALL(N(CosInterpMinMax), LVarC, LVar0, -30, 30, 10, 0, 0) + EVT_CALL(RotateModel, MODEL_09, LVar0, 0, 0, 1) + EVT_IF_NE(MV_TrainMoveSpeed, 0) + EVT_IF_EQ(LVarD, 0) + EVT_THREAD + EVT_WAIT(18) + EVT_EXEC(N(EVS_SpawnSmoke)) + EVT_END_THREAD + EVT_END_IF + EVT_END_IF + EVT_IF_LE(LVarD, 20) + EVT_CALL(N(CosInterpMinMax), LVarD, LVar0, EVT_FLOAT(0.703125), EVT_FLOAT(1.0), 10, 0, 180) + EVT_CALL(N(CosInterpMinMax), LVarD, LVar2, EVT_FLOAT(0.0), EVT_FLOAT(0.296875), 10, 0, 180) + EVT_SETF(LVar1, EVT_FLOAT(0.296875)) + EVT_SUBF(LVar1, LVar2) + EVT_ADDF(LVar1, EVT_FLOAT(1.0)) + EVT_CALL(ScaleModel, MODEL_07, LVar1, LVar0, LVar1) + EVT_CALL(ScaleModel, MODEL_08, LVar1, LVar0, LVar1) + EVT_ELSE + EVT_SETF(LVar0, EVT_FLOAT(1.0)) + EVT_SETF(LVar2, EVT_FLOAT(0.296875)) + EVT_SETF(LVar1, EVT_FLOAT(0.296875)) + EVT_SUBF(LVar1, LVar2) + EVT_ADDF(LVar1, EVT_FLOAT(1.0)) + EVT_CALL(ScaleModel, MODEL_07, LVar1, LVar0, LVar1) + EVT_CALL(ScaleModel, MODEL_08, LVar1, LVar0, LVar1) + EVT_END_IF + EVT_IF_EQ(MF_TrainArriveDoorOpen, TRUE) + EVT_CALL(PlaySoundAt, SOUND_20A5, 0, -435, 84, 37) + EVT_SET(LVar8, 10) + EVT_SET(LocalFlag(1), TRUE) + EVT_SET(MF_TrainArriveDoorOpen, FALSE) + EVT_END_IF + EVT_IF_EQ(MF_TrainArrivePlayerDisembark, TRUE) + EVT_SET(LVar8, -10) + EVT_SET(LocalFlag(1), TRUE) + EVT_SET(MF_TrainArrivePlayerDisembark, FALSE) + EVT_END_IF + EVT_IF_EQ(MF_TrainDepartDoorOpen, TRUE) + EVT_CALL(PlaySoundAt, SOUND_20A5, 0, -413, 84, 38) + EVT_SET(LVar8, 10) + EVT_SET(LocalFlag(2), TRUE) + EVT_SET(MF_TrainDepartDoorOpen, FALSE) + EVT_END_IF + EVT_IF_EQ(MF_TrainDepartPlayerBoard, TRUE) + EVT_SET(LVar8, -10) + EVT_SET(LocalFlag(2), TRUE) + EVT_SET(MF_TrainDepartPlayerBoard, FALSE) + EVT_END_IF + EVT_IF_EQ(LocalFlag(1), TRUE) + EVT_ADD(LVar9, LVar8) + EVT_IF_GE(LVar9, 90) + EVT_SET(LVar9, 90) + EVT_SET(LocalFlag(1), FALSE) + EVT_END_IF + EVT_IF_LE(LVar9, 0) + EVT_SET(LVar9, 0) + EVT_SET(LocalFlag(1), FALSE) + EVT_CALL(PlaySoundAt, SOUND_20A6, 0, -435, 84, 37) + EVT_END_IF + EVT_END_IF + EVT_IF_EQ(LocalFlag(2), TRUE) + EVT_ADD(LVarA, LVar8) + EVT_IF_GE(LVarA, 90) + EVT_SET(LVarA, 90) + EVT_SET(LocalFlag(2), FALSE) + EVT_END_IF + EVT_IF_LE(LVarA, 0) + EVT_SET(LVarA, 0) + EVT_SET(LocalFlag(2), FALSE) + EVT_CALL(PlaySoundAt, SOUND_20A6, 0, -413, 84, 38) + EVT_END_IF + EVT_END_IF + EVT_CALL(RotateModel, MODEL_omote, LVar9, 0, -1, 0) + EVT_CALL(RotateModel, MODEL_ura, LVar9, 0, -1, 0) + EVT_CALL(RotateModel, MODEL_omote2, LVarA, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_ura2, LVarA, 0, 1, 0) + EVT_IF_EQ(MF_TrainMoving, TRUE) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_SET(LVar0, MV_TrainMoveDist) + EVT_ADD(LVar0, -425) + EVT_ADD(LVar1, 75) + EVT_ADD(LVar2, 20) + EVT_CALL(SetPlayerPos, LVar0, LVar1, LVar2) + EVT_ELSE + EVT_SET(LVar0, MV_TrainMoveDist) + EVT_ADD(LVar0, -335) + EVT_ADD(LVar1, 75) + EVT_ADD(LVar2, 20) + EVT_CALL(SetPlayerPos, LVar0, LVar1, LVar2) + EVT_END_IF + EVT_END_IF + EVT_ADD(MV_TrainMoveDist, MV_TrainMoveSpeed) + EVT_SET(LVar0, MV_TrainMoveDist) + EVT_DIV(LVar0, 75) + EVT_IF_NE(LVar0, LVarE) + EVT_SET(LVarE, LVar0) + EVT_SET(LVarD, -1) + EVT_ADD(LVarB, 1) + EVT_IF_EQ(LVarB, 10) + EVT_SET(LVarB, 0) + EVT_END_IF + EVT_END_IF + EVT_ADDF(LVarD, 1) + EVT_IF_GT(LVarD, 1000) + EVT_SET(LVarD, 1000) + EVT_END_IF + EVT_ADDF(LVarC, 1) + EVT_IF_GT(LVarC, 1000) + EVT_SET(LVarC, 0) + EVT_END_IF + EVT_WAIT(1) + EVT_GOTO(0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_UpdatePassengerPos) = { + EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_GRAVITY, FALSE) + EVT_LABEL(0) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_SET(LVar0, MV_TrainMoveDist) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_ADD(LVar0, -425) + EVT_ELSE + EVT_ADD(LVar0, -335) + EVT_END_IF + EVT_SET(LVar3, LVar0) + EVT_SET(LVar4, LVar1) + EVT_SET(LVar5, LVar2) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_ADD(LVar3, -57) + EVT_ELSE + EVT_ADD(LVar3, 57) + EVT_END_IF + EVT_ADD(LVar4, -31) + EVT_ADD(LVar5, 0) + EVT_CALL(SetNpcPos, NPC_PARTNER, LVar3, LVar4, LVar5) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_ADD(LVar0, 0) + EVT_ELSE + EVT_ADD(LVar0, 0) + EVT_END_IF + EVT_ADD(LVar1, -6) + EVT_ADD(LVar2, -40) + EVT_CALL(SetNpcPos, NPC_TrainStationToad_02, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_GOTO(0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_FollowTrainCamera) = { + EVT_LABEL(0) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_IF_LT(LVar0, -1100) + EVT_SET(LVar0, -1100) + EVT_END_IF + EVT_ADD(LVar0, 40) + EVT_SET(LVar1, 30) + EVT_ADD(LVar2, 40) + EVT_ELSE + EVT_IF_LT(LVar0, -1100) + EVT_SET(LVar0, -1100) + EVT_END_IF + EVT_ADD(LVar0, -40) + EVT_SET(LVar1, 30) + EVT_ADD(LVar2, 40) + EVT_END_IF + EVT_CALL(SetCamTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_GOTO(0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_ArriveFromToadTown) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SetNpcAnimation, NPC_PARTNER, PARTNER_ANIM_RUN) + EVT_CALL(SetPlayerActionState, ACTION_STATE_IDLE) + EVT_CALL(InterpPlayerYaw, 90, 0) + EVT_CALL(InterpNpcYaw, NPC_PARTNER, 90, 0) + EVT_CALL(EnableNpcShadow, NPC_PARTNER, FALSE) + EVT_CALL(HidePlayerShadow, TRUE) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_deilitk, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_o284, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt3, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt4, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_o273, COLLIDER_FLAGS_UPPER_MASK) + EVT_EXEC_GET_TID(N(EVS_FollowTrainCamera), LVar9) + EVT_EXEC_GET_TID(N(EVS_UpdatePassengerPos), LVarE) + EVT_SET(MF_TrainMoving, TRUE) + EVT_SET(MV_TrainMoveDist, -1200) + EVT_SET(MV_TrainMoveSpeed, 0) + EVT_SET(MF_TrainReverseDir, FALSE) + EVT_WAIT(60) + EVT_EXEC(N(EVS_CloseCrossingGates)) + EVT_SET(MV_TrainMoveDist, -1200) + EVT_SET(MV_TrainMoveSpeed, -10) + EVT_SET(MF_TrainReverseDir, FALSE) + EVT_LABEL(0) + EVT_SETF(MV_TrainMoveSpeed, 0) + EVT_SUBF(MV_TrainMoveSpeed, MV_TrainMoveDist) + EVT_ADDF(MV_TrainMoveSpeed, EVT_FLOAT(10.0)) + EVT_DIVF(MV_TrainMoveSpeed, EVT_FLOAT(10.0)) + EVT_IF_GT(MV_TrainMoveSpeed, 10) + EVT_SET(MV_TrainMoveSpeed, 10) + EVT_END_IF + EVT_IF_GE(MV_TrainMoveDist, 0) + EVT_GOTO(1) + EVT_END_IF + EVT_WAIT(1) + EVT_GOTO(0) + EVT_LABEL(1) + EVT_SET(MV_TrainMoveDist, 0) + EVT_SET(MV_TrainMoveSpeed, 0) + EVT_CALL(PlaySound, SOUND_1FD) + EVT_KILL_THREAD(LVarE) + EVT_SET(MF_TrainMoving, FALSE) + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.0)) + EVT_SET(LVar0, -425) + EVT_SET(LVar1, 45) + EVT_SET(LVar2, 20) + EVT_CALL(SetPlayerActionState, ACTION_STATE_JUMP) + EVT_CALL(PlayerJump, LVar0, LVar1, LVar2, 15) + EVT_CALL(SetPlayerActionState, ACTION_STATE_IDLE) + EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_40 | NPC_FLAG_100, TRUE) + EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(3.0)) + EVT_CALL(SetNpcAnimation, NPC_PARTNER, PARTNER_ANIM_JUMP) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_SET(LVar0, -440) + EVT_SET(LVar1, 45) + EVT_SET(LVar2, 20) + EVT_CALL(NpcMoveTo, NPC_PARTNER, LVar0, LVar2, 0) + EVT_CALL(SetNpcAnimation, NPC_PARTNER, PARTNER_ANIM_RUN) + EVT_KILL_THREAD(LVar9) + EVT_CALL(EnableNpcShadow, NPC_PARTNER, TRUE) + EVT_CALL(HidePlayerShadow, FALSE) + EVT_SET(MF_TrainArriveDoorOpen, TRUE) + EVT_WAIT(20) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, -420, 20, 97) + EVT_CALL(SetPanTarget, CAM_DEFAULT, -420, 20, 97) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_deilitk, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.0)) + EVT_CALL(SetPlayerActionState, ACTION_STATE_JUMP) + EVT_CALL(PlayerJump, -420, 20, 97, 15) + EVT_CALL(SetPlayerActionState, ACTION_STATE_IDLE) + EVT_CALL(SetNpcJumpscale, NPC_PARTNER, EVT_FLOAT(1.0)) + EVT_CALL(NpcJump0, NPC_PARTNER, -412, 20, 76, 15) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_deilitk, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(DisablePlayerPhysics, FALSE) + EVT_CALL(EnablePartnerAI) + EVT_EXEC(N(EVS_OpenCrossingGates)) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_deilitk, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_o284, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_tt3, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_tt4, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_o273, COLLIDER_FLAGS_UPPER_MASK) + EVT_SET(MF_TrainArrivePlayerDisembark, TRUE) + EVT_WAIT(20) + EVT_CALL(SpeakToPlayer, NPC_TrainStationToad_01, ANIM_TrainStationToad_White_Talk, ANIM_TrainStationToad_White_Idle, 0, MSG_CH2_0000) + EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_40, FALSE) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_DepartForToadTown) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SetNpcAnimation, NPC_PARTNER, PARTNER_ANIM_RUN) + EVT_SET(MV_TrainMoveDist, -90) + EVT_SET(MV_TrainMoveSpeed, 0) + EVT_SET(MF_TrainReverseDir, TRUE) + EVT_SET(MF_TrainDepartDoorOpen, TRUE) + EVT_WAIT(20) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_deilitk, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_o284, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt3, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt4, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_o273, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(SetPlayerSpeed, EVT_FLOAT(3.0)) + EVT_CALL(PlayerMoveTo, -425, 70, 0) + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.0)) + EVT_SET(LVar0, -425) + EVT_SET(LVar1, 45) + EVT_SET(LVar2, 20) + EVT_CALL(SetPlayerActionState, ACTION_STATE_JUMP) + EVT_CALL(PlayerJump, LVar0, LVar1, LVar2, 15) + EVT_CALL(SetPlayerActionState, ACTION_STATE_IDLE) + EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_GRAVITY, FALSE) + EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_40, TRUE) + EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(3.0)) + EVT_CALL(SetNpcAnimation, NPC_PARTNER, PARTNER_ANIM_JUMP) + EVT_CALL(NpcMoveTo, NPC_PARTNER, -425, 70, 0) + EVT_CALL(SetNpcAnimation, NPC_PARTNER, PARTNER_ANIM_RUN) + EVT_CALL(SetNpcJumpscale, NPC_PARTNER, EVT_FLOAT(1.0)) + EVT_SET(LVar0, -425) + EVT_SET(LVar1, 45) + EVT_SET(LVar2, 20) + EVT_CALL(NpcJump0, NPC_PARTNER, LVar0, LVar1, LVar2, 10) + EVT_SET(MF_TrainDepartPlayerBoard, TRUE) + EVT_WAIT(20) + EVT_CALL(GetNpcPos, NPC_PARTNER, LVar0, LVar1, LVar2) + EVT_ADD(LVar2, -50) + EVT_CALL(SetNpcPos, NPC_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(EnableNpcShadow, NPC_PARTNER, FALSE) + EVT_CALL(HidePlayerShadow, TRUE) + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.0)) + EVT_SET(LVar0, -425) + EVT_SET(LVar1, 75) + EVT_SET(LVar2, 20) + EVT_CALL(SetPlayerActionState, ACTION_STATE_JUMP) + EVT_CALL(PlayerJump, LVar0, LVar1, LVar2, 15) + EVT_CALL(SetPlayerActionState, ACTION_STATE_IDLE) + EVT_CALL(InterpPlayerYaw, 270, 0) + EVT_SET(MF_TrainMoving, TRUE) + EVT_CALL(SetNpcSpeed, NPC_PARTNER, EVT_FLOAT(3.0)) + EVT_CALL(SetNpcAnimation, NPC_PARTNER, PARTNER_ANIM_JUMP) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 57) + EVT_ADD(LVar1, -31) + EVT_ADD(LVar2, 0) + EVT_CALL(NpcMoveTo, NPC_PARTNER, LVar0, LVar2, 0) + EVT_CALL(SetNpcAnimation, NPC_PARTNER, PARTNER_ANIM_RUN) + EVT_CALL(InterpNpcYaw, NPC_PARTNER, 270, 0) + EVT_EXEC(N(EVS_UpdatePassengerPos)) + EVT_EXEC(N(EVS_CloseCrossingGates)) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, -1000, 0, 0) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(245.0)) + EVT_CALL(SetCamPosA, CAM_DEFAULT, EVT_FLOAT(-538.5), EVT_FLOAT(-60.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(0.0), EVT_FLOAT(-10.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_WAIT(1) + EVT_SUB(LVar0, 150) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_TrainStationToad_02, ANIM_TrainStationToad_Talk, ANIM_TrainStationToad_Still, 5, MSG_CH2_0003) + EVT_CALL(PlaySound, SOUND_82) + EVT_THREAD + EVT_LOOP(1000) + EVT_SUBF(MV_TrainMoveSpeed, EVT_FLOAT(0.03125)) + EVT_IF_LT(MV_TrainMoveSpeed, -10) + EVT_SETF(MV_TrainMoveSpeed, EVT_FLOAT(-10.0)) + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_WAIT(90) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0) + EVT_EXEC_GET_TID(N(EVS_FollowTrainCamera), LVar9) + EVT_WAIT(130) + EVT_WAIT(100) + EVT_CALL(GotoMap, EVT_PTR("iwa_11"), iwa_11_ENTRY_1) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_InitializeTrainScene) = { + EVT_CALL(EnableModel, MODEL_km, FALSE) + EVT_CALL(SetModelFlags, MODEL_km, MODEL_FLAGS_USE_CAMERA_UNK_MATRIX, TRUE) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(0)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(1)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(2)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(3)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(4)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(5)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(6)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(7)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(8)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(9)) + EVT_SET(MF_TrainReverseDir, TRUE) + EVT_SET(MV_TrainMoveDist, -90) + EVT_EXEC(N(EVS_AnimateTrain)) + EVT_WAIT(1) + EVT_CALL(RotateGroup, MODEL_fumi1, 105, 0, 1, 0) + EVT_CALL(RotateGroup, MODEL_fumi2, 105, 0, 1, 0) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt1, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_tt2, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_tt3, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_CLEAR_BITS, COLLIDER_tt4, COLLIDER_FLAGS_UPPER_MASK) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_10/iwa_10_4_entity.c b/src/world/area_iwa/iwa_10/iwa_10_4_entity.c new file mode 100644 index 0000000000..264b008bec --- /dev/null +++ b/src/world/area_iwa/iwa_10/iwa_10_4_entity.c @@ -0,0 +1,28 @@ +#include "iwa_10.h" +#include "entity.h" + +#define SUPER_BLOCK_MAPVAR MV_SuperBlock +#define SUPER_BLOCK_GAMEFLAG GF_IWA10_SuperBlock +#include "world/common/atomic/SuperBlock.inc.c" +#include "world/common/atomic/SuperBlock.data.inc.c" + +EvtScript N(EVS_OnSmashBlock) = { + EVT_SET(GF_IWA10_Hammer1Block, TRUE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_MakeEntities) = { + EVT_IF_EQ(GF_IWA10_Hammer1Block, FALSE) + EVT_CALL(MakeEntity, EVT_PTR(Entity_Hammer2Block_WideZ), -1040, 160, -425, 0, MAKE_ENTITY_END) + EVT_CALL(AssignScript, EVT_PTR(N(EVS_OnSmashBlock))) + EVT_END_IF + EVT_MAKE_SUPER_BLOCK(-1350, 220, -210, 0) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), -780, 0, -227, -15, 270, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), -1157, 70, -282, 40, 120, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_ArrowSign), -901, 185, -555, 0, 120, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_SavePoint), -525, 80, 115, 0, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_HeartBlock), -730, 275, -510, 0, MAKE_ENTITY_END) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_10/iwa_10_5_parakarry.c b/src/world/area_iwa/iwa_10/iwa_10_5_parakarry.c new file mode 100644 index 0000000000..98d2ed8ab0 --- /dev/null +++ b/src/world/area_iwa/iwa_10/iwa_10_5_parakarry.c @@ -0,0 +1,351 @@ +#include "iwa_10.h" +#include "effects.h" + +extern EvtScript N(EVS_PushSong); +extern EvtScript N(EVS_PopSong); +extern EvtScript N(EVS_NpcIdle_Parakarry); +API_CALLABLE(N(LoadPartyImage)); + +NpcSettings N(NpcSettings_Parakarry) = { + .height = 35, + .radius = 24, + .level = 99, + .actionFlags = AI_ACTION_LOOK_AROUND_DURING_LOITER, +}; + +#include "world/common/util/ChangeNpcToPartner.inc.c" + +#define _COMMON_GIVE_REWARD_H_ // not great! +#include "world/common/complete/KeyItems.inc.c" +MAP_STATIC_PAD(4,unk); + +EvtScript N(EVS_Scene_MeetParakarry) = { + EVT_LABEL(0) + EVT_WAIT(1) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_IF_LT(LVar1, 215) + EVT_GOTO(0) + EVT_END_IF + EVT_IF_LT(LVar0, -600) + EVT_GOTO(0) + EVT_END_IF + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(ShowMessageAtScreenPos, MSG_CH2_000E, 320, 150) + EVT_THREAD + EVT_CALL(SetPlayerAnimation, ANIM_Mario_1002A) + EVT_CALL(PlaySoundAtPlayer, SOUND_263, 0) + EVT_CALL(ShowEmote, NPC_TrainStationToad_01, EMOTE_QUESTION, 0, 20, FALSE, 0, 0, 0, 0) + EVT_END_THREAD + EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0), 30, 300, EVT_FLOAT(15.0), EVT_FLOAT(-9.5)) + EVT_THREAD + EVT_CALL(SetPlayerAnimation, ANIM_Mario_80022) + EVT_WAIT(20) + EVT_CALL(InterpPlayerYaw, 270, 0) + EVT_WAIT(55) + EVT_CALL(InterpPlayerYaw, 90, 0) + EVT_END_THREAD + EVT_WAIT(20) + EVT_CALL(SetNpcPos, NPC_Parakarry, -400, 215, -510) + EVT_CALL(SetNpcFlagBits, NPC_Parakarry, NPC_FLAG_40, TRUE) + EVT_THREAD + EVT_CALL(SetNpcRotation, NPC_Parakarry, 0, 0, 15) + EVT_CALL(InterpNpcYaw, NPC_Parakarry, 270, 0) + EVT_WAIT(20) + EVT_CALL(SetNpcRotation, NPC_Parakarry, 0, 0, 0) + EVT_CALL(InterpNpcYaw, NPC_Parakarry, 90, 0) + EVT_WAIT(5) + EVT_CALL(SetNpcRotation, NPC_Parakarry, 0, 0, -15) + EVT_WAIT(30) + EVT_CALL(InterpNpcYaw, NPC_Parakarry, 270, 0) + EVT_CALL(SetNpcRotation, NPC_Parakarry, 0, 0, 0) + EVT_END_THREAD + EVT_SET(MV_ParakarryPosZ, -510) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_THREAD + EVT_CALL(MakeLerp, -510, LVar2, 60, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_SET(MV_ParakarryPosZ, LVar0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_ADD(LVar0, 25) + EVT_CALL(MakeLerp, -400, LVar0, 55, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(SetNpcPos, NPC_Parakarry, LVar0, 220, MV_ParakarryPosZ) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(SetPlayerAnimation, ANIM_Mario_FallBack) + EVT_CALL(SetNpcAnimation, NPC_Parakarry, ANIM_WorldParakarry_HurtStill) + EVT_THREAD + EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 5, EVT_FLOAT(2.0)) + EVT_END_THREAD + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(GetNpcPos, NPC_Parakarry, LVar3, LVar4, LVar5) + EVT_ADD(LVar0, LVar3) + EVT_DIV(LVar0, 2) + EVT_ADD(LVar2, LVar5) + EVT_DIV(LVar2, 2) + EVT_CALL(PlaySoundAt, SOUND_HIT_PLAYER_NORMAL, 0, LVar0, 230, LVar2) + EVT_PLAY_EFFECT(EFFECT_DAMAGE_STARS, 3, LVar0, 230, LVar2, 0, -1, 0, 2) + EVT_SET(LVarA, LVar0) + EVT_SET(LVarB, 230) + EVT_SET(LVarC, LVar2) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_IF_GT(LVar2, -380) + EVT_SET(LVar2, -380) + EVT_END_IF + EVT_THREAD + EVT_CALL(SetNpcJumpscale, NPC_Parakarry, EVT_FLOAT(1.0)) + EVT_CALL(GetNpcPos, NPC_Parakarry, LVar0, LVar1, LVar3) + EVT_ADD(LVar0, 30) + EVT_CALL(NpcJump1, NPC_Parakarry, LVar0, 215, LVar2, 15) + EVT_ADD(LVar0, 15) + EVT_CALL(SetNpcAnimation, NPC_Parakarry, ANIM_WorldParakarry_Hurt) + EVT_CALL(NpcJump1, NPC_Parakarry, LVar0, 215, LVar2, 8) + EVT_END_THREAD + EVT_CALL(SetPlayerJumpscale, EVT_FLOAT(1.0)) + EVT_SUB(LVar0, 30) + EVT_CALL(PlayerJump1, LVar0, LVar1, LVar2, 15) + EVT_CALL(SetPlayerPos, LVar0, LVar1, LVar2) + EVT_CALL(PlaySoundAt, SOUND_162, 0, LVarA, LVarB, LVarC) + EVT_THREAD + EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 5, EVT_FLOAT(1.0)) + EVT_END_THREAD + EVT_SUB(LVar0, 15) + EVT_CALL(SetPlayerFlagBits, PS_FLAGS_200000, TRUE) + EVT_CALL(InterpPlayerYaw, 270, 0) + EVT_WAIT(1) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_DeadStill) + EVT_CALL(PlayerJump1, LVar0, LVar1, LVar2, 8) + EVT_CALL(SetPlayerPos, LVar0, LVar1, LVar2) + EVT_THREAD + EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 3, EVT_FLOAT(1.0)) + EVT_END_THREAD + EVT_WAIT(20) + EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_Parakarry, 0) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_GetUp) + EVT_WAIT(10) + EVT_CALL(SetNpcAnimation, NPC_Parakarry, ANIM_WorldParakarry_Idle) + EVT_CALL(GetNpcPos, NPC_Parakarry, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 20) + EVT_CALL(NpcJump1, NPC_Parakarry, LVar0, LVar1, LVar2, 8) + EVT_CALL(SetPlayerFlagBits, PS_FLAGS_200000, FALSE) + EVT_CALL(InterpPlayerYaw, 90, 0) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_WAIT(30) + EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(3.0), 35, 255, EVT_FLOAT(17.5), EVT_FLOAT(-11.5)) + EVT_CALL(SetNpcAnimation, NPC_Parakarry, ANIM_WorldParakarry_Walk) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_ADD(LVar0, 60) + EVT_CALL(SetNpcSpeed, NPC_Parakarry, EVT_FLOAT(3.0)) + EVT_CALL(NpcMoveTo, NPC_Parakarry, LVar0, LVar2, 0) + EVT_WAIT(10) + EVT_CALL(SetNpcAnimation, NPC_Parakarry, ANIM_WorldParakarry_Idle) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_000F) + EVT_WAIT(10) + EVT_CALL(GetNpcPos, NPC_Parakarry, LVar0, LVar1, LVar2) + EVT_CALL(NpcJump0, NPC_Parakarry, LVar0, LVar1, LVar2, 10) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_0010) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_80007) + EVT_WAIT(20) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_0011) + EVT_SET(GB_StoryProgress, STORY_CH2_SPOKE_WITH_PARAKARRY) + EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(3.0)) + EVT_CALL(DisablePlayerPhysics, FALSE) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_CALL(BindNpcAI, NPC_Parakarry, EVT_PTR(N(EVS_NpcIdle_Parakarry))) + EVT_RETURN + EVT_END +}; + +s32 N(LetterList)[] = { + ITEM_LETTER01, + ITEM_LETTER25, + ITEM_LETTER10, + ITEM_NONE +}; + +EvtScript N(EVS_NpcInteract_Parakarry) = { + EVT_SET(LocalFlag(0), FALSE) + EVT_IF_EQ(GB_IWA10_ReturnedLetterCount, 2) + EVT_SET(LVar0, 0) + EVT_IF_EQ(GF_IWA01_Item_Letter01, TRUE) + EVT_ADD(LVar0, 1) + EVT_END_IF + EVT_IF_EQ(GF_IWA03_Item_Letter25, TRUE) + EVT_ADD(LVar0, 1) + EVT_END_IF + EVT_IF_EQ(GF_IWA04_Item_Letter10, TRUE) + EVT_ADD(LVar0, 1) + EVT_END_IF + EVT_IF_EQ(LVar0, 3) + EVT_CALL(GetPlayerPos, LVar1, LVar2, LVar3) + EVT_CALL(GetNpcPos, NPC_Parakarry, LVar4, LVar5, LVar6) + EVT_IF_LT(LVar1, LVar4) + EVT_ADD(LVar4, -30) + EVT_ELSE + EVT_ADD(LVar4, 30) + EVT_END_IF + EVT_CALL(PlayerMoveTo, LVar4, LVar6, 20) + EVT_CALL(PlayerFaceNpc, NPC_Parakarry, FALSE) + EVT_WAIT(10) + EVT_CALL(func_802CF56C, 2) + EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(4.0), EVT_FLOAT(0.0), EVT_FLOAT(300.0), EVT_FLOAT(17.5), EVT_FLOAT(-10.0)) + EVT_END_IF + EVT_END_IF + EVT_SET(LVar0, EVT_PTR(N(LetterList))) + EVT_SET(LVar1, 4) + EVT_EXEC_WAIT(N(ChooseKeyItem)) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(0) + EVT_SWITCH(GB_IWA10_ReturnedLetterCount) + EVT_CASE_EQ(0) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_0012) + EVT_CASE_EQ(1) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_0015) + EVT_CASE_EQ(2) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_0017) + EVT_CASE_EQ(3) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_001C) + EVT_CALL(ShowChoice, MSG_Choice_000F) + EVT_IF_NE(LVar0, 0) + EVT_CALL(ContinueSpeech, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_001B) + EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_RETURN + EVT_END_IF + EVT_SET(LocalFlag(0), TRUE) + EVT_END_SWITCH + EVT_CASE_EQ(-1) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_0013) + EVT_CASE_DEFAULT + EVT_CALL(RemoveKeyItemAt, LVar0) + EVT_ADD(GB_IWA10_ReturnedLetterCount, 1) + EVT_SWITCH(GB_IWA10_ReturnedLetterCount) + EVT_CASE_EQ(1) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_0014) + EVT_CASE_EQ(2) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_0016) + EVT_CASE_EQ(3) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Celebrate, ANIM_WorldParakarry_Idle, 0, MSG_CH2_0018) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_Question) + EVT_WAIT(30) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_CALL(SpeakToPlayer, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_0019) + EVT_CALL(ShowChoice, MSG_Choice_000F) + EVT_IF_NE(LVar0, 0) + EVT_CALL(ContinueSpeech, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_001A) + EVT_CALL(ShowChoice, MSG_Choice_000F) + EVT_IF_NE(LVar0, 0) + EVT_CALL(ContinueSpeech, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_001B) + EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_RETURN + EVT_END_IF + EVT_END_IF + EVT_SET(LocalFlag(0), TRUE) + EVT_END_SWITCH + EVT_END_SWITCH + EVT_IF_EQ(LocalFlag(0), TRUE) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(ContinueSpeech, NPC_Parakarry, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_001D) + EVT_CALL(N(ChangeNpcToPartner), 4, 4) + EVT_SET(GB_StoryProgress, STORY_CH2_PARAKARRY_JOINED_PARTY) + EVT_CALL(N(LoadPartyImage)) + EVT_EXEC(N(EVS_PushSong)) + EVT_WAIT(15) + EVT_CALL(ShowMessageAtScreenPos, MSG_Menus_018C, 160, 40) + EVT_EXEC(N(EVS_PopSong)) + EVT_WAIT(10) + EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_WorldParakarry_Talk, ANIM_WorldParakarry_Idle, 0, MSG_CH2_001E) + EVT_CALL(AddKeyItem, ITEM_LETTER01) + EVT_CALL(AddKeyItem, ITEM_LETTER25) + EVT_CALL(AddKeyItem, ITEM_LETTER10) + EVT_END_IF + EVT_CALL(ResetCam, CAM_DEFAULT, EVT_FLOAT(4.0)) + EVT_CALL(EnablePartnerAI) + EVT_RETURN + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcIdle_Parakarry) = { + EVT_CALL(SetNpcSpeed, NPC_SELF, EVT_FLOAT(1.0)) + EVT_ADD(LVar0, -670) + EVT_ADD(LVar2, -485) + EVT_LOOP(0) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldParakarry_Walk) + EVT_CALL(NpcMoveTo, NPC_SELF, LVar0, LVar2, 0) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldParakarry_Idle) + EVT_CALL(InterpNpcYaw, NPC_SELF, 90, 7) + EVT_WAIT(10) + EVT_CALL(InterpNpcYaw, NPC_SELF, 270, 7) + EVT_WAIT(30) + EVT_ADD(LVar0, 120) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldParakarry_Walk) + EVT_CALL(NpcMoveTo, NPC_SELF, LVar0, LVar2, 0) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldParakarry_Idle) + EVT_CALL(InterpNpcYaw, NPC_SELF, 270, 7) + EVT_WAIT(10) + EVT_CALL(InterpNpcYaw, NPC_SELF, 90, 7) + EVT_WAIT(30) + EVT_ADD(LVar0, -120) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Parakarry) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Parakarry))) + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH2_SPOKE_WITH_PARAKARRY) + EVT_CALL(SetNpcPos, NPC_Parakarry, NPC_DISPOSE_LOCATION) + EVT_CASE_LT(STORY_CH2_PARAKARRY_JOINED_PARTY) + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Parakarry))) + EVT_CASE_DEFAULT + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_Parakarry) = { + .id = NPC_Parakarry, + .settings = &N(NpcSettings_Parakarry), + .pos = { -610.0f, 230.0f, -485.0f }, + .yaw = 0, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_200000, + .init = &N(EVS_NpcInit_Parakarry), + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_WorldParakarry_Idle, + .walk = ANIM_WorldParakarry_Walk, + .run = ANIM_WorldParakarry_Run, + .chase = ANIM_WorldParakarry_Run, + .anim_4 = ANIM_WorldParakarry_Idle, + .anim_5 = ANIM_WorldParakarry_Idle, + .death = ANIM_WorldParakarry_Still, + .hit = ANIM_WorldParakarry_Still, + .anim_8 = ANIM_WorldParakarry_Idle, + .anim_9 = ANIM_WorldParakarry_Idle, + .anim_A = ANIM_WorldParakarry_Idle, + .anim_B = ANIM_WorldParakarry_Idle, + .anim_C = ANIM_WorldParakarry_Idle, + .anim_D = ANIM_WorldParakarry_Idle, + .anim_E = ANIM_WorldParakarry_Idle, + .anim_F = ANIM_WorldParakarry_Idle, + }, + .tattle = MSG_NpcTattle_IWA_Parakarry, +}; diff --git a/src/world/area_iwa/iwa_10/iwa_10_6_new_party.c b/src/world/area_iwa/iwa_10/iwa_10_6_new_party.c new file mode 100644 index 0000000000..a514989ca3 --- /dev/null +++ b/src/world/area_iwa/iwa_10/iwa_10_6_new_party.c @@ -0,0 +1,4 @@ +#include "iwa_10.h" + +#define PARTY_IMAGE "party_pareta" +#include "world/common/LoadPartyImage.inc.c" diff --git a/src/world/area_iwa/iwa_10/iwa_10_7_foliage.c b/src/world/area_iwa/iwa_10/iwa_10_7_foliage.c new file mode 100644 index 0000000000..92cd28b18f --- /dev/null +++ b/src/world/area_iwa/iwa_10/iwa_10_7_foliage.c @@ -0,0 +1,147 @@ +#include "iwa_10.h" + +#include "common/foliage.inc.c" + +FoliageModelList N(Bush1_BushModels) = { + .count = 1, + .models = { + MODEL_k4, + } +}; + +FoliageDropList N(Bush1_Drops) = { + .count = 1, + .drops = { + { + .itemID = ITEM_COIN, + .pos = { -839, 15, 521 }, + .spawnMode = ITEM_SPAWN_MODE_TOSS, + .pickupFlag = GF_IWA10_Bush1_Coin, + .spawnFlag = MF_DropBush1, + }, + } +}; + +FoliageVectorList N(Bush1_Effects) = { + .count = 1, + .vectors = { + { -839.0f, 15.0f, 521.0f }, + } +}; + +SearchBushConfig N(SearchBush_Bush1) = { + .bush = &N(Bush1_BushModels), + .drops = &N(Bush1_Drops), + .vectors = &N(Bush1_Effects), +}; + +FoliageModelList N(Bush2_BushModels) = { + .count = 1, + .models = { + MODEL_k5, + } +}; + +FoliageDropList N(Bush2_Drops) = { + .count = 1, + .drops = { + { + .itemID = ITEM_COIN, + .pos = { -691, 22, 384 }, + .spawnMode = ITEM_SPAWN_MODE_TOSS, + .pickupFlag = GF_IWA10_Bush2_Coin, + .spawnFlag = MF_DropBush2, + }, + } +}; + +FoliageVectorList N(Bush2_Effects) = { + .count = 1, + .vectors = { + { -691.0f, 22.0f, 384.0f }, + } +}; + +SearchBushConfig N(SearchBush_Bush2) = { + .bush = &N(Bush2_BushModels), + .drops = &N(Bush2_Drops), + .vectors = &N(Bush2_Effects), +}; + +FoliageModelList N(Bush3_BushModels) = { + .count = 1, + .models = { + MODEL_k6, + } +}; + +FoliageDropList N(Bush3_Drops) = { + .count = 1, + .drops = { + { + .itemID = ITEM_COIN, + .pos = { -932, 21, 405 }, + .spawnMode = ITEM_SPAWN_MODE_TOSS, + .pickupFlag = GF_IWA10_Bush3_Coin, + .spawnFlag = MF_DropBush3, + }, + } +}; + +FoliageVectorList N(Bush3_Effects) = { + .count = 1, + .vectors = { + { -932.0f, 21.0f, 405.0f }, + } +}; + +SearchBushConfig N(SearchBush_Bush3) = { + .bush = &N(Bush3_BushModels), + .drops = &N(Bush3_Drops), + .vectors = &N(Bush3_Effects), +}; + +FoliageModelList N(Bush4_BushModels) = { + .count = 1, + .models = { + MODEL_k7, + } +}; + +FoliageDropList N(Bush4_Drops) = { + .count = 1, + .drops = { + { + .itemID = ITEM_EGG, + .pos = { -800, 23, 280 }, + .spawnMode = ITEM_SPAWN_MODE_TOSS, + .spawnFlag = MF_DropBush4, + }, + } +}; + +FoliageVectorList N(Bush4_Effects) = { + .count = 1, + .vectors = { + { -800.0f, 23.0f, 280.0f }, + } +}; + +SearchBushConfig N(SearchBush_Bush4) = { + .bush = &N(Bush4_BushModels), + .drops = &N(Bush4_Drops), + .vectors = &N(Bush4_Effects), +}; + +EvtScript N(EVS_SetupFoliage) = { + EVT_SET(LVar0, EVT_PTR(N(SearchBush_Bush1))) + EVT_BIND_TRIGGER(EVT_PTR(N(searchBush)), TRIGGER_WALL_PRESS_A, COLLIDER_k4, 1, 0) + EVT_SET(LVar0, EVT_PTR(N(SearchBush_Bush2))) + EVT_BIND_TRIGGER(EVT_PTR(N(searchBush)), TRIGGER_WALL_PRESS_A, COLLIDER_k5, 1, 0) + EVT_SET(LVar0, EVT_PTR(N(SearchBush_Bush3))) + EVT_BIND_TRIGGER(EVT_PTR(N(searchBush)), TRIGGER_WALL_PRESS_A, COLLIDER_k6, 1, 0) + EVT_SET(LVar0, EVT_PTR(N(SearchBush_Bush4))) + EVT_BIND_TRIGGER(EVT_PTR(N(searchBush)), TRIGGER_WALL_PRESS_A, COLLIDER_k7, 1, 0) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_11/9269F0.c b/src/world/area_iwa/iwa_11/9269F0.c deleted file mode 100644 index dd40893fdd..0000000000 --- a/src/world/area_iwa/iwa_11/9269F0.c +++ /dev/null @@ -1,16 +0,0 @@ -#include "iwa_11.h" - -static char* N(exit_str_0) = "mac_03"; -static char* N(exit_str_1) = "iwa_10"; -static char* N(exit_str_2) = "mac_03\0"; -static char* N(exit_str_3) = "iwa_10\0"; -static char* N(exit_str_4) = "kmr_22"; -static char* N(exit_str_5) = ""; - -ApiStatus func_80240000_9269F0(Evt* script, s32 isInitialCall) { - if (gGameStatusPtr->pressedButtons[0] & (BUTTON_A | BUTTON_B)) { - return ApiStatus_DONE2; - } else { - return ApiStatus_BLOCK; - } -} diff --git a/src/world/area_iwa/iwa_11/926A10.c b/src/world/area_iwa/iwa_11/926A10.c deleted file mode 100644 index a81118dda5..0000000000 --- a/src/world/area_iwa/iwa_11/926A10.c +++ /dev/null @@ -1,17 +0,0 @@ -#include "iwa_11.h" - -#include "common/UnkFloatFunc.inc.c" - -ApiStatus func_802401B0_926BA0(Evt* script) { - f32 angle = clamp_angle(script->varTable[2] * -2.4f); - - evt_set_float_variable(script, LVar0, angle); - return ApiStatus_DONE2; -} - -ApiStatus func_80240208_926BF8(Evt* script, s32 isInitialCall) { - f32 angle = clamp_angle(script->varTable[2] * -2.4f * 0.6f); - - evt_set_float_variable(script, LVar0, angle); - return ApiStatus_DONE2; -} diff --git a/src/world/area_iwa/iwa_11/926C70.c b/src/world/area_iwa/iwa_11/926C70.c deleted file mode 100644 index 78de5d8952..0000000000 --- a/src/world/area_iwa/iwa_11/926C70.c +++ /dev/null @@ -1,21 +0,0 @@ -#include "iwa_11.h" - -extern s32 D_80242148_928B38[14][7]; - -s32 func_80240280_926C70(Evt* script, s32 isInitialCall) { - s32 value = script->varTable[0]; - s32 index, i; - - for (i = 0; i < 14; i++) { - if (value < D_80242148_928B38[i][0]) { - break; - } - } - index = i - 1; - - for (i = 0; i < 6; i++) { - script->varTable[i + 5] = D_80242148_928B38[index][i + 1]; - } - - return ApiStatus_DONE2; -} diff --git a/src/world/area_iwa/iwa_11/iwa_11.h b/src/world/area_iwa/iwa_11/iwa_11.h index c3ca067767..35a0e97c2c 100644 --- a/src/world/area_iwa/iwa_11/iwa_11.h +++ b/src/world/area_iwa/iwa_11/iwa_11.h @@ -2,8 +2,29 @@ /// @brief Mt Rugged - Train Ride Scene #include "common.h" -#include "../iwa.h" #include "message_ids.h" #include "map.h" +#include "../iwa.h" +#include "mapfs/iwa_11_shape.h" +#include "mapfs/iwa_11_hit.h" + +enum { + NPC_TrainConductorToad = 0, +}; + +enum { + MV_TrainMoveDist = MapVar(0), + MV_TrainMoveSpeed = MapVar(1), +}; + +enum { + MF_TrainArriveDoorOpen = MapFlag(0), + MF_TrainArrivePlayerDisembark = MapFlag(1), + MF_TrainDepartDoorOpen = MapFlag(2), + MF_TrainDepartPlayerBoard = MapFlag(3), + MF_TrainScrolling = MapFlag(4), + MF_TrainReverseDir = MapFlag(5), +}; + #define NAMESPACE iwa_11 diff --git a/src/world/area_iwa/iwa_11/iwa_11_0_header.c b/src/world/area_iwa/iwa_11/iwa_11_0_header.c new file mode 100644 index 0000000000..cf750fea5d --- /dev/null +++ b/src/world/area_iwa/iwa_11/iwa_11_0_header.c @@ -0,0 +1,21 @@ +#include "iwa_11.h" + +extern EvtScript N(EVS_Main); + +EntryList N(Entrances) = { + [iwa_11_ENTRY_0] { 0.0, 0.0, 15.0, 90.0 }, + [iwa_11_ENTRY_1] { 0.0, 0.0, 15.0, 270.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, +}; + +EvtScript N(EVS_SetupMusic) = { + EVT_CALL(SetMusicTrack, 0, SONG_RIDING_THE_RAILS, 0, 8) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_11/iwa_11_1_main.c b/src/world/area_iwa/iwa_11/iwa_11_1_main.c new file mode 100644 index 0000000000..b8af079bcb --- /dev/null +++ b/src/world/area_iwa/iwa_11/iwa_11_1_main.c @@ -0,0 +1,64 @@ +#include "iwa_11.h" + +extern EvtScript N(EVS_InitializeTrainScene); +extern EvtScript N(EVS_TravelToMtRugged); +extern EvtScript N(EVS_TravelToToadTown); +extern EvtScript N(EVS_UpdateSceneryPos); +extern EvtScript N(EVS_SetupMusic); +extern NpcGroupList N(DefaultNPCs); + +API_CALLABLE(N(CheckForSkipInput)) { + if (gGameStatusPtr->pressedButtons[0] & (BUTTON_A | BUTTON_B)) { + return ApiStatus_DONE2; + } else { + return ApiStatus_BLOCK; + } +} + +EvtScript N(EVS_MonitorSceneSkip) = { + EVT_IF_LT(GB_StoryProgress, STORY_CH2_ARRIVED_AT_MT_RUGGED) + EVT_RETURN + EVT_END_IF + EVT_CALL(GetEntryID, LVar0) + EVT_CALL(N(CheckForSkipInput)) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(iwa_11_ENTRY_0) + EVT_CALL(GotoMap, EVT_PTR("iwa_10"), iwa_10_ENTRY_0) + EVT_CASE_EQ(iwa_11_ENTRY_1) + EVT_CALL(GotoMap, EVT_PTR("mac_03"), mac_03_ENTRY_1) + EVT_END_SWITCH + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_MT_RUGGED) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_CALL(SetCamPerspective, CAM_DEFAULT, 3, 30, 16, 4096) + EVT_CALL(SetCamBGColor, CAM_DEFAULT, 0, 0, 0) + EVT_CALL(SetCamEnabled, CAM_DEFAULT, TRUE) + EVT_CALL(SetCamLeadPlayer, CAM_DEFAULT, FALSE) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 0, 0, 0) + EVT_CALL(SetCamPosA, CAM_DEFAULT, -5800, 0) + EVT_CALL(SetCamPosB, CAM_DEFAULT, 5700, 0) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 0, 0, 0) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(MakeNpcs, TRUE, EVT_PTR(N(DefaultNPCs))) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_deiliti, COLLIDER_FLAGS_UPPER_MASK) + EVT_CALL(ModifyColliderFlags, MODIFY_COLLIDER_FLAGS_SET_BITS, COLLIDER_deilitm, COLLIDER_FLAGS_UPPER_MASK) + EVT_EXEC_WAIT(N(EVS_InitializeTrainScene)) + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(iwa_11_ENTRY_0) + EVT_EXEC(N(EVS_TravelToMtRugged)) + EVT_CASE_EQ(iwa_11_ENTRY_1) + EVT_EXEC(N(EVS_TravelToToadTown)) + EVT_END_SWITCH + EVT_EXEC(N(EVS_UpdateSceneryPos)) + EVT_EXEC(N(EVS_MonitorSceneSkip)) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_11/iwa_11_2_train.c b/src/world/area_iwa/iwa_11/iwa_11_2_train.c new file mode 100644 index 0000000000..07af99d634 --- /dev/null +++ b/src/world/area_iwa/iwa_11/iwa_11_2_train.c @@ -0,0 +1,407 @@ +#include "iwa_11.h" + +#include "common/CosInterpMinMax.inc.c" + +API_CALLABLE(N(GetSmallWheelsAngle)) { + f32 angle = clamp_angle(script->varTable[2] * -2.4f); + + evt_set_float_variable(script, LVar0, angle); + return ApiStatus_DONE2; +} + +API_CALLABLE(N(GetLargeWheelAngle)) { + f32 angle = clamp_angle(script->varTable[2] * -2.4f * 0.6f); + + evt_set_float_variable(script, LVar0, angle); + return ApiStatus_DONE2; +} + +EvtScript N(EVS_SpawnSmoke) = { + EVT_CALL(PlaySoundAtModel, MODEL_07, SOUND_B000001A, 0) + EVT_SETF(LVar0, MV_TrainMoveDist) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_ADDF(LVar0, -310) + EVT_ELSE + EVT_ADDF(LVar0, -450) + EVT_END_IF + EVT_SETF(LVar1, 140) + EVT_SETF(LVar2, 0) + EVT_SETF(LVar3, EVT_FLOAT(1.0)) + EVT_SETF(LVar4, EVT_FLOAT(3.0)) + EVT_ADD(LVarB, CLONED_MODEL(0)) + EVT_CALL(EnableModel, LVarB, TRUE) + EVT_LOOP(20) + EVT_CALL(TranslateModel, LVarB, LVar0, LVar1, LVar2) + EVT_CALL(ScaleModel, LVarB, LVar3, LVar3, 1) + EVT_ADDF(LVar1, LVar4) + EVT_ADDF(LVar3, EVT_FLOAT(0.046875)) + EVT_MULF(LVar4, EVT_FLOAT(0.90625)) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(EnableModel, LVarB, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_AnimateTrain) = { + EVT_LABEL(0) + EVT_SET(LVar0, MV_TrainMoveDist) + EVT_CALL(TranslateModel, MODEL_08, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_07, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_10, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_11, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_12, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_13, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_09, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_01, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_02, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_03, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_04, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_05, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_06, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_ura, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_omote, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_ura2, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_omote2, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_14, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_15, LVar0, 0, 0) + EVT_CALL(TranslateModel, MODEL_16, LVar0, 0, 0) + EVT_IF_EQ(MF_TrainReverseDir, TRUE) + EVT_SET(LVar0, 180) + EVT_CALL(TranslateModel, MODEL_08, -69, -50, 0) + EVT_CALL(TranslateModel, MODEL_07, -69, -50, 0) + EVT_CALL(TranslateModel, MODEL_10, 75, 25, 2) + EVT_CALL(TranslateModel, MODEL_11, 30, 30, 2) + EVT_CALL(TranslateModel, MODEL_12, -10, 30, 2) + EVT_CALL(TranslateModel, MODEL_13, -50, 30, 2) + EVT_CALL(TranslateModel, MODEL_09, -1, -58, 0) + EVT_CALL(TranslateModel, MODEL_ura, 82, -19, -35) + EVT_CALL(TranslateModel, MODEL_omote, 82, -19, -35) + EVT_CALL(TranslateModel, MODEL_ura2, 82, -19, 35) + EVT_CALL(TranslateModel, MODEL_omote2, 82, -19, 35) + EVT_CALL(TranslateModel, MODEL_14, -21, 30, 0) + EVT_CALL(TranslateModel, MODEL_15, -25, 30, 0) + EVT_CALL(TranslateModel, MODEL_16, -63, 15, 0) + EVT_CALL(RotateModel, MODEL_08, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_07, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_10, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_11, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_12, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_13, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_09, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_01, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_02, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_03, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_04, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_05, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_06, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_ura, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_omote, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_ura2, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_omote2, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_14, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_15, LVar0, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_16, LVar0, 0, 1, 0) + EVT_CALL(TranslateModel, MODEL_08, 69, 50, 0) + EVT_CALL(TranslateModel, MODEL_07, 69, 50, 0) + EVT_CALL(TranslateModel, MODEL_10, -75, -25, -2) + EVT_CALL(TranslateModel, MODEL_11, -30, -30, -2) + EVT_CALL(TranslateModel, MODEL_12, 10, -30, -2) + EVT_CALL(TranslateModel, MODEL_13, 50, -30, -2) + EVT_CALL(TranslateModel, MODEL_09, 1, 58, 0) + EVT_CALL(TranslateModel, MODEL_ura, -82, 19, 35) + EVT_CALL(TranslateModel, MODEL_omote, -82, 19, 35) + EVT_CALL(TranslateModel, MODEL_ura2, -82, 19, -35) + EVT_CALL(TranslateModel, MODEL_omote2, -82, 19, -35) + EVT_CALL(TranslateModel, MODEL_14, 21, -30, 0) + EVT_CALL(TranslateModel, MODEL_15, 25, -30, 0) + EVT_CALL(TranslateModel, MODEL_16, 63, -15, 0) + EVT_END_IF + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_SET(LVar2, MV_TrainMoveDist) + EVT_ELSE + EVT_SET(LVar2, 1000) + EVT_SUB(LVar2, MV_TrainMoveDist) + EVT_END_IF + EVT_CALL(N(GetSmallWheelsAngle)) + EVT_CALL(RotateModel, MODEL_11, LVar0, 0, 0, 1) + EVT_CALL(RotateModel, MODEL_12, LVar0, 0, 0, 1) + EVT_CALL(RotateModel, MODEL_13, LVar0, 0, 0, 1) + EVT_CALL(N(GetLargeWheelAngle)) + EVT_CALL(RotateModel, MODEL_10, LVar0, 0, 0, 1) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar0, 0, -20, 75, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar1, -10, 10, 75, 0, -90) + EVT_CALL(TranslateModel, MODEL_14, LVar0, LVar1, 0) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar0, 0, -20, 75, 0, 0) + EVT_ADD(LVar0, 5) + EVT_CALL(TranslateModel, MODEL_16, LVar0, -14, 0) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar0, 0, -20, 75, 0, 0) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar1, -10, 10, 75, 0, -90) + EVT_CALL(TranslateModel, MODEL_15, LVar0, LVar1, 0) + EVT_CALL(N(CosInterpMinMax), LVar2, LVar0, -40, 40, 75, 0, 90) + EVT_CALL(RotateModel, MODEL_15, LVar0, 0, 0, 1) + EVT_CALL(N(CosInterpMinMax), LVarC, LVar0, -30, 30, 10, 0, 0) + EVT_CALL(RotateModel, MODEL_09, LVar0, 0, 0, 1) + EVT_IF_NE(MV_TrainMoveSpeed, 0) + EVT_IF_EQ(LVarD, 0) + EVT_THREAD + EVT_WAIT(18) + EVT_EXEC(N(EVS_SpawnSmoke)) + EVT_END_THREAD + EVT_END_IF + EVT_END_IF + EVT_IF_LE(LVarD, 20) + EVT_CALL(N(CosInterpMinMax), LVarD, LVar0, EVT_FLOAT(0.703125), EVT_FLOAT(1.0), 10, 0, 180) + EVT_CALL(N(CosInterpMinMax), LVarD, LVar2, EVT_FLOAT(0.0), EVT_FLOAT(0.296875), 10, 0, 180) + EVT_SETF(LVar1, EVT_FLOAT(0.296875)) + EVT_SUBF(LVar1, LVar2) + EVT_ADDF(LVar1, EVT_FLOAT(1.0)) + EVT_CALL(ScaleModel, MODEL_07, LVar1, LVar0, LVar1) + EVT_CALL(ScaleModel, MODEL_08, LVar1, LVar0, LVar1) + EVT_ELSE + EVT_SETF(LVar0, EVT_FLOAT(1.0)) + EVT_SETF(LVar2, EVT_FLOAT(0.296875)) + EVT_SETF(LVar1, EVT_FLOAT(0.296875)) + EVT_SUBF(LVar1, LVar2) + EVT_ADDF(LVar1, EVT_FLOAT(1.0)) + EVT_CALL(ScaleModel, MODEL_07, LVar1, LVar0, LVar1) + EVT_CALL(ScaleModel, MODEL_08, LVar1, LVar0, LVar1) + EVT_END_IF + EVT_IF_EQ(MF_TrainArriveDoorOpen, TRUE) + EVT_SET(LVar8, 10) + EVT_SET(LocalFlag(1), TRUE) + EVT_SET(MF_TrainArriveDoorOpen, FALSE) + EVT_END_IF + EVT_IF_EQ(MF_TrainArrivePlayerDisembark, TRUE) + EVT_SET(LVar8, -10) + EVT_SET(LocalFlag(1), TRUE) + EVT_SET(MF_TrainArrivePlayerDisembark, FALSE) + EVT_END_IF + EVT_IF_EQ(MF_TrainDepartDoorOpen, TRUE) + EVT_SET(LVar8, 10) + EVT_SET(LocalFlag(2), TRUE) + EVT_SET(MF_TrainDepartDoorOpen, FALSE) + EVT_END_IF + EVT_IF_EQ(MF_TrainDepartPlayerBoard, TRUE) + EVT_SET(LVar8, -10) + EVT_SET(LocalFlag(2), TRUE) + EVT_SET(MF_TrainDepartPlayerBoard, FALSE) + EVT_END_IF + EVT_IF_EQ(LocalFlag(1), TRUE) + EVT_ADD(LVar9, LVar8) + EVT_IF_GE(LVar9, 90) + EVT_SET(LVar9, 90) + EVT_SET(LocalFlag(1), FALSE) + EVT_END_IF + EVT_IF_LE(LVar9, 0) + EVT_SET(LVar9, 0) + EVT_SET(LocalFlag(1), FALSE) + EVT_END_IF + EVT_END_IF + EVT_IF_EQ(LocalFlag(2), TRUE) + EVT_ADD(LVarA, LVar8) + EVT_IF_GE(LVarA, 90) + EVT_SET(LVarA, 90) + EVT_SET(LocalFlag(2), FALSE) + EVT_END_IF + EVT_IF_LE(LVarA, 0) + EVT_SET(LVarA, 0) + EVT_SET(LocalFlag(2), FALSE) + EVT_END_IF + EVT_END_IF + EVT_CALL(RotateModel, MODEL_omote, LVar9, 0, -1, 0) + EVT_CALL(RotateModel, MODEL_ura, LVar9, 0, -1, 0) + EVT_CALL(RotateModel, MODEL_omote2, LVarA, 0, 1, 0) + EVT_CALL(RotateModel, MODEL_ura2, LVarA, 0, 1, 0) + EVT_IF_EQ(MF_TrainScrolling, TRUE) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_SET(LVar0, MV_TrainMoveDist) + EVT_ADD(LVar0, -425) + EVT_ADD(LVar1, 75) + EVT_ADD(LVar2, 20) + EVT_CALL(SetPlayerPos, LVar0, LVar1, LVar2) + EVT_ELSE + EVT_SET(LVar0, MV_TrainMoveDist) + EVT_ADD(LVar0, -335) + EVT_ADD(LVar1, 75) + EVT_ADD(LVar2, 20) + EVT_CALL(SetPlayerPos, LVar0, LVar1, LVar2) + EVT_END_IF + EVT_END_IF + EVT_ADD(MV_TrainMoveDist, MV_TrainMoveSpeed) + EVT_SET(LVar0, MV_TrainMoveDist) + EVT_DIV(LVar0, 75) + EVT_IF_NE(LVar0, LVarE) + EVT_SET(LVarE, LVar0) + EVT_SET(LVarD, -1) + EVT_ADD(LVarB, 1) + EVT_IF_EQ(LVarB, 10) + EVT_SET(LVarB, 0) + EVT_END_IF + EVT_END_IF + EVT_ADDF(LVarD, 1) + EVT_IF_GT(LVarD, 1000) + EVT_SET(LVarD, 1000) + EVT_END_IF + EVT_ADDF(LVarC, 1) + EVT_IF_GT(LVarC, 1000) + EVT_SET(LVarC, 0) + EVT_END_IF + EVT_WAIT(1) + EVT_GOTO(0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_UpdatePassengerPos) = { + EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_GRAVITY, FALSE) + EVT_LABEL(0) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_SET(LVar0, MV_TrainMoveDist) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_ADD(LVar0, -425) + EVT_ELSE + EVT_ADD(LVar0, -335) + EVT_END_IF + EVT_SET_VEC3(LVar3, LVar0, LVar1, LVar2) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_ADD(LVar3, -57) + EVT_ELSE + EVT_ADD(LVar3, 57) + EVT_END_IF + EVT_ADD(LVar4, -31) + EVT_ADD(LVar5, 0) + EVT_CALL(SetNpcPos, NPC_PARTNER, LVar3, LVar4, LVar5) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_ADD(LVar0, 0) + EVT_ELSE + EVT_ADD(LVar0, 0) + EVT_END_IF + EVT_ADD(LVar1, -6) + EVT_ADD(LVar2, -40) + EVT_CALL(SetNpcPos, NPC_TrainConductorToad, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_GOTO(0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_FollowTrainCamera) = { + EVT_LABEL(0) + EVT_CALL(GetPlayerPos, LVar0, LVar1, LVar2) + EVT_IF_EQ(MF_TrainReverseDir, FALSE) + EVT_IF_LT(LVar0, -1100) + EVT_SET(LVar0, -1100) + EVT_END_IF + EVT_ADD(LVar0, 40) + EVT_SET(LVar1, 30) + EVT_ADD(LVar2, 40) + EVT_ELSE + EVT_IF_LT(LVar0, -1100) + EVT_SET(LVar0, -1100) + EVT_END_IF + EVT_ADD(LVar0, -40) + EVT_SET(LVar1, 30) + EVT_ADD(LVar2, 40) + EVT_END_IF + EVT_CALL(SetCamTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_GOTO(0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_TravelToToadTown) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SetNpcAnimation, NPC_PARTNER, PARTNER_ANIM_RUN) + EVT_CALL(SetPlayerActionState, ACTION_STATE_IDLE) + EVT_CALL(InterpPlayerYaw, 270, 0) + EVT_CALL(InterpNpcYaw, NPC_PARTNER, 270, 0) + EVT_CALL(EnableNpcShadow, NPC_PARTNER, FALSE) + EVT_CALL(HidePlayerShadow, TRUE) + EVT_SET(MF_TrainScrolling, TRUE) + EVT_SET(MF_TrainReverseDir, TRUE) + EVT_EXEC(N(EVS_UpdatePassengerPos)) + EVT_THREAD + EVT_CALL(MakeLerp, 6400, -5600, 1200, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_SET(MV_TrainMoveDist, LVar0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_LOOP(0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_WAIT(1200) + EVT_CALL(GotoMap, EVT_PTR("mac_03"), mac_03_ENTRY_1) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_TravelToMtRugged) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SetNpcAnimation, NPC_PARTNER, PARTNER_ANIM_RUN) + EVT_CALL(SetPlayerActionState, ACTION_STATE_IDLE) + EVT_CALL(InterpPlayerYaw, 90, 0) + EVT_CALL(InterpNpcYaw, NPC_PARTNER, 90, 0) + EVT_CALL(EnableNpcShadow, NPC_PARTNER, FALSE) + EVT_CALL(HidePlayerShadow, TRUE) + EVT_EXEC(N(EVS_UpdatePassengerPos)) + EVT_SET(MF_TrainScrolling, TRUE) + EVT_CALL(MakeLerp, 0, 6350, 600, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_SET(MV_TrainMoveDist, LVar0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_IF_LT(GB_StoryProgress, STORY_CH2_ARRIVED_AT_MT_RUGGED) + EVT_SET(GB_StoryProgress, STORY_CH2_ARRIVED_AT_MT_RUGGED) + EVT_END_IF + EVT_IF_EQ(GF_StartedChapter2, FALSE) + EVT_SET(GF_StartedChapter2, TRUE) + EVT_CALL(FadeOutMusic, 0, 1500) + EVT_CALL(GotoMapSpecial, EVT_PTR("kmr_22"), kmr_22_ENTRY_2, TRANSITION_6) + EVT_WAIT(100) + EVT_RETURN + EVT_END_IF + EVT_CALL(GotoMap, EVT_PTR("iwa_10"), iwa_10_ENTRY_0) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_InitializeTrainScene) = { + EVT_CALL(EnableModel, MODEL_km, FALSE) + EVT_CALL(SetModelFlags, MODEL_km, MODEL_FLAGS_USE_CAMERA_UNK_MATRIX, TRUE) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(0)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(1)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(2)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(3)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(4)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(5)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(6)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(7)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(8)) + EVT_CALL(CloneModel, MODEL_km, CLONED_MODEL(9)) + EVT_SET(MF_TrainReverseDir, FALSE) + EVT_SET(MV_TrainMoveDist, -6000) + EVT_SET(MV_TrainMoveSpeed, 10) + EVT_EXEC(N(EVS_AnimateTrain)) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_11/iwa_11_3_scenery.c b/src/world/area_iwa/iwa_11/iwa_11_3_scenery.c new file mode 100644 index 0000000000..a5a35c37e1 --- /dev/null +++ b/src/world/area_iwa/iwa_11/iwa_11_3_scenery.c @@ -0,0 +1,77 @@ +#include "iwa_11.h" + +#define NUM_SECTIONS 6 + +s32 N(TrackSections)[NUM_SECTIONS] = { + MODEL_field_a, + MODEL_field_b, + MODEL_field_c, + MODEL_field_d, + MODEL_field_e, + MODEL_field_f, +}; + +s32 N(SectionOffsets)[][NUM_SECTIONS + 1] = { + { -6000, -5750, -5750, -5750, -3250, -3250, -3250 }, + { -4500, -4250, -5750, -5750, -3250, -3250, -3250 }, + { -4000, -4250, -4250, -5750, -3250, -3250, -3250 }, + { -3250, -3250, -4250, -5750, -3250, -3250, -3250 }, + { -2750, -3250, -3250, -3250, -3250, -3250, -3250 }, + { -2500, -3250, -3250, -3250, -3250, -3250, -3250 }, + { 250, -3250, -3250, -3250, -3250, -2250, -3250 }, + { 750, -3250, -3250, -3250, -750, -2250, -2250 }, + { 1500, -3250, -3250, -3250, -750, -750, -2250 }, + { 2000, -3250, -3250, -3250, -750, -750, -750 }, + { 2750, -3250, -3250, -3250, 1750, 250, -750 }, + { 3250, -3250, -3250, -3250, 1750, 250, 250 }, + { 4000, -3250, -3250, -3250, 1750, 1750, 250 }, + { 4500, -3250, -3250, -3250, 1750, 1750, 1750 }, +}; + +API_CALLABLE(N(GetSectionPosOffsets)) { + s32 value = script->varTable[0]; + s32 index, i; + + for (i = 0; i < ARRAY_COUNT(N(SectionOffsets)); i++) { + if (value < N(SectionOffsets)[i][0]) { + break; + } + } + index = i - 1; + + for (i = 0; i < NUM_SECTIONS; i++) { + script->varTable[i + 5] = N(SectionOffsets)[index][i + 1]; + } + + return ApiStatus_DONE2; +} + +EvtScript N(EVS_UpdateSceneryPos) = { + EVT_CALL(TranslateGroup, MODEL_mac_side, -5750, 0, 0) + EVT_CALL(TranslateGroup, MODEL_turen, -3250, 0, 0) + EVT_CALL(TranslateGroup, MODEL_iwa_side, 1750, 0, 0) + EVT_CALL(GetEntryID, LVar2) + EVT_SWITCH(LVar2) + EVT_CASE_EQ(iwa_11_ENTRY_0) + EVT_SET(LVar3, 350) + EVT_SET(MV_TrainMoveSpeed, 10) + EVT_CASE_EQ(iwa_11_ENTRY_1) + EVT_SET(LVar3, 400) + EVT_SET(MV_TrainMoveSpeed, -10) + EVT_END_SWITCH + EVT_LOOP(0) + EVT_SET(LVar0, MV_TrainMoveDist) + EVT_SUB(LVar0, LVar3) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, 0, 0) + EVT_CALL(N(GetSectionPosOffsets)) + EVT_CALL(TranslateGroup, MODEL_field_a, LVar5, 0, 0) + EVT_CALL(TranslateGroup, MODEL_field_b, LVar6, 0, 0) + EVT_CALL(TranslateGroup, MODEL_field_c, LVar7, 0, 0) + EVT_CALL(TranslateGroup, MODEL_field_d, LVar8, 0, 0) + EVT_CALL(TranslateGroup, MODEL_field_e, LVar9, 0, 0) + EVT_CALL(TranslateGroup, MODEL_field_f, LVarA, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_iwa/iwa_11/iwa_11_4_npc.c b/src/world/area_iwa/iwa_11/iwa_11_4_npc.c new file mode 100644 index 0000000000..97c28e0c4b --- /dev/null +++ b/src/world/area_iwa/iwa_11/iwa_11_4_npc.c @@ -0,0 +1,51 @@ +#include "iwa_11.h" + +#include "world/common/npc/TrainConductorToad.inc.c" + +NpcSettings N(NpcSettings_Unused1) = { + .height = 30, + .radius = 24, + .level = 99, +}; + +NpcSettings N(NpcSettings_Unused2) = { + .height = 23, + .radius = 19, + .level = 99, +}; + +NpcSettings N(NpcSettings_Unused3) = { + .height = 26, + .radius = 23, + .level = 99, +}; + +EvtScript N(EVS_NpcInit_TrainConductorToad) = { + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(GetEntryID, LVar0) + EVT_IF_EQ(LVar0, iwa_11_ENTRY_0) + EVT_CALL(SetNpcPos, NPC_SELF, -425, 70, -20) + EVT_CALL(InterpNpcYaw, NPC_SELF, 90, 0) + EVT_ELSE + EVT_CALL(SetNpcPos, NPC_SELF, -425, 70, -20) + EVT_CALL(InterpNpcYaw, NPC_SELF, 270, 0) + EVT_END_IF + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_TrainConductorToad) = { + .id = NPC_TrainConductorToad, + .settings = &N(NpcSettings_TrainConductorToad), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 90, + .flags = NPC_FLAG_PASSIVE | NPC_FLAG_ENABLE_HIT_SCRIPT | NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW | NPC_FLAG_400000, + .init = &N(EVS_NpcInit_TrainConductorToad), + .drops = TRAIN_CONDUCTOR_DROPS, + .animations = TRAIN_CONDUCTOR_ANIMS, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_TrainConductorToad)), + {} +}; diff --git a/src/world/area_kkj/kkj_10/ACAB90.c b/src/world/area_kkj/kkj_10/ACAB90.c index 3c9661efad..90dd6f9e31 100644 --- a/src/world/area_kkj/kkj_10/ACAB90.c +++ b/src/world/area_kkj/kkj_10/ACAB90.c @@ -1,3 +1,3 @@ #include "kkj_10.h" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" diff --git a/src/world/area_kkj/kkj_11/ACE1B0.c b/src/world/area_kkj/kkj_11/ACE1B0.c index 5d107a42cc..a5363e2dca 100644 --- a/src/world/area_kkj/kkj_11/ACE1B0.c +++ b/src/world/area_kkj/kkj_11/ACE1B0.c @@ -1,3 +1,3 @@ #include "kkj_11.h" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" diff --git a/src/world/area_kpa/kpa_113/A9CC30.c b/src/world/area_kpa/kpa_113/A9CC30.c index 27b26f1df2..59ed9c2999 100644 --- a/src/world/area_kpa/kpa_113/A9CC30.c +++ b/src/world/area_kpa/kpa_113/A9CC30.c @@ -5,4 +5,4 @@ static char* N(exit_str_1) = "kpa_114"; static char* N(exit_str_2) = "kpa_82"; static char* N(exit_str_3) = ""; -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" diff --git a/src/world/area_kpa/kpa_134/AA94B0.c b/src/world/area_kpa/kpa_134/AA94B0.c index 829ba7e470..074055b88f 100644 --- a/src/world/area_kpa/kpa_134/AA94B0.c +++ b/src/world/area_kpa/kpa_134/AA94B0.c @@ -11,6 +11,6 @@ ApiStatus func_80240510_AA94B0(Evt* script, s32 isInitialCall) { #include "world/common/SetEntityPosition.inc.c" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_kpa/kpa_14/A57830.c b/src/world/area_kpa/kpa_14/A57830.c index 30945b97db..55723b275b 100644 --- a/src/world/area_kpa/kpa_14/A57830.c +++ b/src/world/area_kpa/kpa_14/A57830.c @@ -8,7 +8,7 @@ #include "world/common/IsItemBadge.inc.c" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_kpa/kpa_52/A67100.c b/src/world/area_kpa/kpa_52/A67100.c index c26f5a06da..17d64919f6 100644 --- a/src/world/area_kpa/kpa_52/A67100.c +++ b/src/world/area_kpa/kpa_52/A67100.c @@ -5,6 +5,6 @@ static char* N(exit_str_1) = "kpa_40"; static char* N(exit_str_2) = "kpa_08"; static char* N(exit_str_3) = ""; -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_kpa/kpa_60/A6CB00.c b/src/world/area_kpa/kpa_60/A6CB00.c index c304120f6f..095a5054ec 100644 --- a/src/world/area_kpa/kpa_60/A6CB00.c +++ b/src/world/area_kpa/kpa_60/A6CB00.c @@ -9,6 +9,6 @@ static char* N(exit_str_5) = "kmr_22"; static char* N(exit_str_6) = "hos_20"; static char* N(exit_str_7) = ""; -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_kpa/kpa_62/A72220.c b/src/world/area_kpa/kpa_62/A72220.c index 9f8a6ee9d4..633e7e31e0 100644 --- a/src/world/area_kpa/kpa_62/A72220.c +++ b/src/world/area_kpa/kpa_62/A72220.c @@ -5,6 +5,6 @@ static char* N(exit_str_1) = "kpa_10"; static char* N(exit_str_2) = "kpa_11"; static char* N(exit_str_3) = "kpa_63"; -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_kpa/kpa_91/A88280.c b/src/world/area_kpa/kpa_91/A88280.c index 1574eae982..95957b09fa 100644 --- a/src/world/area_kpa/kpa_91/A88280.c +++ b/src/world/area_kpa/kpa_91/A88280.c @@ -1,5 +1,5 @@ #include "kpa_91.h" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_kpa/kpa_95/A8CA80.c b/src/world/area_kpa/kpa_95/A8CA80.c index e20ba4fbde..b08b0da941 100644 --- a/src/world/area_kpa/kpa_95/A8CA80.c +++ b/src/world/area_kpa/kpa_95/A8CA80.c @@ -3,6 +3,6 @@ static char* N(exit_str_0) = "kpa_94"; static char* N(exit_str_1) = ""; -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_kzn/kzn_02/kzn_02_3_npc.c b/src/world/area_kzn/kzn_02/kzn_02_3_npc.c index b3d70964ad..f6894eeced 100644 --- a/src/world/area_kzn/kzn_02/kzn_02_3_npc.c +++ b/src/world/area_kzn/kzn_02/kzn_02_3_npc.c @@ -229,17 +229,7 @@ StaticNpc N(NpcData_LavaBubble) = { .pos = { 250.0f, 50.0f, 0.0f }, .yaw = 90, .flags = NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 3, - }, + .drops = LAVA_BUBBLE_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -252,24 +242,7 @@ StaticNpc N(NpcData_LavaBubble) = { .detectSize = { 70, 200 }, } }, - .animations = { - .idle = ANIM_LavaBubble_Anim01, - .walk = ANIM_LavaBubble_Anim02, - .run = ANIM_LavaBubble_Anim03, - .chase = ANIM_LavaBubble_Anim03, - .anim_4 = ANIM_LavaBubble_Anim01, - .anim_5 = ANIM_LavaBubble_Anim01, - .death = ANIM_LavaBubble_Anim07, - .hit = ANIM_LavaBubble_Anim07, - .anim_8 = ANIM_LavaBubble_Anim04, - .anim_9 = ANIM_LavaBubble_Anim01, - .anim_A = ANIM_LavaBubble_Anim01, - .anim_B = ANIM_LavaBubble_Anim01, - .anim_C = ANIM_LavaBubble_Anim01, - .anim_D = ANIM_LavaBubble_Anim01, - .anim_E = ANIM_LavaBubble_Anim01, - .anim_F = ANIM_LavaBubble_Anim01, - }, + .animations = LAVA_BUBBLE_ANIMS, .aiDetectFlags = AI_DETECT_SENSITIVE_MOTION, }; diff --git a/src/world/area_kzn/kzn_03/kzn_03_2_npc.c b/src/world/area_kzn/kzn_03/kzn_03_2_npc.c index 13179ec0e8..31a6e367c4 100644 --- a/src/world/area_kzn/kzn_03/kzn_03_2_npc.c +++ b/src/world/area_kzn/kzn_03/kzn_03_2_npc.c @@ -290,17 +290,7 @@ StaticNpc N(NpcData_SpikeTop_01) = { .pos = { 140.0f, 670.0f, -20.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SODA, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(4), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 2, - .maxCoinBonus = 3, - }, + .drops = SPIKE_TOP_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -313,24 +303,7 @@ StaticNpc N(NpcData_SpikeTop_01) = { .detectSize = { 240, 115 }, } }, - .animations = { - .idle = ANIM_SpikeTop_Anim03, - .walk = ANIM_SpikeTop_Anim06, - .run = ANIM_SpikeTop_Anim08, - .chase = ANIM_SpikeTop_Anim08, - .anim_4 = ANIM_SpikeTop_Anim03, - .anim_5 = ANIM_SpikeTop_Anim03, - .death = ANIM_SpikeTop_Anim13, - .hit = ANIM_SpikeTop_Anim13, - .anim_8 = ANIM_SpikeTop_Anim0B, - .anim_9 = ANIM_SpikeTop_Anim0A, - .anim_A = ANIM_SpikeTop_Anim0C, - .anim_B = ANIM_SpikeTop_Anim03, - .anim_C = ANIM_SpikeTop_Anim03, - .anim_D = ANIM_SpikeTop_Anim03, - .anim_E = ANIM_SpikeTop_Anim03, - .anim_F = ANIM_SpikeTop_Anim03, - }, + .animations = SPIKE_TOP_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT | AI_DETECT_SENSITIVE_MOTION, }; @@ -340,17 +313,7 @@ StaticNpc N(NpcData_SpikeTop_02) = { .pos = { -200.0f, 670.0f, -35.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SODA, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(4), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 2, - .maxCoinBonus = 3, - }, + .drops = SPIKE_TOP_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -363,24 +326,7 @@ StaticNpc N(NpcData_SpikeTop_02) = { .detectSize = { 240, 115 }, } }, - .animations = { - .idle = ANIM_SpikeTop_Anim03, - .walk = ANIM_SpikeTop_Anim06, - .run = ANIM_SpikeTop_Anim08, - .chase = ANIM_SpikeTop_Anim08, - .anim_4 = ANIM_SpikeTop_Anim03, - .anim_5 = ANIM_SpikeTop_Anim03, - .death = ANIM_SpikeTop_Anim13, - .hit = ANIM_SpikeTop_Anim13, - .anim_8 = ANIM_SpikeTop_Anim0B, - .anim_9 = ANIM_SpikeTop_Anim0A, - .anim_A = ANIM_SpikeTop_Anim0C, - .anim_B = ANIM_SpikeTop_Anim03, - .anim_C = ANIM_SpikeTop_Anim03, - .anim_D = ANIM_SpikeTop_Anim03, - .anim_E = ANIM_SpikeTop_Anim03, - .anim_F = ANIM_SpikeTop_Anim03, - }, + .animations = SPIKE_TOP_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT | AI_DETECT_SENSITIVE_MOTION, }; @@ -390,17 +336,7 @@ StaticNpc N(NpcData_SpikeTop_03) = { .pos = { 30.0f, 20.0f, 320.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SODA, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(4), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 2, - .maxCoinBonus = 3, - }, + .drops = SPIKE_TOP_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -413,24 +349,7 @@ StaticNpc N(NpcData_SpikeTop_03) = { .detectSize = { 180, 95 }, } }, - .animations = { - .idle = ANIM_SpikeTop_Anim03, - .walk = ANIM_SpikeTop_Anim06, - .run = ANIM_SpikeTop_Anim08, - .chase = ANIM_SpikeTop_Anim08, - .anim_4 = ANIM_SpikeTop_Anim03, - .anim_5 = ANIM_SpikeTop_Anim03, - .death = ANIM_SpikeTop_Anim13, - .hit = ANIM_SpikeTop_Anim13, - .anim_8 = ANIM_SpikeTop_Anim0B, - .anim_9 = ANIM_SpikeTop_Anim0A, - .anim_A = ANIM_SpikeTop_Anim0C, - .anim_B = ANIM_SpikeTop_Anim03, - .anim_C = ANIM_SpikeTop_Anim03, - .anim_D = ANIM_SpikeTop_Anim03, - .anim_E = ANIM_SpikeTop_Anim03, - .anim_F = ANIM_SpikeTop_Anim03, - }, + .animations = SPIKE_TOP_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT | AI_DETECT_SENSITIVE_MOTION, }; @@ -441,17 +360,7 @@ StaticNpc N(NpcData_PutridPiranha)[] = { .pos = { 260.0f, 20.0f, 255.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 3, - }, + .drops = PUTRID_PIRANHA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -464,56 +373,10 @@ StaticNpc N(NpcData_PutridPiranha)[] = { .detectSize = { 100, 50 }, } }, - .animations = { - .idle = ANIM_LargePiranha_Putrid_Anim01, - .walk = ANIM_LargePiranha_Putrid_Anim02, - .run = ANIM_LargePiranha_Putrid_Anim03, - .chase = ANIM_LargePiranha_Putrid_Anim03, - .anim_4 = ANIM_LargePiranha_Putrid_Anim01, - .anim_5 = ANIM_LargePiranha_Putrid_Anim01, - .death = ANIM_LargePiranha_Putrid_Anim0E, - .hit = ANIM_LargePiranha_Putrid_Anim0E, - .anim_8 = ANIM_LargePiranha_Putrid_Anim18, - .anim_9 = ANIM_LargePiranha_Putrid_Anim17, - .anim_A = ANIM_LargePiranha_Putrid_Anim05, - .anim_B = ANIM_LargePiranha_Putrid_Anim06, - .anim_C = ANIM_LargePiranha_Putrid_Anim07, - .anim_D = ANIM_LargePiranha_Putrid_Anim01, - .anim_E = ANIM_LargePiranha_Putrid_Anim01, - .anim_F = ANIM_LargePiranha_Putrid_Anim01, - }, + .animations = PUTRID_PIRANHA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT | AI_DETECT_SENSITIVE_MOTION, }, - { - .id = NPC_Piranha_Hitbox, - .settings = &N(NpcSettings_PutridPiranha_Hitbox), - .pos = { NPC_DISPOSE_LOCATION }, - .yaw = 0, - .flags = NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_DROPS, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - .idle = ANIM_LargePiranha_Putrid_Anim01, - .walk = ANIM_LargePiranha_Putrid_Anim02, - .run = ANIM_LargePiranha_Putrid_Anim03, - .chase = ANIM_LargePiranha_Putrid_Anim03, - .anim_4 = ANIM_LargePiranha_Putrid_Anim01, - .anim_5 = ANIM_LargePiranha_Putrid_Anim01, - .death = ANIM_LargePiranha_Putrid_Anim0E, - .hit = ANIM_LargePiranha_Putrid_Anim0E, - .anim_8 = ANIM_LargePiranha_Putrid_Anim18, - .anim_9 = ANIM_LargePiranha_Putrid_Anim17, - .anim_A = ANIM_LargePiranha_Putrid_Anim05, - .anim_B = ANIM_LargePiranha_Putrid_Anim06, - .anim_C = ANIM_LargePiranha_Putrid_Anim07, - .anim_D = ANIM_LargePiranha_Putrid_Anim01, - .anim_E = ANIM_LargePiranha_Putrid_Anim01, - .anim_F = ANIM_LargePiranha_Putrid_Anim01, - }, - }, + PUTRID_PIRANHA_HITBOX(NPC_Piranha_Hitbox), }; NpcGroupList N(DefaultNPCs) = { diff --git a/src/world/area_kzn/kzn_03/kzn_03_3_entity.c b/src/world/area_kzn/kzn_03/kzn_03_3_entity.c index 4e65cfd1b4..e109de10af 100644 --- a/src/world/area_kzn/kzn_03/kzn_03_3_entity.c +++ b/src/world/area_kzn/kzn_03/kzn_03_3_entity.c @@ -105,7 +105,7 @@ EvtScript N(EVS_MakeEntities) = { EVT_CALL(MakeItemEntity, ITEM_FIRE_SHIELD, 75, 290, 235, ITEM_SPAWN_MODE_FIXED_NEVER_VANISH, GF_KZN03_Item_FireShield) EVT_CALL(MakeEntity, EVT_PTR(Entity_BrickBlock), 215, 745, -105, 0, MAKE_ENTITY_END) EVT_CALL(MakeEntity, EVT_PTR(Entity_BrickBlock), 85, 770, -105, 0, MAKE_ENTITY_END) - EVT_CALL(MakeItemEntity, ITEM_P_O_W_BLOCK, 85, 795, -105, ITEM_SPAWN_MODE_FALL_NEVER_VANISH, GF_KZN03_Item_POWBlock) + EVT_CALL(MakeItemEntity, ITEM_POW_BLOCK, 85, 795, -105, ITEM_SPAWN_MODE_FALL_NEVER_VANISH, GF_KZN03_Item_POWBlock) EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), 35, 730, -105, 0, ITEM_COIN, MAKE_ENTITY_END) EVT_CALL(AssignBlockFlag, GF_KZN03_ItemBlock_CoinA) EVT_CALL(MakeEntity, EVT_PTR(Entity_YellowBlock), -15, 730, -105, 0, ITEM_COIN, MAKE_ENTITY_END) diff --git a/src/world/area_kzn/kzn_06/kzn_06_2_entity.c b/src/world/area_kzn/kzn_06/kzn_06_2_entity.c index 5c2a372148..330d299a69 100644 --- a/src/world/area_kzn/kzn_06/kzn_06_2_entity.c +++ b/src/world/area_kzn/kzn_06/kzn_06_2_entity.c @@ -14,7 +14,7 @@ EvtScript N(EVS_MakeEntities) = { EVT_CALL(MakeEntity, EVT_PTR(Entity_HiddenYellowBlock), 325, 205, -30, 0, ITEM_LIFE_SHROOM, MAKE_ENTITY_END) EVT_CALL(AssignBlockFlag, GF_KZN06_HiddenItem_LifeShroom) EVT_IF_EQ(GF_KZN06_Hammer3Block, FALSE) - EVT_CALL(MakeEntity, EVT_PTR(Entity_Hammer3Block_TallHitbox), 385, 5, 180, 0, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_Hammer3Block_WideZ), 385, 5, 180, 0, MAKE_ENTITY_END) EVT_CALL(AssignScript, EVT_PTR(N(EVS_OnBreakBlock))) EVT_END_IF EVT_IF_LT(GB_StoryProgress, STORY_CH5_LAVA_STREAM_BLOCKED) diff --git a/src/world/area_kzn/kzn_07/kzn_07_2_entity.c b/src/world/area_kzn/kzn_07/kzn_07_2_entity.c index 13da753e66..ae391338dc 100644 --- a/src/world/area_kzn/kzn_07/kzn_07_2_entity.c +++ b/src/world/area_kzn/kzn_07/kzn_07_2_entity.c @@ -39,7 +39,7 @@ EvtScript N(EVS_MakeEntities) = { EVT_CALL(AssignChestFlag, GF_KZN07_GiantChest) EVT_EXEC(N(EVS_MonitorChestStatus)) EVT_IF_EQ(GF_KZN07_Hammer3Block, FALSE) - EVT_CALL(MakeEntity, EVT_PTR(Entity_Hammer3Block_TallHitbox), 175, 35, -185, 0, MAKE_ENTITY_END) + EVT_CALL(MakeEntity, EVT_PTR(Entity_Hammer3Block_WideZ), 175, 35, -185, 0, MAKE_ENTITY_END) EVT_CALL(AssignScript, EVT_PTR(N(EVS_OnBreakBlock))) EVT_END_IF EVT_CALL(CreatePushBlockGrid, 0, 15, 5, -62, 0, 35, 0) diff --git a/src/world/area_kzn/kzn_07/kzn_07_3_enemy.c b/src/world/area_kzn/kzn_07/kzn_07_3_enemy.c index a81ef70802..4d48d68787 100644 --- a/src/world/area_kzn/kzn_07/kzn_07_3_enemy.c +++ b/src/world/area_kzn/kzn_07/kzn_07_3_enemy.c @@ -9,17 +9,7 @@ StaticNpc N(NpcData_LavaBubble_01) = { .pos = { -200.0f, 50.0f, 150.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 3, - }, + .drops = LAVA_BUBBLE_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +22,7 @@ StaticNpc N(NpcData_LavaBubble_01) = { .detectSize = { 300 }, } }, - .animations = { - .idle = ANIM_LavaBubble_Anim01, - .walk = ANIM_LavaBubble_Anim02, - .run = ANIM_LavaBubble_Anim03, - .chase = ANIM_LavaBubble_Anim03, - .anim_4 = ANIM_LavaBubble_Anim01, - .anim_5 = ANIM_LavaBubble_Anim01, - .death = ANIM_LavaBubble_Anim07, - .hit = ANIM_LavaBubble_Anim07, - .anim_8 = ANIM_LavaBubble_Anim04, - .anim_9 = ANIM_LavaBubble_Anim01, - .anim_A = ANIM_LavaBubble_Anim01, - .anim_B = ANIM_LavaBubble_Anim01, - .anim_C = ANIM_LavaBubble_Anim01, - .anim_D = ANIM_LavaBubble_Anim01, - .anim_E = ANIM_LavaBubble_Anim01, - .anim_F = ANIM_LavaBubble_Anim01, - }, + .animations = LAVA_BUBBLE_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT | AI_DETECT_SENSITIVE_MOTION, }; @@ -59,17 +32,7 @@ StaticNpc N(NpcData_LavaBubble_02) = { .pos = { -250.0f, 80.0f, 50.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 3, - }, + .drops = LAVA_BUBBLE_DROPS, .territory = { .wander = { .isFlying = FALSE, @@ -82,24 +45,7 @@ StaticNpc N(NpcData_LavaBubble_02) = { .detectSize = { 300 }, } }, - .animations = { - .idle = ANIM_LavaBubble_Anim01, - .walk = ANIM_LavaBubble_Anim02, - .run = ANIM_LavaBubble_Anim03, - .chase = ANIM_LavaBubble_Anim03, - .anim_4 = ANIM_LavaBubble_Anim01, - .anim_5 = ANIM_LavaBubble_Anim01, - .death = ANIM_LavaBubble_Anim07, - .hit = ANIM_LavaBubble_Anim07, - .anim_8 = ANIM_LavaBubble_Anim04, - .anim_9 = ANIM_LavaBubble_Anim01, - .anim_A = ANIM_LavaBubble_Anim01, - .anim_B = ANIM_LavaBubble_Anim01, - .anim_C = ANIM_LavaBubble_Anim01, - .anim_D = ANIM_LavaBubble_Anim01, - .anim_E = ANIM_LavaBubble_Anim01, - .anim_F = ANIM_LavaBubble_Anim01, - }, + .animations = LAVA_BUBBLE_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT | AI_DETECT_SENSITIVE_MOTION, }; diff --git a/src/world/area_kzn/kzn_08/kzn_08.h b/src/world/area_kzn/kzn_08/kzn_08.h index 9aba79116f..62d05493f9 100644 --- a/src/world/area_kzn/kzn_08/kzn_08.h +++ b/src/world/area_kzn/kzn_08/kzn_08.h @@ -12,8 +12,8 @@ #include "sprite/npc/LargePiranha.h" enum { - NPC_PutridPiranha_01 = 0, - NPC_PutridPiranha_02 = 1 + NPC_PutridPiranha = 0, + NPC_Piranha_Hitbox = 1 }; enum { diff --git a/src/world/area_kzn/kzn_08/kzn_08_3_enemy.c b/src/world/area_kzn/kzn_08/kzn_08_3_enemy.c index b605a6757a..f7f77b5e96 100644 --- a/src/world/area_kzn/kzn_08/kzn_08_3_enemy.c +++ b/src/world/area_kzn/kzn_08/kzn_08_3_enemy.c @@ -5,22 +5,12 @@ StaticNpc N(NpcData_PutridPiranha)[] = { { - .id = NPC_PutridPiranha_01, + .id = NPC_PutridPiranha, .settings = &N(NpcSettings_PutridPiranha), .pos = { 80.0f, 0.0f, 135.0f }, .yaw = 270, .flags = NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 3, - }, + .drops = PUTRID_PIRANHA_DROPS, .territory = { .wander = { .isFlying = FALSE, @@ -33,56 +23,10 @@ StaticNpc N(NpcData_PutridPiranha)[] = { .detectSize = { 130, 60 }, } }, - .animations = { - .idle = ANIM_LargePiranha_Putrid_Anim01, - .walk = ANIM_LargePiranha_Putrid_Anim02, - .run = ANIM_LargePiranha_Putrid_Anim03, - .chase = ANIM_LargePiranha_Putrid_Anim03, - .anim_4 = ANIM_LargePiranha_Putrid_Anim01, - .anim_5 = ANIM_LargePiranha_Putrid_Anim01, - .death = ANIM_LargePiranha_Putrid_Anim0E, - .hit = ANIM_LargePiranha_Putrid_Anim0E, - .anim_8 = ANIM_LargePiranha_Putrid_Anim18, - .anim_9 = ANIM_LargePiranha_Putrid_Anim17, - .anim_A = ANIM_LargePiranha_Putrid_Anim05, - .anim_B = ANIM_LargePiranha_Putrid_Anim06, - .anim_C = ANIM_LargePiranha_Putrid_Anim07, - .anim_D = ANIM_LargePiranha_Putrid_Anim01, - .anim_E = ANIM_LargePiranha_Putrid_Anim01, - .anim_F = ANIM_LargePiranha_Putrid_Anim01, - }, + .animations = PUTRID_PIRANHA_ANIMS, .aiDetectFlags = AI_DETECT_SENSITIVE_MOTION, }, - { - .id = NPC_PutridPiranha_02, - .settings = &N(NpcSettings_PutridPiranha_Hitbox), - .pos = { NPC_DISPOSE_LOCATION }, - .yaw = 0, - .flags = NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_DROPS, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - .idle = ANIM_LargePiranha_Putrid_Anim01, - .walk = ANIM_LargePiranha_Putrid_Anim02, - .run = ANIM_LargePiranha_Putrid_Anim03, - .chase = ANIM_LargePiranha_Putrid_Anim03, - .anim_4 = ANIM_LargePiranha_Putrid_Anim01, - .anim_5 = ANIM_LargePiranha_Putrid_Anim01, - .death = ANIM_LargePiranha_Putrid_Anim0E, - .hit = ANIM_LargePiranha_Putrid_Anim0E, - .anim_8 = ANIM_LargePiranha_Putrid_Anim18, - .anim_9 = ANIM_LargePiranha_Putrid_Anim17, - .anim_A = ANIM_LargePiranha_Putrid_Anim05, - .anim_B = ANIM_LargePiranha_Putrid_Anim06, - .anim_C = ANIM_LargePiranha_Putrid_Anim07, - .anim_D = ANIM_LargePiranha_Putrid_Anim01, - .anim_E = ANIM_LargePiranha_Putrid_Anim01, - .anim_F = ANIM_LargePiranha_Putrid_Anim01, - }, - }, + PUTRID_PIRANHA_HITBOX(NPC_Piranha_Hitbox), }; NpcGroupList N(DefaultNPCs) = { diff --git a/src/world/area_kzn/kzn_09/kzn_09_4_npc.c b/src/world/area_kzn/kzn_09/kzn_09_4_npc.c index 158232fb78..208ef2b053 100644 --- a/src/world/area_kzn/kzn_09/kzn_09_4_npc.c +++ b/src/world/area_kzn/kzn_09/kzn_09_4_npc.c @@ -321,17 +321,7 @@ StaticNpc N(NpcData_SpikeTop) = { .pos = { -100.0f, 350.0f, 50.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SODA, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(4), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 2, - .maxCoinBonus = 3, - }, + .drops = SPIKE_TOP_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -344,24 +334,7 @@ StaticNpc N(NpcData_SpikeTop) = { .detectSize = { 200 }, } }, - .animations = { - .idle = ANIM_SpikeTop_Anim03, - .walk = ANIM_SpikeTop_Anim06, - .run = ANIM_SpikeTop_Anim08, - .chase = ANIM_SpikeTop_Anim08, - .anim_4 = ANIM_SpikeTop_Anim03, - .anim_5 = ANIM_SpikeTop_Anim03, - .death = ANIM_SpikeTop_Anim13, - .hit = ANIM_SpikeTop_Anim13, - .anim_8 = ANIM_SpikeTop_Anim0B, - .anim_9 = ANIM_SpikeTop_Anim0A, - .anim_A = ANIM_SpikeTop_Anim0C, - .anim_B = ANIM_SpikeTop_Anim03, - .anim_C = ANIM_SpikeTop_Anim03, - .anim_D = ANIM_SpikeTop_Anim03, - .anim_E = ANIM_SpikeTop_Anim03, - .anim_F = ANIM_SpikeTop_Anim03, - }, + .animations = SPIKE_TOP_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT | AI_DETECT_SENSITIVE_MOTION, }; @@ -372,17 +345,7 @@ StaticNpc N(NpcData_PutridPiranha)[] = { .pos = { 200.0f, 350.0f, 100.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 3, - }, + .drops = PUTRID_PIRANHA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -395,56 +358,10 @@ StaticNpc N(NpcData_PutridPiranha)[] = { .detectSize = { 220, 165 }, } }, - .animations = { - .idle = ANIM_LargePiranha_Putrid_Anim01, - .walk = ANIM_LargePiranha_Putrid_Anim02, - .run = ANIM_LargePiranha_Putrid_Anim03, - .chase = ANIM_LargePiranha_Putrid_Anim03, - .anim_4 = ANIM_LargePiranha_Putrid_Anim01, - .anim_5 = ANIM_LargePiranha_Putrid_Anim01, - .death = ANIM_LargePiranha_Putrid_Anim0E, - .hit = ANIM_LargePiranha_Putrid_Anim0E, - .anim_8 = ANIM_LargePiranha_Putrid_Anim18, - .anim_9 = ANIM_LargePiranha_Putrid_Anim17, - .anim_A = ANIM_LargePiranha_Putrid_Anim05, - .anim_B = ANIM_LargePiranha_Putrid_Anim06, - .anim_C = ANIM_LargePiranha_Putrid_Anim07, - .anim_D = ANIM_LargePiranha_Putrid_Anim01, - .anim_E = ANIM_LargePiranha_Putrid_Anim01, - .anim_F = ANIM_LargePiranha_Putrid_Anim01, - }, + .animations = PUTRID_PIRANHA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT | AI_DETECT_SENSITIVE_MOTION, }, - { - .id = NPC_Piranha_Hitbox, - .settings = &N(NpcSettings_PutridPiranha_Hitbox), - .pos = { NPC_DISPOSE_LOCATION }, - .yaw = 0, - .flags = NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_DROPS, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - .idle = ANIM_LargePiranha_Putrid_Anim01, - .walk = ANIM_LargePiranha_Putrid_Anim02, - .run = ANIM_LargePiranha_Putrid_Anim03, - .chase = ANIM_LargePiranha_Putrid_Anim03, - .anim_4 = ANIM_LargePiranha_Putrid_Anim01, - .anim_5 = ANIM_LargePiranha_Putrid_Anim01, - .death = ANIM_LargePiranha_Putrid_Anim0E, - .hit = ANIM_LargePiranha_Putrid_Anim0E, - .anim_8 = ANIM_LargePiranha_Putrid_Anim18, - .anim_9 = ANIM_LargePiranha_Putrid_Anim17, - .anim_A = ANIM_LargePiranha_Putrid_Anim05, - .anim_B = ANIM_LargePiranha_Putrid_Anim06, - .anim_C = ANIM_LargePiranha_Putrid_Anim07, - .anim_D = ANIM_LargePiranha_Putrid_Anim01, - .anim_E = ANIM_LargePiranha_Putrid_Anim01, - .anim_F = ANIM_LargePiranha_Putrid_Anim01, - }, - }, + PUTRID_PIRANHA_HITBOX(NPC_Piranha_Hitbox) }; NpcGroupList N(DefaultNPCs) = { diff --git a/src/world/area_kzn/kzn_11/kzn_11_3_npc.c b/src/world/area_kzn/kzn_11/kzn_11_3_npc.c index 0ba37d1883..745fe57a3d 100644 --- a/src/world/area_kzn/kzn_11/kzn_11_3_npc.c +++ b/src/world/area_kzn/kzn_11/kzn_11_3_npc.c @@ -277,17 +277,7 @@ StaticNpc N(NpcData_Bubble_01) = { .pos = { -150.0f, 50.0f, 10.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 3, - }, + .drops = LAVA_BUBBLE_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -300,24 +290,7 @@ StaticNpc N(NpcData_Bubble_01) = { .detectSize = { 150 }, } }, - .animations = { - .idle = ANIM_LavaBubble_Anim01, - .walk = ANIM_LavaBubble_Anim02, - .run = ANIM_LavaBubble_Anim03, - .chase = ANIM_LavaBubble_Anim03, - .anim_4 = ANIM_LavaBubble_Anim01, - .anim_5 = ANIM_LavaBubble_Anim01, - .death = ANIM_LavaBubble_Anim07, - .hit = ANIM_LavaBubble_Anim07, - .anim_8 = ANIM_LavaBubble_Anim04, - .anim_9 = ANIM_LavaBubble_Anim01, - .anim_A = ANIM_LavaBubble_Anim01, - .anim_B = ANIM_LavaBubble_Anim01, - .anim_C = ANIM_LavaBubble_Anim01, - .anim_D = ANIM_LavaBubble_Anim01, - .anim_E = ANIM_LavaBubble_Anim01, - .anim_F = ANIM_LavaBubble_Anim01, - }, + .animations = LAVA_BUBBLE_ANIMS, .aiDetectFlags = AI_DETECT_SENSITIVE_MOTION, }; @@ -327,17 +300,7 @@ StaticNpc N(NpcData_Bubble_02) = { .pos = { 150.0f, 50.0f, 10.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 3, - }, + .drops = LAVA_BUBBLE_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -350,24 +313,7 @@ StaticNpc N(NpcData_Bubble_02) = { .detectSize = { 150 }, } }, - .animations = { - .idle = ANIM_LavaBubble_Anim01, - .walk = ANIM_LavaBubble_Anim02, - .run = ANIM_LavaBubble_Anim03, - .chase = ANIM_LavaBubble_Anim03, - .anim_4 = ANIM_LavaBubble_Anim01, - .anim_5 = ANIM_LavaBubble_Anim01, - .death = ANIM_LavaBubble_Anim07, - .hit = ANIM_LavaBubble_Anim07, - .anim_8 = ANIM_LavaBubble_Anim04, - .anim_9 = ANIM_LavaBubble_Anim01, - .anim_A = ANIM_LavaBubble_Anim01, - .anim_B = ANIM_LavaBubble_Anim01, - .anim_C = ANIM_LavaBubble_Anim01, - .anim_D = ANIM_LavaBubble_Anim01, - .anim_E = ANIM_LavaBubble_Anim01, - .anim_F = ANIM_LavaBubble_Anim01, - }, + .animations = LAVA_BUBBLE_ANIMS, .aiDetectFlags = AI_DETECT_SENSITIVE_MOTION, }; diff --git a/src/world/area_kzn/kzn_17/kzn_17_3_npc.c b/src/world/area_kzn/kzn_17/kzn_17_3_npc.c index 03171373b5..902738fafa 100644 --- a/src/world/area_kzn/kzn_17/kzn_17_3_npc.c +++ b/src/world/area_kzn/kzn_17/kzn_17_3_npc.c @@ -198,17 +198,7 @@ StaticNpc N(NpcData_Piranha)[] = { .pos = { -325.0f, 0.0f, 150.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SHROOM, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 3, - }, + .drops = PUTRID_PIRANHA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -221,56 +211,10 @@ StaticNpc N(NpcData_Piranha)[] = { .detectSize = { 270, 130 }, } }, - .animations = { - .idle = ANIM_LargePiranha_Putrid_Anim01, - .walk = ANIM_LargePiranha_Putrid_Anim02, - .run = ANIM_LargePiranha_Putrid_Anim03, - .chase = ANIM_LargePiranha_Putrid_Anim03, - .anim_4 = ANIM_LargePiranha_Putrid_Anim01, - .anim_5 = ANIM_LargePiranha_Putrid_Anim01, - .death = ANIM_LargePiranha_Putrid_Anim0E, - .hit = ANIM_LargePiranha_Putrid_Anim0E, - .anim_8 = ANIM_LargePiranha_Putrid_Anim18, - .anim_9 = ANIM_LargePiranha_Putrid_Anim17, - .anim_A = ANIM_LargePiranha_Putrid_Anim05, - .anim_B = ANIM_LargePiranha_Putrid_Anim06, - .anim_C = ANIM_LargePiranha_Putrid_Anim07, - .anim_D = ANIM_LargePiranha_Putrid_Anim01, - .anim_E = ANIM_LargePiranha_Putrid_Anim01, - .anim_F = ANIM_LargePiranha_Putrid_Anim01, - }, + .animations = PUTRID_PIRANHA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT | AI_DETECT_SENSITIVE_MOTION, }, - { - .id = NPC_Piranha_Hitbox, - .settings = &N(NpcSettings_PutridPiranha_Hitbox), - .pos = { NPC_DISPOSE_LOCATION }, - .yaw = 0, - .flags = NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_DROPS, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - .idle = ANIM_LargePiranha_Putrid_Anim01, - .walk = ANIM_LargePiranha_Putrid_Anim02, - .run = ANIM_LargePiranha_Putrid_Anim03, - .chase = ANIM_LargePiranha_Putrid_Anim03, - .anim_4 = ANIM_LargePiranha_Putrid_Anim01, - .anim_5 = ANIM_LargePiranha_Putrid_Anim01, - .death = ANIM_LargePiranha_Putrid_Anim0E, - .hit = ANIM_LargePiranha_Putrid_Anim0E, - .anim_8 = ANIM_LargePiranha_Putrid_Anim18, - .anim_9 = ANIM_LargePiranha_Putrid_Anim17, - .anim_A = ANIM_LargePiranha_Putrid_Anim05, - .anim_B = ANIM_LargePiranha_Putrid_Anim06, - .anim_C = ANIM_LargePiranha_Putrid_Anim07, - .anim_D = ANIM_LargePiranha_Putrid_Anim01, - .anim_E = ANIM_LargePiranha_Putrid_Anim01, - .anim_F = ANIM_LargePiranha_Putrid_Anim01, - }, - }, + PUTRID_PIRANHA_HITBOX(NPC_Piranha_Hitbox) }; StaticNpc N(NpcData_SpikeTop) = { @@ -279,17 +223,7 @@ StaticNpc N(NpcData_SpikeTop) = { .pos = { -450.0f, 0.0f, 100.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_SUPER_SODA, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(4), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 2, - .maxCoinBonus = 3, - }, + .drops = SPIKE_TOP_DROPS, .territory = { .wander = { .isFlying = FALSE, @@ -302,24 +236,7 @@ StaticNpc N(NpcData_SpikeTop) = { .detectSize = { 270, 130 }, } }, - .animations = { - .idle = ANIM_SpikeTop_Anim03, - .walk = ANIM_SpikeTop_Anim06, - .run = ANIM_SpikeTop_Anim08, - .chase = ANIM_SpikeTop_Anim08, - .anim_4 = ANIM_SpikeTop_Anim03, - .anim_5 = ANIM_SpikeTop_Anim03, - .death = ANIM_SpikeTop_Anim13, - .hit = ANIM_SpikeTop_Anim13, - .anim_8 = ANIM_SpikeTop_Anim0B, - .anim_9 = ANIM_SpikeTop_Anim0A, - .anim_A = ANIM_SpikeTop_Anim0C, - .anim_B = ANIM_SpikeTop_Anim03, - .anim_C = ANIM_SpikeTop_Anim03, - .anim_D = ANIM_SpikeTop_Anim03, - .anim_E = ANIM_SpikeTop_Anim03, - .anim_F = ANIM_SpikeTop_Anim03, - }, + .animations = SPIKE_TOP_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT | AI_DETECT_SENSITIVE_MOTION, }; diff --git a/src/world/area_mac/mac_02/823BB0.c b/src/world/area_mac/mac_02/823BB0.c index d53f5fb597..b9caa07b17 100644 --- a/src/world/area_mac/mac_02/823BB0.c +++ b/src/world/area_mac/mac_02/823BB0.c @@ -1,3 +1,3 @@ #include "mac_02.h" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" diff --git a/src/world/area_mac/mac_03/831B20.c b/src/world/area_mac/mac_03/831B20.c index 2f4423375f..34aaf828b8 100644 --- a/src/world/area_mac/mac_03/831B20.c +++ b/src/world/area_mac/mac_03/831B20.c @@ -3,7 +3,7 @@ #define CHUCK_QUIZMO_NPC_ID 23 -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" extern s32 N(Quizmo_Worker); extern s32 N(Quizmo_AnswerResult); diff --git a/src/world/area_mac/mac_04/844860.c b/src/world/area_mac/mac_04/844860.c index 5f5656607a..6437594596 100644 --- a/src/world/area_mac/mac_04/844860.c +++ b/src/world/area_mac/mac_04/844860.c @@ -53,4 +53,4 @@ void func_80241DAC_84497C(PlayerStatus* playerStatus) { INCLUDE_ASM(s32, "world/area_mac/mac_04/844860", func_80241DAC_84497C); #endif -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" diff --git a/src/world/area_nok/nok_01/9C53E0.c b/src/world/area_nok/nok_01/9C53E0.c index f5999714ad..1cd4a0f961 100644 --- a/src/world/area_nok/nok_01/9C53E0.c +++ b/src/world/area_nok/nok_01/9C53E0.c @@ -68,7 +68,7 @@ ApiStatus func_8024243C_9C781C(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" ApiStatus func_802426A4_9C7A84(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; diff --git a/src/world/area_nok/nok_04/9EDBF0.c b/src/world/area_nok/nok_04/9EDBF0.c index 925403be93..c24dc9bdd7 100644 --- a/src/world/area_nok/nok_04/9EDBF0.c +++ b/src/world/area_nok/nok_04/9EDBF0.c @@ -61,7 +61,7 @@ static char* N(exit_str_1) = ""; #include "world/common/util/ChangeNpcToPartner.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" ApiStatus func_80240314_9EDF04(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; diff --git a/src/world/area_omo/omo_03/DA5260.c b/src/world/area_omo/omo_03/DA5260.c index 58f8f5942a..5a60ac682a 100644 --- a/src/world/area_omo/omo_03/DA5260.c +++ b/src/world/area_omo/omo_03/DA5260.c @@ -14,7 +14,7 @@ #include "common/SetNpcPosYaw.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" #include "common/IsAOrBPressed.inc.c" diff --git a/src/world/area_omo/omo_06/DB7910.c b/src/world/area_omo/omo_06/DB7910.c index ca62e21c2b..3fe1e11dfa 100644 --- a/src/world/area_omo/omo_06/DB7910.c +++ b/src/world/area_omo/omo_06/DB7910.c @@ -21,7 +21,7 @@ static char* N(exit_str_7) = ""; #include "common/SetNpcPosYaw.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" #include "common/IsAOrBPressed.inc.c" diff --git a/src/world/area_omo/omo_08/DC43D0.c b/src/world/area_omo/omo_08/DC43D0.c index 174ac08ffd..421d524288 100644 --- a/src/world/area_omo/omo_08/DC43D0.c +++ b/src/world/area_omo/omo_08/DC43D0.c @@ -19,7 +19,7 @@ static char* N(exit_str_5) = "omo_16"; #include "common/SetNpcPosYaw.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" #include "common/IsAOrBPressed.inc.c" diff --git a/src/world/area_omo/omo_10/DD79B0.c b/src/world/area_omo/omo_10/DD79B0.c index a6d62cd049..2b87dda9f0 100644 --- a/src/world/area_omo/omo_10/DD79B0.c +++ b/src/world/area_omo/omo_10/DD79B0.c @@ -21,7 +21,7 @@ static char* N(exit_str_7) = ""; #include "common/SetNpcPosYaw.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" #include "common/IsAOrBPressed.inc.c" diff --git a/src/world/area_omo/omo_16/DEBED0.c b/src/world/area_omo/omo_16/DEBED0.c index 3ce79db2b1..399827bf5a 100644 --- a/src/world/area_omo/omo_16/DEBED0.c +++ b/src/world/area_omo/omo_16/DEBED0.c @@ -17,7 +17,7 @@ static char* N(exit_str_3) = "omo_03"; #include "common/SetNpcPosYaw.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" #include "common/IsAOrBPressed.inc.c" diff --git a/src/world/area_omo/omo_17/DEEEA0.c b/src/world/area_omo/omo_17/DEEEA0.c index 565d45466a..79450ead0b 100644 --- a/src/world/area_omo/omo_17/DEEEA0.c +++ b/src/world/area_omo/omo_17/DEEEA0.c @@ -21,6 +21,6 @@ static char* N(exit_str_7) = ""; #include "common/SetNpcPosYaw.inc.c" -#include "common/UnkFloatFunc.inc.c" +#include "common/CosInterpMinMax.inc.c" #include "common/IsAOrBPressed.inc.c" diff --git a/src/world/area_pra/pra_02/D50010.c b/src/world/area_pra/pra_02/D50010.c index f0b1bdcfa5..ee308a4eb9 100644 --- a/src/world/area_pra/pra_02/D50010.c +++ b/src/world/area_pra/pra_02/D50010.c @@ -22,7 +22,7 @@ INCLUDE_ASM(s32, "world/area_pra/pra_02/D50010", func_80241274_D51264); INCLUDE_ASM(s32, "world/area_pra/pra_02/D50010", func_802414A8_D51498); -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #define NAMESPACE dup_pra_02 #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_pra/pra_34/D8B3D0.c b/src/world/area_pra/pra_34/D8B3D0.c index 1c768bd9d6..14ca64b2b0 100644 --- a/src/world/area_pra/pra_34/D8B3D0.c +++ b/src/world/area_pra/pra_34/D8B3D0.c @@ -2,6 +2,6 @@ #include "world/common/atomic/Reflection.inc.c" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_sam/sam_11/D3A850.c b/src/world/area_sam/sam_11/D3A850.c index 3671c889af..9d3ff6d199 100644 --- a/src/world/area_sam/sam_11/D3A850.c +++ b/src/world/area_sam/sam_11/D3A850.c @@ -1,5 +1,5 @@ #include "sam_11.h" -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" diff --git a/src/world/area_sbk/sbk.h b/src/world/area_sbk/sbk.h index 363ef711b5..c7f26665ae 100644 --- a/src/world/area_sbk/sbk.h +++ b/src/world/area_sbk/sbk.h @@ -21,12 +21,12 @@ enum { }; enum { - AF_SBK_01 = AreaFlag(1), - AF_SBK_02 = AreaFlag(2), - AF_SBK_03 = AreaFlag(3), - AF_SBK_04 = AreaFlag(4), - AF_SBK_05 = AreaFlag(5), - AF_SBK_06 = AreaFlag(6), + AF_BanditHasCoin = AreaFlag(1), + AF_SBK_02 = AreaFlag(2), + AF_SBK_03 = AreaFlag(3), + AF_SBK_04 = AreaFlag(4), + AF_SBK_05 = AreaFlag(5), + AF_SBK_06 = AreaFlag(6), }; extern MapSettings sbk_00_settings; diff --git a/src/world/area_sbk/sbk_00/sbk_00_2_npc.c b/src/world/area_sbk/sbk_00/sbk_00_2_npc.c index 3062b7774a..5e2bd189e5 100644 --- a/src/world/area_sbk/sbk_00/sbk_00_2_npc.c +++ b/src/world/area_sbk/sbk_00/sbk_00_2_npc.c @@ -8,18 +8,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -40.0f, 0.0f, 160.0f }, .yaw = 90, .flags = NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +21,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -59,18 +31,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { 245.0f, 0.0f, 75.0f }, .yaw = 270, .flags = NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +44,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_01/sbk_01_2_npc.c b/src/world/area_sbk/sbk_01/sbk_01_2_npc.c index b168c18416..0fd3454a94 100644 --- a/src/world/area_sbk/sbk_01/sbk_01_2_npc.c +++ b/src/world/area_sbk/sbk_01/sbk_01_2_npc.c @@ -9,18 +9,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { 205.0f, 0.0f, -60.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -33,24 +22,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -60,18 +32,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { -200.0f, 0.0f, 180.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -84,24 +45,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_02/sbk_02_3_npc.c b/src/world/area_sbk/sbk_02/sbk_02_3_npc.c index 3eeb56b27c..19a168e608 100644 --- a/src/world/area_sbk/sbk_02/sbk_02_3_npc.c +++ b/src/world/area_sbk/sbk_02/sbk_02_3_npc.c @@ -336,7 +336,7 @@ EvtScript N(EVS_NpcInteract_Toad) = { EVT_WAIT(10) EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_SMOKE_BURST, 0) - EVT_PLAY_EFFECT(EFFECT_BIG_SMOKE_PUFF, LVar0, LVar1, LVar2, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0) + EVT_PLAY_EFFECT(EFFECT_BIG_SMOKE_PUFF, LVar0, LVar1, LVar2, 1, 1, 1, 1) EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION) EVT_SET(GF_TradingEvent2_Active, FALSE) EVT_RETURN @@ -365,7 +365,7 @@ EvtScript N(EVS_NpcInteract_Toad) = { EVT_WAIT(10) EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_SMOKE_BURST, 0) - EVT_PLAY_EFFECT(EFFECT_BIG_SMOKE_PUFF, LVar0, LVar1, LVar2, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0) + EVT_PLAY_EFFECT(EFFECT_BIG_SMOKE_PUFF, LVar0, LVar1, LVar2, 1, 1, 1, 1) EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION) EVT_SET(GF_TradingEvent2_Active, FALSE) EVT_ADD(GB_TradingEvent_Count, 1) diff --git a/src/world/area_sbk/sbk_03/sbk_03_2_npc.c b/src/world/area_sbk/sbk_03/sbk_03_2_npc.c index f542edeab3..51509032fc 100644 --- a/src/world/area_sbk/sbk_03/sbk_03_2_npc.c +++ b/src/world/area_sbk/sbk_03/sbk_03_2_npc.c @@ -8,18 +8,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -340.0f, 0.0f, -125.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +21,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -59,18 +31,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { 10.0f, 0.0f, 100.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +44,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -110,18 +54,7 @@ StaticNpc N(NpcData_Pokey_03) = { .pos = { -90.0f, 0.0f, 260.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -134,24 +67,7 @@ StaticNpc N(NpcData_Pokey_03) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -161,18 +77,7 @@ StaticNpc N(NpcData_Pokey_04) = { .pos = { 165.0f, 0.0f, 300.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -185,24 +90,7 @@ StaticNpc N(NpcData_Pokey_04) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_04/sbk_04_2_npc.c b/src/world/area_sbk/sbk_04/sbk_04_2_npc.c index e5e6f3b313..74ed6ab5af 100644 --- a/src/world/area_sbk/sbk_04/sbk_04_2_npc.c +++ b/src/world/area_sbk/sbk_04/sbk_04_2_npc.c @@ -8,18 +8,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -295.0f, 0.0f, -110.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +21,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -59,18 +31,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { -140.0f, 0.0f, -30.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +44,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_05/sbk_05_3_npc.c b/src/world/area_sbk/sbk_05/sbk_05_3_npc.c index 7b33a2236b..76c96c441f 100644 --- a/src/world/area_sbk/sbk_05/sbk_05_3_npc.c +++ b/src/world/area_sbk/sbk_05/sbk_05_3_npc.c @@ -8,18 +8,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -280.0f, 0.0f, -110.0f }, .yaw = 180, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +21,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -59,18 +31,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { -200.0f, 0.0f, -80.0f }, .yaw = 120, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +44,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -110,18 +54,7 @@ StaticNpc N(NpcData_Pokey_03) = { .pos = { -160.0f, 0.0f, -225.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -134,24 +67,7 @@ StaticNpc N(NpcData_Pokey_03) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -161,18 +77,7 @@ StaticNpc N(NpcData_Pokey_04) = { .pos = { -100.0f, 0.0f, 70.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -185,24 +90,7 @@ StaticNpc N(NpcData_Pokey_04) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -212,18 +100,7 @@ StaticNpc N(NpcData_Pokey_05) = { .pos = { -10.0f, 0.0f, 30.0f }, .yaw = 80, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -236,24 +113,7 @@ StaticNpc N(NpcData_Pokey_05) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -263,18 +123,7 @@ StaticNpc N(NpcData_Pokey_06) = { .pos = { 20.0f, 0.0f, -110.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -287,24 +136,7 @@ StaticNpc N(NpcData_Pokey_06) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -314,18 +146,7 @@ StaticNpc N(NpcData_Pokey_07) = { .pos = { 170.0f, 0.0f, -50.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -338,24 +159,7 @@ StaticNpc N(NpcData_Pokey_07) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -365,18 +169,7 @@ StaticNpc N(NpcData_Pokey_08) = { .pos = { 250.0f, 0.0f, 130.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -389,24 +182,7 @@ StaticNpc N(NpcData_Pokey_08) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -416,18 +192,7 @@ StaticNpc N(NpcData_Pokey_09) = { .pos = { 340.0f, 0.0f, 200.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -440,24 +205,7 @@ StaticNpc N(NpcData_Pokey_09) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -467,18 +215,7 @@ StaticNpc N(NpcData_Pokey_10) = { .pos = { -150.0f, 0.0f, 360.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -491,24 +228,7 @@ StaticNpc N(NpcData_Pokey_10) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_06/sbk_06_2_npc.c b/src/world/area_sbk/sbk_06/sbk_06_2_npc.c index 94e5b7727a..27d1703d46 100644 --- a/src/world/area_sbk/sbk_06/sbk_06_2_npc.c +++ b/src/world/area_sbk/sbk_06/sbk_06_2_npc.c @@ -8,17 +8,7 @@ StaticNpc N(NpcData_Bandit) = { .pos = { -200.0f, 0.0f, 230.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -31,24 +21,7 @@ StaticNpc N(NpcData_Bandit) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_11/sbk_11_2_npc.c b/src/world/area_sbk/sbk_11/sbk_11_2_npc.c index 2d4f310771..68b023745d 100644 --- a/src/world/area_sbk/sbk_11/sbk_11_2_npc.c +++ b/src/world/area_sbk/sbk_11/sbk_11_2_npc.c @@ -9,18 +9,7 @@ StaticNpc N(NpcData_Pokey) = { .pos = { -120.0f, 0.0f, 90.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -33,24 +22,7 @@ StaticNpc N(NpcData_Pokey) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -60,17 +32,7 @@ StaticNpc N(NpcData_Bandit) = { .pos = { -200.0f, 0.0f, 230.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +45,7 @@ StaticNpc N(NpcData_Bandit) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_12/sbk_12_2_npc.c b/src/world/area_sbk/sbk_12/sbk_12_2_npc.c index d138a1bec4..487956ea85 100644 --- a/src/world/area_sbk/sbk_12/sbk_12_2_npc.c +++ b/src/world/area_sbk/sbk_12/sbk_12_2_npc.c @@ -8,18 +8,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -190.0f, 0.0f, -130.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +21,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -59,18 +31,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { -40.0f, 0.0f, -200.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +44,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -110,18 +54,7 @@ StaticNpc N(NpcData_Pokey_03) = { .pos = { 195.0f, 0.0f, -255.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -134,24 +67,7 @@ StaticNpc N(NpcData_Pokey_03) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_13/sbk_13_2_npc.c b/src/world/area_sbk/sbk_13/sbk_13_2_npc.c index faeab850f8..d7416d6dbc 100644 --- a/src/world/area_sbk/sbk_13/sbk_13_2_npc.c +++ b/src/world/area_sbk/sbk_13/sbk_13_2_npc.c @@ -9,18 +9,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -70.0f, 0.0f, -60.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -33,24 +22,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -60,18 +32,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { 120.0f, 0.0f, -50.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -84,24 +45,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -111,17 +55,7 @@ StaticNpc N(NpcData_Bandit) = { .pos = { -200.0f, 0.0f, 230.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -134,24 +68,7 @@ StaticNpc N(NpcData_Bandit) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_15/sbk_15_2_npc.c b/src/world/area_sbk/sbk_15/sbk_15_2_npc.c index 55cf1bade0..454bbd726a 100644 --- a/src/world/area_sbk/sbk_15/sbk_15_2_npc.c +++ b/src/world/area_sbk/sbk_15/sbk_15_2_npc.c @@ -8,18 +8,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -230.0f, 0.0f, 100.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +21,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -59,18 +31,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { 20.0f, 0.0f, 260.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +44,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_20/sbk_20_2_npc.c b/src/world/area_sbk/sbk_20/sbk_20_2_npc.c index 8592a46d69..2677b54f41 100644 --- a/src/world/area_sbk/sbk_20/sbk_20_2_npc.c +++ b/src/world/area_sbk/sbk_20/sbk_20_2_npc.c @@ -8,17 +8,7 @@ StaticNpc N(NpcData_Bandit_01) = { .pos = { -100.0f, 0.0f, 80.0f }, .yaw = 90, .flags = NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -31,24 +21,7 @@ StaticNpc N(NpcData_Bandit_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -58,17 +31,7 @@ StaticNpc N(NpcData_Bandit_02) = { .pos = { 120.0f, 0.0f, 30.0f }, .yaw = 270, .flags = NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -81,24 +44,7 @@ StaticNpc N(NpcData_Bandit_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_22/sbk_22_2_npc.c b/src/world/area_sbk/sbk_22/sbk_22_2_npc.c index e084f175b2..ae0a09666a 100644 --- a/src/world/area_sbk/sbk_22/sbk_22_2_npc.c +++ b/src/world/area_sbk/sbk_22/sbk_22_2_npc.c @@ -9,18 +9,7 @@ StaticNpc N(NpcData_Pokey) = { .pos = { -140.0f, 0.0f, -230.0f }, .yaw = 90, .flags = NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -33,24 +22,7 @@ StaticNpc N(NpcData_Pokey) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -60,17 +32,7 @@ StaticNpc N(NpcData_Bandit) = { .pos = { 40.0f, 0.0f, 90.0f }, .yaw = 270, .flags = NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +45,7 @@ StaticNpc N(NpcData_Bandit) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_25/sbk_25_2_npc.c b/src/world/area_sbk/sbk_25/sbk_25_2_npc.c index e6a1ed048d..3819d761c3 100644 --- a/src/world/area_sbk/sbk_25/sbk_25_2_npc.c +++ b/src/world/area_sbk/sbk_25/sbk_25_2_npc.c @@ -8,17 +8,7 @@ StaticNpc N(NpcData_Bandit_01) = { .pos = { -80.0f, 0.0f, -20.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -31,24 +21,7 @@ StaticNpc N(NpcData_Bandit_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -58,17 +31,7 @@ StaticNpc N(NpcData_Bandit_02) = { .pos = { 120.0f, 0.0f, 20.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -81,24 +44,7 @@ StaticNpc N(NpcData_Bandit_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_26/sbk_26_2_npc.c b/src/world/area_sbk/sbk_26/sbk_26_2_npc.c index 4fb67b404b..7c4758b253 100644 --- a/src/world/area_sbk/sbk_26/sbk_26_2_npc.c +++ b/src/world/area_sbk/sbk_26/sbk_26_2_npc.c @@ -9,17 +9,7 @@ StaticNpc N(NpcData_Bandit) = { .pos = { -223.0f, 0.0f, 101.0f }, .yaw = 180, .flags = NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +22,7 @@ StaticNpc N(NpcData_Bandit) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -59,18 +32,7 @@ StaticNpc N(NpcData_Pokey) = { .pos = { -140.0f, 0.0f, -230.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +45,7 @@ StaticNpc N(NpcData_Pokey) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_31/sbk_31_2_npc.c b/src/world/area_sbk/sbk_31/sbk_31_2_npc.c index fd9c534404..973808e71c 100644 --- a/src/world/area_sbk/sbk_31/sbk_31_2_npc.c +++ b/src/world/area_sbk/sbk_31/sbk_31_2_npc.c @@ -8,17 +8,7 @@ StaticNpc N(NpcData_Bandit) = { .pos = { 23.0f, 0.0f, -260.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -31,24 +21,7 @@ StaticNpc N(NpcData_Bandit) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_32/sbk_32_2_npc.c b/src/world/area_sbk/sbk_32/sbk_32_2_npc.c index 48b608a5b5..c286fa1c8c 100644 --- a/src/world/area_sbk/sbk_32/sbk_32_2_npc.c +++ b/src/world/area_sbk/sbk_32/sbk_32_2_npc.c @@ -9,18 +9,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -140.0f, 0.0f, -270.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -33,24 +22,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -60,18 +32,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { -120.0f, 0.0f, 110.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -84,24 +45,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -111,17 +55,7 @@ StaticNpc N(NpcData_Bandit) = { .pos = { 23.0f, 0.0f, -260.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -134,24 +68,7 @@ StaticNpc N(NpcData_Bandit) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_35/sbk_35_2_npc.c b/src/world/area_sbk/sbk_35/sbk_35_2_npc.c index c7deeb60da..a69b48aa6a 100644 --- a/src/world/area_sbk/sbk_35/sbk_35_2_npc.c +++ b/src/world/area_sbk/sbk_35/sbk_35_2_npc.c @@ -8,17 +8,7 @@ StaticNpc N(NpcData_Bandit) = { .pos = { -40.0f, 0.0f, 155.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -31,24 +21,7 @@ StaticNpc N(NpcData_Bandit) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_40/sbk_40_2_npc.c b/src/world/area_sbk/sbk_40/sbk_40_2_npc.c index 3f1eb8c9b5..009542b606 100644 --- a/src/world/area_sbk/sbk_40/sbk_40_2_npc.c +++ b/src/world/area_sbk/sbk_40/sbk_40_2_npc.c @@ -8,17 +8,7 @@ StaticNpc N(NpcData_Bandit_01) = { .pos = { -300.0f, 0.0f, 85.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -31,24 +21,7 @@ StaticNpc N(NpcData_Bandit_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -58,17 +31,7 @@ StaticNpc N(NpcData_Bandit_02) = { .pos = { -80.0f, 0.0f, 190.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -81,24 +44,7 @@ StaticNpc N(NpcData_Bandit_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_42/sbk_42_2_npc.c b/src/world/area_sbk/sbk_42/sbk_42_2_npc.c index e8e854faa1..23cbfb61de 100644 --- a/src/world/area_sbk/sbk_42/sbk_42_2_npc.c +++ b/src/world/area_sbk/sbk_42/sbk_42_2_npc.c @@ -8,17 +8,7 @@ StaticNpc N(NpcData_Bandit_01) = { .pos = { -40.0f, 0.0f, 0.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -31,24 +21,7 @@ StaticNpc N(NpcData_Bandit_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -58,17 +31,7 @@ StaticNpc N(NpcData_Bandit_02) = { .pos = { 60.0f, 0.0f, 30.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -81,24 +44,7 @@ StaticNpc N(NpcData_Bandit_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_44/sbk_44_2_npc.c b/src/world/area_sbk/sbk_44/sbk_44_2_npc.c index 55c6451a4e..acaeb097d9 100644 --- a/src/world/area_sbk/sbk_44/sbk_44_2_npc.c +++ b/src/world/area_sbk/sbk_44/sbk_44_2_npc.c @@ -9,18 +9,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -100.0f, 0.0f, -55.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -33,24 +22,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -60,18 +32,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { -22.0f, 0.0f, -5.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -84,24 +45,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -111,17 +55,7 @@ StaticNpc N(NpcData_Bandit) = { .pos = { 150.0f, 0.0f, 80.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -134,24 +68,7 @@ StaticNpc N(NpcData_Bandit) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_46/sbk_46_2_npc.c b/src/world/area_sbk/sbk_46/sbk_46_2_npc.c index 1c715aa208..9103637726 100644 --- a/src/world/area_sbk/sbk_46/sbk_46_2_npc.c +++ b/src/world/area_sbk/sbk_46/sbk_46_2_npc.c @@ -9,18 +9,7 @@ StaticNpc N(NpcData_Pokey) = { .pos = { 310.0f, 0.0f, -100.0f }, .yaw = 270, .flags = NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -33,24 +22,7 @@ StaticNpc N(NpcData_Pokey) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -60,17 +32,7 @@ StaticNpc N(NpcData_Bandit_01) = { .pos = { -190.0f, 0.0f, -318.0f }, .yaw = 90, .flags = NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +45,7 @@ StaticNpc N(NpcData_Bandit_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -110,17 +55,7 @@ StaticNpc N(NpcData_Bandit_02) = { .pos = { -200.0f, 0.0f, 115.0f }, .yaw = 300, .flags = NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -133,24 +68,7 @@ StaticNpc N(NpcData_Bandit_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_51/sbk_51_2_npc.c b/src/world/area_sbk/sbk_51/sbk_51_2_npc.c index ef67441e09..a32f4f3c62 100644 --- a/src/world/area_sbk/sbk_51/sbk_51_2_npc.c +++ b/src/world/area_sbk/sbk_51/sbk_51_2_npc.c @@ -9,18 +9,7 @@ StaticNpc N(NpcData_Pokey) = { .pos = { 180.0f, 0.0f, 120.0f }, .yaw = 0, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -33,24 +22,7 @@ StaticNpc N(NpcData_Pokey) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -60,17 +32,7 @@ StaticNpc N(NpcData_Bandit) = { .pos = { -60.0f, 0.0f, -88.0f }, .yaw = 0, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +45,7 @@ StaticNpc N(NpcData_Bandit) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_53/sbk_53_2_npc.c b/src/world/area_sbk/sbk_53/sbk_53_2_npc.c index 9228c420a5..d271fdbd47 100644 --- a/src/world/area_sbk/sbk_53/sbk_53_2_npc.c +++ b/src/world/area_sbk/sbk_53/sbk_53_2_npc.c @@ -8,18 +8,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -176.0f, 0.0f, -196.0f }, .yaw = 0, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +21,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -59,18 +31,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { -110.0f, 0.0f, -270.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +44,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -110,18 +54,7 @@ StaticNpc N(NpcData_Pokey_03) = { .pos = { 252.0f, 0.0f, -233.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -134,24 +67,7 @@ StaticNpc N(NpcData_Pokey_03) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_55/sbk_55_2_npc.c b/src/world/area_sbk/sbk_55/sbk_55_2_npc.c index d489abfedf..33182e146f 100644 --- a/src/world/area_sbk/sbk_55/sbk_55_2_npc.c +++ b/src/world/area_sbk/sbk_55/sbk_55_2_npc.c @@ -8,18 +8,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { 43.0f, 0.0f, -120.0f }, .yaw = 270, .flags = NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +21,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -59,18 +31,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { -100.0f, 0.0f, -120.0f }, .yaw = 270, .flags = NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +44,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_60/sbk_60_2_npc.c b/src/world/area_sbk/sbk_60/sbk_60_2_npc.c index 2cbfc2e955..f812b25e22 100644 --- a/src/world/area_sbk/sbk_60/sbk_60_2_npc.c +++ b/src/world/area_sbk/sbk_60/sbk_60_2_npc.c @@ -8,18 +8,7 @@ StaticNpc N(NpcData_Pokey) = { .pos = { 160.0f, 0.0f, -120.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +21,7 @@ StaticNpc N(NpcData_Pokey) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_62/sbk_62_2_npc.c b/src/world/area_sbk/sbk_62/sbk_62_2_npc.c index 346f4ec916..48c61fca38 100644 --- a/src/world/area_sbk/sbk_62/sbk_62_2_npc.c +++ b/src/world/area_sbk/sbk_62/sbk_62_2_npc.c @@ -8,18 +8,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -180.0f, 0.0f, -100.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +21,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -59,18 +31,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { 120.0f, 0.0f, 110.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +44,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -110,18 +54,7 @@ StaticNpc N(NpcData_Pokey_03) = { .pos = { 245.0f, 0.0f, 285.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -134,24 +67,7 @@ StaticNpc N(NpcData_Pokey_03) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_63/sbk_63_2_npc.c b/src/world/area_sbk/sbk_63/sbk_63_2_npc.c index 1ce81f6bd2..cd41752e1b 100644 --- a/src/world/area_sbk/sbk_63/sbk_63_2_npc.c +++ b/src/world/area_sbk/sbk_63/sbk_63_2_npc.c @@ -8,18 +8,7 @@ StaticNpc N(NpcData_Pokey_01) = { .pos = { -180.0f, 0.0f, -120.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -32,24 +21,7 @@ StaticNpc N(NpcData_Pokey_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -59,18 +31,7 @@ StaticNpc N(NpcData_Pokey_02) = { .pos = { 120.0f, 0.0f, -105.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 15, - .itemDrops = { - { ITEM_DRIED_FRUIT, 9, 0 }, - { ITEM_TASTY_TONIC, 1, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = POKEY_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -83,24 +44,7 @@ StaticNpc N(NpcData_Pokey_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Pokey_Anim04, - .walk = ANIM_Pokey_Anim08, - .run = ANIM_Pokey_Anim08, - .chase = ANIM_Pokey_Anim08, - .anim_4 = ANIM_Pokey_Anim04, - .anim_5 = ANIM_Pokey_Anim04, - .death = ANIM_Pokey_Anim0C, - .hit = ANIM_Pokey_Anim0C, - .anim_8 = ANIM_Pokey_Anim08, - .anim_9 = ANIM_Pokey_Anim08, - .anim_A = ANIM_Pokey_Anim08, - .anim_B = ANIM_Pokey_Anim08, - .anim_C = ANIM_Pokey_Anim08, - .anim_D = ANIM_Pokey_Anim08, - .anim_E = ANIM_Pokey_Anim08, - .anim_F = ANIM_Pokey_Anim08, - }, + .animations = POKEY_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_sbk/sbk_66/sbk_66_2_npc.c b/src/world/area_sbk/sbk_66/sbk_66_2_npc.c index a16bed9204..8acc5a7371 100644 --- a/src/world/area_sbk/sbk_66/sbk_66_2_npc.c +++ b/src/world/area_sbk/sbk_66/sbk_66_2_npc.c @@ -8,17 +8,7 @@ StaticNpc N(NpcData_Bandit_01) = { .pos = { -120.0f, 0.0f, 45.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -31,24 +21,7 @@ StaticNpc N(NpcData_Bandit_01) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -58,17 +31,7 @@ StaticNpc N(NpcData_Bandit_02) = { .pos = { -76.0f, 0.0f, -20.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -81,24 +44,7 @@ StaticNpc N(NpcData_Bandit_02) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -108,17 +54,7 @@ StaticNpc N(NpcData_Bandit_03) = { .pos = { -78.0f, 0.0f, 80.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -131,24 +67,7 @@ StaticNpc N(NpcData_Bandit_03) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -158,17 +77,7 @@ StaticNpc N(NpcData_Bandit_04) = { .pos = { -20.0f, 0.0f, 40.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -181,24 +90,7 @@ StaticNpc N(NpcData_Bandit_04) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -208,17 +100,7 @@ StaticNpc N(NpcData_Bandit_05) = { .pos = { 45.0f, 0.0f, -30.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -231,24 +113,7 @@ StaticNpc N(NpcData_Bandit_05) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -258,17 +123,7 @@ StaticNpc N(NpcData_Bandit_06) = { .pos = { 40.0f, 0.0f, 150.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 3, - }, + .drops = BANDIT_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -281,24 +136,7 @@ StaticNpc N(NpcData_Bandit_06) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_Bandit_Anim01, - .walk = ANIM_Bandit_Anim05, - .run = ANIM_Bandit_Anim07, - .chase = ANIM_Bandit_Anim07, - .anim_4 = ANIM_Bandit_Anim01, - .anim_5 = ANIM_Bandit_Anim01, - .death = ANIM_Bandit_Anim09, - .hit = ANIM_Bandit_Anim09, - .anim_8 = ANIM_Bandit_Anim00, - .anim_9 = ANIM_Bandit_Anim00, - .anim_A = ANIM_Bandit_Anim00, - .anim_B = ANIM_Bandit_Anim00, - .anim_C = ANIM_Bandit_Anim00, - .anim_D = ANIM_Bandit_Anim00, - .anim_E = ANIM_Bandit_Anim00, - .anim_F = ANIM_Bandit_Anim00, - }, + .animations = BANDIT_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_trd/trd_01/trd_01_2_entity.c b/src/world/area_trd/trd_01/trd_01_2_entity.c index 2d9fe9ee7d..8f3a5da8bb 100644 --- a/src/world/area_trd/trd_01/trd_01_2_entity.c +++ b/src/world/area_trd/trd_01/trd_01_2_entity.c @@ -3,9 +3,6 @@ extern EvtScript N(EVS_ExitDoors_trd_02_0); -#include "world/common/SetEntityFlags100000.inc.c" -#include "world/common/GetEntityPosition.inc.c" - EvtScript N(EVS_FocusCamOnLock) = { EVT_LABEL(0) EVT_IF_EQ(GF_TRD01_Item_FortressKey, TRUE) @@ -26,6 +23,9 @@ EvtScript N(EVS_FocusCamOnLock) = { EVT_END }; +#include "world/common/RemovePadlock.inc.c" +#include "world/common/GetEntityPosition.inc.c" + EvtScript N(EVS_UnlockDoors) = { EVT_SET_GROUP(EVT_GROUP_00) EVT_SUSPEND_GROUP(1) @@ -48,7 +48,7 @@ EvtScript N(EVS_UnlockDoors) = { EVT_CALL(N(GetEntityPosition), MV_Padlock_EntityIndex, LVar0, LVar1, LVar2) EVT_CALL(PlaySoundAt, SOUND_269, 0, LVar0, LVar1, LVar2) EVT_SET(LVar0, MV_Padlock_EntityIndex) - EVT_CALL(N(SetEntityFlags100000)) + EVT_CALL(N(RemovePadlock)) EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0) EVT_RESUME_GROUP(1) EVT_UNBIND diff --git a/src/world/area_trd/trd_01/trd_01_3_npc.c b/src/world/area_trd/trd_01/trd_01_3_npc.c index af62db5c8e..47021e9ad7 100644 --- a/src/world/area_trd/trd_01/trd_01_3_npc.c +++ b/src/world/area_trd/trd_01/trd_01_3_npc.c @@ -168,24 +168,7 @@ StaticNpc N(NpcData_KoopaTroopa_01) = { .detectSize = { 200 }, } }, - .animations = { - .idle = ANIM_KoopaTroopa_Anim01, - .walk = ANIM_KoopaTroopa_Anim03, - .run = ANIM_KoopaTroopa_Anim04, - .chase = ANIM_KoopaTroopa_Anim04, - .anim_4 = ANIM_KoopaTroopa_Anim01, - .anim_5 = ANIM_KoopaTroopa_Anim01, - .death = ANIM_KoopaTroopa_Anim0B, - .hit = ANIM_KoopaTroopa_Anim0B, - .anim_8 = ANIM_KoopaTroopa_Anim07, - .anim_9 = ANIM_KoopaTroopa_Anim06, - .anim_A = ANIM_KoopaTroopa_Anim08, - .anim_B = ANIM_KoopaTroopa_Anim04, - .anim_C = ANIM_KoopaTroopa_Anim04, - .anim_D = ANIM_KoopaTroopa_Anim04, - .anim_E = ANIM_KoopaTroopa_Anim04, - .anim_F = ANIM_KoopaTroopa_Anim04, - }, + .animations = KOOPA_TROOPA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -196,18 +179,7 @@ StaticNpc N(NpcData_KoopaTroopa_02) = { .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, .init = &N(EVS_NpcInit_KoopaTroopa_02), - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_MUSHROOM, 5, 0 }, - { ITEM_P_O_W_BLOCK, 5, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 1, - }, + .drops = KOOPA_TROOPA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -220,24 +192,7 @@ StaticNpc N(NpcData_KoopaTroopa_02) = { .detectSize = { 200 }, } }, - .animations = { - .idle = ANIM_KoopaTroopa_Anim01, - .walk = ANIM_KoopaTroopa_Anim03, - .run = ANIM_KoopaTroopa_Anim04, - .chase = ANIM_KoopaTroopa_Anim04, - .anim_4 = ANIM_KoopaTroopa_Anim01, - .anim_5 = ANIM_KoopaTroopa_Anim01, - .death = ANIM_KoopaTroopa_Anim0B, - .hit = ANIM_KoopaTroopa_Anim0B, - .anim_8 = ANIM_KoopaTroopa_Anim07, - .anim_9 = ANIM_KoopaTroopa_Anim06, - .anim_A = ANIM_KoopaTroopa_Anim08, - .anim_B = ANIM_KoopaTroopa_Anim04, - .anim_C = ANIM_KoopaTroopa_Anim04, - .anim_D = ANIM_KoopaTroopa_Anim04, - .anim_E = ANIM_KoopaTroopa_Anim04, - .anim_F = ANIM_KoopaTroopa_Anim04, - }, + .animations = KOOPA_TROOPA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -248,18 +203,7 @@ StaticNpc N(NpcData_KoopaTroopa_03) = { .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_NO_PROJECT_SHADOW, .init = &N(EVS_NpcInit_KoopaTroopa_02), - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_MUSHROOM, 5, 0 }, - { ITEM_P_O_W_BLOCK, 5, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 1, - }, + .drops = KOOPA_TROOPA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -272,24 +216,7 @@ StaticNpc N(NpcData_KoopaTroopa_03) = { .detectSize = { 200 }, } }, - .animations = { - .idle = ANIM_KoopaTroopa_Anim01, - .walk = ANIM_KoopaTroopa_Anim03, - .run = ANIM_KoopaTroopa_Anim04, - .chase = ANIM_KoopaTroopa_Anim04, - .anim_4 = ANIM_KoopaTroopa_Anim01, - .anim_5 = ANIM_KoopaTroopa_Anim01, - .death = ANIM_KoopaTroopa_Anim0B, - .hit = ANIM_KoopaTroopa_Anim0B, - .anim_8 = ANIM_KoopaTroopa_Anim07, - .anim_9 = ANIM_KoopaTroopa_Anim06, - .anim_A = ANIM_KoopaTroopa_Anim08, - .anim_B = ANIM_KoopaTroopa_Anim04, - .anim_C = ANIM_KoopaTroopa_Anim04, - .anim_D = ANIM_KoopaTroopa_Anim04, - .anim_E = ANIM_KoopaTroopa_Anim04, - .anim_F = ANIM_KoopaTroopa_Anim04, - }, + .animations = KOOPA_TROOPA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -299,18 +226,7 @@ StaticNpc N(NpcData_Bobomb) = { .pos = { -255.0f, 640.0f, 35.0f }, .yaw = 180, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 5, 0 }, - { ITEM_FIRE_FLOWER, 5, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = BOBOMB_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -323,24 +239,7 @@ StaticNpc N(NpcData_Bobomb) = { .detectSize = { 100 }, } }, - .animations = { - .idle = ANIM_Bobomb_Anim02, - .walk = ANIM_Bobomb_Anim04, - .run = ANIM_Bobomb_Anim06, - .chase = ANIM_Bobomb_Anim06, - .anim_4 = ANIM_Bobomb_Anim02, - .anim_5 = ANIM_Bobomb_Anim02, - .death = ANIM_Bobomb_Anim0E, - .hit = ANIM_Bobomb_Anim0E, - .anim_8 = ANIM_Bobomb_Anim06, - .anim_9 = ANIM_Bobomb_Anim06, - .anim_A = ANIM_Bobomb_Anim06, - .anim_B = ANIM_Bobomb_Anim06, - .anim_C = ANIM_Bobomb_Anim06, - .anim_D = ANIM_Bobomb_Anim06, - .anim_E = ANIM_Bobomb_Anim06, - .anim_F = ANIM_Bobomb_Anim06, - }, + .animations = BOBOMB_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_trd/trd_02/trd_02_2_entity.c b/src/world/area_trd/trd_02/trd_02_2_entity.c index bf9a209cba..88d0420deb 100644 --- a/src/world/area_trd/trd_02/trd_02_2_entity.c +++ b/src/world/area_trd/trd_02/trd_02_2_entity.c @@ -3,7 +3,7 @@ extern EvtScript N(EVS_ExitDoors_trd_01_2); -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/GetEntityPosition.inc.c" EvtScript N(D_80242890_9A3870) = { @@ -27,7 +27,7 @@ EvtScript N(D_80242890_9A3870) = { EVT_CALL(N(GetEntityPosition), MV_Padlock_EntityIndex, LVar0, LVar1, LVar2) EVT_CALL(PlaySoundAt, SOUND_269, 0, LVar0, LVar1, LVar2) EVT_SET(LVar0, MV_Padlock_EntityIndex) - EVT_CALL(N(SetEntityFlags100000)) + EVT_CALL(N(RemovePadlock)) EVT_RESUME_GROUP(1) EVT_UNBIND EVT_RETURN diff --git a/src/world/area_trd/trd_02/trd_02_3_npc.c b/src/world/area_trd/trd_02/trd_02_3_npc.c index a6759d13aa..5e1e841e5b 100644 --- a/src/world/area_trd/trd_02/trd_02_3_npc.c +++ b/src/world/area_trd/trd_02/trd_02_3_npc.c @@ -10,18 +10,7 @@ StaticNpc N(NpcData_Bobomb_01) = { .pos = { -70.0f, 0.0f, 80.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 5, 0 }, - { ITEM_FIRE_FLOWER, 5, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = BOBOMB_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -34,24 +23,7 @@ StaticNpc N(NpcData_Bobomb_01) = { .detectSize = { 250, 175 }, } }, - .animations = { - .idle = ANIM_Bobomb_Anim02, - .walk = ANIM_Bobomb_Anim04, - .run = ANIM_Bobomb_Anim06, - .chase = ANIM_Bobomb_Anim06, - .anim_4 = ANIM_Bobomb_Anim02, - .anim_5 = ANIM_Bobomb_Anim02, - .death = ANIM_Bobomb_Anim0E, - .hit = ANIM_Bobomb_Anim0E, - .anim_8 = ANIM_Bobomb_Anim06, - .anim_9 = ANIM_Bobomb_Anim06, - .anim_A = ANIM_Bobomb_Anim06, - .anim_B = ANIM_Bobomb_Anim06, - .anim_C = ANIM_Bobomb_Anim06, - .anim_D = ANIM_Bobomb_Anim06, - .anim_E = ANIM_Bobomb_Anim06, - .anim_F = ANIM_Bobomb_Anim06, - }, + .animations = BOBOMB_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -61,18 +33,7 @@ StaticNpc N(NpcData_Bobomb_02) = { .pos = { 140.0f, 0.0f, 80.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_HONEY_SYRUP, 5, 0 }, - { ITEM_FIRE_FLOWER, 5, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 0, - .maxCoinBonus = 1, - }, + .drops = BOBOMB_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -85,24 +46,7 @@ StaticNpc N(NpcData_Bobomb_02) = { .detectSize = { 250, 175 }, } }, - .animations = { - .idle = ANIM_Bobomb_Anim02, - .walk = ANIM_Bobomb_Anim04, - .run = ANIM_Bobomb_Anim06, - .chase = ANIM_Bobomb_Anim06, - .anim_4 = ANIM_Bobomb_Anim02, - .anim_5 = ANIM_Bobomb_Anim02, - .death = ANIM_Bobomb_Anim0E, - .hit = ANIM_Bobomb_Anim0E, - .anim_8 = ANIM_Bobomb_Anim06, - .anim_9 = ANIM_Bobomb_Anim06, - .anim_A = ANIM_Bobomb_Anim06, - .anim_B = ANIM_Bobomb_Anim06, - .anim_C = ANIM_Bobomb_Anim06, - .anim_D = ANIM_Bobomb_Anim06, - .anim_E = ANIM_Bobomb_Anim06, - .anim_F = ANIM_Bobomb_Anim06, - }, + .animations = BOBOMB_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -112,18 +56,7 @@ StaticNpc N(NpcData_KoopaTroopa) = { .pos = { 50.0f, 187.0f, 183.0f }, .yaw = 0, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_MUSHROOM, 5, 0 }, - { ITEM_P_O_W_BLOCK, 5, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 1, - }, + .drops = KOOPA_TROOPA_DROPS, .territory = { .patrol = { .isFlying = TRUE, @@ -138,24 +71,7 @@ StaticNpc N(NpcData_KoopaTroopa) = { .detectSize = { 150, 80 }, } }, - .animations = { - .idle = ANIM_KoopaTroopa_Anim01, - .walk = ANIM_KoopaTroopa_Anim03, - .run = ANIM_KoopaTroopa_Anim04, - .chase = ANIM_KoopaTroopa_Anim04, - .anim_4 = ANIM_KoopaTroopa_Anim01, - .anim_5 = ANIM_KoopaTroopa_Anim01, - .death = ANIM_KoopaTroopa_Anim0B, - .hit = ANIM_KoopaTroopa_Anim0B, - .anim_8 = ANIM_KoopaTroopa_Anim07, - .anim_9 = ANIM_KoopaTroopa_Anim06, - .anim_A = ANIM_KoopaTroopa_Anim08, - .anim_B = ANIM_KoopaTroopa_Anim04, - .anim_C = ANIM_KoopaTroopa_Anim04, - .anim_D = ANIM_KoopaTroopa_Anim04, - .anim_E = ANIM_KoopaTroopa_Anim04, - .anim_F = ANIM_KoopaTroopa_Anim04, - }, + .animations = KOOPA_TROOPA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_trd/trd_03/trd_03_3_npc.c b/src/world/area_trd/trd_03/trd_03_3_npc.c index 36e5106328..2e6e95afc9 100644 --- a/src/world/area_trd/trd_03/trd_03_3_npc.c +++ b/src/world/area_trd/trd_03/trd_03_3_npc.c @@ -219,18 +219,7 @@ StaticNpc N(NpcData_KoopaTroopa_01) = { .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, .init = &N(EVS_NpcInit_KoopaTroopa_01), - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_MUSHROOM, 5, 0 }, - { ITEM_P_O_W_BLOCK, 5, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 1, - }, + .drops = KOOPA_TROOPA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -243,24 +232,7 @@ StaticNpc N(NpcData_KoopaTroopa_01) = { .detectSize = { 350 }, } }, - .animations = { - .idle = ANIM_KoopaTroopa_Anim01, - .walk = ANIM_KoopaTroopa_Anim03, - .run = ANIM_KoopaTroopa_Anim04, - .chase = ANIM_KoopaTroopa_Anim04, - .anim_4 = ANIM_KoopaTroopa_Anim01, - .anim_5 = ANIM_KoopaTroopa_Anim01, - .death = ANIM_KoopaTroopa_Anim0B, - .hit = ANIM_KoopaTroopa_Anim0B, - .anim_8 = ANIM_KoopaTroopa_Anim07, - .anim_9 = ANIM_KoopaTroopa_Anim06, - .anim_A = ANIM_KoopaTroopa_Anim08, - .anim_B = ANIM_KoopaTroopa_Anim04, - .anim_C = ANIM_KoopaTroopa_Anim04, - .anim_D = ANIM_KoopaTroopa_Anim04, - .anim_E = ANIM_KoopaTroopa_Anim04, - .anim_F = ANIM_KoopaTroopa_Anim04, - }, + .animations = KOOPA_TROOPA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -271,18 +243,7 @@ StaticNpc N(NpcData_KoopaTroopa_02) = { .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, .init = &N(EVS_NpcInit_KoopaTroopa_02), - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_MUSHROOM, 5, 0 }, - { ITEM_P_O_W_BLOCK, 5, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 1, - }, + .drops = KOOPA_TROOPA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -295,24 +256,7 @@ StaticNpc N(NpcData_KoopaTroopa_02) = { .detectSize = { 350 }, } }, - .animations = { - .idle = ANIM_KoopaTroopa_Anim01, - .walk = ANIM_KoopaTroopa_Anim03, - .run = ANIM_KoopaTroopa_Anim04, - .chase = ANIM_KoopaTroopa_Anim04, - .anim_4 = ANIM_KoopaTroopa_Anim01, - .anim_5 = ANIM_KoopaTroopa_Anim01, - .death = ANIM_KoopaTroopa_Anim0B, - .hit = ANIM_KoopaTroopa_Anim0B, - .anim_8 = ANIM_KoopaTroopa_Anim07, - .anim_9 = ANIM_KoopaTroopa_Anim06, - .anim_A = ANIM_KoopaTroopa_Anim08, - .anim_B = ANIM_KoopaTroopa_Anim04, - .anim_C = ANIM_KoopaTroopa_Anim04, - .anim_D = ANIM_KoopaTroopa_Anim04, - .anim_E = ANIM_KoopaTroopa_Anim04, - .anim_F = ANIM_KoopaTroopa_Anim04, - }, + .animations = KOOPA_TROOPA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -322,18 +266,7 @@ StaticNpc N(NpcData_KoopaTroopa_03) = { .pos = { 375.0f, 0.0f, 15.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_MUSHROOM, 5, 0 }, - { ITEM_P_O_W_BLOCK, 5, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 1, - }, + .drops = KOOPA_TROOPA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -346,24 +279,7 @@ StaticNpc N(NpcData_KoopaTroopa_03) = { .detectSize = { 350 }, } }, - .animations = { - .idle = ANIM_KoopaTroopa_Anim01, - .walk = ANIM_KoopaTroopa_Anim03, - .run = ANIM_KoopaTroopa_Anim04, - .chase = ANIM_KoopaTroopa_Anim04, - .anim_4 = ANIM_KoopaTroopa_Anim01, - .anim_5 = ANIM_KoopaTroopa_Anim01, - .death = ANIM_KoopaTroopa_Anim0B, - .hit = ANIM_KoopaTroopa_Anim0B, - .anim_8 = ANIM_KoopaTroopa_Anim07, - .anim_9 = ANIM_KoopaTroopa_Anim06, - .anim_A = ANIM_KoopaTroopa_Anim08, - .anim_B = ANIM_KoopaTroopa_Anim04, - .anim_C = ANIM_KoopaTroopa_Anim04, - .anim_D = ANIM_KoopaTroopa_Anim04, - .anim_E = ANIM_KoopaTroopa_Anim04, - .anim_F = ANIM_KoopaTroopa_Anim04, - }, + .animations = KOOPA_TROOPA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_trd/trd_04/trd_04_2_entity.c b/src/world/area_trd/trd_04/trd_04_2_entity.c index 37eb19da34..9658d642ff 100644 --- a/src/world/area_trd/trd_04/trd_04_2_entity.c +++ b/src/world/area_trd/trd_04/trd_04_2_entity.c @@ -4,7 +4,7 @@ extern EvtScript N(EVS_ExitDoors_trd_05_0); extern EvtScript N(EVS_ExitDoors_trd_03_3); -#include "world/common/SetEntityFlags100000.inc.c" +#include "world/common/RemovePadlock.inc.c" #include "world/common/SetEntityPosition.inc.c" @@ -53,7 +53,7 @@ EvtScript N(EVS_UnlockUpperLeftDoors) = { EVT_CALL(N(GetEntityPosition), MV_Unk_00, LVar0, LVar1, LVar2) EVT_CALL(PlaySoundAt, SOUND_269, 0, LVar0, LVar1, LVar2) EVT_SET(LVar0, MV_Unk_00) - EVT_CALL(N(SetEntityFlags100000)) + EVT_CALL(N(RemovePadlock)) EVT_RESUME_GROUP(1) EVT_UNBIND EVT_RETURN @@ -81,7 +81,7 @@ EvtScript N(EVS_UnlockLowerRightDoors) = { EVT_CALL(N(GetEntityPosition), MV_Unk_01, LVar0, LVar1, LVar2) EVT_CALL(PlaySoundAt, SOUND_269, 0, LVar0, LVar1, LVar2) EVT_SET(LVar0, MV_Unk_01) - EVT_CALL(N(SetEntityFlags100000)) + EVT_CALL(N(RemovePadlock)) EVT_RESUME_GROUP(1) EVT_UNBIND EVT_RETURN diff --git a/src/world/area_trd/trd_04/trd_04_3_npc.c b/src/world/area_trd/trd_04/trd_04_3_npc.c index 90ddb080b1..970097b13d 100644 --- a/src/world/area_trd/trd_04/trd_04_3_npc.c +++ b/src/world/area_trd/trd_04/trd_04_3_npc.c @@ -36,18 +36,7 @@ StaticNpc N(NpcData_KoopaTroopa_Wander) = { .pos = { 0.0f, 0.0f, 125.0f }, .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_PROJECT_SHADOW, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_MUSHROOM, 5, 0 }, - { ITEM_P_O_W_BLOCK, 5, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 1, - }, + .drops = KOOPA_TROOPA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -60,24 +49,7 @@ StaticNpc N(NpcData_KoopaTroopa_Wander) = { .detectSize = { 200 }, } }, - .animations = { - .idle = ANIM_KoopaTroopa_Anim01, - .walk = ANIM_KoopaTroopa_Anim03, - .run = ANIM_KoopaTroopa_Anim04, - .chase = ANIM_KoopaTroopa_Anim04, - .anim_4 = ANIM_KoopaTroopa_Anim01, - .anim_5 = ANIM_KoopaTroopa_Anim01, - .death = ANIM_KoopaTroopa_Anim0B, - .hit = ANIM_KoopaTroopa_Anim0B, - .anim_8 = ANIM_KoopaTroopa_Anim07, - .anim_9 = ANIM_KoopaTroopa_Anim06, - .anim_A = ANIM_KoopaTroopa_Anim08, - .anim_B = ANIM_KoopaTroopa_Anim04, - .anim_C = ANIM_KoopaTroopa_Anim04, - .anim_D = ANIM_KoopaTroopa_Anim04, - .anim_E = ANIM_KoopaTroopa_Anim04, - .anim_F = ANIM_KoopaTroopa_Anim04, - }, + .animations = KOOPA_TROOPA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -107,24 +79,7 @@ StaticNpc N(NpcData_KoopaTroopa_Patrol) = { .detectSize = { 200 }, } }, - .animations = { - .idle = ANIM_KoopaTroopa_Anim01, - .walk = ANIM_KoopaTroopa_Anim03, - .run = ANIM_KoopaTroopa_Anim04, - .chase = ANIM_KoopaTroopa_Anim04, - .anim_4 = ANIM_KoopaTroopa_Anim01, - .anim_5 = ANIM_KoopaTroopa_Anim01, - .death = ANIM_KoopaTroopa_Anim0B, - .hit = ANIM_KoopaTroopa_Anim0B, - .anim_8 = ANIM_KoopaTroopa_Anim07, - .anim_9 = ANIM_KoopaTroopa_Anim06, - .anim_A = ANIM_KoopaTroopa_Anim08, - .anim_B = ANIM_KoopaTroopa_Anim04, - .anim_C = ANIM_KoopaTroopa_Anim04, - .anim_D = ANIM_KoopaTroopa_Anim04, - .anim_E = ANIM_KoopaTroopa_Anim04, - .anim_F = ANIM_KoopaTroopa_Anim04, - }, + .animations = KOOPA_TROOPA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; @@ -134,17 +89,7 @@ StaticNpc N(NpcData_ParaTroopa) = { .pos = { -5.0f, 237.0f, 157.0f }, .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_P_O_W_BLOCK, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 1, - }, + .drops = PARATROOPA_DROPS, .territory = { .wander = { .isFlying = FALSE, @@ -157,24 +102,7 @@ StaticNpc N(NpcData_ParaTroopa) = { .detectSize = { 200 }, } }, - .animations = { - .idle = ANIM_ParaTroopa_Anim01, - .walk = ANIM_ParaTroopa_Anim02, - .run = ANIM_ParaTroopa_Anim03, - .chase = ANIM_ParaTroopa_Anim03, - .anim_4 = ANIM_ParaTroopa_Anim01, - .anim_5 = ANIM_ParaTroopa_Anim01, - .death = ANIM_ParaTroopa_Anim06, - .hit = ANIM_ParaTroopa_Anim06, - .anim_8 = ANIM_ParaTroopa_Anim04, - .anim_9 = ANIM_ParaTroopa_Anim0C, - .anim_A = ANIM_ParaTroopa_Anim0A, - .anim_B = ANIM_ParaTroopa_Anim0E, - .anim_C = ANIM_ParaTroopa_Anim03, - .anim_D = ANIM_ParaTroopa_Anim03, - .anim_E = ANIM_ParaTroopa_Anim03, - .anim_F = ANIM_ParaTroopa_Anim03, - }, + .animations = PARATROOPA_ANIMS, .aiDetectFlags = AI_DETECT_SIGHT, }; diff --git a/src/world/area_trd/trd_07/trd_07_2_npc.c b/src/world/area_trd/trd_07/trd_07_2_npc.c index 72c2632ed1..a7b93c189e 100644 --- a/src/world/area_trd/trd_07/trd_07_2_npc.c +++ b/src/world/area_trd/trd_07/trd_07_2_npc.c @@ -44,18 +44,7 @@ StaticNpc N(NpcData_KoopaTroopa) = { .yaw = 90, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_40000, .init = &N(EVS_NpcInit_KoopaTroopa), - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_MUSHROOM, 5, 0 }, - { ITEM_P_O_W_BLOCK, 5, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 1, - }, + .drops = KOOPA_TROOPA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -68,24 +57,7 @@ StaticNpc N(NpcData_KoopaTroopa) = { .detectSize = { 1000 }, } }, - .animations = { - .idle = ANIM_KoopaTroopa_Anim01, - .walk = ANIM_KoopaTroopa_Anim03, - .run = ANIM_KoopaTroopa_Anim04, - .chase = ANIM_KoopaTroopa_Anim04, - .anim_4 = ANIM_KoopaTroopa_Anim01, - .anim_5 = ANIM_KoopaTroopa_Anim01, - .death = ANIM_KoopaTroopa_Anim0B, - .hit = ANIM_KoopaTroopa_Anim0B, - .anim_8 = ANIM_KoopaTroopa_Anim07, - .anim_9 = ANIM_KoopaTroopa_Anim06, - .anim_A = ANIM_KoopaTroopa_Anim08, - .anim_B = ANIM_KoopaTroopa_Anim04, - .anim_C = ANIM_KoopaTroopa_Anim04, - .anim_D = ANIM_KoopaTroopa_Anim04, - .anim_E = ANIM_KoopaTroopa_Anim04, - .anim_F = ANIM_KoopaTroopa_Anim04, - }, + .animations = KOOPA_TROOPA_ANIMS, }; StaticNpc N(NpcData_ParaTroopa_01) = { @@ -95,17 +67,7 @@ StaticNpc N(NpcData_ParaTroopa_01) = { .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_40000, .init = &N(EVS_NpcInit_KoopaTroopa), - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_P_O_W_BLOCK, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 1, - }, + .drops = PARATROOPA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -118,24 +80,7 @@ StaticNpc N(NpcData_ParaTroopa_01) = { .detectSize = { 200 }, } }, - .animations = { - .idle = ANIM_ParaTroopa_Anim01, - .walk = ANIM_ParaTroopa_Anim02, - .run = ANIM_ParaTroopa_Anim03, - .chase = ANIM_ParaTroopa_Anim03, - .anim_4 = ANIM_ParaTroopa_Anim01, - .anim_5 = ANIM_ParaTroopa_Anim01, - .death = ANIM_ParaTroopa_Anim06, - .hit = ANIM_ParaTroopa_Anim06, - .anim_8 = ANIM_ParaTroopa_Anim04, - .anim_9 = ANIM_ParaTroopa_Anim0C, - .anim_A = ANIM_ParaTroopa_Anim0A, - .anim_B = ANIM_ParaTroopa_Anim0E, - .anim_C = ANIM_ParaTroopa_Anim03, - .anim_D = ANIM_ParaTroopa_Anim03, - .anim_E = ANIM_ParaTroopa_Anim03, - .anim_F = ANIM_ParaTroopa_Anim03, - }, + .animations = PARATROOPA_ANIMS, }; StaticNpc N(NpcData_ParaTroopa_02) = { @@ -145,17 +90,7 @@ StaticNpc N(NpcData_ParaTroopa_02) = { .yaw = 270, .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_40000, .init = &N(EVS_NpcInit_KoopaTroopa), - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .itemDropChance = 5, - .itemDrops = { - { ITEM_P_O_W_BLOCK, 10, 0 }, - }, - .heartDrops = STANDARD_HEART_DROPS(2), - .flowerDrops = STANDARD_FLOWER_DROPS(2), - .minCoinBonus = 1, - .maxCoinBonus = 1, - }, + .drops = PARATROOPA_DROPS, .territory = { .wander = { .isFlying = TRUE, @@ -168,24 +103,7 @@ StaticNpc N(NpcData_ParaTroopa_02) = { .detectSize = { 200 }, } }, - .animations = { - .idle = ANIM_ParaTroopa_Anim01, - .walk = ANIM_ParaTroopa_Anim02, - .run = ANIM_ParaTroopa_Anim03, - .chase = ANIM_ParaTroopa_Anim03, - .anim_4 = ANIM_ParaTroopa_Anim01, - .anim_5 = ANIM_ParaTroopa_Anim01, - .death = ANIM_ParaTroopa_Anim06, - .hit = ANIM_ParaTroopa_Anim06, - .anim_8 = ANIM_ParaTroopa_Anim04, - .anim_9 = ANIM_ParaTroopa_Anim0C, - .anim_A = ANIM_ParaTroopa_Anim0A, - .anim_B = ANIM_ParaTroopa_Anim0E, - .anim_C = ANIM_ParaTroopa_Anim03, - .anim_D = ANIM_ParaTroopa_Anim03, - .anim_E = ANIM_ParaTroopa_Anim03, - .anim_F = ANIM_ParaTroopa_Anim03, - }, + .animations = PARATROOPA_ANIMS, }; NpcGroupList N(DefaultNPCs) = { diff --git a/src/world/common/SetEntityFlags100000.inc.c b/src/world/common/RemovePadlock.inc.c similarity index 71% rename from src/world/common/SetEntityFlags100000.inc.c rename to src/world/common/RemovePadlock.inc.c index 97ff977c0b..9b840a4c0b 100644 --- a/src/world/common/SetEntityFlags100000.inc.c +++ b/src/world/common/RemovePadlock.inc.c @@ -1,7 +1,7 @@ #include "common.h" #include "npc.h" -ApiStatus N(SetEntityFlags100000)(Evt* script, s32 isInitialCall) { +ApiStatus N(RemovePadlock)(Evt* script, s32 isInitialCall) { Entity* entity = get_entity_by_index(script->varTable[0]); entity->flags |= ENTITY_FLAGS_100000; diff --git a/src/world/common/UnkFloatFunc001.inc.c b/src/world/common/UnkFloatFunc001.inc.c index 11a88dae2c..e634ee118d 100644 --- a/src/world/common/UnkFloatFunc001.inc.c +++ b/src/world/common/UnkFloatFunc001.inc.c @@ -1,7 +1,7 @@ #include "common.h" #include "npc.h" -// Similar to UnkFloatFunc +// Similar to CosInterpMinMax ApiStatus N(UnkFloatFunc001)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; s32 a1 = *args++; diff --git a/src/world/common/UnkFloatFuncAbs.inc.c b/src/world/common/UnkFloatFuncAbs.inc.c index 334db4561e..460983d669 100644 --- a/src/world/common/UnkFloatFuncAbs.inc.c +++ b/src/world/common/UnkFloatFuncAbs.inc.c @@ -1,7 +1,7 @@ #include "common.h" #include "npc.h" -// Same as UnkFloatFunc with an extra abs on diff +// Same as CosInterpMinMax with an extra abs on diff ApiStatus N(UnkFloatFuncAbs)(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; s32 a1 = *args++; diff --git a/src/world/common/UnkFunc46.inc.c b/src/world/common/UnkFunc46.inc.c index 2cd78bf5df..620302a7c1 100644 --- a/src/world/common/UnkFunc46.inc.c +++ b/src/world/common/UnkFunc46.inc.c @@ -7,7 +7,7 @@ ApiStatus N(UnkFunc46)(Evt* script, s32 isInitialCall) { f32 var3 = 0.0f; f32 var4 = 2000.0f; - if (npc_raycast_down_sides(0x10000, &var1, &var2, &var3, &var4)) { + if (npc_raycast_down_sides(COLLISION_CHANNEL_10000, &var1, &var2, &var3, &var4)) { script->varTable[0] = var1; script->varTable[2] = var2 + 55.0f; } diff --git a/src/world/common/complete/GiveReward.inc.c b/src/world/common/complete/GiveReward.inc.c new file mode 100644 index 0000000000..3168edbd40 --- /dev/null +++ b/src/world/common/complete/GiveReward.inc.c @@ -0,0 +1,31 @@ +#ifndef _COMMON_GIVE_REWARD_H_ +#define _COMMON_GIVE_REWARD_H_ + +#include "common.h" + +static s32** N(varStash) = NULL; + +#include "world/common/StashVars.inc.c" +#include "world/common/GetItemName.inc.c" + +EvtScript N(GiveKeyReward) = { + EVT_CALL(ShowGotItem, LVar0, ITEM_TYPE_KEY, 0) + EVT_RETURN + EVT_RETURN + EVT_END +}; + +EvtScript N(GiveCoinReward) = { + EVT_CALL(ShowGotItem, LVar0, ITEM_TYPE_KEY, ITEM_PICKUP_FLAG_1_COIN) + EVT_RETURN + EVT_RETURN + EVT_END +}; + +#define EVT_GIVE_KEY_REWARD(itemID) \ + EVT_SET(LVar0, itemID) \ + EVT_SET(LVar1, ITEM_TYPE_KEY) \ + EVT_EXEC_WAIT(N(GiveKeyReward)) \ + EVT_CALL(AddKeyItem, itemID) + +#endif diff --git a/src/world/common/complete/KeyItems.inc.c b/src/world/common/complete/KeyItems.inc.c new file mode 100644 index 0000000000..1d4f32fd48 --- /dev/null +++ b/src/world/common/complete/KeyItems.inc.c @@ -0,0 +1,46 @@ +#include "common.h" + +static s32 N(KeyItemChoiceList)[112]; + +#include "world/common/complete/GiveReward.inc.c" + +s32 N(ItemChoice_HasSelectedItem) = 0; + +s32 N(ItemChoice_SelectedItemID) = 0; + +#include "world/common/atomic/ItemChoice_PartA.inc.c" + +#include "world/common/atomic/MakeKeyChoice.inc.c" + +EvtScript N(EVS_ItemChoicePopup) = { + EVT_SET(LVar9, LVar1) + EVT_CALL(ShowKeyChoicePopup) + EVT_SET(LVarA, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(0) + EVT_CASE_EQ(-1) + EVT_CASE_DEFAULT + EVT_CALL(RemoveKeyItemAt, LVar1) + EVT_CALL(GetPlayerPos, LVar3, LVar4, LVar5) + EVT_CALL(N(AddPlayerHandsOffset), LVar3, LVar4, LVar5) + EVT_BITWISE_OR_CONST(LVar0, 0x00050000) + EVT_CALL(MakeItemEntity, LVar0, LVar3, LVar4, LVar5, ITEM_SPAWN_MODE_DECORATION, 0) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_60005) + EVT_WAIT(30) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_CALL(RemoveItemEntity, LVar0) + EVT_END_SWITCH + EVT_CALL(N(ItemChoice_SaveSelected), LVarA) + EVT_CALL(CloseChoicePopup) + EVT_UNBIND + EVT_RETURN + EVT_END +}; + +EvtScript N(ChooseKeyItem) = { + EVT_CALL(N(BuildKeyItemChoiceList), LVar0) + EVT_BIND_PADLOCK(EVT_PTR(N(EVS_ItemChoicePopup)), TRIGGER_FORCE_ACTIVATE, 0, EVT_PTR(N(KeyItemChoiceList)), 0, 1) + EVT_CALL(N(ItemChoice_WaitForSelection), LVar0) + EVT_RETURN + EVT_END +}; diff --git a/src/world/common/enemy/complete/Bandit.h b/src/world/common/enemy/complete/Bandit.h new file mode 100644 index 0000000000..41e255e567 --- /dev/null +++ b/src/world/common/enemy/complete/Bandit.h @@ -0,0 +1,35 @@ +#include "common.h" +#include "sprite/npc/Bandit.h" + +#define BANDIT_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 5, \ + .itemDrops = { \ + { ITEM_HONEY_SYRUP, 10, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(2), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 1, \ + .maxCoinBonus = 3, \ +} + +#define BANDIT_ANIMS \ +{ \ + .idle = ANIM_Bandit_Anim01, \ + .walk = ANIM_Bandit_Anim05, \ + .run = ANIM_Bandit_Anim07, \ + .chase = ANIM_Bandit_Anim07, \ + .anim_4 = ANIM_Bandit_Anim01, \ + .anim_5 = ANIM_Bandit_Anim01, \ + .death = ANIM_Bandit_Anim09, \ + .hit = ANIM_Bandit_Anim09, \ + .anim_8 = ANIM_Bandit_Anim00, \ + .anim_9 = ANIM_Bandit_Anim00, \ + .anim_A = ANIM_Bandit_Anim00, \ + .anim_B = ANIM_Bandit_Anim00, \ + .anim_C = ANIM_Bandit_Anim00, \ + .anim_D = ANIM_Bandit_Anim00, \ + .anim_E = ANIM_Bandit_Anim00, \ + .anim_F = ANIM_Bandit_Anim00, \ +} diff --git a/src/world/common/enemy/complete/Bandit.inc.c b/src/world/common/enemy/complete/Bandit.inc.c index 755fa13dae..d2d1f3dc87 100644 --- a/src/world/common/enemy/complete/Bandit.inc.c +++ b/src/world/common/enemy/complete/Bandit.inc.c @@ -1,7 +1,9 @@ -#include "common.h" +#include "Bandit.h" -API_CALLABLE(N(Bandit_DropStolenCoin)) { +#define HAS_COIN_FLAG AreaFlag(1) + +API_CALLABLE(N(Bandit_TetherStolenCoin)) { Bytecode* args = script->ptrReadPos; s32 npcID; Npc* npc; @@ -43,7 +45,7 @@ EvtScript N(EVS_Bandit_CreateStolenCoin) = { EVT_CALL(GetNpcPos, LVarA, LVar1, LVar2, LVar3) EVT_ADD(LVar2, 30) EVT_CALL(MakeItemEntity, ITEM_COIN, LVar1, LVar2, LVar3, ITEM_SPAWN_MODE_DECORATION, 0) - EVT_CALL(N(Bandit_DropStolenCoin), LVarA, LVar0, AF_SBK_01) + EVT_CALL(N(Bandit_TetherStolenCoin), LVarA, LVar0, HAS_COIN_FLAG) EVT_CALL(RemoveItemEntity, LVar0) EVT_RETURN EVT_END @@ -78,7 +80,7 @@ EvtScript N(EVS_NpcDefeat_Bandit) = { EVT_CALL(OnPlayerFled, 0) EVT_CASE_EQ(OUTCOME_ENEMY_FLED) EVT_CALL(DisablePlayerInput, TRUE) - EVT_SET(AF_SBK_01, TRUE) + EVT_SET(HAS_COIN_FLAG, TRUE) EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_40, TRUE) EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_Bandit_Anim02) EVT_CALL(GetSelfNpcID, LVar0) @@ -97,7 +99,7 @@ EvtScript N(EVS_NpcDefeat_Bandit) = { EVT_CALL(SetNpcSpeed, NPC_SELF, EVT_FLOAT(16.0)) EVT_ADD(LVar7, 200) EVT_CALL(NpcMoveTo, NPC_SELF, LVar7, LVar9, 0) - EVT_SET(AF_SBK_01, FALSE) + EVT_SET(HAS_COIN_FLAG, FALSE) EVT_CALL(DisablePlayerInput, FALSE) EVT_CALL(SetEnemyFlagBits, NPC_SELF, ENEMY_FLAGS_10, 1) EVT_CALL(RemoveNpc, NPC_SELF) diff --git a/src/world/common/enemy/complete/Bobomb.h b/src/world/common/enemy/complete/Bobomb.h new file mode 100644 index 0000000000..f880df1e1c --- /dev/null +++ b/src/world/common/enemy/complete/Bobomb.h @@ -0,0 +1,36 @@ +#include "common.h" +#include "sprite/npc/Bobomb.h" + +#define BOBOMB_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 5, \ + .itemDrops = { \ + { ITEM_HONEY_SYRUP, 5, 0 }, \ + { ITEM_FIRE_FLOWER, 5, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(2), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 0, \ + .maxCoinBonus = 1, \ +} + +#define BOBOMB_ANIMS \ +{ \ + .idle = ANIM_Bobomb_Anim02, \ + .walk = ANIM_Bobomb_Anim04, \ + .run = ANIM_Bobomb_Anim06, \ + .chase = ANIM_Bobomb_Anim06, \ + .anim_4 = ANIM_Bobomb_Anim02, \ + .anim_5 = ANIM_Bobomb_Anim02, \ + .death = ANIM_Bobomb_Anim0E, \ + .hit = ANIM_Bobomb_Anim0E, \ + .anim_8 = ANIM_Bobomb_Anim06, \ + .anim_9 = ANIM_Bobomb_Anim06, \ + .anim_A = ANIM_Bobomb_Anim06, \ + .anim_B = ANIM_Bobomb_Anim06, \ + .anim_C = ANIM_Bobomb_Anim06, \ + .anim_D = ANIM_Bobomb_Anim06, \ + .anim_E = ANIM_Bobomb_Anim06, \ + .anim_F = ANIM_Bobomb_Anim06, \ +} diff --git a/src/world/common/enemy/complete/Bobomb_Stationary.inc.c b/src/world/common/enemy/complete/Bobomb_Stationary.inc.c index c94bcad50d..e0ba2897f3 100644 --- a/src/world/common/enemy/complete/Bobomb_Stationary.inc.c +++ b/src/world/common/enemy/complete/Bobomb_Stationary.inc.c @@ -1,4 +1,5 @@ #include "common.h" +#include "Bobomb.h" #include "world/common/enemy/StationaryAI.inc.c" diff --git a/src/world/common/enemy/complete/Bobomb_Wander.inc.c b/src/world/common/enemy/complete/Bobomb_Wander.inc.c index f4d1848fd7..b7b4627400 100644 --- a/src/world/common/enemy/complete/Bobomb_Wander.inc.c +++ b/src/world/common/enemy/complete/Bobomb_Wander.inc.c @@ -1,4 +1,5 @@ #include "common.h" +#include "Bobomb.h" MobileAISettings N(AISettings_Bobomb) = { .moveSpeed = 1.5f, diff --git a/src/world/common/enemy/complete/Cleft.h b/src/world/common/enemy/complete/Cleft.h new file mode 100644 index 0000000000..35d35c04fe --- /dev/null +++ b/src/world/common/enemy/complete/Cleft.h @@ -0,0 +1,31 @@ +#include "common.h" +#include "sprite/npc/Cleft.h" + +#define CLEFT_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .heartDrops = STANDARD_HEART_DROPS(3), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 1, \ + .maxCoinBonus = 3, \ +} + +#define CLEFT_ANIMS \ +{ \ + .idle = ANIM_Cleft_Anim02, \ + .walk = ANIM_Cleft_Anim06, \ + .run = ANIM_Cleft_Anim07, \ + .chase = ANIM_Cleft_Anim07, \ + .anim_4 = ANIM_Cleft_Anim02, \ + .anim_5 = ANIM_Cleft_Anim02, \ + .death = ANIM_Cleft_Anim08, \ + .hit = ANIM_Cleft_Anim08, \ + .anim_8 = ANIM_Cleft_Anim14, \ + .anim_9 = ANIM_Cleft_Anim17, \ + .anim_A = ANIM_Cleft_Anim13, \ + .anim_B = ANIM_Cleft_Anim15, \ + .anim_C = ANIM_Cleft_Anim10, \ + .anim_D = ANIM_Cleft_Anim11, \ + .anim_E = ANIM_Cleft_Anim16, \ + .anim_F = ANIM_Cleft_Anim00, \ +} diff --git a/src/world/common/enemy/complete/Cleft.inc.c b/src/world/common/enemy/complete/Cleft.inc.c new file mode 100644 index 0000000000..0a9ce45b7a --- /dev/null +++ b/src/world/common/enemy/complete/Cleft.inc.c @@ -0,0 +1,33 @@ + +#include "Cleft.h" + +#include "world/common/enemy/CleftAI.inc.c" + +MobileAISettings N(AISettings_Cleft) = { + .moveSpeed = 1.0f, + .moveTime = 30, + .waitTime = 30, + .alertRadius = 120.0f, + .playerSearchInterval = 3, + .chaseSpeed = 7.0f, + .chaseTurnRate = 60, + .chaseUpdateInterval = 5, + .chaseRadius = 100.0f, + .chaseOffsetDist = 60.0f, + .unk_AI_2C = 1, +}; + +EvtScript N(EVS_NpcAI_Cleft) = { + EVT_CALL(N(CleftAI_Main), EVT_PTR(N(AISettings_Cleft)), 16) + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_Cleft) = { + .height = 26, + .radius = 24, + .level = 10, + .ai = &N(EVS_NpcAI_Cleft), + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, +}; diff --git a/src/world/common/enemy/complete/Goomba.inc.c b/src/world/common/enemy/complete/Goomba.inc.c new file mode 100644 index 0000000000..658ba19fd2 --- /dev/null +++ b/src/world/common/enemy/complete/Goomba.inc.c @@ -0,0 +1,30 @@ + +#include "common.h" + +MobileAISettings N(AISettings_Goomba) = { + .moveSpeed = 1.8f, + .moveTime = 40, + .waitTime = 15, + .alertRadius = 150.0f, + .playerSearchInterval = 2, + .chaseSpeed = 3.3f, + .chaseTurnRate = 70, + .chaseUpdateInterval = 1, + .chaseRadius = 180.0f, + .unk_AI_2C = 1, +}; + +EvtScript N(EVS_NpcAI_Goomba) = { + EVT_CALL(BasicAI_Main, EVT_PTR(N(AISettings_Goomba))) + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_Goomba) = { + .height = 20, + .radius = 23, + .level = 12, + .ai = &N(EVS_NpcAI_Goomba), + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, +}; diff --git a/src/world/common/enemy/complete/HyperCleft.h b/src/world/common/enemy/complete/HyperCleft.h new file mode 100644 index 0000000000..3aeb7884c7 --- /dev/null +++ b/src/world/common/enemy/complete/HyperCleft.h @@ -0,0 +1,31 @@ +#include "common.h" +#include "sprite/npc/Cleft.h" + +#define HYPER_CLEFT_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .heartDrops = STANDARD_HEART_DROPS(3), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 1, \ + .maxCoinBonus = 3, \ +} + +#define HYPER_CLEFT_ANIMS \ +{ \ + .idle = ANIM_Cleft_Hyper_Anim02, \ + .walk = ANIM_Cleft_Hyper_Anim06, \ + .run = ANIM_Cleft_Hyper_Anim07, \ + .chase = ANIM_Cleft_Hyper_Anim07, \ + .anim_4 = ANIM_Cleft_Hyper_Anim02, \ + .anim_5 = ANIM_Cleft_Hyper_Anim02, \ + .death = ANIM_Cleft_Hyper_Anim08, \ + .hit = ANIM_Cleft_Hyper_Anim08, \ + .anim_8 = ANIM_Cleft_Hyper_Anim14, \ + .anim_9 = ANIM_Cleft_Hyper_Anim17, \ + .anim_A = ANIM_Cleft_Hyper_Anim13, \ + .anim_B = ANIM_Cleft_Hyper_Anim15, \ + .anim_C = ANIM_Cleft_Hyper_Anim10, \ + .anim_D = ANIM_Cleft_Hyper_Anim11, \ + .anim_E = ANIM_Cleft_Hyper_Anim16, \ + .anim_F = ANIM_Cleft_Hyper_Anim00, \ +} diff --git a/src/world/common/enemy/complete/HyperCleft.inc.c b/src/world/common/enemy/complete/HyperCleft.inc.c new file mode 100644 index 0000000000..cb1a04b694 --- /dev/null +++ b/src/world/common/enemy/complete/HyperCleft.inc.c @@ -0,0 +1,32 @@ +#include "HyperCleft.h" + +#include "world/common/enemy/CleftAI.inc.c" + +MobileAISettings N(AISettings_HyperCleft) = { + .moveSpeed = 1.0f, + .moveTime = 30, + .waitTime = 30, + .alertRadius = 120.0f, + .playerSearchInterval = 3, + .chaseSpeed = 8.5f, + .chaseTurnRate = 60, + .chaseUpdateInterval = 3, + .chaseRadius = 100.0f, + .chaseOffsetDist = 60.0f, + .unk_AI_2C = 1, +}; + +EvtScript N(EVS_NpcAI_HyperCleft) = { + EVT_CALL(N(CleftAI_Main), EVT_PTR(N(AISettings_HyperCleft)), 8) + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_HyperCleft) = { + .height = 24, + .radius = 24, + .level = 15, + .ai = &N(EVS_NpcAI_HyperCleft), + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, +}; diff --git a/src/world/common/enemy/complete/HyperGoomba.h b/src/world/common/enemy/complete/HyperGoomba.h new file mode 100644 index 0000000000..48523d9de1 --- /dev/null +++ b/src/world/common/enemy/complete/HyperGoomba.h @@ -0,0 +1,35 @@ +#include "common.h" +#include "sprite/npc/Goomba.h" + +#define HYPER_GOOMBA_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 20, \ + .itemDrops = { \ + { ITEM_DRIED_SHROOM, 10, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(2), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 0, \ + .maxCoinBonus = 2, \ +} + +#define HYPER_GOOMBA_ANIMS \ +{ \ + .idle = ANIM_Goomba_Hyper_Idle, \ + .walk = ANIM_Goomba_Hyper_Walk, \ + .run = ANIM_Goomba_Hyper_Run, \ + .chase = ANIM_Goomba_Hyper_Run, \ + .anim_4 = ANIM_Goomba_Hyper_Idle, \ + .anim_5 = ANIM_Goomba_Hyper_Idle, \ + .death = ANIM_Goomba_Hyper_Hurt, \ + .hit = ANIM_Goomba_Hyper_Hurt, \ + .anim_8 = ANIM_Goomba_Hyper_Run, \ + .anim_9 = ANIM_Goomba_Hyper_Run, \ + .anim_A = ANIM_Goomba_Hyper_Run, \ + .anim_B = ANIM_Goomba_Hyper_Run, \ + .anim_C = ANIM_Goomba_Hyper_Run, \ + .anim_D = ANIM_Goomba_Hyper_Run, \ + .anim_E = ANIM_Goomba_Hyper_Run, \ + .anim_F = ANIM_Goomba_Hyper_Run, \ +} diff --git a/src/world/common/enemy/complete/HyperGoomba_Patrol.inc.c b/src/world/common/enemy/complete/HyperGoomba_Patrol.inc.c new file mode 100644 index 0000000000..d4b5e5a7f8 --- /dev/null +++ b/src/world/common/enemy/complete/HyperGoomba_Patrol.inc.c @@ -0,0 +1,33 @@ + +#include "common.h" +#include "HyperGoomba.h" + +#include "world/common/enemy/PatrolNoAttackAI.inc.c" + +MobileAISettings N(AISettings_HyperGoomba_Patrol) = { + .moveSpeed = 1.5f, + .moveTime = 30, + .waitTime = 30, + .alertRadius = 130.0f, + .playerSearchInterval = 1, + .chaseSpeed = 2.5f, + .chaseTurnRate = 180, + .chaseUpdateInterval = 3, + .chaseRadius = 150.0f, + .unk_AI_2C = 1, +}; + +EvtScript N(EVS_NpcAI_HyperGoomba_Patrol) = { + EVT_CALL(N(PatrolNoAttackAI_Main), EVT_PTR(N(AISettings_HyperGoomba_Patrol))) + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_HyperGoomba_Patrol) = { + .height = 20, + .radius = 23, + .level = 12, + .ai = &N(EVS_NpcAI_HyperGoomba_Patrol), + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, +}; diff --git a/src/world/common/enemy/complete/HyperGoomba_Wander.inc.c b/src/world/common/enemy/complete/HyperGoomba_Wander.inc.c new file mode 100644 index 0000000000..c4c90fec2b --- /dev/null +++ b/src/world/common/enemy/complete/HyperGoomba_Wander.inc.c @@ -0,0 +1,31 @@ + +#include "common.h" +#include "HyperGoomba.h" + +MobileAISettings N(AISettings_HyperGoomba) = { + .moveSpeed = 1.8f, + .moveTime = 40, + .waitTime = 15, + .alertRadius = 150.0f, + .playerSearchInterval = 2, + .chaseSpeed = 3.3f, + .chaseTurnRate = 70, + .chaseUpdateInterval = 1, + .chaseRadius = 180.0f, + .unk_AI_2C = 1, +}; + +EvtScript N(EVS_NpcAI_HyperGoomba) = { + EVT_CALL(BasicAI_Main, EVT_PTR(N(AISettings_HyperGoomba))) + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_HyperGoomba) = { + .height = 20, + .radius = 23, + .level = 12, + .ai = &N(EVS_NpcAI_HyperGoomba), + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, +}; diff --git a/src/world/common/enemy/complete/HyperParagoomba.h b/src/world/common/enemy/complete/HyperParagoomba.h new file mode 100644 index 0000000000..da2cc7958f --- /dev/null +++ b/src/world/common/enemy/complete/HyperParagoomba.h @@ -0,0 +1,35 @@ +#include "common.h" +#include "sprite/npc/Paragoomba.h" + +#define HYPER_PARAGOOMBA_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 20, \ + .itemDrops = { \ + { ITEM_DRIED_SHROOM, 10, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(2), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 0, \ + .maxCoinBonus = 2, \ +} + +#define HYPER_PARAGOOMBA_ANIMS \ +{ \ + .idle = ANIM_Paragoomba_Hyper_Idle, \ + .walk = ANIM_Paragoomba_Hyper_Walk, \ + .run = ANIM_Paragoomba_Hyper_Run, \ + .chase = ANIM_Paragoomba_Hyper_Run, \ + .anim_4 = ANIM_Paragoomba_Hyper_Idle, \ + .anim_5 = ANIM_Paragoomba_Hyper_Idle, \ + .death = ANIM_Paragoomba_Hyper_Hurt, \ + .hit = ANIM_Paragoomba_Hyper_Hurt, \ + .anim_8 = ANIM_Paragoomba_Hyper_Dive, \ + .anim_9 = ANIM_Paragoomba_Hyper_Run, \ + .anim_A = ANIM_Paragoomba_Hyper_Run, \ + .anim_B = ANIM_Paragoomba_Hyper_Run, \ + .anim_C = ANIM_Paragoomba_Hyper_Run, \ + .anim_D = ANIM_Paragoomba_Hyper_Run, \ + .anim_E = ANIM_Paragoomba_Hyper_Run, \ + .anim_F = ANIM_Paragoomba_Hyper_Run, \ +} diff --git a/src/world/common/enemy/complete/HyperParagoomba.inc.c b/src/world/common/enemy/complete/HyperParagoomba.inc.c new file mode 100644 index 0000000000..59c1bb1a9f --- /dev/null +++ b/src/world/common/enemy/complete/HyperParagoomba.inc.c @@ -0,0 +1,40 @@ +#include "HyperParagoomba.h" + +f32 N(FlyingAI_JumpVels)[] = { + 4.5, 3.5, 2.6, 2.0, 1.5, 20.0, +}; + +#include "world/common/enemy/FlyingAI.inc.c" + +MobileAISettings N(AISettings_HyperParagoomba) = { + .moveSpeed = 1.8f, + .moveTime = 60, + .waitTime = 15, + .alertRadius = 120.0f, + .playerSearchInterval = 3, + .chaseSpeed = 4.0f, + .chaseTurnRate = 5, + .chaseUpdateInterval = 1, + .chaseRadius = 150.0f, + .unk_AI_2C = 1, +}; + +EvtScript N(EVS_NpcAI_HyperParagoomba) = { + EVT_CALL(SetSelfVar, 0, 1) + EVT_CALL(SetSelfVar, 5, -850) + EVT_CALL(SetSelfVar, 6, 60) + EVT_CALL(SetSelfVar, 1, 700) + EVT_CALL(N(FlyingAI_Main), EVT_PTR(N(AISettings_HyperParagoomba))) + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_HyperParagoomba) = { + .height = 18, + .radius = 20, + .level = 12, + .ai = &N(EVS_NpcAI_HyperParagoomba), + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, + .actionFlags = AI_ACTION_JUMP_WHEN_SEE_PLAYER, +}; diff --git a/src/world/common/enemy/complete/KoopaTroopa.h b/src/world/common/enemy/complete/KoopaTroopa.h new file mode 100644 index 0000000000..db0971ca8c --- /dev/null +++ b/src/world/common/enemy/complete/KoopaTroopa.h @@ -0,0 +1,36 @@ +#include "common.h" +#include "sprite/npc/KoopaTroopa.h" + +#define KOOPA_TROOPA_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 5, \ + .itemDrops = { \ + { ITEM_MUSHROOM, 5, 0 }, \ + { ITEM_POW_BLOCK, 5, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(2), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 1, \ + .maxCoinBonus = 1, \ +} + +#define KOOPA_TROOPA_ANIMS \ +{ \ + .idle = ANIM_KoopaTroopa_Anim01, \ + .walk = ANIM_KoopaTroopa_Anim03, \ + .run = ANIM_KoopaTroopa_Anim04, \ + .chase = ANIM_KoopaTroopa_Anim04, \ + .anim_4 = ANIM_KoopaTroopa_Anim01, \ + .anim_5 = ANIM_KoopaTroopa_Anim01, \ + .death = ANIM_KoopaTroopa_Anim0B, \ + .hit = ANIM_KoopaTroopa_Anim0B, \ + .anim_8 = ANIM_KoopaTroopa_Anim07, \ + .anim_9 = ANIM_KoopaTroopa_Anim06, \ + .anim_A = ANIM_KoopaTroopa_Anim08, \ + .anim_B = ANIM_KoopaTroopa_Anim04, \ + .anim_C = ANIM_KoopaTroopa_Anim04, \ + .anim_D = ANIM_KoopaTroopa_Anim04, \ + .anim_E = ANIM_KoopaTroopa_Anim04, \ + .anim_F = ANIM_KoopaTroopa_Anim04, \ +} diff --git a/src/world/common/enemy/complete/KoopaTroopa_Patrol.inc.c b/src/world/common/enemy/complete/KoopaTroopa_Patrol.inc.c index 88becb0401..d6b5f73de7 100644 --- a/src/world/common/enemy/complete/KoopaTroopa_Patrol.inc.c +++ b/src/world/common/enemy/complete/KoopaTroopa_Patrol.inc.c @@ -1,4 +1,5 @@ #include "common.h" +#include "KoopaTroopa.h" #include "world/common/enemy/KoopaPatrolAI.inc.c" diff --git a/src/world/common/enemy/complete/KoopaTroopa_Wander.inc.c b/src/world/common/enemy/complete/KoopaTroopa_Wander.inc.c index 30ee71360e..c43c5486a4 100644 --- a/src/world/common/enemy/complete/KoopaTroopa_Wander.inc.c +++ b/src/world/common/enemy/complete/KoopaTroopa_Wander.inc.c @@ -1,4 +1,5 @@ #include "common.h" +#include "KoopaTroopa.h" #include "world/common/enemy/TackleAI.inc.c" diff --git a/src/world/common/enemy/complete/LavaBubble.h b/src/world/common/enemy/complete/LavaBubble.h new file mode 100644 index 0000000000..e32f372929 --- /dev/null +++ b/src/world/common/enemy/complete/LavaBubble.h @@ -0,0 +1,35 @@ +#include "common.h" +#include "sprite/npc/LavaBubble.h" + +#define LAVA_BUBBLE_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 5, \ + .itemDrops = { \ + { ITEM_SUPER_SHROOM, 10, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(2), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 0, \ + .maxCoinBonus = 3, \ +} + +#define LAVA_BUBBLE_ANIMS \ +{ \ + .idle = ANIM_LavaBubble_Anim01, \ + .walk = ANIM_LavaBubble_Anim02, \ + .run = ANIM_LavaBubble_Anim03, \ + .chase = ANIM_LavaBubble_Anim03, \ + .anim_4 = ANIM_LavaBubble_Anim01, \ + .anim_5 = ANIM_LavaBubble_Anim01, \ + .death = ANIM_LavaBubble_Anim07, \ + .hit = ANIM_LavaBubble_Anim07, \ + .anim_8 = ANIM_LavaBubble_Anim04, \ + .anim_9 = ANIM_LavaBubble_Anim01, \ + .anim_A = ANIM_LavaBubble_Anim01, \ + .anim_B = ANIM_LavaBubble_Anim01, \ + .anim_C = ANIM_LavaBubble_Anim01, \ + .anim_D = ANIM_LavaBubble_Anim01, \ + .anim_E = ANIM_LavaBubble_Anim01, \ + .anim_F = ANIM_LavaBubble_Anim01, \ +} diff --git a/src/world/common/enemy/complete/LavaBubble.inc.c b/src/world/common/enemy/complete/LavaBubble.inc.c index 54d90b5674..4ff1d6448c 100644 --- a/src/world/common/enemy/complete/LavaBubble.inc.c +++ b/src/world/common/enemy/complete/LavaBubble.inc.c @@ -1,4 +1,4 @@ -#include "common.h" +#include "LavaBubble.h" f32 N(FlyingAI_JumpVels)[] = { 4.5, 3.5, 2.6, 2.0, 1.5, 20.0, diff --git a/src/world/common/enemy/complete/MontyMole.h b/src/world/common/enemy/complete/MontyMole.h new file mode 100644 index 0000000000..8aaeaec780 --- /dev/null +++ b/src/world/common/enemy/complete/MontyMole.h @@ -0,0 +1,55 @@ +#include "common.h" +#include "sprite/npc/MontyMole.h" + +#define MONTY_MOLE_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 10, \ + .itemDrops = { \ + { ITEM_HONEY_SYRUP, 10, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(2), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 0, \ + .maxCoinBonus = 1, \ +} + +#define MONTY_MOLE_AMBUSH_ANIMS \ +{ \ + .idle = ANIM_MontyMole_Anim19, \ + .walk = ANIM_MontyMole_Anim02, \ + .run = ANIM_MontyMole_Anim03, \ + .chase = ANIM_MontyMole_Anim03, \ + .anim_4 = ANIM_MontyMole_Anim19, \ + .anim_5 = ANIM_MontyMole_Anim19, \ + .death = ANIM_MontyMole_Anim09, \ + .hit = ANIM_MontyMole_Anim09, \ + .anim_8 = ANIM_MontyMole_Anim19, \ + .anim_9 = ANIM_MontyMole_Anim19, \ + .anim_A = ANIM_MontyMole_Anim19, \ + .anim_B = ANIM_MontyMole_Anim19, \ + .anim_C = ANIM_MontyMole_Anim19, \ + .anim_D = ANIM_MontyMole_Anim19, \ + .anim_E = ANIM_MontyMole_Anim19, \ + .anim_F = ANIM_MontyMole_Anim19, \ +} + +#define MONTY_MOLE_THROWER_ANIMS \ +{ \ + .idle = ANIM_MontyMole_Anim01, \ + .walk = ANIM_MontyMole_Anim02, \ + .run = ANIM_MontyMole_Anim03, \ + .chase = ANIM_MontyMole_Anim03, \ + .anim_4 = ANIM_MontyMole_Anim01, \ + .anim_5 = ANIM_MontyMole_Anim01, \ + .death = ANIM_MontyMole_Anim05, \ + .hit = ANIM_MontyMole_Anim05, \ + .anim_8 = ANIM_MontyMole_Anim00, \ + .anim_9 = ANIM_MontyMole_Anim00, \ + .anim_A = ANIM_MontyMole_Anim00, \ + .anim_B = ANIM_MontyMole_Anim00, \ + .anim_C = ANIM_MontyMole_Anim00, \ + .anim_D = ANIM_MontyMole_Anim00, \ + .anim_E = ANIM_MontyMole_Anim00, \ + .anim_F = ANIM_MontyMole_Anim00, \ +} diff --git a/src/world/common/enemy/complete/MontyMole.inc.c b/src/world/common/enemy/complete/MontyMole.inc.c new file mode 100644 index 0000000000..c4e54dedec --- /dev/null +++ b/src/world/common/enemy/complete/MontyMole.inc.c @@ -0,0 +1 @@ +#include "MontyMole.h" diff --git a/src/world/common/enemy/complete/MontyMole_GroundAmbush.inc.c b/src/world/common/enemy/complete/MontyMole_GroundAmbush.inc.c new file mode 100644 index 0000000000..86e8b98f91 --- /dev/null +++ b/src/world/common/enemy/complete/MontyMole_GroundAmbush.inc.c @@ -0,0 +1,90 @@ +#include "MontyMole.h" + +EvtScript N(EVS_NpcAuxAI_MontyMole_GroundAmbush) = { + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_4, TRUE) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_GRAVITY, TRUE) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SUB(LVar1, 30) + EVT_CALL(SetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcAuxAI_MontyMole_GroundAmbush_Hole) = { + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SUB(LVar1, 30) + EVT_CALL(SetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_MontyMole_Anim12) + EVT_RETURN + EVT_END +}; + +MobileAISettings N(AISettings_MontyMole_GroundAmbush) = { + .moveSpeed = 1.8f, + .moveTime = 30, + .waitTime = 30, + .alertRadius = 90.0f, + .alertOffsetDist = 70.0f, + .playerSearchInterval = 2, + .chaseSpeed = 3.0f, + .chaseTurnRate = 90, + .chaseUpdateInterval = 25, + .chaseRadius = 120.0f, + .chaseOffsetDist = 70.0f, + .unk_AI_2C = 1, +}; + +EvtScript N(EVS_NpcAI_MontyMole_GroundAmbush) = { + EVT_CALL(func_800445D4, LVar0) + EVT_IF_EQ(LVar0, 100) + EVT_CALL(SetSelfEnemyFlagBits, ENEMY_FLAGS_20, 1) + EVT_LABEL(10) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_CALL(IsPlayerWithin, LVar0, LVar2, 80, LVar3) + EVT_IF_NE(LVar3, 1) + EVT_WAIT(1) + EVT_GOTO(10) + EVT_END_IF + EVT_CALL(GetSelfNpcID, LVar0) + EVT_ADD(LVar0, 1) + EVT_CALL(GetNpcPos, LVar0, LVar1, LVar2, LVar3) + EVT_ADD(LVar2, 30) + EVT_CALL(SetNpcPos, LVar0, LVar1, LVar2, LVar3) + EVT_WAIT(1) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_4, FALSE) + EVT_CALL(EnableNpcShadow, NPC_SELF, TRUE) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_MontyMole_Anim0E) + EVT_CALL(GetNpcPos, NPC_SELF, LVar4, LVar5, LVar6) + EVT_ADD(LVar5, 30) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(1.0)) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_MOLE_POP, 0) + EVT_CALL(NpcJump0, NPC_SELF, LVar4, LVar5, LVar6, 20) + EVT_CALL(SetNpcPos, LVar0, NPC_DISPOSE_LOCATION) + EVT_CALL(SetSelfEnemyFlagBits, ENEMY_FLAGS_20, 0) + EVT_CALL(NpcFacePlayer, NPC_SELF, 0) + EVT_CALL(SetSelfEnemyFlagBits, ENEMY_FLAGS_40000000, 1) + EVT_CALL(BasicAI_Main, EVT_PTR(N(AISettings_MontyMole_GroundAmbush))) + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_MontyMole_GroundAmbush) = { + .height = 24, + .radius = 22, + .level = 8, + .otherAI = &N(EVS_NpcAuxAI_MontyMole_GroundAmbush), + .ai = &N(EVS_NpcAI_MontyMole_GroundAmbush), + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, + .actionFlags = AI_ACTION_JUMP_WHEN_SEE_PLAYER, +}; + +NpcSettings N(NpcSettings_MontyMole_GroundAmbush_Hole) = { + .height = 24, + .radius = 22, + .level = 8, + .otherAI = &N(EVS_NpcAuxAI_MontyMole_GroundAmbush_Hole), + .actionFlags = AI_ACTION_JUMP_WHEN_SEE_PLAYER, +}; diff --git a/src/world/common/enemy/complete/MontyMole_StoneThrower.inc.c b/src/world/common/enemy/complete/MontyMole_StoneThrower.inc.c new file mode 100644 index 0000000000..332e7ec5a9 --- /dev/null +++ b/src/world/common/enemy/complete/MontyMole_StoneThrower.inc.c @@ -0,0 +1,164 @@ +#include "MontyMole.h" + +#include "world/common/enemy/MontyMoleAI.inc.c" + +#include "world/common/enemy/RangedAttackAI.inc.c" + +#include "world/common/GetEncounterEnemyIsOwner.inc.c" + +EvtScript N(EVS_NpcDefeat_MontyMole_Stone) = { + EVT_CALL(GetBattleOutcome, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(OUTCOME_PLAYER_WON) + EVT_CALL(SetSelfVar, 0, 5) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_CASE_EQ(OUTCOME_PLAYER_FLED) + EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION) + EVT_CALL(OnPlayerFled, 1) + EVT_CASE_EQ(OUTCOME_ENEMY_FLED) + EVT_CALL(SetEnemyFlagBits, NPC_SELF, ENEMY_FLAGS_10, 1) + EVT_CALL(RemoveNpc, NPC_SELF) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +MobileAISettings N(AISettings_MontyMole_StoneThrower) = { + .moveSpeed = 1.7f, + .moveTime = 90, + .alertRadius = 110.0f, + .playerSearchInterval = 2, + .chaseSpeed = 7.5f, + .chaseRadius = 110.0f, + .unk_AI_2C = 1, +}; + +EvtScript N(EVS_NpcAI_MontyMole_StoneThrower) = { + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_2 | NPC_FLAG_200000, TRUE) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_LABEL(0) + EVT_CALL(RandInt, 15, LVar0) + EVT_ADD(LVar0, 15) + EVT_WAIT(LVar0) + EVT_CALL(N(MontyMoleAI_Main), EVT_PTR(N(AISettings_MontyMole_StoneThrower))) + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_MontyMole_StoneThrower) = { + .height = 20, + .radius = 24, + .level = 8, + .ai = &N(EVS_NpcAI_MontyMole_StoneThrower), + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, + .actionFlags = AI_ACTION_08, +}; + +MobileAISettings N(AISettings_MontyMole_Stone) = { + .moveSpeed = 8.3f, + .alertRadius = 2.5f, + .alertOffsetDist = 0.4f, + .playerSearchInterval = -1, +}; + +EvtScript N(EVS_NpcAI_MontyMole_Stone) = { + EVT_CALL(SetSelfVar, 0, 0) + EVT_CALL(SetSelfVar, 1, 0) + EVT_CALL(SetSelfVar, 2, 17) + EVT_CALL(SetSelfVar, 3, 17) + EVT_CALL(N(ProjectileAI_Main), EVT_PTR(N(AISettings_MontyMole_Stone))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcHit_MontyMole_Stone_DoNothing) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcHit_MontyMole_Stone) = { + EVT_CALL(N(GetEncounterEnemyIsOwner)) + EVT_IF_EQ(LVar0, 0) + EVT_RETURN + EVT_END_IF + EVT_CALL(BindNpcAI, NPC_SELF, EVT_PTR(N(EVS_NpcHit_MontyMole_Stone_DoNothing))) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_100, TRUE) + EVT_CALL(GetOwnerEncounterTrigger, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_OR_EQ(ENCOUNTER_TRIGGER_HAMMER) + EVT_CASE_OR_EQ(ENCOUNTER_TRIGGER_SPIN) + EVT_CALL(SetSelfVar, 0, 3) + EVT_CALL(N(ProjectileAI_Reflect)) + EVT_IF_EQ(LVar0, 0) + EVT_RETURN + EVT_END_IF + EVT_END_CASE_GROUP + EVT_CASE_EQ(ENCOUNTER_TRIGGER_JUMP) + EVT_CALL(SetSelfVar, 0, 4) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_PLAY_EFFECT(EFFECT_WALKING_DUST, 2, LVar0, LVar1, LVar2, 0, 0) + EVT_CALL(SetNpcPos, NPC_SELF, NPC_DISPOSE_LOCATION) + EVT_CALL(SetSelfVar, 0, 0) + EVT_END_CASE_GROUP + EVT_CASE_DEFAULT + EVT_CALL(func_800457F8) + EVT_END_CASE_GROUP + EVT_END_SWITCH + EVT_CALL(BindNpcAI, NPC_SELF, EVT_PTR(N(EVS_NpcAI_MontyMole_Stone))) + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_MontyMole_Stone) = { + .height = 12, + .radius = 12, + .ai = &N(EVS_NpcAI_MontyMole_Stone), + .onHit = &N(EVS_NpcHit_MontyMole_Stone), + .onDefeat = &N(EVS_NpcDefeat_MontyMole_Stone), + .actionFlags = AI_ACTION_08, +}; + +#define MONTY_MOLE_STONE_HITBOX(npcID) \ +{ \ + .id = npcID, \ + .settings = &N(NpcSettings_MontyMole_Stone), \ + .pos = { NPC_DISPOSE_LOCATION }, \ + .yaw = 90, \ + .flags = NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_DROPS, \ + .drops = { \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .heartDrops = NO_DROPS, \ + .flowerDrops = NO_DROPS, \ + }, \ + .territory = { \ + .wander = { \ + .isFlying = TRUE, \ + .moveSpeedOverride = NO_OVERRIDE_MOVEMENT_SPEED, \ + .wanderShape = SHAPE_CYLINDER, \ + .centerPos = { NPC_DISPOSE_LOCATION }, \ + .wanderSize = { 0 }, \ + .detectShape = SHAPE_CYLINDER, \ + .detectPos = { 0, 0, 0 }, \ + .detectSize = { 0 }, \ + } \ + }, \ + .animations = { \ + .idle = ANIM_MontyMole_Anim0F, \ + .walk = ANIM_MontyMole_Anim0F, \ + .run = ANIM_MontyMole_Anim0F, \ + .chase = ANIM_MontyMole_Anim0F, \ + .anim_4 = ANIM_MontyMole_Anim0F, \ + .anim_5 = ANIM_MontyMole_Anim0F, \ + .death = ANIM_MontyMole_Anim0F, \ + .hit = ANIM_MontyMole_Anim0F, \ + .anim_8 = ANIM_MontyMole_Anim0F, \ + .anim_9 = ANIM_MontyMole_Anim0F, \ + .anim_A = ANIM_MontyMole_Anim0F, \ + .anim_B = ANIM_MontyMole_Anim0F, \ + .anim_C = ANIM_MontyMole_Anim0F, \ + .anim_D = ANIM_MontyMole_Anim0F, \ + .anim_E = ANIM_MontyMole_Anim0F, \ + .anim_F = ANIM_MontyMole_Anim0F, \ + }, \ +} diff --git a/src/world/common/enemy/complete/MontyMole_WallAmbush.inc.c b/src/world/common/enemy/complete/MontyMole_WallAmbush.inc.c new file mode 100644 index 0000000000..8ee2cb60c3 --- /dev/null +++ b/src/world/common/enemy/complete/MontyMole_WallAmbush.inc.c @@ -0,0 +1,100 @@ +#include "MontyMole.h" + +EvtScript N(EVS_NpcAuxAI_MontyMole_WallAmbush) = { + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_4, TRUE) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SUB(LVar2, 50) + EVT_CALL(SetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcAuxAI_MontyMole_WallAmbush_Hole) = { + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_40000, TRUE) + EVT_CALL(EnableNpcShadow, NPC_SELF, FALSE) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_SUB(LVar2, 50) + EVT_CALL(SetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_MontyMole_Anim13) + EVT_RETURN + EVT_END +}; + +MobileAISettings N(AISettings_MontyMole_WallAmbush) = { + .moveSpeed = 1.8f, + .moveTime = 30, + .waitTime = 30, + .alertRadius = 90.0f, + .alertOffsetDist = 70.0f, + .playerSearchInterval = 2, + .chaseSpeed = 3.0f, + .chaseTurnRate = 90, + .chaseUpdateInterval = 25, + .chaseRadius = 120.0f, + .chaseOffsetDist = 70.0f, + .unk_AI_2C = 1, +}; + +EvtScript N(EVS_NpcAI_MontyMole_WallAmbush) = { + EVT_CALL(func_800445D4, LVar0) + EVT_IF_EQ(LVar0, 100) + EVT_CALL(SetSelfEnemyFlagBits, ENEMY_FLAGS_20, 1) + EVT_LABEL(10) + EVT_CALL(GetNpcPos, NPC_SELF, LVar0, LVar1, LVar2) + EVT_ADD(LVar2, 130) + EVT_CALL(IsPlayerWithin, LVar0, LVar2, 80, LVar3) + EVT_IF_NE(LVar3, 1) + EVT_WAIT(1) + EVT_GOTO(10) + EVT_END_IF + EVT_CALL(GetSelfNpcID, LVar0) + EVT_ADD(LVar0, 1) + EVT_CALL(GetNpcPos, LVar0, LVar1, LVar2, LVar3) + EVT_ADD(LVar2, 30) + EVT_ADD(LVar3, 50) + EVT_CALL(SetNpcPos, LVar0, LVar1, LVar2, LVar3) + EVT_WAIT(1) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_4, FALSE) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_40, TRUE) + EVT_CALL(EnableNpcShadow, NPC_SELF, TRUE) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_MontyMole_Anim0E) + EVT_CALL(SetNpcPos, NPC_SELF, LVar1, LVar2, LVar3) + EVT_SUB(LVar2, 30) + EVT_ADD(LVar3, 80) + EVT_CALL(SetNpcJumpscale, NPC_SELF, EVT_FLOAT(0.7)) + EVT_CALL(PlaySoundAtNpc, NPC_SELF, SOUND_MOLE_POP, 0) + EVT_CALL(NpcJump0, NPC_SELF, LVar1, LVar2, LVar3, 20) + EVT_CALL(SetNpcFlagBits, NPC_SELF, NPC_FLAG_40, FALSE) + EVT_CALL(SetSelfEnemyFlagBits, ENEMY_FLAGS_20, 0) + EVT_CALL(NpcFacePlayer, NPC_SELF, 0) + EVT_CALL(SetSelfEnemyFlagBits, ENEMY_FLAGS_40000000, 1) + EVT_END_IF + EVT_CALL(BasicAI_Main, EVT_PTR(N(AISettings_MontyMole_WallAmbush))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcAI_MontyMole_WallAmbush_Hole_Unused) = { + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_MontyMole_WallAmbush) = { + .height = 24, + .radius = 22, + .level = 8, + .otherAI = &N(EVS_NpcAuxAI_MontyMole_WallAmbush), + .ai = &N(EVS_NpcAI_MontyMole_WallAmbush), + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, + .actionFlags = AI_ACTION_JUMP_WHEN_SEE_PLAYER, +}; + +NpcSettings N(NpcSettings_MontyMole_WallAmbush_Hole) = { + .height = 24, + .radius = 22, + .level = 8, + .otherAI = &N(EVS_NpcAuxAI_MontyMole_WallAmbush_Hole), + .actionFlags = AI_ACTION_JUMP_WHEN_SEE_PLAYER, +}; diff --git a/src/world/common/enemy/complete/Paratroopa.h b/src/world/common/enemy/complete/Paratroopa.h new file mode 100644 index 0000000000..dfded6aa92 --- /dev/null +++ b/src/world/common/enemy/complete/Paratroopa.h @@ -0,0 +1,35 @@ +#include "common.h" +#include "sprite/npc/ParaTroopa.h" + +#define PARATROOPA_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 5, \ + .itemDrops = { \ + { ITEM_POW_BLOCK, 10, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(2), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 1, \ + .maxCoinBonus = 1, \ +} + +#define PARATROOPA_ANIMS \ +{ \ + .idle = ANIM_ParaTroopa_Anim01, \ + .walk = ANIM_ParaTroopa_Anim02, \ + .run = ANIM_ParaTroopa_Anim03, \ + .chase = ANIM_ParaTroopa_Anim03, \ + .anim_4 = ANIM_ParaTroopa_Anim01, \ + .anim_5 = ANIM_ParaTroopa_Anim01, \ + .death = ANIM_ParaTroopa_Anim06, \ + .hit = ANIM_ParaTroopa_Anim06, \ + .anim_8 = ANIM_ParaTroopa_Anim04, \ + .anim_9 = ANIM_ParaTroopa_Anim0C, \ + .anim_A = ANIM_ParaTroopa_Anim0A, \ + .anim_B = ANIM_ParaTroopa_Anim0E, \ + .anim_C = ANIM_ParaTroopa_Anim03, \ + .anim_D = ANIM_ParaTroopa_Anim03, \ + .anim_E = ANIM_ParaTroopa_Anim03, \ + .anim_F = ANIM_ParaTroopa_Anim03, \ +} diff --git a/src/world/common/enemy/complete/Paratroopa.inc.c b/src/world/common/enemy/complete/Paratroopa.inc.c index 55668c22d0..f0e26593d4 100644 --- a/src/world/common/enemy/complete/Paratroopa.inc.c +++ b/src/world/common/enemy/complete/Paratroopa.inc.c @@ -1,4 +1,4 @@ -#include "common.h" +#include "Paratroopa.h" #include "world/common/enemy/ParatroopaAI.inc.c" diff --git a/src/world/common/enemy/complete/Pokey.h b/src/world/common/enemy/complete/Pokey.h new file mode 100644 index 0000000000..a676198868 --- /dev/null +++ b/src/world/common/enemy/complete/Pokey.h @@ -0,0 +1,36 @@ +#include "common.h" +#include "sprite/npc/Pokey.h" + +#define POKEY_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 15, \ + .itemDrops = { \ + { ITEM_DRIED_FRUIT, 9, 0 }, \ + { ITEM_TASTY_TONIC, 1, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(2), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 0, \ + .maxCoinBonus = 1, \ +} + +#define POKEY_ANIMS \ +{ \ + .idle = ANIM_Pokey_Anim04, \ + .walk = ANIM_Pokey_Anim08, \ + .run = ANIM_Pokey_Anim08, \ + .chase = ANIM_Pokey_Anim08, \ + .anim_4 = ANIM_Pokey_Anim04, \ + .anim_5 = ANIM_Pokey_Anim04, \ + .death = ANIM_Pokey_Anim0C, \ + .hit = ANIM_Pokey_Anim0C, \ + .anim_8 = ANIM_Pokey_Anim08, \ + .anim_9 = ANIM_Pokey_Anim08, \ + .anim_A = ANIM_Pokey_Anim08, \ + .anim_B = ANIM_Pokey_Anim08, \ + .anim_C = ANIM_Pokey_Anim08, \ + .anim_D = ANIM_Pokey_Anim08, \ + .anim_E = ANIM_Pokey_Anim08, \ + .anim_F = ANIM_Pokey_Anim08, \ +} diff --git a/src/world/common/enemy/complete/Pokey.inc.c b/src/world/common/enemy/complete/Pokey.inc.c index 9f5785000b..ea343dffd4 100644 --- a/src/world/common/enemy/complete/Pokey.inc.c +++ b/src/world/common/enemy/complete/Pokey.inc.c @@ -1,4 +1,4 @@ -#include "common.h" +#include "Pokey.h" #include "world/common/SetNpcB5_3.inc.c" diff --git a/src/world/common/enemy/complete/PutridPiranha.h b/src/world/common/enemy/complete/PutridPiranha.h new file mode 100644 index 0000000000..2b09ad1d91 --- /dev/null +++ b/src/world/common/enemy/complete/PutridPiranha.h @@ -0,0 +1,51 @@ +#include "common.h" +#include "sprite/npc/LargePiranha.h" + +#define PUTRID_PIRANHA_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 5, \ + .itemDrops = { \ + { ITEM_SUPER_SHROOM, 10, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(2), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 0, \ + .maxCoinBonus = 3, \ +} + +#define PUTRID_PIRANHA_ANIMS \ +{ \ + .idle = ANIM_LargePiranha_Putrid_Anim01, \ + .walk = ANIM_LargePiranha_Putrid_Anim02, \ + .run = ANIM_LargePiranha_Putrid_Anim03, \ + .chase = ANIM_LargePiranha_Putrid_Anim03, \ + .anim_4 = ANIM_LargePiranha_Putrid_Anim01, \ + .anim_5 = ANIM_LargePiranha_Putrid_Anim01, \ + .death = ANIM_LargePiranha_Putrid_Anim0E, \ + .hit = ANIM_LargePiranha_Putrid_Anim0E, \ + .anim_8 = ANIM_LargePiranha_Putrid_Anim18, \ + .anim_9 = ANIM_LargePiranha_Putrid_Anim17, \ + .anim_A = ANIM_LargePiranha_Putrid_Anim05, \ + .anim_B = ANIM_LargePiranha_Putrid_Anim06, \ + .anim_C = ANIM_LargePiranha_Putrid_Anim07, \ + .anim_D = ANIM_LargePiranha_Putrid_Anim01, \ + .anim_E = ANIM_LargePiranha_Putrid_Anim01, \ + .anim_F = ANIM_LargePiranha_Putrid_Anim01, \ +} + +// auxiliary NPC used for triggering enemy first strikes during the bite animation +#define PUTRID_PIRANHA_HITBOX(npcID) \ +{ \ + .id = npcID, \ + .settings = &N(NpcSettings_PutridPiranha_Hitbox), \ + .pos = { NPC_DISPOSE_LOCATION }, \ + .yaw = 0, \ + .flags = NPC_FLAG_100 | NPC_FLAG_LOCK_ANIMS | NPC_FLAG_JUMPING | NPC_FLAG_NO_DROPS, \ + .drops = { \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .heartDrops = NO_DROPS, \ + .flowerDrops = NO_DROPS, \ + }, \ + .animations = PUTRID_PIRANHA_ANIMS, \ +} diff --git a/src/world/common/enemy/complete/PutridPiranha.inc.c b/src/world/common/enemy/complete/PutridPiranha.inc.c index db0f03d9c4..bf6060a1d7 100644 --- a/src/world/common/enemy/complete/PutridPiranha.inc.c +++ b/src/world/common/enemy/complete/PutridPiranha.inc.c @@ -1,5 +1,4 @@ -#include "common.h" -#include "sprite/npc/LargePiranha.h" +#include "PutridPiranha.h" extern EvtScript EVS_NpcHitRecoil; diff --git a/src/world/common/enemy/complete/SpikeTop.h b/src/world/common/enemy/complete/SpikeTop.h new file mode 100644 index 0000000000..c9acc3c45a --- /dev/null +++ b/src/world/common/enemy/complete/SpikeTop.h @@ -0,0 +1,35 @@ +#include "common.h" +#include "sprite/npc/BuzzyBeetle.h" + +#define SPIKE_TOP_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 5, \ + .itemDrops = { \ + { ITEM_SUPER_SODA, 10, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(4), \ + .flowerDrops = STANDARD_FLOWER_DROPS(2), \ + .minCoinBonus = 2, \ + .maxCoinBonus = 3, \ +} + +#define SPIKE_TOP_ANIMS \ +{ \ + .idle = ANIM_SpikeTop_Anim03, \ + .walk = ANIM_SpikeTop_Anim06, \ + .run = ANIM_SpikeTop_Anim08, \ + .chase = ANIM_SpikeTop_Anim08, \ + .anim_4 = ANIM_SpikeTop_Anim03, \ + .anim_5 = ANIM_SpikeTop_Anim03, \ + .death = ANIM_SpikeTop_Anim13, \ + .hit = ANIM_SpikeTop_Anim13, \ + .anim_8 = ANIM_SpikeTop_Anim0B, \ + .anim_9 = ANIM_SpikeTop_Anim0A, \ + .anim_A = ANIM_SpikeTop_Anim0C, \ + .anim_B = ANIM_SpikeTop_Anim03, \ + .anim_C = ANIM_SpikeTop_Anim03, \ + .anim_D = ANIM_SpikeTop_Anim03, \ + .anim_E = ANIM_SpikeTop_Anim03, \ + .anim_F = ANIM_SpikeTop_Anim03, \ +} diff --git a/src/world/common/enemy/complete/SpikeTop.inc.c b/src/world/common/enemy/complete/SpikeTop.inc.c index e1a11f0cf4..72df2e128f 100644 --- a/src/world/common/enemy/complete/SpikeTop.inc.c +++ b/src/world/common/enemy/complete/SpikeTop.inc.c @@ -1,5 +1,4 @@ -#include "common.h" -#include "sprite/npc/BuzzyBeetle.h" +#include "SpikeTop.h" #include "world/common/enemy/TackleAI.inc.c" diff --git a/src/world/common/npc/Boo.h b/src/world/common/npc/Boo.h new file mode 100644 index 0000000000..ad395b0dd4 --- /dev/null +++ b/src/world/common/npc/Boo.h @@ -0,0 +1,49 @@ +#include "common.h" +#include "sprite/npc/Boo.h" + +#define BOO_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .heartDrops = NO_DROPS, \ + .flowerDrops = NO_DROPS, \ +} + +#define NORMAL_BOO_ANIMS \ +{ \ + .idle = ANIM_Boo_Idle, \ + .walk = ANIM_Boo_Walk, \ + .run = ANIM_Boo_Run, \ + .chase = ANIM_Boo_Run, \ + .anim_4 = ANIM_Boo_Idle, \ + .anim_5 = ANIM_Boo_Idle, \ + .death = ANIM_Boo_Still, \ + .hit = ANIM_Boo_Still, \ + .anim_8 = ANIM_Boo_Run, \ + .anim_9 = ANIM_Boo_Run, \ + .anim_A = ANIM_Boo_Run, \ + .anim_B = ANIM_Boo_Run, \ + .anim_C = ANIM_Boo_Run, \ + .anim_D = ANIM_Boo_Run, \ + .anim_E = ANIM_Boo_Run, \ + .anim_F = ANIM_Boo_Run, \ +} + +#define GUSTY_BOO_ANIMS \ +{ \ + .idle = ANIM_Boo_Tan_Idle, \ + .walk = ANIM_Boo_Tan_Walk, \ + .run = ANIM_Boo_Tan_Run, \ + .chase = ANIM_Boo_Tan_Run, \ + .anim_4 = ANIM_Boo_Tan_Idle, \ + .anim_5 = ANIM_Boo_Tan_Idle, \ + .death = ANIM_Boo_Tan_Still, \ + .hit = ANIM_Boo_Tan_Still, \ + .anim_8 = ANIM_Boo_Tan_Confused, \ + .anim_9 = ANIM_Boo_Tan_Run, \ + .anim_A = ANIM_Boo_Tan_Run, \ + .anim_B = ANIM_Boo_Tan_Run, \ + .anim_C = ANIM_Boo_Tan_Run, \ + .anim_D = ANIM_Boo_Tan_Run, \ + .anim_E = ANIM_Boo_Tan_Run, \ + .anim_F = ANIM_Boo_Tan_Run, \ +} diff --git a/src/world/common/npc/Boo.inc.c b/src/world/common/npc/Boo.inc.c new file mode 100644 index 0000000000..2f86f12188 --- /dev/null +++ b/src/world/common/npc/Boo.inc.c @@ -0,0 +1,8 @@ +#include "common.h" +#include "Boo.h" + +NpcSettings N(NpcSettings_Boo) = { + .height = 24, + .radius = 24, + .level = 99, +}; diff --git a/src/world/common/npc/Boo_Patrol.inc.c b/src/world/common/npc/Boo_Patrol.inc.c new file mode 100644 index 0000000000..4b8a69ac6b --- /dev/null +++ b/src/world/common/npc/Boo_Patrol.inc.c @@ -0,0 +1,124 @@ +#include "common.h" +#include "Boo.h" + +#include "world/common/enemy/PatrolNoAttackAI.inc.c" + +void N(BooPatrolAI_Move)(Evt* script, MobileAISettings* aiSettings, EnemyDetectVolume* territory) { + Enemy* enemy = script->owner1.enemy; + Npc* npc = get_npc_unsafe(enemy->npcID); + f32 posX, posY, posZ, posW; + f32 temp_f20; + f32 temp_f22; + + posX = npc->pos.x; + posZ = npc->pos.z; + temp_f22 = script->functionTemp[2][enemy->territory->patrol.points].x; + temp_f20 = script->functionTemp[2][enemy->territory->patrol.points].z; + + npc->yaw = atan2(posX, posZ, temp_f22, temp_f20); + npc_move_heading(npc, npc->moveSpeed, npc->yaw); + + posX = npc->pos.x; + posY = npc->pos.y + script->functionTemp[2][enemy->territory->patrol.points].y; + posZ = npc->pos.z; + posW = 1000.0f; + npc_raycast_down_sides(npc->collisionChannel, &posX, &posY, &posZ, &posW); + posY += script->functionTemp[2][enemy->territory->patrol.points].y; + posW = posY - npc->pos.y; + if (posW > 2.0) { + npc->pos.y += 2.0; + } else if (posW < -2.0) { + npc->pos.y -= 2.0; + } else { + npc->pos.y = posY; + } + + posW = dist2D(npc->pos.x, npc->pos.z, temp_f22, temp_f20); + if (!(posW > npc->moveSpeed)) { + script->functionTemp[0] = 2; + } +} + +void N(BooPatrolAI_Loiter)(Evt* script, MobileAISettings* aiSettings, EnemyDetectVolume* territory) { + Enemy* enemy = script->owner1.enemy; + Npc* npc = get_npc_unsafe(enemy->npcID); + + npc->duration--; + if (npc->duration < 0) { + script->functionTemp[1]--; + if (script->functionTemp[1] >= 0) { + npc->yaw = clamp_angle(npc->yaw + 180.0f); + npc->duration = aiSettings->waitTime / 2 + rand_int(aiSettings->waitTime / 2 + 1); + } else { + script->functionTemp[0] = 4; + npc->currentAnim = enemy->animList[ENEMY_ANIM_IDLE]; + } + } +} + +ApiStatus N(BooPatrolAI_Main)(Evt* script, s32 isInitialCall) { + Enemy* enemy = script->owner1.enemy; + Bytecode* args = script->ptrReadPos; + Npc* npc = get_npc_unsafe(enemy->npcID); + EnemyDetectVolume territory; + EnemyDetectVolume* territoryPtr = &territory; + MobileAISettings* aiSettings = (MobileAISettings*)evt_get_variable(script, *args++); + + territory.skipPlayerDetectChance = 0; + territory.shape = enemy->territory->patrol.detectShape; + territory.pointX = enemy->territory->patrol.detectPos.x; + territory.pointZ = enemy->territory->patrol.detectPos.z; + territory.sizeX = enemy->territory->patrol.detectSize.x; + territory.sizeZ = enemy->territory->patrol.detectSize.z; + territory.halfHeight = 100.0f; + territory.detectFlags = 0; + + if (isInitialCall) { + script->functionTemp[0] = 0; + npc->duration = 0; + npc->flags &= ~NPC_FLAG_JUMPING; + } + + switch (script->functionTemp[0]) { + case 0: + N(PatrolAI_MoveInit)(script, aiSettings, territoryPtr); + case 1: + N(BooPatrolAI_Move)(script, aiSettings, territoryPtr); + break; + case 2: + N(PatrolAI_LoiterInit)(script, aiSettings, territoryPtr); + case 3: + N(BooPatrolAI_Loiter)(script, aiSettings, territoryPtr); + break; + case 4: + N(PatrolAI_PostLoiter)(script, aiSettings, territoryPtr); + } + + enemy->varTable[0] = npc->pos.y; + return ApiStatus_BLOCK; +} + +MobileAISettings N(AISettings_Boo_Patrol) = { + .moveSpeed = 1.0f, + .moveTime = 25, + .waitTime = 30, + .alertRadius = 50.0f, + .alertOffsetDist = 50.0f, + .playerSearchInterval = 10, + .chaseRadius = 100.0f, + .chaseOffsetDist = 80.0f, + .unk_AI_2C = 1, +}; + +EvtScript N(EVS_NpcAI_Boo_Patrol) = { + EVT_CALL(N(BooPatrolAI_Main), EVT_PTR(N(AISettings_Boo_Patrol))) + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_Boo_Patrol) = { + .height = 24, + .radius = 24, + .level = 99, + .ai = &N(EVS_NpcAI_Boo_Patrol), +}; diff --git a/src/world/common/npc/TrainConductorToad.h b/src/world/common/npc/TrainConductorToad.h new file mode 100644 index 0000000000..3983b35508 --- /dev/null +++ b/src/world/common/npc/TrainConductorToad.h @@ -0,0 +1,29 @@ +#include "common.h" +#include "sprite/npc/TrainStationToad.h" + +#define TRAIN_CONDUCTOR_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .heartDrops = NO_DROPS, \ + .flowerDrops = NO_DROPS, \ +} + +#define TRAIN_CONDUCTOR_ANIMS \ +{ \ + .idle = ANIM_TrainStationToad_Idle, \ + .walk = ANIM_TrainStationToad_Walk, \ + .run = ANIM_TrainStationToad_Idle, \ + .chase = ANIM_TrainStationToad_Idle, \ + .anim_4 = ANIM_TrainStationToad_Idle, \ + .anim_5 = ANIM_TrainStationToad_Idle, \ + .death = ANIM_TrainStationToad_Idle, \ + .hit = ANIM_TrainStationToad_Idle, \ + .anim_8 = ANIM_TrainStationToad_Idle, \ + .anim_9 = ANIM_TrainStationToad_Idle, \ + .anim_A = ANIM_TrainStationToad_Idle, \ + .anim_B = ANIM_TrainStationToad_Idle, \ + .anim_C = ANIM_TrainStationToad_Idle, \ + .anim_D = ANIM_TrainStationToad_Idle, \ + .anim_E = ANIM_TrainStationToad_Idle, \ + .anim_F = ANIM_TrainStationToad_Idle, \ +} diff --git a/src/world/common/npc/TrainConductorToad.inc.c b/src/world/common/npc/TrainConductorToad.inc.c new file mode 100644 index 0000000000..fb47561c29 --- /dev/null +++ b/src/world/common/npc/TrainConductorToad.inc.c @@ -0,0 +1,13 @@ +#include "TrainConductorToad.h" + +EvtScript N(EVS_NpcAuxAI_TrainConductorToad) = { + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_TrainConductorToad) = { + .height = 32, + .radius = 24, + .level = 99, + .otherAI = &N(EVS_NpcAuxAI_TrainConductorToad), +}; diff --git a/src/world/common/npc/TubbasHeart.h b/src/world/common/npc/TubbasHeart.h new file mode 100644 index 0000000000..10b585f4c6 --- /dev/null +++ b/src/world/common/npc/TubbasHeart.h @@ -0,0 +1,29 @@ +#include "common.h" +#include "sprite/npc/TubbasHeart.h" + +#define TUBBAS_HEART_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .heartDrops = NO_DROPS, \ + .flowerDrops = NO_DROPS, \ +} + +#define TUBBAS_HEART_ANIMS \ +{ \ + .idle = ANIM_TubbasHeart_Anim01, \ + .walk = ANIM_TubbasHeart_Anim01, \ + .run = ANIM_TubbasHeart_Anim01, \ + .chase = ANIM_TubbasHeart_Anim01, \ + .anim_4 = ANIM_TubbasHeart_Anim01, \ + .anim_5 = ANIM_TubbasHeart_Anim01, \ + .death = ANIM_TubbasHeart_Anim01, \ + .hit = ANIM_TubbasHeart_Anim01, \ + .anim_8 = ANIM_TubbasHeart_Anim01, \ + .anim_9 = ANIM_TubbasHeart_Anim01, \ + .anim_A = ANIM_TubbasHeart_Anim01, \ + .anim_B = ANIM_TubbasHeart_Anim01, \ + .anim_C = ANIM_TubbasHeart_Anim01, \ + .anim_D = ANIM_TubbasHeart_Anim01, \ + .anim_E = ANIM_TubbasHeart_Anim01, \ + .anim_F = ANIM_TubbasHeart_Anim01, \ +} diff --git a/src/world/common/npc/TubbasHeart.inc.c b/src/world/common/npc/TubbasHeart.inc.c new file mode 100644 index 0000000000..f41f578ff1 --- /dev/null +++ b/src/world/common/npc/TubbasHeart.inc.c @@ -0,0 +1,20 @@ +#include "common.h" +#include "TubbasHeart.h" + +EvtScript N(EVS_NpcAuxAI_TubbasHeart) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcDefeat_TubbasHeart) = { + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_TubbasHeart) = { + .height = 24, + .radius = 24, + .level = 13, + .otherAI = &N(EVS_NpcAuxAI_TubbasHeart), + .onDefeat = &N(EVS_NpcDefeat_TubbasHeart), +}; diff --git a/src/world/common/npc/Yakkey.h b/src/world/common/npc/Yakkey.h new file mode 100644 index 0000000000..6128b86da4 --- /dev/null +++ b/src/world/common/npc/Yakkey.h @@ -0,0 +1,29 @@ +#include "common.h" +#include "sprite/npc/Yakkey.h" + +#define YAKKEY_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .heartDrops = NO_DROPS, \ + .flowerDrops = NO_DROPS, \ +} + +#define YAKKEY_ANIMS \ +{ \ + .idle = ANIM_Yakkey_Idle, \ + .walk = ANIM_Yakkey_Idle, \ + .run = ANIM_Yakkey_Idle, \ + .chase = ANIM_Yakkey_Idle, \ + .anim_4 = ANIM_Yakkey_Idle, \ + .anim_5 = ANIM_Yakkey_Idle, \ + .death = ANIM_Yakkey_Idle, \ + .hit = ANIM_Yakkey_Idle, \ + .anim_8 = ANIM_Yakkey_Idle, \ + .anim_9 = ANIM_Yakkey_Idle, \ + .anim_A = ANIM_Yakkey_Idle, \ + .anim_B = ANIM_Yakkey_Idle, \ + .anim_C = ANIM_Yakkey_Idle, \ + .anim_D = ANIM_Yakkey_Idle, \ + .anim_E = ANIM_Yakkey_Idle, \ + .anim_F = ANIM_Yakkey_Idle, \ +} diff --git a/src/world/common/npc/Yakkey.inc.c b/src/world/common/npc/Yakkey.inc.c new file mode 100644 index 0000000000..4534176e2c --- /dev/null +++ b/src/world/common/npc/Yakkey.inc.c @@ -0,0 +1,8 @@ +#include "common.h" +#include "Yakkey.h" + +NpcSettings N(NpcSettings_Yakkey) = { + .height = 24, + .radius = 24, + .level = 13, +}; diff --git a/src/world/partner/bombette.c b/src/world/partner/bombette.c index 445b2ba4a7..17c1f00571 100644 --- a/src/world/partner/bombette.c +++ b/src/world/partner/bombette.c @@ -330,7 +330,7 @@ ApiStatus func_802BD758_3184A8(Evt* evt, s32 isInitialCall) { y = npc->pos.y + 14.0f; z = npc->pos.z; hitDepth = 16.0f; - if ((npc_raycast_down_around(0x10000, &x, &y, &z, &hitDepth, npc->yaw, npc->collisionRadius) != 0) && ((u32) ((get_collider_flags(D_8010C978) & 0xFF) - 2) < 2U)) { + if ((npc_raycast_down_around(COLLISION_CHANNEL_10000, &x, &y, &z, &hitDepth, npc->yaw, npc->collisionRadius) != 0) && ((u32) ((get_collider_flags(D_8010C978) & 0xFF) - 2) < 2U)) { if (playerStatus->actionState == 0) { suggest_player_anim_clearUnkFlag(ANIM_Mario_10002); } diff --git a/src/world/partner/parakarry.c b/src/world/partner/parakarry.c index 4dfcaed681..54db85caa2 100644 --- a/src/world/partner/parakarry.c +++ b/src/world/partner/parakarry.c @@ -312,7 +312,7 @@ ApiStatus func_802BD660_319BD0(Evt* evt, s32 isInitialCall) { sp2C = parakarry->collisionHeight * 0.5f; halfCollisionHeight = sp2C; - if (npc_raycast_up(0x10000, &x, &y, &z, &sp2C)) { + if (npc_raycast_up(COLLISION_CHANNEL_10000, &x, &y, &z, &sp2C)) { if (sp2C < halfCollisionHeight) { D_802BEBC4 = 0; } @@ -332,7 +332,7 @@ ApiStatus func_802BD660_319BD0(Evt* evt, s32 isInitialCall) { x = playerStatus->position.x; y = playerStatus->position.y; z = playerStatus->position.z; - if (npc_test_move_complex_with_slipping(0x10000, &x, &y, &z, parakarry->moveSpeed, parakarry->yaw, playerStatus->colliderHeight, playerStatus->colliderDiameter) >= 2) { + if (npc_test_move_complex_with_slipping(COLLISION_CHANNEL_10000, &x, &y, &z, parakarry->moveSpeed, parakarry->yaw, playerStatus->colliderHeight, playerStatus->colliderDiameter) >= 2) { playerStatus->position.x += (x - playerStatus->position.x) * 0.125f; playerStatus->position.z += (z - playerStatus->position.z) * 0.125f; parakarry->pos.x += (x - parakarry->pos.x) * 0.125f; @@ -342,7 +342,7 @@ ApiStatus func_802BD660_319BD0(Evt* evt, s32 isInitialCall) { x = parakarry->pos.x; y = parakarry->pos.y; z = parakarry->pos.z; - testMove = npc_test_move_complex_with_slipping(0x10000, &x, &y, &z, parakarry->moveSpeed, parakarry->yaw, parakarry->collisionHeight, parakarry->collisionRadius); + testMove = npc_test_move_complex_with_slipping(COLLISION_CHANNEL_10000, &x, &y, &z, parakarry->moveSpeed, parakarry->yaw, parakarry->collisionHeight, parakarry->collisionRadius); if (testMove >= 2) { tempX = x; tempZ = z; @@ -356,7 +356,7 @@ ApiStatus func_802BD660_319BD0(Evt* evt, s32 isInitialCall) { diffXPlayer = (tempX - playerStatus->position.x) * 0.125f; diffZPlayer = (tempZ - playerStatus->position.z) * 0.125f; z = parakarry->pos.z; - testMove = npc_test_move_complex_with_slipping(0x10000, &x, &y, &z, parakarry->moveSpeed, parakarry->yaw, parakarry->collisionHeight, parakarry->collisionRadius); + testMove = npc_test_move_complex_with_slipping(COLLISION_CHANNEL_10000, &x, &y, &z, parakarry->moveSpeed, parakarry->yaw, parakarry->collisionHeight, parakarry->collisionRadius); if (testMove == 0) { playerStatus->position.x += diffXPlayer; playerStatus->position.z += diffZPlayer; @@ -375,7 +375,7 @@ ApiStatus func_802BD660_319BD0(Evt* evt, s32 isInitialCall) { y = playerStatus->position.y + playerStatus->colliderHeight * 0.5f; z = playerStatus->position.z; sp2C = playerStatus->colliderHeight * 0.5f; - if (npc_raycast_down_around(0x10000, &x, &y, &z, &sp2C, parakarry->yaw, parakarry->collisionRadius)) { + if (npc_raycast_down_around(COLLISION_CHANNEL_10000, &x, &y, &z, &sp2C, parakarry->yaw, parakarry->collisionRadius)) { s32 surfaceType = get_collider_flags(D_8010C978) & COLLIDER_FLAGS_SURFACE_TYPE_MASK; if (surfaceType == SURFACE_TYPE_SPIKES || surfaceType == SURFACE_TYPE_LAVA) { playerStatus->hazardType = HAZARD_TYPE_SPIKES; @@ -459,14 +459,14 @@ ApiStatus func_802BD660_319BD0(Evt* evt, s32 isInitialCall) { x = playerStatus->position.x; y = playerStatus->position.y; z = playerStatus->position.z; - if (npc_test_move_complex_with_slipping(0x10000, &x, &y, &z, parakarry->moveSpeed, parakarry->yaw, playerStatus->colliderHeight, playerStatus->colliderDiameter)) { + if (npc_test_move_complex_with_slipping(COLLISION_CHANNEL_10000, &x, &y, &z, parakarry->moveSpeed, parakarry->yaw, playerStatus->colliderHeight, playerStatus->colliderDiameter)) { suggest_player_anim_clearUnkFlag(ANIM_Mario_10002); D_802BEBC0_31CBE0 = 0x15; } else { x = parakarry->pos.x; y = parakarry->pos.y; z = parakarry->pos.z; - if (!npc_test_move_complex_with_slipping(0x10000, &x, &y, &z, parakarry->moveSpeed, parakarry->yaw, parakarry->collisionHeight, parakarry->collisionRadius)) { + if (!npc_test_move_complex_with_slipping(COLLISION_CHANNEL_10000, &x, &y, &z, parakarry->moveSpeed, parakarry->yaw, parakarry->collisionHeight, parakarry->collisionRadius)) { tempConditional = FALSE; x = parakarry->pos.x; y = parakarry->pos.y + parakarry->collisionHeight * 0.5f; @@ -474,7 +474,7 @@ ApiStatus func_802BD660_319BD0(Evt* evt, s32 isInitialCall) { sp2C = parakarry->collisionHeight * 0.5f; halfCollisionHeight = sp2C; - if (npc_raycast_up(0x10000, &x, &y, &z, &sp2C) && (sp2C < halfCollisionHeight)) { + if (npc_raycast_up(COLLISION_CHANNEL_10000, &x, &y, &z, &sp2C) && (sp2C < halfCollisionHeight)) { parakarry->pos.y = y - parakarry->collisionHeight; playerStatus->position.y = parakarry->pos.y - 32.0f; tempConditional = TRUE; @@ -484,7 +484,7 @@ ApiStatus func_802BD660_319BD0(Evt* evt, s32 isInitialCall) { z = playerStatus->position.z; sp2C = playerStatus->colliderHeight * 0.5f; - if (!npc_raycast_down_around(0x10000, &x, &y, &z, &sp2C, parakarry->yaw, parakarry->collisionRadius) + if (!npc_raycast_down_around(COLLISION_CHANNEL_10000, &x, &y, &z, &sp2C, parakarry->yaw, parakarry->collisionRadius) || (playerStatus->position.y += (y - playerStatus->position.y) * 0.25f, parakarry->pos.y = playerStatus->position.y + 32.0f, y = parakarry->pos.y, diff --git a/ver/us/asm/data/battle/area_kpa/685260.data.s b/ver/us/asm/data/battle/area_kpa/685260.data.s index 78843573ae..e652ec563a 100644 --- a/ver/us/asm/data/battle/area_kpa/685260.data.s +++ b/ver/us/asm/data/battle/area_kpa/685260.data.s @@ -270,7 +270,7 @@ dlabel D_80225208_691C38 .word 0x00000001, 0x0057000A, 0x00000000 dlabel D_80225214_691C44 -.word 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetActorVar, 0xFFFFFF81, 0x00000009, 0xFE363C80, 0x00000043, 0x00000003, ActorExists, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000043, 0x00000008, b_area_kpa_UnkFloatFunc, 0xFE363C8F, 0xFE363C81, 0xF24E7280, 0xF24C0A80, 0x00000014, 0x00000000, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000003, GetActorFlags, 0xFFFFFF81, 0xFE363C82, 0x00000010, 0x00000002, 0xFE363C82, 0x00000200, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000002, 0xFE363C81, 0x00000043, 0x00000004, SetPartAlpha, 0xFE363C80, 0x00000001, 0xFE363C81, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000001, 0xFE363C81, 0x00000043, 0x00000004, SetPartAlpha, 0xFE363C80, 0x00000001, 0xFE363C81, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000043, 0x00000003, GetActorFlags, 0xFFFFFF81, 0xFE363C82, 0x00000010, 0x00000002, 0xFE363C82, 0x00000200, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000002, 0x000000FF, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000001, 0x000000FF, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetActorVar, 0xFFFFFF81, 0x00000009, 0xFE363C80, 0x00000043, 0x00000003, ActorExists, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000043, 0x00000008, b_area_kpa_CosInterpMinMax, 0xFE363C8F, 0xFE363C81, 0xF24E7280, 0xF24C0A80, 0x00000014, 0x00000000, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000003, GetActorFlags, 0xFFFFFF81, 0xFE363C82, 0x00000010, 0x00000002, 0xFE363C82, 0x00000200, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000002, 0xFE363C81, 0x00000043, 0x00000004, SetPartAlpha, 0xFE363C80, 0x00000001, 0xFE363C81, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000001, 0xFE363C81, 0x00000043, 0x00000004, SetPartAlpha, 0xFE363C80, 0x00000001, 0xFE363C81, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000043, 0x00000003, GetActorFlags, 0xFFFFFF81, 0xFE363C82, 0x00000010, 0x00000002, 0xFE363C82, 0x00000200, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000002, 0x000000FF, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000001, 0x000000FF, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_802253E4_691E14 .word 0x00000043, 0x00000002, GetBattleFlags, 0xFE363C80, 0x00000011, 0x00000002, 0xFE363C80, 0x00080000, 0x00000010, 0x00000002, 0xFE363C80, 0x00000240, 0x00000043, 0x00000004, SetActorVar, 0xFFFFFF81, 0x00000002, 0x00000001, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000002, b_area_kpa_GetSelectedMoveID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000083, 0x0000001D, 0x00000001, 0x00000084, 0x0000001D, 0x00000001, 0x00000085, 0x0000001D, 0x00000001, 0x00000088, 0x00000043, 0x00000002, GetBattleFlags, 0xFE363C80, 0x00000010, 0x00000002, 0xFE363C80, 0x00000240, 0x00000043, 0x00000004, SetActorVar, 0xFFFFFF81, 0x00000002, 0x00000001, 0x00000013, 0x00000000, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/battle/area_kpa4/6CC6C0.data.s b/ver/us/asm/data/battle/area_kpa4/6CC6C0.data.s index 7a636a4dcb..e3b39105f3 100644 --- a/ver/us/asm/data/battle/area_kpa4/6CC6C0.data.s +++ b/ver/us/asm/data/battle/area_kpa4/6CC6C0.data.s @@ -180,7 +180,7 @@ dlabel D_8021EAB8_6D2B28 .word 0x00000001, 0x0057000A, 0x00000000 dlabel D_8021EAC4_6D2B34 -.word 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetActorVar, 0xFFFFFF81, 0x00000009, 0xFE363C80, 0x00000043, 0x00000003, ActorExists, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000043, 0x00000008, b_area_kpa4_UnkFloatFunc, 0xFE363C8F, 0xFE363C81, 0xF24E7280, 0xF24C0A80, 0x00000014, 0x00000000, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000003, GetActorFlags, 0xFFFFFF81, 0xFE363C82, 0x00000010, 0x00000002, 0xFE363C82, 0x00000200, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000002, 0xFE363C81, 0x00000043, 0x00000004, SetPartAlpha, 0xFE363C80, 0x00000001, 0xFE363C81, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000001, 0xFE363C81, 0x00000043, 0x00000004, SetPartAlpha, 0xFE363C80, 0x00000001, 0xFE363C81, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000043, 0x00000003, GetActorFlags, 0xFFFFFF81, 0xFE363C82, 0x00000010, 0x00000002, 0xFE363C82, 0x00000200, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000002, 0x000000FF, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000001, 0x000000FF, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetActorVar, 0xFFFFFF81, 0x00000009, 0xFE363C80, 0x00000043, 0x00000003, ActorExists, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000043, 0x00000008, b_area_kpa4_CosInterpMinMax, 0xFE363C8F, 0xFE363C81, 0xF24E7280, 0xF24C0A80, 0x00000014, 0x00000000, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000003, GetActorFlags, 0xFFFFFF81, 0xFE363C82, 0x00000010, 0x00000002, 0xFE363C82, 0x00000200, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000002, 0xFE363C81, 0x00000043, 0x00000004, SetPartAlpha, 0xFE363C80, 0x00000001, 0xFE363C81, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000001, 0xFE363C81, 0x00000043, 0x00000004, SetPartAlpha, 0xFE363C80, 0x00000001, 0xFE363C81, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000043, 0x00000003, GetActorFlags, 0xFFFFFF81, 0xFE363C82, 0x00000010, 0x00000002, 0xFE363C82, 0x00000200, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000002, 0x000000FF, 0x00000012, 0x00000000, 0x00000043, 0x00000004, SetPartAlpha, 0xFFFFFF81, 0x00000001, 0x000000FF, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8021EC94_6D2D04 .word 0x00000043, 0x00000002, GetBattleFlags, 0xFE363C80, 0x00000011, 0x00000002, 0xFE363C80, 0x00080000, 0x00000010, 0x00000002, 0xFE363C80, 0x00000240, 0x00000043, 0x00000004, SetActorVar, 0xFFFFFF81, 0x00000002, 0x00000001, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000002, b_area_kpa4_GetSelectedMoveID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000083, 0x0000001D, 0x00000001, 0x00000084, 0x0000001D, 0x00000001, 0x00000085, 0x0000001D, 0x00000001, 0x00000088, 0x00000043, 0x00000002, GetBattleFlags, 0xFE363C80, 0x00000010, 0x00000002, 0xFE363C80, 0x00000240, 0x00000043, 0x00000004, SetActorVar, 0xFFFFFF81, 0x00000002, 0x00000001, 0x00000013, 0x00000000, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/dead/EBA260.data.s b/ver/us/asm/data/dead/EBA260.data.s index cf229aff6c..2395f30de8 100644 --- a/ver/us/asm/data/dead/EBA260.data.s +++ b/ver/us/asm/data/dead/EBA260.data.s @@ -180,16 +180,16 @@ dlabel D_802477A0_EC05F0 .word 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C81, 0xF24A6E80, 0x00000043, 0x00000005, 0x802D5FE0, 0x00000051, 0xF24A7976, 0xFE363C80, 0xF24A8069, 0x00000043, 0x00000006, 0x802D60E4, 0x00000051, 0xFE363C81, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, 0x802D7634, 0x0000002E, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024781C_EC066C -.word 0x0000000A, 0x00000002, 0xF97188AC, 0x00000000, 0x00000043, 0x00000002, 0x802DE448, 0x00000001, 0x00000043, 0x00000001, 0x802E01B8, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000002, 0x802DCA48, 0x00000000, 0x00000024, 0x00000002, 0xF97188AC, 0x00000001, 0x00000043, 0x00000004, AddCoin, 0x00000000, 0x0000002F, 0x7FFFFE00, 0x00000043, 0x00000004, AddCoin, 0x00000000, 0x00000030, 0x7FFFFE00, 0x00000024, 0x00000002, 0xFE363C89, 0xF2498E80, 0x00000024, 0x00000002, 0xFE363C8A, 0xF24AD280, 0x00000024, 0x00000002, 0xFE363C8B, 0xF24C6E80, 0x00000024, 0x00000002, 0xFE363C8C, 0xF2499E80, 0x00000024, 0x00000002, 0xFE363C8D, 0xF24ADA80, 0x00000024, 0x00000002, 0xFE363C8E, 0xF24CBE80, 0x00000043, 0x00000004, 0x802DE754, 0xFE363C89, 0xFE363C8B, 0x00000008, 0x00000043, 0x00000003, 0x802DB5E8, 0xFFFFFFFC, 0xF24A7A80, 0x00000043, 0x00000006, 0x802DBC24, 0xFFFFFFFC, 0xFE363C8C, 0xFE363C8D, 0xFE363C8E, 0x00000005, 0x00000043, 0x00000002, 0x802E37A0, 0x0000019C, 0x00000043, 0x00000005, 0x802E339C, 0x00000000, 0x0000007B, 0x00000001, 0x00000008, 0x00000043, 0x00000003, 0x802DB654, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000002, 0x802DE6A4, 0x00010004, 0x00000043, 0x00000003, func_80240F40_EB9D90, 0xFE363C83, 0xFE363C84, 0x00000014, 0x00000001, 0xFE363C84, 0x00000018, 0x00000001, 0x0000005A, 0x00000024, 0x00000002, 0xF9718890, 0x00000000, 0x00000043, 0x00000003, 0x802DEF5C, 0x0000005A, 0x00000000, 0x00000043, 0x00000004, 0x802DC064, 0xFFFFFFFC, 0x0000005A, 0x00000000, 0x0000001B, 0x00000001, 0x0000010E, 0x00000024, 0x00000002, 0xF9718890, 0x00000001, 0x00000043, 0x00000003, 0x802DEF5C, 0x0000010E, 0x00000000, 0x00000043, 0x00000004, 0x802DC064, 0xFFFFFFFC, 0x0000010E, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000005, 0x802D5FE0, 0x00000051, 0xF24A7976, 0xF24A8280, 0xF24A8069, 0x00000043, 0x00000002, 0x802D7634, 0x0000002E, 0x00000024, 0x00000002, 0xFD050F8A, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000008, EB9D90_UnkFloatFunc, 0xFE363C8F, 0xFE363C80, 0x00000000, 0x000002BC, 0x00000320, 0x00000000, 0x00000000, 0x00000044, 0x00000001, D_802477A0_EC05F0, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C82, 0xF24A6E80, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C80, 0x00000043, 0x00000001, func_80240FB0_EB9E00, 0x00000043, 0x00000001, func_802410E4_EB9F34, 0x0000000A, 0x00000002, 0xFE363C8F, 0x0000015E, 0x00000024, 0x00000002, 0xFD050F8A, 0x00000001, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x0000000A, 0x00000002, 0xFD050F8A, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000003, 0x802D78AC, 0x802493A8, 0x00000003, 0x00000008, 0x00000001, 0x00000064, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000000A, 0x00000002, 0xF97188AC, 0x00000000, 0x00000043, 0x00000002, 0x802DE448, 0x00000001, 0x00000043, 0x00000001, 0x802E01B8, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000002, 0x802DCA48, 0x00000000, 0x00000024, 0x00000002, 0xF97188AC, 0x00000001, 0x00000043, 0x00000004, AddCoin, 0x00000000, 0x0000002F, 0x7FFFFE00, 0x00000043, 0x00000004, AddCoin, 0x00000000, 0x00000030, 0x7FFFFE00, 0x00000024, 0x00000002, 0xFE363C89, 0xF2498E80, 0x00000024, 0x00000002, 0xFE363C8A, 0xF24AD280, 0x00000024, 0x00000002, 0xFE363C8B, 0xF24C6E80, 0x00000024, 0x00000002, 0xFE363C8C, 0xF2499E80, 0x00000024, 0x00000002, 0xFE363C8D, 0xF24ADA80, 0x00000024, 0x00000002, 0xFE363C8E, 0xF24CBE80, 0x00000043, 0x00000004, 0x802DE754, 0xFE363C89, 0xFE363C8B, 0x00000008, 0x00000043, 0x00000003, 0x802DB5E8, 0xFFFFFFFC, 0xF24A7A80, 0x00000043, 0x00000006, 0x802DBC24, 0xFFFFFFFC, 0xFE363C8C, 0xFE363C8D, 0xFE363C8E, 0x00000005, 0x00000043, 0x00000002, 0x802E37A0, 0x0000019C, 0x00000043, 0x00000005, 0x802E339C, 0x00000000, 0x0000007B, 0x00000001, 0x00000008, 0x00000043, 0x00000003, 0x802DB654, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000002, 0x802DE6A4, 0x00010004, 0x00000043, 0x00000003, func_80240F40_EB9D90, 0xFE363C83, 0xFE363C84, 0x00000014, 0x00000001, 0xFE363C84, 0x00000018, 0x00000001, 0x0000005A, 0x00000024, 0x00000002, 0xF9718890, 0x00000000, 0x00000043, 0x00000003, 0x802DEF5C, 0x0000005A, 0x00000000, 0x00000043, 0x00000004, 0x802DC064, 0xFFFFFFFC, 0x0000005A, 0x00000000, 0x0000001B, 0x00000001, 0x0000010E, 0x00000024, 0x00000002, 0xF9718890, 0x00000001, 0x00000043, 0x00000003, 0x802DEF5C, 0x0000010E, 0x00000000, 0x00000043, 0x00000004, 0x802DC064, 0xFFFFFFFC, 0x0000010E, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000005, 0x802D5FE0, 0x00000051, 0xF24A7976, 0xF24A8280, 0xF24A8069, 0x00000043, 0x00000002, 0x802D7634, 0x0000002E, 0x00000024, 0x00000002, 0xFD050F8A, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000008, EB9D90_CosInterpMinMax, 0xFE363C8F, 0xFE363C80, 0x00000000, 0x000002BC, 0x00000320, 0x00000000, 0x00000000, 0x00000044, 0x00000001, D_802477A0_EC05F0, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C82, 0xF24A6E80, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C80, 0x00000043, 0x00000001, func_80240FB0_EB9E00, 0x00000043, 0x00000001, func_802410E4_EB9F34, 0x0000000A, 0x00000002, 0xFE363C8F, 0x0000015E, 0x00000024, 0x00000002, 0xFD050F8A, 0x00000001, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x0000000A, 0x00000002, 0xFD050F8A, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000003, 0x802D78AC, 0x802493A8, 0x00000003, 0x00000008, 0x00000001, 0x00000064, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80247BFC_EC0A4C -.word 0x00000043, 0x00000002, 0x802DE448, 0x00000001, 0x00000043, 0x00000002, 0x802DE6F8, 0x0000000A, 0x00000043, 0x00000004, AddCoin, 0x00000000, 0x0000002F, 0x7FFFFE00, 0x00000043, 0x00000004, AddCoin, 0x00000000, 0x00000030, 0x7FFFFE00, 0x00000043, 0x00000004, 0x802DF41C, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D8D40, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D9320, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, 0x802D93E4, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, 0x802D8C7C, 0x00000000, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xFE363C89, 0xF2498E80, 0x00000024, 0x00000002, 0xFE363C8A, 0xF24AD280, 0x00000024, 0x00000002, 0xFE363C8B, 0xF24C6E80, 0x00000024, 0x00000002, 0xFE363C8C, 0xF2499E80, 0x00000024, 0x00000002, 0xFE363C8D, 0xF24AD680, 0x00000024, 0x00000002, 0xFE363C8E, 0xF24CBE80, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000003, 0x802DB654, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000002, 0x802DE6A4, 0x00010004, 0x00000014, 0x00000001, 0xF9718890, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000003, 0x802DEF5C, 0x0000005A, 0x00000000, 0x00000043, 0x00000004, 0x802DC064, 0xFFFFFFFC, 0x0000005A, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000003, 0x802DEF5C, 0x0000010E, 0x00000000, 0x00000043, 0x00000004, 0x802DC064, 0xFFFFFFFC, 0x0000010E, 0x00000000, 0x00000023, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000005, 0x802D5FE0, 0x00000051, 0xF24A7976, 0xF24A8280, 0xF24A8069, 0x00000043, 0x00000002, 0x802D7634, 0x0000002E, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000078, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000008, EB9D90_UnkFloatFunc, 0xFE363C8F, 0xFE363C80, 0x00000046, 0x00000000, 0x00000078, 0x00000000, 0x00000000, 0x00000044, 0x00000001, D_802477A0_EC05F0, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C82, 0xF24A6E80, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C80, 0x00000043, 0x00000001, func_80240FB0_EB9E00, 0x00000043, 0x00000001, func_802410E4_EB9F34, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000001, 0x802DCA8C, 0x00000043, 0x00000002, 0x802DC8D0, 0xFFFFFFFC, 0x00000043, 0x00000002, 0x802DE674, 0x00000001, 0x00000043, 0x00000005, 0x802DEF08, 0x0000000A, 0x00000000, 0x0000006E, 0x00000014, 0x00000043, 0x00000002, 0x802DE6F8, 0x0000000A, 0x00000043, 0x00000003, 0x802DEF5C, 0x0000005A, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, AddCoin, 0x00000001, 0x0000002F, 0x7FFFFE00, 0x00000043, 0x00000004, AddCoin, 0x00000001, 0x00000030, 0x7FFFFE00, 0x00000024, 0x00000002, 0xF97188AC, 0x00000000, 0x00000043, 0x00000002, 0x802E3908, 0x0000019D, 0x00000046, 0x00000001, D_80241500_EBA350, 0x00000043, 0x00000003, 0x802D9DE4, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000002, 0x802DE448, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000002, 0x802DE448, 0x00000001, 0x00000043, 0x00000002, 0x802DE6F8, 0x0000000A, 0x00000043, 0x00000004, AddCoin, 0x00000000, 0x0000002F, 0x7FFFFE00, 0x00000043, 0x00000004, AddCoin, 0x00000000, 0x00000030, 0x7FFFFE00, 0x00000043, 0x00000004, 0x802DF41C, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D8D40, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D9320, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, 0x802D93E4, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, 0x802D8C7C, 0x00000000, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xFE363C89, 0xF2498E80, 0x00000024, 0x00000002, 0xFE363C8A, 0xF24AD280, 0x00000024, 0x00000002, 0xFE363C8B, 0xF24C6E80, 0x00000024, 0x00000002, 0xFE363C8C, 0xF2499E80, 0x00000024, 0x00000002, 0xFE363C8D, 0xF24AD680, 0x00000024, 0x00000002, 0xFE363C8E, 0xF24CBE80, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000003, 0x802DB654, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000002, 0x802DE6A4, 0x00010004, 0x00000014, 0x00000001, 0xF9718890, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000003, 0x802DEF5C, 0x0000005A, 0x00000000, 0x00000043, 0x00000004, 0x802DC064, 0xFFFFFFFC, 0x0000005A, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000003, 0x802DEF5C, 0x0000010E, 0x00000000, 0x00000043, 0x00000004, 0x802DC064, 0xFFFFFFFC, 0x0000010E, 0x00000000, 0x00000023, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000005, 0x802D5FE0, 0x00000051, 0xF24A7976, 0xF24A8280, 0xF24A8069, 0x00000043, 0x00000002, 0x802D7634, 0x0000002E, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000078, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000008, EB9D90_CosInterpMinMax, 0xFE363C8F, 0xFE363C80, 0x00000046, 0x00000000, 0x00000078, 0x00000000, 0x00000000, 0x00000044, 0x00000001, D_802477A0_EC05F0, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C82, 0xF24A6E80, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C80, 0x00000043, 0x00000001, func_80240FB0_EB9E00, 0x00000043, 0x00000001, func_802410E4_EB9F34, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000001, 0x802DCA8C, 0x00000043, 0x00000002, 0x802DC8D0, 0xFFFFFFFC, 0x00000043, 0x00000002, 0x802DE674, 0x00000001, 0x00000043, 0x00000005, 0x802DEF08, 0x0000000A, 0x00000000, 0x0000006E, 0x00000014, 0x00000043, 0x00000002, 0x802DE6F8, 0x0000000A, 0x00000043, 0x00000003, 0x802DEF5C, 0x0000005A, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, AddCoin, 0x00000001, 0x0000002F, 0x7FFFFE00, 0x00000043, 0x00000004, AddCoin, 0x00000001, 0x00000030, 0x7FFFFE00, 0x00000024, 0x00000002, 0xF97188AC, 0x00000000, 0x00000043, 0x00000002, 0x802E3908, 0x0000019D, 0x00000046, 0x00000001, D_80241500_EBA350, 0x00000043, 0x00000003, 0x802D9DE4, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000002, 0x802DE448, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80247FDC_EC0E2C -.word 0x00000043, 0x00000004, 0x802D7AC0, 0x0000002F, 0x0000019B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000064, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000008, EB9D90_UnkFloatFunc, 0xFE363C8F, 0xFE363C80, 0x00000000, 0xF24A7E80, 0x00000064, 0x00000000, 0x00000000, 0x00000044, 0x00000001, D_802475B8_EC0408, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000024, 0x00000002, 0xFD050F8A, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x000004B0, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000008, EB9D90_UnkFloatFunc, 0xFE363C8F, 0xFE363C80, 0xFFFFFD44, 0x00000000, 0x000004B0, 0x00000000, 0x00000000, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C82, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000044, 0x00000001, D_80246880_EBF6D0, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C82, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000044, 0x00000001, D_802474B8_EC0308, 0x00000014, 0x00000001, 0xFE363C8F, 0x00000016, 0x00000001, 0x000000C8, 0x00000043, 0x00000002, 0x802DE6A4, 0x0001002A, 0x00000016, 0x00000001, 0x000000FA, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFFC4, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x00000041, 0x00000043, 0x00000005, 0x802D8D40, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D9320, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, 0x802D93E4, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, 0x802D903C, 0x00000000, 0xF24AAC80, 0xF24A5E80, 0x00000043, 0x00000003, 0x802D90D8, 0x00000000, 0x00000320, 0x00000043, 0x00000004, 0x802D914C, 0x00000000, 0xFFFFFF38, 0x00000000, 0x00000043, 0x00000004, 0x802D91E8, 0x00000000, 0x00000000, 0xFFFFFED4, 0x00000043, 0x00000004, 0x802D8C7C, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, 0x802D9848, 0x00000000, 0xF24A7E80, 0x0000001C, 0x00000000, 0x00000023, 0x00000000, 0x0000000D, 0x00000002, 0xFE363C8F, 0x00000226, 0x00000024, 0x00000002, 0xFD050F8A, 0x00000001, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x0000000A, 0x00000002, 0xFD050F8A, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000007, 0x802E3444, 0x00000000, 0x00000032, 0x00000000, 0x00000BB8, 0x00000000, 0x0000007F, 0x00000043, 0x00000003, 0x802E3330, 0x00000001, 0x00000BB8, 0x00000043, 0x00000003, 0x802D78AC, 0x802493A8, 0x00000002, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000004, 0x802D7AC0, 0x0000002F, 0x0000019B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000064, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000008, EB9D90_CosInterpMinMax, 0xFE363C8F, 0xFE363C80, 0x00000000, 0xF24A7E80, 0x00000064, 0x00000000, 0x00000000, 0x00000044, 0x00000001, D_802475B8_EC0408, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000024, 0x00000002, 0xFD050F8A, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x000004B0, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000008, EB9D90_CosInterpMinMax, 0xFE363C8F, 0xFE363C80, 0xFFFFFD44, 0x00000000, 0x000004B0, 0x00000000, 0x00000000, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C82, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000044, 0x00000001, D_80246880_EBF6D0, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C82, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000044, 0x00000001, D_802474B8_EC0308, 0x00000014, 0x00000001, 0xFE363C8F, 0x00000016, 0x00000001, 0x000000C8, 0x00000043, 0x00000002, 0x802DE6A4, 0x0001002A, 0x00000016, 0x00000001, 0x000000FA, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFFC4, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x00000041, 0x00000043, 0x00000005, 0x802D8D40, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D9320, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, 0x802D93E4, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, 0x802D903C, 0x00000000, 0xF24AAC80, 0xF24A5E80, 0x00000043, 0x00000003, 0x802D90D8, 0x00000000, 0x00000320, 0x00000043, 0x00000004, 0x802D914C, 0x00000000, 0xFFFFFF38, 0x00000000, 0x00000043, 0x00000004, 0x802D91E8, 0x00000000, 0x00000000, 0xFFFFFED4, 0x00000043, 0x00000004, 0x802D8C7C, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, 0x802D9848, 0x00000000, 0xF24A7E80, 0x0000001C, 0x00000000, 0x00000023, 0x00000000, 0x0000000D, 0x00000002, 0xFE363C8F, 0x00000226, 0x00000024, 0x00000002, 0xFD050F8A, 0x00000001, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x0000000A, 0x00000002, 0xFD050F8A, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000007, 0x802E3444, 0x00000000, 0x00000032, 0x00000000, 0x00000BB8, 0x00000000, 0x0000007F, 0x00000043, 0x00000003, 0x802E3330, 0x00000001, 0x00000BB8, 0x00000043, 0x00000003, 0x802D78AC, 0x802493A8, 0x00000002, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024837C_EC11CC -.word 0x00000043, 0x00000002, 0x802DE448, 0x00000001, 0x00000043, 0x00000003, 0x802DEF5C, 0x000000C8, 0x00000000, 0x00000043, 0x00000004, 0x802DE510, 0xFFFFFFC4, 0x00000000, 0x0000001E, 0x00000043, 0x00000003, 0x802DC228, 0xFFFFFFFC, 0x00000001, 0x00000043, 0x00000005, 0x802DB210, 0xFFFFFFFC, 0xFFFFFFEC, 0x00000000, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFFC4, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x00000041, 0x00000043, 0x00000005, 0x802D8D40, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D9320, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, 0x802D93E4, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, 0x802D903C, 0x00000000, 0xF24AAC80, 0xF24A5E80, 0x00000043, 0x00000003, 0x802D90D8, 0x00000000, 0x00000320, 0x00000043, 0x00000004, 0x802D914C, 0x00000000, 0xFFFFFF38, 0x00000000, 0x00000043, 0x00000004, 0x802D91E8, 0x00000000, 0x00000000, 0xFFFFFED4, 0x00000043, 0x00000004, 0x802D8C7C, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, 0x802D9848, 0x00000000, 0xF24A7E80, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000005, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000014, 0x00000043, 0x00000008, EB9D90_UnkFloatFunc, 0xFE363C8F, 0xFE363C80, 0xF24A7A80, 0xF24A7E80, 0x00000064, 0x00000000, 0x00000000, 0x00000044, 0x00000001, D_80247724_EC0574, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000004, AddCoin, 0x00000001, 0x0000002E, 0x7FFFFE00, 0x00000043, 0x00000005, 0x802DDEEC, 0x0011000A, 0x00000000, 0x00000032, 0xFFFFFF38, 0x00000043, 0x00000003, 0x802D9DE4, 0x00000000, 0xF24BE280, 0x00000043, 0x00000002, 0x802DE448, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000002, 0x802DE448, 0x00000001, 0x00000043, 0x00000003, 0x802DEF5C, 0x000000C8, 0x00000000, 0x00000043, 0x00000004, 0x802DE510, 0xFFFFFFC4, 0x00000000, 0x0000001E, 0x00000043, 0x00000003, 0x802DC228, 0xFFFFFFFC, 0x00000001, 0x00000043, 0x00000005, 0x802DB210, 0xFFFFFFFC, 0xFFFFFFEC, 0x00000000, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFFC4, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x00000041, 0x00000043, 0x00000005, 0x802D8D40, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D9320, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, 0x802D93E4, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, 0x802D903C, 0x00000000, 0xF24AAC80, 0xF24A5E80, 0x00000043, 0x00000003, 0x802D90D8, 0x00000000, 0x00000320, 0x00000043, 0x00000004, 0x802D914C, 0x00000000, 0xFFFFFF38, 0x00000000, 0x00000043, 0x00000004, 0x802D91E8, 0x00000000, 0x00000000, 0xFFFFFED4, 0x00000043, 0x00000004, 0x802D8C7C, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, 0x802D9848, 0x00000000, 0xF24A7E80, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000005, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000014, 0x00000043, 0x00000008, EB9D90_CosInterpMinMax, 0xFE363C8F, 0xFE363C80, 0xF24A7A80, 0xF24A7E80, 0x00000064, 0x00000000, 0x00000000, 0x00000044, 0x00000001, D_80247724_EC0574, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000004, AddCoin, 0x00000001, 0x0000002E, 0x7FFFFE00, 0x00000043, 0x00000005, 0x802DDEEC, 0x0011000A, 0x00000000, 0x00000032, 0xFFFFFF38, 0x00000043, 0x00000003, 0x802D9DE4, 0x00000000, 0xF24BE280, 0x00000043, 0x00000002, 0x802DE448, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_802485C8_EC1418 .word 0x00000059, 0x00000058, 0x0000005A, 0x00000000 diff --git a/ver/us/asm/data/dead/EF8250.data.s b/ver/us/asm/data/dead/EF8250.data.s index 63db12a351..d8a8787bfb 100644 --- a/ver/us/asm/data/dead/EF8250.data.s +++ b/ver/us/asm/data/dead/EF8250.data.s @@ -27,13 +27,13 @@ dlabel D_80240E90_EF8910 .word 0x0000004D, 0x00000001, 0x0000000B, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x0000000F, 0x802E58EC, 0x0000005E, 0x00000000, 0xF24A3A80, 0xF24C1280, 0xF24A6A1A, 0xF24BBE1A, 0xF24C1280, 0xF24A6A1A, 0xF24A7C80, 0x00000006, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000001, func_80240340_EF7DC0, 0x00000008, 0x00000001, 0x00000004, 0x00000043, 0x0000000F, 0x802E58EC, 0x0000005E, 0x00000000, 0xF24BBE1A, 0xF24C1280, 0xF24A6A1A, 0xF24A3A80, 0xF24C1280, 0xF24A6A1A, 0xF24A7C80, 0x00000006, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000001, func_80240340_EF7DC0, 0x00000008, 0x00000001, 0x00000004, 0x0000000F, 0x00000002, 0xF5DE027D, 0x00000003, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000006, 0x00000005, 0x00000001, 0x00000005, 0x00000043, 0x0000000F, 0x802E58EC, 0x0000005E, 0x00000000, 0xF24A3A80, 0xF24C1280, 0xF24A6A1A, 0xF24BBE1A, 0xF24C1280, 0xF24A6A1A, 0xF24A7C80, 0x00000006, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000001, func_80240340_EF7DC0, 0x00000008, 0x00000001, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000002, 0x00000043, 0x0000000F, 0x802E58EC, 0x0000005E, 0x00000000, 0xF24BBE1A, 0xF24C1280, 0xF24A6A1A, 0xF24A3A80, 0xF24C1280, 0xF24A6A1A, 0xF24A7C80, 0x00000006, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000001, func_80240340_EF7DC0, 0x00000008, 0x00000001, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000002, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80241094_EF8B14 -.word 0x00000043, 0x00000003, 0x802D6708, 0xFE363C8F, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8E, 0x0000009F, 0x00000005, 0x00000001, 0xFE363C8E, 0x0000002C, 0x00000002, 0xFE363C83, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C84, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C85, 0xF24A7A8B, 0x0000002C, 0x00000002, 0xFE363C80, 0xFE363C83, 0x0000002C, 0x00000002, 0xFE363C81, 0xFE363C84, 0x0000002C, 0x00000002, 0xFE363C82, 0xFE363C85, 0x0000002E, 0x00000002, 0xFE363C86, 0xF24A7E8B, 0x0000002C, 0x00000002, 0xFE363C87, 0xF24A7A8B, 0x00000026, 0x00000002, 0xFE363C88, 0xFE363C86, 0x00000043, 0x00000008, EF7A80_UnkFloatFunc, 0xFE363C8E, 0xFE363C8A, 0xF24A7A80, 0xF24A7B50, 0x0000000F, 0x00000000, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C88, 0xFE363C8A, 0x00000026, 0x00000002, 0xFE363C89, 0xFE363C87, 0x00000043, 0x00000008, EF7A80_UnkFloatFunc, 0xFE363C8E, 0xFE363C8A, 0xF24A7A80, 0xF24A7B50, 0x00000014, 0x00000000, 0x0000005A, 0x0000002C, 0x00000002, 0xFE363C89, 0xFE363C8A, 0x00000026, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C8A, 0xF24AA280, 0x00000043, 0x00000005, 0x802D5FE0, 0xFE363C8F, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0xFE363C8F, 0xFE363C88, 0xFE363C89, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0xFE363C8F, 0xFE363C8A, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000003, 0x802D6708, 0xFE363C8F, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000003, 0x802D6708, 0xFE363C8F, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8E, 0x0000009F, 0x00000005, 0x00000001, 0xFE363C8E, 0x0000002C, 0x00000002, 0xFE363C83, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C84, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C85, 0xF24A7A8B, 0x0000002C, 0x00000002, 0xFE363C80, 0xFE363C83, 0x0000002C, 0x00000002, 0xFE363C81, 0xFE363C84, 0x0000002C, 0x00000002, 0xFE363C82, 0xFE363C85, 0x0000002E, 0x00000002, 0xFE363C86, 0xF24A7E8B, 0x0000002C, 0x00000002, 0xFE363C87, 0xF24A7A8B, 0x00000026, 0x00000002, 0xFE363C88, 0xFE363C86, 0x00000043, 0x00000008, EF7A80_CosInterpMinMax, 0xFE363C8E, 0xFE363C8A, 0xF24A7A80, 0xF24A7B50, 0x0000000F, 0x00000000, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C88, 0xFE363C8A, 0x00000026, 0x00000002, 0xFE363C89, 0xFE363C87, 0x00000043, 0x00000008, EF7A80_CosInterpMinMax, 0xFE363C8E, 0xFE363C8A, 0xF24A7A80, 0xF24A7B50, 0x00000014, 0x00000000, 0x0000005A, 0x0000002C, 0x00000002, 0xFE363C89, 0xFE363C8A, 0x00000026, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x0000002E, 0x00000002, 0xFE363C8A, 0xF24AA280, 0x00000043, 0x00000005, 0x802D5FE0, 0xFE363C8F, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0xFE363C8F, 0xFE363C88, 0xFE363C89, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0xFE363C8F, 0xFE363C8A, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000003, 0x802D6708, 0xFE363C8F, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80241284_EF8D04 .word 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x0000000F, 0x00000002, 0xF5DE027D, 0x00000003, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF24C8A80, 0x00000026, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000026, 0x00000002, 0xFE363C82, 0xF24A0280, 0x00000043, 0x00000003, 0x802E1D00, 0x00000064, 0xFE363C83, 0x0000002C, 0x00000002, 0xFE363C83, 0xFFFFFFCE, 0x0000002F, 0x00000002, 0xFE363C83, 0xF24D9A80, 0x00000026, 0x00000002, 0xFE363C84, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C85, 0x00000000, 0x00000026, 0x00000002, 0xFE363C86, 0xF24A7BB0, 0x00000026, 0x00000002, 0xFE363C87, 0xF24A7BB0, 0x00000024, 0x00000002, 0xFE363C8F, 0xFE363C8E, 0x00000027, 0x00000002, 0xFE363C8F, 0x00002710, 0x00000044, 0x00000001, D_80241094_EF8B14, 0x00000027, 0x00000002, 0xFE363C8E, 0x00000001, 0x0000000F, 0x00000002, 0xFE363C8E, 0x00000010, 0x00000024, 0x00000002, 0xFE363C8E, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_802413F0_EF8E70 -.word 0x0000000A, 0x00000002, 0xFAA2B582, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFAA2B582, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x0000000C, 0x00000043, 0x00000003, 0x802E1D00, 0x00000050, 0xFE363C80, 0x00000028, 0x00000002, 0xFE363C80, 0x00000028, 0x00000043, 0x00000003, 0x802E1D00, 0x00000032, 0xFE363C81, 0x00000043, 0x00000003, 0x802E1D00, 0x00000032, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000019, 0x00000043, 0x0000000F, 0x802E58EC, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000005, 0x0000000A, 0x00000001, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000008, EF7A80_UnkFloatFunc, 0xFE363C8F, 0xFE363C8E, 0xF24A7E80, 0xF24A7EE0, 0x00000002, 0x00000000, 0x00000000, 0x00000043, 0x00000008, EF7A80_UnkFloatFunc, 0xFE363C8F, 0xFE363C8D, 0xF24A7EE0, 0xF24A7E80, 0x00000002, 0x00000000, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C8E, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C8D, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C8E, 0x0000000A, 0x00000002, 0xF5DE027C, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x0000001F, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000020, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF5DE027D, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x00000013, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000014, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000001, 0x00000043, 0x00000005, 0x802D6208, 0x00000015, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000001, 0x00000043, 0x00000005, 0x802D6208, 0x00000016, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000017, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000018, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000019, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x0000001A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x0000001B, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000002, 0x00000043, 0x00000005, 0x802D6208, 0x0000001D, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000029, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000021, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x00000024, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000025, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000026, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000027, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000028, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000022, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000002D, 0x00000002, 0xFE363C80, 0xF24A7EB0, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24C0A80, 0x0000000A, 0x00000002, 0xF5DE027C, 0x00000000, 0x00000043, 0x00000006, 0x802D60E4, 0x0000001F, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000020, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF5DE027D, 0x00000000, 0x00000043, 0x00000006, 0x802D60E4, 0x00000013, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000014, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000015, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000016, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000017, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000018, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000019, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x0000001A, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, 0x802D60E4, 0x0000001B, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000002, 0x00000043, 0x00000006, 0x802D60E4, 0x0000001D, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000029, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000021, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, 0x802D60E4, 0x00000024, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000025, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000026, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000027, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000028, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000022, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C81, 0x00000001, 0x00000026, 0x00000002, 0xFE363C82, 0x00000001, 0x0000000A, 0x00000002, 0xF5DE027C, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x0000001F, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000020, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF5DE027D, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x00000013, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000014, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000001, 0x00000043, 0x00000005, 0x802D6208, 0x00000015, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000001, 0x00000043, 0x00000005, 0x802D6208, 0x00000016, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000017, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000018, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000019, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x0000001A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x0000001B, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000002, 0x00000043, 0x00000005, 0x802D6208, 0x0000001D, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000029, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000021, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x00000024, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000025, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000026, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000027, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000028, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000022, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B582, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000000A, 0x00000002, 0xFAA2B582, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFAA2B582, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x0000000C, 0x00000043, 0x00000003, 0x802E1D00, 0x00000050, 0xFE363C80, 0x00000028, 0x00000002, 0xFE363C80, 0x00000028, 0x00000043, 0x00000003, 0x802E1D00, 0x00000032, 0xFE363C81, 0x00000043, 0x00000003, 0x802E1D00, 0x00000032, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000019, 0x00000043, 0x0000000F, 0x802E58EC, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000005, 0x0000000A, 0x00000001, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000008, EF7A80_CosInterpMinMax, 0xFE363C8F, 0xFE363C8E, 0xF24A7E80, 0xF24A7EE0, 0x00000002, 0x00000000, 0x00000000, 0x00000043, 0x00000008, EF7A80_CosInterpMinMax, 0xFE363C8F, 0xFE363C8D, 0xF24A7EE0, 0xF24A7E80, 0x00000002, 0x00000000, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C8E, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C8D, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C8E, 0x0000000A, 0x00000002, 0xF5DE027C, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x0000001F, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000020, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF5DE027D, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x00000013, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000014, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000001, 0x00000043, 0x00000005, 0x802D6208, 0x00000015, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000001, 0x00000043, 0x00000005, 0x802D6208, 0x00000016, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000017, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000018, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000019, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x0000001A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x0000001B, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000002, 0x00000043, 0x00000005, 0x802D6208, 0x0000001D, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000029, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000021, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x00000024, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000025, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000026, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000027, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000028, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000022, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000002D, 0x00000002, 0xFE363C80, 0xF24A7EB0, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24C0A80, 0x0000000A, 0x00000002, 0xF5DE027C, 0x00000000, 0x00000043, 0x00000006, 0x802D60E4, 0x0000001F, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000020, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF5DE027D, 0x00000000, 0x00000043, 0x00000006, 0x802D60E4, 0x00000013, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000014, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000015, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000016, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000017, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000018, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000019, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x0000001A, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, 0x802D60E4, 0x0000001B, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000002, 0x00000043, 0x00000006, 0x802D60E4, 0x0000001D, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000029, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000021, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, 0x802D60E4, 0x00000024, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000025, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000026, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000027, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000028, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000022, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C81, 0x00000001, 0x00000026, 0x00000002, 0xFE363C82, 0x00000001, 0x0000000A, 0x00000002, 0xF5DE027C, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x0000001F, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000020, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF5DE027D, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x00000013, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000014, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000001, 0x00000043, 0x00000005, 0x802D6208, 0x00000015, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000001, 0x00000043, 0x00000005, 0x802D6208, 0x00000016, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000017, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000018, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000019, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x0000001A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x0000001B, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000E, 0x00000002, 0xF5DE027C, 0x00000002, 0x0000000E, 0x00000002, 0xF5DE027D, 0x00000002, 0x00000043, 0x00000005, 0x802D6208, 0x0000001D, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000029, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000021, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, 0x802D6208, 0x00000024, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000025, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000026, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000027, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000028, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, 0x802D6208, 0x00000022, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B582, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80241ED4_EF9954 .word 0x00000026, 0x00000002, 0xFE363C80, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0x00000000, 0x00000026, 0x00000002, 0xFE363C82, 0x00000000, 0x00000026, 0x00000002, 0xFE363C83, 0xF24A7680, 0x00000026, 0x00000002, 0xFE363C84, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C85, 0xF24A8680, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, 0x802D7AC0, 0x00000013, 0x000001E6, 0x00000000, 0x00000057, 0x00000000, 0x00000005, 0x00000001, 0x0000012C, 0x0000002C, 0x00000002, 0xFE363C84, 0xF24A7880, 0x0000002C, 0x00000002, 0xFE363C85, 0xF24A7AE0, 0x0000002C, 0x00000002, 0xFE363C80, 0xFE363C83, 0x0000002C, 0x00000002, 0xFE363C81, 0xFE363C84, 0x0000002C, 0x00000002, 0xFE363C82, 0xFE363C85, 0x0000000C, 0x00000002, 0xFE363C81, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A5280, 0x00000026, 0x00000002, 0xFE363C83, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C84, 0xF24A7A80, 0x0000000F, 0x00000002, 0xFE363C82, 0x00000050, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, 0x802D5FE0, 0x0000001F, 0xFFFFFFB2, 0x00000013, 0x00000002, 0x00000043, 0x00000005, 0x802D5FE0, 0x00000020, 0xFFFFFFB2, 0x00000013, 0x00000002, 0x00000043, 0x00000005, 0x802D5FE0, 0x0000001F, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000005, 0x802D5FE0, 0x00000020, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000006, 0x802D60E4, 0x0000001F, 0xFE363C82, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, 0x802D60E4, 0x00000020, 0xFE363C82, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000005, 0x802D5FE0, 0x0000001F, 0x0000004E, 0xFFFFFFED, 0xFFFFFFFE, 0x00000043, 0x00000005, 0x802D5FE0, 0x00000020, 0x0000004E, 0xFFFFFFED, 0xFFFFFFFE, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000004, AddCoin, 0x00000000, 0x00000013, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_isk/isk_02/978B80.data.s b/ver/us/asm/data/world/area_isk/isk_02/978B80.data.s index 3b7535e2ae..e61f2f4906 100644 --- a/ver/us/asm/data/world/area_isk/isk_02/978B80.data.s +++ b/ver/us/asm/data/world/area_isk/isk_02/978B80.data.s @@ -6,4 +6,4 @@ dlabel D_80240470_978B80 .word 0x00000011, 0x00000000 dlabel D_80240478_978B88 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x00000110, 0x0000003C, 0x000001E6, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405EE6, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, isk_02_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x0000000A, 0x00000265, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000041, 0x00000041, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000043, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000000A, 0x7FFFFE00, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EE6, 0x00000000, 0x00000043, 0x00000002, MakeTransformGroup, 0x00000043, 0x0000004E, 0x00000006, D_80240478_978B88, 0x00000100, 0x00004000, D_80240470_978B80, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000043, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000000A, 0x7FFDFFFF, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x00000110, 0x0000003C, 0x000001E6, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405EE6, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, isk_02_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x0000000A, 0x00000265, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000041, 0x00000041, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000043, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000000A, 0x7FFFFE00, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EE6, 0x00000000, 0x00000043, 0x00000002, MakeTransformGroup, 0x00000043, 0x0000004E, 0x00000006, D_80240478_978B88, 0x00000100, 0x00004000, D_80240470_978B80, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000043, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000000A, 0x7FFDFFFF, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_isk/isk_04/97C300.data.s b/ver/us/asm/data/world/area_isk/isk_04/97C300.data.s index 6c9dfd1106..2f494c69d3 100644 --- a/ver/us/asm/data/world/area_isk/isk_04/97C300.data.s +++ b/ver/us/asm/data/world/area_isk/isk_04/97C300.data.s @@ -33,7 +33,7 @@ dlabel D_802410A8_97C6D8 .word 0x00000043, 0x0000000F, PlayEffect, 0x00000042, 0x00000000, 0x0000003F, 0x00000016, 0x00000001, 0x0000000A, 0x0000001E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000005, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, EnableModel, 0x0000003F, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, EnableModel, 0x0000003F, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000009, 0x7FFFFE00, 0x00000024, 0x00000002, 0xF8405EE8, 0x00000001, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80241180_97C7B0 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x00000258, 0xFFFFFEB6, 0x00000064, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405EE9, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, isk_04_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000004, 0x00000265, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000041, 0x00000041, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000044, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000004, 0x7FFFFE00, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x00000258, 0xFFFFFEB6, 0x00000064, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405EE9, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, isk_04_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000004, 0x00000265, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000041, 0x00000041, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000044, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000004, 0x7FFFFE00, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80241348_97C978 .word 0x0000000A, 0x00000002, 0xF8405EE8, 0x00000000, 0x00000047, 0x00000005, D_802410A8_97C6D8, 0x00100000, D_80241098_97C6C8, 0x00000001, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000003, EnableModel, 0x0000003F, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000009, 0x7FFFFE00, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EE9, 0x00000000, 0x00000043, 0x00000002, MakeTransformGroup, 0x00000044, 0x0000004E, 0x00000006, D_80241180_97C7B0, 0x00000100, 0x00004000, D_80241090_97C6C0, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000004, 0x7FFFFE00, 0x00000043, 0x00000003, EnableModel, 0x00000044, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_isk/isk_05/97FCE0.data.s b/ver/us/asm/data/world/area_isk/isk_05/97FCE0.data.s index 2d673b0886..11ac4afed0 100644 --- a/ver/us/asm/data/world/area_isk/isk_05/97FCE0.data.s +++ b/ver/us/asm/data/world/area_isk/isk_05/97FCE0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80242210_97FCE0 -.word 0x00000024, 0x00000002, 0xF8405EFE, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000016, 0x0000013C, 0x00000052, 0xFFFFFE1F, 0x00000000, 0xF8405EF2, 0x0000000A, 0x00000002, 0xF8405EFE, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer2Block_WideHitbox, 0x000001AF, 0x00000000, 0xFFFFFE22, 0x0000002D, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80242210_97FCE0, 0x00000013, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0x000000C4, 0xFFFFFEDE, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x00000122, 0x000000C4, 0xFFFFFE65, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0x00000042, 0xFFFFFEDE, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 +.word 0x00000024, 0x00000002, 0xF8405EFE, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000016, 0x0000013C, 0x00000052, 0xFFFFFE1F, 0x00000000, 0xF8405EF2, 0x0000000A, 0x00000002, 0xF8405EFE, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer2Block_WideX, 0x000001AF, 0x00000000, 0xFFFFFE22, 0x0000002D, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80242210_97FCE0, 0x00000013, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0x000000C4, 0xFFFFFEDE, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x00000122, 0x000000C4, 0xFFFFFE65, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0x00000042, 0xFFFFFEDE, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_isk/isk_07/982860.data.s b/ver/us/asm/data/world/area_isk/isk_07/982860.data.s index 4aec0989d4..54f8cf9eb7 100644 --- a/ver/us/asm/data/world/area_isk/isk_07/982860.data.s +++ b/ver/us/asm/data/world/area_isk/isk_07/982860.data.s @@ -6,4 +6,4 @@ dlabel D_80240420_982860 .word 0x00000024, 0x00000002, 0xF8405EF6, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240440_982880 -.word 0x00000024, 0x00000002, 0xF8405EFF, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EED, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0xFFFFFED4, 0xFFFFFE84, 0x00000212, 0x00000032, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EFF, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer2Block_WideHitbox, 0x000001D6, 0xFFFFFF06, 0x0000010E, 0x00000096, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80240440_982880, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EF6, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_TriggerBlock, 0xFFFFFF06, 0xFFFFFEB6, 0x00000221, 0xFFFFFFE7, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80240420_982860, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EEC, 0x00000001, 0x00000043, 0x00000007, MakeItemEntity, 0x00000011, 0xFFFFFF06, 0xFFFFFE7A, 0x00000221, 0x00000000, 0xF8405EEB, 0x00000013, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0xFFFFFF3F, 0x00000123, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x00000123, 0xFFFFFF3F, 0x0000019F, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x00000083, 0xFFFFFF3F, 0x000001E9, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFFD4, 0xFFFFFF3F, 0x000001F9, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFF2A, 0xFFFFFF3F, 0x000001CB, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0xFFFFFEBD, 0x00000123, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x00000123, 0xFFFFFEBD, 0x0000019F, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x00000083, 0xFFFFFEBD, 0x000001E9, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFFD4, 0xFFFFFEBD, 0x000001F9, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFF2A, 0xFFFFFEBD, 0x000001CB, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000053, 0x000001EA, 0xFFFFFF06, 0x000000D7, 0x00000011, 0xF8405EF4, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 +.word 0x00000024, 0x00000002, 0xF8405EFF, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EED, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0xFFFFFED4, 0xFFFFFE84, 0x00000212, 0x00000032, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EFF, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer2Block_WideX, 0x000001D6, 0xFFFFFF06, 0x0000010E, 0x00000096, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80240440_982880, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EF6, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_TriggerBlock, 0xFFFFFF06, 0xFFFFFEB6, 0x00000221, 0xFFFFFFE7, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80240420_982860, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EEC, 0x00000001, 0x00000043, 0x00000007, MakeItemEntity, 0x00000011, 0xFFFFFF06, 0xFFFFFE7A, 0x00000221, 0x00000000, 0xF8405EEB, 0x00000013, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0xFFFFFF3F, 0x00000123, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x00000123, 0xFFFFFF3F, 0x0000019F, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x00000083, 0xFFFFFF3F, 0x000001E9, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFFD4, 0xFFFFFF3F, 0x000001F9, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFF2A, 0xFFFFFF3F, 0x000001CB, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0xFFFFFEBD, 0x00000123, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x00000123, 0xFFFFFEBD, 0x0000019F, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x00000083, 0xFFFFFEBD, 0x000001E9, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFFD4, 0xFFFFFEBD, 0x000001F9, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFF2A, 0xFFFFFEBD, 0x000001CB, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000053, 0x000001EA, 0xFFFFFF06, 0x000000D7, 0x00000011, 0xF8405EF4, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_isk/isk_07/983AD0.data.s b/ver/us/asm/data/world/area_isk/isk_07/983AD0.data.s index 4114a990a1..76639f35f5 100644 --- a/ver/us/asm/data/world/area_isk/isk_07/983AD0.data.s +++ b/ver/us/asm/data/world/area_isk/isk_07/983AD0.data.s @@ -15,4 +15,4 @@ dlabel D_80241A80_983EC0 .word 0x00000011, 0x00000000 dlabel D_80241A88_983EC8 -.word 0x0000004D, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000001, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFFFFFED4, 0xFFFFFE84, 0x00000212, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405EED, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, isk_07_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000002, 0x00000265, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000041, 0x00000041, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x0000004F, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000002, 0x7FFFFE00, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EED, 0x00000000, 0x00000043, 0x00000002, MakeTransformGroup, 0x0000004F, 0x0000004E, 0x00000006, D_80241A88_983EC8, 0x00000100, 0x00004000, D_80241A80_983EC0, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000003, EnableModel, 0x0000004F, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000002, 0x7FFFFE00, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005A, 0x00000000, 0x00000041, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0x00000000, 0x00000041, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000006, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000006, 0x7FFFFE00, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000006, 0x00000266, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000041, 0x00000000, 0x0000000F, 0x00000001, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateModel, 0x0000005A, 0x00000000, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000006, 0x00000267, 0x00000000, 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x0000000A, 0xF24A7BB4, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000041, 0x0000000F, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateModel, 0x0000005A, 0x00000000, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000006, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x0000004D, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000001, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFFFFFED4, 0xFFFFFE84, 0x00000212, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405EED, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, isk_07_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000002, 0x00000265, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000041, 0x00000041, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x0000004F, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000002, 0x7FFFFE00, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EED, 0x00000000, 0x00000043, 0x00000002, MakeTransformGroup, 0x0000004F, 0x0000004E, 0x00000006, D_80241A88_983EC8, 0x00000100, 0x00004000, D_80241A80_983EC0, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000003, EnableModel, 0x0000004F, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000002, 0x7FFFFE00, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005A, 0x00000000, 0x00000041, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0x00000000, 0x00000041, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000006, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000006, 0x7FFFFE00, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000006, 0x00000266, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000041, 0x00000000, 0x0000000F, 0x00000001, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateModel, 0x0000005A, 0x00000000, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000006, 0x00000267, 0x00000000, 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x0000000A, 0xF24A7BB4, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000041, 0x0000000F, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateModel, 0x0000005A, 0x00000000, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000006, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_isk/isk_11/98D3C0.data.s b/ver/us/asm/data/world/area_isk/isk_11/98D3C0.data.s index 58e0558795..647f3d4ef5 100644 --- a/ver/us/asm/data/world/area_isk/isk_11/98D3C0.data.s +++ b/ver/us/asm/data/world/area_isk/isk_11/98D3C0.data.s @@ -6,4 +6,4 @@ dlabel D_802429B0_98D3C0 .word 0x00000011, 0x00000000 dlabel D_802429B8_98D3C8 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x00000163, 0xFFFFFE34, 0x000001AE, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405EF8, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, isk_11_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000006, 0x00000265, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000041, 0x00000041, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000050, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000006, 0x7FFFFE00, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EF8, 0x00000000, 0x00000043, 0x00000002, MakeTransformGroup, 0x00000050, 0x0000004E, 0x00000006, D_802429B8_98D3C8, 0x00000100, 0x00004000, D_802429B0_98D3C0, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000050, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000006, 0x7FFDFFFF, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x00000163, 0xFFFFFE34, 0x000001AE, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405EF8, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, isk_11_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000006, 0x00000265, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000041, 0x00000041, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000050, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000006, 0x7FFFFE00, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405EF8, 0x00000000, 0x00000043, 0x00000002, MakeTransformGroup, 0x00000050, 0x0000004E, 0x00000006, D_802429B8_98D3C8, 0x00000100, 0x00004000, D_802429B0_98D3C0, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000050, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000006, 0x7FFDFFFF, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_isk/isk_13/991A90.data.s b/ver/us/asm/data/world/area_isk/isk_13/991A90.data.s index 2b3c340243..af885b67d3 100644 --- a/ver/us/asm/data/world/area_isk/isk_13/991A90.data.s +++ b/ver/us/asm/data/world/area_isk/isk_13/991A90.data.s @@ -3,7 +3,7 @@ .section .data dlabel D_802422B0_991A90 -.word 0x00000024, 0x00000002, 0xF8405F02, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000015, 0x000001CC, 0xFFFFFDC8, 0xFFFFFEAA, 0x00000000, 0xF8405EF1, 0x0000000A, 0x00000002, 0xF8405F02, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer2Block_WideHitbox, 0x00000238, 0xFFFFFD76, 0xFFFFFED2, 0x00000019, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_802422B0_991A90, 0x00000013, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0xFFFFFE3B, 0xFFFFFEDD, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0xFFFFFDB9, 0xFFFFFEDD, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x000001E9, 0xFFFFFE3B, 0xFFFFFF7D, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x000001E9, 0xFFFFFDB9, 0xFFFFFF7D, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000024, 0x00000002, 0xF8405F02, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000015, 0x000001CC, 0xFFFFFDC8, 0xFFFFFEAA, 0x00000000, 0xF8405EF1, 0x0000000A, 0x00000002, 0xF8405F02, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer2Block_WideX, 0x00000238, 0xFFFFFD76, 0xFFFFFED2, 0x00000019, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_802422B0_991A90, 0x00000013, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0xFFFFFE3B, 0xFFFFFEDD, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x0000019F, 0xFFFFFDB9, 0xFFFFFEDD, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x000001E9, 0xFFFFFE3B, 0xFFFFFF7D, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0x000001E9, 0xFFFFFDB9, 0xFFFFFF7D, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80242460_991C40 .word 0x00000043, 0x00000001, isk_13_StoneChompFXA, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_isk/isk_14/9946D0.data.s b/ver/us/asm/data/world/area_isk/isk_14/9946D0.data.s index 3d236ecad2..e52fa8aa81 100644 --- a/ver/us/asm/data/world/area_isk/isk_14/9946D0.data.s +++ b/ver/us/asm/data/world/area_isk/isk_14/9946D0.data.s @@ -3,4 +3,4 @@ .section .data dlabel D_80241FA0_9946D0 -.word 0x00000024, 0x00000002, 0xF8405F03, 0x00000001, 0x00000043, 0x00000004, SetNpcVar, 0x00000001, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000017, 0xFFFFFE7B, 0xFFFFFD46, 0xFFFFFE58, 0x00000000, 0xF8405EF3, 0x0000000A, 0x00000002, 0xF8405F03, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer2Block_WideHitbox, 0xFFFFFE05, 0xFFFFFCF4, 0xFFFFFE74, 0x0000008F, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80241FA0_9946D0, 0x00000013, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFE35, 0xFFFFFDB9, 0xFFFFFF2A, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFE9A, 0xFFFFFDB9, 0xFFFFFE9A, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFE35, 0xFFFFFD37, 0xFFFFFF2A, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 +.word 0x00000024, 0x00000002, 0xF8405F03, 0x00000001, 0x00000043, 0x00000004, SetNpcVar, 0x00000001, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000017, 0xFFFFFE7B, 0xFFFFFD46, 0xFFFFFE58, 0x00000000, 0xF8405EF3, 0x0000000A, 0x00000002, 0xF8405F03, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer2Block_WideX, 0xFFFFFE05, 0xFFFFFCF4, 0xFFFFFE74, 0x0000008F, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80241FA0_9946D0, 0x00000013, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFE35, 0xFFFFFDB9, 0xFFFFFF2A, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFE9A, 0xFFFFFDB9, 0xFFFFFE9A, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000001, 0xFFFFFE35, 0xFFFFFD37, 0xFFFFFF2A, 0xF24A7BB4, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_00/90CF20.data.s b/ver/us/asm/data/world/area_iwa/iwa_00/90CF20.data.s deleted file mode 100644 index 2614a45f0d..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_00/90CF20.data.s +++ /dev/null @@ -1,108 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802402E0_90CF20 -.word 0x425C0000, 0xC0A00000, 0xC1C80000, 0x42B40000, 0x44A42000, 0x42B40000, 0xC2200000, 0x43870000, 0x441C4000, 0xC1F00000, 0x43818000, 0x42340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_802404E4_90D124, D_802402E0_90CF20, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x0019005A - -dlabel D_80240350_90CF90 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000000, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80242A60, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802403AC_90CFEC -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000001, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80242A68, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240408_90D048 -.word 0x00000043, 0x00000003, EnableTexPanning, 0x00000017, 0x00000001, 0x00000043, 0x00000003, EnableTexPanning, 0x00000016, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000BB8, 0x00000043, 0x00000005, SetTexPanOffset, 0x00000001, 0x00000000, 0x00000000, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024049C_90D0DC -.word 0x00000047, 0x00000005, D_80240350_90CF90, 0x00080000, 0x00000001, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_802403AC_90CFEC, 0x00080000, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802404E4_90D124 -.word 0x00000024, 0x00000002, 0xF5DE0329, 0x00000008, 0x00000043, 0x00000002, SetSpriteShading, 0xFFFFFFFF, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000019, 0x00000010, 0x00001000, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000043, 0x00000003, MakeNpcs, 0x00000001, D_80242780_90F3C0, 0x00000046, 0x00000001, D_80240640_90D280, 0x00000044, 0x00000001, D_80240408_90D048, 0x00000044, 0x00000001, D_802429F8_90F638, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000016, 0x00000000, 0x00000008, 0x00000043, 0x00000006, PlaySoundAtF, 0x8000000B, 0x00000001, 0x00000023, 0xFFFFFFB0, 0xFFFFFF88, 0x00000043, 0x00000006, PlaySoundAtF, 0x8000000C, 0x00000001, 0x000001F4, 0x00000055, 0xFFFFFF88, 0x00000024, 0x00000002, 0xFE363C80, D_8024049C_90D0DC, 0x00000044, 0x00000001, EnterWalk, 0x00000008, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240620_90D260 -.word 0x00000024, 0x00000002, 0xF8405E4F, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240640_90D280 -.word 0x0000000A, 0x00000002, 0xF8405E4F, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer1Block_TallHitbox, 0x00000384, 0xFFFFFFE2, 0x000000DC, 0x00000000, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80240620_90D260, 0x00000013, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000157, 0x00000195, 0x00000019, 0x00000019, 0x00000011, 0xF8405E33, 0x00000043, 0x00000007, MakeItemEntity, 0x00000157, 0x000001D1, 0x00000035, 0x00000019, 0x00000011, 0xF8405E34, 0x00000043, 0x00000007, MakeItemEntity, 0x00000157, 0x00000203, 0x0000005C, 0x00000019, 0x00000011, 0xF8405E35, 0x00000043, 0x00000008, MakeEntity, Entity_YellowBlock, 0x000004EC, 0x0000001E, 0x0000008C, 0x00000000, 0x0000008F, 0x80000000, 0x00000043, 0x00000002, AssignBlockFlag, 0xF8405E4B, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0x0000003A, 0xFFFFFFFB, 0xFFFFFFB7, 0xFFFFFFE2, 0x0000005A, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0x0000039E, 0x00000046, 0xFFFFFFD3, 0x00000016, 0x0000005A, 0x80000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240790_90D3D0 -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024082C_90D46C -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F0012, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802408AC_90D4EC -.word 0x3FE66666, 0x0000001E, 0x0000001E, 0x42B40000, 0x428C0000, 0x00000002, 0x40400000, 0x0000005A, 0x00000019, 0x42F00000, 0x428C0000, 0x00000001 - -dlabel D_802408DC_90D51C -.word 0x00000043, 0x00000002, func_800445D4, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000064, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000001, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, IsPlayerWithin, 0xFE363C80, 0xFE363C82, 0x00000050, 0xFE363C83, 0x0000000B, 0x00000002, 0xFE363C83, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetSelfNpcID, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C82, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F000E, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0x00000027, 0x00000002, 0xFE363C85, 0x0000001E, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFF, 0xF24A7E80, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFF, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0x00000014, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C80, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000000, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x40000000, 0x00000001, 0x00000043, 0x00000002, BasicAI_Main, D_802408AC_90D4EC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240B28_90D768 -.word 0x00000000, 0x00180016, D_80240790_90D3D0, 0x00000000, D_802408DC_90D51C, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_80240B54_90D794 -.word 0x00000000, 0x00180016, D_8024082C_90D46C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_80240B80_90D7C0 -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000032, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240C04_90D844 -.word 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00040000, 0x00000001, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000032, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F0013, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240C9C_90D8DC -.word 0x3FE66666, 0x0000001E, 0x0000001E, 0x42B40000, 0x428C0000, 0x00000002, 0x40400000, 0x0000005A, 0x00000019, 0x42F00000, 0x428C0000, 0x00000001 - -dlabel D_80240CCC_90D90C -.word 0x00000043, 0x00000002, func_800445D4, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000064, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000001, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C82, 0x00000082, 0x00000043, 0x00000005, IsPlayerWithin, 0xFE363C80, 0xFE363C82, 0x00000050, 0xFE363C83, 0x0000000B, 0x00000002, 0xFE363C83, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetSelfNpcID, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C82, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C83, 0x00000032, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000040, 0x00000001, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F000E, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000028, 0x00000002, 0xFE363C82, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C83, 0x00000050, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFF, 0xF24A7D4D, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFF, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000014, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000040, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000000, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x40000000, 0x00000001, 0x00000013, 0x00000000, 0x00000043, 0x00000002, BasicAI_Main, D_80240C9C_90D8DC, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240F74_90DBB4 -.word 0x00000000, 0x00180016, D_80240B80_90D7C0, 0x00000000, D_80240CCC_90D90C, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_80240FA0_90DBE0 -.word 0x00000000, 0x00180016, D_80240C04_90D844, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_80240FCC_90DC0C -.word 0x00000000, 0x001E001A, 0x00000000, 0x00000000, 0x00000000, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00630000 - -dlabel iwa_00_varStash -.word 0x00000000, 0x00000043, 0x00000004, ShowGotItem, 0xFE363C80, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ShowGotItem, 0xFE363C80, 0x00000001, 0x00000010, 0x00000002, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024105C_90DC9C -.word 0x00000000, D_80240B28_90D768, 0x445C0000, 0x428C0000, 0x42860000, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800A00A4, 0x000A0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980002, 0x3FFF2666, 0x4CCC0002, 0x3FFF3FFF, 0x3FFF0002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0x00000370, 0x00000046, 0x00000043, 0x00000032, 0x00000000, 0xFFFF8001, 0x00000000, 0x00000370, 0x00000046, 0x00000043, 0x00000078, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0019, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0019, 0x002F0019, 0x002F0009, 0x002F0009, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000001, D_80240B54_90D794, 0x445C0000, 0x428C0000, 0x42860000, 0x00000F21, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000370, 0x00000046, 0x00000043, 0x00000000, 0x00000000, 0xFFFF8001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0019, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0019, 0x002F0019, 0x002F0009, 0x002F0009, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_8024143C_90E07C -.word 0x00000002, D_80240F74_90DBB4, 0x44988000, 0xC1F00000, 0x428C0000, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800A00A4, 0x000A0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980002, 0x3FFF2666, 0x4CCC0002, 0x3FFF3FFF, 0x3FFF0002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0x000004C4, 0xFFFFFFE2, 0x00000046, 0x00000032, 0x00000000, 0xFFFF8001, 0x00000000, 0x000004C4, 0xFFFFFFE2, 0x00000046, 0x00000078, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0019, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0019, 0x002F0019, 0x002F0009, 0x002F0009, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000003, D_80240FA0_90DBE0, 0x44988000, 0xC1F00000, 0x428C0000, 0x00000F21, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000004C4, 0xFFFFFFE2, 0x00000046, 0x00000000, 0x00000000, 0xFFFF8001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0019, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0019, 0x002F0019, 0x002F0009, 0x002F0009, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_8024181C_90E45C -.word 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x0000000C, 0x00000002, 0xFE363C80, 0xFE363C83, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000010E, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000005A, 0x00000000, 0x00000013, 0x00000000, 0x00000014, 0x00000001, 0xF5DE01FB, 0x00000016, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405E52, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00920005, 0x00920001, 0x00000000, 0x000D0027, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00920005, 0x00920001, 0x00000000, 0x000D0028, 0x00000013, 0x00000000, 0x0000001A, 0x00000001, 0x00000002, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00920005, 0x00920001, 0x00000000, 0x000D0028, 0x0000001A, 0x00000001, 0x00000004, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00920005, 0x00920001, 0x00000000, 0x000D0029, 0x0000001A, 0x00000001, 0x00000006, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00920005, 0x00920001, 0x00000000, 0x000D002A, 0x0000001C, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00920005, 0x00920001, 0x00000000, 0x000D002B, 0x00000023, 0x00000000, 0x00000024, 0x00000002, 0xF8405E52, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802419EC_90E62C -.word 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00920001, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C8A, 0xFE363C8B, 0xFE363C8C, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000005, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000F, 0x00000002, 0xFE363C81, 0x00000014, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000258, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x0000000D, 0x00000002, 0xFE363C80, 0x00000352, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0xFE363C8A, 0xFE363C8B, 0xFE363C8C, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000321, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00920002, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000005, SetNpcPos, 0x00000005, 0xFE363C8A, 0xFE363C8B, 0xFE363C8C, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00920001, 0x00000008, 0x00000001, 0x0000001E, 0x00000003, 0x00000001, 0x0000000A, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000E, 0x00000002, 0xFE363C80, 0x00000384, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00920003, 0x00000043, 0x00000005, SetNpcPos, 0x00000005, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241C6C_90E8AC -.word 0x00000043, 0x00000002, GetOwnerEncounterTrigger, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000004, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000001, 0x00000016, 0x00000001, 0x00000006, 0x00000043, 0x00000002, GetCurrentPartnerID, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000002, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000002, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000003, 0x00000013, 0x00000000, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000023, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000003, BindNpcInteract, 0x00000004, 0x00000000, 0x00000043, 0x00000003, EnableNpcAI, 0x00000004, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x0000000C, 0x00000002, 0xFE363C80, 0xFE363C83, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000010E, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000005A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000001, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xF5DE01FB, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C8A, 0x00000003, 0x00000027, 0x00000002, 0xF5DE01FB, 0x00000001, 0x00000013, 0x00000000, 0x00000014, 0x00000001, 0xFE363C8A, 0x0000001D, 0x00000001, 0x00000002, 0x0000001D, 0x00000001, 0x00000003, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000004, 0x000000E1, 0x00000000, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000014, 0x00000001, 0xFE363C8A, 0x0000001D, 0x00000001, 0x00000001, 0x0000001D, 0x00000001, 0x00000002, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00920004, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000005, GetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000E, 0x00000012, 0x00000000, 0x00000028, 0x00000002, 0xFE363C80, 0x0000000E, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C82, 0x00000002, 0x00000043, 0x00000007, MakeItemEntity, 0x00000093, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000D, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00920001, 0x00000008, 0x00000001, 0x00000005, 0x00000020, 0x00000000, 0x00000016, 0x00000001, 0x00000003, 0x00000043, 0x00000005, GetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000028, 0x00000002, 0xFE363C80, 0x00000002, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000027, 0x00000002, 0xFE363C80, 0x00000002, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000028, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x0000000C, 0x00000002, 0xF5DE01FB, 0x00000008, 0x00000014, 0x00000001, 0xFE363C8A, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00920005, 0x00920001, 0x00000000, 0x000D002C, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00920005, 0x00920001, 0x00000000, 0x000D002D, 0x00000016, 0x00000001, 0x00000003, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00920005, 0x00920001, 0x00000000, 0x000D002E, 0x00000023, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00920003, 0x00000008, 0x00000001, 0x0000000F, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00920005, 0x00920001, 0x00000000, 0x000D002F, 0x00000008, 0x00000001, 0x00000002, 0x00000013, 0x00000000, 0x0000000F, 0x00000002, 0xF5DE01FB, 0x00000008, 0x00000043, 0x00000001, func_80240118_90CD58, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000005, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000043, 0x00000002, RemoveNpc, 0x00000004, 0x00000043, 0x00000002, RemoveNpc, 0x00000005, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024228C_90EECC -.word 0x00000043, 0x00000004, SetNpcVar, 0x00000004, 0x00000008, 0x00000000, 0x0000000C, 0x00000002, 0xF5DE01FB, 0x00000008, 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_8024181C_90E45C, 0x00000043, 0x00000003, BindNpcIdle, 0xFFFFFFFF, D_802419EC_90E62C, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00200000, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, RemoveNpc, 0xFFFFFFFF, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242338_90EF78 -.word 0x0000000C, 0x00000002, 0xF5DE01FB, 0x00000008, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, BindNpcHit, 0xFFFFFFFF, D_80241C6C_90E8AC, 0x00000012, 0x00000000, 0x00000043, 0x00000002, RemoveNpc, 0xFFFFFFFF, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802423A0_90EFE0 -.word 0x00000004, D_80240FCC_90DC0C, 0x44354000, 0xC1F00000, 0x43610000, 0x00400D05, D_8024228C_90EECC, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00000000, 0x00000000, 0x00000000, 0x001A0089, 0x00000005, D_80240FCC_90DC0C, 0x44354000, 0xC1F00000, 0x43610000, 0x03704F0C, D_80242338_90EF78, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00920001, 0x00000000, 0x00000000, 0x00000000, 0x001A0089 - -dlabel D_80242780_90F3C0 -.word 0x00000002, D_8024105C_90DC9C, 0x09060002, 0x00000002, D_8024143C_90E07C, 0x09070002, 0x00000002, D_802423A0_90EFE0, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_802427B0_90F3F0 -.word 0x43870000, 0x3ECCCCCD, 0xBD4CCCCD, 0x41A00000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_802427D0_90F410 -.word 0x00000024, 0x00000002, 0xFE363C80, D_802427B0_90F3F0, 0x00000043, 0x00000001, func_802402B0_90CEF0, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802427FC_90F43C -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000000, 0x000020A2, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000050, 0x0000000A, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateModel, 0x0000001E, 0xFE363C80, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000000, 0x7FFFFE00, 0x00000043, 0x00000004, PlayerMoveTo, 0x0000021F, 0x00000011, 0x00000014, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000000, 0x000020A2, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000050, 0x00000000, 0x0000001E, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateModel, 0x0000001E, 0xFE363C80, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000000, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802429F8_90F638 -.word 0x00000047, 0x00000005, D_802427FC_90F43C, 0x00000100, 0x00000000, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_802427D0_90F410, 0x00000080, 0x0000000C, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000003, 0x0000000C, 0x00000005, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_01/912990.data.s b/ver/us/asm/data/world/area_iwa/iwa_01/912990.data.s deleted file mode 100644 index 4e160b2c57..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_01/912990.data.s +++ /dev/null @@ -1,33 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802432E0_912990 -.word 0xC4448000, 0x427C0000, 0x43A18000, 0x42B40000, 0xC4408000, 0x43230000, 0x42340000, 0x42B40000, 0x446F8000, 0x432A0000, 0x432D0000, 0x43870000, 0x44774000, 0x43B90000, 0x436B0000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_80243708_912DB8, D_802432E0_912990, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x0019005B - -dlabel D_80243360_912A10 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000000, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80246350, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802433BC_912A6C -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000001, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80246358, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80243418_912AC8 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000002, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80246360, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80243474_912B24 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000003, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80246360, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802434D0_912B80 -.word 0x00000043, 0x00000003, EnableTexPanning, 0x00000018, 0x00000001, 0x00000043, 0x00000003, EnableTexPanning, 0x00000021, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000028, 0x00000002, 0xFE363C80, 0x00000BB8, 0x00000043, 0x00000005, SetTexPanOffset, 0x00000001, 0x00000000, 0x00000000, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80243568_912C18 -.word 0x00000043, 0x00000003, EnableTexPanning, 0x00000022, 0x00000001, 0x00000043, 0x00000003, EnableTexPanning, 0x00000023, 0x00000001, 0x00000043, 0x00000003, EnableTexPanning, 0x00000024, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, SetTexPanOffset, 0x0000000C, 0x00000000, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, SetTexPanOffset, 0x0000000D, 0x00000000, 0x00000000, 0xFE363C81, 0x00000027, 0x00000002, 0xFE363C80, 0x00008000, 0x00000027, 0x00000002, 0xFE363C81, 0x00008000, 0x00000008, 0x00000001, 0x00000002, 0x00000043, 0x00000005, SetTexPanOffset, 0x0000000D, 0x00000000, 0x00000000, 0xFE363C81, 0x00000027, 0x00000002, 0xFE363C81, 0x00008000, 0x00000008, 0x00000001, 0x00000002, 0x00000004, 0x00000001, 0x0000000A, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80243688_912D38 -.word 0x00000047, 0x00000005, D_80243360_912A10, 0x00080000, 0x00000004, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_802433BC_912A6C, 0x00080000, 0x00000006, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80243418_912AC8, 0x00080000, 0x00000019, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80243474_912B24, 0x00080000, 0x00000020, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80243708_912DB8 -.word 0x00000024, 0x00000002, 0xF5DE0329, 0x00000008, 0x00000043, 0x00000002, SetSpriteShading, 0xFFFFFFFF, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000019, 0x00000010, 0x00001000, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000043, 0x00000003, MakeNpcs, 0x00000001, 0x80245DB0, 0x00000046, 0x00000001, D_802438B0_912F60, 0x00000044, 0x00000001, D_802434D0_912B80, 0x00000044, 0x00000001, D_80243568_912C18, 0x00000046, 0x00000001, 0x80243EC8, 0x00000044, 0x00000001, 0x802462F0, 0x00000044, 0x00000001, 0x80246290, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000016, 0x00000000, 0x00000008, 0x00000043, 0x00000006, PlaySoundAtF, 0x8000000D, 0x00000001, 0xFFFFFDC6, 0xFFFFFF4C, 0x000001A9, 0x00000043, 0x00000006, PlaySoundAtF, 0x8000000E, 0x00000001, 0x000002E4, 0xFFFFFF56, 0x0000014A, 0x00000043, 0x00000002, GetLoadType, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000044, 0x00000001, EnterSavePoint, 0x00000044, 0x00000001, D_80243688_912D38, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, D_80243688_912D38, 0x00000044, 0x00000001, EnterWalk, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802438B0_912F60 -.word 0x00000043, 0x00000007, MakeEntity, Entity_SavePoint, 0xFFFFFD76, 0x0000007B, 0x00000177, 0x00000000, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0xFFFFFE09, 0x0000003F, 0x000000E1, 0x00000000, 0x0000005A, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0x00000339, 0x000000AA, 0x00000073, 0x00000000, 0x0000005A, 0x80000000, 0x00000043, 0x00000007, MakeItemEntity, 0x000000E8, 0x000000A0, 0x0000007D, 0x0000007D, 0x00000011, 0xF8405E2E, 0x00000043, 0x00000007, MakeItemEntity, 0x00000036, 0x0000019A, 0x0000008C, 0x00000087, 0x00000000, 0xF8405E41, 0x00000043, 0x00000008, MakeEntity, Entity_HiddenPanel, 0x0000002D, 0x0000000A, 0x0000003C, 0x00000000, 0x00000002, 0x80000000, 0x00000043, 0x00000002, AssignPanelFlag, 0xF8405E4D, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_01/913070.data.s b/ver/us/asm/data/world/area_iwa/iwa_01/913070.data.s deleted file mode 100644 index 563118a349..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_01/913070.data.s +++ /dev/null @@ -1,12 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802439C0_913070 -.word 0x00000000, 0x00000000, 0x00000011, 0x00000000, 0x00000000, 0x00000011, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0E000022, 0x00000000, 0x00000000, 0x00000091, 0x00000000, 0x25000000, 0x00000000, 0x0000CCCC, 0x4D00071F, 0x00003A00, 0x000000CC, 0xCC441A00, 0x00000000, 0x00000000, 0x29000001, 0x0000CCCC, 0x9D000000, 0x00000000, 0x000026B9, 0xCC9E0000, 0x00000000, 0x00000007, 0x0000001D, 0x00004DCC, 0x00003900, 0x00000000, 0x000029CC, 0xCC004800, 0x00000000, 0x00000008, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x30350000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x4F0032BA, 0x6A000000, 0x00000000, 0x000000CC, 0xCC260000, 0xCCCC0A00, 0x0000008D, 0xA800002A, 0x00000000, 0x00000000, 0x00000000, 0x000000CC, 0xCCA10028, 0xCCCC0000, 0x000000B2, 0x000000B3, 0xB3000006, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00230000, 0x000094CC, 0xCC920000, 0x00003830, 0x00000000, 0x00000000, 0x005E0400, 0x00003600, 0x1F000026, 0x0000CCCC, 0xCCCC0017, 0x0078B3CC, 0x24000000, 0x007BB800, 0x00CCCC42, 0x00CCCC3B, 0x0000CCCC, 0x000000CC, 0xBA00001E, 0x0000CCCC, 0x4D000000, 0x00006506, 0x00CCB900, 0x00CCBA00, 0x0000CCCC, 0x49000000, 0x00000000, 0x0000CCA6, 0x4D000000, 0x00B9A3BD, 0x00001800, 0x00000000, 0x00000DB3, 0x0000A64F, 0x0000CCCC, 0x00000000, 0x00000000, 0x00000000, 0x00000033, 0x00740000, 0x00000000, 0x0000CCCC, 0x0000CCCC, 0x00000400, 0x00000000, 0x00000000, 0x00001785, 0x0000164D, 0x4D002C00, 0x0060CCCC, 0x1500CCCC, 0x00000000, 0x00008C26, 0x0000B3B3, 0x0E00AB7B, 0x1200CCCC, 0xCC000000, 0x004DCCCC, 0x00000000, 0xBAB3CC59, 0x00490049, 0x0029CCCC, 0x00000600, 0x0000CCCC, 0xCC4D0000, 0x00000000, 0x0000000E, 0xCCCCCC36, 0x00002B49, 0x005A0016, 0x00000014, 0x1F004DCC, 0xCC000000, 0x0A000000, 0x08AF2600, 0xCCCCCCB6, 0x0000001B, 0x00000000, 0x00002C47, 0x00000000, 0x00000000, 0x0000004C, 0x7B2B0000, 0x00001A00, 0x00000000, 0x00000000, 0x5E004D4D, 0x00003600, 0x0000AB00, 0x4887203A, 0xCCCC6F00, 0x00000E2B, 0xC8590000, 0x00002900, 0x0000B39A, 0x26000000, 0x00450000, 0x0000003F, 0xCCCC3A00, 0x00000081, 0x68000000, 0x004B0000, 0x0057CCB3, 0x57000000, 0x0084CCB3, 0x07004C00, 0x001B0000, 0x4DCC0000, 0xB8560000, 0x00000000, 0x00007DA4, 0x00002900, 0x0099CCB3, 0x0A000000, 0x00000014, 0xB3B38300, 0x00860000, 0x000000B3, 0xCC000000, 0x39020000, 0x00040000, 0x00000036, 0x00000000, 0xCCB35400, 0x00000A00, 0x220000B3, 0xB3000000, 0xB3CC9500, 0x00000000, 0x00000000, 0x0000003A, 0xCCCC5900, 0x1D0D0000, 0x0000006A, 0x6F00000D, 0xCCCC2400, 0x00000000, 0x00004D4D, 0x1B520000, 0x00000000, 0x00000000, 0x00030000, 0x00000000, 0x5E000000, 0x43CCCC23, 0x0030CC74, 0x00000000, 0x00000000, 0x008E4633, 0x00190700, 0x00000000, 0x00000000, 0x00CCCC00, 0x00000000, 0x00000026, 0x46007E55, 0x00000000, 0x00000017, 0x000D0055, 0x83009F00, 0x00000000, 0x007D0000, 0x3A2B0000, 0x06006200, 0x00000000, 0x00000000, 0x0000001B, 0x53550000, 0x81000000, 0x00A52D00, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x02730000, 0x00005A2A, 0x00000300, 0x00000000, 0x00000000 - -dlabel D_80243DC0_913470 -.word 0xFFECFFEC, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x0014FFEC, 0x00000000, 0x04000000, 0xFFFFFFFF, 0x00140014, 0x00000000, 0x04000400, 0xFFFFFFFF, 0xFFEC0014, 0x00000000, 0x00000400, 0xFFFFFFFF - -dlabel D_80243E00_9134B0 -.word 0xE7000000, 0x00000000, 0xE3000A01, 0x00000000, 0xE200001C, 0x00404A50, 0xD7000002, 0xFFFFFFFF, 0xE7000000, 0x00000000, 0xE2001E01, 0x00000001, 0xFCFF97FF, 0xFF2DFEFF, 0xE3000D01, 0x00000000, 0xE3000F00, 0x00000000, 0xFD900000, D_802439C0_913070, 0xF5900000, 0x07094250, 0xE6000000, 0x00000000, 0xF3000000, 0x071FF200, 0xE7000000, 0x00000000, 0xF5880800, 0x00094250, 0xF2000000, 0x0007C07C, 0xE3000C00, 0x00080000, 0xE3001001, 0x00000000, 0xE3001201, 0x00002000, 0xE3001402, 0x00000C00, 0xD9C0F9FB, 0x00000000, 0xD9FFFFFF, 0x00000005, 0x01004008, D_80243DC0_913470, 0x06000204, 0x00000406, 0xDF000000, 0x00000000, 0x00000043, 0x00000001, func_80240398_90FA48, 0x00000043, 0x00000004, SetCustomGfxBuilders, 0x00000000, 0x00000000, func_80240000_90F6B0, 0x00000043, 0x00000004, SetModelCustomGfx, 0x0000001A, 0x00000000, 0xFFFFFFFF, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_01/9135D0.data.s b/ver/us/asm/data/world/area_iwa/iwa_01/9135D0.data.s deleted file mode 100644 index 93a431b375..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_01/9135D0.data.s +++ /dev/null @@ -1,84 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80243F20_9135D0 -.word 0x00000043, 0x00000002, GetBattleOutcome, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000000, 0x00000005, 0x00000043, 0x00000002, RemoveNpc, 0xFFFFFFFF, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000002, OnPlayerFled, 0x00000001, 0x00000016, 0x00000001, 0x00000003, 0x00000043, 0x00000004, SetEnemyFlagBits, 0xFFFFFFFF, 0x00000010, 0x00000001, 0x00000043, 0x00000002, RemoveNpc, 0xFFFFFFFF, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80243FF0_9136A0 -.word 0x3FD9999A, 0x0000005A, 0x00000000, 0x42DC0000, 0x00000000, 0x00000002, 0x40F00000, 0x00000000, 0x00000000, 0x42DC0000, 0x00000000, 0x00000001 - -dlabel D_80244020_9136D0 -.word 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00200002, 0x00000001, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000003, RandInt, 0x0000000F, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000F, 0x00000008, 0x00000001, 0xFE363C80, 0x00000043, 0x00000002, iwa_01_MontyMoleAI_Main, D_80243FF0_9136A0, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802440A8_913758 -.word 0x00000000, 0x00140018, 0x00000000, 0x00000000, D_80244020_9136D0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00080008 - -dlabel D_802440D4_913784 -.word 0x4104CCCD, 0x00000000, 0x00000000, 0x40200000, 0x3ECCCCCD, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80244104_9137B4 -.word 0x00000043, 0x00000003, SetSelfVar, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000002, 0x00000011, 0x00000043, 0x00000003, SetSelfVar, 0x00000003, 0x00000011, 0x00000043, 0x00000002, iwa_01_ProjectileAI_Main, D_802440D4_913784, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80244174_913824 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80244184_913834 -.word 0x00000043, 0x00000001, iwa_01_GetEncounterEnemyIsOwner, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, BindNpcAI, 0xFFFFFFFF, D_80244174_913824, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000100, 0x00000001, 0x00000043, 0x00000002, GetOwnerEncounterTrigger, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x0000001D, 0x00000001, 0x00000004, 0x0000001D, 0x00000001, 0x00000003, 0x00000043, 0x00000003, SetSelfVar, 0x00000000, 0x00000003, 0x00000043, 0x00000001, iwa_01_ProjectileAI_Reflect, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000020, 0x00000000, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000003, SetSelfVar, 0x00000000, 0x00000004, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x0000000F, PlayEffect, 0x00000007, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000000, 0x00000000, 0x00000020, 0x00000000, 0x0000001C, 0x00000000, 0x00000043, 0x00000001, func_800457F8, 0x00000020, 0x00000000, 0x00000023, 0x00000000, 0x00000043, 0x00000003, BindNpcAI, 0xFFFFFFFF, D_80244104_9137B4, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80244358_913A08 -.word 0x00000000, 0x000C000C, 0x00000000, 0x00000000, D_80244104_9137B4, D_80244184_913834, 0x00000000, D_80243F20_9135D0, 0x00000000, 0x00000000, 0x00000008 - -dlabel D_80244384_913A34 -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80244420_913AD0 -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F0012, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802444A0_913B50 -.word 0x3FE66666, 0x0000001E, 0x0000001E, 0x42B40000, 0x428C0000, 0x00000002, 0x40400000, 0x0000005A, 0x00000019, 0x42F00000, 0x428C0000, 0x00000001 - -dlabel D_802444D0_913B80 -.word 0x00000043, 0x00000002, func_800445D4, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000064, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000001, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, IsPlayerWithin, 0xFE363C80, 0xFE363C82, 0x00000050, 0xFE363C83, 0x0000000B, 0x00000002, 0xFE363C83, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetSelfNpcID, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C82, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F000E, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0x00000027, 0x00000002, 0xFE363C85, 0x0000001E, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFF, 0xF24A7E80, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFF, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0x00000014, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C80, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000000, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x40000000, 0x00000001, 0x00000043, 0x00000002, BasicAI_Main, D_802444A0_913B50, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00180016, D_80244384_913A34, 0x00000000, D_802444D0_913B80, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00080001, 0x00000000, 0x00180016, D_80244420_913AD0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_80244774_913E24 -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000032, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802447F8_913EA8 -.word 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00040000, 0x00000001, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000032, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F0013, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80244890_913F40 -.word 0x3FE66666, 0x0000001E, 0x0000001E, 0x42B40000, 0x428C0000, 0x00000002, 0x40400000, 0x0000005A, 0x00000019, 0x42F00000, 0x428C0000, 0x00000001 - -dlabel D_802448C0_913F70 -.word 0x00000043, 0x00000002, func_800445D4, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000064, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000001, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C82, 0x00000082, 0x00000043, 0x00000005, IsPlayerWithin, 0xFE363C80, 0xFE363C82, 0x00000050, 0xFE363C83, 0x0000000B, 0x00000002, 0xFE363C83, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetSelfNpcID, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C82, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C83, 0x00000032, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000040, 0x00000001, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F000E, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000028, 0x00000002, 0xFE363C82, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C83, 0x00000050, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFF, 0xF24A7D4D, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFF, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000014, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000040, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000000, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x40000000, 0x00000001, 0x00000013, 0x00000000, 0x00000043, 0x00000002, BasicAI_Main, D_80244890_913F40, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80244B68_914218 -.word 0x00000000, 0x00180016, D_80244774_913E24, 0x00000000, D_802448C0_913F70, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_80244B94_914244 -.word 0x00000000, 0x00180016, D_802447F8_913EA8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_80244BC0_914270 -.word 0x3F800000, 0x0000001E, 0x0000001E, 0x42F00000, 0x00000000, 0x00000003, 0x40E00000, 0x0000003C, 0x00000005, 0x42C80000, 0x42700000, 0x00000001 - -dlabel D_80244BF0_9142A0 -.word 0x00000043, 0x00000003, iwa_01_CleftAI_Main, D_80244BC0_914270, 0x00000010, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80244C14_9142C4 -.word 0x00000000, 0x001A0018, 0x00000000, 0x00000000, D_80244BF0_9142A0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000 - -dlabel D_80244C40_9142F0 -.word 0x00000000, D_80244B68_914218, 0x43AA0000, 0x428C0000, 0x42CA0000, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800A00A4, 0x000A0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980002, 0x3FFF2666, 0x4CCC0002, 0x3FFF3FFF, 0x3FFF0002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0x00000159, 0x00000046, 0x000000F5, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0x000001A9, 0x00000046, 0x000000F5, 0x00000091, 0x0000012C, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0019, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0019, 0x002F0019, 0x002F0009, 0x002F0009, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000001, D_80244B94_914244, 0x43AA0000, 0x428C0000, 0x42CA0000, 0x00800F21, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFF8001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0019, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0019, 0x002F0019, 0x002F0009, 0x002F0009, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x00000001, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80245020_9146D0 -.word 0x00000002, D_802440A8_913758, 0xC37A0000, 0x41200000, 0x43820000, 0x00000800, 0x00000000, 0x00000000, 0x00000000, 0x0000005A, 0x800A00A4, 0x000A0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980002, 0x3FFF2666, 0x4CCC0002, 0x3FFF3FFF, 0x3FFF0002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0xFFFFFF06, 0x0000000A, 0x00000104, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0xFFFFFF06, 0x0000000A, 0x00000104, 0x000000B4, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0001, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0001, 0x002F0001, 0x002F0005, 0x002F0005, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000003, D_80244358_913A08, 0x00000000, 0xC47A0000, 0x00000000, 0x00800C00, 0x00000000, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000000, 0x00000000, 0xFFFF8001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80245400_914AB0 -.word 0x00000004, D_802440A8_913758, 0xC32F0000, 0x41200000, 0x43700000, 0x00000800, 0x00000000, 0x00000000, 0x00000000, 0x0000010E, 0x800A00A4, 0x000A0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980002, 0x3FFF2666, 0x4CCC0002, 0x3FFF3FFF, 0x3FFF0002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0xFFFFFF51, 0x0000000A, 0x000000F0, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0xFFFFFF51, 0x0000000A, 0x000000F0, 0x000000B4, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0001, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0001, 0x002F0001, 0x002F0005, 0x002F0005, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000005, D_80244358_913A08, 0x00000000, 0xC47A0000, 0x00000000, 0x00800C00, 0x00000000, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000000, 0x00000000, 0xFFFF8001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_802457E0_914E90 -.word 0x00000006, D_802440A8_913758, 0xC25C0000, 0x41200000, 0x43340000, 0x00000800, 0x00000000, 0x00000000, 0x00000000, 0x0000010E, 0x800A00A4, 0x000A0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980002, 0x3FFF2666, 0x4CCC0002, 0x3FFF3FFF, 0x3FFF0002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0xFFFFFFC9, 0x0000000A, 0x000000B4, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0xFFFFFFC9, 0x0000000A, 0x000000B4, 0x000000B4, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0001, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0001, 0x002F0001, 0x002F0005, 0x002F0005, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x002F0000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000007, D_80244358_913A08, 0x00000000, 0xC47A0000, 0x00000000, 0x00800C00, 0x00000000, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000000, 0x00000000, 0xFFFF8001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x002F000F, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80245BC0_915270 -.word 0x00000008, D_80244C14_9142C4, 0xC4244000, 0x43230000, 0x431B0000, 0x00000C00, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980003, 0x3FFF2666, 0x4CCC0003, 0x3FFF3FFF, 0x3FFF0003, 0x33326665, 0x33320003, 0x33327FFF, 0x26660003, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00030000, 0xFFFFFD81, 0x000000A3, 0x00000064, 0x00000000, 0x00000000, 0xFFFF8001, 0x00000000, 0xFFFFFD71, 0x00000000, 0x0000007D, 0x0000007D, 0x0000007D, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00300002, 0x00300006, 0x00300007, 0x00300007, 0x00300002, 0x00300002, 0x00300008, 0x00300008, 0x00300014, 0x00300017, 0x00300013, 0x00300015, 0x00300010, 0x00300011, 0x00300016, 0x00300000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000002, D_80244C40_9142F0, 0x09060002, 0x00000002, D_80245020_9146D0, 0x09070002, 0x00000002, D_80245400_914AB0, 0x09060002, 0x00000002, D_802457E0_914E90, 0x09070002, 0x00000001, D_80245BC0_915270, 0x09040002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_01/9154B0.data.s b/ver/us/asm/data/world/area_iwa/iwa_01/9154B0.data.s deleted file mode 100644 index 9cf536dd7c..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_01/9154B0.data.s +++ /dev/null @@ -1,21 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80245E00_9154B0 -.word 0x42B40000, 0x3F000000, 0xBF000000, 0x41800000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80245E20_9154D0 -.word 0x43870000, 0x3F000000, 0xBE3851EC, 0x41900000, 0x412F8BAC, 0xBEAE147B, 0x3B449BA6, 0xBC449BA6 - -dlabel D_80245E40_9154F0 -.word 0x00000024, 0x00000002, 0xFE363C80, D_80245E00_9154B0, 0x00000043, 0x00000001, func_802432B0_912960, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80245E6C_91551C -.word 0x00000024, 0x00000002, 0xFE363C80, D_80245E20_9154D0, 0x00000043, 0x00000001, func_802432B0_912960, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80245E98_915548 -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000031, 0x000020A2, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFFFFFFB0, 0x0000000A, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateModel, 0x00000026, 0xFE363C80, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000031, 0x7FFFFE00, 0x00000043, 0x00000004, PlayerMoveTo, 0xFFFFFE48, 0x0000003C, 0x0000001E, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000031, 0x000020A2, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFFB0, 0x00000000, 0x0000001E, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateModel, 0x00000026, 0xFE363C80, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000031, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80246094_915744 -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000033, 0x000020A2, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000050, 0x0000000A, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateModel, 0x00000028, 0xFE363C80, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000033, 0x7FFFFE00, 0x00000043, 0x00000004, PlayerMoveTo, 0x0000021F, 0x00000032, 0x00000014, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000033, 0x000020A2, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000050, 0x00000000, 0x0000001E, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateModel, 0x00000028, 0xFE363C80, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000033, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80245E98_915548, 0x00000100, 0x00000031, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80245E40_9154F0, 0x00000080, 0x0000000B, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000003, 0x0000000B, 0x00000005, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80246094_915744, 0x00000100, 0x00000033, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80245E6C_91551C, 0x00000080, 0x00000011, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000003, 0x00000011, 0x00000005, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_02/916E70.data.s b/ver/us/asm/data/world/area_iwa/iwa_02/916E70.data.s deleted file mode 100644 index 5b34a7d883..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_02/916E70.data.s +++ /dev/null @@ -1,21 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80241100_916E70 -.word 0xC32C0000, 0x00000000, 0x43240000, 0x42B40000, 0xC3420000, 0x436E0000, 0x436E0000, 0x42B40000, 0x4493E000, 0x43900000, 0x42700000, 0x43870000, 0x4499E000, 0x42480000, 0x43730000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_802412F8_917068, D_80241100_916E70, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x0019005C - -dlabel D_80241180_916EF0 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000000, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80242D30, 0x00000002, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802411DC_916F4C -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000001, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80242D30, 0x00000003, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241238_916FA8 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000002, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80242D38, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241294_917004 -.word 0x00000047, 0x00000005, D_80241180_916EF0, 0x00080000, 0x00000002, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_802411DC_916F4C, 0x00080000, 0x00000025, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80241238_916FA8, 0x00080000, 0x00000029, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802412F8_917068 -.word 0x00000024, 0x00000002, 0xF5DE0329, 0x00000008, 0x00000043, 0x00000002, SetSpriteShading, 0xFFFFFFFF, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000019, 0x00000010, 0x00001000, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000043, 0x00000003, MakeNpcs, 0x00000001, 0x80242CDC, 0x00000046, 0x00000001, 0x80241400, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000016, 0x00000000, 0x00000008, 0x00000024, 0x00000002, 0xFE363C80, D_80241294_917004, 0x00000044, 0x00000001, EnterWalk, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000002C, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_02/917170.data.s b/ver/us/asm/data/world/area_iwa/iwa_02/917170.data.s deleted file mode 100644 index 78659f29f4..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_02/917170.data.s +++ /dev/null @@ -1,6 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80241400_917170 -.word 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0x00000040, 0x00000000, 0x0000005F, 0x00000000, 0x00000078, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0x00000133, 0x00000043, 0x00000063, 0x00000000, 0x00000078, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0x000002BC, 0x000000EE, 0x0000000F, 0x00000000, 0x0000005A, 0x80000000, 0x00000043, 0x00000007, MakeItemEntity, 0x0000015C, 0x00000023, 0x000000A7, 0x00000078, 0x00000011, 0xF8405E2F, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_02/917220.data.s b/ver/us/asm/data/world/area_iwa/iwa_02/917220.data.s deleted file mode 100644 index f48e661659..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_02/917220.data.s +++ /dev/null @@ -1,78 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802414B0_917220 -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024154C_9172BC -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F0012, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802415CC_91733C -.word 0x3FE66666, 0x0000001E, 0x0000001E, 0x42B40000, 0x428C0000, 0x00000002, 0x40400000, 0x0000005A, 0x00000019, 0x42F00000, 0x428C0000, 0x00000001 - -dlabel D_802415FC_91736C -.word 0x00000043, 0x00000002, func_800445D4, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000064, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000001, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, IsPlayerWithin, 0xFE363C80, 0xFE363C82, 0x00000050, 0xFE363C83, 0x0000000B, 0x00000002, 0xFE363C83, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetSelfNpcID, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C82, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F000E, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0x00000027, 0x00000002, 0xFE363C85, 0x0000001E, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFF, 0xF24A7E80, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFF, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0x00000014, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C80, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000000, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x40000000, 0x00000001, 0x00000043, 0x00000002, BasicAI_Main, D_802415CC_91733C, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00180016, D_802414B0_917220, 0x00000000, D_802415FC_91736C, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00080001, 0x00000000, 0x00180016, D_8024154C_9172BC, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_802418A0_917610 -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000032, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241924_917694 -.word 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00040000, 0x00000001, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000032, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F0013, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802419BC_91772C -.word 0x3FE66666, 0x0000001E, 0x0000001E, 0x42B40000, 0x428C0000, 0x00000002, 0x40400000, 0x0000005A, 0x00000019, 0x42F00000, 0x428C0000, 0x00000001 - -dlabel D_802419EC_91775C -.word 0x00000043, 0x00000002, func_800445D4, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000064, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000001, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C82, 0x00000082, 0x00000043, 0x00000005, IsPlayerWithin, 0xFE363C80, 0xFE363C82, 0x00000050, 0xFE363C83, 0x0000000B, 0x00000002, 0xFE363C83, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetSelfNpcID, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C82, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C83, 0x00000032, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000040, 0x00000001, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F000E, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000028, 0x00000002, 0xFE363C82, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C83, 0x00000050, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFF, 0xF24A7D4D, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFF, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000014, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000040, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000000, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x40000000, 0x00000001, 0x00000013, 0x00000000, 0x00000043, 0x00000002, BasicAI_Main, D_802419BC_91772C, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241C94_917A04 -.word 0x00000000, 0x00180016, D_802418A0_917610, 0x00000000, D_802419EC_91775C, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_80241CC0_917A30 -.word 0x00000000, 0x00180016, D_80241924_917694, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_80241CEC_917A5C -.word 0x3F800000, 0x0000001E, 0x0000001E, 0x42F00000, 0x00000000, 0x00000003, 0x40E00000, 0x0000003C, 0x00000005, 0x42C80000, 0x42700000, 0x00000001 - -dlabel D_80241D1C_917A8C -.word 0x00000043, 0x00000003, iwa_02_CleftAI_Main, D_80241CEC_917A5C, 0x00000010, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241D40_917AB0 -.word 0x00000000, 0x001A0018, 0x00000000, 0x00000000, D_80241D1C_917A8C, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000 - -dlabel D_80241D6C_917ADC -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241D7C_917AEC -.word 0x00000000, 0x002A001A, D_80241D6C_917ADC, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel iwa_02_varStash -.word 0x00000000 - -dlabel D_80241DAC_917B1C -.word 0x00000043, 0x00000004, ShowGotItem, 0xFE363C80, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ShowGotItem, 0xFE363C80, 0x00000001, 0x00000010, 0x00000002, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241E0C_917B7C -.word 0x00000000, D_80241D40_917AB0, 0x44038000, 0x436E0000, 0x428A0000, 0x00002400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980003, 0x3FFF2666, 0x4CCC0003, 0x3FFF3FFF, 0x3FFF0003, 0x33326665, 0x33320003, 0x33327FFF, 0x26660003, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00030000, 0x0000020E, 0x000000EE, 0x00000045, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0x0000020E, 0x000000EE, 0x00000045, 0x000000C8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00300002, 0x00300006, 0x00300007, 0x00300007, 0x00300002, 0x00300002, 0x00300008, 0x00300008, 0x00300014, 0x00300017, 0x00300013, 0x00300015, 0x00300010, 0x00300011, 0x00300016, 0x00300000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80241FFC_917D6C -.word 0x00000001, D_80241D40_917AB0, 0x43E10000, 0x42480000, 0x43570000, 0x00002400, 0x00000000, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980003, 0x3FFF2666, 0x4CCC0003, 0x3FFF3FFF, 0x3FFF0003, 0x33326665, 0x33320003, 0x33327FFF, 0x26660003, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00030000, 0x000001C2, 0x00000032, 0x000000D7, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0x000001C2, 0x00000032, 0x000000D7, 0x000000C8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00300002, 0x00300006, 0x00300007, 0x00300007, 0x00300002, 0x00300002, 0x00300008, 0x00300008, 0x00300014, 0x00300017, 0x00300013, 0x00300015, 0x00300010, 0x00300011, 0x00300016, 0x00300000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_802421EC_917F5C -.word 0x00000002, D_80241D40_917AB0, 0x42B40000, 0x00000000, 0x43200000, 0x00002400, 0x00000000, 0x00000000, 0x00000000, 0x0000010E, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980003, 0x3FFF2666, 0x4CCC0003, 0x3FFF3FFF, 0x3FFF0003, 0x33326665, 0x33320003, 0x33327FFF, 0x26660003, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00030000, 0x0000005A, 0x00000000, 0x000000A0, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0x0000005A, 0x00000000, 0x000000A0, 0x000000C8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00300002, 0x00300006, 0x00300007, 0x00300007, 0x00300002, 0x00300002, 0x00300008, 0x00300008, 0x00300014, 0x00300017, 0x00300013, 0x00300015, 0x00300010, 0x00300011, 0x00300016, 0x00300000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_802423DC_91814C -.word 0x00000003, D_80241C94_917A04, 0x4458C000, 0x00000000, 0x42CA0000, 0x00000C00, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800A00A4, 0x000A0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980002, 0x3FFF2666, 0x4CCC0002, 0x3FFF3FFF, 0x3FFF0002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0x00000363, 0x00000000, 0x00000065, 0x00000028, 0x00000000, 0xFFFF8001, 0x00000000, 0x00000363, 0x00000000, 0x00000065, 0x00000096, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0019, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0019, 0x002F0019, 0x002F0009, 0x002F0009, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000004, D_80241CC0_917A30, 0x4458C000, 0x00000000, 0x42CA0000, 0x00000F21, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFF8001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0019, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0019, 0x002F0019, 0x002F0009, 0x002F0009, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x00000001, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_802427BC_91852C -.word 0x0000000A, 0x00000002, 0xF9718881, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0xFE363C80, 0x00000024, 0x00000002, 0xF9718881, 0x00000001, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0xFE363C81, 0x00000024, 0x00000002, 0xF9718881, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000005, 0x00990103, 0x00990102, 0x00000000, 0xFE363C82, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024284C_9185BC -.word 0x0000000A, 0x00000002, 0xF8405E4C, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000321, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990105, 0x00000008, 0x00000001, 0x0000002D, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990102, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x0000002D, 0x0000001A, 0x00000043, 0x00000007, AdjustCam, 0x00000000, 0xF24AA280, 0x00000000, 0x0000015E, 0xF24AB680, 0xF24A6080, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990103, 0x00990102, 0x00000000, 0x000D001F, 0x00000024, 0x00000002, 0xFE363C80, 0x0000002C, 0x00000024, 0x00000002, 0xFE363C81, 0x00000001, 0x00000046, 0x00000001, D_80241DAC_917B1C, 0x00000043, 0x00000002, AddKeyItem, 0x0000002C, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990103, 0x00990102, 0x00000000, 0x000D0020, 0x00000043, 0x00000003, ResetCam, 0x00000000, 0xF24AA280, 0x00000024, 0x00000002, 0xF8405E4C, 0x00000001, 0x00000043, 0x00000003, SetTattleMsg, 0x00000005, 0x001A0088, 0x00000012, 0x00000000, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0xFFFFFFF1, 0x00000024, 0x00000002, 0xFE363C80, 0x000D0021, 0x00000024, 0x00000002, 0xFE363C81, 0x000D0022, 0x00000018, 0x00000001, 0x00000020, 0x00000024, 0x00000002, 0xFE363C80, 0x000D0023, 0x00000024, 0x00000002, 0xFE363C81, 0x000D0024, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000D0025, 0x00000024, 0x00000002, 0xFE363C81, 0x000D0026, 0x00000023, 0x00000000, 0x00000046, 0x00000001, D_802427BC_91852C, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242A70_9187E0 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_8024284C_9185BC, 0x0000000A, 0x00000002, 0xF8405E4C, 0x00000000, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x00000019, 0x00000019, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990107, 0x00000043, 0x00000003, SetTattleMsg, 0x00000005, 0x001A0087, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242AEC_91885C -.word 0x00000005, D_80241D7C_917AEC, 0x44866000, 0x42480000, 0x43660000, 0x00000801, D_80242A70_9187E0, 0x00000000, 0x00000000, 0x0000010E, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00990102, 0x0099010E, 0x0099010E, 0x00990102, 0x00990102, 0x00990102, 0x00990102, 0x00990102, 0x00990102, 0x00990102, 0x00990102, 0x00990102, 0x00990102, 0x00990102, 0x00990102, 0x00990102, 0x00000000, 0x00000000, 0x00000000, 0x001A0088, 0x00000001, D_80241E0C_917B7C, 0x09030002, 0x00000001, D_80241FFC_917D6C, 0x09010002, 0x00000001, D_802421EC_917F5C, 0x09000002, 0x00000002, D_802423DC_91814C, 0x09050002, 0x00000001, D_80242AEC_91885C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_03/919F00.data.s b/ver/us/asm/data/world/area_iwa/iwa_03/919F00.data.s deleted file mode 100644 index a79bcc1c48..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_03/919F00.data.s +++ /dev/null @@ -1,36 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80241350_919F00 -.word 0x41600000, 0xC1900000, 0x40E00000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_80241428_919FD8, D_80241350_919F00, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x0019005D - -dlabel D_802413A0_919F50 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000000, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80242C20, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802413FC_919FAC -.word 0x00000047, 0x00000005, D_802413A0_919F50, 0x00080000, 0x00000018, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241428_919FD8 -.word 0x00000024, 0x00000002, 0xF5DE0329, 0x00000008, 0x00000043, 0x00000002, SetSpriteShading, 0xFFFFFFFF, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000019, 0x00000010, 0x00001000, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000043, 0x00000003, MakeNpcs, 0x00000001, 0x80242920, 0x00000046, 0x00000001, D_8024183C_91A3EC, 0x00000044, 0x00000001, 0x80242BB8, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000016, 0x00000000, 0x00000008, 0x00000024, 0x00000002, 0xFE363C80, D_802413FC_919FAC, 0x00000044, 0x00000001, EnterWalk, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000012, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel iwa_03_varStash -.word 0x00000000 - -dlabel D_80241534_91A0E4 -.word 0x0000004D, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000002, 0x00000008, 0x00000001, 0x00000028, 0x00000043, 0x00000004, ShowGotItem, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024159C_91A14C -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0xFE363C8A, 0x0000000B, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000046, 0x00000001, D_80241534_91A0E4, 0x00000013, 0x00000000, 0x00000014, 0x00000001, 0xFE363C8B, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000003, AddItem, 0xFE363C8A, 0xFE363C80, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000002, AddKeyItem, 0xFE363C8A, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000003, AddBadge, 0xFE363C8A, 0xFE363C80, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024167C_91A22C -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802416E0_91A290 -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000006, 0x00000008, 0x00000001, 0x00000001, 0x00000045, 0x00000002, D_8024167C_91A22C, 0xFE363C8A, 0x0000000A, 0x00000002, 0xFD050F89, 0x00000000, 0x00000043, 0x00000002, SetPlayerJumpscale, 0xF24A801A, 0x00000043, 0x00000005, PlayerJump, 0xFFFFF9D2, 0x00000017, 0x0000003C, 0x0000000F, 0x00000012, 0x00000000, 0x00000043, 0x00000002, SetPlayerJumpscale, 0xF24A7D4D, 0x00000043, 0x00000005, PlayerJump, 0xFFFFF9D2, 0x00000198, 0xFFFFFFC4, 0x00000028, 0x00000013, 0x00000000, 0x00000049, 0x00000001, 0xFE363C8A, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000000, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802417F0_91A3A0 -.word 0x00000024, 0x00000002, 0xFE363C8A, 0x0000013A, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000002, 0x00000024, 0x00000002, 0xF8405E31, 0x00000001, 0x00000046, 0x00000001, D_8024159C_91A14C, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024183C_91A3EC -.word 0x00000056, 0x00000000, 0x00000043, 0x00000001, func_802402BC_918E6C, 0x00000057, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_ScriptSpring, 0xFFFFF9D4, 0x00000017, 0x00000014, 0x00000000, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_802416E0_91A290, 0x00000043, 0x00000008, MakeEntity, Entity_YellowBlock, 0xFFFFF911, 0x00000198, 0xFFFFFF88, 0x00000000, 0x00000157, 0x80000000, 0x00000043, 0x00000002, AssignBlockFlag, 0xF8405E3E, 0x00000043, 0x00000008, MakeEntity, Entity_YellowBlock, 0xFFFFFD94, 0xFFFFFFF1, 0xFFFFFFBB, 0x00000000, 0x0000008A, 0x80000000, 0x00000043, 0x00000002, AssignBlockFlag, 0xF8405E3F, 0x00000043, 0x00000008, MakeEntity, Entity_YellowBlock, 0xFFFFFBBE, 0x00000198, 0xFFFFFF7E, 0x00000000, 0x000000A4, 0x80000000, 0x00000043, 0x00000002, AssignBlockFlag, 0xF8405E40, 0x00000043, 0x00000007, MakeItemEntity, 0x00000054, 0xFFFFFFEC, 0x0000005F, 0xFFFFFFAB, 0x00000011, 0xF8405E42, 0x00000043, 0x00000007, MakeItemEntity, 0x0000015C, 0xFFFFF8B7, 0x00000017, 0x00000014, 0x00000011, 0xF8405E30, 0x00000043, 0x00000007, MakeItemEntity, 0x00000157, 0xFFFFF8E9, 0x00000017, 0x00000014, 0x00000011, 0xF8405E38, 0x00000043, 0x00000007, MakeItemEntity, 0x00000157, 0xFFFFF885, 0x00000017, 0x00000014, 0x00000011, 0xF8405E39, 0x00000043, 0x00000007, MakeItemEntity, 0x00000157, 0xFFFFF8D0, 0x00000017, 0x0000003F, 0x00000011, 0xF8405E3A, 0x00000043, 0x00000007, MakeItemEntity, 0x00000157, 0xFFFFF89E, 0x00000017, 0x0000003F, 0x00000011, 0xF8405E3B, 0x00000043, 0x00000007, MakeItemEntity, 0x00000157, 0xFFFFF8D0, 0x00000017, 0xFFFFFFE9, 0x00000011, 0xF8405E3C, 0x00000043, 0x00000007, MakeItemEntity, 0x00000157, 0xFFFFF89E, 0x00000017, 0xFFFFFFE9, 0x00000011, 0xF8405E3D, 0x00000043, 0x00000007, MakeItemEntity, 0x00000157, 0xFFFFF955, 0xFFFFFFC4, 0x00000000, 0x00000011, 0xF8405E36, 0x00000043, 0x00000007, MakeItemEntity, 0x00000157, 0xFFFFF955, 0xFFFFFFC4, 0x0000003C, 0x00000011, 0xF8405E37, 0x00000043, 0x00000008, MakeEntity, Entity_Chest, 0xFFFFF94B, 0x0000005D, 0xFFFFFF81, 0x00000000, 0x00000000, 0x80000000, 0x00000043, 0x00000002, AssignChestFlag, 0xF8405E31, 0x00000043, 0x00000002, AssignScript, D_802417F0_91A3A0, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_03/91A6B0.data.s b/ver/us/asm/data/world/area_iwa/iwa_03/91A6B0.data.s deleted file mode 100644 index 5ab75cd77d..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_03/91A6B0.data.s +++ /dev/null @@ -1,42 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80241B00_91A6B0 -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000200, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241B9C_91A74C -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F0012, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241C1C_91A7CC -.word 0x3FE66666, 0x0000001E, 0x0000001E, 0x42B40000, 0x428C0000, 0x00000002, 0x40400000, 0x0000005A, 0x00000019, 0x42F00000, 0x428C0000, 0x00000001 - -dlabel D_80241C4C_91A7FC -.word 0x00000043, 0x00000002, func_800445D4, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000064, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000001, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, IsPlayerWithin, 0xFE363C80, 0xFE363C82, 0x00000050, 0xFE363C83, 0x0000000B, 0x00000002, 0xFE363C83, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetSelfNpcID, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C82, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFF, 0x00000004, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x002F000E, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0x00000027, 0x00000002, 0xFE363C85, 0x0000001E, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFF, 0xF24A7E80, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFF, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0x00000014, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C80, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000000, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x40000000, 0x00000001, 0x00000043, 0x00000002, BasicAI_Main, D_80241C1C_91A7CC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241E98_91AA48 -.word 0x00000000, 0x00180016, D_80241B00_91A6B0, 0x00000000, D_80241C4C_91A7FC, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_80241EC4_91AA74 -.word 0x00000000, 0x00180016, D_80241B9C_91A74C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00080001 - -dlabel D_80241EF0_91AAA0 -.word 0x3F800000, 0x0000001E, 0x0000001E, 0x42F00000, 0x00000000, 0x00000003, 0x40E00000, 0x0000003C, 0x00000005, 0x42C80000, 0x42700000, 0x00000001 - -dlabel D_80241F20_91AAD0 -.word 0x00000043, 0x00000003, iwa_03_CleftAI_Main, D_80241EF0_91AAA0, 0x00000010, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241F44_91AAF4 -.word 0x00000000, 0x001A0018, 0x00000000, 0x00000000, D_80241F20_91AAD0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000 - -dlabel D_80241F70_91AB20 -.word 0x00000000, D_80241F44_91AAF4, 0xC4034000, 0xC2960000, 0x42700000, 0x00000C00, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980003, 0x3FFF2666, 0x4CCC0003, 0x3FFF3FFF, 0x3FFF0003, 0x33326665, 0x33320003, 0x33327FFF, 0x26660003, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00030000, 0xFFFFFDF3, 0xFFFFFFB5, 0x0000003C, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0xFFFFFDF3, 0xFFFFFFB5, 0x0000003C, 0x000000FA, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00300002, 0x00300006, 0x00300007, 0x00300007, 0x00300002, 0x00300002, 0x00300008, 0x00300008, 0x00300014, 0x00300017, 0x00300013, 0x00300015, 0x00300010, 0x00300011, 0x00300016, 0x00300000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80242160_91AD10 -.word 0x00000001, D_80241F44_91AAF4, 0xC4D2C000, 0xC2700000, 0x43340000, 0x00000C00, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980003, 0x3FFF2666, 0x4CCC0003, 0x3FFF3FFF, 0x3FFF0003, 0x33326665, 0x33320003, 0x33327FFF, 0x26660003, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00030000, 0xFFFFF96A, 0xFFFFFFC4, 0x000000B4, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0xFFFFF96A, 0xFFFFFFC4, 0x000000B4, 0x000000FA, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00300002, 0x00300006, 0x00300007, 0x00300007, 0x00300002, 0x00300002, 0x00300008, 0x00300008, 0x00300014, 0x00300017, 0x00300013, 0x00300015, 0x00300010, 0x00300011, 0x00300016, 0x00300000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80242350_91AF00 -.word 0x00000002, D_80241F44_91AAF4, 0xC4A28000, 0x43CC0000, 0xC2FA0000, 0x00000C00, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980003, 0x3FFF2666, 0x4CCC0003, 0x3FFF3FFF, 0x3FFF0003, 0x33326665, 0x33320003, 0x33327FFF, 0x26660003, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00030000, 0xFFFFFAEC, 0x00000198, 0xFFFFFF83, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0xFFFFFAF6, 0x00000198, 0xFFFFFF83, 0x0000008C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00300002, 0x00300006, 0x00300007, 0x00300007, 0x00300002, 0x00300002, 0x00300008, 0x00300008, 0x00300014, 0x00300017, 0x00300013, 0x00300015, 0x00300010, 0x00300011, 0x00300016, 0x00300000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80242540_91B0F0 -.word 0x00000003, D_80241E98_91AA48, 0xC47A0000, 0x41B80000, 0x42700000, 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800A00A4, 0x000A0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980002, 0x3FFF2666, 0x4CCC0002, 0x3FFF3FFF, 0x3FFF0002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00010000, 0xFFFFFC18, 0x00000017, 0x0000003C, 0x00000028, 0x00000000, 0xFFFF8001, 0x00000000, 0xFFFFFC18, 0x00000017, 0x0000003C, 0x000000FA, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0019, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0019, 0x002F0019, 0x002F0009, 0x002F0009, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000004, D_80241EC4_91AA74, 0xC47A0000, 0x41B80000, 0x42700000, 0x00000F21, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFF8001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002F0019, 0x002F0002, 0x002F0003, 0x002F0003, 0x002F0019, 0x002F0019, 0x002F0009, 0x002F0009, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x002F0019, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000001, D_80241F70_91AB20, 0x09030001, 0x00000001, D_80242160_91AD10, 0x09000001, 0x00000001, D_80242350_91AF00, 0x09010001, 0x00000002, D_80242540_91B0F0, 0x09090001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_03/91B510.data.s b/ver/us/asm/data/world/area_iwa/iwa_03/91B510.data.s deleted file mode 100644 index 3d034f0e50..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_03/91B510.data.s +++ /dev/null @@ -1,12 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80242960_91B510 -.word 0x42B20000, 0x3ED1EB85, 0xBE800000, 0x41800000, 0x4119CAC1, 0xBEE76C8B, 0x3B449BA6, 0xBCBC6A7F - -dlabel D_80242980_91B530 -.word 0x00000024, 0x00000002, 0xFE363C80, D_80242960_91B510, 0x00000043, 0x00000001, func_80241320_919ED0, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802429AC_91B55C -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000022, 0x000020A2, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFFFFFFB0, 0x0000000A, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateModel, 0x0000000D, 0xFE363C80, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000022, 0x7FFFFE00, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8680, 0x00000043, 0x00000004, PlayerMoveTo, 0xFFFFFA4C, 0xFFFFFFC4, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtCollider, 0x00000022, 0x000020A2, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFFB0, 0x00000000, 0x0000001E, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateModel, 0x0000000D, 0xFE363C80, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000022, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_802429AC_91B55C, 0x00000100, 0x00000022, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80242980_91B530, 0x00000080, 0x00000009, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000003, 0x00000009, 0x00000005, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_04/91C9C0.data.s b/ver/us/asm/data/world/area_iwa/iwa_04/91C9C0.data.s deleted file mode 100644 index 7b66f30d39..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_04/91C9C0.data.s +++ /dev/null @@ -1,6 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802410E0_91C9C0 -.word 0xC41D8000, 0x00000000, 0xC2440000, 0x42B40000, 0x44408000, 0xC37A0000, 0xC2200000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241270, D_802410E0_91C9C0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x0019005E, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000016, 0x00000000, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_04/91CA50.data.s b/ver/us/asm/data/world/area_iwa/iwa_04/91CA50.data.s deleted file mode 100644 index 19129f65a2..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_04/91CA50.data.s +++ /dev/null @@ -1,21 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80241170_91CA50 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000000, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80242B80, 0x00000002, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802411CC_91CAAC -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000001, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80242B88, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241228_91CB08 -.word 0x00000047, 0x00000005, D_80241170_91CA50, 0x00080000, 0x00000003, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_802411CC_91CAAC, 0x00080000, 0x00000013, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xF5DE0329, 0x00000008, 0x00000043, 0x00000002, SetSpriteShading, 0xFFFFFFFF, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000019, 0x00000010, 0x00001000, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000043, 0x00000003, SetCamLeadPlayer, 0x00000000, 0x00000000, 0x00000043, 0x00000003, MakeNpcs, 0x00000001, 0x80242B50, 0x00000046, 0x00000001, D_80241594_91CE74, 0x00000044, 0x00000001, 0x80241140, 0x00000043, 0x00000003, ParentColliderToModel, 0x0000001C, 0x0000000A, 0x00000043, 0x00000003, ParentColliderToModel, 0x0000001E, 0x0000000C, 0x00000043, 0x00000003, ParentColliderToModel, 0x00000020, 0x0000000E, 0x00000043, 0x00000003, ParentColliderToModel, 0x00000022, 0x00000010, 0x00000043, 0x00000003, ParentColliderToModel, 0x00000024, 0x00000012, 0x00000043, 0x00000003, ParentColliderToModel, 0x00000026, 0x00000014, 0x00000043, 0x00000003, ParentColliderToModel, 0x00000028, 0x00000016, 0x00000043, 0x00000003, ParentColliderToModel, 0x0000002A, 0x00000018, 0x00000043, 0x00000003, ParentColliderToModel, 0x0000002C, 0x0000001A, 0x00000043, 0x00000003, ParentColliderToModel, 0x0000002E, 0x0000001C, 0x00000024, 0x00000002, 0xFE363C80, D_80241228_91CB08, 0x00000044, 0x00000001, EnterWalk, 0x00000008, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241420_91CD00 -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241484_91CD64 -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000006, 0x00000008, 0x00000001, 0x00000001, 0x00000045, 0x00000002, D_80241420_91CD00, 0xFE363C8A, 0x0000000A, 0x00000002, 0xFD050F89, 0x00000000, 0x00000043, 0x00000002, SetPlayerJumpscale, 0xF24A801A, 0x00000043, 0x00000005, PlayerJump, 0xFFFFFDD0, 0xFFFFFF06, 0x000000BE, 0x0000000F, 0x00000012, 0x00000000, 0x00000043, 0x00000002, SetPlayerJumpscale, 0xF24A7D4D, 0x00000043, 0x00000005, PlayerJump, 0xFFFFFDD0, 0x00000000, 0x0000005A, 0x00000028, 0x00000013, 0x00000000, 0x00000049, 0x00000001, 0xFE363C8A, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000000, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241594_91CE74 -.word 0x00000056, 0x00000000, 0x00000043, 0x00000001, func_80240000_91B8E0, 0x00000057, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_ScriptSpring, 0xFFFFFDCF, 0xFFFFFF06, 0x00000079, 0x00000000, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80241484_91CD64, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0xFFFFFDFF, 0x00000000, 0xFFFFFF9F, 0x00000000, 0x0000005A, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0x00000258, 0x00000000, 0x000000C8, 0x00000000, 0x0000010E, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0x00000150, 0xFFFFFF74, 0x000000CB, 0x00000000, 0x00000046, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0x000002DA, 0xFFFFFF06, 0xFFFFFFA1, 0x00000000, 0x0000005A, 0x80000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000040, 0xFFFFFEED, 0xFFFFFF06, 0x00000096, 0x00000011, 0xF8405E43, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_04/91CFA0.data.s b/ver/us/asm/data/world/area_iwa/iwa_04/91CFA0.data.s deleted file mode 100644 index e12e4c6d79..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_04/91CFA0.data.s +++ /dev/null @@ -1,36 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802416C0_91CFA0 -.word 0x3F800000, 0x0000001E, 0x0000001E, 0x42F00000, 0x00000000, 0x00000003, 0x40E00000, 0x0000003C, 0x00000005, 0x42C80000, 0x42700000, 0x00000001 - -dlabel D_802416F0_91CFD0 -.word 0x00000043, 0x00000003, iwa_04_CleftAI_Main, D_802416C0_91CFA0, 0x00000010, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241714_91CFF4 -.word 0x00000000, 0x001A0018, 0x00000000, 0x00000000, D_802416F0_91CFD0, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x000A0000 - -dlabel D_80241740_91D020 -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x000020EF, 0x00000000, 0x00000008, 0x00000001, 0x00000010, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241788_91D068 -.word 0x00000005, 0x00000001, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000003, GetNpcAnimation, 0xFFFFFFFF, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00670002, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000045, 0x00000002, D_80241740_91D020, 0xFE363C8A, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000003, GetNpcAnimation, 0xFFFFFFFF, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0x00670002, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000049, 0x00000001, 0xFE363C8A, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241870_91D150 -.word 0x0000000A, 0x00000002, 0xF8405E44, 0x00000001, 0x00000043, 0x00000002, RemoveNpc, 0xFFFFFFFF, 0x00000012, 0x00000000, 0x00000044, 0x00000001, D_80241788_91D068, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x0000000A, 0x00000060, 0xFFFFFEA5, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802418EC_91D1CC -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, GetNpcPos, 0x00000001, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x0000000C, 0x00000002, 0xFE363C80, 0xFE363C83, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000001, 0x0000010E, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000001, 0x0000005A, 0x00000000, 0x00000013, 0x00000000, 0x0000000F, 0x00000002, 0xFE363C80, 0x00000190, 0x0000000C, 0x00000002, 0xFE363C80, 0x000001C2, 0x0000000C, 0x00000002, 0xFE363C82, 0x00000064, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000005B, 0x00000000, 0x00000008, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, GetCurrentPartner, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000001, InterruptUsePartner, 0x00000008, 0x00000001, 0x00000005, 0x00000013, 0x00000000, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x000D0030, 0x000000A0, 0x00000028, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000F, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, GetAngleToPlayer, 0xFFFFFFFF, 0xFE363C8A, 0x00000008, 0x00000001, 0x00000004, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x000001AE, 0x00000000, 0xFFFFFFE7, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0x0000001E, 0x000000B4, 0xFFFFFDA8, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24C0A80, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8A80, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00670005, 0x00670005, 0x00000005, 0x000D0031, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00670002, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000024, 0x00000002, 0xFE363C85, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C85, 0x00000096, 0x00000043, 0x00000005, MakeLerp, 0xFE363C83, 0xFE363C85, 0x0000000F, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000005, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000004, SetPlayerPos, 0x000001AE, 0x00000000, 0xFFFFFFE7, 0x00000043, 0x00000002, func_802CF56C, 0x00000002, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x0000021A, 0x000000C8, 0xFFFFFFE7, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000001, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, SetCamPosA, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetCamPosB, 0x00000000, 0x00000064, 0xFFFFFF9C, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0x00000258, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000056, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000028, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0x000001F4, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0xF24A7C80, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000002, func_802CF56C, 0x00000002, 0x00000057, 0x00000000, 0x00000043, 0x00000003, PlayerFaceNpc, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x0001002A, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000024, 0x00000002, 0xFE363C85, 0xFE363C83, 0x00000028, 0x00000002, 0xFE363C85, 0x00000096, 0x00000043, 0x00000005, MakeLerp, 0xFE363C83, 0xFE363C85, 0x0000000F, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000005, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00670001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00670007, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00670008, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00670009, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x0067000A, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00670001, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0x00000113, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00670003, 0x00670001, 0x00000000, 0x000D0032, 0x00000043, 0x00000007, AdjustCam, 0x00000000, 0xF24BE280, 0x00000032, 0x0000015E, 0xF24AB680, 0xF24A4A80, 0x00000043, 0x00000002, ShowChoice, 0x001E0017, 0x00000043, 0x00000005, EndSpeech, 0xFFFFFFFF, 0x00670003, 0x00670001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C8A, 0x00000016, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x000D0033, 0x00000024, 0x00000002, 0xFE363C8C, 0x00670004, 0x00000016, 0x00000001, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8B, 0x000D0034, 0x00000024, 0x00000002, 0xFE363C8C, 0x00670003, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C8B, 0x000D0035, 0x00000024, 0x00000002, 0xFE363C8C, 0x00670004, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0x00000113, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0xFE363C8C, 0x00670001, 0x00000000, 0xFE363C8B, 0x0000000A, 0x00000002, 0xFE363C8A, 0x00000001, 0x00000044, 0x00000001, 0x80241140, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00670006, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00670002, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8A80, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000024, 0x00000002, 0xFE363C85, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C85, 0x00000096, 0x00000043, 0x00000005, MakeLerp, 0xFE363C83, 0xFE363C85, 0x0000000F, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000005, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x0000000A, 0x00000060, 0xFFFFFEA5, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00670005, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8A80, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000043, 0x00000002, StartBossBattle, 0x00000003, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024257C_91DE5C -.word 0x00000043, 0x00000002, GetBattleOutcome, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xF8405E44, 0x00000001, 0x00000044, 0x00000001, 0x80241140, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000212, 0x0000000F, 0xFFFFFFEC, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x0067000B, 0x00000043, 0x00000007, AdjustCam, 0x00000000, 0xF24BE280, 0x00000032, 0x0000015E, 0xF24AB680, 0xF24A4A80, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x000D0036, 0x00000056, 0x00000000, 0x00000043, 0x00000003, GetNpcYaw, 0xFFFFFFFF, 0xFE363C80, 0x00000005, 0x00000001, 0x00000037, 0x00000027, 0x00000002, 0xFE363C80, 0x0000001E, 0x00000043, 0x00000005, SetNpcRotation, 0xFFFFFFFF, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFF, 0xF24A7D80, 0x00000043, 0x00000006, NpcJump1, 0xFFFFFFFF, 0x00000190, 0xFFFFFF38, 0xFFFFFED4, 0x0000003C, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000003, ResetCam, 0x00000000, 0xF24A8480, 0x00000016, 0x00000001, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242744_91E024 -.word 0x00670005, 0x00200020, D_80241870_91D150, 0x00000000, D_802418EC_91D1CC, 0x00000000, 0x00000000, D_8024257C_91DE5C, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80242770_91E050 -.word 0x00000000, D_80241714_91CFF4, 0xC3CE0000, 0xC37A0000, 0x430F0000, 0x00000900, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980003, 0x3FFF2666, 0x4CCC0003, 0x3FFF3FFF, 0x3FFF0003, 0x33326665, 0x33320003, 0x33327FFF, 0x26660003, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00030000, 0xFFFFFE64, 0xFFFFFF06, 0x0000008F, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0xFFFFFE9D, 0xFFFFFF06, 0x00000069, 0x000000AF, 0x000000C3, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00300002, 0x00300006, 0x00300007, 0x00300007, 0x00300002, 0x00300002, 0x00300008, 0x00300008, 0x00300014, 0x00300017, 0x00300013, 0x00300015, 0x00300010, 0x00300011, 0x00300016, 0x00300000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80242960_91E240 -.word 0x00000001, D_80242744_91E024, 0x00000000, 0xC47A0000, 0x00000000, 0x00A40D04, 0x00000000, 0x00000000, 0x00000000, 0x0000010E, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980003, 0x3FFF2666, 0x4CCC0003, 0x3FFF3FFF, 0x3FFF0003, 0x33326665, 0x33320003, 0x33327FFF, 0x26660003, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00030000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00670001, 0x00670001, 0x00670001, 0x00670001, 0x00670001, 0x00670001, 0x0067000B, 0x0067000B, 0x00670001, 0x00670001, 0x00670001, 0x00670001, 0x00670001, 0x00670001, 0x00670001, 0x00670001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, D_80242770_91E050, 0x09010002, 0x00000001, D_80242960_91E240, 0x090C0003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_10/91FD60.data.s b/ver/us/asm/data/world/area_iwa/iwa_10/91FD60.data.s deleted file mode 100644 index d2a0b4d708..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_10/91FD60.data.s +++ /dev/null @@ -1,6 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802417F0_91FD60 -.word 0xC49C4000, 0x41F00000, 0x00000000, 0x42B40000, 0xC3DE8000, 0x43570000, 0xC3FA0000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80241A54, D_802417F0_91FD60, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190059, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000016, 0x00000000, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, StopSound, 0x80000009, 0x00000043, 0x00000003, PushSong, 0x00000082, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000003, FadeOutMusic, 0x00000000, 0x000001F4, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000001, PopSong, 0x00000043, 0x00000006, PlaySoundAtF, 0x80000009, 0x00000001, 0xFFFFFDD0, 0x00000000, 0xFFFFFF17, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_10/91FE80.data.s b/ver/us/asm/data/world/area_iwa/iwa_10/91FE80.data.s deleted file mode 100644 index 8f209ce841..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_10/91FE80.data.s +++ /dev/null @@ -1,12 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80241910_91FE80 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000001, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80248460, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024196C_91FEDC -.word 0x00000047, 0x00000005, D_80241910_91FE80, 0x00080000, 0x00000057, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241998_91FF08 -.word 0x00000043, 0x00000002, GetLoadType, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000044, 0x00000001, EnterSavePoint, 0x00000044, 0x00000001, D_8024196C_91FEDC, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, D_8024196C_91FEDC, 0x00000044, 0x00000001, EnterWalk, 0x00000012, 0x00000000, 0x00000044, 0x00000001, 0x80244B5C, 0x00000044, 0x00000001, D_8024196C_91FEDC, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xF5DE0329, 0x00000008, 0x00000043, 0x00000002, SetSpriteShading, 0xFFFFFFFF, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000019, 0x00000010, 0x00001000, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamLeadPlayer, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xF8406333, 0x00000001, 0x00000043, 0x00000003, MakeNpcs, 0x00000001, 0x80243270, 0x00000043, 0x00000001, ClearDefeatedEnemies, 0x00000046, 0x00000001, 0x802460C8, 0x00000046, 0x00000001, 0x8024587C, 0x00000044, 0x00000001, D_80241998_91FF08, 0x00000008, 0x00000001, 0x00000001, 0x00000044, 0x00000001, 0x80241850, 0x00000044, 0x00000001, 0x80248394, 0x00000043, 0x00000006, PlaySoundAtF, 0x80000009, 0x00000001, 0xFFFFFDD0, 0x00000000, 0xFFFFFF17, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000043, 0x00000001, func_80240000_91E570, 0x00000043, 0x00000006, RotateModel, 0x0000005B, 0xFE363C80, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000043, 0x00000006, RotateModel, 0x0000005D, 0xFE363C81, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000008, 0x00000001, 0x0000000A, 0x00000004, 0x00000001, 0x0000000A, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetTexPanner, 0x0000006A, 0x00000002, 0x00000043, 0x00000003, SetTexPanner, 0x00000068, 0x00000002, 0x00000043, 0x00000003, EnableTexPanning, 0x0000006A, 0x00000001, 0x00000043, 0x00000003, EnableTexPanning, 0x00000068, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000003, 0x00000001, 0x00000014, 0x00000028, 0x00000002, 0xFE363C80, 0x00000BB8, 0x00000043, 0x00000005, SetTexPanOffset, 0x00000002, 0x00000000, 0x00000000, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000014, 0x00000057, 0x00000000, 0x0000000C, 0x00000002, 0xF5DE0180, 0xFFFFFFB9, 0x00000044, 0x00000001, 0x80246408, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_10/920280.data.s b/ver/us/asm/data/world/area_iwa/iwa_10/920280.data.s deleted file mode 100644 index 814edcd805..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_10/920280.data.s +++ /dev/null @@ -1,63 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80241D10_920280 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241D20_920290 -.word 0x00000000, 0x00200018, D_80241D10_920280, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_80241D4C_9202BC -.word 0x00000000, 0x001E0018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000, 0x00000000, 0x00170013, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_80241DA4_920314 -.word 0x00000000, 0x001A0017, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel iwa_10_varStash -.word 0x00000000, 0x00000043, 0x00000004, ShowGotItem, 0xFE363C80, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ShowGotItem, 0xFE363C80, 0x00000001, 0x00000010, 0x00000002, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241E34_9203A4 -.word 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008C0504, 0x008C0501, 0x00000000, 0x000D0001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008C0504, 0x008C0501, 0x00000000, 0x000D0002, 0x00000043, 0x00000002, ShowChoice, 0x001E000C, 0x00000043, 0x00000005, EndSpeech, 0xFFFFFFFF, 0x008C0504, 0x008C0501, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000044, 0x00000001, 0x802451E8, 0x00000012, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241F0C_92047C -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80241E34_9203A4, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241F30_9204A0 -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFFFFFE57, 0x00000046, 0xFFFFFFEC, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000005A, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFFFFFE57, 0x00000046, 0xFFFFFFEC, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000010E, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241FEC_92055C -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830004, 0x00830001, 0x00000000, 0x000D0004, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024201C_92058C -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80241FEC_92055C, 0x0000000F, 0x00000002, 0xF5DE0180, 0xFFFFFFBC, 0x00000043, 0x00000002, RemoveNpc, 0xFFFFFFFF, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242068_9205D8 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0x00000006, 0x00840104, 0x00840101, 0x00000000, 0x000D000B, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000007, 0x00840104, 0x00840101, 0x00000000, 0x000D000C, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000008, 0x00840104, 0x00840101, 0x00000000, 0x000D000D, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802420D8_920648 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80242068_9205D8, 0x0000000C, 0x00000002, 0xF5DE0180, 0xFFFFFFBC, 0x00000043, 0x00000002, RemoveNpc, 0xFFFFFFFF, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000F, 0x00000002, 0xF5DE0180, 0xFFFFFFCB, 0x00000043, 0x00000002, RemoveNpc, 0xFFFFFFFF, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242154_9206C4 -.word 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0xFFFFFFCB, 0x0000000A, 0x00000002, 0xF9718882, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000D0005, 0x00000024, 0x00000002, 0xF9718882, 0x00000001, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000D0006, 0x00000024, 0x00000002, 0xF9718882, 0x00000001, 0x00000013, 0x00000000, 0x00000018, 0x00000001, 0x00000027, 0x00000024, 0x00000002, 0xFE363C80, 0x000D0007, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000D0008, 0x00000023, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00930004, 0x00930001, 0x00000000, 0xFE363C80, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242238_9207A8 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80242154_9206C4, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024225C_9207CC -.word 0x0000000C, 0x00000002, 0xF5DE01FB, 0x00000008, 0x00000024, 0x00000002, 0xFE363C80, 0x000D0009, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000D000A, 0x00000013, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00840204, 0x00840201, 0x00000000, 0xFE363C80, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802422CC_92083C -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_8024225C_9207CC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802422F0_920860 -.word 0x00000000, D_80241D20_920290, 0xC3DC0000, 0x41A00000, 0x42DC0000, 0x00402D09, D_80241F0C_92047C, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x008C0501, 0x00000000, 0x00000000, 0x00000000, 0x001A0083, 0x00000001, D_80241D20_920290, 0xC3D48000, 0x428C0000, 0xC1A00000, 0x00402D09, D_80241F30_9204A0, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x008C0001, 0x008C0003, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_802426D0_920C40 -.word 0x00000005, D_80241D4C_9202BC, 0xC37E0000, 0x41A00000, 0x43250000, 0x00402D09, D_8024201C_92058C, 0x00000000, 0x00000000, 0x0000010E, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00830001, 0x00830002, 0x00830003, 0x00830003, 0x00830001, 0x00830001, 0x00830006, 0x00830006, 0x00830003, 0x00830003, 0x00830003, 0x00830003, 0x00830003, 0x00830003, 0x00830003, 0x00830003, 0x00000000, 0x00000000, 0x00000000, 0x001A0085 - -dlabel D_802428C0_920E30 -.word 0x00000006, D_80241D4C_9202BC, 0xC40C8000, 0x00000000, 0x43C00000, 0x00402D09, D_802420D8_920648, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00840101, 0x00840102, 0x00840103, 0x00840103, 0x00840101, 0x00840101, 0x00840106, 0x00840106, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00000000, 0x00000000, 0x00000000, 0x001A0003, 0x00000007, D_80241D4C_9202BC, 0xC4118000, 0x00000000, 0x43CB0000, 0x00402D09, D_802420D8_920648, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00840101, 0x00840102, 0x00840103, 0x00840103, 0x00840101, 0x00840101, 0x00840106, 0x00840106, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00000000, 0x00000000, 0x00000000, 0x001A0004, 0x00000008, D_80241D4C_9202BC, 0xC4030000, 0x00000000, 0x43CD8000, 0x00402D09, D_802420D8_920648, 0x00000000, 0x00000000, 0x0000010E, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00840101, 0x00840102, 0x00840103, 0x00840103, 0x00840101, 0x00840101, 0x00840106, 0x00840106, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00840103, 0x00000000, 0x00000000, 0x00000000, 0x001A0005 - -dlabel D_80242E90_921400 -.word 0x00000002, D_80241DA4_920314, 0xC3AC0000, 0x00000000, 0x43BD8000, 0x00402D09, D_80242238_9207A8, 0x00000000, 0x00000000, 0x0000010E, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00930001, 0x00930002, 0x00930003, 0x00930003, 0x00930001, 0x00930001, 0x00930000, 0x00930000, 0x00930001, 0x00930001, 0x00930001, 0x00930001, 0x00930001, 0x00930001, 0x00930001, 0x00930001, 0x00000000, 0x00000000, 0x00000000, 0x001A0086, 0x00000003, D_80241D4C_9202BC, 0xC43E0000, 0x00000000, 0x43200000, 0x00402D09, D_802422CC_92083C, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00840201, 0x00840202, 0x00840203, 0x00840203, 0x00840201, 0x00840201, 0x00840206, 0x00840206, 0x00840203, 0x00840203, 0x00840203, 0x00840203, 0x00840203, 0x00840203, 0x00840203, 0x00840203, 0x00000000, 0x00000000, 0x00000000, 0x001A008A, 0x00000002, D_802422F0_920860, 0x00000000, 0x00000001, D_802426D0_920C40, 0x00000000, 0x00000003, D_802428C0_920E30, 0x00000000, 0x00000002, D_80242E90_921400, 0x00000000, 0x00000001, 0x80247720, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_10/921830.data.s b/ver/us/asm/data/world/area_iwa/iwa_10/921830.data.s deleted file mode 100644 index 79abc4f26b..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_10/921830.data.s +++ /dev/null @@ -1,21 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802432C0_921830 -.word 0x00000043, 0x00000004, PlaySoundAtModel, 0x0000003B, 0xB000001A, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F80, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C80, 0xFFFFFECA, 0x00000012, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C80, 0xFFFFFE3E, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0x0000008C, 0x00000026, 0x00000002, 0xFE363C82, 0x00000000, 0x00000026, 0x00000002, 0xFE363C83, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C84, 0xF24A8680, 0x00000027, 0x00000002, 0xFE363C8B, 0x00002710, 0x00000043, 0x00000003, EnableModel, 0xFE363C8B, 0x00000001, 0x00000005, 0x00000001, 0x00000014, 0x00000043, 0x00000005, TranslateModel, 0xFE363C8B, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, ScaleModel, 0xFE363C8B, 0xFE363C83, 0xFE363C83, 0x00000001, 0x0000002C, 0x00000002, 0xFE363C81, 0xFE363C84, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24A7AB0, 0x0000002E, 0x00000002, 0xFE363C84, 0xF24A7E20, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000003, EnableModel, 0xFE363C8B, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80243438_9219A8 -.word 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000069, 0x0000001E, 0x0000000A, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateGroup, 0x00000055, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000059, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000004E, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000004F, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000050, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000051, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024354C_921ABC -.word 0x00000043, 0x00000005, MakeLerp, 0x00000069, 0x00000000, 0x0000001E, 0x0000000A, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateGroup, 0x00000055, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000059, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x0000004E, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x0000004F, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000050, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000051, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80243660_921BD0 -.word 0x00000003, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000005, TranslateModel, 0x0000003A, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000003B, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000003F, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000041, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000043, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000045, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000003D, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000002D, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000002E, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000002F, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000030, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000031, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000032, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000034, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000035, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000037, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000038, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000048, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000004A, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000004C, 0xFE363C80, 0x00000000, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x000000B4, 0x00000043, 0x00000005, TranslateModel, 0x0000003A, 0xFFFFFFBB, 0xFFFFFFCE, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000003B, 0xFFFFFFBB, 0xFFFFFFCE, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000003F, 0x0000004B, 0x00000019, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000041, 0x0000001E, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000043, 0xFFFFFFF6, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000045, 0xFFFFFFCE, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x0000003D, 0xFFFFFFFF, 0xFFFFFFC6, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000034, 0x00000052, 0xFFFFFFED, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000035, 0x00000052, 0xFFFFFFED, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000037, 0x00000052, 0xFFFFFFED, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000038, 0x00000052, 0xFFFFFFED, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000048, 0xFFFFFFEB, 0x0000001E, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000004A, 0xFFFFFFE7, 0x0000001E, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000004C, 0xFFFFFFC1, 0x0000000F, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000003A, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000003B, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000003F, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000041, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000043, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000045, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000003D, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000002D, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000002E, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000002F, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000030, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000031, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000032, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000034, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000035, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000037, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000038, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000048, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004A, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004C, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000003A, 0x00000045, 0x00000032, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000003B, 0x00000045, 0x00000032, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000003F, 0xFFFFFFB5, 0xFFFFFFE7, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000041, 0xFFFFFFE2, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000043, 0x0000000A, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000045, 0x00000032, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x0000003D, 0x00000001, 0x0000003A, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000034, 0xFFFFFFAE, 0x00000013, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000035, 0xFFFFFFAE, 0x00000013, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000037, 0xFFFFFFAE, 0x00000013, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000038, 0xFFFFFFAE, 0x00000013, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000048, 0x00000015, 0xFFFFFFE2, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000004A, 0x00000019, 0xFFFFFFE2, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000004C, 0x0000003F, 0xFFFFFFF1, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0xFD050F80, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x000003E8, 0x00000028, 0x00000002, 0xFE363C82, 0xFD050F80, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A70E0, 0x00000043, 0x00000006, RotateModel, 0x00000041, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, RotateModel, 0x00000043, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, RotateModel, 0x00000045, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7CE7, 0x00000043, 0x00000006, RotateModel, 0x0000003F, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000008, iwa_10_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000043, 0x00000008, iwa_10_UnkFloatFunc, 0xFE363C82, 0xFE363C81, 0xFFFFFFF6, 0x0000000A, 0x0000004B, 0x00000000, 0xFFFFFFA6, 0x00000043, 0x00000005, TranslateModel, 0x00000048, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000008, iwa_10_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000043, 0x00000005, TranslateModel, 0x0000004C, 0xFE363C80, 0xFFFFFFF2, 0x00000000, 0x00000043, 0x00000008, iwa_10_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000043, 0x00000008, iwa_10_UnkFloatFunc, 0xFE363C82, 0xFE363C81, 0xFFFFFFF6, 0x0000000A, 0x0000004B, 0x00000000, 0xFFFFFFA6, 0x00000043, 0x00000005, TranslateModel, 0x0000004A, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000008, iwa_10_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0xFFFFFFD8, 0x00000028, 0x0000004B, 0x00000000, 0x0000005A, 0x00000043, 0x00000006, RotateModel, 0x0000004A, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000008, iwa_10_UnkFloatFunc, 0xFE363C8C, 0xFE363C80, 0xFFFFFFE2, 0x0000001E, 0x0000000A, 0x00000000, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000003D, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x0000000B, 0x00000002, 0xFD050F81, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000012, 0x00000044, 0x00000001, D_802432C0_921830, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C8D, 0x00000014, 0x00000043, 0x00000008, iwa_10_UnkFloatFunc, 0xFE363C8D, 0xFE363C80, 0xF24A7D50, 0xF24A7E80, 0x0000000A, 0x00000000, 0x000000B4, 0x00000043, 0x00000008, iwa_10_UnkFloatFunc, 0xFE363C8D, 0xFE363C82, 0xF24A7A80, 0xF24A7BB0, 0x0000000A, 0x00000000, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7BB0, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C81, 0xF24A7E80, 0x00000043, 0x00000005, ScaleModel, 0x0000003B, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, ScaleModel, 0x0000003A, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C82, 0xF24A7BB0, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7BB0, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C81, 0xF24A7E80, 0x00000043, 0x00000005, ScaleModel, 0x0000003B, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, ScaleModel, 0x0000003A, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A5, 0x00000000, 0xFFFFFE4D, 0x00000054, 0x00000025, 0x00000024, 0x00000002, 0xFE363C88, 0x0000000A, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B581, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0xFFFFFFF6, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B581, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B582, 0x00000001, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A5, 0x00000000, 0xFFFFFE63, 0x00000054, 0x00000026, 0x00000024, 0x00000002, 0xFE363C88, 0x0000000A, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B582, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B583, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0xFFFFFFF6, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B583, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000027, 0x00000002, 0xFE363C89, 0xFE363C88, 0x0000000F, 0x00000002, 0xFE363C89, 0x0000005A, 0x00000024, 0x00000002, 0xFE363C89, 0x0000005A, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A6, 0x00000000, 0xFFFFFE4D, 0x00000054, 0x00000025, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000027, 0x00000002, 0xFE363C8A, 0xFE363C88, 0x0000000F, 0x00000002, 0xFE363C8A, 0x0000005A, 0x00000024, 0x00000002, 0xFE363C8A, 0x0000005A, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A6, 0x00000000, 0xFFFFFE63, 0x00000054, 0x00000026, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000035, 0xFE363C89, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000034, 0xFE363C89, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000038, 0xFE363C8A, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000037, 0xFE363C8A, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B584, 0x00000001, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFE57, 0x00000027, 0x00000002, 0xFE363C81, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFEB1, 0x00000027, 0x00000002, 0xFE363C81, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFD050F80, 0xFD050F81, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x0000002A, 0x00000002, 0xFE363C80, 0x0000004B, 0x0000000B, 0x00000002, 0xFE363C80, 0xFE363C8E, 0x00000024, 0x00000002, 0xFE363C8E, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C8D, 0xFFFFFFFF, 0x00000027, 0x00000002, 0xFE363C8B, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C8B, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C8D, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8D, 0x000003E8, 0x00000024, 0x00000002, 0xFE363C8D, 0x000003E8, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C8C, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8C, 0x000003E8, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80244848_922DB8 -.word 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFE57, 0x00000012, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFEB1, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C84, 0xFE363C81, 0x00000024, 0x00000002, 0xFE363C85, 0xFE363C82, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000027, 0x00000002, 0xFE363C83, 0xFFFFFFC7, 0x00000012, 0x00000000, 0x00000027, 0x00000002, 0xFE363C83, 0x00000039, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C84, 0xFFFFFFE1, 0x00000027, 0x00000002, 0xFE363C85, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFC, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000000, 0x00000012, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000000, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C81, 0xFFFFFFFA, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFFD8, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80244A24_922F94 -.word 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C80, 0xFFFFFBB4, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFBB4, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000028, 0x00000024, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C82, 0x00000028, 0x00000012, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C80, 0xFFFFFBB4, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFBB4, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFD8, 0x00000024, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C82, 0x00000028, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFC, 0x0000005A, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000000, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000001, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000004B, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000004C, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000050, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000051, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000034, 0x7FFFFE00, 0x00000045, 0x00000002, D_80244A24_922F94, 0xFE363C89, 0x00000045, 0x00000002, D_80244848_922DB8, 0xFE363C8E, 0x00000024, 0x00000002, 0xFAA2B584, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0xFFFFFB50, 0x00000024, 0x00000002, 0xFD050F81, 0x00000000, 0x00000024, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000008, 0x00000001, 0x0000003C, 0x00000044, 0x00000001, D_8024354C_921ABC, 0x00000024, 0x00000002, 0xFD050F80, 0xFFFFFB50, 0x00000024, 0x00000002, 0xFD050F81, 0xFFFFFFF6, 0x00000024, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xFD050F81, 0x00000000, 0x0000002D, 0x00000002, 0xFD050F81, 0xFD050F80, 0x0000002C, 0x00000002, 0xFD050F81, 0xF24AA280, 0x0000002F, 0x00000002, 0xFD050F81, 0xF24AA280, 0x0000000D, 0x00000002, 0xFD050F81, 0x0000000A, 0x00000024, 0x00000002, 0xFD050F81, 0x0000000A, 0x00000013, 0x00000000, 0x0000000F, 0x00000002, 0xFD050F80, 0x00000000, 0x00000004, 0x00000001, 0x00000001, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000003, 0x00000001, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000000, 0x00000024, 0x00000002, 0xFD050F81, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FD, 0x00000049, 0x00000001, 0xFE363C8E, 0x00000024, 0x00000002, 0xFAA2B584, 0x00000000, 0x00000043, 0x00000002, SetPlayerJumpscale, 0xF24A7E80, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFE57, 0x00000024, 0x00000002, 0xFE363C81, 0x0000002D, 0x00000024, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000003, 0x00000043, 0x00000005, PlayerJump, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000F, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000001, 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFC, 0xF24A8680, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000102, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFE48, 0x00000024, 0x00000002, 0xFE363C81, 0x0000002D, 0x00000024, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFC, 0xFE363C80, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000049, 0x00000001, 0xFE363C89, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000001, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000000, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFFFFFE5C, 0x00000014, 0x00000061, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFFFFFE5C, 0x00000014, 0x00000061, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000004B, 0x7FFFFE00, 0x00000043, 0x00000002, SetPlayerJumpscale, 0xF24A7E80, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000003, 0x00000043, 0x00000005, PlayerJump, 0xFFFFFE5C, 0x00000014, 0x00000061, 0x0000000F, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000000, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0xF24A7E80, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFFFFFE64, 0x00000014, 0x0000004C, 0x0000000F, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x0000004B, 0x7FFFFE00, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000000, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000044, 0x00000001, D_80243438_9219A8, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x0000004B, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x0000004C, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000050, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000051, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000034, 0x7FFFFE00, 0x00000024, 0x00000002, 0xFAA2B581, 0x00000001, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x008C0504, 0x008C0501, 0x00000000, 0x000D0000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000040, 0x00000000, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000024, 0x00000002, 0xFD050F80, 0xFFFFFFA6, 0x00000024, 0x00000002, 0xFD050F81, 0x00000000, 0x00000024, 0x00000002, 0xFAA2B585, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B582, 0x00000001, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000004B, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000004C, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000050, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000051, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000034, 0x7FFFFE00, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8680, 0x00000043, 0x00000004, PlayerMoveTo, 0xFFFFFE57, 0x00000046, 0x00000000, 0x00000043, 0x00000002, SetPlayerJumpscale, 0xF24A7E80, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFE57, 0x00000024, 0x00000002, 0xFE363C81, 0x0000002D, 0x00000024, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000003, 0x00000043, 0x00000005, PlayerJump, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000F, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000040, 0x00000001, 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFC, 0xF24A8680, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000102, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFC, 0xFFFFFE57, 0x00000046, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0xF24A7E80, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFE57, 0x00000024, 0x00000002, 0xFE363C81, 0x0000002D, 0x00000024, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000A, 0x00000024, 0x00000002, 0xFAA2B583, 0x00000001, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFC, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFFCE, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFC, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000000, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000001, 0x00000043, 0x00000002, SetPlayerJumpscale, 0xF24A7E80, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFE57, 0x00000024, 0x00000002, 0xFE363C81, 0x0000004B, 0x00000024, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000003, 0x00000043, 0x00000005, PlayerJump, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000F, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000000, 0x00000024, 0x00000002, 0xFAA2B584, 0x00000001, 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFC, 0xF24A8680, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000102, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000039, 0x00000027, 0x00000002, 0xFE363C81, 0xFFFFFFE1, 0x00000027, 0x00000002, 0xFE363C82, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFC, 0xFE363C80, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFC, 0x0000010E, 0x00000000, 0x00000044, 0x00000001, D_80244848_922DB8, 0x00000044, 0x00000001, D_8024354C_921ABC, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24E4E80, 0x00000043, 0x00000004, SetCamPosA, 0x00000000, 0xF2421080, 0xF2498A80, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24A7A80, 0xF24A5280, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000028, 0x00000002, 0xFE363C80, 0x00000096, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x008C0004, 0x008C0000, 0x00000005, 0x000D0003, 0x00000043, 0x00000002, PlaySound, 0x00000082, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x000003E8, 0x0000002D, 0x00000002, 0xFD050F81, 0xF24A7AA0, 0x0000000C, 0x00000002, 0xFD050F81, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xFD050F81, 0xF24A5280, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000005A, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000045, 0x00000002, D_80244A24_922F94, 0xFE363C89, 0x00000008, 0x00000001, 0x00000082, 0x00000008, 0x00000001, 0x00000064, 0x00000043, 0x00000003, GotoMap, 0x80248468, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000003, EnableModel, 0x00000050, 0x00000000, 0x00000043, 0x00000004, SetModelFlags, 0x00000050, 0x00000100, 0x00000001, 0x00000043, 0x00000003, CloneModel, 0x00000050, 0x00002710, 0x00000043, 0x00000003, CloneModel, 0x00000050, 0x00002711, 0x00000043, 0x00000003, CloneModel, 0x00000050, 0x00002712, 0x00000043, 0x00000003, CloneModel, 0x00000050, 0x00002713, 0x00000043, 0x00000003, CloneModel, 0x00000050, 0x00002714, 0x00000043, 0x00000003, CloneModel, 0x00000050, 0x00002715, 0x00000043, 0x00000003, CloneModel, 0x00000050, 0x00002716, 0x00000043, 0x00000003, CloneModel, 0x00000050, 0x00002717, 0x00000043, 0x00000003, CloneModel, 0x00000050, 0x00002718, 0x00000043, 0x00000003, CloneModel, 0x00000050, 0x00002719, 0x00000024, 0x00000002, 0xFAA2B585, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0xFFFFFFA6, 0x00000044, 0x00000001, D_80243660_921BD0, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000006, RotateGroup, 0x00000055, 0x00000069, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000059, 0x00000069, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000004E, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000004F, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000050, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000001, 0x00000051, 0x7FFFFE00, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_10/923FD0.data.s b/ver/us/asm/data/world/area_iwa/iwa_10/923FD0.data.s deleted file mode 100644 index 9fb614ecc9..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_10/923FD0.data.s +++ /dev/null @@ -1,24 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel iwa_10_SuperBlock_CantUpgradeMessages -.word 0x001D00F0, 0x001D00F1 - -dlabel iwa_10_SuperBlock_PartnerIDs -.word 0x00010002, 0x00030004, 0x00090006, 0x00070008 - -dlabel iwa_10_SuperBlock_UpgradeDescMessages -.word 0x001D00E0, 0x001D00E1, 0x001D00E2, 0x001D00E3, 0x001D00E4, 0x001D00E5, 0x001D00E6, 0x001D00E7, 0x001D00E8, 0x001D00E9, 0x001D00EA, 0x001D00EB, 0x001D00EC, 0x001D00ED, 0x001D00EE, 0x001D00EF - -dlabel iwa_10_SuperBlock_UpgradeOrbAngles -.word 0x430C0000, 0x43340000, 0x435C0000 - -dlabel D_80245AC4_924034 -.word 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, PlaySound, 0x0000212D, 0x00000043, 0x00000002, iwa_10_SuperBlock_GatherEnergyFX, 0xFD050F8B, 0x00000008, 0x00000001, 0x00000055, 0x00000056, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x0000212E, 0x00000043, 0x00000003, iwa_10_SuperBlock_WhiteScreenFlash, 0x00000046, 0x00000046, 0x00000008, 0x00000001, 0x0000001B, 0x00000043, 0x00000002, PlaySound, 0x0000208E, 0x00000043, 0x00000003, iwa_10_SuperBlock_WhiteScreenFlash, 0x00000032, 0x00000032, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000002, iwa_10_SuperBlock_HideBlockContent, 0xFD050F8B, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000002F, 0x00000043, 0x00000001, iwa_10_SuperBlock_RadiateFaintEnergyFX, 0x00000043, 0x00000001, iwa_10_SuperBlock_PartnerSparkles2, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, iwa_10_SuperBlock_PartnerSparkles4, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, iwa_10_SuperBlock_PartnerSparkles2, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000002, iwa_10_SuperBlock_AnimateEnergyOrbs, 0xFD050F8B, 0x00000008, 0x00000001, 0x0000001E, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80245C28_924198 -.word 0x0000000A, 0x00000002, 0xF8405E51, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, IsStartingConversation, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, iwa_10_SuperBlock_WaitForPlayerToLand, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, ModifyGlobalOverrideFlags, 0x00000001, 0x00200000, 0x00000043, 0x00000001, iwa_10_SuperBlock_SetOverride40, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000100, 0x00000001, 0x00000043, 0x00000003, iwa_10_SuperBlock_StartGlowEffect, 0xFD050F8B, 0xFE363C89, 0x00000043, 0x00000003, FindKeyItem, 0x0000000F, 0xFE363C8C, 0x00000043, 0x00000001, iwa_10_SuperBlock_CountEligiblePartners, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00DC, 0x000000A0, 0x00000028, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, iwa_10_SuperBlock_EndGlowEffect, 0xFE363C89, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000003, ModifyGlobalOverrideFlags, 0x00000000, 0x00200000, 0x00000043, 0x00000001, iwa_10_SuperBlock_ClearOverride40, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405D36, 0x00000000, 0x00000024, 0x00000002, 0xF8405D36, 0x00000001, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00DA, 0x000000A0, 0x00000028, 0x00000012, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00DB, 0x000000A0, 0x00000028, 0x00000013, 0x00000000, 0x00000043, 0x00000001, iwa_10_SuperBlock_ShowSelectPartnerMenu, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000002, iwa_10_SuperBlock_EndGlowEffect, 0xFE363C89, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000003, ModifyGlobalOverrideFlags, 0x00000000, 0x00200000, 0x00000043, 0x00000001, iwa_10_SuperBlock_ClearOverride40, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C8B, 0xFE363C81, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000002, GetCurrentPartnerID, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0xFE363C8B, 0x00000043, 0x00000002, iwa_10_SuperBlock_SwitchToPartner, 0xFE363C8B, 0x00000012, 0x00000000, 0x00000043, 0x00000002, func_802CF56C, 0x00000002, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00DF, 0x000000A0, 0x00000028, 0x00000043, 0x00000002, ShowChoice, 0x001E000D, 0x00000043, 0x00000001, CloseMessage, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000002, iwa_10_SuperBlock_EndGlowEffect, 0xFE363C89, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000003, ModifyGlobalOverrideFlags, 0x00000000, 0x00200000, 0x00000043, 0x00000001, iwa_10_SuperBlock_ClearOverride40, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000046, 0x00000001, D_80245AC4_924034, 0x00000043, 0x00000003, iwa_10_SuperBlock_GetPartnerRank, 0xFE363C8B, 0xFE363C8D, 0x00000024, 0x00000002, 0xF8405E51, 0x00000001, 0x00000043, 0x00000002, iwa_10_SuperBlock_EndGlowEffect, 0xFE363C89, 0x00000043, 0x00000001, iwa_10_SuperBlock_LoadCurrentPartnerName, 0x0000000A, 0x00000002, 0xFE363C8D, 0x00000001, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00DD, 0x000000A0, 0x00000028, 0x00000012, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00DE, 0x000000A0, 0x00000028, 0x00000013, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000003, ModifyGlobalOverrideFlags, 0x00000000, 0x00200000, 0x00000043, 0x00000001, iwa_10_SuperBlock_ClearOverride40, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802460A8_924618 -.word 0x00000024, 0x00000002, 0xF8405E50, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405E50, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer2Block_TallHitbox, 0xFFFFFBF0, 0x000000A0, 0xFFFFFE57, 0x00000000, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_802460A8_924618, 0x00000013, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_SuperBlock, 0xFFFFFABA, 0x000000DC, 0xFFFFFF2E, 0x00000000, 0x80000000, 0x00000024, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000043, 0x00000002, AssignBlockFlag, 0xF8405E51, 0x00000043, 0x00000002, AssignScript, D_80245C28_924198, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0xFFFFFCF4, 0x00000000, 0xFFFFFF1D, 0xFFFFFFF1, 0x0000010E, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0xFFFFFB7B, 0x00000046, 0xFFFFFEE6, 0x00000028, 0x00000078, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_ArrowSign, 0xFFFFFC7B, 0x000000B9, 0xFFFFFDD5, 0x00000000, 0x00000078, 0x80000000, 0x00000043, 0x00000007, MakeEntity, Entity_SavePoint, 0xFFFFFDF3, 0x00000050, 0x00000073, 0x00000000, 0x80000000, 0x00000043, 0x00000007, MakeEntity, Entity_HeartBlock, 0xFFFFFD26, 0x00000113, 0xFFFFFE02, 0x00000000, 0x80000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_10/9247B0.data.s b/ver/us/asm/data/world/area_iwa/iwa_10/9247B0.data.s deleted file mode 100644 index 9e05eba5bf..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_10/9247B0.data.s +++ /dev/null @@ -1,81 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80246240_9247B0 -.word 0x00000000, 0x00230018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630010 - -dlabel D_8024626C_9247DC -.word 0x00000000 - -dlabel D_80246270_9247E0 -.word 0x00000000 - -dlabel D_80246274_9247E4 -.word 0x00000024, 0x00000002, 0xFE363C89, 0xFE363C81, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000004, iwa_10_AddPlayerHandsOffset, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000042, 0x00000002, 0xFE363C80, 0x00050000, 0x00000043, 0x00000007, MakeItemEntity, 0xFE363C80, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00060005, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000002, RemoveItemEntity, 0xFE363C80, 0x00000023, 0x00000000, 0x00000043, 0x00000002, func_80241434_91F9A4, 0xFE363C8A, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802463B8_924928 -.word 0x00000043, 0x00000002, func_8024146C_91F9DC, 0xFE363C80, 0x0000004E, 0x00000006, D_80246274_9247E4, 0x00000010, 0x00000000, D_80248480, 0x00000000, 0x00000001, 0x00000043, 0x00000002, func_802413E0_91F950, 0xFE363C80, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000C, 0x00000002, 0xFE363C81, 0x000000D7, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C80, 0xFFFFFDA8, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x000D000E, 0x00000140, 0x00000096, 0x00000056, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x0001002A, 0x00000043, 0x00000003, PlaySoundAtPlayer, 0x00000263, 0x00000000, 0x00000043, 0x0000000A, ShowEmote, 0x00000000, 0x00000002, 0x00000000, 0x00000014, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000007, AdjustCam, 0x00000000, 0xF24A8680, 0x0000001E, 0x0000012C, 0xF24AB680, 0xF24A5480, 0x00000056, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00080022, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x00000037, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0xFFFFFE70, 0x000000D7, 0xFFFFFE02, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000004, 0x00000040, 0x00000001, 0x00000056, 0x00000000, 0x00000043, 0x00000005, SetNpcRotation, 0x00000004, 0x00000000, 0x00000000, 0x0000000F, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000004, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000005, SetNpcRotation, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000004, 0x0000005A, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000005, SetNpcRotation, 0x00000004, 0x00000000, 0x00000000, 0xFFFFFFF1, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000004, 0x0000010E, 0x00000000, 0x00000043, 0x00000005, SetNpcRotation, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000057, 0x00000000, 0x00000024, 0x00000002, 0xFD050F8A, 0xFFFFFE02, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000056, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFE02, 0xFE363C82, 0x0000003C, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000024, 0x00000002, 0xFD050F8A, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000019, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFE70, 0xFE363C80, 0x00000037, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0xFE363C80, 0x000000DC, 0xFD050F8A, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010017, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00040004, 0x00000056, 0x00000000, 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x00000005, 0xF24A8280, 0x00000057, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, GetNpcPos, 0x00000004, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000027, 0x00000002, 0xFE363C80, 0xFE363C83, 0x0000002A, 0x00000002, 0xFE363C80, 0x00000002, 0x00000027, 0x00000002, 0xFE363C82, 0xFE363C85, 0x0000002A, 0x00000002, 0xFE363C82, 0x00000002, 0x00000043, 0x00000006, PlaySoundAt, 0x000000E1, 0x00000000, 0xFE363C80, 0x000000E6, 0xFE363C82, 0x00000043, 0x0000000F, PlayEffect, 0x00000018, 0x00000003, 0xFE363C80, 0x000000E6, 0xFE363C82, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C8B, 0x000000E6, 0x00000024, 0x00000002, 0xFE363C8C, 0xFE363C82, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000D, 0x00000002, 0xFE363C82, 0xFFFFFE84, 0x00000024, 0x00000002, 0xFE363C82, 0xFFFFFE84, 0x00000013, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000004, 0xF24A7E80, 0x00000043, 0x00000005, GetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C83, 0x00000027, 0x00000002, 0xFE363C80, 0x0000001E, 0x00000043, 0x00000006, NpcJump1, 0x00000004, 0xFE363C80, 0x000000D7, 0xFE363C82, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000F, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00040005, 0x00000043, 0x00000006, NpcJump1, 0x00000004, 0xFE363C80, 0x000000D7, 0xFE363C82, 0x00000008, 0x00000057, 0x00000000, 0x00000043, 0x00000002, SetPlayerJumpscale, 0xF24A7E80, 0x00000028, 0x00000002, 0xFE363C80, 0x0000001E, 0x00000043, 0x00000005, PlayerJump1, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000F, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000162, 0x00000000, 0xFE363C8A, 0xFE363C8B, 0xFE363C8C, 0x00000056, 0x00000000, 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x00000005, 0xF24A7E80, 0x00000057, 0x00000000, 0x00000028, 0x00000002, 0xFE363C80, 0x0000000F, 0x00000043, 0x00000003, SetPlayerFlagBits, 0x00200000, 0x00000001, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000002, SetPlayerAnimation, 0x0001000F, 0x00000043, 0x00000005, PlayerJump1, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000056, 0x00000000, 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x00000003, 0xF24A7E80, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000004, NpcFaceNpc, 0xFFFFFFFC, 0x00000004, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010030, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00040001, 0x00000043, 0x00000005, GetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x00000006, NpcJump1, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000043, 0x00000003, SetPlayerFlagBits, 0x00200000, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000007, AdjustCam, 0x00000000, 0xF24A8680, 0x00000023, 0x000000FF, 0xF24AC080, 0xF24A4C80, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00040002, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x0000003C, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000004, 0xF24A8680, 0x00000043, 0x00000005, NpcMoveTo, 0x00000004, 0xFE363C80, 0xFE363C82, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000004, 0x00040001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D000F, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, NpcJump0, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000A, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D0010, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00080007, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D0011, 0x00000024, 0x00000002, 0xF5DE0180, 0xFFFFFFB9, 0x00000043, 0x00000003, ResetCam, 0x00000000, 0xF24A8680, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000043, 0x00000003, BindNpcAI, 0x00000004, D_802474F8_925A68, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80246E80_9253F0 -.word 0x00000036, 0x00000054, 0x00000040, 0x00000000 - -dlabel D_80246E90_925400 -.word 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF5DE01FA, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x0000000A, 0x00000002, 0xF8405E41, 0x00000001, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405E42, 0x00000001, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405E43, 0x00000001, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000003, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000043, 0x00000005, GetNpcPos, 0x00000004, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0x0000000C, 0x00000002, 0xFE363C81, 0xFE363C84, 0x00000027, 0x00000002, 0xFE363C84, 0xFFFFFFE2, 0x00000012, 0x00000000, 0x00000027, 0x00000002, 0xFE363C84, 0x0000001E, 0x00000013, 0x00000000, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C84, 0xFE363C86, 0x00000014, 0x00000043, 0x00000003, PlayerFaceNpc, 0x00000004, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, func_802CF56C, 0x00000002, 0x00000043, 0x00000007, AdjustCam, 0x00000000, 0xF24A8A80, 0xF24A7A80, 0xF24F2A80, 0xF24AC080, 0xF24A5280, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, D_80246E80_9253F0, 0x00000024, 0x00000002, 0xFE363C81, 0x00000004, 0x00000046, 0x00000001, D_802463B8_924928, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xF5DE01FA, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D0012, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D0015, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D0017, 0x00000016, 0x00000001, 0x00000003, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D001C, 0x00000043, 0x00000002, ShowChoice, 0x001E000F, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D001B, 0x00000043, 0x00000003, ResetCam, 0x00000000, 0xF24A8A80, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000023, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D0013, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C80, 0x00000027, 0x00000002, 0xF5DE01FA, 0x00000001, 0x00000014, 0x00000001, 0xF5DE01FA, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D0014, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D0016, 0x00000016, 0x00000001, 0x00000003, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040007, 0x00040001, 0x00000000, 0x000D0018, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010028, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D0019, 0x00000043, 0x00000002, ShowChoice, 0x001E000F, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D001A, 0x00000043, 0x00000002, ShowChoice, 0x001E000F, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D001B, 0x00000043, 0x00000003, ResetCam, 0x00000000, 0xF24A8A80, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000023, 0x00000000, 0x00000023, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0x00000004, 0x00040006, 0x00040001, 0x00000000, 0x000D001D, 0x00000043, 0x00000003, iwa_10_ChangeNpcToPartner, 0x00000004, 0x00000004, 0x00000024, 0x00000002, 0xF5DE0180, 0xFFFFFFBA, 0x00000043, 0x00000001, func_80241510_91FA80, 0x00000044, 0x00000001, 0x8024187C, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D018C, 0x000000A0, 0x00000028, 0x00000044, 0x00000001, 0x802418B0, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFC, 0x00040006, 0x00040001, 0x00000000, 0x000D001E, 0x00000043, 0x00000002, AddKeyItem, 0x00000036, 0x00000043, 0x00000002, AddKeyItem, 0x00000054, 0x00000043, 0x00000002, AddKeyItem, 0x00000040, 0x00000013, 0x00000000, 0x00000043, 0x00000003, ResetCam, 0x00000000, 0xF24A8A80, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000002, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802474F8_925A68 -.word 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFF, 0xF24A7E80, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFD62, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFE1B, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00040002, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFF, 0xFE363C80, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00040001, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000005A, 0x00000007, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000010E, 0x00000007, 0x00000008, 0x00000001, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C80, 0x00000078, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00040002, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFF, 0xFE363C80, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00040001, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000010E, 0x00000007, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000005A, 0x00000007, 0x00000008, 0x00000001, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFF88, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80247688_925BF8 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80246E90_925400, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0xFFFFFFB9, 0x00000043, 0x00000005, SetNpcPos, 0x00000004, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000018, 0x00000001, 0xFFFFFFBA, 0x00000043, 0x00000003, BindNpcIdle, 0xFFFFFFFF, D_802474F8_925A68, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, RemoveNpc, 0xFFFFFFFF, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000004, D_80246240_9247B0, 0xC4188000, 0x43660000, 0xC3F28000, 0x00200D09, D_80247688_925BF8, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00040001, 0x00040002, 0x00040003, 0x00040003, 0x00040001, 0x00040001, 0x00040000, 0x00040000, 0x00040001, 0x00040001, 0x00040001, 0x00040001, 0x00040001, 0x00040001, 0x00040001, 0x00040001, 0x00000000, 0x00000000, 0x00000000, 0x001A0084 - -dlabel D_80247910_925E80 -.word 0x00000030, 0x00000001, 0xFE363C80, 0x00000034, 0x00000004, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C85, 0xFE363C8F, 0xFE363C87, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000B, 0x00000002, 0xFE363C81, 0x00000000, 0x00000005, 0x00000001, 0x00000005, 0x00000030, 0x00000001, 0xFE363C81, 0x00000031, 0x00000001, 0xFE363C82, 0x00000005, 0x00000001, 0xFE363C82, 0x00000031, 0x00000001, 0xFE363C83, 0x00000043, 0x00000006, iwa_10_TransformFoliage, 0xFE363C83, 0xF24A7AE7, 0x00000001, 0xFE363C8F, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000043, 0x00000004, PlaySoundAtModel, 0xFE363C83, 0x00000153, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFE363C81, 0x00000031, 0x00000001, 0xFE363C82, 0x00000005, 0x00000001, 0xFE363C82, 0x00000031, 0x00000001, 0xFE363C83, 0x00000043, 0x00000006, iwa_10_TransformFoliage, 0xFE363C83, 0xF24A7AE7, 0xFFFFFFFF, 0xFE363C8F, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000030, 0x00000001, 0xFE363C81, 0x00000031, 0x00000001, 0xFE363C82, 0x00000005, 0x00000001, 0xFE363C82, 0x00000031, 0x00000001, 0xFE363C83, 0x00000043, 0x00000005, TranslateModel, 0xFE363C83, 0x00000000, 0x00000000, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x0000000B, 0x00000002, 0xFE363C82, 0x00000000, 0x00000030, 0x00000001, 0xFE363C82, 0x00000031, 0x00000001, 0xFE363C83, 0x00000005, 0x00000001, 0xFE363C83, 0x00000031, 0x00000001, 0xFE363C84, 0x00000033, 0x00000003, 0xFE363C85, 0xFE363C86, 0xFE363C87, 0x00000033, 0x00000003, 0xFE363C88, 0xFE363C89, 0xFE363C8A, 0x0000000A, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000007, DropItemEntity, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0xFE363C87, 0xFE363C88, 0xFE363C89, 0x00000012, 0x00000000, 0x00000043, 0x00000003, GetValueByRef, 0xFE363C8A, 0xFE363C8B, 0x0000000A, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000043, 0x00000003, SetValueByRef, 0xFE363C8A, 0x00000001, 0x00000043, 0x00000007, DropItemEntity, 0xFE363C84, 0xFE363C85, 0xFE363C86, 0xFE363C87, 0xFE363C88, 0xFE363C89, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x0000000B, 0x00000002, 0xFE363C84, 0x00000000, 0x00000046, 0x00000001, 0xFE363C84, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000004C, 0x00000001, 0xF24A8280, 0x00000030, 0x00000001, 0xFE363C80, 0x00000034, 0x00000004, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000031, 0x00000001, 0xFE363C85, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C86, 0xFE363C8F, 0xFE363C88, 0x00000043, 0x00000002, PlaySound, 0x00000165, 0x00000043, 0x00000002, PlaySound, 0x00000166, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000B, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000005, 0x00000001, 0x00000005, 0x00000030, 0x00000001, 0xFE363C81, 0x00000031, 0x00000001, 0xFE363C82, 0x00000005, 0x00000001, 0xFE363C82, 0x00000031, 0x00000001, 0xFE363C83, 0x00000043, 0x00000006, iwa_10_TransformFoliage, 0xFE363C83, 0xF24A7AE7, 0xF24A7B4D, 0xFE363C8F, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000043, 0x00000004, PlaySoundAtModel, 0xFE363C83, 0x00000166, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFE363C81, 0x00000031, 0x00000001, 0xFE363C82, 0x00000005, 0x00000001, 0xFE363C82, 0x00000031, 0x00000001, 0xFE363C83, 0x00000043, 0x00000006, iwa_10_TransformFoliage, 0xFE363C83, 0xF24A7AE7, 0xF24A79B4, 0xFE363C8F, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000030, 0x00000001, 0xFE363C81, 0x00000031, 0x00000001, 0xFE363C82, 0x00000005, 0x00000001, 0xFE363C82, 0x00000031, 0x00000001, 0xFE363C83, 0x00000043, 0x00000005, TranslateModel, 0xFE363C83, 0x00000000, 0x00000000, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000B, 0x00000002, 0xFE363C82, 0x00000000, 0x00000005, 0x00000001, 0x00000005, 0x00000030, 0x00000001, 0xFE363C82, 0x00000031, 0x00000001, 0xFE363C83, 0x00000005, 0x00000001, 0xFE363C83, 0x00000031, 0x00000001, 0xFE363C84, 0x00000043, 0x00000006, iwa_10_TransformFoliage, 0xFE363C84, 0xF24A7AE7, 0xF24A7B4D, 0xFE363C8F, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000043, 0x00000004, PlaySoundAtModel, 0xFE363C84, 0x00000165, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFE363C82, 0x00000031, 0x00000001, 0xFE363C83, 0x00000005, 0x00000001, 0xFE363C83, 0x00000031, 0x00000001, 0xFE363C84, 0x00000043, 0x00000006, iwa_10_TransformFoliage, 0xFE363C84, 0xF24A7AE7, 0xF24A79B4, 0xFE363C8F, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000030, 0x00000001, 0xFE363C82, 0x00000031, 0x00000001, 0xFE363C83, 0x00000005, 0x00000001, 0xFE363C83, 0x00000031, 0x00000001, 0xFE363C84, 0x00000043, 0x00000005, TranslateModel, 0xFE363C84, 0x00000000, 0x00000000, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x0000000B, 0x00000002, 0xFE363C83, 0x00000000, 0x00000030, 0x00000001, 0xFE363C83, 0x00000031, 0x00000001, 0xFE363C84, 0x00000005, 0x00000001, 0xFE363C84, 0x00000031, 0x00000001, 0xFE363C85, 0x00000033, 0x00000003, 0xFE363C86, 0xFE363C87, 0xFE363C88, 0x00000033, 0x00000003, 0xFE363C89, 0xFE363C8A, 0xFE363C8B, 0x0000000A, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000043, 0x00000007, DropItemEntity, 0xFE363C85, 0xFE363C86, 0xFE363C87, 0xFE363C88, 0xFE363C89, 0xFE363C8A, 0x00000012, 0x00000000, 0x00000043, 0x00000003, GetValueByRef, 0xFE363C8B, 0xFE363C8C, 0x0000000A, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000043, 0x00000003, SetValueByRef, 0xFE363C8B, 0x00000001, 0x00000043, 0x00000007, DropItemEntity, 0xFE363C85, 0xFE363C86, 0xFE363C87, 0xFE363C88, 0xFE363C89, 0xFE363C8A, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x0000000B, 0x00000002, 0xFE363C84, 0x00000000, 0x00000030, 0x00000001, 0xFE363C84, 0x00000031, 0x00000001, 0xFE363C85, 0x00000005, 0x00000001, 0xFE363C85, 0x00000033, 0x00000003, 0xFE363C86, 0xFE363C87, 0xFE363C88, 0x00000043, 0x0000000F, PlayEffect, 0x00000014, 0x00000000, 0xFE363C86, 0xFE363C87, 0xFE363C88, 0x00000064, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000006, 0x00000000, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x0000000B, 0x00000002, 0xFE363C85, 0x00000000, 0x00000046, 0x00000001, 0xFE363C85, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80248274_9267E4 -.word 0x00000001, 0x00000010 - -dlabel D_8024827C_9267EC -.word 0x00000001, 0x00000157, 0xFFFFFCB9, 0x0000000F, 0x00000209, 0x00000006, 0xF8405E45, 0xFAA2B58A - -dlabel D_8024829C_92680C -.word 0x00000001, 0xFFFFFCB9, 0x0000000F, 0x00000209 - -dlabel D_802482AC_92681C -.word D_80248274_9267E4, D_8024827C_9267EC, D_8024829C_92680C, 0x00000000 - -dlabel D_802482BC_92682C -.word 0x00000001, 0x00000011 - -dlabel D_802482C4_926834 -.word 0x00000001, 0x00000157, 0xFFFFFD4D, 0x00000016, 0x00000180, 0x00000006, 0xF8405E46, 0xFAA2B58B - -dlabel D_802482E4_926854 -.word 0x00000001, 0xFFFFFD4D, 0x00000016, 0x00000180 - -dlabel D_802482F4_926864 -.word D_802482BC_92682C, D_802482C4_926834, D_802482E4_926854, 0x00000000 - -dlabel D_80248304_926874 -.word 0x00000001, 0x00000012 - -dlabel D_8024830C_92687C -.word 0x00000001, 0x00000157, 0xFFFFFC5C, 0x00000015, 0x00000195, 0x00000006, 0xF8405E47, 0xFAA2B58C - -dlabel D_8024832C_92689C -.word 0x00000001, 0xFFFFFC5C, 0x00000015, 0x00000195 - -dlabel D_8024833C_9268AC -.word D_80248304_926874, D_8024830C_92687C, D_8024832C_92689C, 0x00000000 - -dlabel D_8024834C_9268BC -.word 0x00000001, 0x00000013 - -dlabel D_80248354_9268C4 -.word 0x00000001, 0x000000AB, 0xFFFFFCE0, 0x00000017, 0x00000118, 0x00000006, 0x00000000, 0xFAA2B58D - -dlabel D_80248374_9268E4 -.word 0x00000001, 0xFFFFFCE0, 0x00000017, 0x00000118 - -dlabel D_80248384_9268F4 -.word D_8024834C_9268BC, D_80248354_9268C4, D_80248374_9268E4, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, D_802482AC_92681C, 0x00000047, 0x00000005, D_80247910_925E80, 0x00000100, 0x0000005F, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, D_802482F4_926864, 0x00000047, 0x00000005, D_80247910_925E80, 0x00000100, 0x00000060, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, D_8024833C_9268AC, 0x00000047, 0x00000005, D_80247910_925E80, 0x00000100, 0x00000061, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, D_80248384_9268F4, 0x00000047, 0x00000005, D_80247910_925E80, 0x00000100, 0x00000062, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_11/926D00.data.s b/ver/us/asm/data/world/area_iwa/iwa_11/926D00.data.s deleted file mode 100644 index 60cb98496a..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_11/926D00.data.s +++ /dev/null @@ -1,6 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240310_926D00 -.word 0x00000000, 0x00000000, 0x41700000, 0x42B40000, 0x00000000, 0x00000000, 0x41700000, 0x43870000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8024044C, D_80240310_926D00, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000080, 0x00000000, 0x00000008, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_11/926D90.data.s b/ver/us/asm/data/world/area_iwa/iwa_11/926D90.data.s deleted file mode 100644 index 83ba467903..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_11/926D90.data.s +++ /dev/null @@ -1,6 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802403A0_926D90 -.word 0x0000000C, 0x00000002, 0xF5DE0180, 0xFFFFFFB8, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000043, 0x00000001, func_80240000_9269F0, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000003, GotoMap, 0x80242858, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000003, GotoMap, 0x80242850, 0x00000001, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xF5DE0329, 0x00000008, 0x00000043, 0x00000002, SetSpriteShading, 0xFFFFFFFF, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x0000001E, 0x00000010, 0x00001000, 0x00000043, 0x00000005, SetCamBGColor, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamEnabled, 0x00000000, 0x00000001, 0x00000043, 0x00000003, SetCamLeadPlayer, 0x00000000, 0x00000000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetCamPosA, 0x00000000, 0xFFFFE958, 0x00000000, 0x00000043, 0x00000004, SetCamPosB, 0x00000000, 0x00001644, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, MakeNpcs, 0x00000001, 0x8024282C, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000000D, 0x7FFFFE00, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x0000000B, 0x7FFFFE00, 0x00000046, 0x00000001, 0x80241FD8, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000044, 0x00000001, 0x80241DE0, 0x00000016, 0x00000001, 0x00000001, 0x00000044, 0x00000001, 0x80241C1C, 0x00000023, 0x00000000, 0x00000044, 0x00000001, 0x802422D0, 0x00000044, 0x00000001, D_802403A0_926D90, 0x00000044, 0x00000001, 0x80240370, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_iwa/iwa_11/927030.data.s b/ver/us/asm/data/world/area_iwa/iwa_11/927030.data.s deleted file mode 100644 index ad71740146..0000000000 --- a/ver/us/asm/data/world/area_iwa/iwa_11/927030.data.s +++ /dev/null @@ -1,27 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240640_927030 -.word 0x00000043, 0x00000004, PlaySoundAtModel, 0x0000000E, 0xB000001A, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F80, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C80, 0xFFFFFECA, 0x00000012, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C80, 0xFFFFFE3E, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0x0000008C, 0x00000026, 0x00000002, 0xFE363C82, 0x00000000, 0x00000026, 0x00000002, 0xFE363C83, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C84, 0xF24A8680, 0x00000027, 0x00000002, 0xFE363C8B, 0x00002710, 0x00000043, 0x00000003, EnableModel, 0xFE363C8B, 0x00000001, 0x00000005, 0x00000001, 0x00000014, 0x00000043, 0x00000005, TranslateModel, 0xFE363C8B, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, ScaleModel, 0xFE363C8B, 0xFE363C83, 0xFE363C83, 0x00000001, 0x0000002C, 0x00000002, 0xFE363C81, 0xFE363C84, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24A7AB0, 0x0000002E, 0x00000002, 0xFE363C84, 0xF24A7E20, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000003, EnableModel, 0xFE363C8B, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802407B8_9271A8 -.word 0x00000003, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000005, TranslateModel, 0x0000000D, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000000E, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000012, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000014, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000016, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000018, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000010, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000000, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000001, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000002, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000003, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000004, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000005, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000007, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000008, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000000A, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000000B, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000001B, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000001D, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000001F, 0xFE363C80, 0x00000000, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x000000B4, 0x00000043, 0x00000005, TranslateModel, 0x0000000D, 0xFFFFFFBB, 0xFFFFFFCE, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000000E, 0xFFFFFFBB, 0xFFFFFFCE, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000012, 0x0000004B, 0x00000019, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000014, 0x0000001E, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000016, 0xFFFFFFF6, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000018, 0xFFFFFFCE, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000010, 0xFFFFFFFF, 0xFFFFFFC6, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000007, 0x00000052, 0xFFFFFFED, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000008, 0x00000052, 0xFFFFFFED, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x0000000A, 0x00000052, 0xFFFFFFED, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x0000000B, 0x00000052, 0xFFFFFFED, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x0000001B, 0xFFFFFFEB, 0x0000001E, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000001D, 0xFFFFFFE7, 0x0000001E, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000001F, 0xFFFFFFC1, 0x0000000F, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000000D, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000000E, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000012, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000014, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000016, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000018, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000010, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000000, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000001, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000002, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000003, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000004, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000005, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000007, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000008, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000000A, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000000B, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000001B, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000001D, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000001F, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000000D, 0x00000045, 0x00000032, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000000E, 0x00000045, 0x00000032, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000012, 0xFFFFFFB5, 0xFFFFFFE7, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000014, 0xFFFFFFE2, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000016, 0x0000000A, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000018, 0x00000032, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000010, 0x00000001, 0x0000003A, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000007, 0xFFFFFFAE, 0x00000013, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000008, 0xFFFFFFAE, 0x00000013, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x0000000A, 0xFFFFFFAE, 0x00000013, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x0000000B, 0xFFFFFFAE, 0x00000013, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x0000001B, 0x00000015, 0xFFFFFFE2, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000001D, 0x00000019, 0xFFFFFFE2, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000001F, 0x0000003F, 0xFFFFFFF1, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0xFD050F80, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x000003E8, 0x00000028, 0x00000002, 0xFE363C82, 0xFD050F80, 0x00000013, 0x00000000, 0x00000043, 0x00000001, func_802401B0_926BA0, 0x00000043, 0x00000006, RotateModel, 0x00000014, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, RotateModel, 0x00000016, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, RotateModel, 0x00000018, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000001, func_80240208_926BF8, 0x00000043, 0x00000006, RotateModel, 0x00000012, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000008, iwa_11_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000043, 0x00000008, iwa_11_UnkFloatFunc, 0xFE363C82, 0xFE363C81, 0xFFFFFFF6, 0x0000000A, 0x0000004B, 0x00000000, 0xFFFFFFA6, 0x00000043, 0x00000005, TranslateModel, 0x0000001B, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000008, iwa_11_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000043, 0x00000005, TranslateModel, 0x0000001F, 0xFE363C80, 0xFFFFFFF2, 0x00000000, 0x00000043, 0x00000008, iwa_11_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000043, 0x00000008, iwa_11_UnkFloatFunc, 0xFE363C82, 0xFE363C81, 0xFFFFFFF6, 0x0000000A, 0x0000004B, 0x00000000, 0xFFFFFFA6, 0x00000043, 0x00000005, TranslateModel, 0x0000001D, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000008, iwa_11_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0xFFFFFFD8, 0x00000028, 0x0000004B, 0x00000000, 0x0000005A, 0x00000043, 0x00000006, RotateModel, 0x0000001D, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000008, iwa_11_UnkFloatFunc, 0xFE363C8C, 0xFE363C80, 0xFFFFFFE2, 0x0000001E, 0x0000000A, 0x00000000, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000010, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x0000000B, 0x00000002, 0xFD050F81, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000012, 0x00000044, 0x00000001, D_80240640_927030, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C8D, 0x00000014, 0x00000043, 0x00000008, iwa_11_UnkFloatFunc, 0xFE363C8D, 0xFE363C80, 0xF24A7D50, 0xF24A7E80, 0x0000000A, 0x00000000, 0x000000B4, 0x00000043, 0x00000008, iwa_11_UnkFloatFunc, 0xFE363C8D, 0xFE363C82, 0xF24A7A80, 0xF24A7BB0, 0x0000000A, 0x00000000, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7BB0, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C81, 0xF24A7E80, 0x00000043, 0x00000005, ScaleModel, 0x0000000E, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, ScaleModel, 0x0000000D, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C82, 0xF24A7BB0, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7BB0, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C81, 0xF24A7E80, 0x00000043, 0x00000005, ScaleModel, 0x0000000E, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, ScaleModel, 0x0000000D, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0x0000000A, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B581, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0xFFFFFFF6, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B581, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B582, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0x0000000A, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B582, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B583, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0xFFFFFFF6, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B583, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000027, 0x00000002, 0xFE363C89, 0xFE363C88, 0x0000000F, 0x00000002, 0xFE363C89, 0x0000005A, 0x00000024, 0x00000002, 0xFE363C89, 0x0000005A, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000027, 0x00000002, 0xFE363C8A, 0xFE363C88, 0x0000000F, 0x00000002, 0xFE363C8A, 0x0000005A, 0x00000024, 0x00000002, 0xFE363C8A, 0x0000005A, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000008, 0xFE363C89, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000007, 0xFE363C89, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000000B, 0xFE363C8A, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000000A, 0xFE363C8A, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B584, 0x00000001, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFE57, 0x00000027, 0x00000002, 0xFE363C81, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFEB1, 0x00000027, 0x00000002, 0xFE363C81, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFD050F80, 0xFD050F81, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x0000002A, 0x00000002, 0xFE363C80, 0x0000004B, 0x0000000B, 0x00000002, 0xFE363C80, 0xFE363C8E, 0x00000024, 0x00000002, 0xFE363C8E, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C8D, 0xFFFFFFFF, 0x00000027, 0x00000002, 0xFE363C8B, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C8B, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C8D, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8D, 0x000003E8, 0x00000024, 0x00000002, 0xFE363C8D, 0x000003E8, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C8C, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8C, 0x000003E8, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241908_9282F8 -.word 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFE57, 0x00000012, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFEB1, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C84, 0xFE363C81, 0x00000024, 0x00000002, 0xFE363C85, 0xFE363C82, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000027, 0x00000002, 0xFE363C83, 0xFFFFFFC7, 0x00000012, 0x00000000, 0x00000027, 0x00000002, 0xFE363C83, 0x00000039, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C84, 0xFFFFFFE1, 0x00000027, 0x00000002, 0xFE363C85, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFC, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000000, 0x00000012, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000000, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C81, 0xFFFFFFFA, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFFD8, 0x00000043, 0x00000005, SetNpcPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C80, 0xFFFFFBB4, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFBB4, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000028, 0x00000024, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C82, 0x00000028, 0x00000012, 0x00000000, 0x0000000C, 0x00000002, 0xFE363C80, 0xFFFFFBB4, 0x00000024, 0x00000002, 0xFE363C80, 0xFFFFFBB4, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFD8, 0x00000024, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C82, 0x00000028, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFC, 0x0000010E, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000000, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B584, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B585, 0x00000001, 0x00000044, 0x00000001, D_80241908_9282F8, 0x00000056, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00001900, 0xFFFFEA20, 0x000004B0, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x000004B0, 0x00000043, 0x00000003, GotoMap, 0x80242860, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000002, SetPlayerActionState, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFC, 0x0000005A, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFC, 0x00000000, 0x00000043, 0x00000002, HidePlayerShadow, 0x00000001, 0x00000044, 0x00000001, D_80241908_9282F8, 0x00000024, 0x00000002, 0xFAA2B584, 0x00000001, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x000018CE, 0x00000258, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x0000000C, 0x00000002, 0xF5DE0180, 0xFFFFFFB8, 0x00000024, 0x00000002, 0xF5DE0180, 0xFFFFFFB8, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405B82, 0x00000000, 0x00000024, 0x00000002, 0xF8405B82, 0x00000001, 0x00000043, 0x00000003, FadeOutMusic, 0x00000000, 0x000005DC, 0x00000043, 0x00000004, GotoMapSpecial, 0x80242870, 0x00000002, 0x00000006, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, GotoMap, 0x80242868, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000003, EnableModel, 0x00000023, 0x00000000, 0x00000043, 0x00000004, SetModelFlags, 0x00000023, 0x00000100, 0x00000001, 0x00000043, 0x00000003, CloneModel, 0x00000023, 0x00002710, 0x00000043, 0x00000003, CloneModel, 0x00000023, 0x00002711, 0x00000043, 0x00000003, CloneModel, 0x00000023, 0x00002712, 0x00000043, 0x00000003, CloneModel, 0x00000023, 0x00002713, 0x00000043, 0x00000003, CloneModel, 0x00000023, 0x00002714, 0x00000043, 0x00000003, CloneModel, 0x00000023, 0x00002715, 0x00000043, 0x00000003, CloneModel, 0x00000023, 0x00002716, 0x00000043, 0x00000003, CloneModel, 0x00000023, 0x00002717, 0x00000043, 0x00000003, CloneModel, 0x00000023, 0x00002718, 0x00000043, 0x00000003, CloneModel, 0x00000023, 0x00002719, 0x00000024, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFFFFE890, 0x00000024, 0x00000002, 0xFD050F81, 0x0000000A, 0x00000044, 0x00000001, D_802407B8_9271A8, 0x00000008, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000003F, 0x00000048, 0x00000054, 0x00000067, 0x0000006F, 0x00000077 - -dlabel D_80242148_928B38 -.word 0xFFFFE890, 0xFFFFE98A, 0xFFFFE98A, 0xFFFFE98A, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFEE6C, 0xFFFFEF66, 0xFFFFE98A, 0xFFFFE98A, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF060, 0xFFFFEF66, 0xFFFFEF66, 0xFFFFE98A, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFEF66, 0xFFFFE98A, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF542, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF63C, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0x000000FA, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF736, 0xFFFFF34E, 0x000002EE, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFFD12, 0xFFFFF736, 0xFFFFF736, 0x000005DC, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFFD12, 0xFFFFFD12, 0xFFFFF736, 0x000007D0, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFFD12, 0xFFFFFD12, 0xFFFFFD12, 0x00000ABE, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0x000006D6, 0x000000FA, 0xFFFFFD12, 0x00000CB2, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0x000006D6, 0x000000FA, 0x000000FA, 0x00000FA0, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0x000006D6, 0x000006D6, 0x000000FA, 0x00001194, 0xFFFFF34E, 0xFFFFF34E, 0xFFFFF34E, 0x000006D6, 0x000006D6, 0x000006D6, 0x00000043, 0x00000005, TranslateGroup, 0x00000032, 0xFFFFE98A, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x0000005D, 0xFFFFF34E, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000081, 0x000006D6, 0x00000000, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C82, 0x00000014, 0x00000001, 0xFE363C82, 0x00000016, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0x0000015E, 0x00000024, 0x00000002, 0xFD050F81, 0x0000000A, 0x00000016, 0x00000001, 0x00000001, 0x00000024, 0x00000002, 0xFE363C83, 0x00000190, 0x00000024, 0x00000002, 0xFD050F81, 0xFFFFFFF6, 0x00000023, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000028, 0x00000002, 0xFE363C80, 0xFE363C83, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000001, func_80240280_926C70, 0x00000043, 0x00000005, TranslateGroup, 0x0000003F, 0xFE363C85, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000048, 0xFE363C86, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000054, 0xFE363C87, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000067, 0xFE363C88, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x0000006F, 0xFE363C89, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000077, 0xFE363C8A, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802424C0_928EB0 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802424D0_928EC0 -.word 0x00000000, 0x00200018, D_802424C0_928EB0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000, 0x00000000, 0x001E0018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000, 0x00000000, 0x00170013, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000, 0x00000000, 0x001A0017, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_80242580_928F70 -.word 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFFFFFE57, 0x00000046, 0xFFFFFFEC, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000005A, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFFFFFE57, 0x00000046, 0xFFFFFFEC, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000010E, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024263C_92902C -.word 0x00000000, D_802424D0_928EC0, 0x00000000, 0xC47A0000, 0x00000000, 0x00402D09, D_80242580_928F70, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x008C0001, 0x008C0003, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x008C0001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, D_8024263C_92902C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_jan/jan_04/B461B0.data.s b/ver/us/asm/data/world/area_jan/jan_04/B461B0.data.s index e54a339acd..9ca8870cd4 100644 --- a/ver/us/asm/data/world/area_jan/jan_04/B461B0.data.s +++ b/ver/us/asm/data/world/area_jan/jan_04/B461B0.data.s @@ -33,10 +33,10 @@ dlabel D_80242570_B46CE0 .word 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000003, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF5DE0180, 0x0000000E, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00070007, 0x00000043, 0x00000003, SetNpcYaw, 0xFFFFFFFF, 0x0000010E, 0x0000000A, 0x00000002, 0xF840604A, 0x00000000, 0x0000000A, 0x00000002, 0xF8406049, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000037, 0x00000096, 0xFFFFFFA1, 0x00000012, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x0000005A, 0x0000008C, 0xFFFFFFAB, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x0000000A, 0x00000002, 0xF8406049, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFFFFFFF6, 0x00000070, 0xFFFFFFB0, 0x00000012, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000032, 0x00000000, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0xFFFFFFFF, 0x00000001, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, BindNpcIdle, 0xFFFFFFFF, D_802421EC_B4695C, 0x00000012, 0x00000000, 0x00000043, 0x00000002, RemoveNpc, 0xFFFFFFFF, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80242714_B46E84 -.word 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0x00000015, 0x0000000A, 0x00000002, 0xF840607C, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990305, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000321, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000008, 0x00000001, 0x00000023, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990302, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x0000002D, 0x0000001A, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00990303, 0x00990302, 0x00000000, 0x001000A8, 0x00000024, 0x00000002, 0xF840607C, 0x00000001, 0x00000043, 0x00000003, SetTattleMsg, 0x00000001, 0x001A00D2, 0x00000002, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00990303, 0x00990302, 0x00000000, 0x001000A9, 0x00000013, 0x00000000, 0x00000018, 0x00000001, 0x00000028, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00990303, 0x00990302, 0x00000000, 0x001000AA, 0x00000018, 0x00000001, 0x0000002A, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00990303, 0x00990302, 0x00000000, 0x001000AB, 0x0000001C, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00990303, 0x00990302, 0x00000000, 0x001000AC, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0x00000015, 0x0000000A, 0x00000002, 0xF840607C, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990305, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000321, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000008, 0x00000001, 0x00000023, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990302, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x0000002D, 0x0000001A, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00990303, 0x00990302, 0x00000000, 0x001000A8, 0x00000024, 0x00000002, 0xF840607C, 0x00000001, 0x00000043, 0x00000003, SetTattleMessage, 0x00000001, 0x001A00D2, 0x00000002, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00990303, 0x00990302, 0x00000000, 0x001000A9, 0x00000013, 0x00000000, 0x00000018, 0x00000001, 0x00000028, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00990303, 0x00990302, 0x00000000, 0x001000AA, 0x00000018, 0x00000001, 0x0000002A, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00990303, 0x00990302, 0x00000000, 0x001000AB, 0x0000001C, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00990303, 0x00990302, 0x00000000, 0x001000AC, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_802428E4_B47054 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80242714_B46E84, 0x0000000C, 0x00000002, 0xF5DE0180, 0x00000015, 0x0000000A, 0x00000002, 0xF840607C, 0x00000000, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x00000019, 0x00000019, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990307, 0x00000043, 0x00000003, SetTattleMsg, 0x00000001, 0x001A003B, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80242714_B46E84, 0x0000000C, 0x00000002, 0xF5DE0180, 0x00000015, 0x0000000A, 0x00000002, 0xF840607C, 0x00000000, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x00000019, 0x00000019, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990307, 0x00000043, 0x00000003, SetTattleMessage, 0x00000001, 0x001A003B, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80242978_B470E8 .word 0x00000000, D_80241A40_B461B0, 0x00000000, 0xC47A0000, 0x00000000, 0x00400F09, D_80242570_B46CE0, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00070001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, D_80241A7C_B461EC, 0xC3660000, 0x00000000, 0xC3A00000, 0x00400D09, D_802428E4_B47054, 0x00000000, 0x00000000, 0x0000005A, 0x80000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00007FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00990302, 0x0099030E, 0x0099030E, 0x00990302, 0x00990302, 0x00990302, 0x00990302, 0x00990302, 0x00990302, 0x00990302, 0x00990302, 0x00990302, 0x00990302, 0x00990302, 0x00990302, 0x00990302, 0x00000000, 0x00000000, 0x00000000, 0x001A00D2 diff --git a/ver/us/asm/data/world/area_kkj/kkj_10/ACC510.data.s b/ver/us/asm/data/world/area_kkj/kkj_10/ACC510.data.s index f6dadf5003..25262aef8c 100644 --- a/ver/us/asm/data/world/area_kkj/kkj_10/ACC510.data.s +++ b/ver/us/asm/data/world/area_kkj/kkj_10/ACC510.data.s @@ -6,4 +6,4 @@ dlabel D_802419F0_ACC510 .word 0x0000006A, 0x00000000 dlabel D_802419F8_ACC518 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x00000000, 0x0000000A, 0x000001EA, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kkj_10_SetEntityFlags100000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405D76, 0x00000001, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, D_80241160_ACBC80, 0x00000100, 0x00000000, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE0180, 0x0000003A, 0x0000000A, 0x00000002, 0xF8405D76, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x00000000, 0x0000000A, 0x000001EA, 0x000000B4, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_802419F8_ACC518, 0x00000100, 0x00004000, D_802419F0_ACC510, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, D_80241160_ACBC80, 0x00000100, 0x00000000, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x00000000, 0x0000000A, 0x000001EA, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kkj_10_RemovePadlock, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405D76, 0x00000001, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, D_80241160_ACBC80, 0x00000100, 0x00000000, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE0180, 0x0000003A, 0x0000000A, 0x00000002, 0xF8405D76, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x00000000, 0x0000000A, 0x000001EA, 0x000000B4, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_802419F8_ACC518, 0x00000100, 0x00004000, D_802419F0_ACC510, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, D_80241160_ACBC80, 0x00000100, 0x00000000, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kkj/kkj_11/ACFD40.data.s b/ver/us/asm/data/world/area_kkj/kkj_11/ACFD40.data.s index bfc155cf76..daa0dcd154 100644 --- a/ver/us/asm/data/world/area_kkj/kkj_11/ACFD40.data.s +++ b/ver/us/asm/data/world/area_kkj/kkj_11/ACFD40.data.s @@ -6,4 +6,4 @@ dlabel D_80241C00_ACFD40 .word 0x0000006A, 0x00000000 dlabel D_80241C08_ACFD48 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x00000000, 0x0000000A, 0x000001EA, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kkj_11_SetEntityFlags100000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405D74, 0x00000001, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, D_802411A0_ACF2E0, 0x00000100, 0x00000000, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE0180, 0x00000006, 0x0000000A, 0x00000002, 0xF8405D74, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x00000000, 0x0000000A, 0x000001EA, 0x000000B4, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_80241C08_ACFD48, 0x00000100, 0x00004000, D_80241C00_ACFD40, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, D_802411A0_ACF2E0, 0x00000100, 0x00000000, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x00000000, 0x0000000A, 0x000001EA, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kkj_11_RemovePadlock, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405D74, 0x00000001, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, D_802411A0_ACF2E0, 0x00000100, 0x00000000, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000E, 0x00000002, 0xF5DE0180, 0x00000006, 0x0000000A, 0x00000002, 0xF8405D74, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x00000000, 0x0000000A, 0x000001EA, 0x000000B4, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_80241C08_ACFD48, 0x00000100, 0x00004000, D_80241C00_ACFD40, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, D_802411A0_ACF2E0, 0x00000100, 0x00000000, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kmr/kmr_02/8C4A40.data.s b/ver/us/asm/data/world/area_kmr/kmr_02/8C4A40.data.s index cfce0f8f02..d69bfc6136 100644 --- a/ver/us/asm/data/world/area_kmr/kmr_02/8C4A40.data.s +++ b/ver/us/asm/data/world/area_kmr/kmr_02/8C4A40.data.s @@ -6,4 +6,4 @@ dlabel D_802549D0_8C4A40 .word 0x00000043, 0x00000003, GotoMap, 0x80257F00, 0x00000002, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80254A00_8C4A70 -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000003, 0x00A00004, 0x00A00001, 0x00000000, 0x000B0066, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, func_80243370_8B33E0, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000003, 0x00A00004, 0x00A00001, 0x00000000, 0x000B0067, 0x00000008, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000014, 0x7FFFFE00, 0x00000024, 0x00000002, 0xF5DE0180, 0xFFFFFF8E, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x0000207A, 0x00000000, 0x00000175, 0x00000058, 0x000000FF, 0x00000043, 0x00000005, GetNpcPos, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000000, 0x00000175, 0x00000058, 0x000000FF, 0x00000001, 0x00000064, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000006, PlaySoundAt, 0x0000207B, 0x00000000, 0x00000146, 0x00000096, 0x00000105, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000001, 0x00000146, 0x00000096, 0x00000105, 0x00000001, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000001, 0x00000146, 0x00000096, 0x00000105, 0x00000001, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000001, 0x00000146, 0x00000096, 0x00000105, 0x00000001, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000001, 0x00000146, 0x00000096, 0x00000105, 0x00000001, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000001, 0x00000146, 0x00000096, 0x00000105, 0x00000001, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer1Block, 0x00000146, 0x00000078, 0x00000105, 0x00000094, 0x80000000, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000043, 0x00000002, AssignScript, D_80254A00_8C4A70, 0x00000043, 0x00000001, func_80243514_8B3584, 0x00000024, 0x00000002, 0xFE363C89, 0xFE363C8A, 0x00000043, 0x00000005, kmr_02_GetEntityPosition, 0xFE363C89, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, MakeLerp, 0xFE363C83, 0x0000012C, 0x00000014, 0x00000001, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, kmr_02_SetEntityPositionF, 0xFE363C89, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x0000207C, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x0060000F, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x0000000F, PlayEffect, 0x00000006, 0x00000004, 0xFE363C82, 0x00000000, 0xFE363C84, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x0000207D, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000043, 0x00000005, MakeLerp, 0x0000012C, 0x00000000, 0x00000014, 0x00000002, 0x00000003, 0x00000001, 0x00000014, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, kmr_02_SetEntityPositionF, 0xFE363C89, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x00000014, 0x00000013, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x000000B8, 0x00000001, 0x00000043, 0x00000003, EnableGroup, 0x000000B4, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x000000DD, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000056, 0x00000000, 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x0000000F, 0xF24A7E80, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0xFFFFFF85, 0x00000018, 0x00000001, 0xFFFFFF8E, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer1Block_WideHitbox, 0x00000146, 0x00000000, 0x00000105, 0x0000010E, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80254A00_8C4A70, 0x00000018, 0x00000001, 0xFFFFFF98, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000014, 0x7FFFFE00, 0x00000023, 0x00000000, 0x0000000A, 0x00000002, 0xF8406311, 0x00000000, 0x0000000A, 0x00000002, 0xF840630D, 0x00000001, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000003, 0x00000024, 0x00000002, 0xF8406311, 0x00000001, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x0000000A, MakeEntity, Entity_BlueWarpPipe, 0x00000000, 0x00000000, 0x00000163, 0x00000000, 0x00000003, D_802549D0_8C4A40, 0x00000791, 0x80000000, 0x00000043, 0x00000007, MakeEntity, Entity_SavePoint, 0x000000FA, 0x0000003C, 0x0000004B, 0xFFFFFFF1, 0x80000000, 0x0000000F, 0x00000002, 0xF5DE0180, 0xFFFFFF98, 0x00000043, 0x00000007, MakeItemEntity, 0x00000083, 0x000001FE, 0x00000000, 0xFFFFFEAC, 0x00000011, 0xF8405BAE, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 +.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000003, 0x00A00004, 0x00A00001, 0x00000000, 0x000B0066, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, func_80243370_8B33E0, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000003, 0x00A00004, 0x00A00001, 0x00000000, 0x000B0067, 0x00000008, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000014, 0x7FFFFE00, 0x00000024, 0x00000002, 0xF5DE0180, 0xFFFFFF8E, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x0000207A, 0x00000000, 0x00000175, 0x00000058, 0x000000FF, 0x00000043, 0x00000005, GetNpcPos, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000000, 0x00000175, 0x00000058, 0x000000FF, 0x00000001, 0x00000064, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000006, PlaySoundAt, 0x0000207B, 0x00000000, 0x00000146, 0x00000096, 0x00000105, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000001, 0x00000146, 0x00000096, 0x00000105, 0x00000001, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000001, 0x00000146, 0x00000096, 0x00000105, 0x00000001, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000001, 0x00000146, 0x00000096, 0x00000105, 0x00000001, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000001, 0x00000146, 0x00000096, 0x00000105, 0x00000001, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x0000000F, PlayEffect, 0x00000013, 0x00000001, 0x00000146, 0x00000096, 0x00000105, 0x00000001, 0x0000003C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer1Block, 0x00000146, 0x00000078, 0x00000105, 0x00000094, 0x80000000, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000043, 0x00000002, AssignScript, D_80254A00_8C4A70, 0x00000043, 0x00000001, func_80243514_8B3584, 0x00000024, 0x00000002, 0xFE363C89, 0xFE363C8A, 0x00000043, 0x00000005, kmr_02_GetEntityPosition, 0xFE363C89, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, MakeLerp, 0xFE363C83, 0x0000012C, 0x00000014, 0x00000001, 0x00000003, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, kmr_02_SetEntityPositionF, 0xFE363C89, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x0000207C, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x0060000F, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x0000000F, PlayEffect, 0x00000006, 0x00000004, 0xFE363C82, 0x00000000, 0xFE363C84, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x0000207D, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000043, 0x00000005, MakeLerp, 0x0000012C, 0x00000000, 0x00000014, 0x00000002, 0x00000003, 0x00000001, 0x00000014, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, kmr_02_SetEntityPositionF, 0xFE363C89, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000004, 0x00000001, 0x00000014, 0x00000013, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x000000B8, 0x00000001, 0x00000043, 0x00000003, EnableGroup, 0x000000B4, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x000000DD, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000056, 0x00000000, 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x0000000F, 0xF24A7E80, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0xFFFFFF85, 0x00000018, 0x00000001, 0xFFFFFF8E, 0x00000043, 0x00000007, MakeEntity, Entity_Hammer1Block_WideX, 0x00000146, 0x00000000, 0x00000105, 0x0000010E, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80254A00_8C4A70, 0x00000018, 0x00000001, 0xFFFFFF98, 0x00000043, 0x00000004, ModifyColliderFlags, 0x00000000, 0x00000014, 0x7FFFFE00, 0x00000023, 0x00000000, 0x0000000A, 0x00000002, 0xF8406311, 0x00000000, 0x0000000A, 0x00000002, 0xF840630D, 0x00000001, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000003, 0x00000024, 0x00000002, 0xF8406311, 0x00000001, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x0000000A, MakeEntity, Entity_BlueWarpPipe, 0x00000000, 0x00000000, 0x00000163, 0x00000000, 0x00000003, D_802549D0_8C4A40, 0x00000791, 0x80000000, 0x00000043, 0x00000007, MakeEntity, Entity_SavePoint, 0x000000FA, 0x0000003C, 0x0000004B, 0xFFFFFFF1, 0x80000000, 0x0000000F, 0x00000002, 0xF5DE0180, 0xFFFFFF98, 0x00000043, 0x00000007, MakeItemEntity, 0x00000083, 0x000001FE, 0x00000000, 0xFFFFFEAC, 0x00000011, 0xF8405BAE, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_113/A9DA60.data.s b/ver/us/asm/data/world/area_kpa/kpa_113/A9DA60.data.s index 1ed3b0edd2..c53ce859e9 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_113/A9DA60.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_113/A9DA60.data.s @@ -9,4 +9,4 @@ dlabel D_80240E38_A9DA68 .word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000024, 0x00000002, 0xFE363C81, 0x00000026, 0x00000024, 0x00000002, 0xFE363C82, 0x00000033, 0x00000024, 0x00000002, 0xFE363C83, 0x00000035, 0x00000044, 0x00000001, ExitDoubleDoor, 0x00000008, 0x00000001, 0x00000011, 0x00000043, 0x00000003, GotoMap, 0x80241CE0, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240EDC_A9DB0C -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000269, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF84061AF, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000001, kpa_113_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, D_80240E38_A9DA68, 0x00000100, 0x00000026, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF84061AF, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000001A2, 0x0000000A, 0x00000064, 0x00000118, 0x80000000, 0x00000024, 0x00000002, 0xFD050F81, 0xFE363C80, 0x0000004E, 0x00000006, D_80240EDC_A9DB0C, 0x00000100, 0x00004000, D_80240E30_A9DA60, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, D_80240E38_A9DA68, 0x00000100, 0x00000026, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_SavePoint, 0x00000177, 0x0000003C, 0x00000032, 0x00000000, 0x80000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000269, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF84061AF, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000001, kpa_113_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, D_80240E38_A9DA68, 0x00000100, 0x00000026, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF84061AF, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000001A2, 0x0000000A, 0x00000064, 0x00000118, 0x80000000, 0x00000024, 0x00000002, 0xFD050F81, 0xFE363C80, 0x0000004E, 0x00000006, D_80240EDC_A9DB0C, 0x00000100, 0x00004000, D_80240E30_A9DA60, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, D_80240E38_A9DA68, 0x00000100, 0x00000026, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_SavePoint, 0x00000177, 0x0000003C, 0x00000032, 0x00000000, 0x80000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_134/AAC3B0.data.s b/ver/us/asm/data/world/area_kpa/kpa_134/AAC3B0.data.s index 15c262eb62..9354831161 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_134/AAC3B0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_134/AAC3B0.data.s @@ -9,4 +9,4 @@ dlabel D_80243598_AAC538 .word 0x0000001A, 0x00000000 dlabel D_802435A0_AAC540 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF84061B5, 0x00000001, 0x00000043, 0x00000005, kpa_134_GetEntityPosition, 0xFD050F81, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000001, kpa_134_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, 0x802408E8, 0x00000100, 0x00000027, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF84061B5, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000002E7, 0x0000000A, 0x00000073, 0x0000010E, 0x80000000, 0x00000024, 0x00000002, 0xFD050F81, 0xFE363C80, 0x0000004E, 0x00000006, D_802435A0_AAC540, 0x00000100, 0x00004000, D_80243598_AAC538, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, 0x802408E8, 0x00000100, 0x00000027, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF84061B6, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_BlueSwitch, 0xFFFFFF20, 0x00000163, 0xFFFFFFE7, 0x00000000, 0x80000000, 0x00000043, 0x00000002, AssignSwitchFlag, 0x00000009, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_BrickBlock, 0xFFFFFF20, 0x0000014A, 0xFFFFFFE7, 0x00000000, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80243410_AAC3B0, 0x00000043, 0x00000008, MakeEntity, Entity_SimpleSpring, 0x000001DB, 0x00000000, 0xFFFFFFEC, 0x0000005A, 0x0000003C, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_HiddenYellowBlock, 0x000000C3, 0x0000012C, 0xFFFFFFB5, 0x00000000, 0x000000A3, 0x80000000, 0x00000043, 0x00000002, AssignBlockFlag, 0xF84061B7, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF84061B5, 0x00000001, 0x00000043, 0x00000005, kpa_134_GetEntityPosition, 0xFD050F81, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000001, kpa_134_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, 0x802408E8, 0x00000100, 0x00000027, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF84061B5, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000002E7, 0x0000000A, 0x00000073, 0x0000010E, 0x80000000, 0x00000024, 0x00000002, 0xFD050F81, 0xFE363C80, 0x0000004E, 0x00000006, D_802435A0_AAC540, 0x00000100, 0x00004000, D_80243598_AAC538, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, 0x802408E8, 0x00000100, 0x00000027, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF84061B6, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_BlueSwitch, 0xFFFFFF20, 0x00000163, 0xFFFFFFE7, 0x00000000, 0x80000000, 0x00000043, 0x00000002, AssignSwitchFlag, 0x00000009, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_BrickBlock, 0xFFFFFF20, 0x0000014A, 0xFFFFFFE7, 0x00000000, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_80243410_AAC3B0, 0x00000043, 0x00000008, MakeEntity, Entity_SimpleSpring, 0x000001DB, 0x00000000, 0xFFFFFFEC, 0x0000005A, 0x0000003C, 0x80000000, 0x00000043, 0x00000008, MakeEntity, Entity_HiddenYellowBlock, 0x000000C3, 0x0000012C, 0xFFFFFFB5, 0x00000000, 0x000000A3, 0x80000000, 0x00000043, 0x00000002, AssignBlockFlag, 0xF84061B7, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_14/A58DB0.data.s b/ver/us/asm/data/world/area_kpa/kpa_14/A58DB0.data.s index 0a8f055377..a5264a6182 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_14/A58DB0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_14/A58DB0.data.s @@ -9,4 +9,4 @@ dlabel D_8024196C_A58E1C .word 0x0000001A, 0x00000000 dlabel D_80241974_A58E24 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8406190, 0x00000001, 0x00000043, 0x00000005, kpa_14_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_14_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, 0x80240A88, 0x00000100, 0x00000058, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8406190, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000007CB, 0x00000028, 0xFFFFFF5E, 0x0000010E, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_80241974_A58E24, 0x00000100, 0x00004000, D_8024196C_A58E1C, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, 0x80240A88, 0x00000100, 0x00000058, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000096, 0x0000015E, 0x0000001E, 0xFFFFFF6A, 0x00000011, 0xF8406191, 0x00000043, 0x00000007, MakeItemEntity, 0x00000082, 0x00000320, 0x0000001E, 0xFFFFFF6A, 0x00000011, 0xF8406192, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8406190, 0x00000001, 0x00000043, 0x00000005, kpa_14_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_14_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, 0x80240A88, 0x00000100, 0x00000058, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8406190, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000007CB, 0x00000028, 0xFFFFFF5E, 0x0000010E, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_80241974_A58E24, 0x00000100, 0x00004000, D_8024196C_A58E1C, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, 0x80240A88, 0x00000100, 0x00000058, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00000096, 0x0000015E, 0x0000001E, 0xFFFFFF6A, 0x00000011, 0xF8406191, 0x00000043, 0x00000007, MakeItemEntity, 0x00000082, 0x00000320, 0x0000001E, 0xFFFFFF6A, 0x00000011, 0xF8406192, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_52/A68510.data.s b/ver/us/asm/data/world/area_kpa/kpa_52/A68510.data.s index 1f844ebddd..acc9f221a7 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_52/A68510.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_52/A68510.data.s @@ -6,4 +6,4 @@ dlabel D_80241410_A68510 .word 0x0000001A, 0x00000000 dlabel D_80241418_A68518 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8406199, 0x00000001, 0x00000043, 0x00000005, kpa_52_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_52_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, 0x802416B4, 0x00000100, 0x0000000F, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8406199, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x00000160, 0x0000000A, 0xFFFFFFE7, 0x0000010E, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_80241418_A68518, 0x00000100, 0x00004000, D_80241410_A68510, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, 0x802416B4, 0x00000100, 0x0000000F, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8406199, 0x00000001, 0x00000043, 0x00000005, kpa_52_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_52_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, 0x802416B4, 0x00000100, 0x0000000F, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8406199, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x00000160, 0x0000000A, 0xFFFFFFE7, 0x0000010E, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_80241418_A68518, 0x00000100, 0x00004000, D_80241410_A68510, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, 0x802416B4, 0x00000100, 0x0000000F, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_60/A6CEF0.data.s b/ver/us/asm/data/world/area_kpa/kpa_60/A6CEF0.data.s index 971294665a..21d9ae1cdc 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_60/A6CEF0.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_60/A6CEF0.data.s @@ -9,7 +9,7 @@ dlabel D_80240510_A6D010 .word 0x0000001A, 0x00000000 dlabel D_80240518_A6D018 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF840619C, 0x00000001, 0x00000043, 0x00000005, kpa_60_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_60_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, D_80240A64_A6D564, 0x00000100, 0x0000001F, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF840619C, 0x00000001, 0x00000043, 0x00000005, kpa_60_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_60_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, D_80240A64_A6D564, 0x00000100, 0x0000001F, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240668_A6D168 .word 0x0000000A, 0x00000002, 0xF840619C, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0xFFFFFF38, 0x0000000A, 0xFFFFFF31, 0x00000000, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_80240518_A6D018, 0x00000100, 0x00004000, D_80240510_A6D010, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, D_80240A64_A6D564, 0x00000100, 0x0000001F, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000008, MakeEntity, Entity_RedBlock, 0xFFFFFDEC, 0x00000091, 0xFFFFFFC5, 0x00000000, 0x00000133, 0x80000000, 0x00000043, 0x00000002, AssignBlockFlag, 0xF840619D, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_62/A72740.data.s b/ver/us/asm/data/world/area_kpa/kpa_62/A72740.data.s index af27f72de6..3d3e44f315 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_62/A72740.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_62/A72740.data.s @@ -6,7 +6,7 @@ dlabel D_80240520_A72740 .word 0x0000001A, 0x00000000 dlabel D_80240528_A72748 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF840619C, 0x00000001, 0x00000043, 0x00000005, kpa_62_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_62_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, D_80240A74_A72C94, 0x00000100, 0x00000024, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF840619C, 0x00000001, 0x00000043, 0x00000005, kpa_62_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_62_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000047, 0x00000005, D_80240A74_A72C94, 0x00000100, 0x00000024, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80240678_A72898 .word 0x0000000A, 0x00000002, 0xF840619C, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0xFFFFFF38, 0x0000000A, 0xFFFFFF31, 0x00000000, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_80240528_A72748, 0x00000100, 0x00004000, D_80240520_A72740, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, D_80240A74_A72C94, 0x00000100, 0x00000024, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000008, MakeEntity, Entity_RedBlock, 0xFFFFFDEC, 0x00000091, 0xFFFFFFC5, 0x00000000, 0x00000133, 0x80000000, 0x00000043, 0x00000002, AssignBlockFlag, 0xF840619D, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_91/A8C230.data.s b/ver/us/asm/data/world/area_kpa/kpa_91/A8C230.data.s index 5b28c9b7b8..348d9e7cef 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_91/A8C230.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_91/A8C230.data.s @@ -6,4 +6,4 @@ dlabel D_802457E0_A8C230 .word 0x0000007A, 0x00000000 dlabel D_802457E8_A8C238 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF84061A5, 0x00000001, 0x00000043, 0x00000005, kpa_91_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_91_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000047, 0x00000005, 0x80241A58, 0x00000100, 0x00000025, 0x00000001, 0x00000000, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF84061A5, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0xFFFFFFFB, 0x0000000A, 0x0000000D, 0x00000000, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_802457E8_A8C238, 0x00000100, 0x00004000, D_802457E0_A8C230, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, 0x80241A58, 0x00000100, 0x00000025, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF84061A6, 0x00000001, 0x00000043, 0x00000007, MakeItemEntity, 0x0000007A, 0x0000003C, 0x00000000, 0x00000037, 0x00000011, 0xF84061A7, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF84061A5, 0x00000001, 0x00000043, 0x00000005, kpa_91_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_91_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000047, 0x00000005, 0x80241A58, 0x00000100, 0x00000025, 0x00000001, 0x00000000, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF84061A5, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0xFFFFFFFB, 0x0000000A, 0x0000000D, 0x00000000, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_802457E8_A8C238, 0x00000100, 0x00004000, D_802457E0_A8C230, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, 0x80241A58, 0x00000100, 0x00000025, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF84061A6, 0x00000001, 0x00000043, 0x00000007, MakeItemEntity, 0x0000007A, 0x0000003C, 0x00000000, 0x00000037, 0x00000011, 0xF84061A7, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kpa/kpa_95/A8E450.data.s b/ver/us/asm/data/world/area_kpa/kpa_95/A8E450.data.s index 11ee0de87c..e50f8714a3 100644 --- a/ver/us/asm/data/world/area_kpa/kpa_95/A8E450.data.s +++ b/ver/us/asm/data/world/area_kpa/kpa_95/A8E450.data.s @@ -6,4 +6,4 @@ dlabel D_802419D0_A8E450 .word 0x0000007A, 0x00000000 dlabel D_802419D8_A8E458 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF84061A8, 0x00000001, 0x00000043, 0x00000005, kpa_95_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_95_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000047, 0x00000005, 0x80241C10, 0x00000100, 0x00000025, 0x00000001, 0x00000000, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF84061A8, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0xFFFFFFFB, 0x0000000A, 0x0000000D, 0x00000000, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_802419D8_A8E458, 0x00000100, 0x00004000, D_802419D0_A8E450, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, 0x80241C10, 0x00000100, 0x00000025, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF84061A9, 0x00000001, 0x00000043, 0x00000007, MakeItemEntity, 0x0000007A, 0xFFFFFFBA, 0x00000000, 0x00000037, 0x00000011, 0xF84061AA, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF84061A8, 0x00000001, 0x00000043, 0x00000005, kpa_95_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, kpa_95_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000047, 0x00000005, 0x80241C10, 0x00000100, 0x00000025, 0x00000001, 0x00000000, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF84061A8, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0xFFFFFFFB, 0x0000000A, 0x0000000D, 0x00000000, 0x80000000, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x0000004E, 0x00000006, D_802419D8_A8E458, 0x00000100, 0x00004000, D_802419D0_A8E450, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, 0x80241C10, 0x00000100, 0x00000025, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF84061A9, 0x00000001, 0x00000043, 0x00000007, MakeItemEntity, 0x0000007A, 0xFFFFFFBA, 0x00000000, 0x00000037, 0x00000011, 0xF84061AA, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_mac/mac_02/828F10.data.s b/ver/us/asm/data/world/area_mac/mac_02/828F10.data.s index 2e19657868..e2b731b043 100644 --- a/ver/us/asm/data/world/area_mac/mac_02/828F10.data.s +++ b/ver/us/asm/data/world/area_mac/mac_02/828F10.data.s @@ -6,7 +6,7 @@ dlabel D_80245C50_828F10 .word 0x0000006B, 0x00000000 dlabel D_80245C58_828F18 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFFFFFE2A, 0x0000001E, 0xFFFFFF65, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, mac_02_SetEntityFlags100000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405C03, 0x00000001, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFFFFFE2A, 0x0000001E, 0xFFFFFF65, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, mac_02_RemovePadlock, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000024, 0x00000002, 0xF8405C03, 0x00000001, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80245D60_829020 .word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D016B, 0x000000A0, 0x00000028, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 @@ -261,10 +261,10 @@ dlabel D_8024C7DC_82FA9C .word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_8024C618_82F8D8, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024C800_82FAC0 -.word 0x0000000A, 0x00000002, 0xF8405C9B, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990007, 0x00990007, 0x00000000, 0x00040085, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000321, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990005, 0x00000008, 0x00000001, 0x0000002D, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990002, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x0000002D, 0x0000001A, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990003, 0x00990002, 0x00000000, 0x00040086, 0x00000024, 0x00000002, 0xFE363C80, 0x0000002B, 0x00000024, 0x00000002, 0xFE363C81, 0x00000001, 0x00000046, 0x00000001, D_80246154_829414, 0x00000043, 0x00000002, AddKeyItem, 0x0000002B, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990003, 0x00990002, 0x00000000, 0x00040087, 0x00000024, 0x00000002, 0xF8405C9B, 0x00000001, 0x00000043, 0x00000003, SetTattleMsg, 0x00000002, 0x001A003C, 0x00000012, 0x00000000, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0xFFFFFFB5, 0x00000018, 0x00000001, 0xFFFFFFCA, 0x00000024, 0x00000002, 0xFE363C80, 0x00040088, 0x00000018, 0x00000001, 0xFFFFFFF1, 0x00000024, 0x00000002, 0xFE363C80, 0x00040089, 0x00000018, 0x00000001, 0x00000007, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008A, 0x00000018, 0x00000001, 0x00000027, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008B, 0x00000018, 0x00000001, 0x00000039, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008C, 0x00000018, 0x00000001, 0x00000059, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008D, 0x00000018, 0x00000001, 0x00000060, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008E, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008E, 0x00000023, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000002, 0x00990003, 0x00990002, 0x00000000, 0xFE363C80, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000000A, 0x00000002, 0xF8405C9B, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990007, 0x00990007, 0x00000000, 0x00040085, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000321, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990005, 0x00000008, 0x00000001, 0x0000002D, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990002, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x0000002D, 0x0000001A, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990003, 0x00990002, 0x00000000, 0x00040086, 0x00000024, 0x00000002, 0xFE363C80, 0x0000002B, 0x00000024, 0x00000002, 0xFE363C81, 0x00000001, 0x00000046, 0x00000001, D_80246154_829414, 0x00000043, 0x00000002, AddKeyItem, 0x0000002B, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990003, 0x00990002, 0x00000000, 0x00040087, 0x00000024, 0x00000002, 0xF8405C9B, 0x00000001, 0x00000043, 0x00000003, SetTattleMessage, 0x00000002, 0x001A003C, 0x00000012, 0x00000000, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0xFFFFFFB5, 0x00000018, 0x00000001, 0xFFFFFFCA, 0x00000024, 0x00000002, 0xFE363C80, 0x00040088, 0x00000018, 0x00000001, 0xFFFFFFF1, 0x00000024, 0x00000002, 0xFE363C80, 0x00040089, 0x00000018, 0x00000001, 0x00000007, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008A, 0x00000018, 0x00000001, 0x00000027, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008B, 0x00000018, 0x00000001, 0x00000039, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008C, 0x00000018, 0x00000001, 0x00000059, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008D, 0x00000018, 0x00000001, 0x00000060, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008E, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x0004008E, 0x00000023, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000002, 0x00990003, 0x00990002, 0x00000000, 0xFE363C80, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024CA88_82FD48 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_8024C800_82FAC0, 0x0000000A, 0x00000002, 0xF8405C9B, 0x00000000, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x00000019, 0x00000019, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990007, 0x00000043, 0x00000003, SetTattleMsg, 0x00000002, 0x001A003B, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_8024C800_82FAC0, 0x0000000A, 0x00000002, 0xF8405C9B, 0x00000000, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x00000019, 0x00000019, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990007, 0x00000043, 0x00000003, SetTattleMessage, 0x00000002, 0x001A003B, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024CB04_82FDC4 .word 0x00AA0000, 0x00AA0001, 0x00AA0002, 0x00AA0001, 0x00AA0004, 0x00AA0005, 0x00AA0006, 0x00AA0007, 0x00AA0008, 0xFFFFFFFF diff --git a/ver/us/asm/data/world/area_mac/mac_03/835370.data.s b/ver/us/asm/data/world/area_mac/mac_03/835370.data.s index c509341bf1..7d9a8a11ff 100644 --- a/ver/us/asm/data/world/area_mac/mac_03/835370.data.s +++ b/ver/us/asm/data/world/area_mac/mac_03/835370.data.s @@ -3,16 +3,16 @@ .section .data dlabel D_80243B70_835370 -.word 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000028, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C8F, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C81, 0xFE363C80, 0x00000000, 0x00000069, 0x00000028, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000046, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000047, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000048, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C8F, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C81, 0xFE363C80, 0x00000000, 0x0000004B, 0x00000028, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004A, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004B, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004C, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000028, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C8F, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C81, 0xFE363C80, 0x00000000, 0x00000069, 0x00000028, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000046, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000047, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000048, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C8F, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C81, 0xFE363C80, 0x00000000, 0x0000004B, 0x00000028, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004A, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004B, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004C, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80243CF0_8354F0 -.word 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000028, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C8F, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C81, 0xFE363C80, 0x00000069, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000046, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000047, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000048, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C8F, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C81, 0xFE363C80, 0x0000004B, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004A, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004B, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004C, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000024, 0x00000002, 0xFE363C8F, 0x00000000, 0x00000005, 0x00000001, 0x00000028, 0x00000027, 0x00000002, 0xFE363C8F, 0x00000001, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C8F, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C81, 0xFE363C80, 0x00000069, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000046, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000047, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000048, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C8F, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C81, 0xFE363C80, 0x0000004B, 0x00000000, 0x00000028, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004A, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004B, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004C, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80243E70_835670 .word 0x00000043, 0x00000004, PlaySoundAtModel, 0x0000005C, 0xB000001A, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F80, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C80, 0xFFFFFECA, 0x00000012, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C80, 0xFFFFFE3E, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0x0000008C, 0x00000026, 0x00000002, 0xFE363C82, 0x00000000, 0x00000026, 0x00000002, 0xFE363C83, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C84, 0xF24A8680, 0x00000027, 0x00000002, 0xFE363C8B, 0x00002710, 0x00000043, 0x00000003, EnableModel, 0xFE363C8B, 0x00000001, 0x00000005, 0x00000001, 0x00000014, 0x00000043, 0x00000005, TranslateModel, 0xFE363C8B, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, ScaleModel, 0xFE363C8B, 0xFE363C83, 0xFE363C83, 0x00000001, 0x0000002C, 0x00000002, 0xFE363C81, 0xFE363C84, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24A7AB0, 0x0000002E, 0x00000002, 0xFE363C84, 0xF24A7E20, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000003, EnableModel, 0xFE363C8B, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80243FE8_8357E8 -.word 0x00000003, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005C, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000060, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000062, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000064, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000066, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005E, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000004E, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000004F, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000050, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000051, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000052, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000053, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000055, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000056, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000058, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000059, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000069, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006B, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006D, 0xFE363C80, 0x00000000, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x000000B4, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0xFFFFFFBB, 0xFFFFFFCE, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005C, 0xFFFFFFBB, 0xFFFFFFCE, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000060, 0x0000004B, 0x00000019, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000062, 0x0000001E, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000064, 0xFFFFFFF6, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000066, 0xFFFFFFCE, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x0000005E, 0xFFFFFFFF, 0xFFFFFFC6, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000055, 0x00000052, 0xFFFFFFED, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000056, 0x00000052, 0xFFFFFFED, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000058, 0x00000052, 0xFFFFFFED, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000059, 0x00000052, 0xFFFFFFED, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000069, 0xFFFFFFEB, 0x0000001E, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006B, 0xFFFFFFE7, 0x0000001E, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006D, 0xFFFFFFC1, 0x0000000F, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000005B, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000005C, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000060, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000062, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000064, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000066, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000005E, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004E, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004F, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000050, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000051, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000052, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000053, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000055, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000056, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000058, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000059, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000069, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000006B, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000006D, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0x00000045, 0x00000032, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005C, 0x00000045, 0x00000032, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000060, 0xFFFFFFB5, 0xFFFFFFE7, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000062, 0xFFFFFFE2, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000064, 0x0000000A, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000066, 0x00000032, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x0000005E, 0x00000001, 0x0000003A, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000055, 0xFFFFFFAE, 0x00000013, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000056, 0xFFFFFFAE, 0x00000013, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000058, 0xFFFFFFAE, 0x00000013, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000059, 0xFFFFFFAE, 0x00000013, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000069, 0x00000015, 0xFFFFFFE2, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006B, 0x00000019, 0xFFFFFFE2, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006D, 0x0000003F, 0xFFFFFFF1, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0xFD050F80, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x000003E8, 0x00000028, 0x00000002, 0xFE363C82, 0xFD050F80, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A70E0, 0x00000043, 0x00000006, RotateModel, 0x00000062, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, RotateModel, 0x00000064, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, RotateModel, 0x00000066, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7CE7, 0x00000043, 0x00000006, RotateModel, 0x00000060, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C82, 0xFE363C81, 0xFFFFFFF6, 0x0000000A, 0x0000004B, 0x00000000, 0xFFFFFFA6, 0x00000043, 0x00000005, TranslateModel, 0x00000069, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000043, 0x00000005, TranslateModel, 0x0000006D, 0xFE363C80, 0xFFFFFFF2, 0x00000000, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C82, 0xFE363C81, 0xFFFFFFF6, 0x0000000A, 0x0000004B, 0x00000000, 0xFFFFFFA6, 0x00000043, 0x00000005, TranslateModel, 0x0000006B, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C82, 0xFE363C80, 0xFFFFFFD8, 0x00000028, 0x0000004B, 0x00000000, 0x0000005A, 0x00000043, 0x00000006, RotateModel, 0x0000006B, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C8C, 0xFE363C80, 0xF24A6E80, 0xF24A8680, 0x0000000A, 0x00000000, 0x00000000, 0x0000002E, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000006, RotateModel, 0x0000005E, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x0000000B, 0x00000002, 0xFD050F81, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000012, 0x00000044, 0x00000001, D_80243E70_835670, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C8D, 0x00000014, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C8D, 0xFE363C80, 0xF24A7D50, 0xF24A7E80, 0x0000000A, 0x00000000, 0x000000B4, 0x00000043, 0x00000008, mac_03_UnkFloatFunc, 0xFE363C8D, 0xFE363C82, 0xF24A7A80, 0xF24A7BB0, 0x0000000A, 0x00000000, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7BB0, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C81, 0xF24A7E80, 0x00000043, 0x00000005, ScaleModel, 0x0000005C, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, ScaleModel, 0x0000005B, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C82, 0xF24A7BB0, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7BB0, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C81, 0xF24A7E80, 0x00000043, 0x00000005, ScaleModel, 0x0000005C, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, ScaleModel, 0x0000005B, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A5, 0x00000000, 0xFFFFFE4D, 0x00000054, 0x00000025, 0x00000024, 0x00000002, 0xFE363C88, 0x0000000A, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B581, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0xFFFFFFF6, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B581, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B582, 0x00000001, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A5, 0x00000000, 0xFFFFFE63, 0x00000054, 0x00000026, 0x00000024, 0x00000002, 0xFE363C88, 0x0000000A, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B582, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B583, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0xFFFFFFF6, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B583, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000027, 0x00000002, 0xFE363C89, 0xFE363C88, 0x0000000F, 0x00000002, 0xFE363C89, 0x0000005A, 0x00000024, 0x00000002, 0xFE363C89, 0x0000005A, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A6, 0x00000000, 0xFFFFFE4D, 0x00000054, 0x00000025, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000027, 0x00000002, 0xFE363C8A, 0xFE363C88, 0x0000000F, 0x00000002, 0xFE363C8A, 0x0000005A, 0x00000024, 0x00000002, 0xFE363C8A, 0x0000005A, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A6, 0x00000000, 0xFFFFFE63, 0x00000054, 0x00000026, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000056, 0xFE363C89, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000055, 0xFE363C89, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000059, 0xFE363C8A, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000058, 0xFE363C8A, 0x00000000, 0x00000001, 0x00000000, 0x0000000D, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000C, 0x00000002, 0xFD050F80, 0x00000258, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000044, 0x00000001, D_80243B70_835370, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000044, 0x00000001, D_80243CF0_8354F0, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000F, 0x00000002, 0xFD050F80, 0x00000258, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000044, 0x00000001, D_80243CF0_8354F0, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B584, 0x00000001, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFE57, 0x00000027, 0x00000002, 0xFE363C81, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFEB1, 0x00000027, 0x00000002, 0xFE363C81, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFD050F80, 0xFD050F81, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x0000002A, 0x00000002, 0xFE363C80, 0x0000004B, 0x0000000B, 0x00000002, 0xFE363C80, 0xFE363C8E, 0x00000024, 0x00000002, 0xFE363C8E, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C8D, 0xFFFFFFFF, 0x00000027, 0x00000002, 0xFE363C8B, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C8B, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C8D, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8D, 0x000003E8, 0x00000024, 0x00000002, 0xFE363C8D, 0x000003E8, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C8C, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8C, 0x000003E8, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000003, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005C, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000060, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000062, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000064, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000066, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005E, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000004E, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000004F, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000050, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000051, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000052, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000053, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000055, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000056, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000058, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000059, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000069, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006B, 0xFE363C80, 0x00000000, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006D, 0xFE363C80, 0x00000000, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x000000B4, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0xFFFFFFBB, 0xFFFFFFCE, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005C, 0xFFFFFFBB, 0xFFFFFFCE, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000060, 0x0000004B, 0x00000019, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000062, 0x0000001E, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000064, 0xFFFFFFF6, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x00000066, 0xFFFFFFCE, 0x0000001E, 0x00000002, 0x00000043, 0x00000005, TranslateModel, 0x0000005E, 0xFFFFFFFF, 0xFFFFFFC6, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000055, 0x00000052, 0xFFFFFFED, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000056, 0x00000052, 0xFFFFFFED, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000058, 0x00000052, 0xFFFFFFED, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000059, 0x00000052, 0xFFFFFFED, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000069, 0xFFFFFFEB, 0x0000001E, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006B, 0xFFFFFFE7, 0x0000001E, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006D, 0xFFFFFFC1, 0x0000000F, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000005B, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000005C, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000060, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000062, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000064, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000066, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000005E, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004E, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000004F, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000050, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000051, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000052, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000053, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000055, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000056, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000058, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000059, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000069, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000006B, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x0000006D, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005B, 0x00000045, 0x00000032, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000005C, 0x00000045, 0x00000032, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000060, 0xFFFFFFB5, 0xFFFFFFE7, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000062, 0xFFFFFFE2, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000064, 0x0000000A, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x00000066, 0x00000032, 0xFFFFFFE2, 0xFFFFFFFE, 0x00000043, 0x00000005, TranslateModel, 0x0000005E, 0x00000001, 0x0000003A, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x00000055, 0xFFFFFFAE, 0x00000013, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000056, 0xFFFFFFAE, 0x00000013, 0x00000023, 0x00000043, 0x00000005, TranslateModel, 0x00000058, 0xFFFFFFAE, 0x00000013, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000059, 0xFFFFFFAE, 0x00000013, 0xFFFFFFDD, 0x00000043, 0x00000005, TranslateModel, 0x00000069, 0x00000015, 0xFFFFFFE2, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006B, 0x00000019, 0xFFFFFFE2, 0x00000000, 0x00000043, 0x00000005, TranslateModel, 0x0000006D, 0x0000003F, 0xFFFFFFF1, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0xFD050F80, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x000003E8, 0x00000028, 0x00000002, 0xFE363C82, 0xFD050F80, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A70E0, 0x00000043, 0x00000006, RotateModel, 0x00000062, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, RotateModel, 0x00000064, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, RotateModel, 0x00000066, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7CE7, 0x00000043, 0x00000006, RotateModel, 0x00000060, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C82, 0xFE363C81, 0xFFFFFFF6, 0x0000000A, 0x0000004B, 0x00000000, 0xFFFFFFA6, 0x00000043, 0x00000005, TranslateModel, 0x00000069, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000005, 0x00000043, 0x00000005, TranslateModel, 0x0000006D, 0xFE363C80, 0xFFFFFFF2, 0x00000000, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C82, 0xFE363C80, 0x00000000, 0xFFFFFFEC, 0x0000004B, 0x00000000, 0x00000000, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C82, 0xFE363C81, 0xFFFFFFF6, 0x0000000A, 0x0000004B, 0x00000000, 0xFFFFFFA6, 0x00000043, 0x00000005, TranslateModel, 0x0000006B, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C82, 0xFE363C80, 0xFFFFFFD8, 0x00000028, 0x0000004B, 0x00000000, 0x0000005A, 0x00000043, 0x00000006, RotateModel, 0x0000006B, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C8C, 0xFE363C80, 0xF24A6E80, 0xF24A8680, 0x0000000A, 0x00000000, 0x00000000, 0x0000002E, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000006, RotateModel, 0x0000005E, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x0000000B, 0x00000002, 0xFD050F81, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8D, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000012, 0x00000044, 0x00000001, D_80243E70_835670, 0x00000057, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C8D, 0x00000014, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C8D, 0xFE363C80, 0xF24A7D50, 0xF24A7E80, 0x0000000A, 0x00000000, 0x000000B4, 0x00000043, 0x00000008, mac_03_CosInterpMinMax, 0xFE363C8D, 0xFE363C82, 0xF24A7A80, 0xF24A7BB0, 0x0000000A, 0x00000000, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7BB0, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C81, 0xF24A7E80, 0x00000043, 0x00000005, ScaleModel, 0x0000005C, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, ScaleModel, 0x0000005B, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000026, 0x00000002, 0xFE363C82, 0xF24A7BB0, 0x00000026, 0x00000002, 0xFE363C81, 0xF24A7BB0, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C81, 0xF24A7E80, 0x00000043, 0x00000005, ScaleModel, 0x0000005C, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, ScaleModel, 0x0000005B, 0xFE363C81, 0xFE363C80, 0xFE363C81, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A5, 0x00000000, 0xFFFFFE4D, 0x00000054, 0x00000025, 0x00000024, 0x00000002, 0xFE363C88, 0x0000000A, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B581, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0xFFFFFFF6, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B581, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B582, 0x00000001, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A5, 0x00000000, 0xFFFFFE63, 0x00000054, 0x00000026, 0x00000024, 0x00000002, 0xFE363C88, 0x0000000A, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B582, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B583, 0x00000001, 0x00000024, 0x00000002, 0xFE363C88, 0xFFFFFFF6, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000024, 0x00000002, 0xFAA2B583, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000027, 0x00000002, 0xFE363C89, 0xFE363C88, 0x0000000F, 0x00000002, 0xFE363C89, 0x0000005A, 0x00000024, 0x00000002, 0xFE363C89, 0x0000005A, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A6, 0x00000000, 0xFFFFFE4D, 0x00000054, 0x00000025, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFBD3E282, 0x00000001, 0x00000027, 0x00000002, 0xFE363C8A, 0xFE363C88, 0x0000000F, 0x00000002, 0xFE363C8A, 0x0000005A, 0x00000024, 0x00000002, 0xFE363C8A, 0x0000005A, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E282, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x000020A6, 0x00000000, 0xFFFFFE63, 0x00000054, 0x00000026, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000056, 0xFE363C89, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000055, 0xFE363C89, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000059, 0xFE363C8A, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000006, RotateModel, 0x00000058, 0xFE363C8A, 0x00000000, 0x00000001, 0x00000000, 0x0000000D, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000C, 0x00000002, 0xFD050F80, 0x00000258, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000044, 0x00000001, D_80243B70_835370, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000E, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000044, 0x00000001, D_80243CF0_8354F0, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000F, 0x00000002, 0xFD050F80, 0x00000258, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000001, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000044, 0x00000001, D_80243CF0_8354F0, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B584, 0x00000001, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFE57, 0x00000027, 0x00000002, 0xFE363C81, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFEB1, 0x00000027, 0x00000002, 0xFE363C81, 0x0000004B, 0x00000027, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFD050F80, 0xFD050F81, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x0000002A, 0x00000002, 0xFE363C80, 0x0000004B, 0x0000000B, 0x00000002, 0xFE363C80, 0xFE363C8E, 0x00000024, 0x00000002, 0xFE363C8E, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C8D, 0xFFFFFFFF, 0x00000027, 0x00000002, 0xFE363C8B, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C8B, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C8D, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8D, 0x000003E8, 0x00000024, 0x00000002, 0xFE363C8D, 0x000003E8, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C8C, 0x00000001, 0x0000000D, 0x00000002, 0xFE363C8C, 0x000003E8, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_802452DC_836ADC .word 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFE57, 0x00000012, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFEB1, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C84, 0xFE363C81, 0x00000024, 0x00000002, 0xFE363C85, 0xFE363C82, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000027, 0x00000002, 0xFE363C83, 0xFFFFFFC7, 0x00000012, 0x00000000, 0x00000027, 0x00000002, 0xFE363C83, 0x00000039, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C84, 0xFFFFFFE1, 0x00000027, 0x00000002, 0xFE363C85, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFC, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x0000000A, 0x00000002, 0xFAA2B585, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000000, 0x00000012, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00000000, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C81, 0xFFFFFFFA, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFFD8, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_mac/mac_04/851410.data.s b/ver/us/asm/data/world/area_mac/mac_04/851410.data.s index e0ee58110e..65876dd19a 100644 --- a/ver/us/asm/data/world/area_mac/mac_04/851410.data.s +++ b/ver/us/asm/data/world/area_mac/mac_04/851410.data.s @@ -30,7 +30,7 @@ dlabel D_8024F010_851BE0 .word 0x00000020, 0x00000000 dlabel D_8024F018_851BE8 -.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x0000009B, 0x00000030, 0xFFFFFE20, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, mac_04_SetEntityFlags100000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x00880004, 0x00880001, 0x00000000, 0x00060004, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000100, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x00880003, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0x00000127, 0xFFFFFE34, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0x000000E6, 0xFFFFFE20, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0x00000000, 0x000000C8, 0x0000001E, 0xFFFFFDF4, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000000, 0x000000C8, 0x0000001E, 0xFFFFFDF4, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x00880001, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000100, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x00880004, 0x00880001, 0x00000000, 0x00060005, 0x00000024, 0x00000002, 0xF5DE0180, 0xFFFFFFF9, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, mac_04_SetEntityFlags100000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0x0000009B, 0x00000030, 0xFFFFFE20, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, mac_04_RemovePadlock, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x00880004, 0x00880001, 0x00000000, 0x00060004, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000100, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x00880003, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0x00000127, 0xFFFFFE34, 0x00000000, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0x000000E6, 0xFFFFFE20, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0x00000000, 0x000000C8, 0x0000001E, 0xFFFFFDF4, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000000, 0x000000C8, 0x0000001E, 0xFFFFFDF4, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x00880001, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000100, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x00880004, 0x00880001, 0x00000000, 0x00060005, 0x00000024, 0x00000002, 0xF5DE0180, 0xFFFFFFF9, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, mac_04_RemovePadlock, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024F278_851E48 .word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D0173, 0x000000A0, 0x00000028, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x0000000C, 0x00000002, 0xF5DE0180, 0xFFFFFFF9, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x0000009B, 0x00000030, 0xFFFFFE20, 0x0000005A, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_8024EFF4_851BC4, 0x00000024, 0x00000002, 0xFD050F80, 0xFE363C80, 0x00000043, 0x00000002, SetEntityCullMode, 0x00000003, 0x0000004E, 0x00000006, D_8024F018_851BE8, 0x00000100, 0x00004000, D_8024F010_851BE0, 0x00000000, 0x00000001, 0x00000013, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00020021, 0x00000032, 0x00000028, 0xFFFFFE52, 0x00000000, 0xF8405CA1, 0x00000056, 0x00000000, 0x0000000C, 0x00000002, 0xF5DE0180, 0xFFFFFFFA, 0x00000005, 0x00000001, 0x00000000, 0x0000000B, 0x00000002, 0xF8405CA1, 0x00000000, 0x00000024, 0x00000002, 0xF5DE0180, 0xFFFFFFFA, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000007, MakeItemEntity, 0x00020081, 0x00000032, 0x00000028, 0xFFFFFECA, 0x00000011, 0xF8405CAF, 0x00000043, 0x00000007, MakeItemEntity, 0x0002008B, 0x00000032, 0x00000028, 0xFFFFFE8E, 0x00000011, 0xF8405CB0, 0x00000043, 0x00000007, MakeItemEntity, 0x0002009A, 0x00000032, 0x00000028, 0xFFFFFE16, 0x00000011, 0xF8405CB1, 0x00000043, 0x00000007, MakeEntity, Entity_ScriptSpring, 0xFFFFFE20, 0x00000014, 0xFFFFFFA6, 0x00000000, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_8024EFAC_851B7C, 0x00000043, 0x00000002, SetEntityCullMode, 0x00000002, 0x00000047, 0x00000005, D_8024F278_851E48, 0x00000100, 0x00000043, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_mac/mac_05/857070.data.s b/ver/us/asm/data/world/area_mac/mac_05/857070.data.s index e16c2664c2..c2b843db14 100644 --- a/ver/us/asm/data/world/area_mac/mac_05/857070.data.s +++ b/ver/us/asm/data/world/area_mac/mac_05/857070.data.s @@ -261,7 +261,7 @@ dlabel D_8024D704_85F874 .word 0x00000068, 0x00000000 dlabel D_8024D70C_85F87C -.word 0x00000024, 0x00000002, 0xF8405CB5, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x0000000F, 0x00000002, 0xF5DE0180, 0xFFFFFFCA, 0x0000000A, 0x00000002, 0xF97188BE, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000001, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8A, 0x00000000, 0x0000000A, 0x00000002, 0xF97188BD, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070070, 0x00000024, 0x00000002, 0xF97188BD, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070071, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405CA5, 0x00000000, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070072, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x008E0003, 0x00000008, 0x00000001, 0x0000003C, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x008E0001, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070073, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000009, 0x00AD0004, 0x00AD0001, 0x00000000, 0x00070074, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070075, 0x00000024, 0x00000002, 0xFE363C80, 0x00000067, 0x00000024, 0x00000002, 0xFE363C81, 0x00000001, 0x00000046, 0x00000001, D_802450B4_857224, 0x00000043, 0x00000002, AddKeyItem, 0x00000067, 0x00000024, 0x00000002, 0xF8405CA5, 0x00000001, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405CA6, 0x00000001, 0x0000000A, 0x00000002, 0xF97188BD, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070081, 0x00000024, 0x00000002, 0xF97188BD, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070082, 0x00000024, 0x00000002, 0xF97188BD, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, FindKeyItem, 0x00000068, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x0000000A, 0x00000002, 0xF97188BD, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070076, 0x00000024, 0x00000002, 0xF97188BD, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070077, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x0000000A, 0x00000002, 0xF97188BD, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070078, 0x00000024, 0x00000002, 0xF97188BD, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070079, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, D_8024D704_85F874, 0x00000024, 0x00000002, 0xFE363C81, 0x0000000A, 0x00000046, 0x00000001, D_80247824_859994, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x0007007A, 0x0000001C, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x0007007B, 0x00000024, 0x00000002, 0xF8405CA6, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000009, 0x00AD0004, 0x00AD0001, 0x00000000, 0x0007007C, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x0007007D, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000009, 0x00AD0004, 0x00AD0001, 0x00000000, 0x0007007E, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000009, 0x00000100, 0x00000001, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlayerMoveTo, 0x000000A7, 0xFFFFFDFF, 0x00000014, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000002, func_802CF56C, 0x00000002, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0002, 0x00000043, 0x00000005, NpcMoveTo, 0x00000009, 0x00000070, 0xFFFFFE01, 0x0000003C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0001, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0002, 0x00000043, 0x00000005, NpcMoveTo, 0x00000007, 0x00000046, 0xFFFFFDE4, 0x0000002D, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0001, 0x00000057, 0x00000000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000070, 0x00000000, 0xFFFFFE01, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0x00000070, 0x00000000, 0xFFFFFE01, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F7A80, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000008, 0x0000005A, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0x0000000A, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x0000003C, 0x00000044, 0x00000001, 0x802442C4, 0x00000043, 0x00000002, SetPlayerAnimation, 0x0001002C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000008, 0x00830006, 0x00000043, 0x00000003, SetNpcAnimation, 0x0000000A, 0x008E0005, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0005, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000008C, 0x00000000, 0x00000008, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0004, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0001, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0005, 0x00000008, 0x00000001, 0x00000096, 0x00000008, 0x00000001, 0x00000096, 0x00000008, 0x00000001, 0x00000096, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0001, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0001, 0x00000008, 0x00000001, 0x00000028, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000008, 0x00830001, 0x00000043, 0x00000003, SetNpcAnimation, 0x0000000A, 0x008E0001, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000008, 0x00000001, 0x0000001E, 0x00000044, 0x00000001, 0x802442E8, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0002, 0x00000043, 0x00000005, NpcMoveTo, 0x00000007, 0xFFFFFFAB, 0xFFFFFDF8, 0x00000028, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0001, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000007, 0x0000005A, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0002, 0x00000043, 0x00000005, NpcMoveTo, 0x00000009, 0x000000D0, 0xFFFFFDEE, 0x0000003C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0001, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000009, 0x0000010E, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0x0000000A, 0x0000005A, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, func_802CF56C, 0x00000002, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000009, 0x00000100, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8680, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000003C, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x0007007F, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000009, 0x00AD0004, 0x00AD0001, 0x00000000, 0x00070080, 0x00000008, 0x00000001, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0x00000145, 0x00000024, 0x00000002, 0xFE363C83, 0x00000002, 0x00000046, 0x00000001, D_802450B4_857224, 0x00000043, 0x00000003, AddBadge, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000003, SetTattleMsg, 0x00000009, 0x001A0058, 0x00000023, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000024, 0x00000002, 0xF8405CB5, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x0000000F, 0x00000002, 0xF5DE0180, 0xFFFFFFCA, 0x0000000A, 0x00000002, 0xF97188BE, 0x00000001, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000001, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C8A, 0x00000000, 0x0000000A, 0x00000002, 0xF97188BD, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070070, 0x00000024, 0x00000002, 0xF97188BD, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070071, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405CA5, 0x00000000, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070072, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x008E0003, 0x00000008, 0x00000001, 0x0000003C, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x008E0001, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070073, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000009, 0x00AD0004, 0x00AD0001, 0x00000000, 0x00070074, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070075, 0x00000024, 0x00000002, 0xFE363C80, 0x00000067, 0x00000024, 0x00000002, 0xFE363C81, 0x00000001, 0x00000046, 0x00000001, D_802450B4_857224, 0x00000043, 0x00000002, AddKeyItem, 0x00000067, 0x00000024, 0x00000002, 0xF8405CA5, 0x00000001, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405CA6, 0x00000001, 0x0000000A, 0x00000002, 0xF97188BD, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070081, 0x00000024, 0x00000002, 0xF97188BD, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070082, 0x00000024, 0x00000002, 0xF97188BD, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, FindKeyItem, 0x00000068, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x0000000A, 0x00000002, 0xF97188BD, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070076, 0x00000024, 0x00000002, 0xF97188BD, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070077, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x0000000A, 0x00000002, 0xF97188BD, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070078, 0x00000024, 0x00000002, 0xF97188BD, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x00070079, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, D_8024D704_85F874, 0x00000024, 0x00000002, 0xFE363C81, 0x0000000A, 0x00000046, 0x00000001, D_80247824_859994, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x0007007A, 0x0000001C, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x0007007B, 0x00000024, 0x00000002, 0xF8405CA6, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000009, 0x00AD0004, 0x00AD0001, 0x00000000, 0x0007007C, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x0007007D, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000009, 0x00AD0004, 0x00AD0001, 0x00000000, 0x0007007E, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000009, 0x00000100, 0x00000001, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlayerMoveTo, 0x000000A7, 0xFFFFFDFF, 0x00000014, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000002, func_802CF56C, 0x00000002, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0002, 0x00000043, 0x00000005, NpcMoveTo, 0x00000009, 0x00000070, 0xFFFFFE01, 0x0000003C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0001, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0002, 0x00000043, 0x00000005, NpcMoveTo, 0x00000007, 0x00000046, 0xFFFFFDE4, 0x0000002D, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0001, 0x00000057, 0x00000000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000070, 0x00000000, 0xFFFFFE01, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0x00000070, 0x00000000, 0xFFFFFE01, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F7A80, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000008, 0x0000005A, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0x0000000A, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x0000003C, 0x00000044, 0x00000001, 0x802442C4, 0x00000043, 0x00000002, SetPlayerAnimation, 0x0001002C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000008, 0x00830006, 0x00000043, 0x00000003, SetNpcAnimation, 0x0000000A, 0x008E0005, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0005, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000008C, 0x00000000, 0x00000008, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0004, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0001, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0005, 0x00000008, 0x00000001, 0x00000096, 0x00000008, 0x00000001, 0x00000096, 0x00000008, 0x00000001, 0x00000096, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0001, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0001, 0x00000008, 0x00000001, 0x00000028, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000008, 0x00830001, 0x00000043, 0x00000003, SetNpcAnimation, 0x0000000A, 0x008E0001, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000008, 0x00000001, 0x0000001E, 0x00000044, 0x00000001, 0x802442E8, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0002, 0x00000043, 0x00000005, NpcMoveTo, 0x00000007, 0xFFFFFFAB, 0xFFFFFDF8, 0x00000028, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000007, 0x00AC0001, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000007, 0x0000005A, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0002, 0x00000043, 0x00000005, NpcMoveTo, 0x00000009, 0x000000D0, 0xFFFFFDEE, 0x0000003C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000009, 0x00AD0001, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000009, 0x0000010E, 0x00000000, 0x00000043, 0x00000004, InterpNpcYaw, 0x0000000A, 0x0000005A, 0x00000000, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, func_802CF56C, 0x00000002, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000009, 0x00000100, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8680, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000003C, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x008E0002, 0x008E0001, 0x00000000, 0x0007007F, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000009, 0x00AD0004, 0x00AD0001, 0x00000000, 0x00070080, 0x00000008, 0x00000001, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0x00000145, 0x00000024, 0x00000002, 0xFE363C83, 0x00000002, 0x00000046, 0x00000001, D_802450B4_857224, 0x00000043, 0x00000003, AddBadge, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000003, SetTattleMessage, 0x00000009, 0x001A0058, 0x00000023, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024E1D0_860340 .word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_8024D70C_85F87C, 0x00000024, 0x00000002, 0xF97188BD, 0x00000000, 0x00000024, 0x00000002, 0xF97188BE, 0x00000000, 0x0000000A, 0x00000002, 0xF8405CB5, 0x00000001, 0x00000024, 0x00000002, 0xF97188BE, 0x00000001, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 @@ -273,7 +273,7 @@ dlabel D_8024E3A0_860510 .word 0x0000000A, 0x00000002, 0xF8405CA5, 0x00000000, 0x0000000A, 0x00000002, 0xF97188BF, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00AD0004, 0x00AD0001, 0x00000000, 0x00070068, 0x00000024, 0x00000002, 0xF97188BF, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00AD0004, 0x00AD0001, 0x00000000, 0x00070069, 0x00000024, 0x00000002, 0xF97188BF, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8405CA6, 0x00000000, 0x0000000A, 0x00000002, 0xF97188BF, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00AD0004, 0x00AD0001, 0x00000000, 0x0007006A, 0x00000024, 0x00000002, 0xF97188BF, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00AD0004, 0x00AD0001, 0x00000000, 0x0007006B, 0x00000024, 0x00000002, 0xF97188BF, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF97188BF, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00AD0004, 0x00AD0001, 0x00000000, 0x0007006C, 0x00000024, 0x00000002, 0xF97188BF, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00AD0004, 0x00AD0001, 0x00000000, 0x0007006D, 0x00000013, 0x00000000, 0x00000043, 0x00000002, ShowChoice, 0x001E000D, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0xFFFFFFFF, 0x00AD0004, 0x00AD0001, 0x00000000, 0x0007006E, 0x00000012, 0x00000000, 0x00000043, 0x00000006, ContinueSpeech, 0xFFFFFFFF, 0x00AD0004, 0x00AD0001, 0x00000000, 0x0007006F, 0x00000044, 0x00000001, D_8024E23C_8603AC, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024E5DC_86074C -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_8024E3A0_860510, 0x0000000A, 0x00000002, 0xF8405CA6, 0x00000001, 0x00000043, 0x00000003, SetTattleMsg, 0x00000009, 0x001A0058, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_8024E3A0_860510, 0x0000000A, 0x00000002, 0xF8405CA6, 0x00000001, 0x00000043, 0x00000003, SetTattleMessage, 0x00000009, 0x001A0058, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024E62C_86079C .word 0x00000024, 0x00000002, 0xFE363C80, 0x00000007, 0x00000043, 0x00000001, filemenu_update_show_name_input_8554F0, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830404, 0x00830401, 0x00000000, 0x000700BF, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, func_802433BC_85552C, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830404, 0x00830401, 0x00000000, 0x000700C0, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x000002CD, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000001, 0x00000001, 0x00000001, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000024, 0x00000002, 0xF840627D, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830404, 0x00830401, 0x00000000, 0x000700C1, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0x0000000B, 0x00000046, 0x00000001, D_802479A8_859B18, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830404, 0x00830401, 0x00000000, 0x000700C5, 0x00000002, 0x00000000, 0x00000016, 0x00000001, 0x000000AC, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830404, 0x00830401, 0x00000000, 0x000700C2, 0x00000024, 0x00000002, 0xFE363C80, 0x000000BB, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000046, 0x00000001, D_802450B4_857224, 0x00000043, 0x00000003, AddItem, 0xFE363C80, 0xFE363C81, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830404, 0x00830401, 0x00000000, 0x000700C3, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x000002CD, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000001, 0x00000001, 0x00000001, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000024, 0x00000002, 0xF840627D, 0x00000000, 0x00000027, 0x00000002, 0xF5DE02E2, 0x00000001, 0x0000001C, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830404, 0x00830401, 0x00000000, 0x000700C4, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_mim/mim_04/B9FEA0.data.s b/ver/us/asm/data/world/area_mim/mim_04/B9FEA0.data.s index 4a78cdc492..60a4a337fb 100644 --- a/ver/us/asm/data/world/area_mim/mim_04/B9FEA0.data.s +++ b/ver/us/asm/data/world/area_mim/mim_04/B9FEA0.data.s @@ -24,10 +24,10 @@ dlabel D_80242618_B9FF78 .word 0x00000043, 0x00000004, ShowGotItem, 0xFE363C80, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, ShowGotItem, 0xFE363C80, 0x00000001, 0x00000010, 0x00000002, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80242678_B9FFD8 -.word 0x0000000A, 0x00000002, 0xF8405F22, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000321, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990205, 0x00000008, 0x00000001, 0x0000002D, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990202, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x0000002D, 0x0000001A, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990203, 0x00990202, 0x00000000, 0x000E000F, 0x00000024, 0x00000002, 0xFE363C80, 0x0000002D, 0x00000024, 0x00000002, 0xFE363C81, 0x00000001, 0x00000046, 0x00000001, D_80242618_B9FF78, 0x00000043, 0x00000002, AddKeyItem, 0x0000002D, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990203, 0x00990202, 0x00000000, 0x000E0010, 0x00000024, 0x00000002, 0xF8405F22, 0x00000001, 0x00000043, 0x00000003, SetTattleMsg, 0x00000000, 0x001A00A3, 0x00000012, 0x00000000, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0xFFFFFFF1, 0x00000024, 0x00000002, 0xFE363C80, 0x000E0011, 0x00000024, 0x00000002, 0xFE363C81, 0x000E0012, 0x00000018, 0x00000001, 0x00000027, 0x00000024, 0x00000002, 0xFE363C80, 0x000E0013, 0x00000024, 0x00000002, 0xFE363C81, 0x000E0014, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000E0015, 0x00000024, 0x00000002, 0xFE363C81, 0x000E0016, 0x00000023, 0x00000000, 0x0000000A, 0x00000002, 0xF9718884, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x00990203, 0x00990202, 0x00000000, 0xFE363C80, 0x00000024, 0x00000002, 0xF9718884, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x00990203, 0x00990202, 0x00000000, 0xFE363C81, 0x00000024, 0x00000002, 0xF9718884, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000000A, 0x00000002, 0xF8405F22, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000321, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFFFFFFFF, 0x00000323, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990205, 0x00000008, 0x00000001, 0x0000002D, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990202, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x0000002D, 0x0000001A, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990203, 0x00990202, 0x00000000, 0x000E000F, 0x00000024, 0x00000002, 0xFE363C80, 0x0000002D, 0x00000024, 0x00000002, 0xFE363C81, 0x00000001, 0x00000046, 0x00000001, D_80242618_B9FF78, 0x00000043, 0x00000002, AddKeyItem, 0x0000002D, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00990203, 0x00990202, 0x00000000, 0x000E0010, 0x00000024, 0x00000002, 0xF8405F22, 0x00000001, 0x00000043, 0x00000003, SetTattleMessage, 0x00000000, 0x001A00A3, 0x00000012, 0x00000000, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0xFFFFFFF1, 0x00000024, 0x00000002, 0xFE363C80, 0x000E0011, 0x00000024, 0x00000002, 0xFE363C81, 0x000E0012, 0x00000018, 0x00000001, 0x00000027, 0x00000024, 0x00000002, 0xFE363C80, 0x000E0013, 0x00000024, 0x00000002, 0xFE363C81, 0x000E0014, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000E0015, 0x00000024, 0x00000002, 0xFE363C81, 0x000E0016, 0x00000023, 0x00000000, 0x0000000A, 0x00000002, 0xF9718884, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x00990203, 0x00990202, 0x00000000, 0xFE363C80, 0x00000024, 0x00000002, 0xF9718884, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x00990203, 0x00990202, 0x00000000, 0xFE363C81, 0x00000024, 0x00000002, 0xF9718884, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_802428D8_BA0238 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80242678_B9FFD8, 0x0000000A, 0x00000002, 0xF8405F22, 0x00000000, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x00000019, 0x00000019, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990207, 0x00000043, 0x00000003, SetTattleMsg, 0x00000000, 0x001A00A2, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80242678_B9FFD8, 0x0000000A, 0x00000002, 0xF8405F22, 0x00000000, 0x00000043, 0x00000004, SetNpcCollisionSize, 0xFFFFFFFF, 0x00000019, 0x00000019, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00990207, 0x00000043, 0x00000003, SetTattleMessage, 0x00000000, 0x001A00A2, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80242954_BA02B4 .word 0x00000001, D_802425AC_B9FF0C, 0x43700000, 0x00000000, 0xC3700000, 0x00400400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80050084, 0x000A0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x59980002, 0x3FFF2666, 0x4CCC0002, 0x3FFF3FFF, 0x3FFF0002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x26660000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00001999, 0x3FFF0002, 0x33322666, 0x33320002, 0x33323FFF, 0x33320002, 0x33326665, 0x33320002, 0x33327FFF, 0x26660002, 0x33320000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00020000, 0x000000F0, 0x00000000, 0xFFFFFF10, 0x0000001E, 0x00000000, 0xFFFF8001, 0x00000000, 0x000000F0, 0x00000000, 0xFFFFFF10, 0x000000C8, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x002B0102, 0x002B0102, 0x002B0103, 0x002B0103, 0x002B0101, 0x002B0101, 0x002B0108, 0x002B0108, 0x002B0103, 0x002B0103, 0x002B0103, 0x002B0103, 0x002B0103, 0x002B0103, 0x002B0103, 0x002B0103, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_nok/nok_01/9C89E0.data.s b/ver/us/asm/data/world/area_nok/nok_01/9C89E0.data.s index 0ff5e2079a..b346cd4577 100644 --- a/ver/us/asm/data/world/area_nok/nok_01/9C89E0.data.s +++ b/ver/us/asm/data/world/area_nok/nok_01/9C89E0.data.s @@ -294,7 +294,7 @@ dlabel D_8024AE90_9D0270 .word 0x0000000A, 0x00000002, 0xF8405DB6, 0x00000001, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000C, 0x00000002, 0xF5DE0180, 0xFFFFFF9F, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000004, SetPlayerPos, 0xFFFFFE7E, 0x00000000, 0x0000018F, 0x00000043, 0x00000004, PlayerMoveTo, 0xFFFFFECC, 0x00000146, 0x0000001E, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000003, NpcFacePlayer, 0x00000000, 0x00000005, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000005, GetNpcPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C80, 0x00000005, 0x00000027, 0x00000002, 0xFE363C81, 0x00000023, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000000, 0x00000262, 0x00000000, 0x00000043, 0x0000000A, ShowEmote, 0x00000000, 0x00000000, 0x00000000, 0x00000014, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008F0006, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C8A, 0xFE363C8B, 0xFE363C8C, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C8A, 0xFE363C8B, 0xFE363C8C, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C8A, 0xFE363C8B, 0xFE363C8C, 0x00000043, 0x00000003, GetCamDistance, 0x00000000, 0xFE363C8A, 0x0000002E, 0x00000002, 0xFE363C8A, 0xF24A7D4D, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xFE363C8A, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0x00000004, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFFFFFEE8, 0x0000012D, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008F0002, 0x00000008, 0x00000001, 0x00000007, 0x00000046, 0x00000001, D_8024AD10_9D00F0, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000012, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000005, GetNpcPos, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C80, 0x00000028, 0x00000043, 0x00000005, SetNpcPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000013, 0x00000000, 0x00000043, 0x00000003, BindNpcInteract, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000100, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405DB6, 0x00000001, 0x00000043, 0x00000003, BindNpcInteract, 0x00000000, D_8024AD10_9D00F0, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000100, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, NpcFaceNpc, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x00900006, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFE363C80, 0xFE363C82, 0x00000011, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x00900002, 0x00000003, 0x00000001, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024B2B0_9D0690 -.word 0x0000004D, 0x00000001, 0x0000000A, 0x0000000A, 0x00000002, 0xF8405DB6, 0x00000001, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000002, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0xFFFFFF30, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8C, 0x0000011A, 0x00000003, 0x00000001, 0x0000000A, 0x0000000C, 0x00000002, 0xF5DE0180, 0xFFFFFF9F, 0x00000043, 0x00000005, GetNpcPos, 0x00000001, 0xFE363C8A, 0xFE363C8B, 0xFE363C8C, 0x00000027, 0x00000002, 0xFE363C8A, 0x00000014, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000000A2, 0x00000003, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405DB6, 0x00000001, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000008, nok_01_UnkFloatFunc, 0xFE363C80, 0xFE363C81, 0xFFFFFFCE, 0x00000032, 0x00000078, 0x00000000, 0x000000B4, 0x00000043, 0x00000008, nok_01_UnkFloatFunc, 0xFE363C80, 0xFE363C82, 0xFFFFFFE0, 0x00000020, 0x00000078, 0x00000000, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C81, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C82, 0xFE363C8C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x002B0003, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0xFE363C81, 0xFE363C8B, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C83, 0xFE363C8B, 0x00000027, 0x00000002, 0xFE363C83, 0x00000002, 0x00000027, 0x00000002, 0xFE363C80, 0x00000002, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C80, 0x000000F0, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000002, 0xFE363C81, 0xFE363C83, 0xFE363C82, 0x00000003, 0x00000001, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000004D, 0x00000001, 0x0000000A, 0x0000000A, 0x00000002, 0xF8405DB6, 0x00000001, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000002, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0xFFFFFF30, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8C, 0x0000011A, 0x00000003, 0x00000001, 0x0000000A, 0x0000000C, 0x00000002, 0xF5DE0180, 0xFFFFFF9F, 0x00000043, 0x00000005, GetNpcPos, 0x00000001, 0xFE363C8A, 0xFE363C8B, 0xFE363C8C, 0x00000027, 0x00000002, 0xFE363C8A, 0x00000014, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x0000000A, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x000000A2, 0x00000003, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8405DB6, 0x00000001, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000008, nok_01_CosInterpMinMax, 0xFE363C80, 0xFE363C81, 0xFFFFFFCE, 0x00000032, 0x00000078, 0x00000000, 0x000000B4, 0x00000043, 0x00000008, nok_01_CosInterpMinMax, 0xFE363C80, 0xFE363C82, 0xFFFFFFE0, 0x00000020, 0x00000078, 0x00000000, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C81, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C82, 0xFE363C8C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x002B0003, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0xFE363C81, 0xFE363C8B, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C83, 0xFE363C8B, 0x00000027, 0x00000002, 0xFE363C83, 0x00000002, 0x00000027, 0x00000002, 0xFE363C80, 0x00000002, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C80, 0x000000F0, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000002, 0xFE363C81, 0xFE363C83, 0xFE363C82, 0x00000003, 0x00000001, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024B55C_9D093C .word 0x00000043, 0x00000002, GetOwnerEncounterTrigger, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000004, 0x00000027, 0x00000002, 0xFE363C81, 0x00000001, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000002, 0x00000027, 0x00000002, 0xFE363C81, 0x00000001, 0x00000013, 0x00000000, 0x0000000B, 0x00000002, 0xFE363C81, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000024, 0x00000002, 0xF8405DB6, 0x00000001, 0x00000043, 0x00000003, SetSelfEnemyFlagBits, 0x00000020, 0x00000001, 0x00000056, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x002B0008, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000001, 0x00000331, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0x00000001, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000019, 0x00000027, 0x00000002, 0xFE363C80, 0x00000028, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFFD8, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x002B0008, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000001, 0x00000331, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0x00000001, 0xFE363C80, 0x00000000, 0xFE363C82, 0x0000000F, 0x00000027, 0x00000002, 0xFE363C80, 0x0000001E, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFFE2, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x002B0009, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000001, 0x00000331, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0x00000001, 0xFE363C80, 0x00000000, 0xFE363C82, 0x0000000D, 0x00000027, 0x00000002, 0xFE363C80, 0x00000014, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFFEC, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000001, 0x00000331, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0x00000001, 0xFE363C80, 0x00000000, 0xFE363C82, 0x0000000B, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFFF6, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000001, 0x00000331, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0x00000001, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000009, 0x00000027, 0x00000002, 0xFE363C80, 0x00000050, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFFB0, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x002B0003, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000001, 0x00000331, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0x00000001, 0xFE363C80, 0x00000000, 0xFE363C82, 0x0000000F, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, NpcJump0, 0x00000002, 0xFE363C80, 0x00000000, 0xFE363C82, 0x0000000F, 0x00000005, 0x00000001, 0x00000046, 0x00000043, 0x00000003, PlayerFaceNpc, 0x00000001, 0x00000000, 0x00000043, 0x00000004, NpcFaceNpc, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000003, PlayerFaceNpc, 0x00000002, 0x00000000, 0x00000043, 0x00000004, NpcFaceNpc, 0x00000000, 0x00000002, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000007, AdjustCam, 0x00000000, 0x00000004, 0x00000000, 0xF245CA80, 0xF24ABE80, 0xF24A5E80, 0x00000057, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000100, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x0090000B, 0x00000043, 0x00000006, NpcJump0, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x0000000F, 0x00000043, 0x00000005, GetNpcPos, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x00900005, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFE363C80, 0xFE363C82, 0x0000000F, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x00900001, 0x00000043, 0x00000005, GetNpcPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x00000027, 0x00000002, 0xFE363C81, 0x0000000A, 0x00000043, 0x00000006, NpcJump0, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000000A, 0x00000043, 0x00000003, PlayerFaceNpc, 0x00000000, 0x00000000, 0x00000043, 0x00000003, NpcFacePlayer, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x00900000, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000002, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C80, 0x00000001, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x00000027, 0x00000002, 0xFE363C81, 0x00000014, 0x00000024, 0x00000002, 0xFE363C83, 0x00000002, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000044, 0x00000001, D_80248F90_9CE370, 0x00000043, 0x00000004, InterpNpcYaw, 0xFE363C83, 0x0000003C, 0x00000000, 0x00000043, 0x00000006, NpcJump0, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000001E, 0x00000043, 0x00000005, SetNpcPos, 0x00000002, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000043, 0x00000003, SetNpcSprite, 0x00000000, 0x008F0002, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000100, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008F0000, 0x00000008, 0x00000001, 0x00000004, 0x00000043, 0x00000003, EnableNpcBlur, 0x00000002, 0x00000001, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008F0002, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008F0009, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008F0002, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x008F0007, 0x008F0002, 0x00000000, 0x000C0002, 0x00000056, 0x00000000, 0x00000043, 0x00000003, ResetCam, 0x00000000, 0x00000004, 0x00000057, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000043, 0x00000004, SetEnemyFlagBits, 0x00000000, 0x00400000, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_nok/nok_04/9EEEB0.data.s b/ver/us/asm/data/world/area_nok/nok_04/9EEEB0.data.s index 3f40d41b5c..1fc16a82f3 100644 --- a/ver/us/asm/data/world/area_nok/nok_04/9EEEB0.data.s +++ b/ver/us/asm/data/world/area_nok/nok_04/9EEEB0.data.s @@ -27,7 +27,7 @@ dlabel D_80241440_9EF030 .word 0xFFFFFFAE, 0x00000065, 0x00000082, 0x00000026, 0x000000A4, 0x00000082, 0x0000009E, 0x00000087, 0x0000009D, 0x00000119, 0x0000009C, 0x000000CA dlabel D_80241470_9EF060 -.word 0x00000024, 0x00000002, 0xFE363C82, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C83, 0xFE363C81, 0x00000024, 0x00000002, 0xFE363C84, 0x00000258, 0x0000002A, 0x00000002, 0xFE363C84, 0x00000064, 0x00000027, 0x00000002, 0xFE363C84, 0x0000001B, 0x00000043, 0x00000003, RandInt, 0x00000001, 0xFE363C85, 0x00000029, 0x00000002, 0xFE363C85, 0x00000014, 0x00000028, 0x00000002, 0xFE363C85, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C86, 0x00000000, 0x00000026, 0x00000002, 0xFE363C88, 0xF24A8E80, 0x00000043, 0x00000005, MakeLerp, 0xFE363C85, 0x00000000, 0xFE363C84, 0x00000008, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7C20, 0x00000027, 0x00000002, 0xFE363C86, 0x00000001, 0x00000026, 0x00000002, 0xFE363C89, 0xFE363C88, 0x0000002E, 0x00000002, 0xFE363C89, 0xF24A7680, 0x00000043, 0x00000008, nok_04_UnkFloatFunc, 0xFE363C86, 0xFE363C87, 0xFE363C89, 0xFE363C88, 0x00000003, 0x00000000, 0x00000000, 0x0000002E, 0x00000002, 0xFE363C88, 0xF24A7E20, 0x00000043, 0x00000005, TranslateModel, 0xFE363C82, 0xFE363C87, 0xFE363C80, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000024, 0x00000002, 0xFE363C82, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C83, 0xFE363C81, 0x00000024, 0x00000002, 0xFE363C84, 0x00000258, 0x0000002A, 0x00000002, 0xFE363C84, 0x00000064, 0x00000027, 0x00000002, 0xFE363C84, 0x0000001B, 0x00000043, 0x00000003, RandInt, 0x00000001, 0xFE363C85, 0x00000029, 0x00000002, 0xFE363C85, 0x00000014, 0x00000028, 0x00000002, 0xFE363C85, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C86, 0x00000000, 0x00000026, 0x00000002, 0xFE363C88, 0xF24A8E80, 0x00000043, 0x00000005, MakeLerp, 0xFE363C85, 0x00000000, 0xFE363C84, 0x00000008, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7C20, 0x00000027, 0x00000002, 0xFE363C86, 0x00000001, 0x00000026, 0x00000002, 0xFE363C89, 0xFE363C88, 0x0000002E, 0x00000002, 0xFE363C89, 0xF24A7680, 0x00000043, 0x00000008, nok_04_CosInterpMinMax, 0xFE363C86, 0xFE363C87, 0xFE363C89, 0xFE363C88, 0x00000003, 0x00000000, 0x00000000, 0x0000002E, 0x00000002, 0xFE363C88, 0xF24A7E20, 0x00000043, 0x00000005, TranslateModel, 0xFE363C82, 0xFE363C87, 0xFE363C80, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024161C_9EF20C .word 0x00000024, 0x00000002, 0xFE363C82, 0xFE363C80, 0x00000024, 0x00000002, 0xFE363C83, 0xFE363C81, 0x00000024, 0x00000002, 0xFE363C84, 0x00000258, 0x0000002A, 0x00000002, 0xFE363C84, 0x00000064, 0x00000027, 0x00000002, 0xFE363C84, 0x0000001B, 0x00000024, 0x00000002, 0xFE363C80, 0x00000005, 0x00000005, 0x00000001, 0xFE363C80, 0x00000043, 0x00000005, TranslateModel, 0xFE363C82, 0xFE363C80, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000029, 0x00000002, 0xFE363C81, 0xFFFFFFFF, 0x00000043, 0x00000005, TranslateModel, 0xFE363C82, 0xFE363C81, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_omo/omo_03/DA8190.data.s b/ver/us/asm/data/world/area_omo/omo_03/DA8190.data.s index ad07b86cbe..001222fc60 100644 --- a/ver/us/asm/data/world/area_omo/omo_03/DA8190.data.s +++ b/ver/us/asm/data/world/area_omo/omo_03/DA8190.data.s @@ -3,7 +3,7 @@ .section .data dlabel D_80242F50_DA8190 -.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_03_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_03_UnkFloatFunc, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_03_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_03_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_03_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_03_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_03_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_03_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_03_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_03_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_03_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000083, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x00000086, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000083, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000086, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x0000008A, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x0000008C, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x0000008D, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000008D, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000008D, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000083, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000086, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000083, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x00000086, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000008A, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x0000008C, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x0000008A, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x0000008C, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000008A, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000008C, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000083, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x00000086, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000088, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_03_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_03_CosInterpMinMax, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_03_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_03_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_03_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_03_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_03_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_03_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_03_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_03_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_03_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_03_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000083, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x00000086, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000083, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000086, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x0000008A, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x0000008C, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x0000008D, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000008D, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000008D, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000083, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000086, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000083, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x00000086, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000008A, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x0000008C, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x0000008A, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x0000008C, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000008A, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000008C, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000083, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x00000086, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000088, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80244118_DA9358 .word 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_omo/omo_06/DB9060.data.s b/ver/us/asm/data/world/area_omo/omo_06/DB9060.data.s index 76f2526f06..b837592784 100644 --- a/ver/us/asm/data/world/area_omo/omo_06/DB9060.data.s +++ b/ver/us/asm/data/world/area_omo/omo_06/DB9060.data.s @@ -3,7 +3,7 @@ .section .data dlabel D_80241750_DB9060 -.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_06_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_06_UnkFloatFunc, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_06_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_06_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_06_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_06_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_06_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_06_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_06_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_06_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_06_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000068, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x0000006B, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000068, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000006B, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x0000006F, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000071, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000072, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000072, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000072, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000068, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000006B, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000068, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000006B, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000006F, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x00000071, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x0000006F, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x00000071, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000006F, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000071, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000068, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x0000006B, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000006D, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_06_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_06_CosInterpMinMax, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_06_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_06_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_06_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_06_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_06_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_06_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_06_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_06_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_06_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000068, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x0000006B, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000068, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000006B, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x0000006F, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000071, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000072, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000072, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000072, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000068, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000006B, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000068, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000006B, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000006F, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x00000071, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x0000006F, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x00000071, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000006F, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000071, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000068, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x0000006B, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000006D, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80242918_DBA228 .word 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_omo/omo_08/DC8100.data.s b/ver/us/asm/data/world/area_omo/omo_08/DC8100.data.s index 9384a01c67..29ed2f03cd 100644 --- a/ver/us/asm/data/world/area_omo/omo_08/DC8100.data.s +++ b/ver/us/asm/data/world/area_omo/omo_08/DC8100.data.s @@ -3,7 +3,7 @@ .section .data dlabel D_80243D30_DC8100 -.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_08_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_08_UnkFloatFunc, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_08_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_08_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_08_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_08_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_08_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_08_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_08_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_08_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_08_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_08_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000084, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x00000087, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000084, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000087, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x0000008B, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x0000008D, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x0000008E, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000008E, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000008E, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000084, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000087, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000084, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x00000087, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000008B, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x0000008D, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x0000008B, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x0000008D, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000008B, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000008D, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000084, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x00000087, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000089, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_08_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_08_CosInterpMinMax, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_08_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_08_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_08_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_08_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_08_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_08_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_08_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_06_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_08_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_08_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_08_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000084, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x00000087, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000084, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000087, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x0000008B, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x0000008D, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x0000008E, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000008E, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000008E, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000084, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000087, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000084, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x00000087, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000008B, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x0000008D, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x0000008B, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x0000008D, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000008B, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000008D, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000084, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x00000087, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000089, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80244EF8_DC92C8 .word 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_omo/omo_10/DD8A60.data.s b/ver/us/asm/data/world/area_omo/omo_10/DD8A60.data.s index c357b65ac2..bd19d54ac4 100644 --- a/ver/us/asm/data/world/area_omo/omo_10/DD8A60.data.s +++ b/ver/us/asm/data/world/area_omo/omo_10/DD8A60.data.s @@ -3,7 +3,7 @@ .section .data dlabel D_802410B0_DD8A60 -.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_10_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_10_UnkFloatFunc, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_10_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_10_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_10_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_10_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_10_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_10_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_10_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_10_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_10_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000077, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x0000007A, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000077, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000007A, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x0000007E, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000080, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000081, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000081, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000081, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000077, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000007A, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000077, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000007A, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000007E, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x00000080, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x0000007E, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x00000080, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000007E, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000080, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000077, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x0000007A, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000007C, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_10_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_10_CosInterpMinMax, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_10_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_10_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_10_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_10_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_10_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_10_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_10_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_10_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_10_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_10_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000077, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x0000007A, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000077, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000007A, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x0000007E, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000080, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000081, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000081, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000081, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000077, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000007A, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000077, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000007A, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000007E, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x00000080, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x0000007E, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x00000080, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000007E, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000080, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000077, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x0000007A, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000007C, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80242278_DD9C28 .word 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_omo/omo_16/DEC600.data.s b/ver/us/asm/data/world/area_omo/omo_16/DEC600.data.s index 33d65392cb..e27af10a67 100644 --- a/ver/us/asm/data/world/area_omo/omo_16/DEC600.data.s +++ b/ver/us/asm/data/world/area_omo/omo_16/DEC600.data.s @@ -3,7 +3,7 @@ .section .data dlabel D_80240730_DEC600 -.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_16_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_16_UnkFloatFunc, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_16_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_16_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_16_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_16_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_16_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_16_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_16_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_16_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_16_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000060, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x00000063, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000060, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000063, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000067, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000069, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x0000006A, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000006A, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000006A, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000060, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000063, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000060, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x00000063, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x00000067, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x00000069, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x00000067, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x00000069, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000067, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000069, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000060, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x00000063, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000065, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFE363C81, 0x0000002D, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, MakeLerp, 0xFE363C81, 0x00000000, 0x00000028, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000001, 0x00000056, 0x00000000, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24AB680, 0xFE363C83, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010004, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8A80, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A7D4D, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C81, 0x00000032, 0xFE363C82, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000003, InterpPlayerYaw, 0xFE363C83, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000026, 0x00000002, 0xFE363C8A, 0xFE363C83, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24AB680, 0xFE363C83, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFE363C81, 0x00000032, 0xFE363C82, 0x0000000A, 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFC, 0xF24A7C80, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFC, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFC, 0xFE363C8A, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000026, 0x00000002, 0xFE363C8A, 0xFE363C83, 0x0000000C, 0x00000002, 0xFE363C83, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C83, 0xF24BE280, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C84, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C85, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C86, 0xFE363C83, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24C0A80, 0xFE363C83, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000000, 0xF24A8680, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0003, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0001, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C84, 0xFE363C85, 0xF24ACA80, 0xFE363C86, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000000, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0x00000000, 0xFE363C84, 0x00000032, 0xFE363C85, 0x0000000A, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000000, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x008C0004, 0x008C0001, 0x00000005, 0x000F0009, 0x00000043, 0x00000002, PlaySound, 0x00000083, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000021, 0x00000000, 0x00000008, 0x00000008, 0x00000001, 0x0000000A, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, StopSound, 0x00000083, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000020, 0x00000000, 0x00000008, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24C0A80, 0xFE363C82, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, NpcJump0, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0003, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000000, 0xF24A8280, 0x00000030, 0x00000001, 0xFE363C89, 0x00000032, 0x00000002, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFE363C83, 0xFE363C84, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0001, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000000, 0x0000010E, 0x0000000F, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24B6A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010004, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8680, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000102, 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFC, 0xF24A8480, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFC, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_16_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_16_CosInterpMinMax, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_16_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_16_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_16_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_16_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_16_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_16_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_16_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_16_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_16_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_16_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000060, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x00000063, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000060, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000063, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000067, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000069, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x0000006A, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000006A, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x0000006A, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000060, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000063, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000060, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x00000063, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x00000067, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x00000069, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x00000067, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x00000069, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000067, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000069, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000060, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x00000063, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000065, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFE363C81, 0x0000002D, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, MakeLerp, 0xFE363C81, 0x00000000, 0x00000028, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000001, 0x00000056, 0x00000000, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24AB680, 0xFE363C83, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010004, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8A80, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A7D4D, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C81, 0x00000032, 0xFE363C82, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000003, InterpPlayerYaw, 0xFE363C83, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000026, 0x00000002, 0xFE363C8A, 0xFE363C83, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24AB680, 0xFE363C83, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFE363C81, 0x00000032, 0xFE363C82, 0x0000000A, 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFC, 0xF24A7C80, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFC, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFC, 0xFE363C8A, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000026, 0x00000002, 0xFE363C8A, 0xFE363C83, 0x0000000C, 0x00000002, 0xFE363C83, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C83, 0xF24BE280, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C84, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C85, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C86, 0xFE363C83, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24C0A80, 0xFE363C83, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000000, 0xF24A8680, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0003, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0001, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C84, 0xFE363C85, 0xF24ACA80, 0xFE363C86, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000000, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0x00000000, 0xFE363C84, 0x00000032, 0xFE363C85, 0x0000000A, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000000, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x008C0004, 0x008C0001, 0x00000005, 0x000F0009, 0x00000043, 0x00000002, PlaySound, 0x00000083, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000021, 0x00000000, 0x00000008, 0x00000008, 0x00000001, 0x0000000A, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, StopSound, 0x00000083, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000020, 0x00000000, 0x00000008, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24C0A80, 0xFE363C82, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, NpcJump0, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0003, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000000, 0xF24A8280, 0x00000030, 0x00000001, 0xFE363C89, 0x00000032, 0x00000002, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFE363C83, 0xFE363C84, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0001, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000000, 0x0000010E, 0x0000000F, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24B6A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010004, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8680, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000102, 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFC, 0xF24A8480, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFC, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80242238_DEE108 .word 0x00000014, 0x00000001, 0xF70F2E86, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GotoMapSpecial, 0x80242FC8, 0x00000003, 0x00000001, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000004, GotoMapSpecial, 0x80242FC0, 0x00000003, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000004, GotoMapSpecial, 0x80242FB8, 0x00000002, 0x00000001, 0x00000016, 0x00000001, 0x00000003, 0x00000043, 0x00000004, GotoMapSpecial, 0x80242FB0, 0x00000003, 0x00000001, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_omo/omo_17/DF2C90.data.s b/ver/us/asm/data/world/area_omo/omo_17/DF2C90.data.s index c01b8a6c69..1b858dbdac 100644 --- a/ver/us/asm/data/world/area_omo/omo_17/DF2C90.data.s +++ b/ver/us/asm/data/world/area_omo/omo_17/DF2C90.data.s @@ -3,7 +3,7 @@ .section .data dlabel D_80243DF0_DF2C90 -.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_17_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_17_UnkFloatFunc, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_17_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_17_UnkFloatFunc, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_17_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_17_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_17_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_17_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_17_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_17_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_17_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000018, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x0000001B, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000018, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000001B, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x0000001F, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000021, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000022, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000022, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000022, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000018, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000001B, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000018, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000001B, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000001F, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x00000021, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x0000001F, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x00000021, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000001F, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000021, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000018, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x0000001B, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000001D, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFE363C81, 0x0000002D, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, MakeLerp, 0xFE363C81, 0x00000000, 0x00000028, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000001, 0x00000056, 0x00000000, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24AB680, 0xFE363C83, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010004, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8A80, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A7D4D, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C81, 0x00000032, 0xFE363C82, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000003, InterpPlayerYaw, 0xFE363C83, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000026, 0x00000002, 0xFE363C8A, 0xFE363C83, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24AB680, 0xFE363C83, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFE363C81, 0x00000032, 0xFE363C82, 0x0000000A, 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFC, 0xF24A7C80, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFC, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFC, 0xFE363C8A, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000026, 0x00000002, 0xFE363C8A, 0xFE363C83, 0x0000000C, 0x00000002, 0xFE363C83, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C83, 0xF24BE280, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C84, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C85, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C86, 0xFE363C83, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24C0A80, 0xFE363C83, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000000, 0xF24A8680, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0003, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0001, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C84, 0xFE363C85, 0xF24ACA80, 0xFE363C86, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000000, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0x00000000, 0xFE363C84, 0x00000032, 0xFE363C85, 0x0000000A, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000000, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x008C0004, 0x008C0001, 0x00000005, 0x000F0009, 0x00000043, 0x00000002, PlaySound, 0x00000083, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000021, 0x00000000, 0x00000008, 0x00000008, 0x00000001, 0x0000000A, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, StopSound, 0x00000083, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000020, 0x00000000, 0x00000008, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24C0A80, 0xFE363C82, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, NpcJump0, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0003, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000000, 0xF24A8280, 0x00000030, 0x00000001, 0xFE363C89, 0x00000032, 0x00000002, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFE363C83, 0xFE363C84, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0001, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000000, 0x0000010E, 0x0000000F, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24B6A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010004, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8680, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000102, 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFC, 0xF24A8480, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFC, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000003E, 0x00000002, 0x00000014, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD482, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD483, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD487, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD488, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD490, 0xF24A7A80, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000014, 0x00000001, 0xFD050F80, 0x00000016, 0x00000001, 0x00000000, 0x00000030, 0x00000001, 0xFD050F81, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD480, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD481, 0xFE363C81, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24B1A80, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD485, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD486, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C83, 0xFE363C82, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24B1A80, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8B, 0xF4ACD48B, 0x00000026, 0x00000002, 0xFD050F8C, 0xF4ACD48C, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000026, 0x00000002, 0xF4ACD491, 0xF24A7A80, 0x00000003, 0x00000001, 0x0000000B, 0x00000032, 0x00000002, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000004, 0x00000001, 0x0000000C, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000002C, 0x00000002, 0xF4ACD491, 0xFE363C84, 0x00000026, 0x00000002, 0xFE363C80, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C81, 0xFE363C83, 0x00000004, 0x00000001, 0x0000000B, 0x00000003, 0x00000001, 0x0000000C, 0x0000002D, 0x00000002, 0xF4ACD491, 0xF24B1A80, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48D, 0xF24A7A80, 0x00000024, 0x00000002, 0xF4ACD492, 0x00000000, 0x0000000A, 0x00000002, 0xFAA2B580, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x00000001, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x00000001, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_17_UnkBufferFunc, 0x00000003, 0x00000000, 0x00000000, 0x00000032, 0x00000002, 0xFE363C80, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD482, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD483, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD484, 0x00000001, 0x00000026, 0x00000002, 0xF4ACD487, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD488, 0xFE363C81, 0x00000024, 0x00000002, 0xF4ACD489, 0x00000001, 0x00000024, 0x00000002, 0xFD050F80, 0x0000000A, 0x00000013, 0x00000000, 0x00000016, 0x00000001, 0x0000000A, 0x00000014, 0x00000001, 0xFD050F82, 0x00000016, 0x00000001, 0x00000000, 0x00000026, 0x00000002, 0xF4ACD48A, 0xF24AA280, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000008, omo_17_CosInterpMinMax, 0xF4ACD492, 0xF4ACD48A, 0xF24A7A80, 0xF24AA280, 0x00000064, 0x00000001, 0xF24A7A80, 0x00000027, 0x00000002, 0xF4ACD492, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x00000043, 0x00000008, omo_17_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24AA280, 0xF24A8280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C80, 0xF4ACD48D, 0x00000024, 0x00000002, 0xFE363C81, 0xF4ACD491, 0x0000002A, 0x00000002, 0xFE363C81, 0x00000002, 0x00000043, 0x00000008, omo_17_CosInterpMinMax, 0xFE363C80, 0xF4ACD48A, 0xF24A7E80, 0xF24AA280, 0xFE363C81, 0x00000000, 0xF24A7A80, 0x00000023, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000004, omo_17_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD482, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD483, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_17_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD484, 0x00000032, 0x00000002, 0xF4ACD482, 0xF4ACD483, 0x00000027, 0x00000002, 0xF4ACD484, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD482, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD482, 0xF4ACD483, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000006, GetDist2D, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000004, omo_17_CompareFloats, 0xFE363C80, 0xF4ACD48A, 0xFE363C82, 0x0000000A, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF4ACD48A, 0xFE363C80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD48A, 0x0000002D, 0x00000002, 0xFE363C81, 0xFE363C80, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD487, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD488, 0x00000030, 0x00000001, 0xFD050F81, 0x00000043, 0x00000004, omo_17_UnkBufferFunc, 0x00000003, 0x00000002, 0xF4ACD489, 0x00000032, 0x00000002, 0xF4ACD487, 0xF4ACD488, 0x00000027, 0x00000002, 0xF4ACD489, 0x00000001, 0x0000000A, 0x00000002, 0xF4ACD487, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F80, 0x00000064, 0x00000024, 0x00000002, 0xFAA2B580, 0x00000000, 0x00000024, 0x00000002, 0xFBD3E281, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD487, 0xF4ACD488, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xFE363C81, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFD050F80, 0x00000064, 0x0000000A, 0x00000002, 0xFBD3E281, 0x00000001, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD480, 0xF4ACD481, 0xF4ACD485, 0xF4ACD486, 0x00000026, 0x00000002, 0xF4ACD485, 0xF4ACD480, 0x00000026, 0x00000002, 0xF4ACD486, 0xF4ACD481, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD485, 0xF4ACD486, 0xF24BBA80, 0xFE363C80, 0x00000012, 0x00000000, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C80, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xF4ACD480, 0xF4ACD485, 0x00000026, 0x00000002, 0xF4ACD481, 0xF4ACD486, 0x00000043, 0x00000005, AddVectorPolar, 0xF4ACD480, 0xF4ACD481, 0xF24BBA80, 0xFE363C80, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD480, 0x00000026, 0x00000002, 0xFE363C81, 0xF4ACD481, 0x0000002C, 0x00000002, 0xFE363C80, 0xF4ACD485, 0x0000002C, 0x00000002, 0xFE363C81, 0xF4ACD486, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8280, 0x0000002F, 0x00000002, 0xFE363C81, 0xF24A8280, 0x00000043, 0x00000006, omo_17_SetAngleClamped, 0xFE363C82, 0xF4ACD485, 0xF4ACD486, 0xF4ACD480, 0xF4ACD481, 0x00000026, 0x00000002, 0xFD050F8B, 0xFE363C80, 0x00000026, 0x00000002, 0xFD050F8C, 0xFE363C81, 0x00000026, 0x00000002, 0xFD050F8D, 0xFE363C82, 0x00000043, 0x00000006, GetDist2D, 0xFE363C83, 0xFE363C80, 0xFE363C81, 0xF4ACD48B, 0xF4ACD48C, 0x0000002C, 0x00000002, 0xF4ACD48D, 0xFE363C83, 0x00000026, 0x00000002, 0xF4ACD48E, 0xF4ACD48D, 0x0000002E, 0x00000002, 0xF4ACD48E, 0xF24A803B, 0x0000000A, 0x00000002, 0xFBD3E280, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002D, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000C, 0x00000002, 0xF4ACD48F, 0xFFFFFFF6, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24A5280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000001, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FF, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000084, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002F, 0x00000002, 0xFE363C80, 0xF24A8680, 0x0000002C, 0x00000002, 0xF4ACD48F, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD48F, 0x0000000A, 0x00000026, 0x00000002, 0xF4ACD48F, 0xF24AA280, 0x00000024, 0x00000002, 0xFBD3E280, 0x00000000, 0x0000000A, 0x00000002, 0xF9718883, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x000001FE, 0x00000024, 0x00000002, 0xF9718883, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000005, omo_17_SetPlayerStatusPosYaw, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24AB680, 0xFE363C82, 0x00000043, 0x00000006, omo_17_SetNpcPosYaw, 0xFFFFFFFC, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000006, omo_17_SetNpcPosYaw, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0xFD050F8D, 0x00000016, 0x00000001, 0x00000064, 0x00000023, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000018, 0xF24BB6E7, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000005, TranslateGroup, 0x0000001B, 0xF249EE1A, 0xF24A0AC8, 0xF24A0462, 0x00000043, 0x00000006, RotateGroup, 0x00000018, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000001B, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x0000001F, 0xF24B1C80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000021, 0xF249DC80, 0xF24A2A80, 0xF24A78E7, 0x00000043, 0x00000005, TranslateGroup, 0x00000022, 0xFD050F8B, 0xF24AA280, 0xFD050F8C, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000022, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000012, 0x00000000, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8D, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24D4A80, 0x0000002D, 0x00000002, 0xFE363C81, 0xF24BE280, 0x00000043, 0x00000006, RotateGroup, 0x00000022, 0xFE363C81, 0xF24A7A80, 0xF24A7680, 0xF24A7A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000018, 0xF24B2E80, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x0000001B, 0xF249C680, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000005, TranslateGroup, 0x00000018, 0xF2493E1A, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000001B, 0xF24B06E7, 0xF24AEA39, 0xF24AF09F, 0x00000043, 0x00000005, TranslateGroup, 0x0000001F, 0xF249D880, 0xF24ACA80, 0xF24A7C1A, 0x00000043, 0x00000005, TranslateGroup, 0x00000021, 0xF24B1880, 0xF24ACA80, 0xF24A7C1A, 0x0000000C, 0x00000002, 0xFD050F8D, 0x000000B4, 0x00000043, 0x00000006, RotateGroup, 0x0000001F, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000043, 0x00000006, RotateGroup, 0x00000021, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7680, 0x00000012, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000001F, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000043, 0x00000006, RotateGroup, 0x00000021, 0xF4ACD48E, 0xF24A7A80, 0xF24A7A80, 0xF24A7E80, 0x00000013, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000018, 0xF24A7A80, 0xF4ACD48F, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48F, 0x0000002E, 0x00000002, 0xFE363C80, 0xF24A7680, 0x00000043, 0x00000005, TranslateGroup, 0x0000001B, 0xF24A7A80, 0xFE363C80, 0xF24A7A80, 0x00000026, 0x00000002, 0xFE363C80, 0xF4ACD48A, 0x0000000C, 0x00000002, 0xFE363C80, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xF24A7E80, 0x00000013, 0x00000000, 0x0000002C, 0x00000002, 0xF4ACD490, 0xFE363C80, 0x0000000D, 0x00000002, 0xF4ACD490, 0x00000168, 0x0000002D, 0x00000002, 0xF4ACD490, 0xF2501A80, 0x00000013, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000001D, 0xF4ACD490, 0xF24A7A80, 0xF24A7E80, 0xF24A7A80, 0x00000026, 0x00000002, 0xF4ACD48B, 0xFD050F8B, 0x00000026, 0x00000002, 0xF4ACD48C, 0xFD050F8C, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFE363C81, 0x0000002D, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, MakeLerp, 0xFE363C81, 0x00000000, 0x00000028, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C82, 0xFE363C80, 0xFE363C84, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetCamTarget, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000001, 0x00000056, 0x00000000, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24AB680, 0xFE363C83, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010004, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8A80, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A7D4D, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C81, 0x00000032, 0xFE363C82, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000003, InterpPlayerYaw, 0xFE363C83, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000026, 0x00000002, 0xFE363C8A, 0xFE363C83, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24D4A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24AB680, 0xFE363C83, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0xFFFFFFFC, 0xFE363C81, 0x00000032, 0xFE363C82, 0x0000000A, 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFC, 0xF24A7C80, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFC, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFC, 0xFE363C8A, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000030, 0x00000001, 0xFE363C80, 0x00000033, 0x00000003, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000026, 0x00000002, 0xFE363C8A, 0xFE363C83, 0x0000000C, 0x00000002, 0xFE363C83, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C83, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C83, 0xF24BE280, 0x00000013, 0x00000000, 0x00000026, 0x00000002, 0xFE363C84, 0xFE363C81, 0x00000026, 0x00000002, 0xFE363C85, 0xFE363C82, 0x00000026, 0x00000002, 0xFE363C86, 0xFE363C83, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C81, 0xFE363C82, 0xF24C0A80, 0xFE363C83, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000000, 0xF24A8680, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0003, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFE363C81, 0xFE363C82, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0001, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C84, 0xFE363C85, 0xF24ACA80, 0xFE363C86, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000000, 0xF24A7D4D, 0x00000043, 0x00000006, NpcJump0, 0x00000000, 0xFE363C84, 0x00000032, 0xFE363C85, 0x0000000A, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000000, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x008C0004, 0x008C0001, 0x00000005, 0x000F0009, 0x00000043, 0x00000002, PlaySound, 0x00000083, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000021, 0x00000000, 0x00000008, 0x00000008, 0x00000001, 0x0000000A, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, StopSound, 0x00000083, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000020, 0x00000000, 0x00000008, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000001, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000001, 0x00000026, 0x00000002, 0xFE363C80, 0xFD050F8B, 0x00000026, 0x00000002, 0xFE363C81, 0xFD050F8C, 0x00000026, 0x00000002, 0xFE363C82, 0xFD050F8D, 0x0000000C, 0x00000002, 0xFE363C82, 0x000000B4, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000012, 0x00000000, 0x0000002D, 0x00000002, 0xFE363C82, 0xF24BE280, 0x00000013, 0x00000000, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24C0A80, 0xFE363C82, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, NpcJump0, 0x00000000, 0xFE363C80, 0x00000032, 0xFE363C81, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0003, 0x00000043, 0x00000003, SetNpcSpeed, 0x00000000, 0xF24A8280, 0x00000030, 0x00000001, 0xFE363C89, 0x00000032, 0x00000002, 0xFE363C83, 0xFE363C84, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFE363C83, 0xFE363C84, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x008C0001, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000000, 0x0000010E, 0x0000000F, 0x00000043, 0x00000004, SetNpcFlagBits, 0x00000000, 0x00000140, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x0000002C, 0x00000002, 0xFE363C82, 0xF24B6A80, 0x00000043, 0x00000005, AddVectorPolar, 0xFE363C80, 0xFE363C81, 0xF24ACA80, 0xFE363C82, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010004, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8680, 0x00000043, 0x00000004, PlayerMoveTo, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000028, 0x00000002, 0xFE363C81, 0x0000001E, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000102, 0x00000043, 0x00000003, SetNpcSpeed, 0xFFFFFFFC, 0xF24A8480, 0x00000043, 0x00000005, NpcMoveTo, 0xFFFFFFFC, 0xFE363C80, 0xFE363C81, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000140, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_802458F8_DF4798 .word 0x00000014, 0x00000001, 0xF70F2E86, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000004, GotoMapSpecial, 0x802475F8, 0x00000003, 0x00000001, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000004, GotoMapSpecial, 0x802475F0, 0x00000003, 0x00000001, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000004, GotoMapSpecial, 0x802475E8, 0x00000002, 0x00000001, 0x00000016, 0x00000001, 0x00000003, 0x00000043, 0x00000004, GotoMapSpecial, 0x802475E0, 0x00000003, 0x00000001, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_pra/pra_02/D52DE0.data.s b/ver/us/asm/data/world/area_pra/pra_02/D52DE0.data.s index 6cfd73f23e..fd5339e52e 100644 --- a/ver/us/asm/data/world/area_pra/pra_02/D52DE0.data.s +++ b/ver/us/asm/data/world/area_pra/pra_02/D52DE0.data.s @@ -24,7 +24,7 @@ dlabel D_802434C4_D534B4 .word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000005, func_802414A8_D51498, 0xFD050F81, 0x000003DB, 0x00000008, 0x00000054, 0x00000043, 0x00000005, func_802414A8_D51498, 0xFD050F82, 0x000003DB, 0x00000008, 0xFFFFFFAC, 0x00000043, 0x00000005, func_802414A8_D51498, 0xFD050F83, 0x000003DB, 0x00000102, 0x00000054, 0x00000043, 0x00000005, func_802414A8_D51498, 0xFD050F84, 0x000003DB, 0x00000102, 0xFFFFFFAC, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80243564_D53554 -.word 0x0000004D, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000001, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, FindKeyItem, 0x00000033, 0xFE363C80, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C80, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000024, 0x00000002, 0xF8406157, 0x00000001, 0x00000047, 0x00000005, D_80241CE8_D51CD8, 0x00000100, 0x00000024, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80241ED0_D51EC0, 0x00000100, 0x00000020, 0x00000001, 0x00000000, 0x00000043, 0x00000005, dup_pra_02_GetEntityPosition, 0xFD050F81, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, dup_pra_02_GetEntityPosition, 0xFD050F82, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000024, 0x00000002, 0xFD050F81, 0xFFFFFFFF, 0x00000043, 0x00000001, pra_02_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F82, 0x00000024, 0x00000002, 0xFD050F82, 0xFFFFFFFF, 0x00000043, 0x00000001, pra_02_SetEntityFlags100000, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000004D, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000001, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, FindKeyItem, 0x00000033, 0xFE363C80, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C80, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000024, 0x00000002, 0xF8406157, 0x00000001, 0x00000047, 0x00000005, D_80241CE8_D51CD8, 0x00000100, 0x00000024, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80241ED0_D51EC0, 0x00000100, 0x00000020, 0x00000001, 0x00000000, 0x00000043, 0x00000005, dup_pra_02_GetEntityPosition, 0xFD050F81, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, dup_pra_02_GetEntityPosition, 0xFD050F82, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000024, 0x00000002, 0xFD050F81, 0xFFFFFFFF, 0x00000043, 0x00000001, pra_02_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F82, 0x00000024, 0x00000002, 0xFD050F82, 0xFFFFFFFF, 0x00000043, 0x00000001, pra_02_RemovePadlock, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_8024378C_D5377C -.word 0x0000004D, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000001, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, FindKeyItem, 0x00000034, 0xFE363C80, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C80, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000024, 0x00000002, 0xF8406158, 0x00000001, 0x00000047, 0x00000005, D_80241DDC_D51DCC, 0x00000100, 0x0000002D, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80241FC4_D51FB4, 0x00000100, 0x00000029, 0x00000001, 0x00000000, 0x00000043, 0x00000005, dup_pra_02_GetEntityPosition, 0xFD050F83, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, dup_pra_02_GetEntityPosition, 0xFD050F84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F83, 0x00000024, 0x00000002, 0xFD050F83, 0xFFFFFFFF, 0x00000043, 0x00000001, pra_02_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F84, 0x00000024, 0x00000002, 0xFD050F84, 0xFFFFFFFF, 0x00000043, 0x00000001, pra_02_SetEntityFlags100000, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFD050F81, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F82, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F83, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F84, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFE363C82, 0x00004000, 0x0000000A, 0x00000002, 0xF8406157, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000003DB, 0x00000008, 0x00000054, 0xFFFFFFB0, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_8024347C_D5346C, 0x00000024, 0x00000002, 0xFD050F81, 0xFE363C80, 0x0000004E, 0x00000006, D_80243564_D53554, 0x00000100, 0xFE363C82, D_80242DF0_D52DE0, 0x00000000, 0x00000001, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000002, UseDynamicShadow, 0x00000001, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000003DB, 0x00000008, 0xFFFFFFAC, 0xFFFFFFB0, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_8024347C_D5346C, 0x00000024, 0x00000002, 0xFD050F82, 0xFE363C80, 0x0000004E, 0x00000006, D_80243564_D53554, 0x00000100, 0xFE363C82, D_80242DF0_D52DE0, 0x00000000, 0x00000001, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000002, UseDynamicShadow, 0x00000001, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8406158, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000003DB, 0x00000102, 0x00000054, 0xFFFFFFB0, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_8024347C_D5346C, 0x00000024, 0x00000002, 0xFD050F83, 0xFE363C80, 0x0000004E, 0x00000006, D_8024378C_D5377C, 0x00000100, 0xFE363C82, D_80242DF8_D52DE8, 0x00000000, 0x00000001, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000002, UseDynamicShadow, 0x00000001, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000003DB, 0x00000102, 0xFFFFFFAC, 0xFFFFFFB0, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_8024347C_D5346C, 0x00000024, 0x00000002, 0xFD050F84, 0xFE363C80, 0x0000004E, 0x00000006, D_8024378C_D5377C, 0x00000100, 0xFE363C82, D_80242DF8_D52DE8, 0x00000000, 0x00000001, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000002, UseDynamicShadow, 0x00000001, 0x00000013, 0x00000000, 0x00000044, 0x00000001, D_802434C4_D534B4, 0x00000043, 0x00000003, ParentColliderToModel, 0x0000003E, 0x0000002B, 0x00000043, 0x00000003, ParentColliderToModel, 0x0000003D, 0x00000032, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 +.word 0x0000004D, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000001, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000003, FindKeyItem, 0x00000034, 0xFE363C80, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C80, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000024, 0x00000002, 0xF8406158, 0x00000001, 0x00000047, 0x00000005, D_80241DDC_D51DCC, 0x00000100, 0x0000002D, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80241FC4_D51FB4, 0x00000100, 0x00000029, 0x00000001, 0x00000000, 0x00000043, 0x00000005, dup_pra_02_GetEntityPosition, 0xFD050F83, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, dup_pra_02_GetEntityPosition, 0xFD050F84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F83, 0x00000024, 0x00000002, 0xFD050F83, 0xFFFFFFFF, 0x00000043, 0x00000001, pra_02_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F84, 0x00000024, 0x00000002, 0xFD050F84, 0xFFFFFFFF, 0x00000043, 0x00000001, pra_02_RemovePadlock, 0x00000043, 0x00000002, SetTimeFreezeMode, 0x00000000, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFD050F81, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F82, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F83, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFD050F84, 0xFFFFFFFF, 0x00000024, 0x00000002, 0xFE363C82, 0x00004000, 0x0000000A, 0x00000002, 0xF8406157, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000003DB, 0x00000008, 0x00000054, 0xFFFFFFB0, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_8024347C_D5346C, 0x00000024, 0x00000002, 0xFD050F81, 0xFE363C80, 0x0000004E, 0x00000006, D_80243564_D53554, 0x00000100, 0xFE363C82, D_80242DF0_D52DE0, 0x00000000, 0x00000001, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000002, UseDynamicShadow, 0x00000001, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000003DB, 0x00000008, 0xFFFFFFAC, 0xFFFFFFB0, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_8024347C_D5346C, 0x00000024, 0x00000002, 0xFD050F82, 0xFE363C80, 0x0000004E, 0x00000006, D_80243564_D53554, 0x00000100, 0xFE363C82, D_80242DF0_D52DE0, 0x00000000, 0x00000001, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000002, UseDynamicShadow, 0x00000001, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xF8406158, 0x00000000, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000003DB, 0x00000102, 0x00000054, 0xFFFFFFB0, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_8024347C_D5346C, 0x00000024, 0x00000002, 0xFD050F83, 0xFE363C80, 0x0000004E, 0x00000006, D_8024378C_D5377C, 0x00000100, 0xFE363C82, D_80242DF8_D52DE8, 0x00000000, 0x00000001, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000002, UseDynamicShadow, 0x00000001, 0x00000043, 0x00000007, MakeEntity, Entity_Padlock, 0x000003DB, 0x00000102, 0xFFFFFFAC, 0xFFFFFFB0, 0x80000000, 0x00000043, 0x00000002, AssignScript, D_8024347C_D5346C, 0x00000024, 0x00000002, 0xFD050F84, 0xFE363C80, 0x0000004E, 0x00000006, D_8024378C_D5377C, 0x00000100, 0xFE363C82, D_80242DF8_D52DE8, 0x00000000, 0x00000001, 0x00000027, 0x00000002, 0xFE363C82, 0x00000001, 0x00000043, 0x00000002, UseDynamicShadow, 0x00000001, 0x00000013, 0x00000000, 0x00000044, 0x00000001, D_802434C4_D534B4, 0x00000043, 0x00000003, ParentColliderToModel, 0x0000003E, 0x0000002B, 0x00000043, 0x00000003, ParentColliderToModel, 0x0000003D, 0x00000032, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_pra/pra_34/D8C470.data.s b/ver/us/asm/data/world/area_pra/pra_34/D8C470.data.s index a045bcbf5c..d7a6ce1dc4 100644 --- a/ver/us/asm/data/world/area_pra/pra_34/D8C470.data.s +++ b/ver/us/asm/data/world/area_pra/pra_34/D8C470.data.s @@ -63,7 +63,7 @@ dlabel D_802417BC_D8CB6C .word 0x00000014, 0x00000000 dlabel D_802417C4_D8CB74 -.word 0x0000004D, 0x00000001, 0x00000000, 0x0000004F, 0x00000001, 0x00000001, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000050, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000050, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000024, 0x00000002, 0xF8406170, 0x00000001, 0x00000043, 0x00000005, pra_34_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, pra_34_GetEntityPosition, 0xFD050F81, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, pra_34_SetEntityFlags100000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000001, pra_34_SetEntityFlags100000, 0x00000050, 0x00000001, 0x00000001, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000004D, 0x00000001, 0x00000000, 0x0000004F, 0x00000001, 0x00000001, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000050, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000050, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000024, 0x00000002, 0xF8406170, 0x00000001, 0x00000043, 0x00000005, pra_34_GetEntityPosition, 0xFD050F80, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, pra_34_GetEntityPosition, 0xFD050F81, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F80, 0x00000043, 0x00000001, pra_34_RemovePadlock, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000001, pra_34_RemovePadlock, 0x00000050, 0x00000001, 0x00000001, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80241970_D8CD20 .word 0x00000047, 0x00000005, D_8024142C_D8C7DC, 0x00000100, 0x0000000D, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_802416D8_D8CA88, 0x00000100, 0x00000011, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xF8406170, 0x00000000, 0x0000004E, 0x00000006, D_802417C4_D8CB74, 0x00000100, 0x00004000, D_802417BC_D8CB6C, 0x00000000, 0x00000001, 0x0000004E, 0x00000006, D_802417C4_D8CB74, 0x00000100, 0x00004001, D_802417BC_D8CB6C, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000047, 0x00000005, D_80241510_D8C8C0, 0x00000100, 0x00000015, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_802415F4_D8C9A4, 0x00000100, 0x00000019, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_sam/sam_04/D16E20.data.s b/ver/us/asm/data/world/area_sam/sam_04/D16E20.data.s index fdd070311d..9b27792850 100644 --- a/ver/us/asm/data/world/area_sam/sam_04/D16E20.data.s +++ b/ver/us/asm/data/world/area_sam/sam_04/D16E20.data.s @@ -12,7 +12,7 @@ dlabel D_80243880_D16E50 .word 0x00000000 dlabel D_80243884_D16E54 -.word 0x00000024, 0x00000002, 0xFE363C89, 0xFE363C81, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000004, sam_04_AddPlayerHandsOffset, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000042, 0x00000002, 0xFE363C80, 0x00050000, 0x00000043, 0x00000007, MakeItemEntity, 0xFE363C80, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00060005, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000002, RemoveItemEntity, 0xFE363C80, 0x00000023, 0x00000000, 0x00000043, 0x00000002, func_80240590_D13B60, 0xFE363C8A, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, func_802405C8_D13B98, 0xFE363C80, 0x0000004E, 0x00000006, D_80243884_D16E54, 0x00000010, 0x00000000, arn_07_idle_80245210, 0x00000000, 0x00000001, 0x00000043, 0x00000002, func_8024053C_D13B0C, 0xFE363C80, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000024, 0x00000002, 0xFE363C89, 0xFE363C81, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000004, sam_04_AddPlayerHandsOffset, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000042, 0x00000002, 0xFE363C80, 0x00050000, 0x00000043, 0x00000007, MakeItemEntity, 0xFE363C80, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00060005, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000002, RemoveItemEntity, 0xFE363C80, 0x00000023, 0x00000000, 0x00000043, 0x00000002, func_80240590_D13B60, 0xFE363C8A, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, func_802405C8_D13B98, 0xFE363C80, 0x0000004E, 0x00000006, D_80243884_D16E54, 0x00000010, 0x00000000, sam_04_80245210, 0x00000000, 0x00000001, 0x00000043, 0x00000002, func_8024053C_D13B0C, 0xFE363C80, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80243A18_D16FE8 .word 0x00000024, 0x00000002, 0xFE363C89, 0xFE363C81, 0x00000043, 0x00000001, ShowConsumableChoicePopup, 0x00000024, 0x00000002, 0xFE363C8A, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, RemoveItemAt, 0xFE363C81, 0x00000043, 0x00000004, GetPlayerPos, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000004, sam_04_AddPlayerHandsOffset, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000007, MakeItemEntity, 0xFE363C80, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000001, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00060005, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000002, RemoveItemEntity, 0xFE363C80, 0x00000023, 0x00000000, 0x00000043, 0x00000002, func_80240590_D13B60, 0xFE363C8A, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, func_80240664_D13C34, 0xFE363C80, 0x0000004E, 0x00000006, D_80243A18_D16FE8, 0x00000010, 0x00000000, D_802453D8, 0x00000000, 0x00000001, 0x00000043, 0x00000002, func_8024053C_D13B0C, 0xFE363C80, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_sam/sam_11/D3D900.data.s b/ver/us/asm/data/world/area_sam/sam_11/D3D900.data.s index 03b7164318..2f8f7139f2 100644 --- a/ver/us/asm/data/world/area_sam/sam_11/D3D900.data.s +++ b/ver/us/asm/data/world/area_sam/sam_11/D3D900.data.s @@ -27,7 +27,7 @@ dlabel D_80243844_D3DE14 .word 0x00000079, 0x00000000 dlabel D_8024384C_D3DE1C -.word 0x0000004D, 0x00000001, 0x00000000, 0x0000004F, 0x00000001, 0x00000001, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000050, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000050, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000024, 0x00000002, 0xF840613B, 0x00000001, 0x00000043, 0x00000005, sam_11_GetEntityPosition, 0xFD050F86, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F86, 0x00000043, 0x00000001, sam_11_SetEntityFlags100000, 0x00000050, 0x00000001, 0x00000001, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x0000004D, 0x00000001, 0x00000000, 0x0000004F, 0x00000001, 0x00000001, 0x00000043, 0x00000001, ShowKeyChoicePopup, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x001D00D8, 0x000000A0, 0x00000028, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000050, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C80, 0xFFFFFFFF, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000050, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, RemoveKeyItemAt, 0xFE363C81, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000024, 0x00000002, 0xF840613B, 0x00000001, 0x00000043, 0x00000005, sam_11_GetEntityPosition, 0xFD050F86, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, PlaySoundAt, 0x00000269, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F86, 0x00000043, 0x00000001, sam_11_RemovePadlock, 0x00000050, 0x00000001, 0x00000001, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_802439A0_D3DF70 .word 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xF9718881, 0x00000000, 0x00000043, 0x00000003, SetGroupEnabled, 0x0000007B, 0x00000001, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xF9718881, 0x00000001, 0x00000043, 0x00000003, SetGroupEnabled, 0x0000007B, 0x00000000, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/func_80240398_90FA48.s b/ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/iwa_01_func_80240398_90FA48.s similarity index 99% rename from ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/func_80240398_90FA48.s rename to ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/iwa_01_func_80240398_90FA48.s index 1f429ec156..37965a6378 100644 --- a/ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/func_80240398_90FA48.s +++ b/ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/iwa_01_func_80240398_90FA48.s @@ -8,7 +8,7 @@ dlabel D_80246380_915A30 .section .text -glabel func_80240398_90FA48 +glabel iwa_01_func_80240398_90FA48 /* 90FA48 80240398 27BDFFC0 */ addiu $sp, $sp, -0x40 /* 90FA4C 8024039C AFBF0024 */ sw $ra, 0x24($sp) /* 90FA50 802403A0 AFB40020 */ sw $s4, 0x20($sp) diff --git a/ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/func_80240000_90F6B0.s b/ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/iwa_01_gfx_build_splash.s similarity index 98% rename from ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/func_80240000_90F6B0.s rename to ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/iwa_01_gfx_build_splash.s index 21b9e99add..4395e87b7a 100644 --- a/ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/func_80240000_90F6B0.s +++ b/ver/us/asm/nonmatchings/world/area_iwa/iwa_01/90F6B0/iwa_01_gfx_build_splash.s @@ -11,7 +11,7 @@ dlabel D_80246378_915A28 .section .text -glabel func_80240000_90F6B0 +glabel iwa_01_gfx_build_splash /* 90F6B0 80240000 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 90F6B4 80240004 0000202D */ daddu $a0, $zero, $zero /* 90F6B8 80240008 3C05FD05 */ lui $a1, 0xfd05 @@ -208,8 +208,8 @@ glabel func_80240000_90F6B0 /* 90F9A4 802402F4 AE420000 */ sw $v0, ($s2) /* 90F9A8 802402F8 3C02DE00 */ lui $v0, 0xde00 /* 90F9AC 802402FC AC820000 */ sw $v0, ($a0) -/* 90F9B0 80240300 3C028024 */ lui $v0, %hi(D_80243E00_9134B0) -/* 90F9B4 80240304 24423E00 */ addiu $v0, $v0, %lo(D_80243E00_9134B0) +/* 90F9B0 80240300 3C028024 */ lui $v0, %hi(iwa_01_splash_gfx) +/* 90F9B4 80240304 24423E00 */ addiu $v0, $v0, %lo(iwa_01_splash_gfx) /* 90F9B8 80240308 AC820004 */ sw $v0, 4($a0) /* 90F9BC 8024030C 24820010 */ addiu $v0, $a0, 0x10 /* 90F9C0 80240310 AE420000 */ sw $v0, ($s2) diff --git a/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_802413E0_91F950.s b/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_802413E0_91F950.s deleted file mode 100644 index 3cb945c074..0000000000 --- a/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_802413E0_91F950.s +++ /dev/null @@ -1,28 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802413E0_91F950 -/* 91F950 802413E0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 91F954 802413E4 AFBF0010 */ sw $ra, 0x10($sp) -/* 91F958 802413E8 10A00003 */ beqz $a1, .L802413F8 -/* 91F95C 802413EC 8C86000C */ lw $a2, 0xc($a0) -/* 91F960 802413F0 3C018024 */ lui $at, %hi(D_8024626C_9247DC) -/* 91F964 802413F4 AC20626C */ sw $zero, %lo(D_8024626C_9247DC)($at) -.L802413F8: -/* 91F968 802413F8 3C038024 */ lui $v1, %hi(D_8024626C_9247DC) -/* 91F96C 802413FC 2463626C */ addiu $v1, $v1, %lo(D_8024626C_9247DC) -/* 91F970 80241400 8C620000 */ lw $v0, ($v1) -/* 91F974 80241404 54400003 */ bnel $v0, $zero, .L80241414 -/* 91F978 80241408 AC600000 */ sw $zero, ($v1) -/* 91F97C 8024140C 0809050A */ j .L80241428 -/* 91F980 80241410 0000102D */ daddu $v0, $zero, $zero -.L80241414: -/* 91F984 80241414 8CC50000 */ lw $a1, ($a2) -/* 91F988 80241418 3C068024 */ lui $a2, %hi(D_80246270_9247E0) -/* 91F98C 8024141C 0C0B2026 */ jal evt_set_variable -/* 91F990 80241420 8CC66270 */ lw $a2, %lo(D_80246270_9247E0)($a2) -/* 91F994 80241424 24020002 */ addiu $v0, $zero, 2 -.L80241428: -/* 91F998 80241428 8FBF0010 */ lw $ra, 0x10($sp) -/* 91F99C 8024142C 03E00008 */ jr $ra -/* 91F9A0 80241430 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_80241434_91F9A4.s b/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_80241434_91F9A4.s deleted file mode 100644 index efd23b263f..0000000000 --- a/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_80241434_91F9A4.s +++ /dev/null @@ -1,18 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80241434_91F9A4 -/* 91F9A4 80241434 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 91F9A8 80241438 AFBF0010 */ sw $ra, 0x10($sp) -/* 91F9AC 8024143C 8C82000C */ lw $v0, 0xc($a0) -/* 91F9B0 80241440 0C0B1EAF */ jal evt_get_variable -/* 91F9B4 80241444 8C450000 */ lw $a1, ($v0) -/* 91F9B8 80241448 3C018024 */ lui $at, %hi(D_80246270_9247E0) -/* 91F9BC 8024144C AC226270 */ sw $v0, %lo(D_80246270_9247E0)($at) -/* 91F9C0 80241450 24020002 */ addiu $v0, $zero, 2 -/* 91F9C4 80241454 8FBF0010 */ lw $ra, 0x10($sp) -/* 91F9C8 80241458 24030001 */ addiu $v1, $zero, 1 -/* 91F9CC 8024145C 3C018024 */ lui $at, %hi(D_8024626C_9247DC) -/* 91F9D0 80241460 AC23626C */ sw $v1, %lo(D_8024626C_9247DC)($at) -/* 91F9D4 80241464 03E00008 */ jr $ra -/* 91F9D8 80241468 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_8024146C_91F9DC.s b/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_8024146C_91F9DC.s deleted file mode 100644 index c7407f25f1..0000000000 --- a/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91F5A0/func_8024146C_91F9DC.s +++ /dev/null @@ -1,50 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_8024146C_91F9DC -/* 91F9DC 8024146C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 91F9E0 80241470 AFBF0010 */ sw $ra, 0x10($sp) -/* 91F9E4 80241474 8C82000C */ lw $v0, 0xc($a0) -/* 91F9E8 80241478 0C0B1EAF */ jal evt_get_variable -/* 91F9EC 8024147C 8C450000 */ lw $a1, ($v0) -/* 91F9F0 80241480 0040182D */ daddu $v1, $v0, $zero -/* 91F9F4 80241484 10600012 */ beqz $v1, .L802414D0 -/* 91F9F8 80241488 0000202D */ daddu $a0, $zero, $zero -/* 91F9FC 8024148C 8C620000 */ lw $v0, ($v1) -/* 91FA00 80241490 5040000A */ beql $v0, $zero, .L802414BC -/* 91FA04 80241494 00041080 */ sll $v0, $a0, 2 -/* 91FA08 80241498 3C058025 */ lui $a1, %hi(D_80248480) -/* 91FA0C 8024149C 24A58480 */ addiu $a1, $a1, %lo(D_80248480) -.L802414A0: -/* 91FA10 802414A0 24630004 */ addiu $v1, $v1, 4 -/* 91FA14 802414A4 24840001 */ addiu $a0, $a0, 1 -/* 91FA18 802414A8 ACA20000 */ sw $v0, ($a1) -/* 91FA1C 802414AC 8C620000 */ lw $v0, ($v1) -/* 91FA20 802414B0 1440FFFB */ bnez $v0, .L802414A0 -/* 91FA24 802414B4 24A50004 */ addiu $a1, $a1, 4 -/* 91FA28 802414B8 00041080 */ sll $v0, $a0, 2 -.L802414BC: -/* 91FA2C 802414BC 3C018025 */ lui $at, %hi(D_80248480) -/* 91FA30 802414C0 00220821 */ addu $at, $at, $v0 -/* 91FA34 802414C4 AC208480 */ sw $zero, %lo(D_80248480)($at) -/* 91FA38 802414C8 0809053E */ j .L802414F8 -/* 91FA3C 802414CC 00000000 */ nop -.L802414D0: -/* 91FA40 802414D0 3C038025 */ lui $v1, %hi(D_80248480) -/* 91FA44 802414D4 24638480 */ addiu $v1, $v1, %lo(D_80248480) -/* 91FA48 802414D8 0060282D */ daddu $a1, $v1, $zero -.L802414DC: -/* 91FA4C 802414DC 24820010 */ addiu $v0, $a0, 0x10 -/* 91FA50 802414E0 AC620000 */ sw $v0, ($v1) -/* 91FA54 802414E4 24630004 */ addiu $v1, $v1, 4 -/* 91FA58 802414E8 24840001 */ addiu $a0, $a0, 1 -/* 91FA5C 802414EC 28820070 */ slti $v0, $a0, 0x70 -/* 91FA60 802414F0 1440FFFA */ bnez $v0, .L802414DC -/* 91FA64 802414F4 ACA001C0 */ sw $zero, 0x1c0($a1) -.L802414F8: -/* 91FA68 802414F8 8FBF0010 */ lw $ra, 0x10($sp) -/* 91FA6C 802414FC 24020002 */ addiu $v0, $zero, 2 -/* 91FA70 80241500 03E00008 */ jr $ra -/* 91FA74 80241504 27BD0018 */ addiu $sp, $sp, 0x18 -/* 91FA78 80241508 00000000 */ nop -/* 91FA7C 8024150C 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91FA80/func_80241510_91FA80.s b/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91FA80/func_80241510_91FA80.s deleted file mode 100644 index a1b4cb255a..0000000000 --- a/ver/us/asm/nonmatchings/world/area_iwa/iwa_10/91FA80/func_80241510_91FA80.s +++ /dev/null @@ -1,51 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel D_80248470_9269E0 -.ascii "party_pareta\0\0\0\0" - -.section .text - -glabel func_80241510_91FA80 -/* 91FA80 80241510 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 91FA84 80241514 3C048025 */ lui $a0, %hi(D_80248470_9269E0) -/* 91FA88 80241518 24848470 */ addiu $a0, $a0, %lo(D_80248470_9269E0) -/* 91FA8C 8024151C 27A50010 */ addiu $a1, $sp, 0x10 -/* 91FA90 80241520 AFBF0020 */ sw $ra, 0x20($sp) -/* 91FA94 80241524 AFB1001C */ sw $s1, 0x1c($sp) -/* 91FA98 80241528 0C016B3A */ jal load_asset_by_name -/* 91FA9C 8024152C AFB00018 */ sw $s0, 0x18($sp) -/* 91FAA0 80241530 0040802D */ daddu $s0, $v0, $zero -/* 91FAA4 80241534 0200202D */ daddu $a0, $s0, $zero -/* 91FAA8 80241538 3C118025 */ lui $s1, %hi(D_80248650) -/* 91FAAC 8024153C 26318650 */ addiu $s1, $s1, %lo(D_80248650) -/* 91FAB0 80241540 0C01BB7C */ jal decode_yay0 -/* 91FAB4 80241544 0220282D */ daddu $a1, $s1, $zero -/* 91FAB8 80241548 0C00AB1E */ jal general_heap_free -/* 91FABC 8024154C 0200202D */ daddu $a0, $s0, $zero -/* 91FAC0 80241550 3C048025 */ lui $a0, %hi(D_8024C5E0) -/* 91FAC4 80241554 2484C5E0 */ addiu $a0, $a0, %lo(D_8024C5E0) -/* 91FAC8 80241558 3C028025 */ lui $v0, %hi(D_80248850) -/* 91FACC 8024155C 24428850 */ addiu $v0, $v0, %lo(D_80248850) -/* 91FAD0 80241560 AC820000 */ sw $v0, ($a0) -/* 91FAD4 80241564 24020096 */ addiu $v0, $zero, 0x96 -/* 91FAD8 80241568 A4820008 */ sh $v0, 8($a0) -/* 91FADC 8024156C 24020069 */ addiu $v0, $zero, 0x69 -/* 91FAE0 80241570 A482000A */ sh $v0, 0xa($a0) -/* 91FAE4 80241574 24020002 */ addiu $v0, $zero, 2 -/* 91FAE8 80241578 AC82000C */ sw $v0, 0xc($a0) -/* 91FAEC 8024157C 24020001 */ addiu $v0, $zero, 1 -/* 91FAF0 80241580 AC910004 */ sw $s1, 4($a0) -/* 91FAF4 80241584 0C0496CB */ jal set_message_images -/* 91FAF8 80241588 AC820010 */ sw $v0, 0x10($a0) -/* 91FAFC 8024158C 8FBF0020 */ lw $ra, 0x20($sp) -/* 91FB00 80241590 8FB1001C */ lw $s1, 0x1c($sp) -/* 91FB04 80241594 8FB00018 */ lw $s0, 0x18($sp) -/* 91FB08 80241598 24020002 */ addiu $v0, $zero, 2 -/* 91FB0C 8024159C 03E00008 */ jr $ra -/* 91FB10 802415A0 27BD0028 */ addiu $sp, $sp, 0x28 -/* 91FB14 802415A4 00000000 */ nop -/* 91FB18 802415A8 00000000 */ nop -/* 91FB1C 802415AC 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/world/area_mim/mim_03/B9B480/func_802400A0_B9B520.s b/ver/us/asm/nonmatchings/world/area_mim/mim_03/B9B480/func_802400A0_B9B520.s index b6d4a6bddc..8f104f8e4f 100644 --- a/ver/us/asm/nonmatchings/world/area_mim/mim_03/B9B480/func_802400A0_B9B520.s +++ b/ver/us/asm/nonmatchings/world/area_mim/mim_03/B9B480/func_802400A0_B9B520.s @@ -14,8 +14,8 @@ glabel func_802400A0_B9B520 /* B9B544 802400C4 AFB20030 */ sw $s2, 0x30($sp) /* B9B548 802400C8 0080902D */ daddu $s2, $a0, $zero /* B9B54C 802400CC AFB1002C */ sw $s1, 0x2c($sp) -/* B9B550 802400D0 3C118024 */ lui $s1, %hi(arn_03_init_802424E0) -/* B9B554 802400D4 263124E0 */ addiu $s1, $s1, %lo(arn_03_init_802424E0) +/* B9B550 802400D0 3C118024 */ lui $s1, %hi(mim_03_802424E0) +/* B9B554 802400D4 263124E0 */ addiu $s1, $s1, %lo(mim_03_802424E0) /* B9B558 802400D8 AFBF0040 */ sw $ra, 0x40($sp) /* B9B55C 802400DC AFB00028 */ sw $s0, 0x28($sp) /* B9B560 802400E0 F7BE0070 */ sdc1 $f30, 0x70($sp) diff --git a/ver/us/asm/nonmatchings/world/area_osr/osr_00/AACBB0/func_802406E0_AACF10.s b/ver/us/asm/nonmatchings/world/area_osr/osr_00/AACBB0/func_802406E0_AACF10.s index 74f4a62cfd..523f8a9fbf 100644 --- a/ver/us/asm/nonmatchings/world/area_osr/osr_00/AACBB0/func_802406E0_AACF10.s +++ b/ver/us/asm/nonmatchings/world/area_osr/osr_00/AACBB0/func_802406E0_AACF10.s @@ -11,8 +11,8 @@ glabel func_802406E0_AACF10 /* AACF28 802406F8 02042021 */ addu $a0, $s0, $a0 /* AACF2C 802406FC 24853D86 */ addiu $a1, $a0, 0x3d86 /* AACF30 80240700 AFB10014 */ sw $s1, 0x14($sp) -/* AACF34 80240704 3C118024 */ lui $s1, %hi(arn_04_npcAISettings_802437C0) -/* AACF38 80240708 263137C0 */ addiu $s1, $s1, %lo(arn_04_npcAISettings_802437C0) +/* AACF34 80240704 3C118024 */ lui $s1, %hi(osr_00_802437C0) +/* AACF38 80240708 263137C0 */ addiu $s1, $s1, %lo(osr_00_802437C0) /* AACF3C 8024070C AFBF0018 */ sw $ra, 0x18($sp) /* AACF40 80240710 0C00A5CF */ jal dma_copy /* AACF44 80240714 0220302D */ daddu $a2, $s1, $zero diff --git a/ver/us/asm/nonmatchings/world/area_sam/sam_04/D138E0/func_802405C8_D13B98.s b/ver/us/asm/nonmatchings/world/area_sam/sam_04/D138E0/func_802405C8_D13B98.s index 6b07a00250..b34864b868 100644 --- a/ver/us/asm/nonmatchings/world/area_sam/sam_04/D138E0/func_802405C8_D13B98.s +++ b/ver/us/asm/nonmatchings/world/area_sam/sam_04/D138E0/func_802405C8_D13B98.s @@ -13,8 +13,8 @@ glabel func_802405C8_D13B98 /* D13BB8 802405E8 8C620000 */ lw $v0, ($v1) /* D13BBC 802405EC 5040000A */ beql $v0, $zero, .L80240618 /* D13BC0 802405F0 00041080 */ sll $v0, $a0, 2 -/* D13BC4 802405F4 3C058024 */ lui $a1, %hi(arn_07_idle_80245210) -/* D13BC8 802405F8 24A55210 */ addiu $a1, $a1, %lo(arn_07_idle_80245210) +/* D13BC4 802405F4 3C058024 */ lui $a1, %hi(sam_04_80245210) +/* D13BC8 802405F8 24A55210 */ addiu $a1, $a1, %lo(sam_04_80245210) .L802405FC: /* D13BCC 802405FC 24630004 */ addiu $v1, $v1, 4 /* D13BD0 80240600 24840001 */ addiu $a0, $a0, 1 @@ -24,14 +24,14 @@ glabel func_802405C8_D13B98 /* D13BE0 80240610 24A50004 */ addiu $a1, $a1, 4 /* D13BE4 80240614 00041080 */ sll $v0, $a0, 2 .L80240618: -/* D13BE8 80240618 3C018024 */ lui $at, %hi(arn_07_idle_80245210) +/* D13BE8 80240618 3C018024 */ lui $at, %hi(sam_04_80245210) /* D13BEC 8024061C 00220821 */ addu $at, $at, $v0 -/* D13BF0 80240620 AC205210 */ sw $zero, %lo(arn_07_idle_80245210)($at) +/* D13BF0 80240620 AC205210 */ sw $zero, %lo(sam_04_80245210)($at) /* D13BF4 80240624 08090195 */ j .L80240654 /* D13BF8 80240628 00000000 */ nop .L8024062C: -/* D13BFC 8024062C 3C038024 */ lui $v1, %hi(arn_07_idle_80245210) -/* D13C00 80240630 24635210 */ addiu $v1, $v1, %lo(arn_07_idle_80245210) +/* D13BFC 8024062C 3C038024 */ lui $v1, %hi(sam_04_80245210) +/* D13C00 80240630 24635210 */ addiu $v1, $v1, %lo(sam_04_80245210) /* D13C04 80240634 0060282D */ daddu $a1, $v1, $zero .L80240638: /* D13C08 80240638 24820010 */ addiu $v0, $a0, 0x10 diff --git a/ver/us/splat.yaml b/ver/us/splat.yaml index 2822dc70f8..b7d66c253f 100644 --- a/ver/us/splat.yaml +++ b/ver/us/splat.yaml @@ -8154,90 +8154,93 @@ segments: start: 0x90CC40 vram: 0x80240000 subsegments: - - [0x90CC40, c] - - [0x90CEF0, c] - - [0x90CF20, data] - - [0x90F6A0] + - [0x90CC40, c, iwa_00_1_main] + - [0x90CC40, c, iwa_00_2_entity] + - [0x90CC40, c, iwa_00_3_npc] + - [0x90CEF0, c, iwa_00_4_slide] + - [0x90CF20] - name: iwa_01 dir: world/area_iwa/iwa_01 type: code start: 0x90F6B0 vram: 0x80240000 subsegments: - - [0x90F6B0, c] - - [0x90FBD0, c] - - [0x912960, c] - - [0x912990, data] - - [0x913070, data] - - [0x9135D0, data] - - [0x9154B0, data] - - [0x915A00] + - [0x90F6B0, c, iwa_01_1_main] + - [0x90F6B0, c, iwa_01_2_entity] + - [0x90F6B0, c, iwa_01_3_splash] + - [0x90FBD0, c, iwa_01_4_npc] + - [0x912960, c, iwa_01_5_slide] + - [0x912990, .data, iwa_01_1_main] + - [0x912F60, .data, iwa_01_2_entity] + - start: 0x913070 + type: .data + name: iwa_01_3_splash + subsegments: + - [0x913070, i8, splash, 32, 32] + - [0x913470, vtx, splash] + - [0x9134B0, gfx, splash] + - [0x913578] + - [0x9135D0, .data, iwa_01_4_npc] + - [0x9154B0, .data, iwa_01_5_slide] - name: iwa_02 dir: world/area_iwa/iwa_02 type: code start: 0x915D70 vram: 0x80240000 subsegments: - - [0x915D70, c] - - [0x916E70, data] - - [0x917170, data] - - [0x917220, data] - - [0x918AA0] + - [0x915D70, c, iwa_02_1_main] + - [0x915D70, c, iwa_02_2_entity] + - [0x915D70, c, iwa_02_3_npc] + - [0x916E70] - name: iwa_03 dir: world/area_iwa/iwa_03 type: code start: 0x918BB0 vram: 0x80240000 subsegments: - - [0x918BB0, c] - - [0x918EF0, c] - - [0x919F00, data] - - [0x91A6B0, data] - - [0x91B510, data] - - [0x91B7D0] + - [0x918BB0, c, iwa_03_1_main] + - [0x918BB0, c, iwa_03_2_entity] + - [0x918EF0, c, iwa_03_3_npc] + - [0x919ED0, c, iwa_03_4_slide] + - [0x919F00] - name: iwa_04 dir: world/area_iwa/iwa_04 type: code start: 0x91B8E0 vram: 0x80240000 subsegments: - - [0x91B8E0, c] - - [0x91C9C0, data] - - [0x91CA50, data] - - [0x91CFA0, data] - - [0x91E460] + - [0x91B8E0, c, iwa_04_0_header] + - [0x91B8E0, c, iwa_04_1_main] + - [0x91B8E0, c, iwa_04_2_entity] + - [0x91B960, c, iwa_04_3_npc] + - [0x91C9C0] - name: iwa_10 dir: world/area_iwa/iwa_10 type: code start: 0x91E570 vram: 0x80240000 subsegments: - - [0x91E570, c] - - [0x91E5B0, c] - - [0x91E6D0, c] - - [0x91F5A0, c] - - [0x91FA80, c] - - [0x91FB20, c] - - [0x91FD60, data] - - [0x91FE80, data] - - [0x920280, data] - - [0x921830, data] - - [0x923FD0, data] - - [0x9247B0, data] - - [0x9269D0] + - [0x91E570, c, iwa_10_0_header] + - [0x91E570, c, iwa_10_1_main] + - [0x91E5B0, c, iwa_10_2_npc] + - [0x91E6D0, c, iwa_10_3_train] + - [0x91F5A0, c, iwa_10_4_entity] + - [0x91FA80, c, iwa_10_5_parakarry] + - [0x91FA80, c, iwa_10_6_new_party] + - [0x91FB20, c, iwa_10_7_foliage] + - [0x91FD60] - name: iwa_11 dir: world/area_iwa/iwa_11 type: code start: 0x9269F0 vram: 0x80240000 subsegments: - - [0x9269F0, c] - - [0x926A10, c] - - [0x926C70, c] - - [0x926D00, data] - - [0x926D90, data] - - [0x927030, data] - - [0x929240] + - [0x9269F0, c, iwa_11_0_header] + - [0x9269F0, c, iwa_11_1_main] + - [0x926A10, c, iwa_11_2_train] + - [0x926C70, c, iwa_11_3_scenery] + - [0x926C70, c, iwa_11_4_npc] + - [0x926D00] - name: sbk_00 dir: world/area_sbk/sbk_00 type: code @@ -11004,83 +11007,92 @@ segments: start: 0xBDD1B0 vram: 0x80240000 subsegments: - - [0xBDD1B0, c, events] - - [0xBDE190, .data, header] - - [0xBDE2A0, .data, events] - - [0xBDEC80] + - [0xBDD1B0, c, arn_02_0_header] + - [0xBDD1B0, c, arn_02_1_main] + - [0xBDD1B0, c, arn_02_2_entity] + - [0xBDD1B0, c, arn_02_3_npc] + - [0xBDE190] - name: arn_03 dir: world/area_arn/arn_03 type: code start: 0xBDED90 vram: 0x80240000 subsegments: - - [0xBDED90, c, events] - - [0xBE04B0, .data, header] - - [0xBE05C0, .data, events] - - [0xBE35E0] + - [0xBDED90, c, arn_03_0_header] + - [0xBDED90, c, arn_03_1_main] + - [0xBDED90, c, arn_03_2_npc] + - [0xBDED90, c, arn_03_3_entity] + - [0xBE04B0] - name: arn_04 dir: world/area_arn/arn_04 type: code start: 0xBE37B0 vram: 0x80240000 subsegments: - - [0xBE37B0, c, events] - - [0xBE6B20, .data, header] - - [0xBE6C30, .data, events] - - [0xBE78D0] + - [0xBE37B0, c, arn_04_0_header] + - [0xBE37B0, c, arn_04_1_main] + - [0xBE37B0, c, arn_04_2_npc] + - [0xBE37B0, c, arn_04_3_entity] + - [0xBE6B20] - name: arn_05 dir: world/area_arn/arn_05 type: code start: 0xBE7BE0 vram: 0x80240000 subsegments: - - [0xBE7BE0, c, events] - - [0xBE8EE0, .data, header] - - [0xBE9290, .data, events] - - [0xBECC20] + - [0xBE7BE0, c, arn_05_0_header] + - [0xBE7BE0, c, arn_05_1_main] + - [0xBE7BE0, c, arn_05_2_npc] + - [0xBE7BE0, c, arn_05_3_entity] + - [0xBE8EE0] - name: arn_07 dir: world/area_arn/arn_07 type: code start: 0xBECDF0 vram: 0x80240000 subsegments: - - [0xBECDF0, c, BECDF0] - - [0xBED5F0, c, BED5F0] - - [0xBED660, c, BED660] - - [0xBED740, c, events] - - [0xBEEC80, .data, header] - - [0xBEEE30, .data, BECDF0] - - [0xBF0580, .data, events] - - [0xBF46F0] + - [0xBECDF0, c, arn_07_0_header] + - [0xBECDF0, c, arn_07_1_main] + - [0xBED5F0, c, arn_07_2_windmill] + - [0xBED660, c, arn_07_3_entity] + - [0xBED740, c, arn_07_4_npc] + - [0xBEEC80] - name: arn_08 dir: world/area_arn/arn_08 type: code start: 0xBF47A0 vram: 0x80240000 subsegments: - - [0xBF47A0, c, BF47A0] - - [0xBF4860, c, events] - - [0xBF4A30, .data, header] - - [0xBF4B50, .data, events] - - [0xBF6040] + - [0xBF47A0, c, arn_08_0_header] + - [0xBF47A0, c, arn_08_1_main] + - [0xBF47A0, c, arn_08_2_well] + - [0xBF47A0, c, arn_08_3_gears] + - [0xBF4860, c, arn_08_4_demo] + - [0xBF4860, c, arn_08_5_npc] + - [0xBF4860, c, arn_08_6_entity] + - [0xBF4A30] - name: arn_09 dir: world/area_arn/arn_09 type: code start: 0xBF6060 vram: 0x80240000 subsegments: - - [0xBF6060, c, events] - - [0xBF60A0, .data, header] - - [0xBF61A0, .data, events] - - [0xBF69F0] + - [0xBF6060, c, arn_09_0_header] + - [0xBF6060, c, arn_09_1_main] + - [0xBF6060, c, arn_09_2_entity] + - [0xBF6060, c, arn_09_3_launch] + - [0xBF6060, c, arn_09_4_npc] + - [0xBF60A0] - name: arn_10 dir: world/area_arn/arn_10 type: code start: 0xBF6A00 vram: 0x80240000 subsegments: - - [0xBF6A00, c, header] - - [0xBF6A00, c, events] + - [0xBF6A00, c, arn_10_0_header] + - [0xBF6A00, c, arn_10_1_main] + - [0xBF6A00, c, arn_10_2_npc] + - [0xBF6A00, c, arn_10_3_entity] - [0xBF6A00] - name: arn_11 dir: world/area_arn/arn_11 @@ -11088,8 +11100,9 @@ segments: start: 0xBF7680 vram: 0x80240000 subsegments: - - [0xBF7680, c, header] - - [0xBF7680, c, events] + - [0xBF7680, c, arn_11_0_header] + - [0xBF7680, c, arn_11_1_main] + - [0xBF7680, c, arn_11_2_npc] - [0xBF7680] - name: arn_12 dir: world/area_arn/arn_12 @@ -11097,8 +11110,10 @@ segments: start: 0xBF8790 vram: 0x80240000 subsegments: - - [0xBF8790, c, header] - - [0xBF8790, c, events] + - [0xBF8790, c, arn_12_0_header] + - [0xBF8790, c, arn_12_1_main] + - [0xBF8790, c, arn_12_2_npc] + - [0xBF8790, c, arn_12_3_entity] - [0xBF8790] - name: arn_13 dir: world/area_arn/arn_13 @@ -11106,8 +11121,10 @@ segments: start: 0xBF9410 vram: 0x80240000 subsegments: - - [0xBF9410, c, header] - - [0xBF9410, c, events] + - [0xBF9410, c, arn_13_0_header] + - [0xBF9410, c, arn_13_1_main] + - [0xBF9410, c, arn_13_2_npc] + - [0xBF9410, c, arn_13_3_entity] - [0xBF9410] - name: dgb_00 dir: world/area_dgb/dgb_00 diff --git a/ver/us/symbol_addrs.txt b/ver/us/symbol_addrs.txt index f371bac58f..6a77fca428 100644 --- a/ver/us/symbol_addrs.txt +++ b/ver/us/symbol_addrs.txt @@ -416,7 +416,7 @@ GetEncounterTriggerHitTier = 0x8004580C; // type:func rom:0x20C0C func_80045838 = 0x80045838; // type:func rom:0x20C38 func_800458CC = 0x800458CC; // type:func rom:0x20CCC OnPlayerFled = 0x80045900; // type:func rom:0x20D00 -SetTattleMsg = 0x80045A58; // type:func rom:0x20E58 +SetTattleMessage = 0x80045A58; // type:func rom:0x20E58 func_80045AC0 = 0x80045AC0; // type:func rom:0x20EC0 func_80045B10 = 0x80045B10; // type:func rom:0x20F10 update_merlee_messages = 0x80045B68; // type:func rom:0x20F68 @@ -5451,7 +5451,7 @@ func_802D286C = 0x802D286C; // type:func rom:0xF721C func_802D2884 = 0x802D2884; // type:func rom:0xF7234 DisablePulseStone = 0x802D2AA8; // type:func rom:0xF7458 GetCurrentPartner = 0x802D2B0C; // type:func rom:0xF74BC -func_802D2B50 = 0x802D2B50; // type:func rom:0xF7500 +ForceUsePartner = 0x802D2B50; // type:func rom:0xF7500 InterruptUsePartner = 0x802D2B6C; // type:func rom:0xF751C Disable8bitMario = 0x802D2B88; // type:func rom:0xF7538 func_802D2C14 = 0x802D2C14; // type:func rom:0xF75C4 @@ -11393,7 +11393,7 @@ b_area_arn_hyper_paragoomba_ArcsinDeg = 0x80218338; // type:func rom:0x4FED88 b_area_arn_hyper_paragoomba_CalculateRotationZ = 0x802184C4; // type:func rom:0x4FEF14 b_area_arn_hyper_cleft_StartRumbleWithParams = 0x802185C0; // type:func rom:0x4FF010 b_area_arn_hyper_cleft_SetSpinSmashable = 0x80218618; // type:func rom:0x4FF068 -func_80218680_4FF0D0 = 0x80218680; // type:func rom:0x4FF0D0 +b_area_arn_tubbas_heart_func_80218680_4FF0D0 = 0x80218680; // type:func rom:0x4FF0D0 b_area_arn_hypergoomba_defenseTable_80218770 = 0x80218770; // type:data rom:0x4FF1C0 b_area_arn_hypergoomba_statusTable_8021877C = 0x8021877C; // type:data rom:0x4FF1CC b_area_arn_hypergoomba_partsTable_80218828 = 0x80218828; // type:data rom:0x4FF278 @@ -12613,7 +12613,7 @@ b_area_kzn2_petit_piranha_SetFlameX = 0x80218D90; // type:func rom:0x59F470 func_80218DF0_59F4D0 = 0x80218DF0; // type:func rom:0x59F4D0 b_area_flo_UnkBattleFunc1 = 0x80218000; // type:func rom:0x5B14B0 b_area_flo_UnkFloatFunc4 = 0x802180CC; // type:func rom:0x5B157C -b_area_flo_UnkFloatFunc = 0x802181F0; // type:func rom:0x5B16A0 +b_area_flo_CosInterpMinMax = 0x802181F0; // type:func rom:0x5B16A0 dup_b_area_flo_UnkBattleFunc1 = 0x80218380; // type:func rom:0x5B1830 b_area_flo_MediGuySpriteRotationFunc = 0x8021844C; // type:func rom:0x5B18FC b_area_flo_ShrinkActor = 0x80218560; // type:func rom:0x5B1A10 @@ -12645,14 +12645,14 @@ func_80219660_5B2B10 = 0x80219660; // type:func rom:0x5B2B10 func_80219720_5B2BD0 = 0x80219720; // type:func rom:0x5B2BD0 func_802197E0_5B2C90 = 0x802197E0; // type:func rom:0x5B2C90 func_802198A0_5B2D50 = 0x802198A0; // type:func rom:0x5B2D50 -dup_b_area_flo_UnkFloatFunc = 0x80219960; // type:func rom:0x5B2E10 -dup2_b_area_flo_UnkFloatFunc = 0x80219AF0; // type:func rom:0x5B2FA0 +dup_b_area_flo_CosInterpMinMax = 0x80219960; // type:func rom:0x5B2E10 +dup2_b_area_flo_CosInterpMinMax = 0x80219AF0; // type:func rom:0x5B2FA0 func_80219C80_5B3130 = 0x80219C80; // type:func rom:0x5B3130 func_80219D40_5B31F0 = 0x80219D40; // type:func rom:0x5B31F0 func_80219E00_5B32B0 = 0x80219E00; // type:func rom:0x5B32B0 b_area_flo2_StartRumbleWithParams = 0x80218000; // type:func rom:0x5CE690 func_80218058_5CE6E8 = 0x80218058; // type:func rom:0x5CE6E8 -b_area_flo2_UnkFloatFunc = 0x80218114; // type:func rom:0x5CE7A4 +b_area_flo2_CosInterpMinMax = 0x80218114; // type:func rom:0x5CE7A4 func_802182A4_5CE934 = 0x802182A4; // type:func rom:0x5CE934 func_80218440_5CEAD0 = 0x80218440; // type:func rom:0x5CEAD0 func_802185D4_5CEC64 = 0x802185D4; // type:func rom:0x5CEC64 @@ -12664,7 +12664,7 @@ func_80218924_5CEFB4 = 0x80218924; // type:func rom:0x5CEFB4 func_802189FC_5CF08C = 0x802189FC; // type:func rom:0x5CF08C func_80218AA0_5CF130 = 0x80218AA0; // type:func rom:0x5CF130 func_80218B60_5CF1F0 = 0x80218B60; // type:func rom:0x5CF1F0 -dup_b_area_flo2_UnkFloatFunc = 0x80218C40; // type:func rom:0x5CF2D0 +dup_b_area_flo2_CosInterpMinMax = 0x80218C40; // type:func rom:0x5CF2D0 func_80218DD0_5CF460 = 0x80218DD0; // type:func rom:0x5CF460 func_80218E90_5CF520 = 0x80218E90; // type:func rom:0x5CF520 func_80218F50_5CF5E0 = 0x80218F50; // type:func rom:0x5CF5E0 @@ -12672,8 +12672,8 @@ func_80219010_5CF6A0 = 0x80219010; // type:func rom:0x5CF6A0 func_802190D0_5CF760 = 0x802190D0; // type:func rom:0x5CF760 func_80219190_5CF820 = 0x80219190; // type:func rom:0x5CF820 func_80219250_5CF8E0 = 0x80219250; // type:func rom:0x5CF8E0 -dup2_b_area_flo2_UnkFloatFunc = 0x80219310; // type:func rom:0x5CF9A0 -dup3_b_area_flo2_UnkFloatFunc = 0x802194A0; // type:func rom:0x5CFB30 +dup2_b_area_flo2_CosInterpMinMax = 0x80219310; // type:func rom:0x5CF9A0 +dup3_b_area_flo2_CosInterpMinMax = 0x802194A0; // type:func rom:0x5CFB30 func_80219630_5CFCC0 = 0x80219630; // type:func rom:0x5CFCC0 func_802196F0_5CFD80 = 0x802196F0; // type:func rom:0x5CFD80 func_802197B0_5CFE40 = 0x802197B0; // type:func rom:0x5CFE40 @@ -13261,7 +13261,7 @@ dup4_b_area_pra_UnkFunc52 = 0x80219368; // type:func rom:0x64A178 b_area_pra_GetBootsHammerLevel = 0x8021942C; // type:func rom:0x64A23C b_area_pra_UnkBattleFunc5 = 0x8021948C; // type:func rom:0x64A29C b_area_pra2_crystal_king_StartRumbleWithParams = 0x80218000; // type:func rom:0x660750 -b_area_pra2_crystal_king_UnkFloatFunc = 0x80218058; // type:func rom:0x6607A8 +b_area_pra2_crystal_king_CosInterpMinMax = 0x80218058; // type:func rom:0x6607A8 GetActorPartOpacity = 0x802181E8; // type:func rom:0x660938 func_80218280_6609D0 = 0x80218280; // type:func rom:0x6609D0 func_802182E4_660A34 = 0x802182E4; // type:func rom:0x660A34 @@ -13631,7 +13631,7 @@ b_area_kpa_UnkBattleFunc1 = 0x80218000; // type:func rom:0x684A30 dup_b_area_kpa_UnkBattleFunc1 = 0x802180D0; // type:func rom:0x684B00 b_area_kpa_StartRumbleWithParams = 0x8021819C; // type:func rom:0x684BCC b_area_kpa_ShrinkActor = 0x80218200; // type:func rom:0x684C30 -b_area_kpa_UnkFloatFunc = 0x80218358; // type:func rom:0x684D88 +b_area_kpa_CosInterpMinMax = 0x80218358; // type:func rom:0x684D88 b_area_kpa_GetSelectedMoveID = 0x802184E8; // type:func rom:0x684F18 dup2_b_area_kpa_UnkBattleFunc1 = 0x80218514; // type:func rom:0x684F44 dup_b_area_kpa_StartRumbleWithParams = 0x802185E0; // type:func rom:0x685010 @@ -13786,7 +13786,7 @@ func_80218000_6CC070 = 0x80218000; // type:func rom:0x6CC070 dup_b_area_kpa4_UnkBattleFunc1 = 0x80218020; // type:func rom:0x6CC090 dup_p_area_kpa4_StartRumbleWithParams = 0x802180EC; // type:func rom:0x6CC15C b_area_kpa4_ShrinkActor = 0x80218150; // type:func rom:0x6CC1C0 -b_area_kpa4_UnkFloatFunc = 0x802182A8; // type:func rom:0x6CC318 +b_area_kpa4_CosInterpMinMax = 0x802182A8; // type:func rom:0x6CC318 b_area_kpa4_GetSelectedMoveID = 0x80218438; // type:func rom:0x6CC4A8 b_area_kpa4_UnkBattleFunc1 = 0x80218464; // type:func rom:0x6CC4D4 b_area_kpa4_StartRumbleWithParams = 0x80218530; // type:func rom:0x6CC5A0 @@ -15175,7 +15175,7 @@ mac_02_UpdateTexturePanStepped = 0x80240404; // type:func rom:0x8236C4 func_802405F0_8238B0 = 0x802405F0; // type:func rom:0x8238B0 mac_02_foliage_setup_shear_mtx = 0x802406B0; // type:func rom:0x823970 mac_02_TransformFoliage = 0x80240720; // type:func rom:0x8239E0 -mac_02_SetEntityFlags100000 = 0x802408F0; // type:func rom:0x823BB0 +mac_02_RemovePadlock = 0x802408F0; // type:func rom:0x823BB0 mac_02_PatrolAI_MoveInit = 0x80240930; // type:func rom:0x823BF0 mac_02_PatrolAI_Move = 0x80240A88; // type:func rom:0x823D48 mac_02_PatrolAI_LoiterInit = 0x80240D30; // type:func rom:0x823FF0 @@ -15255,7 +15255,7 @@ mac_03_Pipe_GetEntryPos = 0x802400F0; // type:func rom:0x8318F0 mac_03_Pipe_GetCameraYaw = 0x802401D0; // type:func rom:0x8319D0 mac_03_Pipe_GetPointAheadOfPlayer = 0x8024023C; // type:func rom:0x831A3C func_802402E0_831AE0 = 0x802402E0; // type:func rom:0x831AE0 -mac_03_UnkFloatFunc = 0x80240320; // type:func rom:0x831B20 +mac_03_CosInterpMinMax = 0x80240320; // type:func rom:0x831B20 mac_03_Quizmo_StashVars = 0x802404B0; // type:func rom:0x831CB0 mac_03_Quizmo_GetItemName = 0x80240564; // type:func rom:0x831D64 mac_03_Quizmo_HideEntities = 0x802405C8; // type:func rom:0x831DC8 @@ -15369,7 +15369,7 @@ func_80241C90_844860 = 0x80241C90; // type:func rom:0x844860 func_80241CEC_8448BC = 0x80241CEC; // type:func rom:0x8448BC func_80241D30_844900 = 0x80241D30; // type:func rom:0x844900 func_80241DAC_84497C = 0x80241DAC; // type:func rom:0x84497C -mac_04_SetEntityFlags100000 = 0x80241EB0; // type:func rom:0x844A80 +mac_04_RemovePadlock = 0x80241EB0; // type:func rom:0x844A80 mac_04_MonitorMusicProximityTrigger = 0x80241EF0; // type:func rom:0x844AC0 mac_04_Quizmo_varStash = 0x80243FE8; // type:data rom:0x846BB8 mac_04_Quizmo_Answers = 0x8024404C; // type:data rom:0x846C1C @@ -16323,8 +16323,8 @@ D_80240C0C_90C2DC = 0x80240C0C; // type:data rom:0x90C2DC D_80240C0F_90C2DF = 0x80240C0F; // type:data rom:0x90C2DF iwa_00_StashVars = 0x80240000; // type:func rom:0x90CC40 iwa_00_GetItemName = 0x802400B4; // type:func rom:0x90CCF4 -func_80240118_90CD58 = 0x80240118; // type:func rom:0x90CD58 -func_802402B0_90CEF0 = 0x802402B0; // type:func rom:0x90CEF0 +iwa_00_func_80240118_90CD58 = 0x80240118; // type:func rom:0x90CD58 +iwa_00_func_802402B0_90CEF0 = 0x802402B0; // type:func rom:0x90CEF0 iwa_00_varStash = 0x80240FF8; // type:data rom:0x90DC38 func_80240000_90F6B0 = 0x80240000; // type:func rom:0x90F6B0 func_80240398_90FA48 = 0x80240398; // type:func rom:0x90FA48 @@ -16364,8 +16364,10 @@ iwa_01_CleftAI_DisguiseInit = 0x80242E2C; // type:func rom:0x9124DC iwa_01_CleftAI_Disguise = 0x80242EA8; // type:func rom:0x912558 iwa_01_CleftAI_PostDisguise = 0x80242F10; // type:func rom:0x9125C0 iwa_01_CleftAI_Main = 0x80242F54; // type:func rom:0x912604 -func_802432B0_912960 = 0x802432B0; // type:func rom:0x912960 -D_80243E00_9134B0 = 0x80243E00; // type:data rom:0x9134B0 +iwa_01_SetPlayerSliding = 0x802432B0; // type:func rom:0x912960 +iwa_01_splash_img = 0x802439C0; // type:func rom:0x913070 +iwa_01_splash_vtx = 0x80243DC0; // type:data rom:0x913470 +iwa_01_splash_gfx = 0x80243E00; // type:data rom:0x9134B0 D_80246370_915A20 = 0x80246370; // type:data rom:0x915A20 D_80246378_915A28 = 0x80246378; // type:data rom:0x915A28 D_80246380_915A30 = 0x80246380; // type:data rom:0x915A30 @@ -16411,7 +16413,7 @@ iwa_03_StashVars = 0x80240000; // type:func rom:0x918BB0 iwa_03_GetItemName = 0x802400B4; // type:func rom:0x918C64 iwa_03_SomeItemEntityFunc = 0x80240118; // type:func rom:0x918CC8 iwa_03_IsItemBadge = 0x80240268; // type:func rom:0x918E18 -func_802402BC_918E6C = 0x802402BC; // type:func rom:0x918E6C +iwa_03_MonitorPlayerAltitude = 0x802402BC; // type:func rom:0x918E6C iwa_03_CleftAI_CanSeePlayer = 0x80240340; // type:func rom:0x918EF0 iwa_03_CleftAI_HidingInit = 0x802404A0; // type:func rom:0x919050 iwa_03_CleftAI_Hiding = 0x80240514; // type:func rom:0x9190C4 @@ -16428,14 +16430,14 @@ iwa_03_CleftAI_DisguiseInit = 0x80240EA8; // type:func rom:0x919A58 iwa_03_CleftAI_Disguise = 0x80240F24; // type:func rom:0x919AD4 iwa_03_CleftAI_PostDisguise = 0x80240F8C; // type:func rom:0x919B3C iwa_03_CleftAI_Main = 0x80240FD0; // type:func rom:0x919B80 -func_80241320_919ED0 = 0x80241320; // type:func rom:0x919ED0 +iwa_03_SetPlayerSliding = 0x80241320; // type:func rom:0x919ED0 iwa_03_varStash = 0x80241530; // type:data rom:0x91A0E0 D_80242C30_91B7E0 = 0x80242C30; // type:data rom:0x91B7E0 D_80242C38_91B7E8 = 0x80242C38; // type:data rom:0x91B7E8 D_80242C40_91B7F0 = 0x80242C40; // type:data rom:0x91B7F0 D_80242C48_91B7F8 = 0x80242C48; // type:data rom:0x91B7F8 D_80242C50_91B800 = 0x80242C50; // type:data rom:0x91B800 -func_80240000_91B8E0 = 0x80240000; // type:func rom:0x91B8E0 +iwa_04_MonitorPlayerAltitude = 0x80240000; // type:func rom:0x91B8E0 iwa_04_CleftAI_CanSeePlayer = 0x80240080; // type:func rom:0x91B960 iwa_04_CleftAI_HidingInit = 0x802401E0; // type:func rom:0x91BAC0 iwa_04_CleftAI_Hiding = 0x80240254; // type:func rom:0x91BB34 @@ -16452,17 +16454,17 @@ iwa_04_CleftAI_DisguiseInit = 0x80240BE8; // type:func rom:0x91C4C8 iwa_04_CleftAI_Disguise = 0x80240C64; // type:func rom:0x91C544 iwa_04_CleftAI_PostDisguise = 0x80240CCC; // type:func rom:0x91C5AC iwa_04_CleftAI_Main = 0x80240D10; // type:func rom:0x91C5F0 -func_80241060_91C940 = 0x80241060; // type:func rom:0x91C940 -func_8024107C_91C95C = 0x8024107C; // type:func rom:0x91C95C +iwa_04_func_80241060_91C940 = 0x80241060; // type:func rom:0x91C940 +iwa_04_func_8024107C_91C95C = 0x8024107C; // type:func rom:0x91C95C D_80242B90_91E470 = 0x80242B90; // type:data rom:0x91E470 D_80242B98_91E478 = 0x80242B98; // type:data rom:0x91E478 D_80242BA0_91E480 = 0x80242BA0; // type:data rom:0x91E480 D_80242BA8_91E488 = 0x80242BA8; // type:data rom:0x91E488 D_80242BB0_91E490 = 0x80242BB0; // type:data rom:0x91E490 -func_80240000_91E570 = 0x80240000; // type:func rom:0x91E570 +iwa_10_func_80240000_91E570 = 0x80240000; // type:func rom:0x91E570 iwa_10_StashVars = 0x80240040; // type:func rom:0x91E5B0 iwa_10_GetItemName = 0x802400F4; // type:func rom:0x91E664 -iwa_10_UnkFloatFunc = 0x80240160; // type:func rom:0x91E6D0 +iwa_10_CosInterpMinMax = 0x80240160; // type:func rom:0x91E6D0 iwa_10_SuperBlock_SetOverride40 = 0x802402F0; // type:func rom:0x91E860 iwa_10_SuperBlock_ClearOverride40 = 0x8024030C; // type:func rom:0x91E87C iwa_10_SuperBlock_HideBlockContent = 0x8024032C; // type:func rom:0x91E89C @@ -16487,7 +16489,7 @@ iwa_10_AddPlayerHandsOffset = 0x80241210; // type:func rom:0x91F780 func_802413E0_91F950 = 0x802413E0; // type:func rom:0x91F950 func_80241434_91F9A4 = 0x80241434; // type:func rom:0x91F9A4 func_8024146C_91F9DC = 0x8024146C; // type:func rom:0x91F9DC -func_80241510_91FA80 = 0x80241510; // type:func rom:0x91FA80 +iwa_10_LoadPartyImage = 0x80241510; // type:func rom:0x91FA80 iwa_10_foliage_setup_shear_mtx = 0x802415B0; // type:func rom:0x91FB20 iwa_10_TransformFoliage = 0x80241620; // type:func rom:0x91FB90 D_80241DD0_920340 = 0x80241DD0; // type:data rom:0x920340 @@ -16498,11 +16500,11 @@ iwa_10_SuperBlock_UpgradeOrbAngles = 0x80245AB8; // type:data rom:0x924028 D_8024626C_9247DC = 0x8024626C; // type:data rom:0x9247DC D_80246270_9247E0 = 0x80246270; // type:data rom:0x9247E0 D_80248470_9269E0 = 0x80248470; // type:data rom:0x9269E0 -func_80240000_9269F0 = 0x80240000; // type:func rom:0x9269F0 -iwa_11_UnkFloatFunc = 0x80240020; // type:func rom:0x926A10 -func_802401B0_926BA0 = 0x802401B0; // type:func rom:0x926BA0 -func_80240208_926BF8 = 0x80240208; // type:func rom:0x926BF8 -func_80240280_926C70 = 0x80240280; // type:func rom:0x926C70 +iwa_11_func_80240000_9269F0 = 0x80240000; // type:func rom:0x9269F0 +iwa_11_CosInterpMinMax = 0x80240020; // type:func rom:0x926A10 +iwa_11_GetSmallWheelsAngle = 0x802401B0; // type:func rom:0x926BA0 +iwa_11_GetLargeWheelAngle = 0x80240208; // type:func rom:0x926BF8 +iwa_11_GetSectionPosOffsets = 0x80240280; // type:func rom:0x926C70 D_80242148_928B38 = 0x80242148; // type:data rom:0x928B38 sbk_00_SpawnSunEffect = 0x80240000; // type:func rom:0x929270 sbk_00_SetNpcB5_3 = 0x80240040; // type:func rom:0x9292B0 @@ -17160,10 +17162,10 @@ D_8024EF60_978120 = 0x8024EF60; // type:data rom:0x978120 D_8024EF68_978128 = 0x8024EF68; // type:data rom:0x978128 D_8024EF70_978130 = 0x8024EF70; // type:data rom:0x978130 D_8024EF78_978138 = 0x8024EF78; // type:data rom:0x978138 -isk_02_SetEntityFlags100000 = 0x80240000; // type:func rom:0x978710 +isk_02_RemovePadlock = 0x80240000; // type:func rom:0x978710 func_80240040_978750 = 0x80240040; // type:func rom:0x978750 isk_02_SetNpcB5_3 = 0x802400F0; // type:func rom:0x978800 -isk_04_SetEntityFlags100000 = 0x80240000; // type:func rom:0x97B630 +isk_04_RemovePadlock = 0x80240000; // type:func rom:0x97B630 isk_04_set_script_owner_npc_anim = 0x80240040; // type:func rom:0x97B670 isk_04_UnkDistFunc = 0x802400BC; // type:func rom:0x97B6EC isk_04_UnkNpcAIFunc12 = 0x802401F0; // type:func rom:0x97B820 @@ -17205,7 +17207,7 @@ D_80242F38_980A08 = 0x80242F38; // type:data rom:0x980A08 D_80242F40_980A10 = 0x80242F40; // type:data rom:0x980A10 isk_07_SetNpcB5_3 = 0x80240000; // type:func rom:0x982440 func_80240014_982454 = 0x80240014; // type:func rom:0x982454 -isk_07_SetEntityFlags100000 = 0x802400B0; // type:func rom:0x9824F0 +isk_07_RemovePadlock = 0x802400B0; // type:func rom:0x9824F0 func_802400F0_982530 = 0x802400F0; // type:func rom:0x982530 isk_08_set_script_owner_npc_anim = 0x80240000; // type:func rom:0x984E30 isk_08_UnkDistFunc = 0x8024007C; // type:func rom:0x984EAC @@ -17250,7 +17252,7 @@ D_80241EA0_98AA00 = 0x80241EA0; // type:data rom:0x98AA00 D_80241EA8_98AA08 = 0x80241EA8; // type:data rom:0x98AA08 func_80240000_98AA10 = 0x80240000; // type:func rom:0x98AA10 func_802400B0_98AAC0 = 0x802400B0; // type:func rom:0x98AAC0 -isk_11_SetEntityFlags100000 = 0x80240120; // type:func rom:0x98AB30 +isk_11_RemovePadlock = 0x80240120; // type:func rom:0x98AB30 isk_13_HoppingAI_HopInit = 0x80240000; // type:func rom:0x98F7E0 isk_13_HoppingAI_Hop = 0x80240230; // type:func rom:0x98FA10 isk_13_HoppingAI_LoiterInit = 0x80240568; // type:func rom:0x98FD48 @@ -17322,7 +17324,7 @@ trd_00_SyncStatusMenu = 0x8024060C; // type:func rom:0x99A27C trd_00_varStash = 0x80241340; // type:data rom:0x99AFB0 trd_01_UpdateTexturePanSmooth = 0x80240000; // type:func rom:0x99C990 trd_01_UpdateTexturePanStepped = 0x80240124; // type:func rom:0x99CAB4 -trd_01_SetEntityFlags100000 = 0x80240310; // type:func rom:0x99CCA0 +trd_01_RemovePadlock = 0x80240310; // type:func rom:0x99CCA0 trd_01_GetEntityPosition = 0x80240344; // type:func rom:0x99CCD4 trd_01_set_script_owner_npc_anim = 0x802403F0; // type:func rom:0x99CD80 trd_01_UnkDistFunc = 0x8024046C; // type:func rom:0x99CDFC @@ -17340,7 +17342,7 @@ trd_01_StationaryAI_ReturnHomeInit = 0x80241104; // type:func rom:0x99DA94 trd_01_StationaryAI_ReturnHome = 0x802411B0; // type:func rom:0x99DB40 trd_01_StationaryAI_Main = 0x802413B8; // type:func rom:0x99DD48 trd_01_func_80241630_99DFC0 = 0x80241630; // type:func rom:0x99DFC0 -trd_02_SetEntityFlags100000 = 0x80240000; // type:func rom:0x9A0FE0 +trd_02_RemovePadlock = 0x80240000; // type:func rom:0x9A0FE0 trd_02_GetEntityPosition = 0x80240034; // type:func rom:0x9A1014 trd_02_set_script_owner_npc_anim = 0x802400E0; // type:func rom:0x9A10C0 trd_02_UnkDistFunc = 0x8024015C; // type:func rom:0x9A113C @@ -17370,7 +17372,7 @@ trd_03_TackleAI_Main = 0x80240434; // type:func rom:0x9A4A84 trd_03_GetLeftRightPoints = 0x80240880; // type:func rom:0x9A4ED0 trd_04_UpdateTexturePanSmooth = 0x80240000; // type:func rom:0x9A83F0 trd_04_UpdateTexturePanStepped = 0x80240124; // type:func rom:0x9A8514 -trd_04_SetEntityFlags100000 = 0x80240310; // type:func rom:0x9A8700 +trd_04_RemovePadlock = 0x80240310; // type:func rom:0x9A8700 trd_04_SetEntityPosition = 0x80240344; // type:func rom:0x9A8734 trd_04_GetEntityPosition = 0x80240408; // type:func rom:0x9A87F8 trd_04_set_script_owner_npc_anim = 0x802404B0; // type:func rom:0x9A88A0 @@ -17531,7 +17533,7 @@ nok_01_LetterDelivery_CalcLetterPos = 0x80242240; // type:func rom:0x9C7620 nok_01_LetterDelivery_SaveNpcAnim = 0x802423CC; // type:func rom:0x9C77AC nok_01_LetterDelivery_RestoreNpcAnim = 0x80242410; // type:func rom:0x9C77F0 func_8024243C_9C781C = 0x8024243C; // type:func rom:0x9C781C -nok_01_UnkFloatFunc = 0x80242514; // type:func rom:0x9C78F4 +nok_01_CosInterpMinMax = 0x80242514; // type:func rom:0x9C78F4 func_802426A4_9C7A84 = 0x802426A4; // type:func rom:0x9C7A84 func_80242760_9C7B40 = 0x80242760; // type:func rom:0x9C7B40 func_80242790_9C7B70 = 0x80242790; // type:func rom:0x9C7B70 @@ -17669,7 +17671,7 @@ nok_03_HoppingAI_LosePlayer = 0x80240BAC; // type:func rom:0x9EC39C nok_03_HoppingAI_Main = 0x80240BF0; // type:func rom:0x9EC3E0 D_802423B0_9EDBA0 = 0x802423B0; // type:data rom:0x9EDBA0 nok_04_ChangeNpcToPartner = 0x80240000; // type:func rom:0x9EDBF0 -nok_04_UnkFloatFunc = 0x80240184; // type:func rom:0x9EDD74 +nok_04_CosInterpMinMax = 0x80240184; // type:func rom:0x9EDD74 func_80240314_9EDF04 = 0x80240314; // type:func rom:0x9EDF04 func_802403C0_9EDFB0 = 0x802403C0; // type:func rom:0x9EDFB0 func_802404D0_9EE0C0 = 0x802404D0; // type:func rom:0x9EE0C0 @@ -18376,7 +18378,7 @@ kpa_14_StashVars = 0x80240380; // type:func rom:0xA57830 kpa_14_GetItemName = 0x80240434; // type:func rom:0xA578E4 kpa_14_SomeItemEntityFunc = 0x80240498; // type:func rom:0xA57948 kpa_14_IsItemBadge = 0x802405E8; // type:func rom:0xA57A98 -kpa_14_SetEntityFlags100000 = 0x8024063C; // type:func rom:0xA57AEC +kpa_14_RemovePadlock = 0x8024063C; // type:func rom:0xA57AEC kpa_14_GetEntityPosition = 0x80240670; // type:func rom:0xA57B20 kpa_14_func_80240710_A57BC0 = 0x80240710; // type:func rom:0xA57BC0 func_8024073C_A57BEC = 0x8024073C; // type:func rom:0xA57BEC @@ -18456,7 +18458,7 @@ D_80242F88_A67018 = 0x80242F88; // type:data rom:0xA67018 D_80242F90_A67020 = 0x80242F90; // type:data rom:0xA67020 D_80242F98_A67028 = 0x80242F98; // type:data rom:0xA67028 D_80243008_A67098 = 0x80243008; // type:data rom:0xA67098 -kpa_52_SetEntityFlags100000 = 0x80240000; // type:func rom:0xA67100 +kpa_52_RemovePadlock = 0x80240000; // type:func rom:0xA67100 kpa_52_GetEntityPosition = 0x80240034; // type:func rom:0xA67134 kpa_52_ProjectileHitbox_GetUsableProjectileID = 0x802400E0; // type:func rom:0xA671E0 kpa_52_UnkNpcAIFunc48 = 0x802402D0; // type:func rom:0xA673D0 @@ -18478,7 +18480,7 @@ func_80240050_A6ACF0 = 0x80240050; // type:func rom:0xA6ACF0 D_80241E20_A6CAC0 = 0x80241E20; // type:data rom:0xA6CAC0 D_80241E30_A6CAD0 = 0x80241E30; // type:data rom:0xA6CAD0 D_80241E50_A6CAF0 = 0x80241E50; // type:data rom:0xA6CAF0 -kpa_60_SetEntityFlags100000 = 0x80240000; // type:func rom:0xA6CB00 +kpa_60_RemovePadlock = 0x80240000; // type:func rom:0xA6CB00 kpa_60_GetEntityPosition = 0x80240034; // type:func rom:0xA6CB34 kpa_60_UpdateTexturePanSmooth = 0x802400E0; // type:func rom:0xA6CBE0 kpa_60_UpdateTexturePanStepped = 0x80240204; // type:func rom:0xA6CD04 @@ -18516,7 +18518,7 @@ D_80243D78_A72158 = 0x80243D78; // type:data rom:0xA72158 D_80243D80_A72160 = 0x80243D80; // type:data rom:0xA72160 D_80243D88_A72168 = 0x80243D88; // type:data rom:0xA72168 D_80243D90_A72170 = 0x80243D90; // type:data rom:0xA72170 -kpa_62_SetEntityFlags100000 = 0x80240000; // type:func rom:0xA72220 +kpa_62_RemovePadlock = 0x80240000; // type:func rom:0xA72220 kpa_62_GetEntityPosition = 0x80240034; // type:func rom:0xA72254 kpa_62_UpdateTexturePanSmooth = 0x802400E0; // type:func rom:0xA72300 kpa_62_UpdateTexturePanStepped = 0x80240204; // type:func rom:0xA72424 @@ -18584,12 +18586,12 @@ kpa_91_ToadHouse_InitScreenOverlay = 0x8024173C; // type:func rom:0xA8818C kpa_91_ToadHouse_PutPartnerAway = 0x802417B8; // type:func rom:0xA88208 kpa_91_ToadHouse_GetPartnerBackOut = 0x802417EC; // type:func rom:0xA8823C kpa_91_ToadHouse_Stub = 0x8024181C; // type:func rom:0xA8826C -kpa_91_SetEntityFlags100000 = 0x80241830; // type:func rom:0xA88280 +kpa_91_RemovePadlock = 0x80241830; // type:func rom:0xA88280 kpa_91_GetEntityPosition = 0x80241864; // type:func rom:0xA882B4 D_80245A30_A8C480 = 0x80245A30; // type:data rom:0xA8C480 D_80245A38_A8C488 = 0x80245A38; // type:data rom:0xA8C488 D_80245BD0_A8C620 = 0x80245BD0; // type:data rom:0xA8C620 -kpa_95_SetEntityFlags100000 = 0x80240000; // type:func rom:0xA8CA80 +kpa_95_RemovePadlock = 0x80240000; // type:func rom:0xA8CA80 kpa_95_GetEntityPosition = 0x80240034; // type:func rom:0xA8CAB4 kpa_95_PatrolAI_MoveInit = 0x802400E0; // type:func rom:0xA8CB60 kpa_95_PatrolAI_Move = 0x80240238; // type:func rom:0xA8CCB8 @@ -18696,7 +18698,7 @@ D_80243248_A9C7D8 = 0x80243248; // type:data rom:0xA9C7D8 D_80243250_A9C7E0 = 0x80243250; // type:data rom:0xA9C7E0 D_80243258_A9C7E8 = 0x80243258; // type:data rom:0xA9C7E8 D_80243260_A9C7F0 = 0x80243260; // type:data rom:0xA9C7F0 -kpa_113_SetEntityFlags100000 = 0x80240000; // type:func rom:0xA9CC30 +kpa_113_RemovePadlock = 0x80240000; // type:func rom:0xA9CC30 kpa_113_UnkFunc11 = 0x80240040; // type:func rom:0xA9CC70 kpa_113_UnkFunc12 = 0x802400FC; // type:func rom:0xA9CD2C kpa_113_set_script_owner_npc_anim = 0x802401B0; // type:func rom:0xA9CDE0 @@ -18745,7 +18747,7 @@ func_80240408_AA93A8 = 0x80240408; // type:func rom:0xAA93A8 func_80240434_AA93D4 = 0x80240434; // type:func rom:0xAA93D4 func_80240510_AA94B0 = 0x80240510; // type:func rom:0xAA94B0 kpa_134_SetEntityPosition = 0x80240564; // type:func rom:0xAA9504 -kpa_134_SetEntityFlags100000 = 0x80240628; // type:func rom:0xAA95C8 +kpa_134_RemovePadlock = 0x80240628; // type:func rom:0xAA95C8 kpa_134_GetEntityPosition = 0x8024065C; // type:func rom:0xAA95FC osr_00_UpdateTexturePanSmooth = 0x80240000; // type:func rom:0xAAC830 osr_00_UpdateTexturePanStepped = 0x80240124; // type:func rom:0xAAC954 @@ -18826,7 +18828,7 @@ kkj_03_UpdateTexturePanSmooth = 0x80240020; // type:func rom:0xAC9730 kkj_03_UpdateTexturePanStepped = 0x80240144; // type:func rom:0xAC9854 func_80240000_ACAB20 = 0x80240000; // type:func rom:0xACAB20 func_80240034_ACAB54 = 0x80240034; // type:func rom:0xACAB54 -kkj_10_SetEntityFlags100000 = 0x80240070; // type:func rom:0xACAB90 +kkj_10_RemovePadlock = 0x80240070; // type:func rom:0xACAB90 kkj_10_UnkPhysicsFunc = 0x802400B0; // type:func rom:0xACABD0 kkj_10_UnkModelMatrixFunc = 0x802402C0; // type:func rom:0xACADE0 kkj_10_UnkModelMatrixFunc2 = 0x8024036C; // type:func rom:0xACAE8C @@ -18847,7 +18849,7 @@ D_80243608_ACE128 = 0x80243608; // type:data rom:0xACE128 D_80243610_ACE130 = 0x80243610; // type:data rom:0xACE130 func_80240000_ACE140 = 0x80240000; // type:func rom:0xACE140 func_80240034_ACE174 = 0x80240034; // type:func rom:0xACE174 -kkj_11_SetEntityFlags100000 = 0x80240070; // type:func rom:0xACE1B0 +kkj_11_RemovePadlock = 0x80240070; // type:func rom:0xACE1B0 kkj_11_UnkPhysicsFunc = 0x802400B0; // type:func rom:0xACE1F0 kkj_11_UnkModelMatrixFunc = 0x802402C0; // type:func rom:0xACE400 kkj_11_UnkModelMatrixFunc2 = 0x8024036C; // type:func rom:0xACE4AC @@ -19969,9 +19971,9 @@ arn_03_PatrolAI_Chase = 0x8024094C; // type:func rom:0xBDF6DC arn_03_PatrolAI_LosePlayer = 0x80240A6C; // type:func rom:0xBDF7FC arn_03_PatrolNoAttackAI_15 = 0x80240AD4; // type:func rom:0xBDF864 arn_03_PatrolNoAttackAI_Main = 0x80240B94; // type:func rom:0xBDF924 -arn_03_func_80240E90_BDFC20 = 0x80240E90; // type:func rom:0xBDFC20 -arn_03_func_80241068_BDFDF8 = 0x80241068; // type:func rom:0xBDFDF8 -arn_03_func_8024113C_BDFECC = 0x8024113C; // type:func rom:0xBDFECC +arn_03_BooPatrolAI_Move = 0x80240E90; // type:func rom:0xBDFC20 +arn_03_BooPatrolAI_Loiter = 0x80241068; // type:func rom:0xBDFDF8 +arn_03_BooPatrolAI_Main = 0x8024113C; // type:func rom:0xBDFECC arn_03_StashVars = 0x802412B0; // type:func rom:0xBE0040 arn_03_GetItemName = 0x80241364; // type:func rom:0xBE00F4 arn_03_GetNpcCollisionHeight = 0x802413C8; // type:func rom:0xBE0158 @@ -19993,8 +19995,6 @@ arn_03_npcAI_80241BF0 = 0x80241BF0; // type:data rom:0xBE0980 arn_03_npcSettings_80241C10 = 0x80241C10; // type:data rom:0xBE09A0 arn_03_npcSettings_80241C3C = 0x80241C3C; // type:data rom:0xBE09CC arn_03_D_80241C68_BE09F8 = 0x80241C68; // type:data rom:0xBE09F8 -arn_03_80241C6C = 0x80241C6C; // type:data rom:0xBE09FC -arn_03_80241C9C = 0x80241C9C; // type:data rom:0xBE0A2C arn_03_ItemChoice_HasSelectedItem = 0x80241CCC; // type:data rom:0xBE0A5C arn_03_ItemChoice_SelectedItemID = 0x80241CD0; // type:data rom:0xBE0A60 arn_03_80241CD4 = 0x80241CD4; // type:data rom:0xBE0A64 @@ -20002,7 +20002,6 @@ arn_03_80241E18 = 0x80241E18; // type:data rom:0xBE0BA8 arn_03_80241E68 = 0x80241E68; // type:data rom:0xBE0BF8 arn_03_interact_80241EB0 = 0x80241EB0; // type:data rom:0xBE0C40 arn_03_idle_80242064 = 0x80242064; // type:data rom:0xBE0DF4 -arn_03_init_802424E0 = 0x802424E0; // type:data rom:0xBE1270 arn_03_interact_8024254C = 0x8024254C; // type:data rom:0xBE12DC arn_03_init_802428A8 = 0x802428A8; // type:data rom:0xBE1638 arn_03_802428CC = 0x802428CC; // type:data rom:0xBE165C @@ -20085,7 +20084,6 @@ arn_04_FlyingAI_JumpVels = 0x802436DC; // type:data rom:0xBE6E8C arn_04_npcAISettings_802436F4 = 0x802436F4; // type:data rom:0xBE6EA4 arn_04_npcAI_80243724 = 0x80243724; // type:data rom:0xBE6ED4 arn_04_npcSettings_80243794 = 0x80243794; // type:data rom:0xBE6F44 -arn_04_npcAISettings_802437C0 = 0x802437C0; // type:data rom:0xBE6F70 arn_04_npcAI_802437F0 = 0x802437F0; // type:data rom:0xBE6FA0 arn_04_npcSettings_80243814 = 0x80243814; // type:data rom:0xBE6FC4 arn_04_npcGroup_80243840 = 0x80243840; // type:data rom:0xBE6FF0 @@ -20116,10 +20114,10 @@ arn_05_PatrolAI_Chase = 0x8024094C; // type:func rom:0xBE852C arn_05_PatrolAI_LosePlayer = 0x80240A6C; // type:func rom:0xBE864C arn_05_PatrolNoAttackAI_15 = 0x80240AD4; // type:func rom:0xBE86B4 arn_05_PatrolNoAttackAI_Main = 0x80240B94; // type:func rom:0xBE8774 -arn_05_func_80240E90_BE8A70 = 0x80240E90; // type:func rom:0xBE8A70 -arn_05_func_80241068_BE8C48 = 0x80241068; // type:func rom:0xBE8C48 -arn_05_func_8024113C_BE8D1C = 0x8024113C; // type:func rom:0xBE8D1C -arn_05_func_802412B0_BE8E90 = 0x802412B0; // type:func rom:0xBE8E90 +arn_05_BooPatrolAI_Move = 0x80240E90; // type:func rom:0xBE8A70 +arn_05_BooPatrolAI_Loiter = 0x80241068; // type:func rom:0xBE8C48 +arn_05_BooPatrolAI_Main = 0x8024113C; // type:func rom:0xBE8D1C +arn_05_AwaitCDownPress = 0x802412B0; // type:func rom:0xBE8E90 arn_05_SwitchToPartner = 0x802412C8; // type:func rom:0xBE8EA8 arn_05_entryList = 0x80241300; // type:data rom:0xBE8EE0 arn_05_settings = 0x80241320; // type:data rom:0xBE8F00 @@ -20172,8 +20170,8 @@ arn_07_StarSpiritEffectFunc3 = 0x802401AC; // type:func rom:0xBECF9C arn_07_StarSpiritEffectFunc4 = 0x802405BC; // type:func rom:0xBED3AC arn_07_StarSpiritEffectFunc5 = 0x802405FC; // type:func rom:0xBED3EC arn_07_StarSpiritEffectFunc6 = 0x80240708; // type:func rom:0xBED4F8 -arn_07_func_80240800_BED5F0 = 0x80240800; // type:func rom:0xBED5F0 -arn_07_SetEntityFlags100000 = 0x80240870; // type:func rom:0xBED660 +arn_07_WrapWindmillAngle = 0x80240800; // type:func rom:0xBED5F0 +arn_07_RemovePadlock = 0x80240870; // type:func rom:0xBED660 arn_07_GetEntityPosition = 0x802408A4; // type:func rom:0xBED694 arn_07_FlyingAI_WanderInit = 0x80240950; // type:func rom:0xBED740 arn_07_FlyingAI_Wander = 0x80240B00; // type:func rom:0xBED8F0 @@ -20186,7 +20184,7 @@ arn_07_FlyingAI_Chase = 0x80241744; // type:func rom:0xBEE534 arn_07_FlyingAI_LosePlayer = 0x802417A8; // type:func rom:0xBEE598 arn_07_FlyingAI_Init = 0x80241B38; // type:func rom:0xBEE928 arn_07_FlyingAI_Main = 0x80241C5C; // type:func rom:0xBEEA4C -PostChapter3StatUpdate = 0x80241E48; // type:func rom:0xBEEC38 +UpgradeStarPower = 0x80241E48; // type:func rom:0xBEEC38 arn_07_entryList = 0x80241E90; // type:data rom:0xBEEC80 arn_07_settings = 0x80241ED0; // type:data rom:0xBEECC0 arn_07_80241F10 = 0x80241F10; // type:data rom:0xBEED00 @@ -20232,7 +20230,6 @@ arn_07_extraAnimationList_802451D4 = 0x802451D4; // type:data rom:0xBF1FC4 arn_07_extraAnimationList_802451F8 = 0x802451F8; // type:data rom:0xBF1FE8 arn_07_extraAnimationList_80245200 = 0x80245200; // type:data rom:0xBF1FF0 arn_07_extraAnimationList_80245208 = 0x80245208; // type:data rom:0xBF1FF8 -arn_07_idle_80245210 = 0x80245210; // type:data rom:0xBF2000 arn_07_80245304 = 0x80245304; // type:data rom:0xBF20F4 arn_07_init_80245C9C = 0x80245C9C; // type:data rom:0xBF2A8C arn_07_npcGroup_80245D0C = 0x80245D0C; // type:data rom:0xBF2AFC @@ -20253,10 +20250,10 @@ D_80247958_BF4748 = 0x80247958; // type:data rom:0xBF4748 D_80247960_BF4750 = 0x80247960; // type:data rom:0xBF4750 arn_08_func_80240000_BF47A0 = 0x80240000; // type:func rom:0xBF47A0 arn_08_func_8024008C_BF482C = 0x8024008C; // type:func rom:0xBF482C -arn_08_func_802400C0_BF4860 = 0x802400C0; // type:func rom:0xBF4860 +arn_08_InitializeDemoEquipment = 0x802400C0; // type:func rom:0xBF4860 arn_08_func_802400D4_BF4874 = 0x802400D4; // type:func rom:0xBF4874 arn_08_func_802400F4_BF4894 = 0x802400F4; // type:func rom:0xBF4894 -arn_08_func_8024019C_BF493C = 0x8024019C; // type:func rom:0xBF493C +arn_08_SetupDemoScene = 0x8024019C; // type:func rom:0xBF493C arn_08_entryList = 0x80240290; // type:data rom:0xBF4A30 arn_08_settings = 0x802402C0; // type:data rom:0xBF4A60 arn_08_80240300 = 0x80240300; // type:data rom:0xBF4AA0 @@ -20447,7 +20444,7 @@ D_802437A0_BFD840 = 0x802437A0; // type:data rom:0xBFD840 D_802437B0_BFD850 = 0x802437B0; // type:data rom:0xBFD850 D_802437BC_BFD85C = 0x802437BC; // type:data rom:0xBFD85C dgb_01_func_80240000_BFD880 = 0x80240000; // type:func rom:0xBFD880 -dgb_01_SetEntityFlags100000 = 0x80240040; // type:func rom:0xBFD8C0 +dgb_01_RemovePadlock = 0x80240040; // type:func rom:0xBFD8C0 dgb_01_GetEntityPosition = 0x80240074; // type:func rom:0xBFD8F4 dgb_01_FlyingAI_WanderInit = 0x80240120; // type:func rom:0xBFD9A0 dgb_01_FlyingAI_Wander = 0x802402D0; // type:func rom:0xBFDB50 @@ -21212,7 +21209,7 @@ dgb_02_npcGroupList_802425C8 = 0x802425C8; // type:data rom:0xC31168 D_80242610_C311B0 = 0x80242610; // type:data rom:0xC311B0 dgb_03_UnkFunc11 = 0x80240000; // type:func rom:0xC314E0 dgb_03_UnkFunc12 = 0x802400BC; // type:func rom:0xC3159C -dgb_03_SetEntityFlags100000 = 0x80240170; // type:func rom:0xC31650 +dgb_03_RemovePadlock = 0x80240170; // type:func rom:0xC31650 dgb_03_GetEntityPosition = 0x802401A4; // type:func rom:0xC31684 dgb_03_MeleeHitbox_30 = 0x80240250; // type:func rom:0xC31730 dgb_03_MeleeHitbox_31 = 0x802402BC; // type:func rom:0xC3179C @@ -21729,7 +21726,7 @@ dgb_15_PatrolNoAttackAI_15 = 0x802413A4; // type:func rom:0xC508B4 dgb_15_PatrolNoAttackAI_Main = 0x80241464; // type:func rom:0xC50974 dgb_15_UnkFunc1 = 0x80241760; // type:func rom:0xC50C70 dgb_15_GetEntityPosition = 0x80241790; // type:func rom:0xC50CA0 -dgb_15_SetEntityFlags100000 = 0x80241830; // type:func rom:0xC50D40 +dgb_15_RemovePadlock = 0x80241830; // type:func rom:0xC50D40 dgb_15_entryList = 0x80241870; // type:data rom:0xC50D80 dgb_15_settings = 0x802418A0; // type:data rom:0xC50DB0 dgb_15_802418E0 = 0x802418E0; // type:data rom:0xC50DF0 @@ -22351,7 +22348,7 @@ flo_00_PostChapter6StatUpdate = 0x80240ED0; // type:func rom:0xC9EDF0 flo_00_func_80240F10_C9EE30 = 0x80240F10; // type:func rom:0xC9EE30 flo_00_func_80240F80_C9EEA0 = 0x80240F80; // type:func rom:0xC9EEA0 flo_00_func_802410B4_C9EFD4 = 0x802410B4; // type:func rom:0xC9EFD4 -flo_00_UnkFloatFunc = 0x802411EC; // type:func rom:0xC9F10C +flo_00_CosInterpMinMax = 0x802411EC; // type:func rom:0xC9F10C flo_00_SyncStatusMenu = 0x8024137C; // type:func rom:0xC9F29C flo_00_func_8024139C_C9F2BC = 0x8024139C; // type:func rom:0xC9F2BC flo_00_func_802413BC_C9F2DC = 0x802413BC; // type:func rom:0xC9F2DC @@ -23145,7 +23142,7 @@ flo_18_UpdateTexturePanSmooth = 0x80240000; // type:func rom:0xCDC6A0 flo_18_UpdateTexturePanStepped = 0x80240124; // type:func rom:0xCDC7C4 flo_18_func_8024030C_CDC9AC = 0x8024030C; // type:func rom:0xCDC9AC flo_18_func_80240340_CDC9E0 = 0x80240340; // type:func rom:0xCDC9E0 -flo_18_UnkFloatFunc = 0x80240394; // type:func rom:0xCDCA34 +flo_18_CosInterpMinMax = 0x80240394; // type:func rom:0xCDCA34 flo_18_UnkFunc42 = 0x80240530; // type:func rom:0xCDCBD0 flo_18_foliage_setup_shear_mtx = 0x80240590; // type:func rom:0xCDCC30 flo_18_TransformFoliage = 0x80240600; // type:func rom:0xCDCCA0 @@ -23223,7 +23220,7 @@ flo_19_func_802404D0_CE3BC0 = 0x802404D0; // type:func rom:0xCE3BC0 flo_19_func_80240540_CE3C30 = 0x80240540; // type:func rom:0xCE3C30 flo_19_func_80240660_CE3D50 = 0x80240660; // type:func rom:0xCE3D50 flo_19_func_80240784_CE3E74 = 0x80240784; // type:func rom:0xCE3E74 -flo_19_UnkFloatFunc = 0x802407B0; // type:func rom:0xCE3EA0 +flo_19_CosInterpMinMax = 0x802407B0; // type:func rom:0xCE3EA0 flo_19_entryList = 0x80240940; // type:data rom:0xCE4030 flo_19_settings = 0x80240980; // type:data rom:0xCE4070 flo_19_802409C0 = 0x802409C0; // type:data rom:0xCE40B0 @@ -23255,7 +23252,7 @@ flo_21_StarSpiritEffectFunc6 = 0x80240708; // type:func rom:0xCE6E08 flo_21_UpdateTexturePanSmooth = 0x802407F4; // type:func rom:0xCE6EF4 flo_21_UpdateTexturePanStepped = 0x80240918; // type:func rom:0xCE7018 flo_21_func_80240B00_CE7200 = 0x80240B00; // type:func rom:0xCE7200 -flo_21_UnkFloatFunc = 0x80240B40; // type:func rom:0xCE7240 +flo_21_CosInterpMinMax = 0x80240B40; // type:func rom:0xCE7240 flo_21_UnsetCamera0MoveFlag1 = 0x80240CD0; // type:func rom:0xCE73D0 flo_21_entryList = 0x80240CF0; // type:data rom:0xCE73F0 flo_21_settings = 0x80240D00; // type:data rom:0xCE7400 @@ -23751,7 +23748,7 @@ D_80242C30_D3A430 = 0x80242C30; // type:data rom:0xD3A430 sam_11_get_tattle = 0x80240000; // type:func rom:0xD3A5D0 sam_11_foliage_setup_shear_mtx = 0x80240040; // type:func rom:0xD3A610 sam_11_TransformFoliage = 0x802400B0; // type:func rom:0xD3A680 -sam_11_SetEntityFlags100000 = 0x80240280; // type:func rom:0xD3A850 +sam_11_RemovePadlock = 0x80240280; // type:func rom:0xD3A850 sam_11_GetEntityPosition = 0x802402B4; // type:func rom:0xD3A884 func_80240360_D3A930 = 0x80240360; // type:func rom:0xD3A930 func_8024052C_D3AAFC = 0x8024052C; // type:func rom:0xD3AAFC @@ -23860,7 +23857,7 @@ pra_02_SetEntityPositionF = 0x80241310; // type:func rom:0xD51300 pra_02_GetEntityPosition = 0x802413D8; // type:func rom:0xD513C8 pra_02_UnkFunc44 = 0x80241478; // type:func rom:0xD51468 func_802414A8_D51498 = 0x802414A8; // type:func rom:0xD51498 -pra_02_SetEntityFlags100000 = 0x80241588; // type:func rom:0xD51578 +pra_02_RemovePadlock = 0x80241588; // type:func rom:0xD51578 dup_pra_02_GetEntityPosition = 0x802415BC; // type:func rom:0xD515AC D_80242ACC_D52ABC = 0x80242ACC; // type:data rom:0xD52ABC D_80242AD0_D52AC0 = 0x80242AD0; // type:data rom:0xD52AC0 @@ -24246,7 +24243,7 @@ pra_34_EnablePartnerReflection = 0x80240D3C; // type:func rom:0xD8C0EC pra_34_worker_reflect_partner_all = 0x80240E84; // type:func rom:0xD8C234 pra_34_worker_reflect_partner_floor = 0x80240EB8; // type:func rom:0xD8C268 pra_34_worker_reflect_partner_wall = 0x80240EEC; // type:func rom:0xD8C29C -pra_34_SetEntityFlags100000 = 0x80240F20; // type:func rom:0xD8C2D0 +pra_34_RemovePadlock = 0x80240F20; // type:func rom:0xD8C2D0 pra_34_GetEntityPosition = 0x80240F54; // type:func rom:0xD8C304 pra_35_SetGameStatusUnk84_1 = 0x80240000; // type:func rom:0xD8D250 pra_35_reflection_unk_resolve_anim = 0x80240020; // type:func rom:0xD8D270 @@ -24439,7 +24436,7 @@ omo_03_CompareFloats = 0x80240104; // type:func rom:0xDA5344 omo_03_UnkBufferFunc = 0x80240188; // type:func rom:0xDA53C8 omo_03_SetPlayerStatusPosYaw = 0x8024020C; // type:func rom:0xDA544C omo_03_SetNpcPosYaw = 0x802402B0; // type:func rom:0xDA54F0 -omo_03_UnkFloatFunc = 0x802403A8; // type:func rom:0xDA55E8 +omo_03_CosInterpMinMax = 0x802403A8; // type:func rom:0xDA55E8 omo_03_IsAOrBPressed = 0x80240538; // type:func rom:0xDA5778 omo_03_UpdateTexturePanSmooth = 0x8024057C; // type:func rom:0xDA57BC omo_03_UpdateTexturePanStepped = 0x802406A0; // type:func rom:0xDA58E0 @@ -24521,7 +24518,7 @@ omo_06_CompareFloats = 0x802400E4; // type:func rom:0xDB79F4 omo_06_UnkBufferFunc = 0x80240168; // type:func rom:0xDB7A78 omo_06_SetPlayerStatusPosYaw = 0x802401EC; // type:func rom:0xDB7AFC omo_06_SetNpcPosYaw = 0x80240290; // type:func rom:0xDB7BA0 -omo_06_UnkFloatFunc = 0x80240388; // type:func rom:0xDB7C98 +omo_06_CosInterpMinMax = 0x80240388; // type:func rom:0xDB7C98 omo_06_IsAOrBPressed = 0x80240518; // type:func rom:0xDB7E28 omo_06_UpdateTexturePanSmooth = 0x8024055C; // type:func rom:0xDB7E6C omo_06_UpdateTexturePanStepped = 0x80240680; // type:func rom:0xDB7F90 @@ -24590,7 +24587,7 @@ omo_08_CompareFloats = 0x802400E4; // type:func rom:0xDC44B4 omo_08_UnkBufferFunc = 0x80240168; // type:func rom:0xDC4538 omo_08_SetPlayerStatusPosYaw = 0x802401EC; // type:func rom:0xDC45BC omo_08_SetNpcPosYaw = 0x80240290; // type:func rom:0xDC4660 -omo_08_UnkFloatFunc = 0x80240388; // type:func rom:0xDC4758 +omo_08_CosInterpMinMax = 0x80240388; // type:func rom:0xDC4758 omo_08_IsAOrBPressed = 0x80240518; // type:func rom:0xDC48E8 omo_08_UpdateTexturePanSmooth = 0x8024055C; // type:func rom:0xDC492C omo_08_UpdateTexturePanStepped = 0x80240680; // type:func rom:0xDC4A50 @@ -24670,7 +24667,7 @@ omo_10_CompareFloats = 0x802400E4; // type:func rom:0xDD7A94 omo_10_UnkBufferFunc = 0x80240168; // type:func rom:0xDD7B18 omo_10_SetPlayerStatusPosYaw = 0x802401EC; // type:func rom:0xDD7B9C omo_10_SetNpcPosYaw = 0x80240290; // type:func rom:0xDD7C40 -omo_10_UnkFloatFunc = 0x80240388; // type:func rom:0xDD7D38 +omo_10_CosInterpMinMax = 0x80240388; // type:func rom:0xDD7D38 omo_10_IsAOrBPressed = 0x80240518; // type:func rom:0xDD7EC8 omo_10_UpdateTexturePanSmooth = 0x8024055C; // type:func rom:0xDD7F0C omo_10_UpdateTexturePanStepped = 0x80240680; // type:func rom:0xDD8030 @@ -24753,7 +24750,7 @@ omo_16_CompareFloats = 0x802400E4; // type:func rom:0xDEBFB4 omo_16_UnkBufferFunc = 0x80240168; // type:func rom:0xDEC038 omo_16_SetPlayerStatusPosYaw = 0x802401EC; // type:func rom:0xDEC0BC omo_16_SetNpcPosYaw = 0x80240290; // type:func rom:0xDEC160 -omo_16_UnkFloatFunc = 0x80240388; // type:func rom:0xDEC258 +omo_16_CosInterpMinMax = 0x80240388; // type:func rom:0xDEC258 omo_16_IsAOrBPressed = 0x80240518; // type:func rom:0xDEC3E8 func_8024055C_DEC42C = 0x8024055C; // type:func rom:0xDEC42C omo_17_UnsetCamera0MoveFlag1 = 0x80240000; // type:func rom:0xDEEEA0 @@ -24762,7 +24759,7 @@ omo_17_CompareFloats = 0x802400E4; // type:func rom:0xDEEF84 omo_17_UnkBufferFunc = 0x80240168; // type:func rom:0xDEF008 omo_17_SetPlayerStatusPosYaw = 0x802401EC; // type:func rom:0xDEF08C omo_17_SetNpcPosYaw = 0x80240290; // type:func rom:0xDEF130 -omo_17_UnkFloatFunc = 0x80240388; // type:func rom:0xDEF228 +omo_17_CosInterpMinMax = 0x80240388; // type:func rom:0xDEF228 omo_17_IsAOrBPressed = 0x80240518; // type:func rom:0xDEF3B8 omo_17_ShyGuyWanderAI_14 = 0x80240560; // type:func rom:0xDEF400 omo_17_ShyGuyWanderAI_15 = 0x802405D0; // type:func rom:0xDEF470 @@ -25388,7 +25385,7 @@ EB8E90_PostChapter6StatUpdate = 0x80240EFC; // type:func rom:0xEB9D4C func_80240F40_EB9D90 = 0x80240F40; // type:func rom:0xEB9D90 func_80240FB0_EB9E00 = 0x80240FB0; // type:func rom:0xEB9E00 func_802410E4_EB9F34 = 0x802410E4; // type:func rom:0xEB9F34 -EB9D90_UnkFloatFunc = 0x8024121C; // type:func rom:0xEBA06C +EB9D90_CosInterpMinMax = 0x8024121C; // type:func rom:0xEBA06C EB9D90_SyncStatusMenu = 0x802413AC; // type:func rom:0xEBA1FC func_802413CC_EBA21C = 0x802413CC; // type:func rom:0xEBA21C func_802413EC_EBA23C = 0x802413EC; // type:func rom:0xEBA23C @@ -25671,7 +25668,7 @@ EF7A80_UpdateTexturePanSmooth = 0x80240000; // type:func rom:0xEF7A80 EF7A80_UpdateTexturePanStepped = 0x80240124; // type:func rom:0xEF7BA4 EF7A80_DeadUnkFunc1 = 0x8024030C; // type:func rom:0xEF7D8C func_80240340_EF7DC0 = 0x80240340; // type:func rom:0xEF7DC0 -EF7A80_UnkFloatFunc = 0x80240394; // type:func rom:0xEF7E14 +EF7A80_CosInterpMinMax = 0x80240394; // type:func rom:0xEF7E14 EF7FB0_UnkFunc42 = 0x80240530; // type:func rom:0xEF7FB0 EF8010_foliage_setup_shear_mtx = 0x80240590; // type:func rom:0xEF8010 EF8010_TransformFoliage = 0x80240600; // type:func rom:0xEF8080 @@ -25683,7 +25680,7 @@ func_802404D0_EFEFD0 = 0x802404D0; // type:func rom:0xEFEFD0 func_80240540_EFF040 = 0x80240540; // type:func rom:0xEFF040 func_80240660_EFF160 = 0x80240660; // type:func rom:0xEFF160 func_80240784_EFF284 = 0x80240784; // type:func rom:0xEFF284 -EFEB00_UnkFloatFunc = 0x802407B0; // type:func rom:0xEFF2B0 +EFEB00_CosInterpMinMax = 0x802407B0; // type:func rom:0xEFF2B0 D_00E32420 = 0xE32420; // type:data D_00E35670 = 0xE35670; // type:data D_00E38890 = 0xE38890; // type:data diff --git a/ver/us/undefined_syms.txt b/ver/us/undefined_syms.txt index 78f2ec7601..987f4ea4ca 100644 --- a/ver/us/undefined_syms.txt +++ b/ver/us/undefined_syms.txt @@ -766,6 +766,9 @@ end_01_CreditsDataPtr = 0x8024A2C4; D_80242568_filemenu = 0x80242568; D_80243390_omo_12 = 0x80243390; D_8024F580_hos_05 = 0x8024F580; +osr_00_802437C0 = 0x802437C0; +mim_03_802424E0 = 0x802424E0; +sam_04_80245210 = 0x80245210; // incorrectly-identified vtx addresses for tst_13 D_802423D0 = 0x802423D0;