From 1c470c92e5d9cd93f80aded2e0d4cb32680bfd55 Mon Sep 17 00:00:00 2001 From: HailSanta <53960937+HailSanta@users.noreply.github.com> Date: Thu, 5 Jan 2023 02:04:03 -0500 Subject: [PATCH] area osr (#903) * 0/1 * ~2 * 2 * 4 * done * ws Co-authored-by: HailSanta --- include/enums.h | 6 + src/17D6A0.c | 2544 ++++++++--------- src/battle/partner/bombette.c | 2 +- src/world/area_dro/dro_02/dro_02.h | 3 - src/world/area_dro/dro_02/dro_02_5_npc.c | 62 +- src/world/area_dro/dro_02/npc_moustafa.c | 4 +- src/world/area_flo/flo_14/flo_14_3_bubbles.c | 2 +- src/world/area_flo/flo_21/flo_21_4_npc.c | 2 +- src/world/area_hos/hos_10/A3F740.c | 2 +- src/world/area_jan/jan_00/jan_00_2_npc.c | 2 +- src/world/area_kkj/kkj_03/AC9710.c | 2 +- src/world/area_kkj/kkj_13/AD5ED0.c | 2 +- src/world/area_kkj/kkj_23/B02880.c | 2 +- src/world/area_kkj/kkj_25/B06A00.c | 2 +- src/world/area_kpa/kpa_95/kpa_95_4_npc.c | 53 +- src/world/area_mac/mac_04/npc_twink.inc.c | 4 +- src/world/area_osr/osr.h | 47 +- src/world/area_osr/osr_00/AAC830.c | 16 - src/world/area_osr/osr_00/AACBB0.c | 40 - src/world/area_osr/osr_00/osr_00.h | 30 +- src/world/area_osr/osr_00/osr_00_0_header.c | 16 + src/world/area_osr/osr_00/osr_00_1_music.c | 18 + src/world/area_osr/osr_00/osr_00_2_main.c | 91 + .../area_osr/osr_00/osr_00_3_npc_intro.c | 18 + .../area_osr/osr_00/osr_00_4_npc_epilogue.c | 457 +++ src/world/area_osr/osr_00/osr_00_5_scenes.c | 92 + src/world/area_osr/osr_01/AAFFF0.c | 10 - src/world/area_osr/osr_01/AB0040.c | 4 - src/world/area_osr/osr_01/AB0350.c | 77 - src/world/area_osr/osr_01/osr_01.h | 15 +- src/world/area_osr/osr_01/osr_01_0_header.c | 23 + src/world/area_osr/osr_01/osr_01_1_music.c | 24 + src/world/area_osr/osr_01/osr_01_2_main.c | 61 + src/world/area_osr/osr_01/osr_01_3_npc.c | 117 + src/world/area_osr/osr_02/AB2170.c | 8 - src/world/area_osr/osr_02/AB2190.c | 8 - src/world/area_osr/osr_02/AB21D0.c | 23 - src/world/area_osr/osr_02/AB2290.c | 3 - src/world/area_osr/osr_02/osr_02.h | 35 +- src/world/area_osr/osr_02/osr_02_0_header.c | 19 + src/world/area_osr/osr_02/osr_02_1_main.c | 131 + src/world/area_osr/osr_02/osr_02_2_entity.c | 16 + src/world/area_osr/osr_02/osr_02_3_npc.c | 695 +++++ .../area_osr/osr_02/osr_02_4_npc_peach.c | 91 + src/world/area_osr/osr_03/AB6290.c | 12 - src/world/area_osr/osr_03/AB62B0.c | 85 - src/world/area_osr/osr_03/osr_03.h | 30 +- src/world/area_osr/osr_03/osr_03_0_header.c | 23 + src/world/area_osr/osr_03/osr_03_1_main.c | 91 + src/world/area_osr/osr_03/osr_03_2_npc.c | 65 + src/world/area_osr/osr_03/osr_03_3_intro.c | 319 +++ src/world/area_osr/osr_03/osr_03_4_starship.c | 98 + .../area_osr/osr_03/osr_03_5_interlude.c | 160 ++ src/world/area_osr/osr_03/osr_03_6_ending.c | 191 ++ src/world/area_osr/osr_04/AB92B0.c | 17 - src/world/area_osr/osr_04/osr_04.h | 13 +- src/world/area_osr/osr_04/osr_04_0_header.c | 12 + src/world/area_osr/osr_04/osr_04_1_main.c | 40 + src/world/area_osr/osr_04/osr_04_2_assault.c | 581 ++++ src/world/area_trd/trd_05/trd_05_3_trap.c | 2 +- src/world/common/atomic/UnkFunc27.inc.c | 4 +- src/world/common/enemy/complete/Clubba.h | 36 + src/world/common/enemy/complete/Clubba.inc.c | 7 + src/world/common/npc/Mouser.h | 45 +- src/world/common/npc/Penguin.h | 71 + src/world/common/npc/Penguin.inc.c | 8 + src/world/common/npc/Yoshi.h | 132 + src/world/common/npc/Yoshi.inc.c | 7 + src/world/common/npc/YoshiKid.h | 110 + src/world/common/npc/YoshiKid.inc.c | 7 + ...nc.c => SetPlayerSpriteSet2_MapInit.inc.c} | 2 +- .../dead/area_flo/flo_14/flo_14_3_bubbles.c | 2 +- src/world/entrances.h | 1 + src/world/world.c | 11 +- .../data/world/area_osr/osr_00/AACFC0.data.s | 30 - .../data/world/area_osr/osr_00/AAD790.data.s | 162 -- .../data/world/area_osr/osr_01/AB0AB0.data.s | 9 - .../data/world/area_osr/osr_01/AB0C10.data.s | 18 - .../data/world/area_osr/osr_01/AB1150.data.s | 45 - .../data/world/area_osr/osr_02/AB22C0.data.s | 24 - .../data/world/area_osr/osr_02/AB2B00.data.s | 6 - .../data/world/area_osr/osr_02/AB2BB0.data.s | 96 - .../data/world/area_osr/osr_02/AB5D40.data.s | 21 - .../data/world/area_osr/osr_03/AB6610.data.s | 30 - .../data/world/area_osr/osr_03/AB6DB0.data.s | 24 - .../data/world/area_osr/osr_03/AB7E20.data.s | 9 - .../data/world/area_osr/osr_03/AB8350.data.s | 15 - .../data/world/area_osr/osr_03/AB8B10.data.s | 12 - .../data/world/area_osr/osr_04/AB9370.data.s | 15 - .../data/world/area_osr/osr_04/AB95D0.data.s | 45 - .../osr_01/AB0350/func_802406A4_AB0694.s | 28 - ver/us/splat.yaml | 63 +- ver/us/symbol_addrs.txt | 14 +- 93 files changed, 5370 insertions(+), 2357 deletions(-) delete mode 100644 src/world/area_osr/osr_00/AAC830.c delete mode 100644 src/world/area_osr/osr_00/AACBB0.c create mode 100644 src/world/area_osr/osr_00/osr_00_0_header.c create mode 100644 src/world/area_osr/osr_00/osr_00_1_music.c create mode 100644 src/world/area_osr/osr_00/osr_00_2_main.c create mode 100644 src/world/area_osr/osr_00/osr_00_3_npc_intro.c create mode 100644 src/world/area_osr/osr_00/osr_00_4_npc_epilogue.c create mode 100644 src/world/area_osr/osr_00/osr_00_5_scenes.c delete mode 100644 src/world/area_osr/osr_01/AAFFF0.c delete mode 100644 src/world/area_osr/osr_01/AB0040.c delete mode 100644 src/world/area_osr/osr_01/AB0350.c create mode 100644 src/world/area_osr/osr_01/osr_01_0_header.c create mode 100644 src/world/area_osr/osr_01/osr_01_1_music.c create mode 100644 src/world/area_osr/osr_01/osr_01_2_main.c create mode 100644 src/world/area_osr/osr_01/osr_01_3_npc.c delete mode 100644 src/world/area_osr/osr_02/AB2170.c delete mode 100644 src/world/area_osr/osr_02/AB2190.c delete mode 100644 src/world/area_osr/osr_02/AB21D0.c delete mode 100644 src/world/area_osr/osr_02/AB2290.c create mode 100644 src/world/area_osr/osr_02/osr_02_0_header.c create mode 100644 src/world/area_osr/osr_02/osr_02_1_main.c create mode 100644 src/world/area_osr/osr_02/osr_02_2_entity.c create mode 100644 src/world/area_osr/osr_02/osr_02_3_npc.c create mode 100644 src/world/area_osr/osr_02/osr_02_4_npc_peach.c delete mode 100644 src/world/area_osr/osr_03/AB6290.c delete mode 100644 src/world/area_osr/osr_03/AB62B0.c create mode 100644 src/world/area_osr/osr_03/osr_03_0_header.c create mode 100644 src/world/area_osr/osr_03/osr_03_1_main.c create mode 100644 src/world/area_osr/osr_03/osr_03_2_npc.c create mode 100644 src/world/area_osr/osr_03/osr_03_3_intro.c create mode 100644 src/world/area_osr/osr_03/osr_03_4_starship.c create mode 100644 src/world/area_osr/osr_03/osr_03_5_interlude.c create mode 100644 src/world/area_osr/osr_03/osr_03_6_ending.c delete mode 100644 src/world/area_osr/osr_04/AB92B0.c create mode 100644 src/world/area_osr/osr_04/osr_04_0_header.c create mode 100644 src/world/area_osr/osr_04/osr_04_1_main.c create mode 100644 src/world/area_osr/osr_04/osr_04_2_assault.c create mode 100644 src/world/common/enemy/complete/Clubba.h create mode 100644 src/world/common/enemy/complete/Clubba.inc.c create mode 100644 src/world/common/npc/Penguin.h create mode 100644 src/world/common/npc/Penguin.inc.c create mode 100644 src/world/common/npc/Yoshi.h create mode 100644 src/world/common/npc/Yoshi.inc.c create mode 100644 src/world/common/npc/YoshiKid.h create mode 100644 src/world/common/npc/YoshiKid.inc.c rename src/world/common/todo/{SetPlayerSpriteSet2.inc.c => SetPlayerSpriteSet2_MapInit.inc.c} (62%) delete mode 100644 ver/us/asm/data/world/area_osr/osr_00/AACFC0.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_00/AAD790.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_01/AB0AB0.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_01/AB0C10.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_01/AB1150.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_02/AB22C0.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_02/AB2B00.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_02/AB2BB0.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_02/AB5D40.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_03/AB6610.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_03/AB6DB0.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_03/AB7E20.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_03/AB8350.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_03/AB8B10.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_04/AB9370.data.s delete mode 100644 ver/us/asm/data/world/area_osr/osr_04/AB95D0.data.s delete mode 100644 ver/us/asm/nonmatchings/world/area_osr/osr_01/AB0350/func_802406A4_AB0694.s diff --git a/include/enums.h b/include/enums.h index 342c294413..cba30fa447 100644 --- a/include/enums.h +++ b/include/enums.h @@ -2912,6 +2912,12 @@ enum CookingIngredients { PEACH_COOKING_CAKE_WITH_BERRIES = 0x12, }; +enum PeachDisguises { + PEACH_DISGUISE_1 = 1, + PEACH_DISGUISE_2 = 2, + PEACH_DISGUISE_CLUBBA = 3, +}; + // Requires decimals enum NpcIDs { NPC_SELF = -1, diff --git a/src/17D6A0.c b/src/17D6A0.c index 824c5a4d4a..3d2979b611 100644 --- a/src/17D6A0.c +++ b/src/17D6A0.c @@ -288,1489 +288,1489 @@ s32 D_80281454[] = { 0x78, 0x93, 0x99, 0xB2, -1 }; ActorSounds bActorSoundTable[ACTOR_TYPE_COUNT] = { [ACTOR_TYPE_RED_GOOMBA] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { SOUND_20DD, SOUND_20DD }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { SOUND_20DD, SOUND_20DD }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_RED_PARAGOOMBA] = { - .walk = { SOUND_20DF, SOUND_20DF }, - .fly = { SOUND_20DF, SOUND_20DF }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DF, SOUND_20DF }, + .fly = { SOUND_20DF, SOUND_20DF }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GLOOMBA] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { SOUND_20DD, SOUND_20DD }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { SOUND_20DD, SOUND_20DD }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_PARAGLOOMBA] = { - .walk = { SOUND_20DF, SOUND_20DF }, - .fly = { SOUND_20DF, SOUND_20DF }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DF, SOUND_20DF }, + .fly = { SOUND_20DF, SOUND_20DF }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SPIKED_GLOOMBA] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { SOUND_20DD, SOUND_20DD }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { SOUND_20DD, SOUND_20DD }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_DARK_KOOPA] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_DARK_PARATROOPA] = { - .walk = { SOUND_20DF, SOUND_20DF }, - .fly = { SOUND_20DF, SOUND_20DF }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DF, SOUND_20DF }, + .fly = { SOUND_20DF, SOUND_20DF }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GOOMBA] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { SOUND_20DD, SOUND_20DD }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { SOUND_20DD, SOUND_20DD }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_PARAGOOMBA] = { - .walk = { SOUND_20DF, SOUND_20DF }, - .fly = { SOUND_20DF, SOUND_20DF }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DF, SOUND_20DF }, + .fly = { SOUND_20DF, SOUND_20DF }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SPIKED_GOOMBA] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { SOUND_20DD, SOUND_20DD }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { SOUND_20DD, SOUND_20DD }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FUZZY] = { - .walk = { SOUND_331, SOUND_331 }, - .fly = { SOUND_331, SOUND_331 }, - .jump = SOUND_331, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_331, SOUND_331 }, + .fly = { SOUND_331, SOUND_331 }, + .jump = SOUND_331, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_KOOPA_TROOPA] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_PARATROOPA] = { - .walk = { SOUND_20DF, SOUND_20DF }, - .fly = { SOUND_20DF, SOUND_20DF }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DF, SOUND_20DF }, + .fly = { SOUND_20DF, SOUND_20DF }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOB_OMB] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOB_OMB_DUP] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BULLET_BILL] = { - .walk = { SOUND_2C9, SOUND_2C9 }, - .fly = { SOUND_2C9, SOUND_2C9 }, - .jump = SOUND_2C9, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_2C9, SOUND_2C9 }, + .fly = { SOUND_2C9, SOUND_2C9 }, + .jump = SOUND_2C9, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BILL_BLASTER] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_CLEFT] = { - .walk = { SOUND_20D0, SOUND_20D0 }, - .fly = { SOUND_20D0, SOUND_20D0 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20D0, SOUND_20D0 }, + .fly = { SOUND_20D0, SOUND_20D0 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_MONTY_MOLE] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BANDIT] = { - .walk = { SOUND_20C1, SOUND_20C1 }, - .fly = { SOUND_20C1, SOUND_20C1 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C1, SOUND_20C1 }, + .fly = { SOUND_20C1, SOUND_20C1 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_POKEY] = { - .walk = { SOUND_343, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_343, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_POKEY_MUMMY] = { - .walk = { SOUND_343, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_343, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SWOOPER] = { - .walk = { SOUND_351, SOUND_351 }, - .fly = { SOUND_351, SOUND_351 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_351, SOUND_351 }, + .fly = { SOUND_351, SOUND_351 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BUZZY_BEETLE] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { SOUND_20DD, SOUND_20DD }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { SOUND_20DD, SOUND_20DD }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_STONE_CHOMP] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_PIRANHA_PLANT] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FOREST_FUZZY] = { - .walk = { SOUND_331, SOUND_331 }, - .fly = { SOUND_331, SOUND_331 }, - .jump = SOUND_331, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_331, SOUND_331 }, + .fly = { SOUND_331, SOUND_331 }, + .jump = SOUND_331, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_HYPER_GOOMBA] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { SOUND_20DD, SOUND_20DD }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { SOUND_20DD, SOUND_20DD }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_HYPER_PARAGOOMBA] = { - .walk = { SOUND_20DF, SOUND_20DF }, - .fly = { SOUND_20DF, SOUND_20DF }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DF, SOUND_20DF }, + .fly = { SOUND_20DF, SOUND_20DF }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_HYPER_CLEFT] = { - .walk = { SOUND_20D0, SOUND_20D0 }, - .fly = { SOUND_20D0, SOUND_20D0 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20D0, SOUND_20D0 }, + .fly = { SOUND_20D0, SOUND_20D0 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_CLUBBA] = { - .walk = { SOUND_20C4, SOUND_20C4 }, - .fly = { SOUND_20C4, SOUND_20C4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C4, SOUND_20C4 }, + .fly = { SOUND_20C4, SOUND_20C4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SHY_GUY] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GROOVE_GUY] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SKY_GUY] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_MEDI_GUY] = { - .walk = { NULL, NULL }, - .fly = { SOUND_380, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { SOUND_380, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_PYRO_GUY] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SPY_GUY] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FUZZIPEDE] = { - .walk = { SOUND_20D9, SOUND_20D9 }, - .fly = { SOUND_20D9, SOUND_20D9 }, - .jump = SOUND_20D9, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20D9, SOUND_20D9 }, + .fly = { SOUND_20D9, SOUND_20D9 }, + .jump = SOUND_20D9, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_HURT_PLANT] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_M_BUSH] = { - .walk = { SOUND_20C6, SOUND_20C6 }, - .fly = { SOUND_20C6, SOUND_20C6 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C6, SOUND_20C6 }, + .fly = { SOUND_20C6, SOUND_20C6 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_AQUA_FUZZY] = { - .walk = { SOUND_331, SOUND_331 }, - .fly = { SOUND_331, SOUND_331 }, - .jump = SOUND_331, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_331, SOUND_331 }, + .fly = { SOUND_331, SOUND_331 }, + .jump = SOUND_331, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_JUNGLE_FUZZY] = { - .walk = { SOUND_331, SOUND_331 }, - .fly = { SOUND_331, SOUND_331 }, - .jump = SOUND_331, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_331, SOUND_331 }, + .fly = { SOUND_331, SOUND_331 }, + .jump = SOUND_331, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SPEAR_GUY] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LAVA_BUBBLE] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SPIKE_TOP] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { SOUND_20DD, SOUND_20DD }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { SOUND_20DD, SOUND_20DD }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_PUTRID_PIRANHA] = { - .walk = { SOUND_3CE, SOUND_3CE }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { SOUND_3CE, SOUND_3CE }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LAKITU] = { - .walk = { SOUND_295, SOUND_295 }, - .fly = { SOUND_295, SOUND_295 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { -5, -5 } - }, + .walk = { SOUND_295, SOUND_295 }, + .fly = { SOUND_295, SOUND_295 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { -5, -5 } + }, [ACTOR_TYPE_SPINY] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_MONTY_MOLE_BOSS] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BZZAP] = { - .walk = { SOUND_357, NULL }, - .fly = { SOUND_357, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_357, NULL }, + .fly = { SOUND_357, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_CRAZEE_DAYZEE] = { - .walk = { SOUND_2D6, SOUND_2D6 }, - .fly = { SOUND_2D6, SOUND_2D6 }, - .jump = SOUND_2D5, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_2D6, SOUND_2D6 }, + .fly = { SOUND_2D6, SOUND_2D6 }, + .jump = SOUND_2D5, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_AMAZY_DAYZEE] = { - .walk = { SOUND_2D6, SOUND_2D6 }, - .fly = { SOUND_2D6, SOUND_2D6 }, - .jump = SOUND_2D5, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_2D6, SOUND_2D6 }, + .fly = { SOUND_2D6, SOUND_2D6 }, + .jump = SOUND_2D5, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_RUFF_PUFF] = { - .walk = { SOUND_295, NULL }, - .fly = { SOUND_295, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_295, NULL }, + .fly = { SOUND_295, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SPIKE] = { - .walk = { SOUND_295, NULL }, - .fly = { SOUND_295, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_295, NULL }, + .fly = { SOUND_295, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GULPIT] = { - .walk = { SOUND_20C4, SOUND_20C4 }, - .fly = { SOUND_20C4, SOUND_20C4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C4, SOUND_20C4 }, + .fly = { SOUND_20C4, SOUND_20C4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GULPIT_ROCKS] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_WHITE_CLUBBA] = { - .walk = { SOUND_20C4, SOUND_20C4 }, - .fly = { SOUND_20C4, SOUND_20C4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C4, SOUND_20C4 }, + .fly = { SOUND_20C4, SOUND_20C4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FROST_PIRANHA] = { - .walk = { SOUND_3CE, SOUND_3CE }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_3CE, SOUND_3CE }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SWOOPULA] = { - .walk = { SOUND_351, SOUND_351 }, - .fly = { SOUND_351, SOUND_351 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_351, SOUND_351 }, + .fly = { SOUND_351, SOUND_351 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_DUPLIGHOST] = { - .walk = { SOUND_2CA, SOUND_2CA }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_2CA, SOUND_2CA }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GHOST_GOOMBARIO] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GHOST_KOOPER] = { - .walk = { SOUND_100, SOUND_100 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_100, SOUND_100 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GHOST_BOMBETTE] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GHOST_PARAKARRY] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GHOST_BOW] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GHOST_WATT] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GHOST_SUSHIE] = { - .walk = { SOUND_29A, SOUND_29A }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_29A, SOUND_29A }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GHOST_LAKILESTER] = { - .walk = { SOUND_295, SOUND_295 }, - .fly = { SOUND_295, SOUND_295 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { -5, -5 } - }, + .walk = { SOUND_295, SOUND_295 }, + .fly = { SOUND_295, SOUND_295 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { -5, -5 } + }, [ACTOR_TYPE_ALBINO_DINO] = { - .walk = { SOUND_30B, SOUND_2FD }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_30B, SOUND_2FD }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_EMBER] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BONY_BEETLE] = { - .walk = { SOUND_20CD, SOUND_20CD }, - .fly = { SOUND_20CD, SOUND_20CD }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20CD, SOUND_20CD }, + .fly = { SOUND_20CD, SOUND_20CD }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_DRY_BONES] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_DRY_BONES2] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOMBSHELL_BLASTER] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOMBSHELL_BILL] = { - .walk = { SOUND_2C9, SOUND_2C9 }, - .fly = { SOUND_2C9, SOUND_2C9 }, - .jump = SOUND_2C9, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_2C9, SOUND_2C9 }, + .fly = { SOUND_2C9, SOUND_2C9 }, + .jump = SOUND_2C9, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_HAMMER_BROS] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_KOOPATROL] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FLYING_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_MAGICLONE] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FLYING_MAGICLONE] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_RED_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FLYING_RED_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GREEN_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FLYING_GREEN_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_YELLOW_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FLYING_YELLOW_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GRAY_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FLYING_GRAY_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_WHITE_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FLYING_WHITE_MAGIKOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_5B] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_5C] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_5D] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_5E] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_5F] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_60] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_61] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_62] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_63] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_64] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_65] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_66] = { - .walk = { SOUND_295, SOUND_295 }, - .fly = { SOUND_295, SOUND_295 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { -5, -5 } - }, + .walk = { SOUND_295, SOUND_295 }, + .fly = { SOUND_295, SOUND_295 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { -5, -5 } + }, [ACTOR_TYPE_UNUSED_67] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { SOUND_20DD, SOUND_20DD }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { SOUND_20DD, SOUND_20DD }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_68] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_69] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_6A] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_MONTY_HOLE] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_6C] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_6D] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_PLAYER] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GOOMBARIO] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_KOOPER] = { - .walk = { SOUND_100, SOUND_100 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_100, SOUND_100 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOMBETTE] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_PARAKARRY] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOW] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_WATT] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SUSHIE] = { - .walk = { SOUND_29A, SOUND_29A }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_29A, SOUND_29A }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LAKILESTER] = { - .walk = { SOUND_295, SOUND_295 }, - .fly = { SOUND_295, SOUND_295 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { -5, -5 } - }, + .walk = { SOUND_295, SOUND_295 }, + .fly = { SOUND_295, SOUND_295 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { -5, -5 } + }, [ACTOR_TYPE_TWINK] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { -5, -5 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { -5, -5 } + }, [ACTOR_TYPE_UNUSED_78] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_UNUSED_79] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_THE_MASTER_1] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_THE_MASTER_2] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_THE_MASTER_3] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_CHAN] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LEE] = { - .walk = { SOUND_2CA, SOUND_2CA }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_2CA, SOUND_2CA }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LEE_GOOMBARIO] = { - .walk = { SOUND_20DD, SOUND_20DD }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20DD, SOUND_20DD }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LEE_KOOPER] = { - .walk = { SOUND_100, SOUND_100 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_100, SOUND_100 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LEE_BOMBETTE] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LEE_PARAKARRY] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LEE_BOW] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LEE_WATT] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LEE_SUSHIE] = { - .walk = { SOUND_29A, SOUND_29A }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_29A, SOUND_29A }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LEE_LAKILESTER] = { - .walk = { SOUND_295, SOUND_295 }, - .fly = { SOUND_295, SOUND_295 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { -5, -5 } - }, + .walk = { SOUND_295, SOUND_295 }, + .fly = { SOUND_295, SOUND_295 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { -5, -5 } + }, [ACTOR_TYPE_KAMMY_KOOPA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_JR_TROOPA1] = { - .walk = { SOUND_20C1, SOUND_20C1 }, - .fly = { SOUND_351, SOUND_351 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C1, SOUND_20C1 }, + .fly = { SOUND_351, SOUND_351 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_JR_TROOPA2] = { - .walk = { SOUND_20C1, SOUND_20C1 }, - .fly = { SOUND_351, SOUND_351 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C1, SOUND_20C1 }, + .fly = { SOUND_351, SOUND_351 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_JR_TROOPA3] = { - .walk = { SOUND_20C1, SOUND_20C1 }, - .fly = { SOUND_351, SOUND_351 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C1, SOUND_20C1 }, + .fly = { SOUND_351, SOUND_351 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_JR_TROOPA4] = { - .walk = { SOUND_20C1, SOUND_20C1 }, - .fly = { SOUND_351, SOUND_351 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C1, SOUND_20C1 }, + .fly = { SOUND_351, SOUND_351 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_JR_TROOPA5] = { - .walk = { SOUND_20C1, SOUND_20C1 }, - .fly = { SOUND_351, SOUND_351 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C1, SOUND_20C1 }, + .fly = { SOUND_351, SOUND_351 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_JR_TROOPA6] = { - .walk = { SOUND_20C1, SOUND_20C1 }, - .fly = { SOUND_351, SOUND_351 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C1, SOUND_20C1 }, + .fly = { SOUND_351, SOUND_351 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_JR_TROOPA_DUP1] = { - .walk = { SOUND_20C1, SOUND_20C1 }, - .fly = { SOUND_351, SOUND_351 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C1, SOUND_20C1 }, + .fly = { SOUND_351, SOUND_351 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_JR_TROOPA_DUP2] = { - .walk = { SOUND_20C1, SOUND_20C1 }, - .fly = { SOUND_351, SOUND_351 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20C1, SOUND_20C1 }, + .fly = { SOUND_351, SOUND_351 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BLUE_GOOMBA_BOSS] = { - .walk = { SOUND_3AC, SOUND_3AC }, - .fly = { NULL, NULL }, - .jump = SOUND_10F, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_3AC, SOUND_3AC }, + .fly = { NULL, NULL }, + .jump = SOUND_10F, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_RED_GOOMBA_BOSS] = { - .walk = { SOUND_3AC, SOUND_3AC }, - .fly = { NULL, NULL }, - .jump = SOUND_10F, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_3AC, SOUND_3AC }, + .fly = { NULL, NULL }, + .jump = SOUND_10F, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GOOMBA_KING] = { - .walk = { SOUND_20EC, SOUND_20EC }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 22, 30 } - }, + .walk = { SOUND_20EC, SOUND_20EC }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 22, 30 } + }, [ACTOR_TYPE_GOOMNUT_TREE] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GOOMBARIO_TUTOR1] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_MAGIKOOPA_BOSS] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FLYING_MAGIKOOPA_BOSS] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_MAGIKOOPA_DUP1] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_MAGIKOOPA_DUP2] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_FAKE_BOWSER] = { - .walk = { SOUND_3EA, SOUND_3EA }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { SOUND_3EA, SOUND_3EA }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_KOOPA_BROS] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GREEN_NINJAKOOPA] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_RED_NINJAKOOPA] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BLUE_NINJAKOOPA] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_YELLOW_NINJAKOOPA] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_ELDSTAR] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BUZZAR] = { - .walk = { NULL, NULL }, - .fly = { SOUND_20EF, SOUND_20EF }, - .jump = NULL, - .hurt = NULL, - .delay = { -14, -14 } - }, + .walk = { NULL, NULL }, + .fly = { SOUND_20EF, SOUND_20EF }, + .jump = NULL, + .hurt = NULL, + .delay = { -14, -14 } + }, [ACTOR_TYPE_TUTANKOOPA] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { -3, -3 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { -3, -3 } + }, [ACTOR_TYPE_CHOMP] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_TUBBA_BLUBBA_INVINCIBLE] = { - .walk = { SOUND_20F6, SOUND_20F6 }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { SOUND_20F6, SOUND_20F6 }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_TUBBA_BLUBBA] = { - .walk = { SOUND_20F6, SOUND_20F6 }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { SOUND_20F6, SOUND_20F6 }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_TUBBA_HEART] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_20C8, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_20C8, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_STILT_GUY] = { - .walk = { SOUND_2066, SOUND_2066 }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_2066, SOUND_2066 }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SHY_STACK] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 10, 10 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 10, 10 } + }, [ACTOR_TYPE_SHY_SQUAD] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GENERAL_GUY] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_TOY_TANK] = { - .walk = { SOUND_37E, SOUND_37E }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_37E, SOUND_37E }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LIGHT_BULB] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SIGNAL_GUY] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SHY_SQUAD_DUP] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SHY_GUY_DUP] = { - .walk = { SOUND_20BA, SOUND_20BA }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_20BA }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_ANTI_GUY] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_ANTI_GUY_DUP] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { NULL, NULL }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { NULL, NULL }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BIG_LANTERN_GHOST] = { - .walk = { SOUND_37D, SOUND_37D }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { SOUND_37D, SOUND_37D }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_GOOMBA_KING_DUP] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LAVA_PIRANHA_PHASE_1] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LAVA_PIRANHA_PHASE_2] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LAVA_BUD_PHASE_1] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LAVA_BUD_PHASE_2] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_PETIT_PIRANHA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_PETIT_PIRANHA_BOMB] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_KENT_C_KOOPA] = { - .walk = { SOUND_20EC, SOUND_20EC }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { SOUND_20EC, SOUND_20EC }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_HUFF_N_PUFF] = { - .walk = { NULL, NULL }, - .fly = { SOUND_3D1, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { SOUND_3D1, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_TUFF_PUFF] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_MONSTAR] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_CRYSTAL_KING] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_CRYSTAL_CLONE] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_CRYSTAL_BIT] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_INTRO_BOWSER] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_3E7, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_3E7, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOWSER_PHASE_1] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_3E7, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_3E7, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOWSER_DUP1] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOWSER_PHASE_2] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_3E7, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_3E7, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOWSER_DUP2] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOWSER_PHASE_3] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = SOUND_3E7, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = SOUND_3E7, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BOWSER_DUP3] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_BLOOPER] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 25, 25 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 25, 25 } + }, [ACTOR_TYPE_ELECTRO_BLOOPER1] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 25, 25 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 25, 25 } + }, [ACTOR_TYPE_ELECTRO_BLOOPER2] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 25, 25 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 25, 25 } + }, [ACTOR_TYPE_SUPER_BLOOPER1] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 25, 25 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 25, 25 } + }, [ACTOR_TYPE_SUPER_BLOOPER2] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 25, 25 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 25, 25 } + }, [ACTOR_TYPE_BLOOPER_BABY] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_LAKILESTER_DUP] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SLOT_MACHINE_START] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SLOT_MACHINE_STOP] = { - .walk = { SOUND_20BA, SOUND_3B4 }, - .fly = { SOUND_20BA, SOUND_3B4 }, - .jump = SOUND_JUMP_3E2, - .hurt = SOUND_10F, - .delay = { 30, 30 } - }, + .walk = { SOUND_20BA, SOUND_3B4 }, + .fly = { SOUND_20BA, SOUND_3B4 }, + .jump = SOUND_JUMP_3E2, + .hurt = SOUND_10F, + .delay = { 30, 30 } + }, [ACTOR_TYPE_WHACKA] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SLOT_MACHINE_START_DUP1] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SLOT_MACHINE_START_DUP2] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, [ACTOR_TYPE_SLOT_MACHINE_START_DUP3] = { - .walk = { NULL, NULL }, - .fly = { NULL, NULL }, - .jump = NULL, - .hurt = NULL, - .delay = { 30, 30 } - }, + .walk = { NULL, NULL }, + .fly = { NULL, NULL }, + .jump = NULL, + .hurt = NULL, + .delay = { 30, 30 } + }, }; s32 bActorTattles[ACTOR_TYPE_COUNT] = { diff --git a/src/battle/partner/bombette.c b/src/battle/partner/bombette.c index 7f5429483c..f29d6a4f96 100644 --- a/src/battle/partner/bombette.c +++ b/src/battle/partner/bombette.c @@ -23,7 +23,7 @@ extern EvtScript N(bodySlam); extern EvtScript N(bomb); enum { - LF_MashEnded = LocalFlag(0), + LF_MashEnded = LocalFlag(0), LF_MashStarted = LocalFlag(2), }; diff --git a/src/world/area_dro/dro_02/dro_02.h b/src/world/area_dro/dro_02/dro_02.h index 3f9535e4da..e0fec47780 100644 --- a/src/world/area_dro/dro_02/dro_02.h +++ b/src/world/area_dro/dro_02/dro_02.h @@ -18,9 +18,6 @@ #include "sprite/npc/WorldParakarry.h" #include "sprite/npc/Archeologist.h" #include "sprite/npc/Dryite.h" -#include "sprite/npc/Mouser.h" -#include "sprite/npc/DisguisedMoustafa.h" -#include "sprite/npc/Moustafa.h" enum { NPC_Archeologist = 0, diff --git a/src/world/area_dro/dro_02/dro_02_5_npc.c b/src/world/area_dro/dro_02/dro_02_5_npc.c index bb2197fb99..2d67a71e8e 100644 --- a/src/world/area_dro/dro_02/dro_02_5_npc.c +++ b/src/world/area_dro/dro_02/dro_02_5_npc.c @@ -408,29 +408,8 @@ StaticNpc N(PassiveNPCs)[] = { .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, .init = &N(EVS_NpcInit_DisguisedMoustafa), .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - ANIM_DisguisedMoustafa_Idle, - }, + .drops = MOUSER_DROPS, + .animations = DISGUISED_MOUSTAFA_ANIMS, .tattle = MSG_NpcTattle_Sheek, }, { @@ -483,29 +462,8 @@ StaticNpc N(PassiveNPCs)[] = { .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, .init = &N(EVS_NpcInit_Moustafa), .yaw = 0, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, - .animations = { - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Run, - ANIM_Moustafa_Run, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - ANIM_Moustafa_Idle, - }, + .drops = MOUSER_DROPS, + .animations = MOUSTAFA_ANIMS, .tattle = MSG_NpcTattle_Moustafa, }, { @@ -552,11 +510,7 @@ StaticNpc N(PassiveNPCs)[] = { .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, .init = &N(EVS_NpcInit_Mouser_02), .yaw = 270, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, + .drops = MOUSER_DROPS, .animations = MOUSER_BLUE_ANIMS, .tattle = MSG_NpcTattle_DRO_TellsTales, }, @@ -567,11 +521,7 @@ StaticNpc N(PassiveNPCs)[] = { .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, .init = &N(EVS_NpcInit_Mouser_03), .yaw = 90, - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, + .drops = MOUSER_DROPS, .animations = MOUSER_PURPLE_ANIMS, }, { diff --git a/src/world/area_dro/dro_02/npc_moustafa.c b/src/world/area_dro/dro_02/npc_moustafa.c index 1b26b801e6..da67dee233 100644 --- a/src/world/area_dro/dro_02/npc_moustafa.c +++ b/src/world/area_dro/dro_02/npc_moustafa.c @@ -1,6 +1,6 @@ #include "dro_02.h" -EvtScript N(EVS_PartyWatchingMousatafa) = { +EvtScript N(EVS_PartyWatchingMoustafa) = { EVT_LOOP(0) EVT_CALL(PlayerFaceNpc, NPC_Moustafa, FALSE) EVT_CALL(NpcFaceNpc, NPC_PARTNER, NPC_Moustafa, 0) @@ -192,7 +192,7 @@ EvtScript N(EVS_NpcInteract_Moustafa) = { EVT_CALL(PlayerMoveTo, -391, -260, 0) EVT_CALL(InterpPlayerYaw, 90, 3) EVT_CALL(SetNpcFlagBits, NPC_DisguisedMoustafa, NPC_FLAG_100, FALSE) - EVT_EXEC_GET_TID(N(EVS_PartyWatchingMousatafa), LVarA) + EVT_EXEC_GET_TID(N(EVS_PartyWatchingMoustafa), LVarA) EVT_CALL(SetNpcFlagBits, NPC_Moustafa, NPC_FLAG_100, TRUE) EVT_CALL(FadeOutMusic, 0, 500) EVT_IF_EQ(GF_DRO02_Sheek_AskedAboutMoustafa, TRUE) diff --git a/src/world/area_flo/flo_14/flo_14_3_bubbles.c b/src/world/area_flo/flo_14/flo_14_3_bubbles.c index b02632124e..0cbfb459b4 100644 --- a/src/world/area_flo/flo_14/flo_14_3_bubbles.c +++ b/src/world/area_flo/flo_14/flo_14_3_bubbles.c @@ -86,7 +86,7 @@ Vec3f N(BubbleFlightPath)[] = { EvtScript N(EVS_BubbleFollowPath) = { EVT_WAIT(20) EVT_CALL(PlaySound, SOUND_80000023) - EVT_CALL(LoadPath, 165, EVT_PTR(N(BubbleFlightPath)), 13, EASING_COS_IN_OUT) + EVT_CALL(LoadPath, 165, EVT_PTR(N(BubbleFlightPath)), ARRAY_COUNT(N(BubbleFlightPath)), EASING_COS_IN_OUT) EVT_LABEL(0) EVT_CALL(GetNextPathPos) EVT_CALL(TranslateModel, MODEL_o167, LVar1, LVar2, LVar3) diff --git a/src/world/area_flo/flo_21/flo_21_4_npc.c b/src/world/area_flo/flo_21/flo_21_4_npc.c index a18ab4cd39..ecbbde0b3d 100644 --- a/src/world/area_flo/flo_21/flo_21_4_npc.c +++ b/src/world/area_flo/flo_21/flo_21_4_npc.c @@ -77,7 +77,7 @@ EvtScript N(EVS_HuffNPuff_JumpOut) = { EVT_END_THREAD EVT_THREAD EVT_CALL(SetPlayerAnimation, ANIM_Mario_80017) - EVT_CALL(LoadPath, 30, EVT_PTR(N(Path_JumpOut)), 3, EASING_LINEAR) + EVT_CALL(LoadPath, 30, EVT_PTR(N(Path_JumpOut)), ARRAY_COUNT(N(Path_JumpOut)), EASING_LINEAR) EVT_LABEL(0) EVT_CALL(GetNextPathPos) EVT_CALL(SetPlayerPos, LVar1, LVar2, LVar3) diff --git a/src/world/area_hos/hos_10/A3F740.c b/src/world/area_hos/hos_10/A3F740.c index 36502cf439..8f0480a8c9 100644 --- a/src/world/area_hos/hos_10/A3F740.c +++ b/src/world/area_hos/hos_10/A3F740.c @@ -4,4 +4,4 @@ static char* N(exit_str_0) = "kmr_21"; static char* N(exit_str_1) = "osr_02"; static char* N(exit_str_2) = "kmr_20"; -#include "world/common/todo/SetPlayerSpriteSet2.inc.c" +#include "world/common/todo/SetPlayerSpriteSet2_MapInit.inc.c" diff --git a/src/world/area_jan/jan_00/jan_00_2_npc.c b/src/world/area_jan/jan_00/jan_00_2_npc.c index f08cdab0ac..892d31b6fd 100644 --- a/src/world/area_jan/jan_00/jan_00_2_npc.c +++ b/src/world/area_jan/jan_00/jan_00_2_npc.c @@ -511,7 +511,7 @@ EvtScript N(EVS_NpcInteract_Kolorado_01) = { EVT_END_THREAD EVT_IF_EQ(GB_StoryProgress, STORY_CH5_TRADED_VASE_FOR_SEED) EVT_CALL(SetNpcAnimation, NPC_Kolorado_02, ANIM_Kolorado_Walk) - EVT_CALL(LoadPath, 20, EVT_PTR(N(D_802438E4_B23E24)), 3, EASING_LINEAR) + EVT_CALL(LoadPath, 20, EVT_PTR(N(D_802438E4_B23E24)), ARRAY_COUNT(N(D_802438E4_B23E24)), EASING_LINEAR) EVT_LOOP(0) EVT_CALL(GetNextPathPos) EVT_CALL(SetNpcPos, NPC_Kolorado_02, LVar1, LVar2, LVar3) diff --git a/src/world/area_kkj/kkj_03/AC9710.c b/src/world/area_kkj/kkj_03/AC9710.c index b035e89704..ae1fd58b24 100644 --- a/src/world/area_kkj/kkj_03/AC9710.c +++ b/src/world/area_kkj/kkj_03/AC9710.c @@ -5,4 +5,4 @@ static char* N(exit_str_1) = "osr_04"; static char* N(exit_str_2) = "osr_03"; static char* N(exit_str_3) = ""; -#include "world/common/todo/SetPlayerSpriteSet2.inc.c" +#include "world/common/todo/SetPlayerSpriteSet2_MapInit.inc.c" diff --git a/src/world/area_kkj/kkj_13/AD5ED0.c b/src/world/area_kkj/kkj_13/AD5ED0.c index 355c5e1008..c12378e01b 100644 --- a/src/world/area_kkj/kkj_13/AD5ED0.c +++ b/src/world/area_kkj/kkj_13/AD5ED0.c @@ -3,4 +3,4 @@ static char* N(exit_str_0) = "kkj_12"; static char* N(exit_str_1) = "kkj_22"; -#include "world/common/todo/SetPlayerSpriteSet2.inc.c" +#include "world/common/todo/SetPlayerSpriteSet2_MapInit.inc.c" diff --git a/src/world/area_kkj/kkj_23/B02880.c b/src/world/area_kkj/kkj_23/B02880.c index 93f572e13e..4847f662f2 100644 --- a/src/world/area_kkj/kkj_23/B02880.c +++ b/src/world/area_kkj/kkj_23/B02880.c @@ -5,4 +5,4 @@ static char* N(exit_str_1) = "kkj_22"; static char* N(exit_str_2) = "kkj_24"; static char* N(exit_str_3) = ""; -#include "world/common/todo/SetPlayerSpriteSet2.inc.c" +#include "world/common/todo/SetPlayerSpriteSet2_MapInit.inc.c" diff --git a/src/world/area_kkj/kkj_25/B06A00.c b/src/world/area_kkj/kkj_25/B06A00.c index 8d62e62764..734d6555f8 100644 --- a/src/world/area_kkj/kkj_25/B06A00.c +++ b/src/world/area_kkj/kkj_25/B06A00.c @@ -5,4 +5,4 @@ static char* N(exit_str_1) = "kkj_25"; static char* N(exit_str_2) = "kkj_25\0"; static char* N(exit_str_3) = "osr_03"; -#include "world/common/todo/SetPlayerSpriteSet2.inc.c" +#include "world/common/todo/SetPlayerSpriteSet2_MapInit.inc.c" diff --git a/src/world/area_kpa/kpa_95/kpa_95_4_npc.c b/src/world/area_kpa/kpa_95/kpa_95_4_npc.c index 144d43d1d7..3932634407 100644 --- a/src/world/area_kpa/kpa_95/kpa_95_4_npc.c +++ b/src/world/area_kpa/kpa_95/kpa_95_4_npc.c @@ -1,12 +1,7 @@ #include "kpa_95.h" #include "world/common/npc/Toad_Stationary.inc.c" - -NpcSettings N(NpcSettings_Penguin) = { - .height = 24, - .radius = 24, - .level = 99, -}; +#include "world/common/npc/Penguin.inc.c" #include "world/common/enemy/complete/Koopatrol_Patrol.inc.c" @@ -203,25 +198,8 @@ StaticNpc N(NpcData_Prisoners)[] = { .yaw = 0, .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, .init = &N(EVS_NpcInit_Penguin), - .drops = NPC_NO_DROPS, - .animations = { - .idle = ANIM_Penguin_Idle, - .walk = ANIM_Penguin_Walk, - .run = ANIM_Penguin_Run, - .chase = ANIM_Penguin_Run, - .anim_4 = ANIM_Penguin_Idle, - .anim_5 = ANIM_Penguin_Idle, - .death = ANIM_Penguin_Idle, - .hit = ANIM_Penguin_Idle, - .anim_8 = ANIM_Penguin_Idle, - .anim_9 = ANIM_Penguin_Idle, - .anim_A = ANIM_Penguin_Idle, - .anim_B = ANIM_Penguin_Idle, - .anim_C = ANIM_Penguin_Idle, - .anim_D = ANIM_Penguin_Idle, - .anim_E = ANIM_Penguin_Idle, - .anim_F = ANIM_Penguin_Idle, - }, + .drops = PENGUIN_DROPS, + .animations = PENGUIN_ANIMS, .tattle = MSG_NpcTattle_KPA_CaptivePenguin, }, }; @@ -263,11 +241,7 @@ StaticNpc N(NpcData_Koopatrol) = { .yaw = 270, .flags = ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000 | ENEMY_FLAGS_40000 | ENEMY_FLAGS_800000, .init = &N(EVS_NpcInit_Koopatrol), - .drops = { - .dropFlags = NPC_DROP_FLAGS_80, - .heartDrops = NO_DROPS, - .flowerDrops = NO_DROPS, - }, + .drops = NPC_NO_DROPS, .territory = { .patrol = { .isFlying = TRUE, @@ -282,24 +256,7 @@ StaticNpc N(NpcData_Koopatrol) = { .detectSize = { 200 }, } }, - .animations = { - .idle = ANIM_WorldKoopatrol_Anim01, - .walk = ANIM_WorldKoopatrol_Anim04, - .run = ANIM_WorldKoopatrol_Anim06, - .chase = ANIM_WorldKoopatrol_Anim06, - .anim_4 = ANIM_WorldKoopatrol_Anim01, - .anim_5 = ANIM_WorldKoopatrol_Anim01, - .death = ANIM_WorldKoopatrol_Anim10, - .hit = ANIM_WorldKoopatrol_Anim10, - .anim_8 = ANIM_WorldKoopatrol_Anim0C, - .anim_9 = ANIM_WorldKoopatrol_Anim0B, - .anim_A = ANIM_WorldKoopatrol_Anim0D, - .anim_B = ANIM_WorldKoopatrol_Anim01, - .anim_C = ANIM_WorldKoopatrol_Anim01, - .anim_D = ANIM_WorldKoopatrol_Anim01, - .anim_E = ANIM_WorldKoopatrol_Anim01, - .anim_F = ANIM_WorldKoopatrol_Anim01, - }, + .animations = KOOPATROL_ANIMS, }; NpcGroupList N(DefaultNPCs) = { diff --git a/src/world/area_mac/mac_04/npc_twink.inc.c b/src/world/area_mac/mac_04/npc_twink.inc.c index 7520768c38..fae1224cd9 100644 --- a/src/world/area_mac/mac_04/npc_twink.inc.c +++ b/src/world/area_mac/mac_04/npc_twink.inc.c @@ -28,7 +28,7 @@ EvtScript N(EVS_NpcIdle_TwinkStartCh4) = { EVT_SUBF(LVar4, EVT_FLOAT(50.0)) EVT_ADDF(LVar5, EVT_FLOAT(40.0)) EVT_CALL(InterpNpcYaw, NPC_Twink, 90, 0) - EVT_CALL(LoadPath, 35, EVT_PTR(N(FlightPath_TwinkArrive)), 3, EASING_COS_IN_OUT) + EVT_CALL(LoadPath, 35, EVT_PTR(N(FlightPath_TwinkArrive)), ARRAY_COUNT(N(FlightPath_TwinkArrive)), EASING_COS_IN_OUT) EVT_LOOP(0) EVT_CALL(GetNextPathPos) EVT_ADDF(LVar1, LVar4) @@ -65,7 +65,7 @@ EvtScript N(EVS_NpcIdle_TwinkStartCh4) = { EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 0) EVT_CALL(InterpNpcYaw, NPC_Twink, 270, 0) EVT_CALL(GetNpcPos, NPC_Twink, LVar4, LVar5, LVar6) - EVT_CALL(LoadPath, 35, EVT_PTR(N(FlightPath_TwinkDepart)), 3, EASING_QUADRATIC_IN) + EVT_CALL(LoadPath, 35, EVT_PTR(N(FlightPath_TwinkDepart)), ARRAY_COUNT(N(FlightPath_TwinkDepart)), EASING_QUADRATIC_IN) EVT_LOOP(0) EVT_CALL(GetNextPathPos) EVT_ADD(LVar1, LVar4) diff --git a/src/world/area_osr/osr.h b/src/world/area_osr/osr.h index fe8925d585..ec371001a0 100644 --- a/src/world/area_osr/osr.h +++ b/src/world/area_osr/osr.h @@ -2,24 +2,37 @@ #define _WORLD_AREA_OSR_OSR_H_ enum { - AB_OSR_0 = AreaByte(0), - AB_OSR_1 = AreaByte(1), - AB_OSR_2 = AreaByte(2), - AB_OSR_3 = AreaByte(3), - AB_OSR_4 = AreaByte(4), - AB_OSR_5 = AreaByte(5), - AB_OSR_6 = AreaByte(6), - AB_OSR_7 = AreaByte(7), - AB_OSR_8 = AreaByte(8), - AB_OSR_9 = AreaByte(9), - AB_OSR_A = AreaByte(10), - AB_OSR_B = AreaByte(11), - AB_OSR_C = AreaByte(12), - AB_OSR_D = AreaByte(13), - AB_OSR_E = AreaByte(14), - AB_OSR_F = AreaByte(15), + AB_OSR_Unused_0 = AreaByte(0), + AB_OSR_Unused_1 = AreaByte(1), + AB_OSR_Unused_2 = AreaByte(2), + AB_OSR_Unused_3 = AreaByte(3), + AB_OSR_Unused_4 = AreaByte(4), + AB_OSR_Unused_5 = AreaByte(5), + AB_OSR_Unused_6 = AreaByte(6), + AB_OSR_Unused_7 = AreaByte(7), + AB_OSR_Unused_8 = AreaByte(8), + AB_OSR_Unused_9 = AreaByte(9), + AB_OSR_Unused_A = AreaByte(10), + AB_OSR_Unused_B = AreaByte(11), + AB_OSR_Unused_C = AreaByte(12), + AB_OSR_Unused_D = AreaByte(13), + AB_OSR_Unused_E = AreaByte(14), + AB_OSR_Unused_F = AreaByte(15), }; -#define AF_OSR(index) AreaFlag(index) +enum { + AF_OSR_01 = AreaFlag(1), +}; + +extern MapSettings osr_00_settings; +extern MapSettings osr_01_settings; +extern MapSettings osr_02_settings; +extern MapSettings osr_03_settings; +extern MapSettings osr_04_settings; + +s32 osr_01_map_init(void); +s32 osr_02_map_init(void); +s32 osr_03_map_init(void); +s32 osr_04_map_init(void); #endif diff --git a/src/world/area_osr/osr_00/AAC830.c b/src/world/area_osr/osr_00/AAC830.c deleted file mode 100644 index 4e471539d7..0000000000 --- a/src/world/area_osr/osr_00/AAC830.c +++ /dev/null @@ -1,16 +0,0 @@ -#include "osr_00.h" -#include "effects.h" - -static char* N(exit_str_0) = "mac_01"; -static char* N(exit_str_1) = "kkj_00"; -static char* N(exit_str_2) = "kmr_20"; -static char* N(exit_str_3) = "kkj_00\0"; - -#include "world/common/atomic/TexturePan.inc.c" - -ApiStatus func_8024030C_AACB3C(Evt* script, s32 isInitialCall) { - fx_sun(FX_SUN_FROM_RIGHT, 0.0f, 0.0f, 0.0f, 0.0f, 0); - return ApiStatus_DONE2; -} - -#include "world/common/todo/SpawnSunEffect.inc.c" diff --git a/src/world/area_osr/osr_00/AACBB0.c b/src/world/area_osr/osr_00/AACBB0.c deleted file mode 100644 index c64a2243d5..0000000000 --- a/src/world/area_osr/osr_00/AACBB0.c +++ /dev/null @@ -1,40 +0,0 @@ -#include "osr_00.h" -#include "ld_addrs.h" -#include "charset/peach_letter.png.h" - -#include "world/common/atomic/UnkFunc27.inc.c" - -ApiStatus func_80240678_AACEA8(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - s32 primR = *args++; - s32 primG = *args++; - s32 primB = *args++; - s32 envR = *args++; - s32 envG = *args++; - s32 envB = *args++; - set_model_env_color_parameters(primR, primG, primB, envR, envG, envB); - return ApiStatus_DONE2; -} - -BSS u8 osr_00_802437C0[charset_peach_letter_png_width * charset_peach_letter_png_height]; -BSS u16 D_80247548[0x100]; -BSS char D_80247748[0x8]; // padding? -BSS MessageImageData D_80247750; - -// TODO look into + 1 here... -ApiStatus func_802406E0_AACF10(Evt* script, s32 isInitialCall) { - s8* romStart = charset_ROM_START; - u8* rasterOffset = charset_peach_letter_png; - u16* paletteOffset = (u16*) charset_peach_letter_pal + 1; // todo ??? - - dma_copy(romStart + (s32)rasterOffset, romStart + (s32)rasterOffset + sizeof(osr_00_802437C0), &osr_00_802437C0); - dma_copy(romStart + (s32)paletteOffset, romStart + (s32)paletteOffset + sizeof(D_80247548), &D_80247548); - D_80247750.width = charset_peach_letter_png_width; - D_80247750.height = charset_peach_letter_png_height; - D_80247750.format = G_IM_FMT_CI; - D_80247750.raster = osr_00_802437C0; - D_80247750.palette = D_80247548; - D_80247750.bitDepth = 1; - set_message_images(&D_80247750); - return ApiStatus_DONE2; -} diff --git a/src/world/area_osr/osr_00/osr_00.h b/src/world/area_osr/osr_00/osr_00.h index 0159a9b1cb..66b3755f3b 100644 --- a/src/world/area_osr/osr_00/osr_00.h +++ b/src/world/area_osr/osr_00/osr_00.h @@ -2,8 +2,36 @@ /// @brief Peach's Castle Grounds - Intro Castle Grounds #include "common.h" -#include "../osr.h" #include "message_ids.h" #include "map.h" +#include "../osr.h" +#include "mapfs/osr_00_shape.h" +#include "mapfs/osr_00_hit.h" + +enum { + NPC_Luigi = 0, + NPC_YoshiLeader = 0, + NPC_Yoshi = 1, + NPC_YoshiKid = 2, + NPC_MayorPenguin = 3, + NPC_MayorPenguinWife = 4, + NPC_Penguin_01 = 5, + NPC_Penguin_02 = 6, + NPC_Moustafa = 7, + NPC_Mouser = 8, + NPC_Boo_01 = 9, + NPC_Boo_02 = 10, + NPC_Toad = 12, + NPC_ToadGuard_01 = 13, + NPC_ToadGuard_02 = 14, +}; + #define NAMESPACE osr_00 + +extern EvtScript N(EVS_Main); +extern EvtScript N(EVS_SetupMusic); +extern EvtScript N(EVS_Scene_ShowInvitation); +extern EvtScript N(EVS_Scene_ApproachParty); +extern NpcGroupList N(IntroNPCs); +extern NpcGroupList N(EpilogueNPCs); diff --git a/src/world/area_osr/osr_00/osr_00_0_header.c b/src/world/area_osr/osr_00/osr_00_0_header.c new file mode 100644 index 0000000000..c1bceeadc0 --- /dev/null +++ b/src/world/area_osr/osr_00/osr_00_0_header.c @@ -0,0 +1,16 @@ +#include "osr_00.h" + +EntryList N(Entrances) = { + [osr_00_ENTRY_0] { 0.0, 0.0, 604.0, 0.0 }, + [osr_00_ENTRY_1] { 612.0, 0.0, 111.0, 270.0 }, + [osr_00_ENTRY_2] { 0.0, 0.0, -260.0, 180.0 }, + [osr_00_ENTRY_3] { 500.0, 20.0, 100.0, 270.0 }, + [osr_00_ENTRY_4] { 0.0, 0.0, 300.0, 0.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, +}; diff --git a/src/world/area_osr/osr_00/osr_00_1_music.c b/src/world/area_osr/osr_00/osr_00_1_music.c new file mode 100644 index 0000000000..16fb242fc5 --- /dev/null +++ b/src/world/area_osr/osr_00/osr_00_1_music.c @@ -0,0 +1,18 @@ +#include "osr_00.h" + +EvtScript N(EVS_SetupMusic) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_EQ(STORY_INTRO) + EVT_CALL(SetMusicTrack, 0, SONG_PEACHS_CASTLE_PARTY, 1, 8) + EVT_CASE_EQ(STORY_EPILOGUE) + EVT_CALL(SetMusicTrack, 0, SONG_PEACHS_CASTLE_PARTY, 0, 8) + EVT_CASE_DEFAULT + EVT_CALL(SetMusicTrack, 0, SONG_TOAD_TOWN, 0, 8) + EVT_END_SWITCH + EVT_CALL(GetEntryID, LVar0) + EVT_IF_EQ(LVar0, osr_00_ENTRY_3) + EVT_CALL(ClearAmbientSounds, 250) + EVT_END_IF + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_00/osr_00_2_main.c b/src/world/area_osr/osr_00/osr_00_2_main.c new file mode 100644 index 0000000000..1903821d62 --- /dev/null +++ b/src/world/area_osr/osr_00/osr_00_2_main.c @@ -0,0 +1,91 @@ +#include "osr_00.h" +#include "effects.h" + +#include "world/common/atomic/TexturePan.inc.c" +#include "world/common/atomic/TexturePan.data.inc.c" + +API_CALLABLE(N(CreateSunshine)) { + fx_sun(FX_SUN_FROM_RIGHT, 0.0f, 0.0f, 0.0f, 0.0f, 0); + return ApiStatus_DONE2; +} + +#include "world/common/todo/SpawnSunEffect.inc.c" + +EvtScript N(EVS_ExitWalk_mac_01_2) = EVT_EXIT_WALK(60, osr_00_ENTRY_0, "mac_01", mac_01_ENTRY_2); +EvtScript N(EVS_ExitDoors_kkj_00_6) = EVT_EXIT_DOUBLE_DOOR(osr_00_ENTRY_2, "kkj_00", kkj_00_ENTRY_6, COLLIDER_deilitn, MODEL_d2, MODEL_d1); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_mac_01_2)), TRIGGER_FLOOR_ABOVE, COLLIDER_deilis, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoors_kkj_00_6)), TRIGGER_WALL_PRESS_A, COLLIDER_deilitn, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(osr_00_ENTRY_2) + EVT_SET(LVar2, MODEL_d2) + EVT_SET(LVar3, MODEL_d1) + EVT_EXEC_WAIT(EnterDoubleDoor) + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_CASE_EQ(osr_00_ENTRY_3) + EVT_EXEC(N(EVS_Scene_ShowInvitation)) + EVT_CASE_EQ(osr_00_ENTRY_4) + EVT_EXEC(N(EVS_Scene_ApproachParty)) + EVT_CASE_DEFAULT + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_TexPan_Fountain) = { + EVT_SET_GROUP(EVT_GROUP_00) + EVT_CALL(SetTexPanner, MODEL_fw1, TEX_PANNER_1) + EVT_CALL(SetTexPanner, MODEL_w2, TEX_PANNER_2) + EVT_THREAD + TEX_PAN_PARAMS_ID(TEX_PANNER_1) + TEX_PAN_PARAMS_STEP( 0, -200, 0, 0) + TEX_PAN_PARAMS_FREQ( 0, 1, 0, 0) + TEX_PAN_PARAMS_INIT( 0, 0, 0, 0) + EVT_EXEC(N(EVS_UpdateTexturePan)) + EVT_END_THREAD + EVT_THREAD + TEX_PAN_PARAMS_ID(TEX_PANNER_2) + TEX_PAN_PARAMS_STEP( 0, 0, 0, 300) + TEX_PAN_PARAMS_FREQ( 0, 0, 0, 1) + TEX_PAN_PARAMS_INIT( 0, 0, 0, 0) + EVT_EXEC(N(EVS_UpdateTexturePan)) + EVT_END_THREAD + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_PEACH_CASTLE_GROUNDS) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_NO_LEAD() + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_EQ(STORY_INTRO) + EVT_CALL(N(CreateSunshine)) + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(IntroNPCs))) + EVT_CASE_GE(STORY_EPILOGUE) + EVT_CALL(N(SpawnSunEffect)) + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(EpilogueNPCs))) + EVT_END_SWITCH + EVT_CALL(GetEntryID, LVar0) + EVT_IF_NE(LVar0, osr_00_ENTRY_3) + EVT_EXEC(N(EVS_SetupMusic)) + EVT_END_IF + EVT_CALL(GetEntryID, LVar0) + EVT_IF_NE(LVar0, osr_00_ENTRY_3) + EVT_EXEC(N(EVS_TexPan_Fountain)) + EVT_CALL(PlaySoundAtF, SOUND_80000059, 1, 300, 0, 400) + EVT_END_IF + EVT_EXEC(N(EVS_EnterMap)) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_00/osr_00_3_npc_intro.c b/src/world/area_osr/osr_00/osr_00_3_npc_intro.c new file mode 100644 index 0000000000..6d1c28348c --- /dev/null +++ b/src/world/area_osr/osr_00/osr_00_3_npc_intro.c @@ -0,0 +1,18 @@ +#include "osr_00.h" + +#include "world/common/npc/Luigi.inc.c" + +StaticNpc N(NpcData_Luigi) = { + .id = NPC_Luigi, + .settings = &N(NpcSettings_Luigi), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 90, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_200 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .drops = LUIGI_DROPS, + .animations = LUIGI_ANIMS, +}; + +NpcGroupList N(IntroNPCs) = { + NPC_GROUP(N(NpcData_Luigi)), + {} +}; diff --git a/src/world/area_osr/osr_00/osr_00_4_npc_epilogue.c b/src/world/area_osr/osr_00/osr_00_4_npc_epilogue.c new file mode 100644 index 0000000000..96adde0b2a --- /dev/null +++ b/src/world/area_osr/osr_00/osr_00_4_npc_epilogue.c @@ -0,0 +1,457 @@ +#include "osr_00.h" + +NpcSettings N(NpcSettings_Unused) = { + .height = 24, + .radius = 24, + .level = 99, +}; + +#include "world/common/npc/Yoshi.inc.c" +#include "world/common/npc/YoshiKid.inc.c" +#include "world/common/npc/Penguin.inc.c" +#include "world/common/npc/Toad_Stationary.inc.c" +#include "world/common/npc/Boo.inc.c" +#include "world/common/npc/Mouser.inc.c" + +EvtScript N(EVS_NpcInteract_LeaderYoshi) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_VillageLeader_Talk, ANIM_VillageLeader_Idle, 0, MSG_Outro_0055) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_LeaderYoshi) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_LeaderYoshi))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Yoshi) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Yoshi_Green_Talk, ANIM_Yoshi_Green_Idle, 0, MSG_Outro_0060) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Yoshi) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Yoshi))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_YoshiKid) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_YoshiKid_Green_Talk, ANIM_YoshiKid_Green_Idle, 0, MSG_Outro_0061) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_YoshiKid) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_YoshiKid))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_MayorPenguin) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_MayorPenguin_Talk, ANIM_MayorPenguin_Idle, 0, MSG_Outro_0056) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_MayorPenguin) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_MayorPenguin))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_MayorPenguinWife) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_MayorPenguinWife_Laugh, ANIM_MayorPenguinWife_Idle, 0, MSG_Outro_0057) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_MayorPenguinWife) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_MayorPenguinWife))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Penguin_01) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Penguin_Talk, ANIM_Penguin_Idle, 0, MSG_Outro_0062) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Penguin_01) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Penguin_01))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Penguin_02) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Penguin_Talk, ANIM_Penguin_Idle, 0, MSG_Outro_0063) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Penguin_02) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Penguin_02))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Moustafa) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Moustafa_Shout, ANIM_Moustafa_Idle, 0, MSG_Outro_0058) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Moustafa) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Moustafa))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Mouser) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Mouser_Purple_Talk, ANIM_Mouser_Purple_Idle, 0, MSG_Outro_005E) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Mouser) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Mouser))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_01) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Talk, ANIM_Boo_Idle, 0, MSG_Outro_005D) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Boo_01) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Boo_01))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_Boo_02) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Boo_Tan_Talk, ANIM_Boo_Tan_Idle, 0, MSG_Outro_005F) + 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_NpcInteract_Toad) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Toad_Blue_Talk, ANIM_Toad_Blue_Idle, 0, MSG_Outro_0059) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Toad) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Toad))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_ToadGuard_01) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_ToadGuard_Red_Talk, ANIM_ToadGuard_Red_Idle, 0, MSG_Outro_005A) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_ToadGuard_01) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_ToadGuard_01))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Guard_StopPlayer) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(NpcFacePlayer, NPC_ToadGuard_02, 0) + EVT_WAIT(5) + EVT_CALL(SpeakToPlayer, NPC_ToadGuard_02, ANIM_ToadGuard_Yellow_Talk, ANIM_ToadGuard_Yellow_Idle, 0, MSG_Outro_005C) + EVT_WAIT(10) + EVT_CALL(SetPlayerSpeed, EVT_FLOAT(4.0)) + EVT_CALL(PlayerMoveTo, 610, 110, 0) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInteract_ToadGuard_02) = { + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_ToadGuard_Yellow_Talk, ANIM_ToadGuard_Yellow_Idle, 0, MSG_Outro_005B) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_ToadGuard_02) = { + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_ToadGuard_02))) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_Guard_StopPlayer)), TRIGGER_FLOOR_TOUCH, COLLIDER_deilie, 1, 0) + EVT_RETURN + EVT_END +}; + +s32 N(ExtraAnims_YoshiLeader)[] = { + ANIM_VillageLeader_Still, + ANIM_VillageLeader_Idle, + ANIM_VillageLeader_Talk, + -1 +}; + +s32 N(ExtraAnims_Yoshi)[] = { + ANIM_Yoshi_Green_Still, + ANIM_Yoshi_Green_Idle, + ANIM_Yoshi_Green_Talk, + -1 +}; + +s32 N(ExtraAnims_YoshiKid)[] = { + ANIM_YoshiKid_Green_Still, + ANIM_YoshiKid_Green_Idle, + ANIM_YoshiKid_Green_Talk, + -1 +}; + +StaticNpc N(NpcData_Yoshis)[] = { + { + .id = NPC_YoshiLeader, + .settings = &N(NpcSettings_Yoshi), + .pos = { 70.0f, 0.0f, -30.0f }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, + .init = &N(EVS_NpcInit_LeaderYoshi), + .drops = YOSHI_DROPS, + .animations = YOSHI_LEADER_ANIMS, + .extraAnimations = N(ExtraAnims_YoshiLeader), + .tattle = MSG_NpcTattle_VillageLeader, + }, + { + .id = NPC_Yoshi, + .settings = &N(NpcSettings_Yoshi), + .pos = { 70.0f, 0.0f, 400.0f }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, + .init = &N(EVS_NpcInit_Yoshi), + .drops = YOSHI_DROPS, + .animations = YOSHI_GREEN_ANIMS, + .extraAnimations = N(ExtraAnims_Yoshi), + .tattle = MSG_NpcTattle_GenericYoshi, + }, + { + .id = NPC_YoshiKid, + .settings = &N(NpcSettings_YoshiKid), + .pos = { 160.0f, 0.0f, 540.0f }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, + .init = &N(EVS_NpcInit_YoshiKid), + .drops = YOSHI_KID_DROPS, + .animations = YOSHI_KID_GREEN_ANIMS, + .extraAnimations = N(ExtraAnims_YoshiKid), + .tattle = MSG_NpcTattle_GreenYoshiKid, + }, +}; + +s32 N(ExtraAnims_MayorPenguin)[] = { + ANIM_MayorPenguin_Still, + ANIM_MayorPenguin_Idle, + ANIM_MayorPenguin_Talk, + -1 +}; + +s32 N(ExtraAnims_MayorPenguinWife)[] = { + ANIM_MayorPenguinWife_Still, + ANIM_MayorPenguinWife_Idle, + ANIM_MayorPenguinWife_Laugh, + -1 +}; + +s32 N(ExtraAnims_Penguin)[] = { + ANIM_Penguin_Still, + ANIM_Penguin_Idle, + ANIM_Penguin_Talk, + -1 +}; + +StaticNpc N(NpcData_Penguins)[] = { + { + .id = NPC_MayorPenguin, + .settings = &N(NpcSettings_Penguin), + .pos = { 150.0f, 0.0f, 105.0f }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, + .init = &N(EVS_NpcInit_MayorPenguin), + .drops = PENGUIN_DROPS, + .animations = MAYOR_PENGUIN_ANIMS, + .extraAnimations = N(ExtraAnims_MayorPenguin), + .tattle = MSG_NpcTattle_MayorPenguin, + }, + { + .id = NPC_MayorPenguinWife, + .settings = &N(NpcSettings_Penguin), + .pos = { 200.0f, 0.0f, 105.0f }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, + .init = &N(EVS_NpcInit_MayorPenguinWife), + .drops = PENGUIN_DROPS, + .animations = MAYOR_PENGUIN_WIFE_ANIMS, + .extraAnimations = N(ExtraAnims_MayorPenguinWife), + .tattle = MSG_NpcTattle_MayorPenguinWife, + }, + { + .id = NPC_Penguin_01, + .settings = &N(NpcSettings_Penguin), + .pos = { 115.0f, 0.0f, 540.0f }, + .yaw = 90, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Penguin_01), + .drops = PENGUIN_DROPS, + .animations = PENGUIN_ANIMS, + .extraAnimations = N(ExtraAnims_Penguin), + }, + { + .id = NPC_Penguin_02, + .settings = &N(NpcSettings_Penguin), + .pos = { 208.0f, 0.0f, 540.0f }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Penguin_02), + .drops = PENGUIN_DROPS, + .animations = PENGUIN_ANIMS, + .extraAnimations = N(ExtraAnims_Penguin), + }, +}; + +s32 N(ExtraAnims_Moustafa)[] = { + ANIM_Moustafa_Still, + ANIM_Moustafa_Idle, + ANIM_Moustafa_Shout, + -1 +}; + +s32 N(ExtraAnims_Mouser)[] = { + ANIM_Mouser_Blue_Still, + ANIM_Mouser_Blue_Idle, + ANIM_Mouser_Blue_Talk, + -1 +}; + +StaticNpc N(NpcData_Mousers)[] = { + { + .id = NPC_Moustafa, + .settings = &N(NpcSettings_Mouser), + .pos = { -60.0f, 0.0f, -20.0f }, + .yaw = 90, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, + .init = &N(EVS_NpcInit_Moustafa), + .drops = MOUSER_DROPS, + .animations = MOUSTAFA_ANIMS, + .extraAnimations = N(ExtraAnims_Moustafa), + .tattle = MSG_NpcTattle_Moustafa, + }, + { + .id = NPC_Mouser, + .settings = &N(NpcSettings_Mouser), + .pos = { -100.0f, 0.0f, -50.0f }, + .yaw = 90, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, + .init = &N(EVS_NpcInit_Mouser), + .drops = MOUSER_DROPS, + .animations = MOUSER_PURPLE_ANIMS, + .extraAnimations = N(ExtraAnims_Mouser), + }, +}; + +s32 N(ExtraAnims_Boos)[] = { + ANIM_Boo_Still, + ANIM_Boo_Idle, + ANIM_Boo_Talk, + -1 +}; + +StaticNpc N(NpcData_Boos)[] = { + { + .id = NPC_Boo_01, + .settings = &N(NpcSettings_Boo), + .pos = { 270.0f, 20.0f, 175.0f }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Boo_01), + .drops = BOO_DROPS, + .animations = NORMAL_BOO_ANIMS, + .extraAnimations = N(ExtraAnims_Boos), + }, + { + .id = NPC_Boo_02, + .settings = &N(NpcSettings_Boo), + .pos = { 320.0f, 20.0f, 200.0f }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Boo_02), + .drops = BOO_DROPS, + .animations = GUSTY_BOO_ANIMS, + .extraAnimations = N(ExtraAnims_Boos), + }, +}; + +s32 N(ExtraAnims_Toad)[] = { + ANIM_Toad_Red_Still, + ANIM_Toad_Red_Idle, + ANIM_Toad_Red_Talk, + -1 +}; + +s32 N(ExtraAnims_ToadGuard)[] = { + ANIM_ToadGuard_Red_Still, + ANIM_ToadGuard_Red_Idle, + ANIM_ToadGuard_Red_Talk, + -1 +}; + +StaticNpc N(NpcData_Toads)[] = { + { + .id = NPC_Toad, + .settings = &N(NpcSettings_Toad_Stationary), + .pos = { -25.0f, 0.0f, 200.0f }, + .yaw = 90, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, + .init = &N(EVS_NpcInit_Toad), + .drops = TOAD_DROPS, + .animations = TOAD_BLUE_ANIMS, + .extraAnimations = N(ExtraAnims_Toad), + }, + { + .id = NPC_ToadGuard_01, + .settings = &N(NpcSettings_Toad_Stationary), + .pos = { -50.0f, 0.0f, -200.0f }, + .yaw = 90, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, + .init = &N(EVS_NpcInit_ToadGuard_01), + .drops = TOAD_DROPS, + .animations = TOAD_GUARD_RED_ANIMS, + .extraAnimations = N(ExtraAnims_ToadGuard), + }, + { + .id = NPC_ToadGuard_02, + .settings = &N(NpcSettings_Toad_Stationary), + .pos = { 560.0f, 20.0f, 100.0f }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000, + .init = &N(EVS_NpcInit_ToadGuard_02), + .drops = TOAD_DROPS, + .animations = TOAD_GUARD_YELLOW_ANIMS, + .extraAnimations = N(ExtraAnims_ToadGuard), + }, +}; + +NpcGroupList N(EpilogueNPCs) = { + NPC_GROUP(N(NpcData_Yoshis)), + NPC_GROUP(N(NpcData_Penguins)), + NPC_GROUP(N(NpcData_Mousers)), + NPC_GROUP(N(NpcData_Boos)), + NPC_GROUP(N(NpcData_Toads)), + {} +}; diff --git a/src/world/area_osr/osr_00/osr_00_5_scenes.c b/src/world/area_osr/osr_00/osr_00_5_scenes.c new file mode 100644 index 0000000000..a1c74e4592 --- /dev/null +++ b/src/world/area_osr/osr_00/osr_00_5_scenes.c @@ -0,0 +1,92 @@ +#include "osr_00.h" +#include "ld_addrs.h" +#include "charset/peach_letter.png.h" + +#include "sprite/npc/Luigi.h" + +#include "world/common/atomic/UnkFunc27.inc.c" + +API_CALLABLE(N(func_80240678_AACEA8)) { + Bytecode* args = script->ptrReadPos; + s32 primR = *args++; + s32 primG = *args++; + s32 primB = *args++; + s32 envR = *args++; + s32 envG = *args++; + s32 envB = *args++; + set_model_env_color_parameters(primR, primG, primB, envR, envG, envB); + return ApiStatus_DONE2; +} + +BSS IMG_BIN N(PeachLetterImg)[charset_peach_letter_png_width * charset_peach_letter_png_height]; +BSS PAL_BIN N(PeachLetterPal)[0x100]; +MAP_STATIC_PAD(2, letter); +BSS MessageImageData N(MsgImage); + +// TODO look into + 1 here... +API_CALLABLE(N(func_802406E0_AACF10)) { + s8* romStart = charset_ROM_START; + u8* rasterOffset = charset_peach_letter_png; + u16* paletteOffset = (u16*) charset_peach_letter_pal + 1; // todo ??? + + dma_copy(romStart + (s32)rasterOffset, romStart + (s32)rasterOffset + sizeof(N(PeachLetterImg)), &N(PeachLetterImg)); + dma_copy(romStart + (s32)paletteOffset, romStart + (s32)paletteOffset + sizeof(N(PeachLetterPal)), &N(PeachLetterPal)); + + N(MsgImage).raster = N(PeachLetterImg); + N(MsgImage).palette = N(PeachLetterPal); + N(MsgImage).width = charset_peach_letter_png_width; + N(MsgImage).height = charset_peach_letter_png_height; + N(MsgImage).format = G_IM_FMT_CI; + N(MsgImage).bitDepth = G_IM_SIZ_8b; + set_message_images(&N(MsgImage)); + return ApiStatus_DONE2; +} + +EvtScript N(EVS_Scene_ShowInvitation) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 0, 0, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 0, 0, 0) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, 775) + EVT_CALL(SetCamPitch, CAM_DEFAULT, 20, -19) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(N(UnkFunc27), 2, 0, 3) + EVT_CALL(N(UnkFunc27), 1, -1, 3) + EVT_CALL(N(func_80240678_AACEA8), 200, 200, 200, 40, 40, 40) + EVT_CALL(N(func_802406E0_AACF10)) + EVT_WAIT(15) + EVT_CALL(ShowMessageAtScreenPos, MSG_Intro_0022, 160, 40) + EVT_WAIT(12) + EVT_CALL(ShowMessageAtScreenPos, MSG_Intro_0023, 160, 40) + EVT_WAIT(3) + EVT_CALL(GotoMapSpecial, EVT_PTR("kmr_20"), kmr_20_ENTRY_1, TRANSITION_7) + EVT_WAIT(40) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Scene_ApproachParty) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 0, 0, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 0, 0, 0) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(675.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(3.5), EVT_FLOAT(-6.0)) + EVT_CALL(SetCamPosA, CAM_DEFAULT, EVT_FLOAT(60.0), 0) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_THREAD + EVT_CALL(PlayerMoveTo, 0, -250, 150) + EVT_END_THREAD + EVT_THREAD + EVT_CALL(SetNpcAnimation, NPC_Luigi, ANIM_Luigi_RunBack) + EVT_CALL(SetNpcPos, NPC_Luigi, 0, 0, 350) + EVT_CALL(NpcMoveTo, NPC_Luigi, 0, -200, 150) + EVT_CALL(SetNpcAnimation, NPC_Luigi, ANIM_Luigi_IdleBack) + EVT_END_THREAD + EVT_WAIT(100) + EVT_CALL(GotoMap, EVT_PTR("kkj_00"), kkj_00_ENTRY_5) + EVT_WAIT(100) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_01/AAFFF0.c b/src/world/area_osr/osr_01/AAFFF0.c deleted file mode 100644 index 13f05c3ff7..0000000000 --- a/src/world/area_osr/osr_01/AAFFF0.c +++ /dev/null @@ -1,10 +0,0 @@ -#include "osr_01.h" - -s32 func_80240000_AAFFF0(void) { - if (gGameStatusPtr->entryID == osr_01_ENTRY_3) { - sprintf(wMapBgName, "hos_bg"); - } - return FALSE; -} - -const char* N(exit_str_0) = "mac_01\0\0hos_00\0\0mac_04"; diff --git a/src/world/area_osr/osr_01/AB0040.c b/src/world/area_osr/osr_01/AB0040.c deleted file mode 100644 index 2ff56a8e6f..0000000000 --- a/src/world/area_osr/osr_01/AB0040.c +++ /dev/null @@ -1,4 +0,0 @@ -#include "osr_01.h" - -#include "world/common/atomic/TexturePan.inc.c" - diff --git a/src/world/area_osr/osr_01/AB0350.c b/src/world/area_osr/osr_01/AB0350.c deleted file mode 100644 index 52675ab17e..0000000000 --- a/src/world/area_osr/osr_01/AB0350.c +++ /dev/null @@ -1,77 +0,0 @@ -#include "osr_01.h" - -#include "world/common/todo/StashVars.inc.c" - -#include "world/common/todo/GetItemName.inc.c" - -#include "world/common/todo/GetNpcCollisionHeight.inc.c" - -#include "world/common/todo/AddPlayerHandsOffset.inc.c" - -extern s32 N(ItemChoice_HasSelectedItem); -extern s32 N(ItemChoice_SelectedItemID); - -// Needs data migrated -#ifdef NON_MATCHING -ApiStatus func_802406A4_AB0694(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - - if (isInitialCall) { - osr_01_ItemChoice_HasSelectedItem = 0; - } - - if (osr_01_ItemChoice_HasSelectedItem != 0) { - osr_01_ItemChoice_HasSelectedItem = 0; - evt_set_variable(script, *args++, osr_01_ItemChoice_SelectedItemID); - return ApiStatus_DONE2; - } - - return ApiStatus_BLOCK; -} -#else -INCLUDE_ASM(s32, "world/area_osr/osr_01/AB0350", func_802406A4_AB0694); -#endif - -// Needs data migrated -#ifdef NON_MATCHING -ApiStatus func_802406F8_AB06E8(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - - osr_01_ItemChoice_SelectedItemID = evt_get_variable(script, *args++); - osr_01_ItemChoice_HasSelectedItem = 1; - return ApiStatus_DONE2; -} -#else - -ApiStatus N(ItemChoice_SaveSelected)(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - - N(ItemChoice_SelectedItemID) = evt_get_variable(script, *args++); - N(ItemChoice_HasSelectedItem) = TRUE; - return ApiStatus_DONE2; -} -#endif - -BSS s32 osr_01_D_80242180[114]; - -ApiStatus func_80240730_AB0720(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - s32* ptr = (s32*) evt_get_variable(script, *args++); - s32 i; - - if (ptr != NULL) { - for (i = 0; ptr[i] != 0; i++) { - osr_01_D_80242180[i] = ptr[i]; - } - osr_01_D_80242180[i] = 0; - } else { - for (i = 0; i < 112; i++) { - osr_01_D_80242180[i] = i + 16; - osr_01_D_80242180[112] = 0; - } - } - return ApiStatus_DONE2; -} - -extern s32 N(LetterDelivery_SavedNpcAnim); -#include "world/common/todo/LetterDelivery.inc.c" diff --git a/src/world/area_osr/osr_01/osr_01.h b/src/world/area_osr/osr_01/osr_01.h index 2b86936918..fe4a470a9a 100644 --- a/src/world/area_osr/osr_01/osr_01.h +++ b/src/world/area_osr/osr_01/osr_01.h @@ -2,8 +2,21 @@ /// @brief Peach's Castle Grounds - Ruined Castle Grounds #include "common.h" -#include "../osr.h" #include "message_ids.h" #include "map.h" +#include "../osr.h" +#include "mapfs/osr_01_shape.h" +#include "mapfs/osr_01_hit.h" + +enum { + NPC_Toad = 0, +}; + #define NAMESPACE osr_01 + +extern EvtScript N(EVS_Main); +extern EvtScript N(EVS_SetupMusic); +extern EvtScript N(EVS_PlaySong_Starship); +extern EvtScript N(EVS_Scene_Wishing); +extern NpcGroupList N(DefaultNPCs); diff --git a/src/world/area_osr/osr_01/osr_01_0_header.c b/src/world/area_osr/osr_01/osr_01_0_header.c new file mode 100644 index 0000000000..6059eea37a --- /dev/null +++ b/src/world/area_osr/osr_01/osr_01_0_header.c @@ -0,0 +1,23 @@ +#include "osr_01.h" + +s32 N(map_init)(void) { + if (gGameStatusPtr->entryID == osr_01_ENTRY_3) { + sprintf(wMapBgName, "hos_bg"); + } + return FALSE; +} + +EntryList N(Entrances) = { + [osr_01_ENTRY_0] { 0.0, 0.0, 604.0, 0.0 }, + [osr_01_ENTRY_1] { 612.0, 0.0, 111.0, 270.0 }, + [osr_01_ENTRY_2] { 0.0, 0.0, -290.0, 180.0 }, + [osr_01_ENTRY_3] { 0.0, -1000.0, 0.0, 0.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, + .tattle = { MSG_MapTattle_osr_01 }, +}; diff --git a/src/world/area_osr/osr_01/osr_01_1_music.c b/src/world/area_osr/osr_01/osr_01_1_music.c new file mode 100644 index 0000000000..cfca48ed31 --- /dev/null +++ b/src/world/area_osr/osr_01/osr_01_1_music.c @@ -0,0 +1,24 @@ + +#include "osr_01.h" + +EvtScript N(EVS_SetupMusic) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_RANGE(STORY_CH3_STAR_SPRIT_DEPARTED, STORY_CH4_STAR_SPIRIT_RESCUED) + EVT_CALL(SetMusicTrack, 0, SONG_SHY_GUY_INVASION, 0, 6) + EVT_CASE_DEFAULT + EVT_CALL(SetMusicTrack, 0, SONG_TOAD_TOWN, 0, 6) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_PlaySong_Starship) = { + EVT_CALL(GetEntryID, LVar0) + EVT_IF_EQ(LVar0, osr_01_ENTRY_3) + EVT_CALL(SetMusicTrack, 0, SONG_STARSHIP_THEME, 0, 8) + EVT_ELSE + EVT_EXEC(N(EVS_SetupMusic)) + EVT_END_IF + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_01/osr_01_2_main.c b/src/world/area_osr/osr_01/osr_01_2_main.c new file mode 100644 index 0000000000..b5c31b2cb2 --- /dev/null +++ b/src/world/area_osr/osr_01/osr_01_2_main.c @@ -0,0 +1,61 @@ + +#include "osr_01.h" + +#include "world/common/atomic/TexturePan.inc.c" +#include "world/common/atomic/TexturePan.data.inc.c" + +EvtScript N(EVS_ExitWalk_mac_01_2) = EVT_EXIT_WALK(60, osr_01_ENTRY_0, "mac_01", mac_01_ENTRY_2); +EvtScript N(EVS_ExitWalk_hos_00_0) = EVT_EXIT_WALK(60, osr_01_ENTRY_1, "hos_00", hos_00_ENTRY_0); + +EvtScript N(EVS_BindExitTriggers) = { + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_mac_01_2)), TRIGGER_FLOOR_ABOVE, COLLIDER_deilis, 1, 0) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitWalk_hos_00_0)), TRIGGER_FLOOR_ABOVE, COLLIDER_deilie, 1, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_TexPan_Fountain) = { + EVT_SET_GROUP(EVT_GROUP_00) + EVT_CALL(SetTexPanner, MODEL_o501, TEX_PANNER_1) + EVT_CALL(SetTexPanner, MODEL_w2, TEX_PANNER_2) + EVT_THREAD + TEX_PAN_PARAMS_ID(TEX_PANNER_1) + TEX_PAN_PARAMS_STEP( 0, -200, 0, 0) + TEX_PAN_PARAMS_FREQ( 0, 1, 0, 0) + TEX_PAN_PARAMS_INIT( 0, 0, 0, 0) + EVT_EXEC(N(EVS_UpdateTexturePan)) + EVT_END_THREAD + EVT_THREAD + TEX_PAN_PARAMS_ID(TEX_PANNER_2) + TEX_PAN_PARAMS_STEP( 0, 0, 0, 300) + TEX_PAN_PARAMS_FREQ( 0, 0, 0, 1) + TEX_PAN_PARAMS_INIT( 0, 0, 0, 0) + EVT_EXEC(N(EVS_UpdateTexturePan)) + EVT_END_THREAD + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_PEACH_CASTLE_GROUNDS) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_NO_LEAD() + EVT_SET(AF_OSR_01, FALSE) + EVT_SET(GF_MAP_PeachCastleGrounds, TRUE) + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_EXEC_WAIT(N(EVS_PlaySong_Starship)) + EVT_EXEC(N(EVS_TexPan_Fountain)) + EVT_CALL(PlaySoundAtF, SOUND_8000005A, 1, 300, 2, 399) + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(osr_01_ENTRY_3) + EVT_CALL(EnableModel, MODEL_o492, FALSE) + EVT_EXEC(N(EVS_Scene_Wishing)) + EVT_CASE_DEFAULT + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_END_SWITCH + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_01/osr_01_3_npc.c b/src/world/area_osr/osr_01/osr_01_3_npc.c new file mode 100644 index 0000000000..b5d68b9595 --- /dev/null +++ b/src/world/area_osr/osr_01/osr_01_3_npc.c @@ -0,0 +1,117 @@ + +#include "osr_01.h" + +#include "world/common/npc/Toad_Stationary.inc.c" + +#include "world/common/complete/LetterDelivery.inc.c" + +EvtScript N(EVS_Scene_Wishing) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(SetPlayerActionState, ACTION_STATE_LAND) + EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_GRAVITY, FALSE) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 0, 0, 400) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 0, 0, 400) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(400.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(3.0), EVT_FLOAT(-10.0)) + 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(30) + EVT_CALL(SpeakToPlayer, NPC_Toad, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, MSG_HOS_006F) + EVT_WAIT(10) + EVT_CALL(GotoMap, EVT_PTR("mac_04"), mac_04_ENTRY_4) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +s32 N(LetterList)[] = { + ITEM_LETTER13, + ITEM_NONE +}; + +EvtScript N(EVS_NpcInteract_Toad) = { + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH0_MET_STAR_SPIRITS) + EVT_SET(LVar0, MSG_OSR_0000) + EVT_CASE_LT(STORY_CH1_SPOKE_WITH_MERLIN) + EVT_SET(LVar0, MSG_OSR_0001) + EVT_CASE_LT(STORY_CH1_STAR_SPRIT_DEPARTED) + EVT_SET(LVar0, MSG_OSR_0002) + EVT_CASE_LT(STORY_CH2_STAR_SPRIT_DEPARTED) + EVT_IF_EQ(GF_MAC03_BombedRock, FALSE) + EVT_SET(LVar0, MSG_OSR_0003) + EVT_ELSE + EVT_SET(LVar0, MSG_OSR_0004) + EVT_END_IF + EVT_CASE_LT(STORY_CH3_STAR_SPIRIT_RESCUED) + EVT_SET(LVar0, MSG_OSR_0005) + EVT_CASE_LT(STORY_CH4_STAR_SPRIT_DEPARTED) + EVT_IF_EQ(GF_MAC01_MailbagStolen, FALSE) + EVT_SET(LVar0, MSG_OSR_0006) + EVT_ELSE + EVT_IF_EQ(GF_MAC01_MailbagReturned, FALSE) + EVT_SET(LVar0, MSG_OSR_0007) + EVT_ELSE + EVT_SET(LVar0, MSG_OSR_0008) + EVT_END_IF + EVT_END_IF + EVT_CASE_LT(STORY_CH5_DEFEATED_FUZZIPEDE) + EVT_SET(LVar0, MSG_OSR_0009) + EVT_CASE_LT(STORY_CH5_STAR_SPRIT_DEPARTED) + EVT_SET(LVar0, MSG_OSR_000A) + EVT_CASE_LT(STORY_CH6_ARRIVED_AT_FLOWER_FIELDS) + EVT_SET(LVar0, MSG_OSR_000B) + EVT_CASE_LT(STORY_CH6_STAR_SPIRIT_RESCUED) + EVT_SET(LVar0, MSG_OSR_000C) + EVT_CASE_LT(STORY_CH7_INVITED_TO_STARBORN_VALLEY) + EVT_SET(LVar0, MSG_OSR_000D) + EVT_CASE_LT(STORY_CH7_STAR_SPRIT_DEPARTED) + EVT_SET(LVar0, MSG_OSR_000E) + EVT_CASE_LT(STORY_EPILOGUE) + EVT_SET(LVar0, MSG_OSR_000F) + EVT_END_SWITCH + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, 0, LVar0) + EVT_CALL(N(LetterDelivery_Init), + NPC_Toad, ANIM_Toad_Red_Talk, ANIM_Toad_Red_Idle, + ITEM_LETTER13, ITEM_LETTER14, + MSG_OSR_0010, MSG_OSR_0011, MSG_OSR_0012, MSG_OSR_0013, + EVT_PTR(N(LetterList))) + EVT_EXEC_WAIT(N(EVS_DoLetterDelivery)) + EVT_IF_EQ(LVarC, 1) + EVT_RETURN + EVT_END_IF + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Toad) = { + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(osr_01_ENTRY_3) + EVT_CALL(SetNpcPos, NPC_SELF, 0, 0, 400) + EVT_CALL(SetNpcYaw, NPC_SELF, 90) + EVT_CASE_DEFAULT + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Toad))) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_Toad) = { + .id = NPC_Toad, + .settings = &N(NpcSettings_Toad_Stationary), + .pos = { 25.0f, 0.0f, 130.0f }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_2000 | ENEMY_FLAGS_10000 | ENEMY_FLAGS_100000, + .init = &N(EVS_NpcInit_Toad), + .drops = TOAD_DROPS, + .animations = TOAD_RED_ANIMS, + .tattle = MSG_NpcTattle_OSR_LovesToClean, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_Toad)), + {} +}; diff --git a/src/world/area_osr/osr_02/AB2170.c b/src/world/area_osr/osr_02/AB2170.c deleted file mode 100644 index 8ce2577cba..0000000000 --- a/src/world/area_osr/osr_02/AB2170.c +++ /dev/null @@ -1,8 +0,0 @@ -#include "osr_02.h" - -static char* N(exit_str_0) = "kpa_121"; -static char* N(exit_str_1) = "kkj_10"; -static char* N(exit_str_2) = "hos_10"; -static char* N(exit_str_3) = ""; - -#include "world/common/todo/SetPlayerSpriteSet2.inc.c" diff --git a/src/world/area_osr/osr_02/AB2190.c b/src/world/area_osr/osr_02/AB2190.c deleted file mode 100644 index b99ccbf3b0..0000000000 --- a/src/world/area_osr/osr_02/AB2190.c +++ /dev/null @@ -1,8 +0,0 @@ -#include "osr_02.h" - -ApiStatus func_80240020_AB2190(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - - gPlayerStatus.availableDisguiseType = evt_get_float_variable(script, *args++); - return ApiStatus_DONE2; -} diff --git a/src/world/area_osr/osr_02/AB21D0.c b/src/world/area_osr/osr_02/AB21D0.c deleted file mode 100644 index 63f16092c0..0000000000 --- a/src/world/area_osr/osr_02/AB21D0.c +++ /dev/null @@ -1,23 +0,0 @@ -#include "osr_02.h" - -extern s16 D_8024253C_AB46AC[]; - -ApiStatus func_80240060_AB21D0(Evt* script, s32 isInitialCall) { - Npc* npc; - - if (isInitialCall) { - script->functionTemp[1] = 0.0f; - script->functionTempPtr[2] = get_npc_safe(script->owner2.npcID); - script->functionTemp[3] = D_8024253C_AB46AC[script->owner2.npcID - 2]; - } - - if (script->functionTemp[3] != 0) { - script->functionTemp[3]--; - return ApiStatus_BLOCK; - } - - npc = script->functionTempPtr[2]; - npc->verticalRenderOffset = sin_deg(script->functionTempF[1]) * 1.5f; - script->functionTempF[1] = clamp_angle(script->functionTempF[1] + 18.0f); - return ApiStatus_BLOCK; -} diff --git a/src/world/area_osr/osr_02/AB2290.c b/src/world/area_osr/osr_02/AB2290.c deleted file mode 100644 index 557eb1d135..0000000000 --- a/src/world/area_osr/osr_02/AB2290.c +++ /dev/null @@ -1,3 +0,0 @@ -#include "osr_02.h" - -#include "world/common/todo/GetPeachDisguise.inc.c" diff --git a/src/world/area_osr/osr_02/osr_02.h b/src/world/area_osr/osr_02/osr_02.h index 3220ff5406..8d3bb0672c 100644 --- a/src/world/area_osr/osr_02/osr_02.h +++ b/src/world/area_osr/osr_02/osr_02.h @@ -2,8 +2,41 @@ /// @brief Peach's Castle Grounds - Hijacked Castle Entrance #include "common.h" -#include "../osr.h" #include "message_ids.h" #include "map.h" +#include "../osr.h" +#include "mapfs/osr_02_shape.h" +#include "mapfs/osr_02_hit.h" + +#include "sprite/npc/Twink.h" +#include "sprite/npc/WorldEldstar.h" +#include "sprite/npc/WorldMamar.h" +#include "sprite/npc/WorldSkolar.h" +#include "sprite/npc/WorldMuskular.h" +#include "sprite/npc/WorldMisstar.h" +#include "sprite/npc/WorldKlevar.h" +#include "sprite/npc/WorldKalmar.h" +#include "sprite/npc/StarRod.h" + +enum { + NPC_Clubba = 0, + NPC_Peach = 0, + NPC_Twink = 1, + NPC_Eldstar = 2, + NPC_Mamar = 3, + NPC_Skolar = 4, + NPC_Muskular = 5, + NPC_Misstar = 6, + NPC_Klevar = 7, + NPC_Kalmar = 8, + NPC_StarRod = 9, +}; + #define NAMESPACE osr_02 + +extern EvtScript N(EVS_Main); +extern EvtScript N(EVS_Scene_ReturnStarRod); +extern EvtScript N(EVS_MakeEntities); +extern NpcGroupList N(PeachNPCs); +extern NpcGroupList N(DefaultNPCs); diff --git a/src/world/area_osr/osr_02/osr_02_0_header.c b/src/world/area_osr/osr_02/osr_02_0_header.c new file mode 100644 index 0000000000..5a49d616d1 --- /dev/null +++ b/src/world/area_osr/osr_02/osr_02_0_header.c @@ -0,0 +1,19 @@ +#include "osr_02.h" + +s32 N(map_init)(void) { + gGameStatusPtr->playerSpriteSet = PLAYER_SPRITES_COMBINED_EPILOGUE; + return FALSE; +} + +EntryList N(Entrances) = { + [osr_02_ENTRY_0] { -205.0, 0.0, 55.0, 135.0 }, + [osr_02_ENTRY_1] { 0.0, 20.0, -290.0, 180.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, + .tattle = { MSG_MapTattle_osr_02 }, +}; diff --git a/src/world/area_osr/osr_02/osr_02_1_main.c b/src/world/area_osr/osr_02/osr_02_1_main.c new file mode 100644 index 0000000000..48c9da5f2a --- /dev/null +++ b/src/world/area_osr/osr_02/osr_02_1_main.c @@ -0,0 +1,131 @@ +#include "osr_02.h" +#include "effects.h" + +API_CALLABLE(N(SetAvailableDisguise)) { + Bytecode* args = script->ptrReadPos; + + gPlayerStatus.availableDisguiseType = evt_get_float_variable(script, *args++); + return ApiStatus_DONE2; +} + +EvtScript N(EVS_ExitDoor_kpa_121_1) = { + EVT_SET_GROUP(EVT_GROUP_1B) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(UseDoorSounds, DOOR_SOUNDS_METAL) + EVT_SET(LVar0, osr_02_ENTRY_0) + EVT_SET(LVar1, COLLIDER_tt1) + EVT_SET(LVar2, MODEL_o570) + EVT_SET(LVar3, DOOR_SWING_IN) + EVT_EXEC(ExitSingleDoor) + EVT_WAIT(17) + EVT_CALL(GotoMap, EVT_PTR("kpa_121"), kpa_121_ENTRY_1) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_ExitDoor_kkj_10_0) = { + EVT_SET_GROUP(EVT_GROUP_1B) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(UseDoorSounds, DOOR_SOUNDS_LARGE) + EVT_SET(LVar0, osr_02_ENTRY_1) + EVT_SET(LVar1, COLLIDER_tt2) + EVT_SET(LVar2, MODEL_d2) + EVT_SET(LVar3, MODEL_d1) + EVT_EXEC(ExitDoubleDoor) + EVT_WAIT(17) + EVT_CALL(GotoMap, EVT_PTR("kkj_10"), kkj_10_ENTRY_0) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_KeepPeachFromBowsersCastle) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePartnerAI, 1) + EVT_CALL(SpeakToPlayer, NPC_PARTNER, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_Peach_0180) + EVT_CALL(EnablePartnerAI) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindExitTriggers) = { + EVT_IF_EQ(GB_StoryProgress, STORY_CH6_BEGAN_PEACH_MISSION) + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_KeepPeachFromBowsersCastle)), TRIGGER_WALL_PRESS_A, COLLIDER_tt1, 1, 0) + EVT_ELSE + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_kpa_121_1)), TRIGGER_WALL_PRESS_A, COLLIDER_tt1, 1, 0) + EVT_END_IF + EVT_BIND_TRIGGER(EVT_PTR(N(EVS_ExitDoor_kkj_10_0)), TRIGGER_WALL_PRESS_A, COLLIDER_tt2, 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(osr_02_ENTRY_0) + EVT_CALL(UseDoorSounds, DOOR_SOUNDS_METAL) + EVT_SET(LVar2, MODEL_o570) + EVT_SET(LVar3, DOOR_SWING_IN) + EVT_EXEC_WAIT(EnterSingleDoor) + EVT_CASE_EQ(osr_02_ENTRY_1) + EVT_CALL(UseDoorSounds, DOOR_SOUNDS_LARGE) + EVT_SET(LVar2, MODEL_d2) + EVT_SET(LVar3, MODEL_d1) + EVT_EXEC_WAIT(EnterDoubleDoor) + EVT_CASE_EQ(osr_02_ENTRY_2) + EVT_EXEC(N(EVS_Scene_ReturnStarRod)) + EVT_END_SWITCH + EVT_EXEC(N(EVS_BindExitTriggers)) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_PEACHS_CASTLE) + EVT_IF_GT(GB_StoryProgress, STORY_CH8_REACHED_BOWSERS_CASTLE) + EVT_SET(GF_MAP_PeachsCastle, TRUE) + EVT_END_IF + EVT_CALL(SetSpriteShading, SHADING_OSR_02) + EVT_SETUP_CAMERA_NO_LEAD() + EVT_IF_EQ(GB_StoryProgress, STORY_CH6_BEGAN_PEACH_MISSION) + EVT_CALL(N(SetAvailableDisguise), PEACH_DISGUISE_CLUBBA) + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(PeachNPCs))) + EVT_END_IF + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(osr_02_ENTRY_2) + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_END_SWITCH + EVT_EXEC_WAIT(N(EVS_MakeEntities)) + EVT_IF_EQ(GF_KKJ25_Defeated_Bowser, FALSE) + EVT_PLAY_EFFECT(EFFECT_FLAME, 3, EVT_FLOAT(-269.16895), EVT_FLOAT(50.0), EVT_FLOAT(100.22), 1, LVar0) + EVT_PLAY_EFFECT(EFFECT_FLAME, 3, EVT_FLOAT(-2.6025392), EVT_FLOAT(50.0), EVT_FLOAT(161.58301), 1, LVar0) + EVT_PLAY_EFFECT(EFFECT_FLAME, 3, EVT_FLOAT(182.14648), EVT_FLOAT(50.0), EVT_FLOAT(158.0332), 1, LVar0) + EVT_PLAY_EFFECT(EFFECT_FLAME, 3, EVT_FLOAT(346.93848), EVT_FLOAT(50.0), EVT_FLOAT(31.861328), 1, LVar0) + EVT_PLAY_EFFECT(EFFECT_FLAME, 3, EVT_FLOAT(291.04492), EVT_FLOAT(86.206055), EVT_FLOAT(-191.08205), 1, LVar0) + EVT_PLAY_EFFECT(EFFECT_FLAME, 3, EVT_FLOAT(-105.39165), EVT_FLOAT(70.0), EVT_FLOAT(-203.115235), 1, LVar0) + EVT_PLAY_EFFECT(EFFECT_FLAME, 3, EVT_FLOAT(-52.5), EVT_FLOAT(70.0), EVT_FLOAT(-233.73735), 1, LVar0) + EVT_PLAY_EFFECT(EFFECT_FLAME, 3, EVT_FLOAT(52.5), EVT_FLOAT(70.0), EVT_FLOAT(-233.73735), 1, LVar0) + EVT_PLAY_EFFECT(EFFECT_FLAME, 3, EVT_FLOAT(108.2295), EVT_FLOAT(70.0), EVT_FLOAT(-200.6), 1, LVar0) + EVT_ELSE + EVT_CALL(EnableGroup, MODEL_g116, FALSE) + EVT_END_IF + EVT_IF_GE(GB_StoryProgress, STORY_CH8_REACHED_BOWSERS_CASTLE) + EVT_CALL(FadeOutMusic, 0, 500) + EVT_END_IF + EVT_EXEC(N(EVS_EnterMap)) + EVT_WAIT(1) + EVT_IF_EQ(GB_StoryProgress, STORY_CH8_REACHED_BOWSERS_CASTLE) + EVT_SET(GB_StoryProgress, STORY_CH8_REACHED_PEACHS_CASTLE) + EVT_END_IF + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_02/osr_02_2_entity.c b/src/world/area_osr/osr_02/osr_02_2_entity.c new file mode 100644 index 0000000000..6db6a9c965 --- /dev/null +++ b/src/world/area_osr/osr_02/osr_02_2_entity.c @@ -0,0 +1,16 @@ +#include "osr_02.h" +#include "entity.h" + +EvtScript N(EVS_MakeEntities) = { + EVT_IF_EQ(GF_KKJ25_Defeated_Bowser, TRUE) + EVT_RETURN + EVT_END_IF + EVT_IF_LT(GB_StoryProgress, STORY_CH7_STAR_SPRIT_DEPARTED) + EVT_RETURN + EVT_END_IF + EVT_CALL(MakeEntity, EVT_PTR(Entity_HiddenYellowBlock), 180, 60, -15, 0, ITEM_ULTRA_SHROOM, MAKE_ENTITY_END) + EVT_CALL(AssignBlockFlag, GF_OSR02_HiddenItem_UltraShroom) + EVT_CALL(MakeEntity, EVT_PTR(Entity_SavePoint), -100, 60, -50, 0, MAKE_ENTITY_END) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_02/osr_02_3_npc.c b/src/world/area_osr/osr_02/osr_02_3_npc.c new file mode 100644 index 0000000000..9b6f32144f --- /dev/null +++ b/src/world/area_osr/osr_02/osr_02_3_npc.c @@ -0,0 +1,695 @@ +#include "osr_02.h" +#include "effects.h" + +NpcSettings N(NpcSettings_Peach) = { + .height = 46, + .radius = 36, + .level = 99, +}; + +#include "world/common/npc/Twink.inc.c" +#include "world/common/npc/StarSpirit.inc.c" + +EvtScript N(EVS_NpcAuxAI_StarRod) = { + EVT_RETURN + EVT_END +}; + +NpcSettings N(NpcSettings_StarRod) = { + .height = 24, + .radius = 24, + .level = 99, + .otherAI = &N(EVS_NpcAuxAI_StarRod), +}; + +Vec3f N(FlightPath_TwinkStepForward)[] = { + { -10.0, 40.0, 10.0 }, + { 15.0, 33.0, 20.0 }, + { 50.0, 30.0, 30.0 }, +}; + +Vec3f N(FlightPath_TwinkDepart)[] = { + { 50.0, 30.0, 30.0 }, + { 70.0, 45.0, 10.0 }, + { 90.0, 60.0, 30.0 }, + { 70.0, 75.0, 50.0 }, + { 50.0, 90.0, 30.0 }, + { 70.0, 105.0, 10.0 }, + { 90.0, 120.0, 30.0 }, + { 70.0, 135.0, 50.0 }, + { 50.0, 150.0, 30.0 }, + { 70.0, 165.0, 10.0 }, + { 90.0, 180.0, 30.0 }, + { 70.0, 195.0, 50.0 }, + { 50.0, 210.0, 30.0 }, +}; + +EvtScript N(EVS_StarSpirit_FlyAway) = { + EVT_CALL(SetNpcFlagBits, LVar4, NPC_FLAG_40000, TRUE) + EVT_THREAD + EVT_LOOP(30) + EVT_CALL(GetNpcPos, LVar4, LVar0, LVar1, LVar2) + EVT_PLAY_EFFECT(EFFECT_SPARKLES, 3, LVar0, LVar1, LVar2, 20) + EVT_WAIT(6) + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_LOOP(30) + EVT_CALL(GetNpcPos, LVar4, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 20) + EVT_PLAY_EFFECT(EFFECT_SPARKLES, 4, LVar0, LVar1, LVar2, 40) + EVT_WAIT(8) + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_CALL(MakeLerp, 0, 1800, 100, EASING_CUBIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(SetNpcRotation, LVar4, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(GetNpcPos, LVar4, LVar7, LVar8, LVar9) + EVT_CALL(MakeLerp, 80, 260, 100, EASING_CUBIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(SetNpcPos, LVar4, LVar7, LVar0, LVar9) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(SetNpcPos, LVar4, LVar7, NPC_DISPOSE_POS_Y, LVar9) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Twink_FlyAway) = { + EVT_THREAD + EVT_LOOP(30) + EVT_CALL(GetNpcPos, NPC_Twink, LVar0, LVar1, LVar2) + EVT_PLAY_EFFECT(EFFECT_SPARKLES, 3, LVar0, LVar1, LVar2, 20) + EVT_WAIT(6) + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_LOOP(30) + EVT_CALL(GetNpcPos, NPC_Twink, LVar0, LVar1, LVar2) + EVT_ADD(LVar1, 20) + EVT_PLAY_EFFECT(EFFECT_SPARKLES, 4, LVar0, LVar1, LVar2, 40) + EVT_WAIT(8) + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_CALL(MakeLerp, 0, 2160, 120, EASING_CUBIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(SetNpcRotation, NPC_Twink, 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(PlaySoundAtNpc, NPC_Twink, SOUND_62, 0) + EVT_CALL(LoadPath, 120, EVT_PTR(N(FlightPath_TwinkDepart)), ARRAY_COUNT(N(FlightPath_TwinkDepart)), EASING_QUADRATIC_IN) + EVT_LOOP(0) + EVT_CALL(GetNextPathPos) + EVT_CALL(SetNpcPos, NPC_Twink, LVar1, LVar2, LVar3) + EVT_WAIT(1) + EVT_IF_EQ(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(SetNpcPos, NPC_Twink, LVar1, NPC_DISPOSE_POS_Y, LVar3) + EVT_END_THREAD + EVT_THREAD + EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(0.5), 0, 550, EVT_FLOAT(17.0), EVT_FLOAT(-10.0)) + EVT_END_THREAD + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Scene_ReturnStarRod) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SetMusicTrack, 0, SONG_STAR_SPIRIT_THEME, 2, 8) + EVT_CALL(SetPlayerPos, 15, 0, 30) + EVT_CALL(InterpPlayerYaw, 90, 0) + EVT_CALL(GetNpcPos, NPC_PARTNER, LVar0, LVar1, LVar2) + EVT_CALL(SetNpcPos, NPC_PARTNER, -70, LVar1, 15) + EVT_CALL(SetNpcYaw, NPC_PARTNER, 90) + EVT_CALL(SetNpcAnimation, NPC_PARTNER, PARTNER_ANIM_RUN) + EVT_CALL(GetNpcPos, NPC_Eldstar, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-7.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(700.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_WAIT(1) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(350.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_WAIT(20) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_60005) + EVT_CALL(SetNpcPos, NPC_StarRod, 30, 25, 30) + EVT_WAIT(20) + EVT_CALL(SetNpcAnimation, NPC_Eldstar, ANIM_WorldEldstar_Leap) + EVT_CALL(GetNpcPos, NPC_Eldstar, LVar0, LVar1, LVar2) + EVT_SET(LVar1, 80) + EVT_SET(LVar2, 35) + EVT_CALL(SetNpcJumpscale, NPC_StarRod, EVT_FLOAT(0.5)) + EVT_CALL(NpcJump1, NPC_StarRod, LVar0, LVar1, LVar2, 20) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_CALL(PlaySound, SOUND_139) + EVT_LOOP(6) + EVT_PLAY_EFFECT(EFFECT_RADIAL_SHIMMER, 9, LVar0, LVar1, LVar2, 1, 20) + EVT_PLAY_EFFECT(EFFECT_SPARKLES, 1, LVar0, LVar1, LVar2, 30) + EVT_WAIT(10) + EVT_END_LOOP + EVT_LOOP(20) + EVT_ADD(LVar1, -1) + EVT_CALL(SetNpcPos, NPC_StarRod, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(SetNpcPos, NPC_StarRod, NPC_DISPOSE_LOCATION) + EVT_WAIT(20) + EVT_CALL(SetNpcAnimation, NPC_Eldstar, ANIM_WorldEldstar_Idle) + EVT_WAIT(10) + EVT_CALL(SpeakToPlayer, NPC_Eldstar, ANIM_WorldEldstar_Wave, ANIM_WorldEldstar_Idle, 0, MSG_Outro_0000) + EVT_WAIT(10) + EVT_THREAD + EVT_WAIT(5) + EVT_CALL(SetNpcJumpscale, NPC_Eldstar, EVT_FLOAT(0.0)) + EVT_CALL(NpcJump0, NPC_Eldstar, 120, 80, 0, 40) + EVT_CALL(InterpNpcYaw, NPC_Eldstar, 270, 0) + EVT_END_THREAD + EVT_CALL(GetNpcPos, NPC_Eldstar, LVar0, LVar1, LVar2) + EVT_SET(LVar0, 120) + EVT_SET(LVar1, 80) + EVT_SET(LVar2, 0) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-5.5)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_WAIT(10) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(GetNpcPos, NPC_Mamar, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-5.5)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_Mamar, ANIM_WorldMamar_TalkHappy, ANIM_WorldMamar_Idle, 0, MSG_Outro_0001) + EVT_CALL(GetNpcPos, NPC_Skolar, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-5.5)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_Skolar, ANIM_WorldSkolar_TalkAngry, ANIM_WorldSkolar_Idle, 0, MSG_Outro_0002) + EVT_CALL(GetNpcPos, NPC_Muskular, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-5.5)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_Muskular, ANIM_WorldMuskular_Talk, ANIM_WorldMuskular_Idle, 0, MSG_Outro_0003) + EVT_CALL(GetNpcPos, NPC_Misstar, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-5.5)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_Misstar, ANIM_WorldMisstar_Talk, ANIM_WorldMisstar_Idle, 0, MSG_Outro_0004) + EVT_CALL(GetNpcPos, NPC_Klevar, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-5.5)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_Klevar, ANIM_WorldKlevar_Talk, ANIM_WorldKlevar_Idle, 0, MSG_Outro_0005) + EVT_CALL(GetNpcPos, NPC_Kalmar, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-5.5)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_Kalmar, ANIM_WorldKalmar_Talk, ANIM_WorldKalmar_Idle, 0, MSG_Outro_0006) + EVT_CALL(GetNpcPos, NPC_Eldstar, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-5.5)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_Eldstar, ANIM_WorldEldstar_Wave, ANIM_WorldEldstar_Idle, 0, MSG_Outro_0007) + EVT_CALL(GetNpcPos, NPC_Twink, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-2.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_WAIT(5) + EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 5, MSG_Outro_0008) + EVT_CALL(GetNpcPos, NPC_Eldstar, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-6.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(275.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_Eldstar, ANIM_WorldEldstar_Wave, ANIM_WorldEldstar_Idle, 0, MSG_Outro_0009) + EVT_WAIT(20) + EVT_CALL(AdjustCam, CAM_DEFAULT, EVT_FLOAT(90.0), 70, 400, EVT_FLOAT(17.0), EVT_FLOAT(-11.0)) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_1002A) + EVT_THREAD + EVT_SET(LVar4, NPC_Eldstar) + EVT_CALL(PlaySoundAtNpc, LVar4, SOUND_2045, 0) + EVT_EXEC_WAIT(N(EVS_StarSpirit_FlyAway)) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(30) + EVT_SET(LVar4, NPC_Misstar) + EVT_CALL(PlaySoundAtNpc, LVar4, SOUND_2046, 0) + EVT_EXEC_WAIT(N(EVS_StarSpirit_FlyAway)) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(60) + EVT_SET(LVar4, NPC_Skolar) + EVT_CALL(PlaySoundAtNpc, LVar4, SOUND_2045, 0) + EVT_EXEC_WAIT(N(EVS_StarSpirit_FlyAway)) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(90) + EVT_SET(LVar4, NPC_Mamar) + EVT_CALL(PlaySoundAtNpc, LVar4, SOUND_2046, 0) + EVT_EXEC_WAIT(N(EVS_StarSpirit_FlyAway)) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(120) + EVT_SET(LVar4, NPC_Kalmar) + EVT_CALL(PlaySoundAtNpc, LVar4, SOUND_2045, 0) + EVT_EXEC_WAIT(N(EVS_StarSpirit_FlyAway)) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(150) + EVT_SET(LVar4, NPC_Muskular) + EVT_CALL(PlaySoundAtNpc, LVar4, SOUND_2046, 0) + EVT_EXEC_WAIT(N(EVS_StarSpirit_FlyAway)) + EVT_END_THREAD + EVT_WAIT(180) + EVT_SET(LVar4, NPC_Klevar) + EVT_CALL(PlaySoundAtNpc, LVar4, SOUND_2045, 0) + EVT_EXEC_WAIT(N(EVS_StarSpirit_FlyAway)) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_WAIT(20) + EVT_CALL(SetMusicTrack, 0, SONG_TWINK_THEME, 1, 8) + EVT_CALL(LoadPath, 30, EVT_PTR(N(FlightPath_TwinkStepForward)), ARRAY_COUNT(N(FlightPath_TwinkStepForward)), EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(GetNextPathPos) + EVT_CALL(SetNpcPos, NPC_Twink, LVar1, LVar2, LVar3) + EVT_WAIT(1) + EVT_IF_EQ(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_WAIT(5) + EVT_CALL(InterpNpcYaw, NPC_Twink, 270, 0) + EVT_WAIT(10) + EVT_CALL(GetNpcPos, NPC_Twink, LVar0, LVar1, LVar2) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetPanTarget, CAM_DEFAULT, LVar0, LVar1, LVar2) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(17.0), EVT_FLOAT(-4.0)) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(300.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(2.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0, MSG_Outro_000A) + EVT_WAIT(10) + EVT_CALL(SetNpcAnimation, NPC_Peach, ANIM_Peach_C0000) + EVT_WAIT(10) + EVT_CALL(SetNpcAnimation, NPC_Peach, ANIM_Peach_C0026) + EVT_CALL(SpeakToPlayer, NPC_Peach, ANIM_Peach_C0001, ANIM_Peach_C0026, 5, MSG_Outro_000B) + EVT_CALL(SetNpcAnimation, NPC_Peach, ANIM_Peach_C0002) + EVT_WAIT(10) + EVT_CALL(SetNpcAnimation, NPC_Peach, ANIM_Peach_A0001) + EVT_WAIT(10) + EVT_CALL(SetNpcAnimation, NPC_Twink, ANIM_Twink_Disappointed) + EVT_CALL(SpeakToPlayer, NPC_Twink, ANIM_Twink_Disappointed, ANIM_Twink_Disappointed, 0, MSG_Outro_000C) + EVT_CALL(SetNpcAnimation, NPC_Twink, ANIM_Twink_Idle) + EVT_CALL(EndSpeech, NPC_Twink, ANIM_Twink_Talk, ANIM_Twink_Idle, 0) + EVT_WAIT(20) + EVT_EXEC(N(EVS_Twink_FlyAway)) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_1002A) + EVT_WAIT(250) + EVT_CALL(SetNpcAnimation, NPC_Peach, ANIM_Peach_A0002) + EVT_CALL(NpcMoveTo, NPC_Peach, -10, 30, 40) + EVT_CALL(SetNpcAnimation, NPC_Peach, ANIM_Peach_A0001) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_10002) + EVT_CALL(InterpPlayerYaw, 270, 0) + EVT_WAIT(60) + EVT_CALL(InterpPlayerYaw, 90, 0) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_1002A) + EVT_WAIT(20) + EVT_CALL(GotoMap, EVT_PTR("hos_10"), hos_10_ENTRY_2) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Peach) = { + EVT_CALL(SetNpcPos, NPC_SELF, -25, 0, 40) + EVT_CALL(InterpNpcYaw, NPC_SELF, 90, 0) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Twink) = { + EVT_CALL(SetNpcPos, NPC_SELF, -10, 40, 10) + EVT_CALL(SetNpcYaw, NPC_SELF, 90) + EVT_RETURN + EVT_END +}; + +s16 N(SpiritHoverOffsets)[] = { + 1, 3, 5, 7, 7, 5, 3 +}; + +API_CALLABLE(N(AnimateSpiritHover)) { + Npc* npc; + + if (isInitialCall) { + script->functionTemp[1] = 0.0f; + script->functionTempPtr[2] = get_npc_safe(script->owner2.npcID); + script->functionTemp[3] = N(SpiritHoverOffsets)[script->owner2.npcID - 2]; + } + + if (script->functionTemp[3] != 0) { + script->functionTemp[3]--; + return ApiStatus_BLOCK; + } + + npc = script->functionTempPtr[2]; + npc->verticalRenderOffset = sin_deg(script->functionTempF[1]) * 1.5f; + script->functionTempF[1] = clamp_angle(script->functionTempF[1] + 18.0f); + return ApiStatus_BLOCK; +} + +EvtScript N(EVS_NpcAux_Eldstar) = { + EVT_CALL(N(AnimateSpiritHover)) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Eldstar) = { + EVT_CALL(SetNpcPos, NPC_Eldstar, 60, 20, 30) + EVT_CALL(NpcFacePlayer, NPC_SELF, 0) + EVT_CALL(BindNpcAux, NPC_SELF, EVT_PTR(N(EVS_NpcAux_Eldstar))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Mamar) = { + EVT_CALL(SetNpcPos, NPC_SELF, 66, 80, -27) + EVT_CALL(NpcFacePlayer, NPC_SELF, 0) + EVT_CALL(BindNpcAux, NPC_SELF, EVT_PTR(N(EVS_NpcAux_Eldstar))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Skolar) = { + EVT_CALL(SetNpcPos, NPC_SELF, 53, 80, -95) + EVT_CALL(NpcFacePlayer, NPC_SELF, 0) + EVT_CALL(BindNpcAux, NPC_SELF, EVT_PTR(N(EVS_NpcAux_Eldstar))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Muskular) = { + EVT_CALL(SetNpcPos, NPC_SELF, 91, 80, -132) + EVT_CALL(NpcFacePlayer, NPC_SELF, 0) + EVT_CALL(BindNpcAux, NPC_SELF, EVT_PTR(N(EVS_NpcAux_Eldstar))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Misstar) = { + EVT_CALL(SetNpcPos, NPC_SELF, 151, 80, -132) + EVT_CALL(NpcFacePlayer, NPC_SELF, 0) + EVT_CALL(BindNpcAux, NPC_SELF, EVT_PTR(N(EVS_NpcAux_Eldstar))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Klevar) = { + EVT_CALL(SetNpcPos, NPC_SELF, 189, 80, -95) + EVT_CALL(NpcFacePlayer, NPC_SELF, 0) + EVT_CALL(BindNpcAux, NPC_SELF, EVT_PTR(N(EVS_NpcAux_Eldstar))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Kalmar) = { + EVT_CALL(SetNpcPos, NPC_SELF, 176, 80, -27) + EVT_CALL(NpcFacePlayer, NPC_SELF, 0) + EVT_CALL(BindNpcAux, NPC_SELF, EVT_PTR(N(EVS_NpcAux_Eldstar))) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_StarRod) = { + EVT_RETURN + EVT_END +}; + +s32 N(ExtraAnims_Peach)[] = { + ANIM_Peach_A0001, + ANIM_Peach_A0002, + ANIM_Peach_C0000, + ANIM_Peach_C0001, + ANIM_Peach_C0002, + ANIM_Peach_C0006, + ANIM_Peach_C001E, + ANIM_Peach_C0026, + -1 +}; + +s32 N(ExtraAnims_Twink)[] = { + ANIM_Twink_Idle, + ANIM_Twink_Talk, + ANIM_Twink_Disappointed, + -1 +}; + +s32 N(ExtraAnims_Eldstar)[] = { + ANIM_WorldEldstar_Idle, + ANIM_WorldEldstar_Wave, + ANIM_WorldEldstar_Leap, + -1 +}; + +s32 N(ExtraAnims_Mamar)[] = { + ANIM_WorldMamar_Idle, + ANIM_WorldMamar_TalkHappy, + -1 +}; + +s32 N(ExtraAnims_Skolar)[] = { + ANIM_WorldSkolar_Idle, + ANIM_WorldSkolar_TalkAngry, + -1 +}; + +s32 N(ExtraAnims_Muskular)[] = { + ANIM_WorldMuskular_Idle, + ANIM_WorldMuskular_Talk, + -1 +}; + +s32 N(ExtraAnims_Misstar)[] = { + ANIM_WorldMisstar_Idle, + ANIM_WorldMisstar_Talk, + -1 +}; + +s32 N(ExtraAnims_Klevar)[] = { + ANIM_WorldKlevar_Idle, + ANIM_WorldKlevar_Talk, + -1 +}; + +s32 N(ExtraAnims_Kalmar)[] = { + ANIM_WorldKalmar_Idle, + ANIM_WorldKalmar_Talk, + -1 +}; + +StaticNpc N(NpcData_Spirits)[] = { + { + .id = NPC_Peach, + .settings = &N(NpcSettings_Peach), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_100 | ENEMY_FLAGS_200 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_20000, + .init = &N(EVS_NpcInit_Peach), + .drops = NPC_NO_DROPS, + .animations = { + .idle = ANIM_Peach_A0000, + .walk = ANIM_Peach_A0000, + .run = ANIM_Peach_A0000, + .chase = ANIM_Peach_A0000, + .anim_4 = ANIM_Peach_A0000, + .anim_5 = ANIM_Peach_A0000, + .death = ANIM_Peach_A0000, + .hit = ANIM_Peach_A0000, + .anim_8 = ANIM_Peach_A0000, + .anim_9 = ANIM_Peach_A0000, + .anim_A = ANIM_Peach_A0000, + .anim_B = ANIM_Peach_A0000, + .anim_C = ANIM_Peach_A0000, + .anim_D = ANIM_Peach_A0000, + .anim_E = ANIM_Peach_A0000, + .anim_F = ANIM_Peach_A0000, + }, + .extraAnimations = N(ExtraAnims_Peach), + }, + { + .id = NPC_Twink, + .settings = &N(NpcSettings_Twink), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_100 | ENEMY_FLAGS_200 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Twink), + .drops = NPC_NO_DROPS, + .animations = TWINK_ANIMS, + .extraAnimations = N(ExtraAnims_Twink), + }, + { + .id = NPC_Eldstar, + .settings = &N(NpcSettings_StarSpirit), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_100 | ENEMY_FLAGS_200 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Eldstar), + .drops = NPC_NO_DROPS, + .animations = ELDSTAR_ANIMS, + .extraAnimations = N(ExtraAnims_Eldstar), + }, + { + .id = NPC_Mamar, + .settings = &N(NpcSettings_StarSpirit), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_100 | ENEMY_FLAGS_200 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Mamar), + .drops = NPC_NO_DROPS, + .animations = MAMAR_ANIMS, + .extraAnimations = N(ExtraAnims_Mamar), + }, + { + .id = NPC_Skolar, + .settings = &N(NpcSettings_StarSpirit), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 90, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_100 | ENEMY_FLAGS_200 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Skolar), + .drops = NPC_NO_DROPS, + .animations = SKOLAR_ANIMS, + .extraAnimations = N(ExtraAnims_Skolar), + }, + { + .id = NPC_Muskular, + .settings = &N(NpcSettings_StarSpirit), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_100 | ENEMY_FLAGS_200 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Muskular), + .drops = NPC_NO_DROPS, + .animations = MUSKULAR_ANIMS, + .extraAnimations = N(ExtraAnims_Muskular), + }, + { + .id = NPC_Misstar, + .settings = &N(NpcSettings_StarSpirit), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 90, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_100 | ENEMY_FLAGS_200 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Misstar), + .drops = NPC_NO_DROPS, + .animations = MISSTAR_ANIMS, + .extraAnimations = N(ExtraAnims_Misstar), + }, + { + .id = NPC_Klevar, + .settings = &N(NpcSettings_StarSpirit), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_100 | ENEMY_FLAGS_200 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Klevar), + .drops = NPC_NO_DROPS, + .animations = KLEVAR_ANIMS, + .extraAnimations = N(ExtraAnims_Klevar), + }, + { + .id = NPC_Kalmar, + .settings = &N(NpcSettings_StarSpirit), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 90, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_100 | ENEMY_FLAGS_200 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_Kalmar), + .drops = NPC_NO_DROPS, + .animations = KALMAR_ANIMS, + .extraAnimations = N(ExtraAnims_Kalmar), + }, + { + .id = NPC_StarRod, + .settings = &N(NpcSettings_StarRod), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_100 | ENEMY_FLAGS_200 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .init = &N(EVS_NpcInit_StarRod), + .drops = NPC_NO_DROPS, + .animations = { + .idle = ANIM_StarRod_Still, + .walk = ANIM_StarRod_Still, + .run = ANIM_StarRod_Still, + .chase = ANIM_StarRod_Still, + .anim_4 = ANIM_StarRod_Still, + .anim_5 = ANIM_StarRod_Still, + .death = ANIM_StarRod_Still, + .hit = ANIM_StarRod_Still, + .anim_8 = ANIM_StarRod_Still, + .anim_9 = ANIM_StarRod_Still, + .anim_A = ANIM_StarRod_Still, + .anim_B = ANIM_StarRod_Still, + .anim_C = ANIM_StarRod_Still, + .anim_D = ANIM_StarRod_Still, + .anim_E = ANIM_StarRod_Still, + .anim_F = ANIM_StarRod_Still, + }, + }, +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_Spirits)), + {} +}; diff --git a/src/world/area_osr/osr_02/osr_02_4_npc_peach.c b/src/world/area_osr/osr_02/osr_02_4_npc_peach.c new file mode 100644 index 0000000000..52d0a41359 --- /dev/null +++ b/src/world/area_osr/osr_02/osr_02_4_npc_peach.c @@ -0,0 +1,91 @@ +#include "osr_02.h" + +#include "world/common/todo/GetPeachDisguise.inc.c" + +#include "world/common/enemy/complete/Clubba.inc.c" + +s32 N(ExtraAnims_Clubba)[] = { + ANIM_WorldClubba_Anim00, + ANIM_WorldClubba_Anim02, + ANIM_WorldClubba_Anim03, + ANIM_WorldClubba_Anim04, + ANIM_WorldClubba_Anim05, + ANIM_WorldClubba_Anim08, + ANIM_WorldClubba_Anim07, + ANIM_WorldClubba_Anim13, + ANIM_WorldClubba_Anim14, + -1 +}; + +EvtScript N(EVS_NpcInteract_Clubba) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(CancelMessage) + EVT_WAIT(10) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldClubba_Anim08) + EVT_WAIT(10) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldClubba_Anim02) + EVT_CALL(N(GetPeachDisguise), LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(0) + EVT_SET(LVar1, MSG_Peach_014A) + EVT_CASE_EQ(3) + EVT_SET(LVar1, MSG_Peach_014B) + EVT_CASE_DEFAULT + EVT_SET(LVar1, MSG_Peach_014C) + EVT_END_SWITCH + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_WorldClubba_Anim05, ANIM_WorldClubba_Anim02, 16, LVar1) + EVT_WAIT(10) + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldClubba_Anim07) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcIdle_Clubba) = { + EVT_CALL(SetSelfVar, 0, 0) + EVT_CALL(GetNpcPos, NPC_SELF, LVar1, LVar2, LVar3) + EVT_LOOP(0) + EVT_CALL(GetSelfVar, 0, LVar0) + EVT_IF_EQ(LVar0, 0) + EVT_CALL(AwaitPlayerApproach, LVar1, LVar3, 85) + EVT_THREAD + EVT_CALL(SpeakToPlayer, NPC_SELF, ANIM_WorldClubba_Anim07, ANIM_WorldClubba_Anim07, 5, MSG_Peach_0149) + EVT_END_THREAD + EVT_CALL(SetSelfVar, 0, 1) + EVT_ELSE + EVT_CALL(AwaitPlayerLeave, LVar1, LVar3, 90) + EVT_CALL(CancelMessage) + EVT_CALL(SetSelfVar, 0, 0) + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_NpcInit_Clubba) = { + EVT_CALL(SetNpcAnimation, NPC_SELF, ANIM_WorldClubba_Anim07) + EVT_CALL(SetNpcPos, NPC_SELF, -40, 20, -170) + EVT_CALL(SetNpcYaw, NPC_SELF, 200) + EVT_CALL(BindNpcIdle, NPC_SELF, EVT_PTR(N(EVS_NpcIdle_Clubba))) + EVT_CALL(BindNpcInteract, NPC_SELF, EVT_PTR(N(EVS_NpcInteract_Clubba))) + EVT_RETURN + EVT_END +}; + +StaticNpc N(NpcData_Clubba) = { + .id = NPC_Clubba, + .settings = &N(NpcSettings_Clubba), + .pos = { -70.0f, 0.0f, -100.0f }, + .yaw = 270, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800 | ENEMY_FLAGS_400000, + .init = &N(EVS_NpcInit_Clubba), + .drops = NPC_NO_DROPS, + .animations = CLUBBA_ANIMS, + .extraAnimations = N(ExtraAnims_Clubba), +}; + +NpcGroupList N(PeachNPCs) = { + NPC_GROUP(N(NpcData_Clubba)), + {} +}; diff --git a/src/world/area_osr/osr_03/AB6290.c b/src/world/area_osr/osr_03/AB6290.c deleted file mode 100644 index a964a170e4..0000000000 --- a/src/world/area_osr/osr_03/AB6290.c +++ /dev/null @@ -1,12 +0,0 @@ -#include "osr_03.h" - -static char* N(exit_str_0) = "kkj_13"; -static char* N(exit_str_1) = "hos_10"; -static char* N(exit_str_2) = "kpa_60"; -static char* N(exit_str_3) = "kkj_26"; -static char* N(exit_str_4) = "kkj_14"; -static char* N(exit_str_5) = "kkj_15"; -static char* N(exit_str_6) = "hos_10\0"; -static char* N(exit_str_7) = ""; - -#include "world/common/todo/SetPlayerSpriteSet2.inc.c" diff --git a/src/world/area_osr/osr_03/AB62B0.c b/src/world/area_osr/osr_03/AB62B0.c deleted file mode 100644 index 6f5ae9fe73..0000000000 --- a/src/world/area_osr/osr_03/AB62B0.c +++ /dev/null @@ -1,85 +0,0 @@ -#include "osr_03.h" - -ApiStatus func_80240020_AB62B0(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - - evt_set_variable(script, *args++, sin_deg(evt_get_variable(script, *args)) * 20.0f); - return ApiStatus_DONE2; -} - -ApiStatus func_80240090_AB6320(Evt* script, s32 isInitialCall) { - gGameStatusPtr->peachFlags |= PEACH_STATUS_FLAG_IS_PEACH; - script->varTable[0] = gPlayerData.currentPartner; - gPlayerData.currentPartner = PARTNER_TWINK; - return ApiStatus_DONE2; -} - -ApiStatus func_802400C4_AB6354(Evt* script, s32 isInitialCall) { - Npc* npc = get_npc_unsafe(0); - - script->varTable[0] = npc->pos.x + (sin_deg(npc->yaw + gCameras[CAM_DEFAULT].currentYaw + 180.0f) * 20.0f); - script->varTable[1] = npc->pos.y + 18.0f; - script->varTable[2] = npc->pos.z - (cos_deg(npc->yaw + gCameras[CAM_DEFAULT].currentYaw + 180.0f) * 20.0f); - return ApiStatus_DONE2; -} - - -ApiStatus func_802401A0_AB6430(Evt* script, s32 isInitialCall) { - if (isInitialCall) { - script->functionTemp[1] = 0; - script->functionTemp[2] = 0; - } - switch (script->functionTemp[2]) { - case 0: - set_screen_overlay_color(0, 208, 208, 208); - set_screen_overlay_params_front(1, script->functionTemp[1]); - if (script->functionTemp[1] == 255) { - script->functionTemp[2] = 1; - break; - } - script->functionTemp[1] += 64; - if (script->functionTemp[1] < 256) { - break; - } - script->functionTemp[1] = 255; - break; - case 1: - set_screen_overlay_color(0, 208, 208, 208); - set_screen_overlay_params_front(1, script->functionTemp[1]); - if (script->functionTemp[1] == 0) { - return ApiStatus_DONE2; - } - script->functionTemp[1] -= 64; - if (script->functionTemp[1] <= 0) { - script->functionTemp[1] = 0; - } - break; - } - - return ApiStatus_BLOCK; -} - -ApiStatus func_80240290_AB6520(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - f32 frequency; - s32 duration; - - if (isInitialCall) { - duration = evt_get_variable(script, *args++); - frequency = 2.0f * evt_get_float_variable(script, *args++); - script->functionTemp[0] = duration; - if (frequency > 10.0f) { - frequency = 10.0f; - } - - start_rumble((u8) ((frequency / 10.0f) * 256.0f), (duration & 0xFFFF) * 2); - } - - script->functionTemp[0] -= 1; - if (script->functionTemp[0] == 0) - { - return ApiStatus_DONE1; - } - - return ApiStatus_BLOCK; -} diff --git a/src/world/area_osr/osr_03/osr_03.h b/src/world/area_osr/osr_03/osr_03.h index 617708aee0..fdae052649 100644 --- a/src/world/area_osr/osr_03/osr_03.h +++ b/src/world/area_osr/osr_03/osr_03.h @@ -2,8 +2,36 @@ /// @brief Peach's Castle Grounds - Outside Hijacked Castle #include "common.h" -#include "../osr.h" #include "message_ids.h" #include "map.h" +#include "../osr.h" +#include "mapfs/osr_03_shape.h" +#include "mapfs/osr_03_hit.h" + +#include "sprite/npc/WorldKammy.h" + +enum { + NPC_Kammy = 0, +}; + +enum { + MV_Starship_PosX = MapVar(10), + MV_Starship_PosY = MapVar(11), + MV_Starship_PosZ = MapVar(12), + MV_Starship_Yaw = MapVar(13), + MV_CastleLiftDist = MapVar(14), +}; + #define NAMESPACE osr_03 + +extern EvtScript N(EVS_Main); +extern EvtScript N(EVS_AnimateSwingingChains); +extern EvtScript N(EVS_AnimateSpinningRing); +extern EvtScript N(MV_Scene_CastleAscending); +extern EvtScript N(MV_Scene_PlayerTossedOut); +extern EvtScript N(EVS_Scene_UnusedTossOut); +extern EvtScript N(EVS_Scene_BeginInterlude); +extern EvtScript N(EVS_Scene_Starship); +extern EvtScript N(EVS_Scene_CastleDestruction); +extern NpcGroupList N(DefaultNPCs); diff --git a/src/world/area_osr/osr_03/osr_03_0_header.c b/src/world/area_osr/osr_03/osr_03_0_header.c new file mode 100644 index 0000000000..113846b355 --- /dev/null +++ b/src/world/area_osr/osr_03/osr_03_0_header.c @@ -0,0 +1,23 @@ +#include "osr_03.h" + +s32 N(map_init)(void) { + gGameStatusPtr->playerSpriteSet = PLAYER_SPRITES_COMBINED_EPILOGUE; + return FALSE; +} + +EntryList N(Entrances) = { + [osr_03_ENTRY_0] { 0.0, 0.0, 604.0, 0.0 }, + [osr_03_ENTRY_1] { 0.0, 0.0, 0.0, 270.0 }, + [osr_03_ENTRY_2] { 0.0, 0.0, 290.0, 180.0 }, + [osr_03_ENTRY_3] { 0.0, -50.0, 0.0, 180.0 }, + [osr_03_ENTRY_4] { 0.0, 0.0, 0.0, 180.0 }, + [osr_03_ENTRY_5] { 0.0, -50.0, 0.0, 180.0 }, + [osr_03_ENTRY_6] { 0.0, 0.0, -290.0, 180.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, +}; diff --git a/src/world/area_osr/osr_03/osr_03_1_main.c b/src/world/area_osr/osr_03/osr_03_1_main.c new file mode 100644 index 0000000000..3aca2eda02 --- /dev/null +++ b/src/world/area_osr/osr_03/osr_03_1_main.c @@ -0,0 +1,91 @@ +#include "osr_03.h" + +EvtScript N(EVS_HideGroundModels) = { + EVT_CALL(EnableGroup, MODEL_hiru, FALSE) + EVT_CALL(EnableGroup, MODEL_niwa, FALSE) + EVT_CALL(EnableGroup, MODEL_jimidori, FALSE) + EVT_CALL(EnableGroup, MODEL_kumo, FALSE) + EVT_CALL(EnableGroup, MODEL_ki1, FALSE) + EVT_CALL(EnableGroup, MODEL_jimen, FALSE) + EVT_CALL(EnableGroup, MODEL_kemuri, FALSE) + EVT_CALL(EnableGroup, MODEL_obj, FALSE) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_BindExitTriggers) = { + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(osr_03_ENTRY_1) + EVT_EXEC(N(MV_Scene_CastleAscending)) + EVT_CASE_EQ(osr_03_ENTRY_2) + EVT_EXEC(N(MV_Scene_PlayerTossedOut)) + EVT_CASE_EQ(osr_03_ENTRY_3) + EVT_EXEC(N(EVS_HideGroundModels)) + EVT_EXEC(N(EVS_Scene_Starship)) + EVT_CASE_EQ(osr_03_ENTRY_4) + EVT_WAIT(15) + EVT_EXEC(N(EVS_Scene_BeginInterlude)) + EVT_CASE_EQ(osr_03_ENTRY_5) + EVT_EXEC(N(EVS_HideGroundModels)) + EVT_EXEC(N(EVS_Scene_CastleDestruction)) + EVT_CASE_EQ(osr_03_ENTRY_6) + EVT_EXEC(N(EVS_Scene_UnusedTossOut)) + EVT_CASE_DEFAULT + EVT_SET(LVar0, EVT_PTR(N(EVS_BindExitTriggers))) + EVT_EXEC(EnterWalk) + EVT_END_SWITCH + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_NONE) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_NO_LEAD() + EVT_CALL(GetEntryID, LVar0) + EVT_SWITCH(LVar0) + EVT_CASE_EQ(osr_03_ENTRY_4) + EVT_CALL(MakeNpcs, FALSE, EVT_PTR(N(DefaultNPCs))) + EVT_CASE_DEFAULT + EVT_END_SWITCH + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_OR_EQ(STORY_CH0_MET_STAR_SPIRITS) + EVT_CASE_OR_EQ(STORY_CH1_STAR_SPIRIT_RESCUED) + EVT_CASE_OR_EQ(STORY_CH3_STAR_SPIRIT_RESCUED) + EVT_CALL(ClearAmbientSounds, 250) + EVT_CALL(SetMusicTrack, 0, SONG_PRISONER_PEACH_THEME, 0, 8) + EVT_END_CASE_GROUP + EVT_CASE_EQ(STORY_CH2_STAR_SPIRIT_RESCUED) + EVT_CALL(ClearAmbientSounds, 250) + EVT_CALL(SetMusicTrack, 0, SONG_BOWSER_THEME, 0, 8) + EVT_CASE_OR_EQ(STORY_CH4_STAR_SPIRIT_RESCUED) + EVT_CASE_OR_EQ(STORY_CH5_OPENED_ESCAPE_ROUTE) + EVT_CASE_OR_EQ(STORY_CH6_STAR_SPIRIT_RESCUED) + EVT_CALL(ClearAmbientSounds, 250) + EVT_CALL(SetMusicTrack, 0, SONG_PEACH_MISSION, 0, 8) + EVT_END_CASE_GROUP + EVT_CASE_EQ(STORY_CH7_STAR_SPIRIT_RESCUED) + EVT_CALL(ClearAmbientSounds, 250) + EVT_CALL(FadeOutMusic, 0, 500) + EVT_CASE_DEFAULT + EVT_IF_EQ(GF_KKJ25_Defeated_Bowser, FALSE) + EVT_ELSE + EVT_CALL(SetMusicTrack, 0, SONG_BOWSERS_CASTLE_FALLS, 0, 8) + EVT_END_IF + EVT_END_SWITCH + EVT_EXEC(N(EVS_EnterMap)) + EVT_CALL(GetEntryID, LVar0) + EVT_IF_EQ(LVar0, osr_03_ENTRY_4) + EVT_WAIT(15) + EVT_ELSE + EVT_WAIT(1) + EVT_END_IF + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_03/osr_03_2_npc.c b/src/world/area_osr/osr_03/osr_03_2_npc.c new file mode 100644 index 0000000000..f943e3ac35 --- /dev/null +++ b/src/world/area_osr/osr_03/osr_03_2_npc.c @@ -0,0 +1,65 @@ +#include "osr_03.h" + +NpcSettings N(NpcSettings_Kammy) = { + .height = 40, + .radius = 30, + .level = 26, + .onHit = &EnemyNpcHit, + .onDefeat = &EnemyNpcDefeat, +}; + +s32 N(ExtraAnims_Kammy)[] = { + ANIM_WorldKammy_Anim09, + ANIM_WorldKammy_Anim0A, + ANIM_WorldKammy_Anim0B, + ANIM_WorldKammy_Anim0C, + ANIM_WorldKammy_Anim0D, + ANIM_WorldKammy_Anim0E, + ANIM_WorldKammy_Anim0F, + ANIM_WorldKammy_Anim10, + ANIM_WorldKammy_Anim11, + ANIM_WorldKammy_Anim12, + ANIM_WorldKammy_Anim13, + ANIM_WorldKammy_Anim14, + ANIM_WorldKammy_Anim15, + ANIM_WorldKammy_Anim16, + ANIM_WorldKammy_Anim1A, + -1 +}; + +StaticNpc N(NpcData_Kammy) = { + .id = NPC_Kammy, + .settings = &N(NpcSettings_Kammy), + .pos = { NPC_DISPOSE_LOCATION }, + .yaw = 90, + .flags = ENEMY_FLAGS_1 | ENEMY_FLAGS_4 | ENEMY_FLAGS_8 | ENEMY_FLAGS_100 | ENEMY_FLAGS_400 | ENEMY_FLAGS_800, + .drops = { + .dropFlags = NPC_DROP_FLAGS_80, + .heartDrops = NO_DROPS, + .flowerDrops = NO_DROPS, + }, + .animations = { + .idle = ANIM_WorldKammy_Anim01, + .walk = ANIM_WorldKammy_Anim02, + .run = ANIM_WorldKammy_Anim03, + .chase = ANIM_WorldKammy_Anim03, + .anim_4 = ANIM_WorldKammy_Anim01, + .anim_5 = ANIM_WorldKammy_Anim01, + .death = ANIM_WorldKammy_Anim00, + .hit = ANIM_WorldKammy_Anim00, + .anim_8 = ANIM_WorldKammy_Anim03, + .anim_9 = ANIM_WorldKammy_Anim03, + .anim_A = ANIM_WorldKammy_Anim03, + .anim_B = ANIM_WorldKammy_Anim03, + .anim_C = ANIM_WorldKammy_Anim03, + .anim_D = ANIM_WorldKammy_Anim03, + .anim_E = ANIM_WorldKammy_Anim03, + .anim_F = ANIM_WorldKammy_Anim03, + }, + .extraAnimations = N(ExtraAnims_Kammy), +}; + +NpcGroupList N(DefaultNPCs) = { + NPC_GROUP(N(NpcData_Kammy)), + {} +}; diff --git a/src/world/area_osr/osr_03/osr_03_3_intro.c b/src/world/area_osr/osr_03/osr_03_3_intro.c new file mode 100644 index 0000000000..ef42b7488a --- /dev/null +++ b/src/world/area_osr/osr_03/osr_03_3_intro.c @@ -0,0 +1,319 @@ +#include "osr_03.h" + +API_CALLABLE(N(MakeCastleChainAngle)) { + Bytecode* args = script->ptrReadPos; + + evt_set_variable(script, *args++, sin_deg(evt_get_variable(script, *args)) * 20.0f); + return ApiStatus_DONE2; +} + +Vec3f N(UnusedFallingPath1)[] = { + { -100.0, 70.0, 873.0 }, + { -328.0, -10.0, 900.0 }, + { -406.0, -90.0, 958.0 }, + { -485.0, -170.0, 1010.0 }, + { -618.0, -230.0, 1075.0 }, +}; + +EvtScript N(EVS_UnusedFalling1) = { + EVT_CALL(LoadPath, 90, EVT_PTR(N(UnusedFallingPath1)), ARRAY_COUNT(N(UnusedFallingPath1)), EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(GetNextPathPos) + EVT_CALL(SetPlayerPos, LVar1, LVar2, LVar3) + EVT_WAIT(1) + EVT_IF_NE(LVar0, 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +Vec3f N(UnusedFallingPath2)[] = { + { -1380.0, -2950.0, 2300.0 }, + { -1325.0, -3030.0, 2327.0 }, + { -1257.0, -3050.0, 2306.0 }, + { -1225.0, -3000.0, 2318.0 }, + { -1268.0, -3000.0, 2306.0 }, + { -1325.0, -3057.0, 2297.0 }, + { -1387.0, -3134.0, 2324.0 }, + { -1433.0, -3181.0, 2352.0 }, +}; + +EvtScript N(EVS_UnusedFalling2) = { + EVT_CALL(LoadPath, 135, EVT_PTR(N(UnusedFallingPath2)), ARRAY_COUNT(N(UnusedFallingPath2)), EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(GetNextPathPos) + EVT_CALL(SetPlayerPos, LVar1, LVar2, LVar3) + EVT_WAIT(1) + EVT_IF_NE(LVar0, 1) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_AnimateSwingingChains) = { + EVT_LOOP(0) + EVT_CALL(MakeLerp, 90, -90, 30, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_ku_ta, 0, MV_CastleLiftDist, 0) + EVT_CALL(N(MakeCastleChainAngle), LVar0) + EVT_CALL(RotateGroup, MODEL_ku_ta, LVar0, 0, 0, 1) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_LOOP(2) + EVT_CALL(TranslateGroup, MODEL_ku_ta, 0, MV_CastleLiftDist, 0) + EVT_CALL(RotateGroup, MODEL_ku_ta, -20, 0, 0, 1) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(MakeLerp, -90, 90, 30, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_ku_ta, 0, MV_CastleLiftDist, 0) + EVT_CALL(N(MakeCastleChainAngle), LVar0) + EVT_CALL(RotateGroup, MODEL_ku_ta, LVar0, 0, 0, 1) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_LOOP(2) + EVT_CALL(TranslateGroup, MODEL_ku_ta, 0, MV_CastleLiftDist, 0) + EVT_CALL(RotateGroup, MODEL_ku_ta, 20, 0, 0, 1) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_AnimateSpinningRing) = { + EVT_LOOP(0) + EVT_CALL(MakeLerp, 45, -45, 60, EASING_QUADRATIC_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_wa, 0, MV_CastleLiftDist, 0) + EVT_CALL(RotateGroup, MODEL_wa, LVar0, 0, 1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(MakeLerp, -45, 45, 60, EASING_QUADRATIC_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_wa, 0, MV_CastleLiftDist, 0) + EVT_CALL(RotateGroup, MODEL_wa, LVar0, 0, 1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_AnimateCastle) = { + EVT_SET(MV_CastleLiftDist, 0) + EVT_EXEC(N(EVS_AnimateSwingingChains)) + EVT_EXEC(N(EVS_AnimateSpinningRing)) + EVT_CALL(MakeLerp, -800, 4500, 400, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_SET(MV_CastleLiftDist, LVar0) + EVT_CALL(TranslateGroup, MODEL_g439, 0, LVar0, 0) + EVT_CALL(TranslateGroup, MODEL_kao, 0, LVar0, 0) + EVT_CALL(TranslateGroup, MODEL_yoru, 0, LVar0, 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_80241190) = { + EVT_CALL(MakeLerp, 0, -5000, 300, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateModel, MODEL_o1464, 0, LVar0, 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_80241224) = { + EVT_CALL(MakeLerp, 0, -5000, 300, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateModel, MODEL_o1502, 0, LVar0, 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_802412B8) = { + EVT_CALL(MakeLerp, 0, -5000, 300, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateModel, MODEL_o1465, 0, LVar0, 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_8024134C) = { + EVT_CALL(MakeLerp, 0, -5000, 300, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateModel, MODEL_o1503, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(MV_Scene_CastleAscending) = { + EVT_CALL(SetMusicTrack, 0, SONG_BOWSER_ATTACKS, 0, 8) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(SetPlayerPos, 0, 0, 2000) + EVT_CALL(EnableGroup, MODEL_hiru, FALSE) + EVT_CALL(EnableGroup, MODEL_niwa, FALSE) + EVT_CALL(EnableGroup, MODEL_jimidori, FALSE) + EVT_CALL(EnableGroup, MODEL_ki1, FALSE) + EVT_CALL(EnableGroup, MODEL_jimen, FALSE) + EVT_CALL(EnableGroup, MODEL_kemuri, FALSE) + EVT_CALL(EnableGroup, MODEL_obj, FALSE) + EVT_CALL(EnableGroup, MODEL_g277, FALSE) + EVT_CALL(SetCamPerspective, CAM_DEFAULT, 3, 80, 16, 4096) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 0, -1, 0) + EVT_CALL(SetCamType, CAM_DEFAULT, 1, TRUE) + EVT_CALL(SetPanTarget, CAM_DEFAULT, -150, 0, 0) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(-13.0), EVT_FLOAT(18.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_EXEC(N(EVS_AnimateCastle)) + EVT_WAIT(1) + EVT_CALL(SetPanTarget, CAM_DEFAULT, -50, 200, 0) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(1000.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.75)) + EVT_WAIT(180) + EVT_CALL(GotoMap, EVT_PTR("kkj_13"), kkj_13_ENTRY_2) + EVT_WAIT(100) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; + +Vec3f N(FlightPath_TossedOut)[] = { + { -300.0, 0.0, 300.0 }, + { -500.0, 25.0, 900.0 }, + { -720.0, -650.0, 1500.0 }, +}; + +EvtScript N(MV_Scene_PlayerTossedOut) = { + EVT_CALL(FadeOutMusic, 0, 500) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_GotItem) + EVT_CALL(EnableGroup, MODEL_hiru, FALSE) + EVT_CALL(EnableGroup, MODEL_niwa, FALSE) + EVT_CALL(EnableGroup, MODEL_jimidori, FALSE) + EVT_CALL(EnableGroup, MODEL_kumo, FALSE) + EVT_CALL(EnableGroup, MODEL_ki1, FALSE) + EVT_CALL(EnableGroup, MODEL_jimen, FALSE) + EVT_CALL(EnableGroup, MODEL_kemuri, FALSE) + EVT_CALL(EnableGroup, MODEL_obj, FALSE) + EVT_CALL(SetCamPerspective, CAM_DEFAULT, 3, 80, 16, 4096) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 0, -1, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 0, -1, 0) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(-13.0), EVT_FLOAT(18.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_WAIT(1) + EVT_SET(MV_CastleLiftDist, 0) + EVT_EXEC(N(EVS_AnimateSwingingChains)) + EVT_EXEC(N(EVS_AnimateSpinningRing)) + EVT_CHILD_THREAD + EVT_SET(LVar0, 0) + EVT_LOOP(0) + EVT_ADD(LVar0, 45) + EVT_CALL(InterpPlayerYaw, LVar0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_CHILD_THREAD + EVT_CALL(LoadPath, 90, EVT_PTR(N(FlightPath_TossedOut)), ARRAY_COUNT(N(FlightPath_TossedOut)), EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(GetNextPathPos) + EVT_CALL(SetPlayerPos, LVar1, LVar2, LVar3) + EVT_WAIT(1) + EVT_IF_EQ(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(GotoMap, EVT_PTR("kkj_13"), kkj_13_ENTRY_3) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; + +// alternate scene for the player being tossed out the window, where they flutter down like a piece of paper +EvtScript N(EVS_Scene_UnusedTossOut) = { + EVT_CALL(FadeOutMusic, 0, 500) + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(SetPlayerFlagBits, PS_FLAGS_NO_FLIPPING, TRUE) + EVT_CALL(InterpPlayerYaw, 90, 0) + EVT_CALL(SetPlayerAnimation, ANIM_Mario_FallBack) + EVT_CALL(SetPlayerFlagBits, PS_FLAGS_NO_FLIPPING, FALSE) + EVT_CALL(EnableGroup, MODEL_hiru, FALSE) + EVT_CALL(EnableGroup, MODEL_niwa, FALSE) + EVT_CALL(EnableGroup, MODEL_jimidori, FALSE) + EVT_CALL(EnableGroup, MODEL_kumo, FALSE) + EVT_CALL(EnableGroup, MODEL_ki1, FALSE) + EVT_CALL(EnableGroup, MODEL_jimen, FALSE) + EVT_CALL(EnableGroup, MODEL_kemuri, FALSE) + EVT_CALL(EnableGroup, MODEL_obj, FALSE) + EVT_CALL(SetCamPerspective, CAM_DEFAULT, 3, 25, 16, 6000) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 0, 0, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, -400, -1500, 0) + EVT_CALL(SetCamDistance, CAM_DEFAULT, EVT_FLOAT(3500.0)) + EVT_CALL(SetCamPosA, CAM_DEFAULT, -300, -160) + EVT_CALL(SetCamPosB, CAM_DEFAULT, 300, 80) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(-30.0), EVT_FLOAT(0.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_WAIT(1) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_WAIT(15) + EVT_EXEC_WAIT(N(EVS_UnusedFalling2)) + EVT_WAIT(60) + EVT_CALL(GotoMap, EVT_PTR("hos_10"), hos_10_ENTRY_5) + EVT_WAIT(100) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_03/osr_03_4_starship.c b/src/world/area_osr/osr_03/osr_03_4_starship.c new file mode 100644 index 0000000000..31038a8195 --- /dev/null +++ b/src/world/area_osr/osr_03/osr_03_4_starship.c @@ -0,0 +1,98 @@ +#include "osr_03.h" + +EvtScript N(EVS_SetStarshipPosRot) = { + EVT_LOOP(0) + EVT_CALL(TranslateGroup, MODEL_g277, MV_Starship_PosX, MV_Starship_PosY, MV_Starship_PosZ) + EVT_CALL(RotateGroup, MODEL_g277, MV_Starship_Yaw, 0, 1, 0) + EVT_SET(LVar0, MV_Starship_PosX) + EVT_SET(LVar1, MV_Starship_PosY) + EVT_SET(LVar2, MV_Starship_PosZ) + EVT_ADD(LVar1, 20) + EVT_ADD(LVar2, -10) + EVT_CALL(SetPlayerPos, LVar0, LVar1, LVar2) + EVT_ADD(LVar2, 20) + EVT_CALL(SetNpcPos, NPC_PARTNER, LVar0, LVar1, LVar2) + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +Vec3f N(FlightPath)[] = { + { -700.0, -350.0, 1600.0 }, + { -700.0, -470.0, 1600.0 }, + { -660.0, -505.0, 1590.0 }, + { -565.0, -520.0, 1615.0 }, + { -235.0, -660.0, 1445.0 }, + { -110.0, -715.0, 1300.0 }, + { 15.0, -770.0, 1155.0 }, + { 0.0, -770.0, 920.0 }, + { 20.0, -600.0, 600.0 }, +}; + +EvtScript N(EVS_Scene_Starship) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(SetPlayerActionState, ACTION_STATE_LAND) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_GRAVITY, FALSE) + EVT_CALL(TranslateGroup, MODEL_g277, -700, -350, 1600) + EVT_SET(MV_Starship_Yaw, 50) + EVT_SET(MV_Starship_PosX, -700) + EVT_SET(MV_Starship_PosY, -350) + EVT_SET(MV_Starship_PosZ, 1600) + EVT_EXEC(N(EVS_SetStarshipPosRot)) + EVT_SET(MV_CastleLiftDist, 0) + EVT_EXEC(N(EVS_AnimateSwingingChains)) + EVT_EXEC(N(EVS_AnimateSpinningRing)) + EVT_CALL(SetCamPerspective, CAM_DEFAULT, 3, 80, 16, 4096) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 0, -1, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 0, -1, 0) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(-13.0), EVT_FLOAT(18.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_THREAD + EVT_CALL(PlaySound, SOUND_180) + EVT_CALL(MakeLerp, 50, 10, 10, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_SET(MV_Starship_Yaw, LVar0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(MakeLerp, 10, 115, 80, EASING_COS_IN_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_SET(MV_Starship_Yaw, LVar0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_CHILD_THREAD + EVT_LOOP(0) + EVT_CALL(func_802D2884, 0, 0, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_CHILD_THREAD + EVT_THREAD + EVT_CALL(LoadPath, 120, EVT_PTR(N(FlightPath)), ARRAY_COUNT(N(FlightPath)), EASING_LINEAR) + EVT_LABEL(90) + EVT_CALL(GetNextPathPos) + EVT_SET(MV_Starship_PosX, LVar1) + EVT_SET(MV_Starship_PosY, LVar2) + EVT_SET(MV_Starship_PosZ, LVar3) + EVT_WAIT(1) + EVT_IF_EQ(LVar0, 1) + EVT_GOTO(90) + EVT_END_IF + EVT_END_THREAD + EVT_WAIT(100) + EVT_CALL(GotoMap, EVT_PTR("kpa_60"), kpa_60_ENTRY_4) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_03/osr_03_5_interlude.c b/src/world/area_osr/osr_03/osr_03_5_interlude.c new file mode 100644 index 0000000000..f899a0f594 --- /dev/null +++ b/src/world/area_osr/osr_03/osr_03_5_interlude.c @@ -0,0 +1,160 @@ +#include "osr_03.h" +#include "effects.h" + +API_CALLABLE(N(SetPlayerAsPeach)) { + gGameStatusPtr->peachFlags |= PEACH_STATUS_FLAG_IS_PEACH; + script->varTable[0] = gPlayerData.currentPartner; + gPlayerData.currentPartner = PARTNER_TWINK; + return ApiStatus_DONE2; +} + +API_CALLABLE(N(GetKammyFlightEmitterPos)) { + Npc* npc = get_npc_unsafe(NPC_Kammy); + + script->varTable[0] = npc->pos.x + (sin_deg(npc->yaw + gCameras[CAM_DEFAULT].currentYaw + 180.0f) * 20.0f); + script->varTable[1] = npc->pos.y + 18.0f; + script->varTable[2] = npc->pos.z - (cos_deg(npc->yaw + gCameras[CAM_DEFAULT].currentYaw + 180.0f) * 20.0f); + return ApiStatus_DONE2; +} + +Vec3f N(KammyFlightPath1)[] = { + { -700.0, -370.0, 1600.0 }, + { -750.0, -450.0, 1550.0 }, + { -700.0, -530.0, 1550.0 }, + { -630.0, -550.0, 1550.0 }, +}; + +Vec3f N(KammyFlightPath2)[] = { + { -630.0, -550.0, 1550.0 }, + { -430.0, -520.0, 1525.0 }, + { -350.0, -430.0, 1500.0 }, + { -100.0, -100.0, 1000.0 }, + { 0.0, 0.0, 500.0 }, + { 0.0, 0.0, 0.0 }, +}; + +EvtScript N(EVS_PlayKammyFlightFX) = { + EVT_CHILD_THREAD + EVT_SET(LVar0, 110) + EVT_LOOP(0) + EVT_CALL(PlaySoundWithVolume, SOUND_295, LVar0) + EVT_ADD(LVar0, -2) + EVT_IF_LT(LVar0, 10) + EVT_SET(LVar0, 10) + EVT_END_IF + EVT_WAIT(4) + EVT_END_LOOP + EVT_END_CHILD_THREAD + EVT_CALL(GetNpcPos, NPC_Kammy, LVar6, LVar7, LVar8) + EVT_LOOP(0) + EVT_CALL(N(GetKammyFlightEmitterPos)) + EVT_CALL(GetNpcPos, NPC_Kammy, LVar9, LVarA, LVarB) + EVT_SET(LVar3, LVar9) + EVT_SET(LVar4, LVarA) + EVT_SET(LVar5, LVarB) + EVT_SUB(LVar3, LVar6) + EVT_SUB(LVar4, LVar7) + EVT_SUB(LVar5, LVar8) + EVT_SET(LVar6, LVar9) + EVT_SET(LVar7, LVarA) + EVT_SET(LVar8, LVarB) + EVT_IF_EQ(LVar3, 0) + EVT_IF_EQ(LVar5, 0) + EVT_ELSE + EVT_PLAY_EFFECT(EFFECT_PURPLE_RING, 0, LVar0, LVar1, LVar2, LVar3, LVar4, LVar5, EVT_FLOAT(1.0)) + EVT_END_IF + EVT_ELSE + EVT_PLAY_EFFECT(EFFECT_PURPLE_RING, 0, LVar0, LVar1, LVar2, LVar3, LVar4, LVar5, EVT_FLOAT(1.0)) + EVT_END_IF + EVT_WAIT(3) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_KammyReturnsToCastle) = { + EVT_WAIT(30) + EVT_THREAD + EVT_LOOP(0) + EVT_CALL(NpcFacePlayer, NPC_Kammy, 0) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_EXEC_GET_TID(N(EVS_PlayKammyFlightFX), LVar9) + EVT_CALL(SetNpcAnimation, NPC_Kammy, ANIM_WorldKammy_Anim1A) + EVT_CALL(LoadPath, 30, EVT_PTR(N(KammyFlightPath1)), ARRAY_COUNT(N(KammyFlightPath1)), EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(GetNextPathPos) + EVT_CALL(SetNpcPos, NPC_Kammy, LVar1, LVar2, LVar3) + EVT_IF_EQ(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(LoadPath, 150, EVT_PTR(N(KammyFlightPath2)), ARRAY_COUNT(N(KammyFlightPath2)), EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(GetNextPathPos) + EVT_CALL(SetNpcPos, NPC_Kammy, LVar1, LVar2, LVar3) + EVT_IF_EQ(LVar0, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_WAIT(1) + EVT_END_LOOP + EVT_KILL_THREAD(LVar9) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Scene_BeginInterlude) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_GRAVITY, FALSE) + EVT_CALL(EnableGroup, MODEL_hiru, FALSE) + EVT_CALL(EnableGroup, MODEL_niwa, FALSE) + EVT_CALL(EnableGroup, MODEL_jimidori, FALSE) + EVT_CALL(EnableGroup, MODEL_kumo, FALSE) + EVT_CALL(EnableGroup, MODEL_ki1, FALSE) + EVT_CALL(EnableGroup, MODEL_jimen, FALSE) + EVT_CALL(EnableGroup, MODEL_kemuri, FALSE) + EVT_CALL(EnableGroup, MODEL_obj, FALSE) + EVT_CALL(SetCamPerspective, CAM_DEFAULT, 3, 80, 16, 4096) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 0, -1, 0) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 0, -1, 0) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(-13.0), EVT_FLOAT(18.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_SET(MV_CastleLiftDist, 0) + EVT_EXEC(N(EVS_AnimateSwingingChains)) + EVT_EXEC(N(EVS_AnimateSpinningRing)) + EVT_WAIT(30) + EVT_IF_LT(GB_StoryProgress, STORY_CH0_KAMMY_RETURNED_TO_BOWSER) + EVT_EXEC_WAIT(N(EVS_KammyReturnsToCastle)) + EVT_END_IF + EVT_WAIT(80) + EVT_CALL(N(SetPlayerAsPeach)) + EVT_SET(GB_KKJ_LastPartner, LVar0) + EVT_SWITCH(GB_StoryProgress) + EVT_CASE_LT(STORY_CH0_KAMMY_RETURNED_TO_BOWSER) + EVT_CALL(GotoMap, EVT_PTR("kkj_15"), kkj_15_ENTRY_2) + EVT_CASE_LT(STORY_CH0_BEGAN_PEACH_MISSION) + EVT_CALL(GotoMap, EVT_PTR("kkj_14"), kkj_14_ENTRY_3) + EVT_CASE_LT(STORY_CH1_BEGAN_PEACH_MISSION) + EVT_CALL(GotoMap, EVT_PTR("kkj_14"), kkj_14_ENTRY_4) + EVT_CASE_LT(STORY_CH2_BEGAN_PEACH_MISSION) + EVT_CALL(GotoMap, EVT_PTR("kkj_14"), kkj_14_ENTRY_5) + EVT_CASE_LT(STORY_CH3_BEGAN_PEACH_MISSION) + EVT_CALL(GotoMap, EVT_PTR("kkj_14"), kkj_14_ENTRY_6) + EVT_CASE_LT(STORY_CH4_BEGAN_PEACH_MISSION) + EVT_CALL(GotoMap, EVT_PTR("kkj_14"), kkj_14_ENTRY_7) + EVT_CASE_LT(STORY_CH5_BEGAN_PEACH_MISSION) + EVT_CALL(GotoMap, EVT_PTR("kkj_14"), kkj_14_ENTRY_8) + EVT_CASE_LT(STORY_CH6_BEGAN_PEACH_MISSION) + EVT_CALL(GotoMap, EVT_PTR("kkj_14"), kkj_14_ENTRY_9) + EVT_CASE_LT(STORY_CH7_BEGAN_PEACH_MISSION) + EVT_CALL(GotoMap, EVT_PTR("kkj_26"), kkj_26_ENTRY_1) + EVT_END_SWITCH + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_03/osr_03_6_ending.c b/src/world/area_osr/osr_03/osr_03_6_ending.c new file mode 100644 index 0000000000..b7d5e69f9d --- /dev/null +++ b/src/world/area_osr/osr_03/osr_03_6_ending.c @@ -0,0 +1,191 @@ +#include "osr_03.h" +#include "effects.h" + +API_CALLABLE(N(FlashScreenWhite)) { + if (isInitialCall) { + script->functionTemp[1] = 0; + script->functionTemp[2] = 0; + } + switch (script->functionTemp[2]) { + case 0: // fading in + set_screen_overlay_color(0, 208, 208, 208); + set_screen_overlay_params_front(1, script->functionTemp[1]); + if (script->functionTemp[1] == 255) { + script->functionTemp[2] = 1; + break; + } + script->functionTemp[1] += 64; + if (script->functionTemp[1] < 256) { + break; + } + script->functionTemp[1] = 255; + break; + case 1: // fading out + set_screen_overlay_color(0, 208, 208, 208); + set_screen_overlay_params_front(1, script->functionTemp[1]); + if (script->functionTemp[1] == 0) { + return ApiStatus_DONE2; + } + script->functionTemp[1] -= 64; + if (script->functionTemp[1] <= 0) { + script->functionTemp[1] = 0; + } + break; + } + + return ApiStatus_BLOCK; +} + +API_CALLABLE(N(BigExplosionRumble)) { + Bytecode* args = script->ptrReadPos; + f32 frequency; + s32 duration; + + if (isInitialCall) { + duration = evt_get_variable(script, *args++); + frequency = 2.0f * evt_get_float_variable(script, *args++); + script->functionTemp[0] = duration; + if (frequency > 10.0f) { + frequency = 10.0f; + } + + start_rumble((u8) ((frequency / 10.0f) * 256.0f), (duration & 0xFFFF) * 2); + } + + script->functionTemp[0]--; + if (script->functionTemp[0] == 0) + { + return ApiStatus_DONE1; + } + + return ApiStatus_BLOCK; +} + +EvtScript N(EVS_UpdateCamShaking) = { + EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 210, EVT_FLOAT(2.0)) + EVT_CALL(MakeLerp, 200, 50, 65, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_DIVF(LVar0, 100) + EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 4, LVar0) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +s32 N(ExplosionPositions)[] = { + -520, -280, 270, + 230, -150, 300, + -500, -200, 190, + -420, -230, -170, + -400, -400, 450, + 0, -720, 620, + -270, -700, 470, + 320, -460, 530, +}; + +EvtScript N(EVS_PlayExplosionFX) = { + EVT_SET(LVar4, 20) + EVT_SET(LVar5, 110) + EVT_LOOP(0) + EVT_USE_BUF(EVT_PTR(N(ExplosionPositions))) + EVT_LOOP(8) + EVT_CALL(PlaySoundWithVolume, SOUND_B000001C, LVar5) + EVT_BUF_READ3(LVar0, LVar1, LVar2) + EVT_PLAY_EFFECT(EFFECT_RING_BLAST, 0, LVar0, LVar1, LVar2, EVT_FLOAT(6.0), 30) + EVT_WAIT(LVar4) + EVT_END_LOOP + EVT_ADD(LVar5, -10) + EVT_IF_LT(LVar5, 10) + EVT_SET(LVar5, 10) + EVT_END_IF + EVT_ADD(LVar4, -4) + EVT_IF_LT(LVar4, 5) + EVT_SET(LVar4, 5) + EVT_END_IF + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Scene_CastleDestruction) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePartnerAI, 0) + EVT_CALL(SetNpcFlagBits, NPC_PARTNER, NPC_FLAG_GRAVITY, FALSE) + EVT_CALL(SetPlayerActionState, ACTION_STATE_LAND) + EVT_CALL(SetPlayerPos, 0, 0, 0) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_SET(MV_CastleLiftDist, 0) + EVT_EXEC(N(EVS_AnimateSwingingChains)) + EVT_EXEC(N(EVS_AnimateSpinningRing)) + EVT_EXEC(N(EVS_UpdateCamShaking)) + EVT_EXEC_GET_TID(N(EVS_PlayExplosionFX), LVar9) + EVT_CALL(SetCamPerspective, CAM_DEFAULT, 3, 22, 16, 4096) + EVT_CALL(UseSettingsFrom, CAM_DEFAULT, 0, 0, 0) + EVT_CALL(SetCamType, CAM_DEFAULT, 1, TRUE) + EVT_CALL(SetPanTarget, CAM_DEFAULT, -60, 0, 0) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(-20.0), EVT_FLOAT(-4.0)) + EVT_CALL(SetCamPosA, CAM_DEFAULT, 0, -40) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(90.0)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_WAIT(20) + EVT_CALL(SetPanTarget, CAM_DEFAULT, 0, 0, 0) + EVT_CALL(SetCamPitch, CAM_DEFAULT, EVT_FLOAT(-13.0), EVT_FLOAT(15.0)) + EVT_CALL(SetCamSpeed, CAM_DEFAULT, EVT_FLOAT(0.3)) + EVT_CALL(PanToTarget, CAM_DEFAULT, 0, 1) + EVT_CALL(WaitForCam, CAM_DEFAULT, EVT_FLOAT(1.0)) + EVT_THREAD + EVT_LOOP(6) + EVT_CALL(RandInt, 20, LVar0) + EVT_ADD(LVar0, 30) + EVT_WAIT(LVar0) + EVT_CALL(N(FlashScreenWhite)) + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(MakeLerp, 220, 600, 90, EASING_QUADRATIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_SETF(LVar2, LVar0) + EVT_DIVF(LVar2, 10) + EVT_CALL(SetCamPerspective, CAM_DEFAULT, 3, LVar2, 16, 4096) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(MakeLerp, 600, 1200, 250, EASING_CUBIC_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_SETF(LVar2, LVar0) + EVT_DIVF(LVar2, 10) + EVT_CALL(SetCamPerspective, CAM_DEFAULT, 3, LVar2, 1, 4096) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_KILL_THREAD(LVar9) + EVT_WAIT(50) + EVT_CALL(PlaySound, SOUND_A4) + EVT_PLAY_EFFECT(EFFECT_LIGHT_RAYS, 2, 0, -430, 1920, 15, LVar9) + EVT_WAIT(30) + EVT_THREAD + EVT_CALL(N(BigExplosionRumble), 30, EVT_FLOAT(2.0)) + EVT_CALL(MakeLerp, 200, 100, 15, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_DIVF(LVar0, 100) + EVT_CALL(N(BigExplosionRumble), 4, LVar0) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(GotoMapSpecial, EVT_PTR("hos_10"), hos_10_ENTRY_1, TRANSITION_7) + EVT_WAIT(100) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_04/AB92B0.c b/src/world/area_osr/osr_04/AB92B0.c deleted file mode 100644 index fa4ea5b96f..0000000000 --- a/src/world/area_osr/osr_04/AB92B0.c +++ /dev/null @@ -1,17 +0,0 @@ -#include "osr_04.h" - -ApiStatus func_80240000_AB92B0(Evt *script, s32 isInitialCall) { - gGameStatusPtr->playerSpriteSet = PLAYER_SPRITES_COMBINED_EPILOGUE; - sprintf(wMapShapeName, "osr_03_shape"); - sprintf(wMapHitName, "osr_03_hit"); - return ApiStatus_BLOCK; -} - -const char* N(exit_str_0) = "kkj_03"; - -ApiStatus func_80240050_AB9300(Evt* script, s32 isInitialCall) { - Bytecode* args = script->ptrReadPos; - - evt_set_variable(script, *args++, (sin_deg(evt_get_variable(script, *args)) * 20.0f)); - return ApiStatus_DONE2; -} diff --git a/src/world/area_osr/osr_04/osr_04.h b/src/world/area_osr/osr_04/osr_04.h index 043fea5b33..c1262d5f16 100644 --- a/src/world/area_osr/osr_04/osr_04.h +++ b/src/world/area_osr/osr_04/osr_04.h @@ -2,8 +2,19 @@ /// @brief Peach's Castle Grounds - Castle Hijacking Scene #include "common.h" -#include "../osr.h" #include "message_ids.h" #include "map.h" +#include "../osr.h" +#include "mapfs/osr_03_shape.h" +#include "mapfs/osr_03_hit.h" + +enum { + MV_SmokeVelY = MapVar(1), + MV_CastleLiftDist = MapVar(14), +}; + #define NAMESPACE osr_04 + +extern EvtScript N(EVS_Main); +extern EvtScript N(EVS_Scene_BowsersAssault); diff --git a/src/world/area_osr/osr_04/osr_04_0_header.c b/src/world/area_osr/osr_04/osr_04_0_header.c new file mode 100644 index 0000000000..56dc82f1ad --- /dev/null +++ b/src/world/area_osr/osr_04/osr_04_0_header.c @@ -0,0 +1,12 @@ +#include "osr_04.h" + +EntryList N(Entrances) = { + [osr_04_ENTRY_0] { 0.0, 0.0, 604.0, 0.0 }, +}; + +MapSettings N(settings) = { + .main = &N(EVS_Main), + .entryList = &N(Entrances), + .entryCount = ENTRY_COUNT(N(Entrances)), + .background = &gBackgroundImage, +}; diff --git a/src/world/area_osr/osr_04/osr_04_1_main.c b/src/world/area_osr/osr_04/osr_04_1_main.c new file mode 100644 index 0000000000..7632647904 --- /dev/null +++ b/src/world/area_osr/osr_04/osr_04_1_main.c @@ -0,0 +1,40 @@ +#include "osr_04.h" + +EvtScript N(EVS_TexPan_Smoke) = { + EVT_SET_GROUP(EVT_GROUP_00) + EVT_CALL(SetTexPanner, MODEL_ke1, TEX_PANNER_0) + EVT_CALL(SetTexPanner, MODEL_ke2, TEX_PANNER_1) + EVT_CALL(SetTexPanner, MODEL_ke3, TEX_PANNER_2) + EVT_SET(LVar0, 0) + EVT_SET(LVar1, 0) + EVT_LABEL(10) + EVT_LOOP(5) + EVT_CALL(SetTexPanOffset, TEX_PANNER_0, 0, LVar0, LVar1) + EVT_CALL(SetTexPanOffset, TEX_PANNER_1, 0, LVar0, LVar1) + EVT_CALL(SetTexPanOffset, TEX_PANNER_2, 0, LVar0, LVar1) + EVT_ADD(LVar1, 100) + EVT_WAIT(1) + EVT_END_LOOP + EVT_ADD(LVar0, 0x2000) + EVT_GOTO(10) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_EnterMap) = { + EVT_EXEC(N(EVS_Scene_BowsersAssault)) + EVT_EXEC(N(EVS_TexPan_Smoke)) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Main) = { + EVT_SET(GB_WorldLocation, LOCATION_NONE) + EVT_CALL(SetSpriteShading, SHADING_NONE) + EVT_SETUP_CAMERA_NO_LEAD() + EVT_CALL(FadeOutMusic, 0, 500) + EVT_EXEC(N(EVS_EnterMap)) + EVT_WAIT(1) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_osr/osr_04/osr_04_2_assault.c b/src/world/area_osr/osr_04/osr_04_2_assault.c new file mode 100644 index 0000000000..e56f4e2e5a --- /dev/null +++ b/src/world/area_osr/osr_04/osr_04_2_assault.c @@ -0,0 +1,581 @@ +#include "osr_04.h" + +s32 N(map_init)(void) { + gGameStatusPtr->playerSpriteSet = PLAYER_SPRITES_COMBINED_EPILOGUE; + sprintf(wMapShapeName, "osr_03_shape"); + sprintf(wMapHitName, "osr_03_hit"); + return ApiStatus_BLOCK; +} + +API_CALLABLE(N(MakeCastleChainAngle)) { + Bytecode* args = script->ptrReadPos; + s32 angle = evt_get_variable(script, *args); + evt_set_variable(script, *args++, (sin_deg(angle) * 20.0f)); + return ApiStatus_DONE2; +} + +s32 N(ThinTileSpawnPositions)[] = { + -440, 1100, 30, + -190, 1030, 40, + -105, 1100, 30, + -350, 600, 55, + -230, 1200, 35, + -500, 1050, 30, + -410, 900, 35, + 79, 770, 55, + -1, +}; + +EvtScript N(EVS_DropDebris_ThinTiles) = { + EVT_USE_BUF(EVT_PTR(N(ThinTileSpawnPositions))) + EVT_LOOP(0) + EVT_BUF_READ3(LVar2, LVar3, LVar4) + EVT_IF_EQ(LVar2, -1) + EVT_RETURN + EVT_END_IF + EVT_CALL(MakeLerp, 500, 0, LVar4, EASING_QUADRATIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_o1, LVar2, LVar0, LVar3) + EVT_CALL(RotateGroup, MODEL_o1, LVar4, 1, 1, 1) + EVT_SUB(LVar4, 15) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +s32 N(ThickTileSpawnPositions)[] = { + -340, 960, 50, + -410, 900, 55, + -230, 1200, 45, + -500, 940, 40, + -230, 1010, 50, + -500, 940, 40, + -350, 600, 55, + -1, +}; + +EvtScript N(EVS_DropDebris_ThickTiles) = { + EVT_USE_BUF(EVT_PTR(N(ThickTileSpawnPositions))) + EVT_LOOP(0) + EVT_BUF_READ3(LVar2, LVar3, LVar4) + EVT_IF_EQ(LVar2, -1) + EVT_RETURN + EVT_END_IF + EVT_CALL(MakeLerp, 500, 0, LVar4, EASING_QUADRATIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_o2, LVar2, LVar0, LVar3) + EVT_CALL(RotateGroup, MODEL_o2, LVar4, 1, 1, 1) + EVT_ADD(LVar4, 15) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_DropDebris_Flag) = { + EVT_CALL(MakeLerp, 500, 0, 80, EASING_QUADRATIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_o3, -340, LVar0, 830) + EVT_CALL(RotateGroup, MODEL_o3, LVar4, 1, 1, 1) + EVT_SUB(LVar4, 30) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +s32 N(LeafClumpSpawnPositions)[] = { + -350, 600, 60, + -230, 1200, 40, + -340, 960, 40, + -1, +}; + +EvtScript N(EVS_DropDebris_Leaves) = { + EVT_USE_BUF(EVT_PTR(N(LeafClumpSpawnPositions))) + EVT_LOOP(0) + EVT_BUF_READ3(LVar2, LVar3, LVar4) + EVT_IF_EQ(LVar2, -1) + EVT_RETURN + EVT_END_IF + EVT_CALL(MakeLerp, 500, 0, LVar4, EASING_QUADRATIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_o4, LVar2, LVar0, LVar3) + EVT_CALL(RotateGroup, MODEL_o4, LVar4, 1, 1, 1) + EVT_ADD(LVar4, 15) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_DropDebris_TreeTrunk) = { + EVT_CALL(MakeLerp, 500, 0, 80, EASING_QUADRATIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_o5, -190, LVar0, 1030) + EVT_CALL(RotateGroup, MODEL_o5, LVar4, 1, 1, 1) + EVT_SUB(LVar4, 15) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +s32 N(StoneBlockSpawnPositions)[] = { + -500, 940, 20, + 80, 770, 60, + -340, 960, 15, + -340, 960, 45, + -500, 1050, 15, + -230, 1200, 35, + -350, 600, 40, + -1, +}; + +EvtScript N(EVS_DropDebris_StoneBlocks) = { + EVT_USE_BUF(EVT_PTR(N(StoneBlockSpawnPositions))) + EVT_LOOP(0) + EVT_BUF_READ3(LVar2, LVar3, LVar4) + EVT_IF_EQ(LVar2, -1) + EVT_RETURN + EVT_END_IF + EVT_CALL(MakeLerp, 500, 0, LVar4, EASING_QUADRATIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_o6, LVar2, LVar0, LVar3) + EVT_CALL(RotateGroup, MODEL_o6, LVar4, 1, 1, 1) + EVT_ADD(LVar4, 15) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_WAIT(1) + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_AnimateSwingingChains) = { + EVT_LOOP(0) + EVT_CALL(MakeLerp, 90, -90, 30, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_ku_ta, 0, MV_CastleLiftDist, 0) + EVT_CALL(N(MakeCastleChainAngle), LVar0) + EVT_CALL(RotateGroup, MODEL_ku_ta, LVar0, 0, 0, 1) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_LOOP(2) + EVT_CALL(TranslateGroup, MODEL_ku_ta, 0, MV_CastleLiftDist, 0) + EVT_CALL(RotateGroup, MODEL_ku_ta, -20, 0, 0, 1) + EVT_WAIT(1) + EVT_END_LOOP + EVT_CALL(MakeLerp, -90, 90, 30, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_ku_ta, 0, MV_CastleLiftDist, 0) + EVT_CALL(N(MakeCastleChainAngle), LVar0) + EVT_CALL(RotateGroup, MODEL_ku_ta, LVar0, 0, 0, 1) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_LOOP(2) + EVT_CALL(TranslateGroup, MODEL_ku_ta, 0, MV_CastleLiftDist, 0) + EVT_CALL(RotateGroup, MODEL_ku_ta, 20, 0, 0, 1) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_AnimateSpinningRing) = { + EVT_LOOP(0) + EVT_CALL(MakeLerp, 45, -45, 60, EASING_QUADRATIC_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateGroup, MODEL_wa, LVar0, 0, 1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(MakeLerp, -45, 45, 60, EASING_QUADRATIC_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateGroup, MODEL_wa, LVar0, 0, 1, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_LOOP + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_LiftCastleUp) = { + EVT_THREAD + EVT_WAIT(120) + EVT_CALL(SetMusicTrack, 0, SONG_BOWSER_ATTACKS, 0, 8) + EVT_END_THREAD + EVT_SET(MV_CastleLiftDist, 0) + EVT_THREAD + EVT_WAIT(20) + EVT_CALL(MakeLerp, 0, 2500, 450, EASING_QUADRATIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_SET(MV_CastleLiftDist, LVar0) + EVT_CALL(TranslateGroup, MODEL_g439, 0, LVar0, 0) + EVT_CALL(TranslateGroup, MODEL_kao, 0, LVar0, 0) + EVT_CALL(TranslateGroup, MODEL_hiru, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_EXEC(N(EVS_AnimateSwingingChains)) + EVT_EXEC(N(EVS_AnimateSpinningRing)) + EVT_THREAD + EVT_LOOP(0) + EVT_CALL(MakeLerp, 10, -10, 40, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_ADD(MV_CastleLiftDist, LVar0) + EVT_CALL(TranslateGroup, MODEL_wa, 0, MV_CastleLiftDist, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(MakeLerp, -10, 10, 40, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_ADD(MV_CastleLiftDist, LVar0) + EVT_CALL(TranslateGroup, MODEL_wa, 0, MV_CastleLiftDist, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_LOOP + EVT_END_THREAD + EVT_LABEL(22) + EVT_IF_LT(MV_CastleLiftDist, 1000) + EVT_WAIT(1) + EVT_GOTO(22) + EVT_END_IF + EVT_THREAD + EVT_LOOP(300) + EVT_SUB(MV_SmokeVelY, 3) + EVT_WAIT(1) + EVT_END_LOOP + EVT_END_THREAD + EVT_LABEL(23) + EVT_IF_LT(MV_CastleLiftDist, 1150) + EVT_WAIT(1) + EVT_GOTO(23) + EVT_END_IF + EVT_SET(LVar3, 0) + EVT_EXEC(N(EVS_DropDebris_ThinTiles)) + EVT_EXEC(N(EVS_DropDebris_ThickTiles)) + EVT_EXEC(N(EVS_DropDebris_StoneBlocks)) + EVT_WAIT(10) + EVT_EXEC(N(EVS_DropDebris_Flag)) + EVT_EXEC(N(EVS_DropDebris_Leaves)) + EVT_EXEC(N(EVS_DropDebris_TreeTrunk)) + EVT_WAIT(150) + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_RaiseSmokeClouds) = { + EVT_SET(MV_SmokeVelY, 0) + EVT_THREAD + EVT_CALL(PlaySound, SOUND_36) + EVT_CALL(MakeLerp, 0, 650, 40, EASING_CUBIC_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_ADD(LVar0, MV_SmokeVelY) + EVT_CALL(TranslateGroup, MODEL_kem1, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_LOOP(0) + EVT_CALL(MakeLerp, 600, 650, 25, EASING_CUBIC_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_ADD(LVar0, MV_SmokeVelY) + EVT_CALL(TranslateGroup, MODEL_kem1, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(MakeLerp, 650, 600, 35, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_ADD(LVar0, MV_SmokeVelY) + EVT_CALL(TranslateGroup, MODEL_kem1, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(20) + EVT_CALL(PlaySound, SOUND_37) + EVT_CALL(MakeLerp, 0, 400, 30, EASING_CUBIC_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_kem2, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_LOOP(0) + EVT_CALL(MakeLerp, 350, 400, 12, EASING_CUBIC_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_ADD(LVar0, MV_SmokeVelY) + EVT_CALL(TranslateGroup, MODEL_kem2, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(MakeLerp, 400, 350, 17, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_ADD(LVar0, MV_SmokeVelY) + EVT_CALL(TranslateGroup, MODEL_kem2, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_LOOP + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(40) + EVT_CALL(PlaySound, SOUND_38) + EVT_CALL(MakeLerp, 0, 200, 20, EASING_CUBIC_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_kem3, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_LOOP(0) + EVT_CALL(MakeLerp, 150, 200, 25, EASING_CUBIC_OUT) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_ADD(LVar0, MV_SmokeVelY) + EVT_CALL(TranslateGroup, MODEL_kem3, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(MakeLerp, 200, 150, 35, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_ADD(LVar0, MV_SmokeVelY) + EVT_CALL(TranslateGroup, MODEL_kem3, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_LOOP + EVT_END_THREAD + EVT_RETURN + EVT_END +}; + +EvtScript N(EVS_Scene_BowsersAssault) = { + EVT_CALL(DisablePlayerInput, TRUE) + EVT_CALL(DisablePlayerPhysics, TRUE) + EVT_CALL(EnableGroup, MODEL_yoru, FALSE) + EVT_CALL(SetPlayerPos, 0, 0, 2000) + EVT_THREAD + EVT_CALL(PlaySound, SOUND_80000057) + EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 450, EVT_FLOAT(2.0)) + EVT_CALL(ShakeCam, CAM_DEFAULT, 0, 100, EVT_FLOAT(1.0)) + EVT_END_THREAD + EVT_WAIT(50) + EVT_THREAD + EVT_WAIT(30) + EVT_CALL(MakeLerp, 0, 45, 30, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateGroup, MODEL_ki1, LVar0, 0, 0, 1) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(MakeLerp, 0, 100, 30, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateGroup, MODEL_ki1, 45, 0, 0, 1) + EVT_CALL(RotateGroup, MODEL_ki1, LVar0, 1, 0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(EnableGroup, MODEL_ki1, FALSE) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(45) + EVT_CALL(MakeLerp, 0, 30, 30, EASING_QUADRATIC_IN) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateGroup, MODEL_ki2, LVar0, 0, 0, 1) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(MakeLerp, 0, 100, 100, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(RotateGroup, MODEL_ki2, 30, 0, 0, 1) + EVT_CALL(RotateGroup, MODEL_ki2, LVar0, -1, 0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_CALL(EnableGroup, MODEL_ki2, FALSE) + EVT_END_THREAD + EVT_THREAD + EVT_WAIT(75) + EVT_CALL(MakeLerp, 0, 100, 100, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_jime, 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(PlaySound, SOUND_35) + EVT_CALL(MakeLerp, 0, 30, 50, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_1, 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_WAIT(10) + EVT_CALL(MakeLerp, 0, 40, 40, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_2, 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(MakeLerp, 0, 20, 50, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_3, 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_WAIT(15) + EVT_CALL(MakeLerp, 0, 10, 35, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_4, 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(MakeLerp, 0, -20, 50, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_5, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_END_THREAD + EVT_CALL(MakeLerp, 0, -10, 50, EASING_LINEAR) + EVT_LOOP(0) + EVT_CALL(UpdateLerp) + EVT_CALL(TranslateGroup, MODEL_6, 0, LVar0, 0) + EVT_WAIT(1) + EVT_IF_EQ(LVar1, 0) + EVT_BREAK_LOOP + EVT_END_IF + EVT_END_LOOP + EVT_EXEC(N(EVS_RaiseSmokeClouds)) + EVT_EXEC_WAIT(N(EVS_LiftCastleUp)) + EVT_CALL(GotoMap, EVT_PTR("kkj_03"), kkj_03_ENTRY_1) + EVT_WAIT(100) + EVT_CALL(DisablePlayerPhysics, FALSE) + EVT_CALL(DisablePlayerInput, FALSE) + EVT_RETURN + EVT_END +}; diff --git a/src/world/area_trd/trd_05/trd_05_3_trap.c b/src/world/area_trd/trd_05/trd_05_3_trap.c index 4f38023223..0893d902be 100644 --- a/src/world/area_trd/trd_05/trd_05_3_trap.c +++ b/src/world/area_trd/trd_05/trd_05_3_trap.c @@ -220,7 +220,7 @@ EvtScript N(EVS_PartnerFalling) = { EVT_END_THREAD EVT_WAIT(1) EVT_CALL(GetNpcPos, NPC_PARTNER, LVar4, LVar5, LVar6) - EVT_CALL(LoadPath, 45, EVT_PTR(N(FallPath)), 4, EASING_COS_IN_OUT) + EVT_CALL(LoadPath, 45, EVT_PTR(N(FallPath)), ARRAY_COUNT(N(FallPath)), EASING_COS_IN_OUT) EVT_LABEL(0) EVT_CALL(GetNextPathPos) EVT_MULF(LVar1, EVT_FLOAT(-1.0)) diff --git a/src/world/common/atomic/UnkFunc27.inc.c b/src/world/common/atomic/UnkFunc27.inc.c index 9dc3635ad4..95334baaf7 100644 --- a/src/world/common/atomic/UnkFunc27.inc.c +++ b/src/world/common/atomic/UnkFunc27.inc.c @@ -2,7 +2,7 @@ #include "npc.h" #include "model.h" -ApiStatus N(UnkFunc27)(Evt* script, s32 isInitialCall) { +API_CALLABLE(N(UnkFunc27)) { Bytecode* args = script->ptrReadPos; s32 mode = evt_get_variable(script, *args++); s32 testS0 = evt_get_variable(script, *args++); @@ -47,7 +47,7 @@ ApiStatus N(UnkFunc27)(Evt* script, s32 isInitialCall) { return ApiStatus_DONE2; } -ApiStatus N(UnkFunc26)(Evt* script, s32 isInitialCall) { +API_CALLABLE(N(UnkFunc26)) { Bytecode* args = script->ptrReadPos; s32 var1 = evt_get_variable(script, *args++); s32 var2 = evt_get_variable(script, *args++); diff --git a/src/world/common/enemy/complete/Clubba.h b/src/world/common/enemy/complete/Clubba.h new file mode 100644 index 0000000000..6b661e1e0c --- /dev/null +++ b/src/world/common/enemy/complete/Clubba.h @@ -0,0 +1,36 @@ +#include "common.h" +#include "sprite/npc/WorldClubba.h" + +#define CLUBBA_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .itemDropChance = 15, \ + .itemDrops = { \ + { ITEM_MAPLE_SYRUP, 6, 0 }, \ + { ITEM_HONEY_SYRUP, 4, 0 }, \ + }, \ + .heartDrops = STANDARD_HEART_DROPS(2), \ + .flowerDrops = STANDARD_FLOWER_DROPS(4), \ + .minCoinBonus = 0, \ + .maxCoinBonus = 3, \ +} + +#define CLUBBA_ANIMS \ +{ \ + .idle = ANIM_WorldClubba_Anim02, \ + .walk = ANIM_WorldClubba_Anim03, \ + .run = ANIM_WorldClubba_Anim04, \ + .chase = ANIM_WorldClubba_Anim04, \ + .anim_4 = ANIM_WorldClubba_Anim02, \ + .anim_5 = ANIM_WorldClubba_Anim02, \ + .death = ANIM_WorldClubba_Anim0C, \ + .hit = ANIM_WorldClubba_Anim0C, \ + .anim_8 = ANIM_WorldClubba_Anim11, \ + .anim_9 = ANIM_WorldClubba_Anim12, \ + .anim_A = ANIM_WorldClubba_Anim07, \ + .anim_B = ANIM_WorldClubba_Anim08, \ + .anim_C = ANIM_WorldClubba_Anim01, \ + .anim_D = ANIM_WorldClubba_Anim02, \ + .anim_E = ANIM_WorldClubba_Anim02, \ + .anim_F = ANIM_WorldClubba_Anim02, \ +} diff --git a/src/world/common/enemy/complete/Clubba.inc.c b/src/world/common/enemy/complete/Clubba.inc.c new file mode 100644 index 0000000000..fb34b3bccc --- /dev/null +++ b/src/world/common/enemy/complete/Clubba.inc.c @@ -0,0 +1,7 @@ +#include "Clubba.h" + +NpcSettings N(NpcSettings_Clubba) = { + .height = 36, + .radius = 34, + .level = 13, +}; diff --git a/src/world/common/npc/Mouser.h b/src/world/common/npc/Mouser.h index 9310f1924f..818b13b648 100644 --- a/src/world/common/npc/Mouser.h +++ b/src/world/common/npc/Mouser.h @@ -1,5 +1,8 @@ #include "common.h" -#include "sprite/npc/Toadette.h" + +#include "sprite/npc/Mouser.h" +#include "sprite/npc/DisguisedMoustafa.h" +#include "sprite/npc/Moustafa.h" #define MOUSER_DROPS \ { \ @@ -47,3 +50,43 @@ ANIM_Mouser_Purple_Idle, \ ANIM_Mouser_Purple_Idle, \ } + +#define MOUSTAFA_ANIMS \ +{ \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Run, \ + ANIM_Moustafa_Run, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ + ANIM_Moustafa_Idle, \ +} + +#define DISGUISED_MOUSTAFA_ANIMS \ +{ \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ + ANIM_DisguisedMoustafa_Idle, \ +} diff --git a/src/world/common/npc/Penguin.h b/src/world/common/npc/Penguin.h new file mode 100644 index 0000000000..8a339132a3 --- /dev/null +++ b/src/world/common/npc/Penguin.h @@ -0,0 +1,71 @@ +#include "common.h" +#include "sprite/npc/MayorPenguin.h" +#include "sprite/npc/MayorPenguinWife.h" +#include "sprite/npc/Penguin.h" + +#define PENGUIN_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .heartDrops = NO_DROPS, \ + .flowerDrops = NO_DROPS, \ +} + +#define PENGUIN_ANIMS \ +{ \ + .idle = ANIM_Penguin_Idle, \ + .walk = ANIM_Penguin_Walk, \ + .run = ANIM_Penguin_Run, \ + .chase = ANIM_Penguin_Run, \ + .anim_4 = ANIM_Penguin_Idle, \ + .anim_5 = ANIM_Penguin_Idle, \ + .death = ANIM_Penguin_Idle, \ + .hit = ANIM_Penguin_Idle, \ + .anim_8 = ANIM_Penguin_Idle, \ + .anim_9 = ANIM_Penguin_Idle, \ + .anim_A = ANIM_Penguin_Idle, \ + .anim_B = ANIM_Penguin_Idle, \ + .anim_C = ANIM_Penguin_Idle, \ + .anim_D = ANIM_Penguin_Idle, \ + .anim_E = ANIM_Penguin_Idle, \ + .anim_F = ANIM_Penguin_Idle, \ +} + +#define MAYOR_PENGUIN_ANIMS \ +{ \ + .idle = ANIM_MayorPenguin_Idle, \ + .walk = ANIM_MayorPenguin_Walk, \ + .run = ANIM_MayorPenguin_Idle, \ + .chase = ANIM_MayorPenguin_Idle, \ + .anim_4 = ANIM_MayorPenguin_Idle, \ + .anim_5 = ANIM_MayorPenguin_Idle, \ + .death = ANIM_MayorPenguin_Idle, \ + .hit = ANIM_MayorPenguin_Idle, \ + .anim_8 = ANIM_MayorPenguin_Idle, \ + .anim_9 = ANIM_MayorPenguin_Idle, \ + .anim_A = ANIM_MayorPenguin_Idle, \ + .anim_B = ANIM_MayorPenguin_Idle, \ + .anim_C = ANIM_MayorPenguin_Idle, \ + .anim_D = ANIM_MayorPenguin_Idle, \ + .anim_E = ANIM_MayorPenguin_Idle, \ + .anim_F = ANIM_MayorPenguin_Idle, \ +} + +#define MAYOR_PENGUIN_WIFE_ANIMS \ +{ \ + .idle = ANIM_MayorPenguinWife_Idle, \ + .walk = ANIM_MayorPenguinWife_Walk, \ + .run = ANIM_MayorPenguinWife_Idle, \ + .chase = ANIM_MayorPenguinWife_Idle, \ + .anim_4 = ANIM_MayorPenguinWife_Idle, \ + .anim_5 = ANIM_MayorPenguinWife_Idle, \ + .death = ANIM_MayorPenguinWife_Idle, \ + .hit = ANIM_MayorPenguinWife_Idle, \ + .anim_8 = ANIM_MayorPenguinWife_Idle, \ + .anim_9 = ANIM_MayorPenguinWife_Idle, \ + .anim_A = ANIM_MayorPenguinWife_Idle, \ + .anim_B = ANIM_MayorPenguinWife_Idle, \ + .anim_C = ANIM_MayorPenguinWife_Idle, \ + .anim_D = ANIM_MayorPenguinWife_Idle, \ + .anim_E = ANIM_MayorPenguinWife_Idle, \ + .anim_F = ANIM_MayorPenguinWife_Idle, \ +} diff --git a/src/world/common/npc/Penguin.inc.c b/src/world/common/npc/Penguin.inc.c new file mode 100644 index 0000000000..b8b76c268f --- /dev/null +++ b/src/world/common/npc/Penguin.inc.c @@ -0,0 +1,8 @@ +#include "common.h" +#include "Penguin.h" + +NpcSettings N(NpcSettings_Penguin) = { + .height = 24, + .radius = 24, + .level = 99, +}; diff --git a/src/world/common/npc/Yoshi.h b/src/world/common/npc/Yoshi.h new file mode 100644 index 0000000000..2fa6f40bff --- /dev/null +++ b/src/world/common/npc/Yoshi.h @@ -0,0 +1,132 @@ +#include "common.h" + +#include "sprite/npc/Yoshi.h" +#include "sprite/npc/VillageLeader.h" +#include "sprite/npc/LeadersFriend.h" + +#define YOSHI_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .heartDrops = NO_DROPS, \ + .flowerDrops = NO_DROPS, \ +} + +#define YOSHI_GREEN_ANIMS \ +{ \ + .idle = ANIM_Yoshi_Green_Idle, \ + .walk = ANIM_Yoshi_Green_Walk, \ + .run = ANIM_Yoshi_Green_Idle, \ + .chase = ANIM_Yoshi_Green_Idle, \ + .anim_4 = ANIM_Yoshi_Green_Idle, \ + .anim_5 = ANIM_Yoshi_Green_Idle, \ + .death = ANIM_Yoshi_Green_Idle, \ + .hit = ANIM_Yoshi_Green_Idle, \ + .anim_8 = ANIM_Yoshi_Green_Idle, \ + .anim_9 = ANIM_Yoshi_Green_Idle, \ + .anim_A = ANIM_Yoshi_Green_Idle, \ + .anim_B = ANIM_Yoshi_Green_Idle, \ + .anim_C = ANIM_Yoshi_Green_Idle, \ + .anim_D = ANIM_Yoshi_Green_Idle, \ + .anim_E = ANIM_Yoshi_Green_Idle, \ + .anim_F = ANIM_Yoshi_Green_Idle, \ +} + +#define YOSHI_BLUE_ANIMS \ +{ \ + .idle = ANIM_Yoshi_Blue_Idle, \ + .walk = ANIM_Yoshi_Blue_Walk, \ + .run = ANIM_Yoshi_Blue_Idle, \ + .chase = ANIM_Yoshi_Blue_Idle, \ + .anim_4 = ANIM_Yoshi_Blue_Idle, \ + .anim_5 = ANIM_Yoshi_Blue_Idle, \ + .death = ANIM_Yoshi_Blue_Idle, \ + .hit = ANIM_Yoshi_Blue_Idle, \ + .anim_8 = ANIM_Yoshi_Blue_Idle, \ + .anim_9 = ANIM_Yoshi_Blue_Idle, \ + .anim_A = ANIM_Yoshi_Blue_Idle, \ + .anim_B = ANIM_Yoshi_Blue_Idle, \ + .anim_C = ANIM_Yoshi_Blue_Idle, \ + .anim_D = ANIM_Yoshi_Blue_Idle, \ + .anim_E = ANIM_Yoshi_Blue_Idle, \ + .anim_F = ANIM_Yoshi_Blue_Idle, \ +} + +#define YOSHI_PURPLE_ANIMS \ +{ \ + .idle = ANIM_Yoshi_Purple_Idle, \ + .walk = ANIM_Yoshi_Purple_Walk, \ + .run = ANIM_Yoshi_Purple_Idle, \ + .chase = ANIM_Yoshi_Purple_Idle, \ + .anim_4 = ANIM_Yoshi_Purple_Idle, \ + .anim_5 = ANIM_Yoshi_Purple_Idle, \ + .death = ANIM_Yoshi_Purple_Idle, \ + .hit = ANIM_Yoshi_Purple_Idle, \ + .anim_8 = ANIM_Yoshi_Purple_Idle, \ + .anim_9 = ANIM_Yoshi_Purple_Idle, \ + .anim_A = ANIM_Yoshi_Purple_Idle, \ + .anim_B = ANIM_Yoshi_Purple_Idle, \ + .anim_C = ANIM_Yoshi_Purple_Idle, \ + .anim_D = ANIM_Yoshi_Purple_Idle, \ + .anim_E = ANIM_Yoshi_Purple_Idle, \ + .anim_F = ANIM_Yoshi_Purple_Idle, \ +} + +#define YOSHI_YELLOW_ANIMS \ +{ \ + .idle = ANIM_Yoshi_Yellow_Idle, \ + .walk = ANIM_Yoshi_Yellow_Walk, \ + .run = ANIM_Yoshi_Yellow_Idle, \ + .chase = ANIM_Yoshi_Yellow_Idle, \ + .anim_4 = ANIM_Yoshi_Yellow_Idle, \ + .anim_5 = ANIM_Yoshi_Yellow_Idle, \ + .death = ANIM_Yoshi_Yellow_Idle, \ + .hit = ANIM_Yoshi_Yellow_Idle, \ + .anim_8 = ANIM_Yoshi_Yellow_Idle, \ + .anim_9 = ANIM_Yoshi_Yellow_Idle, \ + .anim_A = ANIM_Yoshi_Yellow_Idle, \ + .anim_B = ANIM_Yoshi_Yellow_Idle, \ + .anim_C = ANIM_Yoshi_Yellow_Idle, \ + .anim_D = ANIM_Yoshi_Yellow_Idle, \ + .anim_E = ANIM_Yoshi_Yellow_Idle, \ + .anim_F = ANIM_Yoshi_Yellow_Idle, \ +} + +#define YOSHI_RED_ANIMS \ +{ \ + .idle = ANIM_Yoshi_Red_Idle, \ + .walk = ANIM_Yoshi_Red_Walk, \ + .run = ANIM_Yoshi_Red_Idle, \ + .chase = ANIM_Yoshi_Red_Idle, \ + .anim_4 = ANIM_Yoshi_Red_Idle, \ + .anim_5 = ANIM_Yoshi_Red_Idle, \ + .death = ANIM_Yoshi_Red_Idle, \ + .hit = ANIM_Yoshi_Red_Idle, \ + .anim_8 = ANIM_Yoshi_Red_Idle, \ + .anim_9 = ANIM_Yoshi_Red_Idle, \ + .anim_A = ANIM_Yoshi_Red_Idle, \ + .anim_B = ANIM_Yoshi_Red_Idle, \ + .anim_C = ANIM_Yoshi_Red_Idle, \ + .anim_D = ANIM_Yoshi_Red_Idle, \ + .anim_E = ANIM_Yoshi_Red_Idle, \ + .anim_F = ANIM_Yoshi_Red_Idle, \ +} + +#define YOSHI_LEADER_ANIMS \ +{ \ + .idle = ANIM_VillageLeader_Idle, \ + .walk = ANIM_VillageLeader_Idle, \ + .run = ANIM_VillageLeader_Idle, \ + .chase = ANIM_VillageLeader_Idle, \ + .anim_4 = ANIM_VillageLeader_Idle, \ + .anim_5 = ANIM_VillageLeader_Idle, \ + .death = ANIM_VillageLeader_Idle, \ + .hit = ANIM_VillageLeader_Idle, \ + .anim_8 = ANIM_VillageLeader_Idle, \ + .anim_9 = ANIM_VillageLeader_Idle, \ + .anim_A = ANIM_VillageLeader_Idle, \ + .anim_B = ANIM_VillageLeader_Idle, \ + .anim_C = ANIM_VillageLeader_Idle, \ + .anim_D = ANIM_VillageLeader_Idle, \ + .anim_E = ANIM_VillageLeader_Idle, \ + .anim_F = ANIM_VillageLeader_Idle, \ +} diff --git a/src/world/common/npc/Yoshi.inc.c b/src/world/common/npc/Yoshi.inc.c new file mode 100644 index 0000000000..46c3fde7a5 --- /dev/null +++ b/src/world/common/npc/Yoshi.inc.c @@ -0,0 +1,7 @@ +#include "Yoshi.h" + +NpcSettings N(NpcSettings_Yoshi) = { + .height = 48, + .radius = 32, + .level = 99, +}; diff --git a/src/world/common/npc/YoshiKid.h b/src/world/common/npc/YoshiKid.h new file mode 100644 index 0000000000..3c99b910c9 --- /dev/null +++ b/src/world/common/npc/YoshiKid.h @@ -0,0 +1,110 @@ +#include "common.h" + +#include "sprite/npc/YoshiKid.h" + +#define YOSHI_KID_DROPS \ +{ \ + .dropFlags = NPC_DROP_FLAGS_80, \ + .heartDrops = NO_DROPS, \ + .flowerDrops = NO_DROPS, \ +} + +#define YOSHI_KID_GREEN_ANIMS \ +{ \ + .idle = ANIM_YoshiKid_Green_Idle, \ + .walk = ANIM_YoshiKid_Green_Walk, \ + .run = ANIM_YoshiKid_Green_Run, \ + .chase = ANIM_YoshiKid_Green_Run, \ + .anim_4 = ANIM_YoshiKid_Green_Idle, \ + .anim_5 = ANIM_YoshiKid_Green_Idle, \ + .death = ANIM_YoshiKid_Green_Idle, \ + .hit = ANIM_YoshiKid_Green_Idle, \ + .anim_8 = ANIM_YoshiKid_Green_Idle, \ + .anim_9 = ANIM_YoshiKid_Green_Idle, \ + .anim_A = ANIM_YoshiKid_Green_Idle, \ + .anim_B = ANIM_YoshiKid_Green_Idle, \ + .anim_C = ANIM_YoshiKid_Green_Idle, \ + .anim_D = ANIM_YoshiKid_Green_Idle, \ + .anim_E = ANIM_YoshiKid_Green_Idle, \ + .anim_F = ANIM_YoshiKid_Green_Idle, \ +} + +#define YOSHI_KID_BLUE_ANIMS \ +{ \ + .idle = ANIM_YoshiKid_Blue_Idle, \ + .walk = ANIM_YoshiKid_Blue_Walk, \ + .run = ANIM_YoshiKid_Blue_Run, \ + .chase = ANIM_YoshiKid_Blue_Run, \ + .anim_4 = ANIM_YoshiKid_Blue_Idle, \ + .anim_5 = ANIM_YoshiKid_Blue_Idle, \ + .death = ANIM_YoshiKid_Blue_Idle, \ + .hit = ANIM_YoshiKid_Blue_Idle, \ + .anim_8 = ANIM_YoshiKid_Blue_Idle, \ + .anim_9 = ANIM_YoshiKid_Blue_Idle, \ + .anim_A = ANIM_YoshiKid_Blue_Idle, \ + .anim_B = ANIM_YoshiKid_Blue_Idle, \ + .anim_C = ANIM_YoshiKid_Blue_Idle, \ + .anim_D = ANIM_YoshiKid_Blue_Idle, \ + .anim_E = ANIM_YoshiKid_Blue_Idle, \ + .anim_F = ANIM_YoshiKid_Blue_Idle, \ +} + +#define YOSHI_KID_PURPLE_ANIMS \ +{ \ + .idle = ANIM_YoshiKid_Purple_Idle, \ + .walk = ANIM_YoshiKid_Purple_Walk, \ + .run = ANIM_YoshiKid_Purple_Run, \ + .chase = ANIM_YoshiKid_Purple_Run, \ + .anim_4 = ANIM_YoshiKid_Purple_Idle, \ + .anim_5 = ANIM_YoshiKid_Purple_Idle, \ + .death = ANIM_YoshiKid_Purple_Idle, \ + .hit = ANIM_YoshiKid_Purple_Idle, \ + .anim_8 = ANIM_YoshiKid_Purple_Idle, \ + .anim_9 = ANIM_YoshiKid_Purple_Idle, \ + .anim_A = ANIM_YoshiKid_Purple_Idle, \ + .anim_B = ANIM_YoshiKid_Purple_Idle, \ + .anim_C = ANIM_YoshiKid_Purple_Idle, \ + .anim_D = ANIM_YoshiKid_Purple_Idle, \ + .anim_E = ANIM_YoshiKid_Purple_Idle, \ + .anim_F = ANIM_YoshiKid_Purple_Idle, \ +} + +#define YOSHI_KID_YELLOW_ANIMS \ +{ \ + .idle = ANIM_YoshiKid_Yellow_Idle, \ + .walk = ANIM_YoshiKid_Yellow_Walk, \ + .run = ANIM_YoshiKid_Yellow_Run, \ + .chase = ANIM_YoshiKid_Yellow_Run, \ + .anim_4 = ANIM_YoshiKid_Yellow_Idle, \ + .anim_5 = ANIM_YoshiKid_Yellow_Idle, \ + .death = ANIM_YoshiKid_Yellow_Idle, \ + .hit = ANIM_YoshiKid_Yellow_Idle, \ + .anim_8 = ANIM_YoshiKid_Yellow_Idle, \ + .anim_9 = ANIM_YoshiKid_Yellow_Idle, \ + .anim_A = ANIM_YoshiKid_Yellow_Idle, \ + .anim_B = ANIM_YoshiKid_Yellow_Idle, \ + .anim_C = ANIM_YoshiKid_Yellow_Idle, \ + .anim_D = ANIM_YoshiKid_Yellow_Idle, \ + .anim_E = ANIM_YoshiKid_Yellow_Idle, \ + .anim_F = ANIM_YoshiKid_Yellow_Idle, \ +} + +#define YOSHI_KID_RED_ANIMS \ +{ \ + .idle = ANIM_YoshiKid_Red_Idle, \ + .walk = ANIM_YoshiKid_Red_Walk, \ + .run = ANIM_YoshiKid_Red_Run, \ + .chase = ANIM_YoshiKid_Red_Run, \ + .anim_4 = ANIM_YoshiKid_Red_Idle, \ + .anim_5 = ANIM_YoshiKid_Red_Idle, \ + .death = ANIM_YoshiKid_Red_Idle, \ + .hit = ANIM_YoshiKid_Red_Idle, \ + .anim_8 = ANIM_YoshiKid_Red_Idle, \ + .anim_9 = ANIM_YoshiKid_Red_Idle, \ + .anim_A = ANIM_YoshiKid_Red_Idle, \ + .anim_B = ANIM_YoshiKid_Red_Idle, \ + .anim_C = ANIM_YoshiKid_Red_Idle, \ + .anim_D = ANIM_YoshiKid_Red_Idle, \ + .anim_E = ANIM_YoshiKid_Red_Idle, \ + .anim_F = ANIM_YoshiKid_Red_Idle, \ +} diff --git a/src/world/common/npc/YoshiKid.inc.c b/src/world/common/npc/YoshiKid.inc.c new file mode 100644 index 0000000000..50759c3ac5 --- /dev/null +++ b/src/world/common/npc/YoshiKid.inc.c @@ -0,0 +1,7 @@ +#include "YoshiKid.h" + +NpcSettings N(NpcSettings_YoshiKid) = { + .height = 28, + .radius = 24, + .level = 99, +}; diff --git a/src/world/common/todo/SetPlayerSpriteSet2.inc.c b/src/world/common/todo/SetPlayerSpriteSet2_MapInit.inc.c similarity index 62% rename from src/world/common/todo/SetPlayerSpriteSet2.inc.c rename to src/world/common/todo/SetPlayerSpriteSet2_MapInit.inc.c index 41644ce097..88834d8869 100644 --- a/src/world/common/todo/SetPlayerSpriteSet2.inc.c +++ b/src/world/common/todo/SetPlayerSpriteSet2_MapInit.inc.c @@ -1,6 +1,6 @@ #include "common.h" -ApiStatus N(SetPlayerSpriteSet2)(Evt* script, s32 isInitialCall) { +ApiStatus N(SetPlayerSpriteSet2_MapInit)(Evt* script, s32 isInitialCall) { gGameStatusPtr->playerSpriteSet = PLAYER_SPRITES_COMBINED_EPILOGUE; return ApiStatus_BLOCK; } diff --git a/src/world/dead/area_flo/flo_14/flo_14_3_bubbles.c b/src/world/dead/area_flo/flo_14/flo_14_3_bubbles.c index 2e1f40039a..a9f6fef764 100644 --- a/src/world/dead/area_flo/flo_14/flo_14_3_bubbles.c +++ b/src/world/dead/area_flo/flo_14/flo_14_3_bubbles.c @@ -86,7 +86,7 @@ Vec3f N(BubbleFlightPath)[] = { EvtScript N(EVS_BubbleFollowPath) = { EVT_WAIT(20) EVT_CALL(PlaySound, SOUND_80000023) - EVT_CALL(LoadPath, 165, EVT_PTR(N(BubbleFlightPath)), 13, EASING_COS_IN_OUT) + EVT_CALL(LoadPath, 165, EVT_PTR(N(BubbleFlightPath)), ARRAY_COUNT(N(BubbleFlightPath)), EASING_COS_IN_OUT) EVT_LABEL(0) EVT_CALL(GetNextPathPos) EVT_CALL(TranslateModel, MODEL_o167, LVar1, LVar2, LVar3) diff --git a/src/world/entrances.h b/src/world/entrances.h index 3877d246d5..f7e3282885 100644 --- a/src/world/entrances.h +++ b/src/world/entrances.h @@ -1258,6 +1258,7 @@ enum { osr_01_ENTRY_3 = 3, osr_02_ENTRY_0 = 0, osr_02_ENTRY_1 = 1, + osr_02_ENTRY_2 = 2, osr_03_ENTRY_0 = 0, osr_03_ENTRY_1 = 1, osr_03_ENTRY_2 = 2, diff --git a/src/world/world.c b/src/world/world.c index 5a9bf50dde..87bc3b923d 100644 --- a/src/world/world.c +++ b/src/world/world.c @@ -542,12 +542,13 @@ MapConfig kpa_maps[] = { }; /// Peach's Castle Grounds +#include "area_osr/osr.h" MapConfig osr_maps[] = { - { MAP_UNSPLIT(osr_00, 0x802407E0), .bgName = "nok_bg" }, - { MAP_UNSPLIT(osr_01, 0x80240B00), .bgName = "nok_bg", .init = (MapInit)0x80240000 }, - { MAP_UNSPLIT(osr_02, 0x80240170), .bgName = "kpa_bg", .init = (MapInit)0x80240000 }, - { MAP_UNSPLIT(osr_03, 0x802403F0), .bgName = "kpa_bg", .init = (MapInit)0x80240000 }, - { MAP_UNSPLIT(osr_04, 0x802400D0), .bgName = "nok_bg", .init = (MapInit)0x80240000 }, + { MAP(osr_00), .bgName = "nok_bg" }, + { MAP_WITH_INIT(osr_01), .bgName = "nok_bg" }, + { MAP_WITH_INIT(osr_02), .bgName = "kpa_bg" }, + { MAP_WITH_INIT(osr_03), .bgName = "kpa_bg" }, + { MAP_WITH_INIT(osr_04), .bgName = "nok_bg" }, }; /// Peach's Castle diff --git a/ver/us/asm/data/world/area_osr/osr_00/AACFC0.data.s b/ver/us/asm/data/world/area_osr/osr_00/AACFC0.data.s deleted file mode 100644 index 8100c95289..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_00/AACFC0.data.s +++ /dev/null @@ -1,30 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240790_AACFC0 -.word 0x00000000, 0x00000000, 0x44170000, 0x00000000, 0x44190000, 0x00000000, 0x42DE0000, 0x43870000, 0x00000000, 0x00000000, 0xC3820000, 0x43340000, 0x43FA0000, 0x41A00000, 0x42C80000, 0x43870000, 0x00000000, 0x00000000, 0x43960000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_80240DBC_AAD5EC, D_80240790_AACFC0, 0x00000005, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00000000 - -dlabel D_80240820_AAD050 -.word 0x00000014, 0x00000001, 0xF5DE0180, 0x00000016, 0x00000001, 0xFFFFFF80, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000003F, 0x00000001, 0x00000008, 0x00000016, 0x00000001, 0x00000060, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000003F, 0x00000000, 0x00000008, 0x0000001C, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000023, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000003, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802408F0_AAD120 -.word 0x0000004D, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C85, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C86, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C87, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C88, 0x00000001, 0x00000043, 0x00000001, osr_00_UpdateTexturePanSmooth, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, osr_00_UpdateTexturePanStepped, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024098C_AAD1BC -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000000, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x802437A0, 0x00000002, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802409E8_AAD218 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x00000024, 0x00000002, 0xFE363C81, 0x00000006, 0x00000024, 0x00000002, 0xFE363C82, 0x00000052, 0x00000024, 0x00000002, 0xFE363C83, 0x00000050, 0x00000044, 0x00000001, ExitDoubleDoor, 0x00000008, 0x00000001, 0x00000011, 0x00000043, 0x00000003, GotoMap, 0x802437A8, 0x00000006, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240A8C_AAD2BC -.word 0x00000047, 0x00000005, D_8024098C_AAD1BC, 0x00080000, 0x00000000, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_802409E8_AAD218, 0x00000100, 0x00000006, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240AD4_AAD304 -.word 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000002, 0x00000024, 0x00000002, 0xFE363C82, 0x00000052, 0x00000024, 0x00000002, 0xFE363C83, 0x00000050, 0x00000046, 0x00000001, EnterDoubleDoor, 0x00000044, 0x00000001, D_80240A8C_AAD2BC, 0x00000016, 0x00000001, 0x00000003, 0x00000044, 0x00000001, 0x80243470, 0x00000016, 0x00000001, 0x00000004, 0x00000044, 0x00000001, 0x802435F8, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, D_80240A8C_AAD2BC, 0x00000044, 0x00000001, EnterWalk, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240BA0_AAD3D0 -.word 0x0000004D, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetTexPanner, 0x00000015, 0x00000001, 0x00000043, 0x00000003, SetTexPanner, 0x00000016, 0x00000002, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0xFFFFFF38, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0x00000001, 0x00000024, 0x00000002, 0xFE363C87, 0x00000000, 0x00000024, 0x00000002, 0xFE363C88, 0x00000000, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000044, 0x00000001, D_802408F0_AAD120, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x0000012C, 0x00000024, 0x00000002, 0xFE363C85, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0x00000000, 0x00000024, 0x00000002, 0xFE363C87, 0x00000000, 0x00000024, 0x00000002, 0xFE363C88, 0x00000001, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000044, 0x00000001, D_802408F0_AAD120, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240DBC_AAD5EC -.word 0x00000024, 0x00000002, 0xF5DE0329, 0x00000019, 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, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000016, 0x00000001, 0xFFFFFF80, 0x00000043, 0x00000001, func_8024030C_AACB3C, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, 0x8024117C, 0x0000001B, 0x00000001, 0x00000060, 0x00000043, 0x00000001, osr_00_SpawnSunEffect, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, 0x80243428, 0x00000023, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000003, 0x00000044, 0x00000001, D_80240820_AAD050, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000003, 0x00000044, 0x00000001, D_80240BA0_AAD3D0, 0x00000043, 0x00000006, PlaySoundAtF, 0x80000059, 0x00000001, 0x0000012C, 0x00000000, 0x00000190, 0x00000013, 0x00000000, 0x00000044, 0x00000001, D_80240AD4_AAD304, 0x00000008, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_00/AAD790.data.s b/ver/us/asm/data/world/area_osr/osr_00/AAD790.data.s deleted file mode 100644 index 5e4e572c49..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_00/AAD790.data.s +++ /dev/null @@ -1,162 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240F60_AAD790 -.word 0x00000000, 0x00180018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_80240F8C_AAD7BC -.word 0x00000000, D_80240F60_AAD790, 0x00000000, 0xC47A0000, 0x00000000, 0x00000F0D, 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, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00820000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, D_80240F8C_AAD7BC, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00180018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_802411CC_AAD9FC -.word 0x00000000, 0x00300020, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_802411F8_AADA28 -.word 0x00000000, 0x001C0018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_80241224_AADA54 -.word 0x00000000, 0x00180018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_80241250_AADA80 -.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_802412A8_AADAD8 -.word 0x00000000, 0x00180018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_802412D4_AADB04 -.word 0x00000000, 0x00160019, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_80241300_AADB30 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00C20009, 0x00C20003, 0x00000000, 0x00010055, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241330_AADB60 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80241300_AADB30, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241354_AADB84 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00960004, 0x00960001, 0x00000000, 0x00010060, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241384_AADBB4 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80241354_AADB84, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802413A8_AADBD8 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00970004, 0x00970001, 0x00000000, 0x00010061, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802413D8_AADC08 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_802413A8_AADBD8, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802413FC_AADC2C -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00CE0004, 0x00CE0001, 0x00000000, 0x00010056, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024142C_AADC5C -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_802413FC_AADC2C, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241450_AADC80 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00CF0005, 0x00CF0001, 0x00000000, 0x00010057, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241480_AADCB0 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80241450_AADC80, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802414A4_AADCD4 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x009A0004, 0x009A0001, 0x00000000, 0x00010062, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802414D4_AADD04 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_802414A4_AADCD4, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802414F8_AADD28 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x009A0004, 0x009A0001, 0x00000000, 0x00010063, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241528_AADD58 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_802414F8_AADD28, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024154C_AADD7C -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00BD0005, 0x00BD0001, 0x00000000, 0x00010058, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024157C_AADDAC -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_8024154C_AADD7C, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802415A0_AADDD0 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00940105, 0x00940101, 0x00000000, 0x0001005E, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802415D0_AADE00 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_802415A0_AADDD0, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802415F4_AADE24 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00950004, 0x00950001, 0x00000000, 0x0001005D, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241624_AADE54 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_802415F4_AADE24, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241648_AADE78 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00950104, 0x00950101, 0x00000000, 0x0001005F, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241678_AADEA8 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80241648_AADE78, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024169C_AADECC -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830204, 0x00830201, 0x00000000, 0x00010059, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802416CC_AADEFC -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_8024169C_AADECC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802416F0_AADF20 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00870004, 0x00870001, 0x00000000, 0x0001005A, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241720_AADF50 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_802416F0_AADF20, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241744_AADF74 -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000003, NpcFacePlayer, 0x0000000E, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000006, SpeakToPlayer, 0x0000000E, 0x00870304, 0x00870301, 0x00000000, 0x0001005C, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000002, SetPlayerSpeed, 0xF24A8A80, 0x00000043, 0x00000004, PlayerMoveTo, 0x00000262, 0x0000006E, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802417E8_AAE018 -.word 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00870304, 0x00870301, 0x00000000, 0x0001005B, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241818_AAE048 -.word 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_802417E8_AAE018, 0x00000047, 0x00000005, D_80241744_AADF74, 0x00000080, 0x00000002, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241858_AAE088 -.word 0x00C20000, 0x00C20003, 0x00C20009, 0xFFFFFFFF - -dlabel D_80241868_AAE098 -.word 0x00960000, 0x00960001, 0x00960004, 0xFFFFFFFF - -dlabel D_80241878_AAE0A8 -.word 0x00970000, 0x00970001, 0x00970004, 0xFFFFFFFF - -dlabel D_80241888_AAE0B8 -.word 0x00000000, D_802411CC_AAD9FC, 0x428C0000, 0x00000000, 0xC1F00000, 0x00002D09, D_80241330_AADB60, 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, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00C20003, 0x00000000, 0x00000000, D_80241858_AAE088, 0x001A00BC, 0x00000001, D_802411CC_AAD9FC, 0x428C0000, 0x00000000, 0x43C80000, 0x00002D09, D_80241384_AADBB4, 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, 0x00960001, 0x00960002, 0x00960001, 0x00960001, 0x00960001, 0x00960001, 0x00960001, 0x00960001, 0x00960001, 0x00960001, 0x00960001, 0x00960001, 0x00960001, 0x00960001, 0x00960001, 0x00960001, 0x00000000, 0x00000000, D_80241868_AAE098, 0x001A00C1, 0x00000002, D_802411F8_AADA28, 0x43200000, 0x00000000, 0x44070000, 0x00002D09, D_802413D8_AADC08, 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, 0x00970001, 0x00970002, 0x00970003, 0x00970003, 0x00970001, 0x00970001, 0x00970001, 0x00970001, 0x00970001, 0x00970001, 0x00970001, 0x00970001, 0x00970001, 0x00970001, 0x00970001, 0x00970001, 0x00000000, 0x00000000, D_80241878_AAE0A8, 0x001A00C3 - -dlabel D_80241E58_AAE688 -.word 0x00CE0000, 0x00CE0001, 0x00CE0004, 0xFFFFFFFF - -dlabel D_80241E68_AAE698 -.word 0x00CF0000, 0x00CF0001, 0x00CF0005, 0xFFFFFFFF - -dlabel D_80241E78_AAE6A8 -.word 0x009A0000, 0x009A0001, 0x009A0004, 0xFFFFFFFF - -dlabel D_80241E88_AAE6B8 -.word 0x00000003, D_80241224_AADA54, 0x43160000, 0x00000000, 0x42D20000, 0x00002D09, D_8024142C_AADC5C, 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, 0x00CE0001, 0x00CE0002, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00CE0001, 0x00000000, 0x00000000, D_80241E58_AAE688, 0x001A00E6, 0x00000004, D_80241224_AADA54, 0x43480000, 0x00000000, 0x42D20000, 0x00002D09, D_80241480_AADCB0, 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, 0x00CF0001, 0x00CF0002, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00CF0001, 0x00000000, 0x00000000, D_80241E68_AAE698, 0x001A00E5, 0x00000005, D_80241224_AADA54, 0x42E60000, 0x00000000, 0x44070000, 0x00000D0D, D_802414D4_AADD04, 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, 0x009A0001, 0x009A0002, 0x009A0003, 0x009A0003, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x00000000, 0x00000000, D_80241E78_AAE6A8, 0x00000000, 0x00000006, D_80241224_AADA54, 0x43500000, 0x00000000, 0x44070000, 0x00000D0D, D_80241528_AADD58, 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, 0x009A0001, 0x009A0002, 0x009A0003, 0x009A0003, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x009A0001, 0x00000000, 0x00000000, D_80241E78_AAE6A8, 0x00000000 - -dlabel D_80242648_AAEE78 -.word 0x00BD0000, 0x00BD0001, 0x00BD0005, 0xFFFFFFFF - -dlabel D_80242658_AAEE88 -.word 0x00940000, 0x00940001, 0x00940005, 0xFFFFFFFF - -dlabel D_80242668_AAEE98 -.word 0x00000007, D_802412D4_AADB04, 0xC2700000, 0x00000000, 0xC1A00000, 0x00002D09, D_8024157C_AADDAC, 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, 0x00BD0001, 0x00BD0001, 0x00BD0004, 0x00BD0004, 0x00BD0001, 0x00BD0001, 0x00BD0001, 0x00BD0001, 0x00BD0001, 0x00BD0001, 0x00BD0001, 0x00BD0001, 0x00BD0001, 0x00BD0001, 0x00BD0001, 0x00BD0001, 0x00000000, 0x00000000, D_80242648_AAEE78, 0x001A0099, 0x00000008, D_802412D4_AADB04, 0xC2C80000, 0x00000000, 0xC2480000, 0x00002D09, D_802415D0_AADE00, 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, 0x00940101, 0x00940104, 0x00940104, 0x00940101, 0x00940101, 0x00940101, 0x00940101, 0x00940101, 0x00940101, 0x00940101, 0x00940101, 0x00940101, 0x00940101, 0x00940101, 0x00940101, 0x00940101, 0x00000000, 0x00000000, D_80242658_AAEE88, 0x00000000 - -dlabel D_80242A48_AAF278 -.word 0x00950000, 0x00950001, 0x00950004, 0xFFFFFFFF - -dlabel D_80242A58_AAF288 -.word 0x00000009, D_802412A8_AADAD8, 0x43870000, 0x41A00000, 0x432F0000, 0x00000D09, D_80241624_AADE54, 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, 0x00950001, 0x00950002, 0x00950003, 0x00950003, 0x00950001, 0x00950001, 0x00950000, 0x00950000, 0x00950003, 0x00950003, 0x00950003, 0x00950003, 0x00950003, 0x00950003, 0x00950003, 0x00950003, 0x00000000, 0x00000000, D_80242A48_AAF278, 0x00000000, 0x0000000A, D_802412A8_AADAD8, 0x43A00000, 0x41A00000, 0x43480000, 0x00000D09, D_80241678_AADEA8, 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, 0x00950101, 0x00950102, 0x00950103, 0x00950103, 0x00950101, 0x00950101, 0x00950100, 0x00950100, 0x0095010A, 0x00950103, 0x00950103, 0x00950103, 0x00950103, 0x00950103, 0x00950103, 0x00950103, 0x00000000, 0x00000000, D_80242A48_AAF278, 0x00000000 - -dlabel D_80242E38_AAF668 -.word 0x00830000, 0x00830001, 0x00830004, 0xFFFFFFFF - -dlabel D_80242E48_AAF678 -.word 0x00870000, 0x00870001, 0x00870004, 0xFFFFFFFF - -dlabel D_80242E58_AAF688 -.word 0x0000000C, D_80241250_AADA80, 0xC1C80000, 0x00000000, 0x43480000, 0x00002D09, D_802416CC_AADEFC, 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, 0x00830201, 0x00830202, 0x00830203, 0x00830203, 0x00830201, 0x00830201, 0x00830206, 0x00830206, 0x00830203, 0x00830203, 0x00830203, 0x00830203, 0x00830203, 0x00830203, 0x00830203, 0x00830203, 0x00000000, 0x00000000, D_80242E38_AAF668, 0x00000000, 0x0000000D, D_80241250_AADA80, 0xC2480000, 0x00000000, 0xC3480000, 0x00002D09, D_80241720_AADF50, 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, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00870001, 0x00000000, 0x00000000, D_80242E48_AAF678, 0x00000000, 0x0000000E, D_80241250_AADA80, 0x440C0000, 0x41A00000, 0x42C80000, 0x00002D09, D_80241818_AAE048, 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, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00870301, 0x00000000, 0x00000000, D_80242E48_AAF678, 0x00000000, 0x00000003, D_80241888_AAE0B8, 0x00000000, 0x00000004, D_80241E88_AAE6B8, 0x00000000, 0x00000002, D_80242668_AAEE98, 0x00000000, 0x00000002, D_80242A58_AAF288, 0x00000000, 0x00000003, D_80242E58_AAF688, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0x00000307, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0x00000014, 0xFFFFFFED, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000004, osr_00_UnkFunc27, 0x00000002, 0x00000000, 0x00000003, 0x00000043, 0x00000004, osr_00_UnkFunc27, 0x00000001, 0xFFFFFFFF, 0x00000003, 0x00000043, 0x00000007, func_80240678_AACEA8, 0x000000C8, 0x000000C8, 0x000000C8, 0x00000028, 0x00000028, 0x00000028, 0x00000043, 0x00000001, func_802406E0_AACF10, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x00000022, 0x000000A0, 0x00000028, 0x00000008, 0x00000001, 0x0000000C, 0x00000043, 0x00000004, ShowMessageAtScreenPos, 0x00000023, 0x000000A0, 0x00000028, 0x00000008, 0x00000001, 0x00000003, 0x00000043, 0x00000004, GotoMapSpecial, 0x802437B0, 0x00000001, 0x00000007, 0x00000008, 0x00000001, 0x00000028, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF2550680, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24A8880, 0xF24A6280, 0x00000043, 0x00000004, SetCamPosA, 0x00000000, 0xF24B6A80, 0x00000000, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlayerMoveTo, 0x00000000, 0xFFFFFF06, 0x00000096, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x0082001E, 0x00000043, 0x00000005, SetNpcPos, 0x00000000, 0x00000000, 0x00000000, 0x0000015E, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0x00000000, 0xFFFFFF38, 0x00000096, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x0082001C, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000043, 0x00000003, GotoMap, 0x802437B8, 0x00000005, 0x00000008, 0x00000001, 0x00000064, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_01/AB0AB0.data.s b/ver/us/asm/data/world/area_osr/osr_01/AB0AB0.data.s deleted file mode 100644 index db7db613f4..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_01/AB0AB0.data.s +++ /dev/null @@ -1,9 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240AC0_AB0AB0 -.word 0x00000000, 0x00000000, 0x44170000, 0x00000000, 0x44190000, 0x00000000, 0x42DE0000, 0x43870000, 0x00000000, 0x00000000, 0xC3910000, 0x43340000, 0x00000000, 0xC47A0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80240FD8, D_80240AC0_AB0AB0, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00190009 - -dlabel D_80240B40_AB0B30 -.word 0x00000014, 0x00000001, 0xF5DE0180, 0x00000021, 0x00000002, 0xFFFFFFF3, 0x00000005, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000004A, 0x00000000, 0x00000006, 0x0000001C, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000000, 0x00000000, 0x00000006, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000003, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000062, 0x00000000, 0x00000008, 0x00000012, 0x00000000, 0x00000044, 0x00000001, D_80240B40_AB0B30, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_01/AB0C10.data.s b/ver/us/asm/data/world/area_osr/osr_01/AB0C10.data.s deleted file mode 100644 index 97ce0d5dfe..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_01/AB0C10.data.s +++ /dev/null @@ -1,18 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240C20_AB0C10 -.word 0x0000004D, 0x00000001, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C85, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C86, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C87, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C88, 0x00000001, 0x00000043, 0x00000001, osr_01_UpdateTexturePanSmooth, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, osr_01_UpdateTexturePanStepped, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240CBC_AB0CAC -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000000, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80242168, 0x00000002, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240D18_AB0D08 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000003, UseExitHeading, 0x0000003C, 0x00000001, 0x00000044, 0x00000001, ExitWalk, 0x00000043, 0x00000003, GotoMap, 0x80242170, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240D74_AB0D64 -.word 0x00000047, 0x00000005, D_80240CBC_AB0CAC, 0x00080000, 0x00000000, 0x00000001, 0x00000000, 0x00000047, 0x00000005, D_80240D18_AB0D08, 0x00080000, 0x00000002, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240DBC_AB0DAC -.word 0x0000004D, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetTexPanner, 0x0000000E, 0x00000001, 0x00000043, 0x00000003, SetTexPanner, 0x0000000F, 0x00000002, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0xFFFFFF38, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x00000000, 0x00000024, 0x00000002, 0xFE363C85, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0x00000001, 0x00000024, 0x00000002, 0xFE363C87, 0x00000000, 0x00000024, 0x00000002, 0xFE363C88, 0x00000000, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000044, 0x00000001, D_80240C20_AB0C10, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000002, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x0000012C, 0x00000024, 0x00000002, 0xFE363C85, 0x00000000, 0x00000024, 0x00000002, 0xFE363C86, 0x00000000, 0x00000024, 0x00000002, 0xFE363C87, 0x00000000, 0x00000024, 0x00000002, 0xFE363C88, 0x00000001, 0x00000024, 0x00000002, 0xFE363C89, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8B, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x00000044, 0x00000001, D_80240C20_AB0C10, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xF5DE0329, 0x00000019, 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, 0x00000024, 0x00000002, 0xF9718881, 0x00000000, 0x00000024, 0x00000002, 0xF840632B, 0x00000001, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, 0x8024213C, 0x00000046, 0x00000001, 0x80240BB4, 0x00000044, 0x00000001, D_80240DBC_AB0DAC, 0x00000043, 0x00000006, PlaySoundAtF, 0x8000005A, 0x00000001, 0x0000012C, 0x00000002, 0x0000018F, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000003, 0x00000043, 0x00000003, EnableModel, 0x00000028, 0x00000000, 0x00000044, 0x00000001, 0x80241AC4, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, D_80240D74_AB0D64, 0x00000044, 0x00000001, EnterWalk, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_01/AB1150.data.s b/ver/us/asm/data/world/area_osr/osr_01/AB1150.data.s deleted file mode 100644 index 5c5e004994..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_01/AB1150.data.s +++ /dev/null @@ -1,45 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80241160_AB1150 -.word 0x00000000, 0x001E0018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000, 0x00000000, 0x00170013, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel osr_01_varStash -.word 0x00000000 - -dlabel D_802411BC_AB11AC -.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 osr_01_ItemChoice_HasSelectedItem -.word 0x00000000 - -dlabel osr_01_ItemChoice_SelectedItemID -.word 0x00000000 - -dlabel D_80241224_AB1214 -.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, osr_01_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, osr_01_ItemChoice_SaveSelected, 0xFE363C8A, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, func_80240730_AB0720, 0xFE363C80, 0x0000004E, 0x00000006, D_80241224_AB1214, 0x00000010, 0x00000000, jan_02_Quizmo_SetCamVfov, 0x00000000, 0x00000001, 0x00000043, 0x00000002, func_802406A4_AB0694, 0xFE363C80, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802413B8_AB13A8 -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFC, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000004, osr_01_LetterDelivery_CalcLetterPos, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000005, SetItemPos, 0xFE363C80, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241438_AB1428 -.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, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFC, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000004, osr_01_LetterDelivery_CalcLetterPos, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000042, 0x00000002, 0xFE363C80, 0x00050000, 0x00000043, 0x00000007, MakeItemEntity, 0xFE363C80, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000001, 0x00000000, 0x00000045, 0x00000002, D_802413B8_AB13A8, 0xFE363C8A, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00040002, 0x00000043, 0x00000004, GetAngleBetweenNPCs, 0xFE363C89, 0xFFFFFFFC, 0xFE363C8B, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFC, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C89, 0xFE363C86, 0xFE363C87, 0xFE363C88, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000100, 0x00000001, 0x0000000E, 0x00000002, 0xFE363C8B, 0x000000B4, 0x00000027, 0x00000002, 0xFE363C86, 0x00000014, 0x00000012, 0x00000000, 0x00000027, 0x00000002, 0xFE363C86, 0xFFFFFFEC, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C87, 0x0000000A, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0xF24A7A80, 0x00000043, 0x00000006, NpcJump1, 0xFFFFFFFC, 0xFE363C86, 0xFE363C87, 0xFE363C88, 0x00000014, 0x00000049, 0x00000001, 0xFE363C8A, 0x00000043, 0x00000002, RemoveItemEntity, 0xFE363C80, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000003, GetNpcYaw, 0xFFFFFFFC, 0xFE363C8A, 0x00000027, 0x00000002, 0xFE363C8A, 0x000000B4, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFC, 0xFE363C8A, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000006, NpcJump1, 0xFFFFFFFC, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0x00000014, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00040001, 0x00000043, 0x00000004, NpcFaceNpc, 0xFFFFFFFC, 0xFE363C89, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000100, 0x00000000, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000008, 0x00000001, 0x00000005, 0x00000023, 0x00000000, 0x00000043, 0x00000002, osr_01_ItemChoice_SaveSelected, 0xFE363C8A, 0x00000043, 0x00000001, CloseChoicePopup, 0x00000048, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024175C_AB174C -.word 0x00000024, 0x00000002, 0xFE363C80, 0xFE363C8B, 0x00000024, 0x00000002, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000002, func_80240730_AB0720, 0xFE363C80, 0x0000004E, 0x00000006, D_80241438_AB1428, 0x00000010, 0x00000000, jan_02_Quizmo_SetCamVfov, 0x00000000, 0x00000001, 0x00000043, 0x00000002, func_802406A4_AB0694, 0xFE363C80, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802417CC_AB17BC -.word 0x00000024, 0x00000002, 0xFE363C8C, 0x00000000, 0x0000000C, 0x00000002, 0xF5DE0180, 0xFFFFFFBA, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, osr_01_LetterDelivery_SaveNpcAnim, 0x00000043, 0x00000002, GetCurrentPartnerID, 0xFE363C80, 0x00000043, 0x00000003, FindKeyItem, 0xFE363C85, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000004, 0x0000000B, 0x00000002, 0xFE363C81, 0xFFFFFFFF, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000003, PlayerFaceNpc, 0xFE363C82, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C82, 0xFE363C8D, 0xFE363C80, 0xFE363C8E, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFC, 0xFE363C8D, 0xFE363C8E, 0xFE363C8F, 0x00000043, 0x00000003, SetNpcJumpscale, 0xFFFFFFFC, 0xF24A7A80, 0x00000027, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000043, 0x00000006, NpcJump1, 0xFFFFFFFC, 0xFE363C8D, 0xFE363C80, 0xFE363C8F, 0x0000000A, 0x00000043, 0x00000007, SpeakToNpc, 0xFFFFFFFC, 0x00040006, 0x00040001, 0x00000000, 0xFE363C82, 0xFE363C87, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000046, 0x00000001, D_8024175C_AB174C, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0xFFFFFFFF, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFC, 0x00040006, 0x00040001, 0x00000005, 0xFE363C88, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000001, 0x0000001C, 0x00000000, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFC, 0x00040006, 0x00040001, 0x00000005, 0xFE363C89, 0x0000000B, 0x00000002, 0xFE363C8A, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x00000000, 0xFE363C8A, 0x00000013, 0x00000000, 0x00000043, 0x00000001, EnablePartnerAI, 0x0000000B, 0x00000002, 0xFE363C86, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFE363C86, 0x00000024, 0x00000002, 0xFE363C81, 0x00000001, 0x00000046, 0x00000001, D_802411BC_AB11AC, 0x00000043, 0x00000002, AddKeyItem, 0xFE363C86, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C8C, 0x00000002, 0x00000023, 0x00000000, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000001, osr_01_LetterDelivery_RestoreNpcAnim, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, SetPlayerActionState, 0x0000000A, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000000, 0x00000000, 0x00000190, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000190, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF250BA80, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24A8680, 0xF24A5280, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x00830004, 0x00830001, 0x00000000, 0x000A006F, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, GotoMap, 0x80242178, 0x00000004, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241C18_AB1C08 -.word 0x00000046, 0x00000000 - -dlabel D_80241C20_AB1C10 -.word 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0xFFFFFF96, 0x00000024, 0x00000002, 0xFE363C80, 0x00090000, 0x00000018, 0x00000001, 0xFFFFFF9A, 0x00000024, 0x00000002, 0xFE363C80, 0x00090001, 0x00000018, 0x00000001, 0xFFFFFFB5, 0x00000024, 0x00000002, 0xFE363C80, 0x00090002, 0x00000018, 0x00000001, 0xFFFFFFCB, 0x0000000A, 0x00000002, 0xF8405C9C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00090003, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00090004, 0x00000013, 0x00000000, 0x00000018, 0x00000001, 0xFFFFFFF1, 0x00000024, 0x00000002, 0xFE363C80, 0x00090005, 0x00000018, 0x00000001, 0x00000007, 0x0000000A, 0x00000002, 0xF8405C8D, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00090006, 0x00000012, 0x00000000, 0x0000000A, 0x00000002, 0xF8405C8A, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00090007, 0x00000012, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00090008, 0x00000013, 0x00000000, 0x00000013, 0x00000000, 0x00000018, 0x00000001, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0x00090009, 0x00000018, 0x00000001, 0x00000027, 0x00000024, 0x00000002, 0xFE363C80, 0x0009000A, 0x00000018, 0x00000001, 0x0000002B, 0x00000024, 0x00000002, 0xFE363C80, 0x0009000B, 0x00000018, 0x00000001, 0x00000039, 0x00000024, 0x00000002, 0xFE363C80, 0x0009000C, 0x00000018, 0x00000001, 0x0000003D, 0x00000024, 0x00000002, 0xFE363C80, 0x0009000D, 0x00000018, 0x00000001, 0x00000059, 0x00000024, 0x00000002, 0xFE363C80, 0x0009000E, 0x00000018, 0x00000001, 0x00000060, 0x00000024, 0x00000002, 0xFE363C80, 0x0009000F, 0x00000023, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00830004, 0x00830001, 0x00000000, 0xFE363C80, 0x00000043, 0x0000000B, osr_01_LetterDelivery_Init, 0x00000000, 0x00830004, 0x00830001, 0x00000046, 0x00000047, 0x00090010, 0x00090011, 0x00090012, 0x00090013, D_80241C18_AB1C08, 0x00000046, 0x00000001, D_802417CC_AB17BC, 0x0000000A, 0x00000002, 0xFE363C8C, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241EC0_AB1EB0 -.word 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000003, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000190, 0x00000043, 0x00000003, SetNpcYaw, 0xFFFFFFFF, 0x0000005A, 0x0000001C, 0x00000000, 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80241C20_AB1C10, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241F4C_AB1F3C -.word 0x00000000, D_80241160_AB1150, 0x41C80000, 0x00000000, 0x43020000, 0x00112D09, D_80241EC0_AB1EB0, 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, 0x001A000C, 0x00000001, D_80241F4C_AB1F3C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_02/AB22C0.data.s b/ver/us/asm/data/world/area_osr/osr_02/AB22C0.data.s deleted file mode 100644 index 363173177b..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_02/AB22C0.data.s +++ /dev/null @@ -1,24 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240150_AB22C0 -.word 0xC34D0000, 0x00000000, 0x425C0000, 0x43070000, 0x00000000, 0x41A00000, 0xC3910000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_80240538_AB26A8, D_80240150_AB22C0, 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x0019000A - -dlabel D_802401B0_AB2320 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000024, 0x00000002, 0xFE363C82, 0x00000031, 0x00000024, 0x00000002, 0xFE363C83, 0xFFFFFFFF, 0x00000044, 0x00000001, ExitSingleDoor, 0x00000008, 0x00000001, 0x00000011, 0x00000043, 0x00000003, GotoMap, 0x80244100, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240264_AB23D4 -.word 0x0000004D, 0x00000001, 0x0000001B, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, UseDoorSounds, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0x00000001, 0x00000024, 0x00000002, 0xFE363C81, 0x00000001, 0x00000024, 0x00000002, 0xFE363C82, 0x0000002E, 0x00000024, 0x00000002, 0xFE363C83, 0x0000002C, 0x00000044, 0x00000001, ExitDoubleDoor, 0x00000008, 0x00000001, 0x00000011, 0x00000043, 0x00000003, GotoMap, 0x80244108, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240318_AB2488 -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000001, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFC, 0x00200009, 0x00200001, 0x00000000, 0x00140180, 0x00000043, 0x00000001, EnablePartnerAI, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240384_AB24F4 -.word 0x0000000A, 0x00000002, 0xF5DE0180, 0x0000003A, 0x00000047, 0x00000005, D_80240318_AB2488, 0x00000100, 0x00000000, 0x00000001, 0x00000000, 0x00000012, 0x00000000, 0x00000047, 0x00000005, D_802401B0_AB2320, 0x00000100, 0x00000000, 0x00000001, 0x00000000, 0x00000013, 0x00000000, 0x00000047, 0x00000005, D_80240264_AB23D4, 0x00000100, 0x00000001, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240408_AB2578 -.word 0x00000043, 0x00000002, GetLoadType, 0xFE363C81, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000001, 0x00000044, 0x00000001, EnterSavePoint, 0x00000044, 0x00000001, D_80240384_AB24F4, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000043, 0x00000002, UseDoorSounds, 0x00000001, 0x00000024, 0x00000002, 0xFE363C82, 0x00000031, 0x00000024, 0x00000002, 0xFE363C83, 0xFFFFFFFF, 0x00000046, 0x00000001, EnterSingleDoor, 0x00000016, 0x00000001, 0x00000001, 0x00000043, 0x00000002, UseDoorSounds, 0x00000002, 0x00000024, 0x00000002, 0xFE363C82, 0x0000002E, 0x00000024, 0x00000002, 0xFE363C83, 0x0000002C, 0x00000046, 0x00000001, EnterDoubleDoor, 0x00000016, 0x00000001, 0x00000002, 0x00000044, 0x00000001, 0x80241190, 0x00000023, 0x00000000, 0x00000044, 0x00000001, D_80240384_AB24F4, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240538_AB26A8 -.word 0x00000024, 0x00000002, 0xF5DE0329, 0x0000001A, 0x0000000D, 0x00000002, 0xF5DE0180, 0x0000005E, 0x00000024, 0x00000002, 0xF840634A, 0x00000001, 0x00000013, 0x00000000, 0x00000043, 0x00000002, SetSpriteShading, 0x00040000, 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, 0x0000000A, 0x00000002, 0xF5DE0180, 0x0000003A, 0x00000043, 0x00000002, func_80240020_AB2190, 0x00000003, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, 0x802440E8, 0x00000013, 0x00000000, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000002, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, 0x80243BB0, 0x00000023, 0x00000000, 0x00000046, 0x00000001, 0x80240990, 0x0000000A, 0x00000002, 0xF8405D7D, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000003, 0xF24645D3, 0xF24B4280, 0xF24C0B62, 0x00000001, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000003, 0xF24A7017, 0xF24B4280, 0xF24D00D5, 0x00000001, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000003, 0xF24D5316, 0xF24B4280, 0xF24CF2A2, 0x00000001, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000003, 0xF24FE641, 0xF24B4280, 0xF24AF9F2, 0x00000001, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000003, 0xF24F06AE, 0xF24BD353, 0xF2477E2C, 0x00000001, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000003, 0xF248D4EF, 0xF24B9280, 0xF2474E0A, 0x00000001, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000003, 0xF249A880, 0xF24B9280, 0xF246D38D, 0x00000001, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000003, 0xF24B4C80, 0xF24B9280, 0xF246D38D, 0x00000001, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000020, 0x00000003, 0xF24C2B6B, 0xF24B9280, 0xF247581A, 0x00000001, 0xFE363C80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000002A, 0x00000000, 0x00000013, 0x00000000, 0x0000000F, 0x00000002, 0xF5DE0180, 0x0000005E, 0x00000043, 0x00000003, FadeOutMusic, 0x00000000, 0x000001F4, 0x00000013, 0x00000000, 0x00000044, 0x00000001, D_80240408_AB2578, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xF5DE0180, 0x0000005E, 0x00000024, 0x00000002, 0xF5DE0180, 0x0000005F, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_02/AB2B00.data.s b/ver/us/asm/data/world/area_osr/osr_02/AB2B00.data.s deleted file mode 100644 index 4c7be4d07f..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_02/AB2B00.data.s +++ /dev/null @@ -1,6 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240990_AB2B00 -.word 0x0000000A, 0x00000002, 0xF8405D7D, 0x00000001, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x0000000C, 0x00000002, 0xF5DE0180, 0x00000059, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000008, MakeEntity, Entity_HiddenYellowBlock, 0x000000B4, 0x0000003C, 0xFFFFFFF1, 0x00000000, 0x0000008E, 0x80000000, 0x00000043, 0x00000002, AssignBlockFlag, 0xF84061EB, 0x00000043, 0x00000007, MakeEntity, Entity_SavePoint, 0xFFFFFF9C, 0x0000003C, 0xFFFFFFCE, 0x00000000, 0x80000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_02/AB2BB0.data.s b/ver/us/asm/data/world/area_osr/osr_02/AB2BB0.data.s deleted file mode 100644 index 1654c1b6b5..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_02/AB2BB0.data.s +++ /dev/null @@ -1,96 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240A40_AB2BB0 -.word 0x00000000, 0x002E0024, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_80240A6C_AB2BDC -.word 0x00000000, 0x00140014, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_80240A98_AB2C08 -.word 0x00000000, 0x001A0018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000, 0x00000000, 0x00140014, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000, 0x00000000, 0x00160018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_80240B1C_AB2C8C -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240B2C_AB2C9C -.word 0x00000000, 0x00180018, D_80240B1C_AB2C8C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00630000 - -dlabel D_80240B58_AB2CC8 -.word 0xC1200000, 0x42200000, 0x41200000, 0x41700000, 0x42040000, 0x41A00000, 0x42480000, 0x41F00000, 0x41F00000 - -dlabel D_80240B7C_AB2CEC -.word 0x42480000, 0x41F00000, 0x41F00000, 0x428C0000, 0x42340000, 0x41200000, 0x42B40000, 0x42700000, 0x41F00000, 0x428C0000, 0x42960000, 0x42480000, 0x42480000, 0x42B40000, 0x41F00000, 0x428C0000, 0x42D20000, 0x41200000, 0x42B40000, 0x42F00000, 0x41F00000, 0x428C0000, 0x43070000, 0x42480000, 0x42480000, 0x43160000, 0x41F00000, 0x428C0000, 0x43250000, 0x41200000, 0x42B40000, 0x43340000, 0x41F00000, 0x428C0000, 0x43430000, 0x42480000, 0x42480000, 0x43520000, 0x41F00000 - -dlabel D_80240C18_AB2D88 -.word 0x00000043, 0x00000004, SetNpcFlagBits, 0xFE363C84, 0x00040000, 0x00000001, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x0000001E, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x0000000F, PlayEffect, 0x00000011, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000006, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x0000001E, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C84, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x0000000F, PlayEffect, 0x00000011, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000008, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000708, 0x00000064, 0x00000002, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, SetNpcRotation, 0xFE363C84, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFE363C84, 0xFE363C87, 0xFE363C88, 0xFE363C89, 0x00000043, 0x00000005, MakeLerp, 0x00000050, 0x00000104, 0x00000064, 0x00000002, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C84, 0xFE363C87, 0xFE363C80, 0xFE363C89, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0xFE363C84, 0xFE363C87, 0xFFFFFC18, 0xFE363C89, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240EC0_AB3030 -.word 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x0000001E, 0x00000043, 0x00000005, GetNpcPos, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x0000000F, PlayEffect, 0x00000011, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000006, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x0000001E, 0x00000043, 0x00000005, GetNpcPos, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C81, 0x00000014, 0x00000043, 0x0000000F, PlayEffect, 0x00000011, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000008, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000870, 0x00000078, 0x00000002, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, SetNpcRotation, 0x00000001, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000004, PlaySoundAtNpc, 0x00000001, 0x00000062, 0x00000000, 0x00000043, 0x00000005, LoadPath, 0x00000078, D_80240B7C_AB2CEC, 0x0000000D, 0x00000001, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, GetNextPathPos, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0xFE363C81, 0xFFFFFC18, 0xFE363C83, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000007, AdjustCam, 0x00000000, 0xF24A7C80, 0x00000000, 0x00000226, 0xF24ABE80, 0xF24A5280, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000078, 0x00000002, 0x00000008, 0x00000043, 0x00000004, SetPlayerPos, 0x0000000F, 0x00000000, 0x0000001E, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFC, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFC, 0xFFFFFFBA, 0xFE363C81, 0x0000000F, 0x00000043, 0x00000003, SetNpcYaw, 0xFFFFFFFC, 0x0000005A, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFC, 0x00000106, 0x00000043, 0x00000005, GetNpcPos, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A5E80, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF2556A80, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24FF280, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00060005, 0x00000043, 0x00000005, SetNpcPos, 0x00000009, 0x0000001E, 0x00000019, 0x0000001E, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x00120003, 0x00000043, 0x00000005, GetNpcPos, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C81, 0x00000050, 0x00000024, 0x00000002, 0xFE363C82, 0x00000023, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000009, 0xF24A7C80, 0x00000043, 0x00000006, NpcJump1, 0x00000009, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000014, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000002, PlaySound, 0x00000139, 0x00000005, 0x00000001, 0x00000006, 0x00000043, 0x0000000F, PlayEffect, 0x00000033, 0x00000009, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000001, 0x00000014, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x00000011, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x0000001E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000014, 0x00000027, 0x00000002, 0xFE363C81, 0xFFFFFFFF, 0x00000043, 0x00000005, SetNpcPos, 0x00000009, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, SetNpcPos, 0x00000009, 0x00000000, 0xFFFFFC18, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000002, 0x00120001, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000002, 0x00120002, 0x00120001, 0x00000000, 0x00010000, 0x00000008, 0x00000001, 0x0000000A, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000003, SetNpcJumpscale, 0x00000002, 0xF24A7A80, 0x00000043, 0x00000006, NpcJump0, 0x00000002, 0x00000078, 0x00000050, 0x00000000, 0x00000028, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000002, 0x0000010E, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000024, 0x00000002, 0xFE363C80, 0x00000078, 0x00000024, 0x00000002, 0xFE363C81, 0x00000050, 0x00000024, 0x00000002, 0xFE363C82, 0x00000000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F2A80, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A6480, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000005, GetNpcPos, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F2A80, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A6480, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000003, 0x00130002, 0x00130001, 0x00000000, 0x00010001, 0x00000043, 0x00000005, GetNpcPos, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F2A80, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A6480, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000004, 0x00140002, 0x00140001, 0x00000000, 0x00010002, 0x00000043, 0x00000005, GetNpcPos, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F2A80, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A6480, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000005, 0x00150002, 0x00150001, 0x00000000, 0x00010003, 0x00000043, 0x00000005, GetNpcPos, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F2A80, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A6480, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000006, 0x00160002, 0x00160001, 0x00000000, 0x00010004, 0x00000043, 0x00000005, GetNpcPos, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F2A80, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A6480, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000007, 0x00170003, 0x00170001, 0x00000000, 0x00010005, 0x00000043, 0x00000005, GetNpcPos, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F2A80, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A6480, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000008, 0x00180002, 0x00180001, 0x00000000, 0x00010006, 0x00000043, 0x00000005, GetNpcPos, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F2A80, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A6480, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000002, 0x00120002, 0x00120001, 0x00000000, 0x00010007, 0x00000043, 0x00000005, GetNpcPos, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A7280, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F2A80, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00200009, 0x00200001, 0x00000005, 0x00010008, 0x00000043, 0x00000005, GetNpcPos, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A6280, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24EC680, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000002, 0x00120002, 0x00120001, 0x00000000, 0x00010009, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000007, AdjustCam, 0x00000000, 0xF24BE280, 0x00000046, 0x00000190, 0xF24ABE80, 0xF24A4E80, 0x00000043, 0x00000002, SetPlayerAnimation, 0x0001002A, 0x00000056, 0x00000000, 0x00000024, 0x00000002, 0xFE363C84, 0x00000002, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFE363C84, 0x00002045, 0x00000000, 0x00000046, 0x00000001, D_80240C18_AB2D88, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000024, 0x00000002, 0xFE363C84, 0x00000006, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFE363C84, 0x00002046, 0x00000000, 0x00000046, 0x00000001, D_80240C18_AB2D88, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000003C, 0x00000024, 0x00000002, 0xFE363C84, 0x00000004, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFE363C84, 0x00002045, 0x00000000, 0x00000046, 0x00000001, D_80240C18_AB2D88, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000005A, 0x00000024, 0x00000002, 0xFE363C84, 0x00000003, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFE363C84, 0x00002046, 0x00000000, 0x00000046, 0x00000001, D_80240C18_AB2D88, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000078, 0x00000024, 0x00000002, 0xFE363C84, 0x00000008, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFE363C84, 0x00002045, 0x00000000, 0x00000046, 0x00000001, D_80240C18_AB2D88, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000096, 0x00000024, 0x00000002, 0xFE363C84, 0x00000005, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFE363C84, 0x00002046, 0x00000000, 0x00000046, 0x00000001, D_80240C18_AB2D88, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x000000B4, 0x00000024, 0x00000002, 0xFE363C84, 0x00000007, 0x00000043, 0x00000004, PlaySoundAtNpc, 0xFE363C84, 0x00002045, 0x00000000, 0x00000046, 0x00000001, D_80240C18_AB2D88, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000070, 0x00000001, 0x00000008, 0x00000043, 0x00000005, LoadPath, 0x0000001E, D_80240B58_AB2CC8, 0x00000003, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, GetNextPathPos, 0x00000043, 0x00000005, SetNpcPos, 0x00000001, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000005, 0x00000043, 0x00000004, InterpNpcYaw, 0x00000001, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, GetNpcPos, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24ABE80, 0xF24A6A80, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF24F2A80, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A8280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00200009, 0x00200001, 0x00000000, 0x0001000A, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x000C0000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x000C0026, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000000, 0x000C0001, 0x000C0026, 0x00000005, 0x0001000B, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x000C0002, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x000A0001, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00200016, 0x00000043, 0x00000006, SpeakToPlayer, 0x00000001, 0x00200016, 0x00200016, 0x00000000, 0x0001000C, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000001, 0x00200001, 0x00000043, 0x00000005, EndSpeech, 0x00000001, 0x00200009, 0x00200001, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000044, 0x00000001, D_80240EC0_AB3030, 0x00000043, 0x00000002, SetPlayerAnimation, 0x0001002A, 0x00000008, 0x00000001, 0x000000FA, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x000A0002, 0x00000043, 0x00000005, NpcMoveTo, 0x00000000, 0xFFFFFFF6, 0x0000001E, 0x00000028, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x000A0001, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010002, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000010E, 0x00000000, 0x00000008, 0x00000001, 0x0000003C, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x0001002A, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000003, GotoMap, 0x80244110, 0x00000002, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802424B8_AB4628 -.word 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFFFFFFE7, 0x00000000, 0x00000028, 0x00000043, 0x00000004, InterpNpcYaw, 0xFFFFFFFF, 0x0000005A, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802424FC_AB466C -.word 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFFFFFFF6, 0x00000028, 0x0000000A, 0x00000043, 0x00000003, SetNpcYaw, 0xFFFFFFFF, 0x0000005A, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024253C_AB46AC -.short 0x0001, 0x0003, 0x0005, 0x0007, 0x0007, 0x0005, 0x0003, 0x0000 - -dlabel D_8024254C_AB46BC -.word 0x00000043, 0x00000001, func_80240060_AB21D0, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242568_AB46D8 -.word 0x00000043, 0x00000005, SetNpcPos, 0x00000002, 0x0000003C, 0x00000014, 0x0000001E, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, BindNpcAux, 0xFFFFFFFF, D_8024254C_AB46BC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802425BC_AB472C -.word 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000042, 0x00000050, 0xFFFFFFE5, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, BindNpcAux, 0xFFFFFFFF, D_8024254C_AB46BC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242610_AB4780 -.word 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000035, 0x00000050, 0xFFFFFFA1, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, BindNpcAux, 0xFFFFFFFF, D_8024254C_AB46BC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242664_AB47D4 -.word 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x0000005B, 0x00000050, 0xFFFFFF7C, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, BindNpcAux, 0xFFFFFFFF, D_8024254C_AB46BC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802426B8_AB4828 -.word 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x00000097, 0x00000050, 0xFFFFFF7C, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, BindNpcAux, 0xFFFFFFFF, D_8024254C_AB46BC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024270C_AB487C -.word 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x000000BD, 0x00000050, 0xFFFFFFA1, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, BindNpcAux, 0xFFFFFFFF, D_8024254C_AB46BC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242760_AB48D0 -.word 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0x000000B0, 0x00000050, 0xFFFFFFE5, 0x00000043, 0x00000003, NpcFacePlayer, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000003, BindNpcAux, 0xFFFFFFFF, D_8024254C_AB46BC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802427B4_AB4924 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802427C4_AB4934 -.word 0x000A0001, 0x000A0002, 0x000C0000, 0x000C0001, 0x000C0002, 0x000C0006, 0x000C001E, 0x000C0026, 0xFFFFFFFF - -dlabel D_802427E8_AB4958 -.word 0x00200001, 0x00200009, 0x00200016, 0xFFFFFFFF - -dlabel D_802427F8_AB4968 -.word 0x00120001, 0x00120002, 0x00120003, 0xFFFFFFFF - -dlabel D_80242808_AB4978 -.word 0x00130001, 0x00130002, 0xFFFFFFFF - -dlabel D_80242814_AB4984 -.word 0x00140001, 0x00140002, 0xFFFFFFFF - -dlabel D_80242820_AB4990 -.word 0x00150001, 0x00150002, 0xFFFFFFFF - -dlabel D_8024282C_AB499C -.word 0x00160001, 0x00160002, 0xFFFFFFFF - -dlabel D_80242838_AB49A8 -.word 0x00170001, 0x00170003, 0xFFFFFFFF - -dlabel D_80242844_AB49B4 -.word 0x00180001, 0x00180002, 0xFFFFFFFF - -dlabel D_80242850_AB49C0 -.word 0x00000000, D_80240A40_AB2BB0, 0x00000000, 0xC47A0000, 0x00000000, 0x00020F05, D_802424B8_AB4628, 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, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x000A0000, 0x00000000, 0x00000000, D_802427C4_AB4934, 0x00000000, 0x00000001, D_80240A6C_AB2BDC, 0x00000000, 0xC47A0000, 0x00000000, 0x00000F05, D_802424FC_AB466C, 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, 0x00200001, 0x00200005, 0x00200008, 0x00200008, 0x00200001, 0x00200001, 0x00200001, 0x00200001, 0x00200001, 0x00200001, 0x00200001, 0x00200001, 0x00200001, 0x00200001, 0x00200001, 0x00200001, 0x00000000, 0x00000000, D_802427E8_AB4958, 0x00000000, 0x00000002, D_80240A98_AB2C08, 0x00000000, 0xC47A0000, 0x00000000, 0x00000F05, D_80242568_AB46D8, 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, 0x00120001, 0x00120001, 0x00120001, 0x00120001, 0x00120001, 0x00120001, 0x00120001, 0x00120001, 0x00120000, 0x00120001, 0x00120001, 0x00120001, 0x00120001, 0x00120001, 0x00120001, 0x00120001, 0x00000000, 0x00000000, D_802427F8_AB4968, 0x00000000, 0x00000003, D_80240A98_AB2C08, 0x00000000, 0xC47A0000, 0x00000000, 0x00000F05, D_802425BC_AB472C, 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, 0x00130001, 0x00130001, 0x00130001, 0x00130001, 0x00130001, 0x00130001, 0x00130001, 0x00130001, 0x00130000, 0x00130001, 0x00130001, 0x00130001, 0x00130001, 0x00130001, 0x00130001, 0x00130001, 0x00000000, 0x00000000, D_80242808_AB4978, 0x00000000, 0x00000004, D_80240A98_AB2C08, 0x00000000, 0xC47A0000, 0x00000000, 0x00000F05, D_80242610_AB4780, 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, 0x00140001, 0x00140001, 0x00140001, 0x00140001, 0x00140001, 0x00140001, 0x00140001, 0x00140001, 0x00140000, 0x00140001, 0x00140001, 0x00140001, 0x00140001, 0x00140001, 0x00140001, 0x00140001, 0x00000000, 0x00000000, D_80242814_AB4984, 0x00000000, 0x00000005, D_80240A98_AB2C08, 0x00000000, 0xC47A0000, 0x00000000, 0x00000F05, D_80242664_AB47D4, 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, 0x00150001, 0x00150001, 0x00150001, 0x00150001, 0x00150001, 0x00150001, 0x00150001, 0x00150001, 0x00150000, 0x00150001, 0x00150001, 0x00150001, 0x00150001, 0x00150001, 0x00150001, 0x00150001, 0x00000000, 0x00000000, D_80242820_AB4990, 0x00000000, 0x00000006, D_80240A98_AB2C08, 0x00000000, 0xC47A0000, 0x00000000, 0x00000F05, D_802426B8_AB4828, 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, 0x00160001, 0x00160001, 0x00160001, 0x00160001, 0x00160001, 0x00160001, 0x00160001, 0x00160001, 0x00160000, 0x00160001, 0x00160001, 0x00160001, 0x00160001, 0x00160001, 0x00160001, 0x00160001, 0x00000000, 0x00000000, D_8024282C_AB499C, 0x00000000, 0x00000007, D_80240A98_AB2C08, 0x00000000, 0xC47A0000, 0x00000000, 0x00000F05, D_8024270C_AB487C, 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, 0x00170001, 0x00170001, 0x00170001, 0x00170001, 0x00170001, 0x00170001, 0x00170001, 0x00170001, 0x00170000, 0x00170001, 0x00170001, 0x00170001, 0x00170001, 0x00170001, 0x00170001, 0x00170001, 0x00000000, 0x00000000, D_80242838_AB49A8, 0x00000000, 0x00000008, D_80240A98_AB2C08, 0x00000000, 0xC47A0000, 0x00000000, 0x00000F05, D_80242760_AB48D0, 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, 0x00180001, 0x00180001, 0x00180001, 0x00180001, 0x00180001, 0x00180001, 0x00180001, 0x00180001, 0x00180000, 0x00180001, 0x00180001, 0x00180001, 0x00180001, 0x00180001, 0x00180001, 0x00180001, 0x00000000, 0x00000000, D_80242844_AB49B4, 0x00000000, 0x00000009, D_80240B2C_AB2C9C, 0x00000000, 0xC47A0000, 0x00000000, 0x00000F05, D_802427B4_AB4924, 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, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00D30000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000000A, D_80242850_AB49C0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_02/AB5D40.data.s b/ver/us/asm/data/world/area_osr/osr_02/AB5D40.data.s deleted file mode 100644 index 180d257d5a..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_02/AB5D40.data.s +++ /dev/null @@ -1,21 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80243BD0_AB5D40 -.word 0x00000000, 0x00240022, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000D0000 - -dlabel D_80243BFC_AB5D6C -.word 0x00390000, 0x00390002, 0x00390003, 0x00390004, 0x00390005, 0x00390008, 0x00390007, 0x00390013, 0x00390014, 0xFFFFFFFF - -dlabel D_80243C24_AB5D94 -.word 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000001, CancelMessage, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00390008, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00390002, 0x00000043, 0x00000002, osr_02_GetPeachDisguise, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0x0014014A, 0x00000016, 0x00000001, 0x00000003, 0x00000024, 0x00000002, 0xFE363C81, 0x0014014B, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0x0014014C, 0x00000023, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00390005, 0x00390002, 0x00000010, 0xFE363C81, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00390007, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80243D54_AB5EC4 -.word 0x00000043, 0x00000003, SetSelfVar, 0x00000000, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0xFFFFFFFF, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000003, GetSelfVar, 0x00000000, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000043, 0x00000004, AwaitPlayerApproach, 0xFE363C81, 0xFE363C83, 0x00000055, 0x00000056, 0x00000000, 0x00000043, 0x00000006, SpeakToPlayer, 0xFFFFFFFF, 0x00390007, 0x00390007, 0x00000005, 0x00140149, 0x00000057, 0x00000000, 0x00000043, 0x00000003, SetSelfVar, 0x00000000, 0x00000001, 0x00000012, 0x00000000, 0x00000043, 0x00000004, AwaitPlayerLeave, 0xFE363C81, 0xFE363C83, 0x0000005A, 0x00000043, 0x00000001, CancelMessage, 0x00000043, 0x00000003, SetSelfVar, 0x00000000, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80243E7C_AB5FEC -.word 0x00000043, 0x00000003, SetNpcAnimation, 0xFFFFFFFF, 0x00390007, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFF, 0xFFFFFFD8, 0x00000014, 0xFFFFFF56, 0x00000043, 0x00000003, SetNpcYaw, 0xFFFFFFFF, 0x000000C8, 0x00000043, 0x00000003, BindNpcIdle, 0xFFFFFFFF, D_80243D54_AB5EC4, 0x00000043, 0x00000003, BindNpcInteract, 0xFFFFFFFF, D_80243C24_AB5D94, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80243EF8_AB6068 -.word 0x00000000, D_80243BD0_AB5D40, 0xC28C0000, 0x00000000, 0xC2C80000, 0x00400D0D, D_80243E7C_AB5FEC, 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, 0x00390002, 0x00390003, 0x00390004, 0x00390004, 0x00390002, 0x00390002, 0x0039000C, 0x0039000C, 0x00390011, 0x00390012, 0x00390007, 0x00390008, 0x00390001, 0x00390002, 0x00390002, 0x00390002, 0x00000000, 0x00000000, D_80243BFC_AB5D6C, 0x00000000, 0x00000001, D_80243EF8_AB6068, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_03/AB6610.data.s b/ver/us/asm/data/world/area_osr/osr_03/AB6610.data.s deleted file mode 100644 index d05c7d4cf1..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_03/AB6610.data.s +++ /dev/null @@ -1,30 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240380_AB6610 -.word 0x00000000, 0x00000000, 0x44170000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x43870000, 0x00000000, 0x00000000, 0x43910000, 0x43340000, 0x00000000, 0xC2480000, 0x00000000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x43340000, 0x00000000, 0xC2480000, 0x00000000, 0x43340000, 0x00000000, 0x00000000, 0xC3910000, 0x43340000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_802405FC_AB688C, D_80240380_AB6610, 0x00000007, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00000000 - -dlabel D_80240430_AB66C0 -.word 0x00000043, 0x00000003, EnableGroup, 0x00000045, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000004D, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000005E, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000063, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000066, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000006C, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000073, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000081, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802404E0_AB6770 -.word 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802404F0_AB6780 -.word 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000001, 0x00000044, 0x00000001, 0x802413E0, 0x00000016, 0x00000001, 0x00000002, 0x00000044, 0x00000001, 0x80241654, 0x00000016, 0x00000001, 0x00000003, 0x00000044, 0x00000001, D_80240430_AB66C0, 0x00000044, 0x00000001, 0x80241CFC, 0x00000016, 0x00000001, 0x00000004, 0x00000008, 0x00000001, 0x0000000F, 0x00000044, 0x00000001, 0x80242528, 0x00000016, 0x00000001, 0x00000005, 0x00000044, 0x00000001, D_80240430_AB66C0, 0x00000044, 0x00000001, 0x80242AE0, 0x00000016, 0x00000001, 0x00000006, 0x00000044, 0x00000001, 0x8024191C, 0x0000001C, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, D_802404E0_AB6770, 0x00000044, 0x00000001, EnterWalk, 0x00000023, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802405FC_AB688C -.word 0x00000024, 0x00000002, 0xF5DE0329, 0x00000018, 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, 0x00000002, GetEntryID, 0xFE363C80, 0x00000014, 0x00000001, 0xFE363C80, 0x00000016, 0x00000001, 0x00000004, 0x00000043, 0x00000003, MakeNpcs, 0x00000000, D_80240AFC_AB6D8C, 0x0000001C, 0x00000000, 0x00000023, 0x00000000, 0x00000014, 0x00000001, 0xF5DE0180, 0x0000001D, 0x00000001, 0xFFFFFF96, 0x0000001D, 0x00000001, 0xFFFFFFB3, 0x0000001D, 0x00000001, 0xFFFFFFF1, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000073, 0x00000000, 0x00000008, 0x00000020, 0x00000000, 0x00000016, 0x00000001, 0xFFFFFFC9, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000066, 0x00000000, 0x00000008, 0x0000001D, 0x00000001, 0x00000005, 0x0000001D, 0x00000001, 0x00000025, 0x0000001D, 0x00000001, 0x00000039, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x00000074, 0x00000000, 0x00000008, 0x00000020, 0x00000000, 0x00000016, 0x00000001, 0x00000057, 0x00000043, 0x00000002, ClearAmbientSounds, 0x000000FA, 0x00000043, 0x00000003, FadeOutMusic, 0x00000000, 0x000001F4, 0x0000001C, 0x00000000, 0x0000000A, 0x00000002, 0xF8405D7D, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000005F, 0x00000000, 0x00000008, 0x00000013, 0x00000000, 0x00000023, 0x00000000, 0x00000044, 0x00000001, D_802404F0_AB6780, 0x00000043, 0x00000002, GetEntryID, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000004, 0x00000008, 0x00000001, 0x0000000F, 0x00000012, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000013, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802408A0_AB6B30 -.word 0x00000000, 0x0028001E, 0x00000000, 0x00000000, 0x00000000, EnemyNpcHit, 0x00000000, EnemyNpcDefeat, 0x00000000, 0x00000000, 0x001A0000 - -dlabel D_802408CC_AB6B5C -.word 0x00600009, 0x0060000A, 0x0060000B, 0x0060000C, 0x0060000D, 0x0060000E, 0x0060000F, 0x00600010, 0x00600011, 0x00600012, 0x00600013, 0x00600014, 0x00600015, 0x00600016, 0x0060001A, 0xFFFFFFFF - -dlabel D_8024090C_AB6B9C -.word 0x00000000, D_802408A0_AB6B30, 0x00000000, 0xC47A0000, 0x00000000, 0x00000D0D, 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, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00600001, 0x00600002, 0x00600003, 0x00600003, 0x00600001, 0x00600001, 0x00600000, 0x00600000, 0x00600003, 0x00600003, 0x00600003, 0x00600003, 0x00600003, 0x00600003, 0x00600003, 0x00600003, 0x00000000, 0x00000000, D_802408CC_AB6B5C, 0x00000000 - -dlabel D_80240AFC_AB6D8C -.word 0x00000001, D_8024090C_AB6B9C, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_03/AB6DB0.data.s b/ver/us/asm/data/world/area_osr/osr_03/AB6DB0.data.s deleted file mode 100644 index ffb66e7818..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_03/AB6DB0.data.s +++ /dev/null @@ -1,24 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240B20_AB6DB0 -.word 0xC2C80000, 0x428C0000, 0x445A4000, 0xC3A40000, 0xC1200000, 0x44610000, 0xC3CB0000, 0xC2B40000, 0x446F8000, 0xC3F28000, 0xC32A0000, 0x447C8000, 0xC41A8000, 0xC3660000, 0x44866000, 0x00000043, 0x00000005, LoadPath, 0x0000005A, D_80240B20_AB6DB0, 0x00000005, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, GetNextPathPos, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000001, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240BEC_AB6E7C -.word 0xC4AC8000, 0xC5386000, 0x450FC000, 0xC4A5A000, 0xC53D6000, 0x45117000, 0xC49D2000, 0xC53EA000, 0x45102000, 0xC4992000, 0xC53B8000, 0x4510E000, 0xC49E8000, 0xC53B8000, 0x45102000, 0xC4A5A000, 0xC53F1000, 0x450F9000, 0xC4AD6000, 0xC543E000, 0x45114000, 0xC4B32000, 0xC546D000, 0x45130000 - -dlabel D_80240C4C_AB6EDC -.word 0x00000043, 0x00000005, LoadPath, 0x00000087, D_80240BEC_AB6E7C, 0x00000008, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, GetNextPathPos, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x0000000B, 0x00000002, 0xFE363C80, 0x00000001, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240CDC_AB6F6C -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x0000005A, 0xFFFFFFA6, 0x0000001E, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000019, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000043, 0x00000002, func_80240020_AB62B0, 0xFE363C80, 0x00000043, 0x00000006, RotateGroup, 0x00000019, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000002, 0x00000043, 0x00000005, TranslateGroup, 0x00000019, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000019, 0xFFFFFFEC, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFFA6, 0x0000005A, 0x0000001E, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000019, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000043, 0x00000002, func_80240020_AB62B0, 0xFE363C80, 0x00000043, 0x00000006, RotateGroup, 0x00000019, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000002, 0x00000043, 0x00000005, TranslateGroup, 0x00000019, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000019, 0x00000014, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240F20_AB71B0 -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x0000002D, 0xFFFFFFD3, 0x0000003C, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x0000000C, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000000C, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFFD3, 0x0000002D, 0x0000003C, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x0000000C, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x0000000C, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024108C_AB731C -.word 0x00000024, 0x00000002, 0xFD050F8E, 0x00000000, 0x00000044, 0x00000001, D_80240CDC_AB6F6C, 0x00000044, 0x00000001, D_80240F20_AB71B0, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFCE0, 0x00001194, 0x00000190, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000024, 0x00000002, 0xFD050F8E, 0xFE363C80, 0x00000043, 0x00000005, TranslateGroup, 0x00000008, 0x00000000, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x0000001D, 0x00000000, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x0000002F, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFFFFEC78, 0x0000012C, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateModel, 0x0000005F, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFFFFEC78, 0x0000012C, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateModel, 0x00000060, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFFFFEC78, 0x0000012C, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateModel, 0x00000061, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFFFFEC78, 0x0000012C, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateModel, 0x00000062, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000006B, 0x00000000, 0x00000008, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000004, SetPlayerPos, 0x00000000, 0x00000000, 0x000007D0, 0x00000043, 0x00000003, EnableGroup, 0x00000045, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000004D, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000005E, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000066, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000006C, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000073, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000081, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000086, 0x00000000, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000050, 0x00000010, 0x00001000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetCamType, 0x00000000, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFFFFFF6A, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24A4680, 0xF24AC280, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000044, 0x00000001, D_8024108C_AB731C, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFFFFFFCE, 0x000000C8, 0x00000000, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF25A1A80, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A7D80, 0x00000008, 0x00000001, 0x000000B4, 0x00000043, 0x00000003, GotoMap, 0x80242FE0, 0x00000002, 0x00000008, 0x00000001, 0x00000064, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241630_AB78C0 -.word 0xC3960000, 0x00000000, 0x43960000, 0xC3FA0000, 0x41C80000, 0x44610000, 0xC4340000, 0xC4228000, 0x44BB8000, 0x00000043, 0x00000003, FadeOutMusic, 0x00000000, 0x000001F4, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, SetPlayerAnimation, 0x0001001F, 0x00000043, 0x00000003, EnableGroup, 0x00000045, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000004D, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000005E, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000063, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000066, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000006C, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000073, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000081, 0x00000000, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000050, 0x00000010, 0x00001000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24A4680, 0xF24AC280, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000024, 0x00000002, 0xFD050F8E, 0x00000000, 0x00000044, 0x00000001, D_80240CDC_AB6F6C, 0x00000044, 0x00000001, D_80240F20_AB71B0, 0x00000058, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x0000002D, 0x00000043, 0x00000003, InterpPlayerYaw, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000043, 0x00000005, LoadPath, 0x0000005A, D_80241630_AB78C0, 0x00000003, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, GetNextPathPos, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000003, GotoMap, 0x80242FE0, 0x00000003, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000003, FadeOutMusic, 0x00000000, 0x000001F4, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000003, SetPlayerFlagBits, 0x00200000, 0x00000001, 0x00000043, 0x00000003, InterpPlayerYaw, 0x0000005A, 0x00000000, 0x00000043, 0x00000002, SetPlayerAnimation, 0x00010017, 0x00000043, 0x00000003, SetPlayerFlagBits, 0x00200000, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000045, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000004D, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000005E, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000063, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000066, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000006C, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000073, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000081, 0x00000000, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000019, 0x00000010, 0x00001770, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFFFFFE70, 0xFFFFFA24, 0x00000000, 0x00000043, 0x00000003, SetCamDistance, 0x00000000, 0xF2812A80, 0x00000043, 0x00000004, SetCamPosA, 0x00000000, 0xFFFFFED4, 0xFFFFFF60, 0x00000043, 0x00000004, SetCamPosB, 0x00000000, 0x0000012C, 0x00000050, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24A0280, 0xF24A7A80, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000008, 0x00000001, 0x0000000F, 0x00000046, 0x00000001, D_80240C4C_AB6EDC, 0x00000008, 0x00000001, 0x0000003C, 0x00000043, 0x00000003, GotoMap, 0x80242FE8, 0x00000005, 0x00000008, 0x00000001, 0x00000064, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_03/AB7E20.data.s b/ver/us/asm/data/world/area_osr/osr_03/AB7E20.data.s deleted file mode 100644 index 41458aef8e..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_03/AB7E20.data.s +++ /dev/null @@ -1,9 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80241B90_AB7E20 -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000086, 0xFD050F8A, 0xFD050F8B, 0xFD050F8C, 0x00000043, 0x00000006, RotateGroup, 0x00000086, 0xFD050F8D, 0x00000000, 0x00000001, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0xFD050F8A, 0x00000024, 0x00000002, 0xFE363C81, 0xFD050F8B, 0x00000024, 0x00000002, 0xFE363C82, 0xFD050F8C, 0x00000027, 0x00000002, 0xFE363C81, 0x00000014, 0x00000027, 0x00000002, 0xFE363C82, 0xFFFFFFF6, 0x00000043, 0x00000004, SetPlayerPos, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C82, 0x00000014, 0x00000043, 0x00000005, SetNpcPos, 0xFFFFFFFC, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80241C90_AB7F20 -.word 0xC42F0000, 0xC3AF0000, 0x44C80000, 0xC42F0000, 0xC3EB0000, 0x44C80000, 0xC4250000, 0xC3FC8000, 0x44C6C000, 0xC40D4000, 0xC4020000, 0x44C9E000, 0xC36B0000, 0xC4250000, 0x44B4A000, 0xC2DC0000, 0xC432C000, 0x44A28000, 0x41700000, 0xC4408000, 0x44906000, 0x00000000, 0xC4408000, 0x44660000, 0x41A00000, 0xC4160000, 0x44160000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, SetPlayerActionState, 0x0000000A, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000086, 0xFFFFFD44, 0xFFFFFEA2, 0x00000640, 0x00000024, 0x00000002, 0xFD050F8D, 0x00000032, 0x00000024, 0x00000002, 0xFD050F8A, 0xFFFFFD44, 0x00000024, 0x00000002, 0xFD050F8B, 0xFFFFFEA2, 0x00000024, 0x00000002, 0xFD050F8C, 0x00000640, 0x00000044, 0x00000001, D_80241B90_AB7E20, 0x00000024, 0x00000002, 0xFD050F8E, 0x00000000, 0x00000044, 0x00000001, D_80240CDC_AB6F6C, 0x00000044, 0x00000001, D_80240F20_AB71B0, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000050, 0x00000010, 0x00001000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24A4680, 0xF24AC280, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000056, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000180, 0x00000043, 0x00000005, MakeLerp, 0x00000032, 0x0000000A, 0x0000000A, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000024, 0x00000002, 0xFD050F8D, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x0000000A, 0x00000073, 0x00000050, 0x0000000A, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000024, 0x00000002, 0xFD050F8D, 0xFE363C80, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000058, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000004, func_802D2884, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000005, LoadPath, 0x00000078, D_80241C90_AB7F20, 0x00000009, 0x00000000, 0x00000003, 0x00000001, 0x0000005A, 0x00000043, 0x00000001, GetNextPathPos, 0x00000024, 0x00000002, 0xFD050F8A, 0xFE363C81, 0x00000024, 0x00000002, 0xFD050F8B, 0xFE363C82, 0x00000024, 0x00000002, 0xFD050F8C, 0xFE363C83, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000001, 0x00000004, 0x00000001, 0x0000005A, 0x00000013, 0x00000000, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000043, 0x00000003, GotoMap, 0x80242FF0, 0x00000004, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_03/AB8350.data.s b/ver/us/asm/data/world/area_osr/osr_03/AB8350.data.s deleted file mode 100644 index 0a6110c04b..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_03/AB8350.data.s +++ /dev/null @@ -1,15 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802420C0_AB8350 -.word 0xC42F0000, 0xC3B90000, 0x44C80000, 0xC43B8000, 0xC3E10000, 0x44C1C000, 0xC42F0000, 0xC4048000, 0x44C1C000, 0xC41D8000, 0xC4098000, 0x44C1C000 - -dlabel D_802420F0_AB8380 -.word 0xC41D8000, 0xC4098000, 0x44C1C000, 0xC3D70000, 0xC4020000, 0x44BEA000, 0xC3AF0000, 0xC3D70000, 0x44BB8000, 0xC2C80000, 0xC2C80000, 0x447A0000, 0x00000000, 0x00000000, 0x43FA0000, 0x00000000, 0x00000000, 0x00000000 - -dlabel D_80242138_AB83C8 -.word 0x00000058, 0x00000000, 0x00000024, 0x00000002, 0xFE363C80, 0x0000006E, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000003, PlaySoundWithVolume, 0x00000295, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0xFFFFFFFE, 0x0000000C, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C80, 0x0000000A, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000004, 0x00000006, 0x00000000, 0x00000059, 0x00000000, 0x00000043, 0x00000005, GetNpcPos, 0x00000000, 0xFE363C86, 0xFE363C87, 0xFE363C88, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, func_802400C4_AB6354, 0x00000043, 0x00000005, GetNpcPos, 0x00000000, 0xFE363C89, 0xFE363C8A, 0xFE363C8B, 0x00000024, 0x00000002, 0xFE363C83, 0xFE363C89, 0x00000024, 0x00000002, 0xFE363C84, 0xFE363C8A, 0x00000024, 0x00000002, 0xFE363C85, 0xFE363C8B, 0x00000028, 0x00000002, 0xFE363C83, 0xFE363C86, 0x00000028, 0x00000002, 0xFE363C84, 0xFE363C87, 0x00000028, 0x00000002, 0xFE363C85, 0xFE363C88, 0x00000024, 0x00000002, 0xFE363C86, 0xFE363C89, 0x00000024, 0x00000002, 0xFE363C87, 0xFE363C8A, 0x00000024, 0x00000002, 0xFE363C88, 0xFE363C8B, 0x0000000A, 0x00000002, 0xFE363C83, 0x00000000, 0x0000000A, 0x00000002, 0xFE363C85, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x0000001F, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0xF24A7E80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000013, 0x00000000, 0x00000012, 0x00000000, 0x00000043, 0x0000000F, PlayEffect, 0x0000001F, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0xFE363C85, 0xF24A7E80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000003, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242390_AB8620 -.word 0x00000008, 0x00000001, 0x0000001E, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000003, NpcFacePlayer, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000045, 0x00000002, D_80242138_AB83C8, 0xFE363C89, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000000, 0x0060001A, 0x00000043, 0x00000005, LoadPath, 0x0000001E, D_802420C0_AB8350, 0x00000004, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, GetNextPathPos, 0x00000043, 0x00000005, SetNpcPos, 0x00000000, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, LoadPath, 0x00000096, D_802420F0_AB8380, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, GetNextPathPos, 0x00000043, 0x00000005, SetNpcPos, 0x00000000, 0xFE363C81, 0xFE363C82, 0xFE363C83, 0x0000000A, 0x00000002, 0xFE363C80, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000049, 0x00000001, 0xFE363C89, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000045, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000004D, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000005E, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000063, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000066, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x0000006C, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000073, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000081, 0x00000000, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000050, 0x00000010, 0x00001000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24A4680, 0xF24AC280, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000024, 0x00000002, 0xFD050F8E, 0x00000000, 0x00000044, 0x00000001, D_80240CDC_AB6F6C, 0x00000044, 0x00000001, D_80240F20_AB71B0, 0x00000008, 0x00000001, 0x0000001E, 0x0000000C, 0x00000002, 0xF5DE0180, 0xFFFFFF94, 0x00000046, 0x00000001, D_80242390_AB8620, 0x00000013, 0x00000000, 0x00000008, 0x00000001, 0x00000050, 0x00000043, 0x00000001, func_80240090_AB6320, 0x00000024, 0x00000002, 0xF5DE01CE, 0xFE363C80, 0x00000014, 0x00000001, 0xF5DE0180, 0x00000018, 0x00000001, 0xFFFFFF94, 0x00000043, 0x00000003, GotoMap, 0x80243008, 0x00000002, 0x00000018, 0x00000001, 0xFFFFFF97, 0x00000043, 0x00000003, GotoMap, 0x80243000, 0x00000003, 0x00000018, 0x00000001, 0xFFFFFFB4, 0x00000043, 0x00000003, GotoMap, 0x80243000, 0x00000004, 0x00000018, 0x00000001, 0xFFFFFFCA, 0x00000043, 0x00000003, GotoMap, 0x80243000, 0x00000005, 0x00000018, 0x00000001, 0xFFFFFFF2, 0x00000043, 0x00000003, GotoMap, 0x80243000, 0x00000006, 0x00000018, 0x00000001, 0x00000006, 0x00000043, 0x00000003, GotoMap, 0x80243000, 0x00000007, 0x00000018, 0x00000001, 0x00000026, 0x00000043, 0x00000003, GotoMap, 0x80243000, 0x00000008, 0x00000018, 0x00000001, 0x0000003A, 0x00000043, 0x00000003, GotoMap, 0x80243000, 0x00000009, 0x00000018, 0x00000001, 0x00000058, 0x00000043, 0x00000003, GotoMap, 0x80242FF8, 0x00000001, 0x00000023, 0x00000000, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_03/AB8B10.data.s b/ver/us/asm/data/world/area_osr/osr_03/AB8B10.data.s deleted file mode 100644 index e7870a261d..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_03/AB8B10.data.s +++ /dev/null @@ -1,12 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80242880_AB8B10 -.word 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x000000D2, 0xF24A8280, 0x00000043, 0x00000005, MakeLerp, 0x000000C8, 0x00000032, 0x00000041, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x0000002F, 0x00000002, 0xFE363C80, 0x00000064, 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x00000004, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80242934_AB8BC4 -.word 0xFFFFFDF8, 0xFFFFFEE8, 0x0000010E, 0x000000E6, 0xFFFFFF6A, 0x0000012C, 0xFFFFFE0C, 0xFFFFFF38, 0x000000BE, 0xFFFFFE5C, 0xFFFFFF1A, 0xFFFFFF56, 0xFFFFFE70, 0xFFFFFE70, 0x000001C2, 0x00000000, 0xFFFFFD30, 0x0000026C, 0xFFFFFEF2, 0xFFFFFD44, 0x000001D6, 0x00000140, 0xFFFFFE34, 0x00000212 - -dlabel D_80242994_AB8C24 -.word 0x00000024, 0x00000002, 0xFE363C84, 0x00000014, 0x00000024, 0x00000002, 0xFE363C85, 0x0000006E, 0x00000005, 0x00000001, 0x00000000, 0x00000030, 0x00000001, D_80242934_AB8BC4, 0x00000005, 0x00000001, 0x00000008, 0x00000043, 0x00000003, PlaySoundWithVolume, 0xB000001C, 0xFE363C85, 0x00000033, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x0000000F, PlayEffect, 0x00000024, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0xF24A9280, 0x0000001E, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0xFE363C84, 0x00000006, 0x00000000, 0x00000027, 0x00000002, 0xFE363C85, 0xFFFFFFF6, 0x0000000C, 0x00000002, 0xFE363C85, 0x0000000A, 0x00000024, 0x00000002, 0xFE363C85, 0x0000000A, 0x00000013, 0x00000000, 0x00000027, 0x00000002, 0xFE363C84, 0xFFFFFFFC, 0x0000000C, 0x00000002, 0xFE363C84, 0x00000005, 0x00000024, 0x00000002, 0xFE363C84, 0x00000005, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePartnerAI, 0x00000000, 0x00000043, 0x00000004, SetNpcFlagBits, 0xFFFFFFFC, 0x00000200, 0x00000000, 0x00000043, 0x00000002, SetPlayerActionState, 0x0000000A, 0x00000043, 0x00000004, SetPlayerPos, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000024, 0x00000002, 0xFD050F8E, 0x00000000, 0x00000044, 0x00000001, D_80240CDC_AB6F6C, 0x00000044, 0x00000001, D_80240F20_AB71B0, 0x00000044, 0x00000001, D_80242880_AB8B10, 0x00000045, 0x00000002, D_80242994_AB8C24, 0xFE363C89, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0x00000016, 0x00000010, 0x00001000, 0x00000043, 0x00000005, UseSettingsFrom, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetCamType, 0x00000000, 0x00000001, 0x00000001, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0xFFFFFFC4, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24A2A80, 0xF24A6A80, 0x00000043, 0x00000004, SetCamPosA, 0x00000000, 0x00000000, 0xFFFFFFD8, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24BE280, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000005, SetPanTarget, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetCamPitch, 0x00000000, 0xF24A4680, 0xF24AB680, 0x00000043, 0x00000003, SetCamSpeed, 0x00000000, 0xF24A7BB4, 0x00000043, 0x00000004, PanToTarget, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000003, WaitForCam, 0x00000000, 0xF24A7E80, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x00000006, 0x00000043, 0x00000003, RandInt, 0x00000014, 0xFE363C80, 0x00000027, 0x00000002, 0xFE363C80, 0x0000001E, 0x00000008, 0x00000001, 0xFE363C80, 0x00000043, 0x00000001, func_802401A0_AB6430, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x000000DC, 0x00000258, 0x0000005A, 0x00000001, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C80, 0x0000002F, 0x00000002, 0xFE363C82, 0x0000000A, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0xFE363C82, 0x00000010, 0x00001000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000258, 0x000004B0, 0x000000FA, 0x00000005, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000026, 0x00000002, 0xFE363C82, 0xFE363C80, 0x0000002F, 0x00000002, 0xFE363C82, 0x0000000A, 0x00000043, 0x00000006, SetCamPerspective, 0x00000000, 0x00000003, 0xFE363C82, 0x00000001, 0x00001000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000049, 0x00000001, 0xFE363C89, 0x00000008, 0x00000001, 0x00000032, 0x00000043, 0x00000002, PlaySound, 0x000000A4, 0x00000043, 0x0000000F, PlayEffect, 0x00000035, 0x00000002, 0x00000000, 0xFFFFFE52, 0x00000780, 0x0000000F, 0xFE363C89, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000056, 0x00000000, 0x00000043, 0x00000003, func_80240290_AB6520, 0x0000001E, 0xF24A8280, 0x00000043, 0x00000005, MakeLerp, 0x000000C8, 0x00000064, 0x0000000F, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x0000002F, 0x00000002, 0xFE363C80, 0x00000064, 0x00000043, 0x00000003, func_80240290_AB6520, 0x00000004, 0xFE363C80, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000004, GotoMapSpecial, 0x80243010, 0x00000001, 0x00000007, 0x00000008, 0x00000001, 0x00000064, 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_04/AB9370.data.s b/ver/us/asm/data/world/area_osr/osr_04/AB9370.data.s deleted file mode 100644 index 259e9cf576..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_04/AB9370.data.s +++ /dev/null @@ -1,15 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_802400C0_AB9370 -.word 0x00000000, 0x00000000, 0x44170000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, D_8024025C_AB950C, D_802400C0_AB9370, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, func_80200000, 0x00000000 - -dlabel D_80240110_AB93C0 -.word 0x0000004D, 0x00000001, 0x00000000, 0x00000043, 0x00000003, SetTexPanner, 0x0000006D, 0x00000000, 0x00000043, 0x00000003, SetTexPanner, 0x0000006F, 0x00000001, 0x00000043, 0x00000003, SetTexPanner, 0x00000071, 0x00000002, 0x00000024, 0x00000002, 0xFE363C80, 0x00000000, 0x00000024, 0x00000002, 0xFE363C81, 0x00000000, 0x00000003, 0x00000001, 0x0000000A, 0x00000005, 0x00000001, 0x00000005, 0x00000043, 0x00000005, SetTexPanOffset, 0x00000000, 0x00000000, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, SetTexPanOffset, 0x00000001, 0x00000000, 0xFE363C80, 0xFE363C81, 0x00000043, 0x00000005, SetTexPanOffset, 0x00000002, 0x00000000, 0xFE363C80, 0xFE363C81, 0x00000027, 0x00000002, 0xFE363C81, 0x00000064, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000027, 0x00000002, 0xFE363C80, 0x00002000, 0x00000004, 0x00000001, 0x0000000A, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240234_AB94E4 -.word 0x00000044, 0x00000001, 0x802417A0, 0x00000044, 0x00000001, D_80240110_AB93C0, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_8024025C_AB950C -.word 0x00000024, 0x00000002, 0xF5DE0329, 0x00000018, 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, FadeOutMusic, 0x00000000, 0x000001F4, 0x00000044, 0x00000001, D_80240234_AB94E4, 0x00000008, 0x00000001, 0x00000001, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000 diff --git a/ver/us/asm/data/world/area_osr/osr_04/AB95D0.data.s b/ver/us/asm/data/world/area_osr/osr_04/AB95D0.data.s deleted file mode 100644 index 396d0b35fa..0000000000 --- a/ver/us/asm/data/world/area_osr/osr_04/AB95D0.data.s +++ /dev/null @@ -1,45 +0,0 @@ -.include "macro.inc" - -.section .data - -dlabel D_80240320_AB95D0 -.word 0xFFFFFE48, 0x0000044C, 0x0000001E, 0xFFFFFF42, 0x00000406, 0x00000028, 0xFFFFFF97, 0x0000044C, 0x0000001E, 0xFFFFFEA2, 0x00000258, 0x00000037, 0xFFFFFF1A, 0x000004B0, 0x00000023, 0xFFFFFE0C, 0x0000041A, 0x0000001E, 0xFFFFFE66, 0x00000384, 0x00000023, 0x0000004F, 0x00000302, 0x00000037, 0xFFFFFFFF - -dlabel D_80240384_AB9634 -.word 0x00000030, 0x00000001, D_80240320_AB95D0, 0x00000005, 0x00000001, 0x00000000, 0x00000033, 0x00000003, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x000001F4, 0x00000000, 0xFE363C84, 0x00000001, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000075, 0xFE363C82, 0xFE363C80, 0xFE363C83, 0x00000043, 0x00000006, RotateGroup, 0x00000075, 0xFE363C84, 0x00000001, 0x00000001, 0x00000001, 0x00000028, 0x00000002, 0xFE363C84, 0x0000000F, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802404A8_AB9758 -.word 0xFFFFFEAC, 0x000003C0, 0x00000032, 0xFFFFFE66, 0x00000384, 0x00000037, 0xFFFFFF1A, 0x000004B0, 0x0000002D, 0xFFFFFE0C, 0x000003AC, 0x00000028, 0xFFFFFF1A, 0x000003F2, 0x00000032, 0xFFFFFE0C, 0x000003AC, 0x00000028, 0xFFFFFEA2, 0x00000258, 0x00000037, 0xFFFFFFFF - -dlabel D_80240500_AB97B0 -.word 0x00000030, 0x00000001, D_802404A8_AB9758, 0x00000005, 0x00000001, 0x00000000, 0x00000033, 0x00000003, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x000001F4, 0x00000000, 0xFE363C84, 0x00000001, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000077, 0xFE363C82, 0xFE363C80, 0xFE363C83, 0x00000043, 0x00000006, RotateGroup, 0x00000077, 0xFE363C84, 0x00000001, 0x00000001, 0x00000001, 0x00000027, 0x00000002, 0xFE363C84, 0x0000000F, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240624_AB98D4 -.word 0x00000043, 0x00000005, MakeLerp, 0x000001F4, 0x00000000, 0x00000050, 0x00000001, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x0000007A, 0xFFFFFEAC, 0xFE363C80, 0x0000033E, 0x00000043, 0x00000006, RotateGroup, 0x0000007A, 0xFE363C84, 0x00000001, 0x00000001, 0x00000001, 0x00000028, 0x00000002, 0xFE363C84, 0x0000001E, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802406E8_AB9998 -.word 0xFFFFFEA2, 0x00000258, 0x0000003C, 0xFFFFFF1A, 0x000004B0, 0x00000028, 0xFFFFFEAC, 0x000003C0, 0x00000028, 0xFFFFFFFF - -dlabel D_80240710_AB99C0 -.word 0x00000030, 0x00000001, D_802406E8_AB9998, 0x00000005, 0x00000001, 0x00000000, 0x00000033, 0x00000003, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x000001F4, 0x00000000, 0xFE363C84, 0x00000001, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x0000007C, 0xFE363C82, 0xFE363C80, 0xFE363C83, 0x00000043, 0x00000006, RotateGroup, 0x0000007C, 0xFE363C84, 0x00000001, 0x00000001, 0x00000001, 0x00000027, 0x00000002, 0xFE363C84, 0x0000000F, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240834_AB9AE4 -.word 0x00000043, 0x00000005, MakeLerp, 0x000001F4, 0x00000000, 0x00000050, 0x00000001, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x0000007E, 0xFFFFFF42, 0xFE363C80, 0x00000406, 0x00000043, 0x00000006, RotateGroup, 0x0000007E, 0xFE363C84, 0x00000001, 0x00000001, 0x00000001, 0x00000028, 0x00000002, 0xFE363C84, 0x0000000F, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802408F8_AB9BA8 -.word 0xFFFFFE0C, 0x000003AC, 0x00000014, 0x00000050, 0x00000302, 0x0000003C, 0xFFFFFEAC, 0x000003C0, 0x0000000F, 0xFFFFFEAC, 0x000003C0, 0x0000002D, 0xFFFFFE0C, 0x0000041A, 0x0000000F, 0xFFFFFF1A, 0x000004B0, 0x00000023, 0xFFFFFEA2, 0x00000258, 0x00000028, 0xFFFFFFFF - -dlabel D_80240950_AB9C00 -.word 0x00000030, 0x00000001, D_802408F8_AB9BA8, 0x00000005, 0x00000001, 0x00000000, 0x00000033, 0x00000003, 0xFE363C82, 0xFE363C83, 0xFE363C84, 0x0000000A, 0x00000002, 0xFE363C82, 0xFFFFFFFF, 0x00000002, 0x00000000, 0x00000013, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x000001F4, 0x00000000, 0xFE363C84, 0x00000001, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000080, 0xFE363C82, 0xFE363C80, 0xFE363C83, 0x00000043, 0x00000006, RotateGroup, 0x00000080, 0xFE363C84, 0x00000001, 0x00000001, 0x00000001, 0x00000027, 0x00000002, 0xFE363C84, 0x0000000F, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240A74_AB9D24 -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x0000005A, 0xFFFFFFA6, 0x0000001E, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000019, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000043, 0x00000002, func_80240050_AB9300, 0xFE363C80, 0x00000043, 0x00000006, RotateGroup, 0x00000019, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000002, 0x00000043, 0x00000005, TranslateGroup, 0x00000019, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000019, 0xFFFFFFEC, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFFA6, 0x0000005A, 0x0000001E, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000019, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000043, 0x00000002, func_80240050_AB9300, 0xFE363C80, 0x00000043, 0x00000006, RotateGroup, 0x00000019, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000002, 0x00000043, 0x00000005, TranslateGroup, 0x00000019, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000043, 0x00000006, RotateGroup, 0x00000019, 0x00000014, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240CB8_AB9F68 -.word 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x0000002D, 0xFFFFFFD3, 0x0000003C, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateGroup, 0x0000000C, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFFD3, 0x0000002D, 0x0000003C, 0x00000004, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateGroup, 0x0000000C, 0xFE363C80, 0x00000000, 0x00000001, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000006, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_80240DEC_ABA09C -.word 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000078, 0x00000043, 0x00000005, SetMusicTrack, 0x00000000, 0x0000006B, 0x00000000, 0x00000008, 0x00000057, 0x00000000, 0x00000024, 0x00000002, 0xFD050F8E, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x000009C4, 0x000001C2, 0x00000001, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000024, 0x00000002, 0xFD050F8E, 0xFE363C80, 0x00000043, 0x00000005, TranslateGroup, 0x00000008, 0x00000000, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x0000001D, 0x00000000, 0xFE363C80, 0x00000000, 0x00000043, 0x00000005, TranslateGroup, 0x00000045, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000044, 0x00000001, D_80240A74_AB9D24, 0x00000044, 0x00000001, D_80240CB8_AB9F68, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x0000000A, 0xFFFFFFF6, 0x00000028, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000027, 0x00000002, 0xFD050F8E, 0xFE363C80, 0x00000043, 0x00000005, TranslateGroup, 0x0000000C, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0xFFFFFFF6, 0x0000000A, 0x00000028, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000027, 0x00000002, 0xFD050F8E, 0xFE363C80, 0x00000043, 0x00000005, TranslateGroup, 0x0000000C, 0x00000000, 0xFD050F8E, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000003, 0x00000001, 0x00000016, 0x0000000C, 0x00000002, 0xFD050F8E, 0x000003E8, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000016, 0x00000013, 0x00000000, 0x00000056, 0x00000000, 0x00000005, 0x00000001, 0x0000012C, 0x00000028, 0x00000002, 0xFD050F81, 0x00000003, 0x00000008, 0x00000001, 0x00000001, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000003, 0x00000001, 0x00000017, 0x0000000C, 0x00000002, 0xFD050F8E, 0x0000047E, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000017, 0x00000013, 0x00000000, 0x00000024, 0x00000002, 0xFE363C83, 0x00000000, 0x00000044, 0x00000001, D_80240384_AB9634, 0x00000044, 0x00000001, D_80240500_AB97B0, 0x00000044, 0x00000001, D_80240950_AB9C00, 0x00000008, 0x00000001, 0x0000000A, 0x00000044, 0x00000001, D_80240624_AB98D4, 0x00000044, 0x00000001, D_80240710_AB99C0, 0x00000044, 0x00000001, D_80240834_AB9AE4, 0x00000008, 0x00000001, 0x00000096, 0x00000002, 0x00000000, 0x00000001, 0x00000000 - -dlabel D_802411B8_ABA468 -.word 0x00000024, 0x00000002, 0xFD050F81, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000036, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x0000028A, 0x00000028, 0x00000005, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000027, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000005, TranslateGroup, 0x0000006E, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000258, 0x0000028A, 0x00000019, 0x00000005, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000027, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000005, TranslateGroup, 0x0000006E, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x0000028A, 0x00000258, 0x00000023, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000027, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000005, TranslateGroup, 0x0000006E, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000014, 0x00000043, 0x00000002, PlaySound, 0x00000037, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000190, 0x0000001E, 0x00000005, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000070, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x0000015E, 0x00000190, 0x0000000C, 0x00000005, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000027, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000005, TranslateGroup, 0x00000070, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000190, 0x0000015E, 0x00000011, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000027, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000005, TranslateGroup, 0x00000070, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x00000028, 0x00000043, 0x00000002, PlaySound, 0x00000038, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x000000C8, 0x00000014, 0x00000005, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000072, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000096, 0x000000C8, 0x00000019, 0x00000005, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000027, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000005, TranslateGroup, 0x00000072, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x000000C8, 0x00000096, 0x00000023, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000027, 0x00000002, 0xFE363C80, 0xFD050F81, 0x00000043, 0x00000005, TranslateGroup, 0x00000072, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000001, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000001, 0x00000043, 0x00000003, EnableGroup, 0x0000002F, 0x00000000, 0x00000043, 0x00000004, SetPlayerPos, 0x00000000, 0x00000000, 0x000007D0, 0x00000056, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x80000057, 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x000001C2, 0xF24A8280, 0x00000043, 0x00000005, ShakeCam, 0x00000000, 0x00000000, 0x00000064, 0xF24A7E80, 0x00000057, 0x00000000, 0x00000008, 0x00000001, 0x00000032, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000001E, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x0000002D, 0x0000001E, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateGroup, 0x00000066, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000064, 0x0000001E, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateGroup, 0x00000066, 0x0000002D, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, RotateGroup, 0x00000066, 0xFE363C80, 0x00000001, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000066, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000002D, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x0000001E, 0x0000001E, 0x00000001, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateGroup, 0x00000069, 0xFE363C80, 0x00000000, 0x00000000, 0x00000001, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000064, 0x00000064, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000006, RotateGroup, 0x00000069, 0x0000001E, 0x00000000, 0x00000000, 0x00000001, 0x00000043, 0x00000006, RotateGroup, 0x00000069, 0xFE363C80, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000043, 0x00000003, EnableGroup, 0x00000069, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000004B, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000064, 0x00000064, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x0000006B, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000002, PlaySound, 0x00000035, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x0000001E, 0x00000032, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000050, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000A, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000028, 0x00000028, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000052, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x00000014, 0x00000032, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000056, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000008, 0x00000001, 0x0000000F, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0x0000000A, 0x00000023, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x00000059, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000056, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFFFFFFEC, 0x00000032, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x0000005B, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000057, 0x00000000, 0x00000043, 0x00000005, MakeLerp, 0x00000000, 0xFFFFFFF6, 0x00000032, 0x00000000, 0x00000005, 0x00000001, 0x00000000, 0x00000043, 0x00000001, UpdateLerp, 0x00000043, 0x00000005, TranslateGroup, 0x0000005D, 0x00000000, 0xFE363C80, 0x00000000, 0x00000008, 0x00000001, 0x00000001, 0x0000000A, 0x00000002, 0xFE363C81, 0x00000000, 0x00000007, 0x00000000, 0x00000013, 0x00000000, 0x00000006, 0x00000000, 0x00000044, 0x00000001, D_802411B8_ABA468, 0x00000046, 0x00000001, D_80240DEC_ABA09C, 0x00000043, 0x00000003, GotoMap, 0x80241FCC, 0x00000001, 0x00000008, 0x00000001, 0x00000064, 0x00000043, 0x00000002, DisablePlayerPhysics, 0x00000000, 0x00000043, 0x00000002, DisablePlayerInput, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000 diff --git a/ver/us/asm/nonmatchings/world/area_osr/osr_01/AB0350/func_802406A4_AB0694.s b/ver/us/asm/nonmatchings/world/area_osr/osr_01/AB0350/func_802406A4_AB0694.s deleted file mode 100644 index 6ee2f49250..0000000000 --- a/ver/us/asm/nonmatchings/world/area_osr/osr_01/AB0350/func_802406A4_AB0694.s +++ /dev/null @@ -1,28 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802406A4_AB0694 -/* AB0694 802406A4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* AB0698 802406A8 AFBF0010 */ sw $ra, 0x10($sp) -/* AB069C 802406AC 10A00003 */ beqz $a1, .L802406BC -/* AB06A0 802406B0 8C86000C */ lw $a2, 0xc($a0) -/* AB06A4 802406B4 3C018024 */ lui $at, %hi(osr_01_ItemChoice_HasSelectedItem) -/* AB06A8 802406B8 AC20121C */ sw $zero, %lo(osr_01_ItemChoice_HasSelectedItem)($at) -.L802406BC: -/* AB06AC 802406BC 3C038024 */ lui $v1, %hi(osr_01_ItemChoice_HasSelectedItem) -/* AB06B0 802406C0 2463121C */ addiu $v1, $v1, %lo(osr_01_ItemChoice_HasSelectedItem) -/* AB06B4 802406C4 8C620000 */ lw $v0, ($v1) -/* AB06B8 802406C8 54400003 */ bnel $v0, $zero, .L802406D8 -/* AB06BC 802406CC AC600000 */ sw $zero, ($v1) -/* AB06C0 802406D0 080901BB */ j .L802406EC -/* AB06C4 802406D4 0000102D */ daddu $v0, $zero, $zero -.L802406D8: -/* AB06C8 802406D8 8CC50000 */ lw $a1, ($a2) -/* AB06CC 802406DC 3C068024 */ lui $a2, %hi(osr_01_ItemChoice_SelectedItemID) -/* AB06D0 802406E0 0C0B2026 */ jal evt_set_variable -/* AB06D4 802406E4 8CC61220 */ lw $a2, %lo(osr_01_ItemChoice_SelectedItemID)($a2) -/* AB06D8 802406E8 24020002 */ addiu $v0, $zero, 2 -.L802406EC: -/* AB06DC 802406EC 8FBF0010 */ lw $ra, 0x10($sp) -/* AB06E0 802406F0 03E00008 */ jr $ra -/* AB06E4 802406F4 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/splat.yaml b/ver/us/splat.yaml index b677efee93..4c1c4089d9 100644 --- a/ver/us/splat.yaml +++ b/ver/us/splat.yaml @@ -11623,63 +11623,60 @@ segments: start: 0xAAC830 vram: 0x80240000 subsegments: - - [0xAAC830, c] - - [0xAACBB0, c] - - [0xAACFC0, data] - - [0xAAD790, data] - - [0xAAFFD0] + - [0xAAC830, c, osr_00_0_header] + - [0xAAC830, c, osr_00_1_music] + - [0xAAC830, c, osr_00_2_main] + - [0xAACBB0, c, osr_00_3_npc_intro] + - [0xAACBB0, c, osr_00_4_npc_epilogue] + - [0xAACBB0, c, osr_00_5_scenes] + - [0xAACFC0] - name: osr_01 dir: world/area_osr/osr_01 type: code start: 0xAAFFF0 vram: 0x80240000 subsegments: - - [0xAAFFF0, c] - - [0xAB0040, c] - - [0xAB0350, c] - - [0xAB0AB0, data] - - [0xAB0C10, data] - - [0xAB1150, data] - - [0xAB2150] + - [0xAAFFF0, c, osr_01_0_header] + - [0xAB0040, c, osr_01_1_music] + - [0xAB0040, c, osr_01_2_main] + - [0xAB0350, c, osr_01_3_npc] + - [0xAB0AB0] - name: osr_02 dir: world/area_osr/osr_02 type: code start: 0xAB2170 vram: 0x80240000 subsegments: - - [0xAB2170, c] - - [0xAB2190, c] - - [0xAB21D0, c] - - [0xAB2290, c] - - [0xAB22C0, data] - - [0xAB2B00, data] - - [0xAB2BB0, data] - - [0xAB5D40, data] - - [0xAB6270] + - [0xAB2170, c, osr_02_0_header] + - [0xAB2190, c, osr_02_1_main] + - [0xAB21D0, c, osr_02_2_entity] + - [0xAB21D0, c, osr_02_3_npc] + - [0xAB2290, c, osr_02_4_npc_peach] + - [0xAB22C0] - name: osr_03 dir: world/area_osr/osr_03 type: code start: 0xAB6290 vram: 0x80240000 subsegments: - - [0xAB6290, c] - - [0xAB62B0, c] - - [0xAB6610, data] - - [0xAB6DB0, data] - - [0xAB7E20, data] - - [0xAB8350, data] - - [0xAB8B10, data] - - [0xAB9270] + - [0xAB6290, c, osr_03_0_header] + - [0xAB62B0, c, osr_03_1_main] + - [0xAB62B0, c, osr_03_2_npc] + - [0xAB62B0, c, osr_03_3_intro] + - [0xAB6320, c, osr_03_4_starship] + - [0xAB6320, c, osr_03_5_interlude] + - [0xAB6430, c, osr_03_6_ending] + - [0xAB6610] - name: osr_04 dir: world/area_osr/osr_04 type: code start: 0xAB92B0 vram: 0x80240000 subsegments: - - [0xAB92B0, c] - - [0xAB9370, data] - - [0xAB95D0, data] - - [0xABB260] + - [0xAB92B0, c, osr_04_0_header] + - [0xAB9300, c, osr_04_1_main] + - [0xAB9300, c, osr_04_2_assault] + - [0xAB9370] - name: kkj_00 dir: world/area_kkj/kkj_00 type: code diff --git a/ver/us/symbol_addrs.txt b/ver/us/symbol_addrs.txt index e693dc3b08..822100affa 100644 --- a/ver/us/symbol_addrs.txt +++ b/ver/us/symbol_addrs.txt @@ -18379,7 +18379,7 @@ D_80244C48_A3E128 = 0x80244C48; // type:data rom:0xA3E128 D_80244C4C_A3E12C = 0x80244C4C; // type:data rom:0xA3E12C hos_06_varStash = 0x80245E80; // type:data rom:0xA3F360 D_80245EEC_A3F3CC = 0x80245EEC; // type:data rom:0xA3F3CC -hos_10_SetPlayerSpriteSet2 = 0x80240000; // type:func rom:0xA3F740 +hos_10_SetPlayerSpriteSet2_MapInit = 0x80240000; // type:func rom:0xA3F740 hos_10_UpdateTexturePanSmooth = 0x80240020; // type:func rom:0xA3F760 hos_10_UpdateTexturePanStepped = 0x80240144; // type:func rom:0xA3F884 func_8024032C_A3FA6C = 0x8024032C; // type:func rom:0xA3FA6C @@ -18920,12 +18920,12 @@ osr_01_varStash = 0x802411B8; // type:data rom:0xAB11A8 osr_01_ItemChoice_HasSelectedItem = 0x8024121C; // type:data rom:0xAB120C osr_01_ItemChoice_SelectedItemID = 0x80241220; // type:data rom:0xAB1210 D_80242160_AB2150 = 0x80242160; // type:data rom:0xAB2150 -osr_02_SetPlayerSpriteSet2 = 0x80240000; // type:func rom:0xAB2170 +osr_02_SetPlayerSpriteSet2_MapInit = 0x80240000; // type:func rom:0xAB2170 func_80240020_AB2190 = 0x80240020; // type:func rom:0xAB2190 func_80240060_AB21D0 = 0x80240060; // type:func rom:0xAB21D0 osr_02_GetPeachDisguise = 0x80240120; // type:func rom:0xAB2290 D_8024253C_AB46AC = 0x8024253C; // type:data rom:0xAB46AC -osr_03_SetPlayerSpriteSet2 = 0x80240000; // type:func rom:0xAB6290 +osr_03_SetPlayerSpriteSet2_MapInit = 0x80240000; // type:func rom:0xAB6290 func_80240020_AB62B0 = 0x80240020; // type:func rom:0xAB62B0 func_80240090_AB6320 = 0x80240090; // type:func rom:0xAB6320 func_802400C4_AB6354 = 0x802400C4; // type:func rom:0xAB6354 @@ -18968,7 +18968,7 @@ kkj_01_PatrolNoAttackAI_15 = 0x80240AD4; // type:func rom:0xAC5C44 kkj_01_PatrolNoAttackAI_Main = 0x80240B94; // type:func rom:0xAC5D04 D_80243A10_AC8B80 = 0x80243A10; // type:data rom:0xAC8B80 D_80243A18_AC8B88 = 0x80243A18; // type:data rom:0xAC8B88 -kkj_03_SetPlayerSpriteSet2 = 0x80240000; // type:func rom:0xAC9710 +kkj_03_SetPlayerSpriteSet2_MapInit = 0x80240000; // type:func rom:0xAC9710 kkj_03_UpdateTexturePanSmooth = 0x80240020; // type:func rom:0xAC9730 kkj_03_UpdateTexturePanStepped = 0x80240144; // type:func rom:0xAC9854 func_80240000_ACAB20 = 0x80240000; // type:func rom:0xACAB20 @@ -19026,7 +19026,7 @@ func_8024089C_AD492C = 0x8024089C; // type:func rom:0xAD492C D_80241E20_AD5EB0 = 0x80241E20; // type:data rom:0xAD5EB0 D_80241E28_AD5EB8 = 0x80241E28; // type:data rom:0xAD5EB8 D_80241E30_AD5EC0 = 0x80241E30; // type:data rom:0xAD5EC0 -kkj_13_SetPlayerSpriteSet2 = 0x80240000; // type:func rom:0xAD5ED0 +kkj_13_SetPlayerSpriteSet2_MapInit = 0x80240000; // type:func rom:0xAD5ED0 kkj_13_UpdateTexturePanSmooth = 0x80240020; // type:func rom:0xAD5EF0 kkj_13_UpdateTexturePanStepped = 0x80240144; // type:func rom:0xAD6014 func_80240330_AD6200 = 0x80240330; // type:func rom:0xAD6200 @@ -19147,7 +19147,7 @@ kkj_20_ToadHouse_GetPartnerBackOut = 0x80240584; // type:func rom:0xAFE0C4 kkj_20_ToadHouse_Stub = 0x802405B4; // type:func rom:0xAFE0F4 kkj_20_GetPeachDisguise = 0x802405BC; // type:func rom:0xAFE0FC kkj_20_varStash = 0x80240880; // type:data rom:0xAFE3C0 -kkj_23_SetPlayerSpriteSet2 = 0x80240000; // type:func rom:0xB02880 +kkj_23_SetPlayerSpriteSet2_MapInit = 0x80240000; // type:func rom:0xB02880 func_80240020_B028A0 = 0x80240020; // type:func rom:0xB028A0 func_80240048_B028C8 = 0x80240048; // type:func rom:0xB028C8 func_80240080_B02900 = 0x80240080; // type:func rom:0xB02900 @@ -19164,7 +19164,7 @@ D_80243CD0_B06550 = 0x80243CD0; // type:data rom:0xB06550 D_80243CD8_B06558 = 0x80243CD8; // type:data rom:0xB06558 D_80243CE0_B06560 = 0x80243CE0; // type:data rom:0xB06560 func_80240000_B06570 = 0x80240000; // type:func rom:0xB06570 -kkj_25_SetPlayerSpriteSet2 = 0x80240000; // type:func rom:0xB06A00 +kkj_25_SetPlayerSpriteSet2_MapInit = 0x80240000; // type:func rom:0xB06A00 func_80240020_B06A20 = 0x80240020; // type:func rom:0xB06A20 kkj_25_UnkFunc1 = 0x80240050; // type:func rom:0xB06A50 kkj_25_GetFloorCollider = 0x80240080; // type:func rom:0xB06A80