diff --git a/include/functions.h b/include/functions.h index a417e3f281..a4d535a3f2 100644 --- a/include/functions.h +++ b/include/functions.h @@ -35,6 +35,7 @@ s16 get_game_mode(void); s32 is_picking_up_item(void); f32 integrate_gravity(void); +void gravity_use_fall_parms(void); f32 get_clamped_angle_diff(f32, f32); s32 intro_logos_fade_out(s16 addAlpha); @@ -77,6 +78,7 @@ void func_80254C50(void); void func_80258E14(void); f32 func_800E34D8(void); +void func_800E4AD8(s32 arg0); f32 player_check_collision_below(f32, s32* colliderID); s32 can_trigger_loading_zone(void); void func_802667F0(s32, Actor*, f32, f32, f32); @@ -153,6 +155,7 @@ void phys_update_interact_collider(void); void phys_adjust_cam_on_landing(void); void phys_init_integrator_for_current_state(void); void phys_player_land(void); +void phys_main_collision_below(void); void create_popup_menu(PopupMenu*); s32 npc_test_move_simple_without_slipping(s32, f32*, f32*, f32*, f32, f32, f32, f32); @@ -334,6 +337,7 @@ s32 sfx_adjust_env_sound_pos(s32 soundID, s32 arg1, f32 arg2, f32 arg3, f32 arg4 void sfx_play_sound(s32 soundID); s32 sfx_play_sound_at_position(s32 soundID, s32 value2, f32 posX, f32 posY, f32 posZ); void sfx_play_sound_at_player(s32 soundID, s32 arg0); +void sfx_play_sound_at_npc(s32 soundID, s32 arg1, s32 npcID); s32 bgm_set_song(s32 playerIndex, s32 songID, s32 variation, s32 fadeOutTime, s16 volume); void func_801497FC(s32 arg0); s32 func_8014AA54(s32 playerIndex, s32 arg1, s16 arg2); diff --git a/src/entity/Chest.c b/src/entity/Chest.c index cabd941414..e29dd1bc1d 100644 --- a/src/entity/Chest.c +++ b/src/entity/Chest.c @@ -1,4 +1,7 @@ #include "common.h" +#include "effects.h" + +void entity_Chest_open(Entity* entity); // size unknown typedef struct Chest { @@ -19,6 +22,8 @@ typedef struct Chest { /* 0x28 */ f32 unk_28; /* 0x2C */ f32 unk_2C; /* 0x30 */ s8 unk_30; + /* 0x31 */ char unk_31[3]; + /* 0x34 */ s32 unk_34; } Chest; extern s32 D_802EAD7C; @@ -145,7 +150,99 @@ void entity_Chest_close(Entity* entity) { INCLUDE_ASM(s32, "entity/Chest", entity_GiantChest_hide_effect); -INCLUDE_ASM(s32, "entity/Chest", entity_GiantChest_open); +void entity_GiantChest_open(Entity* entity) { + PlayerStatus* playerStatus = &gPlayerStatus; + Chest* chest = (Chest*)entity->dataBuf; + f32 sp24; + f32 sp20; + f32 sp1C; + f32 sp18; + f32 theta; + f32 delta; + f32 zero; + f32 temp_f4; + f32 four; + f32 intermediateTheta; + f32 phi_f22; + + if (chest->unk_10 != 0) { + set_item_entity_position(chest->unk_14, chest->unk_18, chest->unk_1C, chest->unk_20); + } + entity_Chest_open(entity); + + switch (chest->unk_04) { + case 0: + chest->unk_02--; + if (chest->unk_02 == 0) { + chest->unk_24 = 0.0f; + chest->unk_04++; + chest->unk_28 = 20.0f; + chest->unk_2C = 8.0f; + } + break; + case 1: + chest->unk_1C += chest->unk_2C; + chest->unk_2C -= 0.7; + if (chest->unk_2C <= 2.0f) { + chest->unk_2C = 6.0f; + chest->unk_04++; + } + break; + case 2: + if (chest->unk_28 < 140.0f) { + chest->unk_1C += cos_rad(chest->unk_28 * TAU / 360.0f) * 3.0f; + } else { + temp_f4 = (chest->unk_1C - playerStatus->position.y - 30.0f) * 0.25f; + if (temp_f4 <= 0.4) { + temp_f4 = 0.4f; + } + chest->unk_1C -= temp_f4; + } + delta = sin_rad(chest->unk_24 * TAU / 360.0f); + theta = intermediateTheta = clamp_angle(atan2(entity->position.x, entity->position.z, + playerStatus->position.x, playerStatus->position.z)); + + if (gGameStatusPtr->areaID == 0x12) { + phi_f22 = 3.0f; + } else { + phi_f22 = 4.0f; + } + + theta *= TAU; + theta = theta / 360.0f; + chest->unk_18 += (phi_f22 * sin_rad(theta) * delta); + chest->unk_20 -= (phi_f22 * cos_rad(theta) * delta); + chest->unk_24 += 8.0f; + if (chest->unk_24 >= 180.0f) { + chest->unk_24 = 180.0f; + } + chest->unk_28 += 13.0f; + if (chest->unk_28 >= 180.0f){ + chest->unk_02 = 7; + chest->unk_28 = 180.0f; + chest->unk_04++; + if (chest->unk_10 != 0) { + suggest_player_anim_setUnkFlag(0x6000C); + sin_cos_rad((90.0f - gCameras->currentYaw) * TAU / 360.0f, &sp18, &sp1C); + sin_cos_rad((180.0f - gCameras->currentYaw) * TAU / 360.0f, &sp20, &sp24); + zero = 0.0f; + four = 4.0f; + playFX_33(0, chest->unk_18 + zero * sp18 - sp20 * four, + chest->unk_1C + 12.0f, chest->unk_20 - sp1C * zero + sp24 * four, 1.0f, 0x64); + playFX_1B(0, chest->unk_18 + zero * sp18 - sp20 * four, + chest->unk_1C + 12.0f, chest->unk_20 - sp1C * zero + sp24 * four, 1.0f, &chest->unk_34); + } + } + break; + case 3: + chest->unk_02--; + if (chest->unk_02 == 0) { + exec_entity_commandlist(entity); + chest->unk_04 = 0; + } + break; + } +} // the function itself matches, but somehow it breaks other completely unrelated files #ifdef NON_MATCHING diff --git a/src/world/partner/bow.c b/src/world/partner/bow.c index 669c5031e9..700c83a11c 100644 --- a/src/world/partner/bow.c +++ b/src/world/partner/bow.c @@ -1,16 +1,24 @@ #include "common.h" #include "../partners.h" +#include "../../npc.h" extern s32 D_802BE0C0; extern s32 D_802BE0C4; +extern s32 D_802BE0E4; +extern s32 D_802BE0E8; +extern s32 D_802BE0EC; + extern struct unkPartnerStruct* D_802BDFFC_32494C; +void func_802BDDF0_324740(Npc* partner); +s32 func_802BD540_323E90(void); + void func_802BD100_323A50(Npc* partner) { partner->collisionHeight = 26; partner->collisionRadius = 24; partner->renderMode = RENDER_MODE_SURFACE_XLU_LAYER1; - D_802BE0C4 = 0; - D_802BE0C0 = 0; + D_802BE0C4 = FALSE; + D_802BE0C0 = FALSE; } ApiStatus func_802BD130_323A80(Evt* script, s32 isInitialCall) { @@ -21,16 +29,15 @@ ApiStatus func_802BD130_323A80(Evt* script, s32 isInitialCall) { return partner_get_out(owner) != 0; } -s32 func_802BD168_323AB8(Evt* evt, s32 arg1) { +ApiStatus func_802BD168_323AB8(Evt* script, s32 isInitialCall) { PlayerData* playerData = &gPlayerData; - Npc* npc; + Npc* npc = script->owner2.npc; Entity* entity; f32 sp10; f32 sp14; f32 tempY; - npc = evt->owner2.npc; - if (arg1 != 0) { + if (isInitialCall) { partner_flying_enable(npc, 1); mem_clear(D_802BDFFC_32494C, sizeof(*D_802BDFFC_32494C)); D_8010C954 = 0; @@ -97,14 +104,250 @@ s32 func_802BD168_323AB8(Evt* evt, s32 arg1) { return 0; } -INCLUDE_ASM(s32, "world/partner/bow", func_802BD4FC_323E4C); +void func_802BD4FC_323E4C(Npc* partner) { + if (D_8010C954 != 0) { + D_8010C954 = 0; + partner->flags = D_802BDFFC_32494C->unk_08; + D_802BDFFC_32494C->unk_04 = 0; + partner_clear_player_tracking(partner); + } +} INCLUDE_ASM(s32, "world/partner/bow", func_802BD540_323E90); -INCLUDE_ASM(s32, "world/partner/bow", func_802BD694_323FE4); +ApiStatus func_802BD694_323FE4(Evt* script, s32 isInitialCall) { + PlayerStatus* playerStatus = &gPlayerStatus; + PartnerActionStatus* partnerActionStatus = &gPartnerActionStatus; + CollisionStatus* collisionStatus = &gCollisionStatus; + Npc* npc = script->owner2.npc; + f32 distance; -INCLUDE_ASM(s32, "world/partner/bow", func_802BDDF0_324740); + if (isInitialCall) { + func_802BD4FC_323E4C(npc); + if (!(playerStatus->animFlags & 0x100000)) { + if (func_800EA52C(9) != 0) { + if (playerStatus->animFlags & 0x200000) { + playerStatus->animFlags &= ~0x200000; + script->functionTemp[2] = disable_player_input(); + D_802BE0C4 = TRUE; + script->functionTemp[0] = 20; + } else { + script->functionTemp[0] = 40; + } + } else { + return ApiStatus_DONE2; + } + } else { + return ApiStatus_DONE2; + } + } -INCLUDE_ASM(s32, "world/partner/bow", func_802BDF08_324858); + switch (script->functionTemp[0]) { + case 40: + if (playerStatus->statusMenuCounterinputEnabledCounter != 0) { + return ApiStatus_DONE2; + } + playerStatus->flags |= 0x100; + script->functionTemp[1] = 3; + script->functionTemp[2] = disable_player_input(); + D_802BE0C4 = TRUE; + script->functionTemp[0]++; + break; + case 41: + if ((func_800EA52C(9) == 0 || is_starting_conversation()) && + script->functionTemp[2] < playerStatus->statusMenuCounterinputEnabledCounter + && D_802BE0C4) { -INCLUDE_ASM(s32, "world/partner/bow", func_802BDF64_3248B4); + enable_player_input(); + D_802BE0C4 = FALSE; + playerStatus->flags &= ~0x100; + return ApiStatus_DONE2; + } + script->functionTemp[1]--; + if (script->functionTemp[1] == 0) { + if (script->functionTemp[2] < playerStatus->statusMenuCounterinputEnabledCounter) { + if (D_802BE0C4) { + enable_player_input(); + D_802BE0C4 = FALSE; + } + playerStatus->flags &= ~0x100; + return ApiStatus_DONE2; + } + script->functionTemp[0] = 20; + } + break; + } + + switch (script->functionTemp[0]) { + case 20: + if (playerStatus->flags & 0x800) { + playerStatus->flags &= ~0x100; + if (D_802BE0C4) { + enable_player_input(); + D_802BE0C4 = FALSE; + } + return ApiStatus_DONE2; + } + if (script->functionTemp[2] != 0) { + D_802BE0C4 = TRUE; + } + + D_802BE0C0 = TRUE; + npc->flags &= ~0xA00; + partnerActionStatus->actionState.b[0] = 1; + partnerActionStatus->actionState.b[3] = 9; + playerStatus->flags |= 0x8000; + func_800EF4E0(); + npc->moveToPos.x = playerStatus->position.x; + npc->moveToPos.y = playerStatus->position.y + (playerStatus->colliderHeight * 0.5f); + npc->moveToPos.z = playerStatus->position.z; + npc->currentAnim.w = 0x50002; + npc->yaw = playerStatus->targetYaw; + add_vec2D_polar(&npc->moveToPos.x, &npc->moveToPos.z, -2.0f, gCameras[gCurrentCameraID].currentYaw); + add_vec2D_polar(&npc->moveToPos.x, &npc->moveToPos.z, + playerStatus->colliderDiameter * 0.5f, npc->yaw); + npc->duration = 5; + npc->yaw = atan2(npc->pos.x, npc->pos.z, playerStatus->position.x, playerStatus->position.z); + set_action_state(ACTION_STATE_RIDE); + suggest_player_anim_clearUnkFlag(0x10002); + script->functionTemp[0]++; + break; + case 21: + if (collisionStatus->currentFloor >= 0 && (playerStatus->animFlags & 0x100000) == 0) { + npc->moveToPos.x = playerStatus->position.x; + npc->moveToPos.y = playerStatus->position.y + (playerStatus->colliderHeight * 0.5f); + npc->moveToPos.z = playerStatus->position.z; + npc->pos.x += ((npc->moveToPos.x - npc->pos.x) / npc->duration); + npc->pos.y += ((npc->moveToPos.y - npc->pos.y) / npc->duration); + npc->pos.z += ((npc->moveToPos.z - npc->pos.z) / npc->duration); + D_802BE0E4 = playerStatus->position.x - npc->pos.x; + D_802BE0E8 = playerStatus->position.y - npc->pos.y; + D_802BE0EC = playerStatus->position.z - npc->pos.z; + npc->duration--; + if (npc->duration == 0) { + npc->yaw = playerStatus->targetYaw; + func_8003D624(npc, 7, playerStatus->alpha1, 0, 0, 0, 0); + suggest_player_anim_setUnkFlag(0x10014); + sfx_play_sound_at_npc(SOUND_BOW_VANISH, 0, -4); + script->functionTemp[0] = 1; + } + break; + } + func_802BDDF0_324740(npc); + return ApiStatus_DONE2; + case 1: + if (collisionStatus->currentFloor >= 0) { + playerStatus->alpha1 -= 8; + if (playerStatus->alpha1 <= 128) { + playerStatus->alpha1 = 128; + npc->renderMode = 0x16; + script->functionTemp[0]++; + playerStatus->flags &= ~0x100; + npc->flags |= 0x40; + } + get_shadow_by_index(npc->shadowIndex)->unk_05 = playerStatus->alpha1 >> 1; + func_8003D624(npc, 7, playerStatus->alpha1, 0, 0, 0, 0); + npc->pos.x = playerStatus->position.x - D_802BE0E4; + npc->pos.y = playerStatus->position.y - D_802BE0E8; + npc->pos.z = playerStatus->position.z - D_802BE0EC; + break; + } + func_802BDDF0_324740(npc); + return ApiStatus_DONE2; + case 2: + if (collisionStatus->currentFloor < 0) { + func_802BDDF0_324740(npc); + return ApiStatus_DONE2; + } + npc->pos.x = playerStatus->position.x - D_802BE0E4; + npc->pos.y = playerStatus->position.y - D_802BE0E8; + npc->pos.z = playerStatus->position.z - D_802BE0EC; + + distance = dist2D(0.0f, 0.0f, partnerActionStatus->stickX, partnerActionStatus->stickY); + if ((collisionStatus->currentFloor < 0) || distance > 10.0f || + partnerActionStatus->pressedButtons & (BUTTON_B | BUTTON_C_DOWN) || playerStatus->flags & 0x800) { + if (func_802BD540_323E90() < 0) { + script->functionTemp[0]++; + script->functionTemp[1] = 3; + script->functionTemp[2] = playerStatus->statusMenuCounterinputEnabledCounter; + } + } + break; + case 3: + if (script->functionTemp[1] == 0) { + if (script->functionTemp[2] < playerStatus->statusMenuCounterinputEnabledCounter) { + script->functionTemp[0] = 2; + break; + } + } else { + script->functionTemp[1]--; + break; + } + + sfx_play_sound_at_npc(SOUND_BOW_APPEAR, 0, -4); + func_802BDDF0_324740(npc); + return ApiStatus_DONE1; + } + return ApiStatus_BLOCK; +} + +void func_802BDDF0_324740(Npc* partner) { + PlayerStatus* playerStatus = &gPlayerStatus; + PartnerActionStatus* partnerActionStatus = &gPartnerActionStatus; + s32 actionState; + + playerStatus->alpha1 = 255; + func_8003D624(partner, 0, 0, 0, 0, 0, 0); + partner->renderMode = 0x11; + get_shadow_by_index(partner->shadowIndex)->unk_05 = playerStatus->alpha1 >> 1; + + if (D_802BE0C4) { + enable_player_input(); + } + + playerStatus->flags &= ~0x8002; + partner->flags &= ~0x42; + D_802BE0C4 = FALSE; + actionState = ACTION_STATE_IDLE; + if (playerStatus->flags & 0x800) { + actionState = ACTION_STATE_HIT_LAVA; + } + + set_action_state(actionState); + partnerActionStatus->actionState.b[0] = 0; + partnerActionStatus->actionState.b[3] = 0; + playerStatus->flags &= ~0x100; + partner_clear_player_tracking(partner); + D_802BE0C0 = FALSE; +} + +ApiStatus func_802BDF08_324858(Evt* script, s32 isInitialCall) { + Npc* partner = script->owner2.npc; + + if (isInitialCall) { + partner_init_put_away(partner); + if (D_802BE0C0) { + sfx_play_sound_at_npc(SOUND_BOW_APPEAR, 0, -4); + } + func_802BDDF0_324740(partner); + } + if (partner_put_away(partner)) { + return ApiStatus_DONE1; + } else { + return ApiStatus_BLOCK; + } +} + +void func_802BDF64_3248B4(Npc* partner) { + PartnerActionStatus* partnerActionStatus = &gPartnerActionStatus; + + if (D_802BE0C0) { + enable_player_input(); + set_action_state(ACTION_STATE_IDLE); + partner_clear_player_tracking(partner); + partnerActionStatus->actionState.b[0] = 0; + partnerActionStatus->actionState.b[3] = 0; + D_802BE0C0 = FALSE; + partner->flags &= ~0x2; + } +} diff --git a/src/world/partner/lakilester.c b/src/world/partner/lakilester.c index b2ade55d7e..7c38f3dc88 100644 --- a/src/world/partner/lakilester.c +++ b/src/world/partner/lakilester.c @@ -1,7 +1,15 @@ #include "common.h" +#include "../partners.h" extern unkPartnerStruct* D_802BFE7C_3239CC; + extern f64 D_802BFEF0; +extern s32 D_802BFF00; +extern s32 D_802BFF04; +extern s32 D_802BFF08; +extern s32 D_802BFF0C; + +s32 func_802BD7DC(void); INCLUDE_ASM(s32, "world/partner/lakilester", func_802BD100_320C50); @@ -9,16 +17,15 @@ INCLUDE_ASM(s32, "world/partner/lakilester", func_802BD21C_320D6C); INCLUDE_ASM(s32, "world/partner/lakilester", func_802BD29C_320DEC); -s32 func_802BD2D4_320E24(Evt* evt, s32 arg1) { +ApiStatus func_802BD2D4_320E24(Evt* script, s32 isInitialCall) { PlayerData* playerData = &gPlayerData; Entity* entity; - Npc* npc; + Npc* npc = script->owner2.npc; f32 sp10; f32 sp14; f32 tempY; - npc = evt->owner2.npc; - if (arg1 != 0) { + if (isInitialCall) { partner_flying_enable(npc, 1); mem_clear(D_802BFE7C_3239CC, sizeof(*D_802BFE7C_3239CC)); D_8010C954 = 0; @@ -29,7 +36,7 @@ s32 func_802BD2D4_320E24(Evt* evt, s32 arg1) { if (entity == NULL) { partner_flying_update_player_tracking(npc); partner_flying_update_motion(npc); - return 0; + return ApiStatus_BLOCK; } switch (D_802BFE7C_3239CC->unk_04) { @@ -90,7 +97,7 @@ s32 func_802BD2D4_320E24(Evt* evt, s32 arg1) { } break; } - return 0; + return ApiStatus_BLOCK; } INCLUDE_ASM(s32, "world/partner/lakilester", func_802BD678_3211C8); @@ -109,7 +116,134 @@ INCLUDE_ASM(s32, "world/partner/lakilester", func_802BE6A0_3221F0); INCLUDE_ASM(s32, "world/partner/lakilester", func_802BE724_322274); -INCLUDE_ASM(s32, "world/partner/lakilester", func_802BF4F0_323040); +ApiStatus func_802BF4F0_323040(Evt* script, s32 isInitialCall) { + PlayerStatus* playerStatus = &gPlayerStatus; + PartnerActionStatus* partnerActionStatus = &gPartnerActionStatus; + Camera* cam = &gCameras; + Npc* partner = script->owner2.npc; + f32 sp2C; + f32 sp28; + f32 sp24; + f32 sp20; + f32 yaw; + s32 phi_v1; + + if (isInitialCall) { + D_802BFF00 = (D_802BFF0C == 0) ? 3 : 0; + partner_init_put_away(partner); + func_802BD7DC(); + playerStatus->animFlags &= ~0x400000; + playerStatus->flags |= 0x100; + } + + switch (D_802BFF00) { + case 0: + func_802BD7DC(); + yaw = cam->currentYaw; + if ((playerStatus->spriteFacingAngle >= 90.0f) && (playerStatus->spriteFacingAngle < 270.0f)) { + partner->yaw = (yaw + 180.0f) - 90.0f; + } else { + partner->yaw = (yaw + 0.0f) - 90.0f; + } + + sp2C = dist2D(playerStatus->position.x, playerStatus->position.z, + partner->moveToPos.x, partner->moveToPos.z); + partner->duration = 14; + + if (partner->moveToPos.y > partner->pos.y ) { + partner->jumpVelocity = (partner->moveToPos.y - partner->pos.y) / 14.0f + 6.0f; + } else { + partner->jumpVelocity = 6.0f; + } + partner->jumpScale = 1.2f; + partner->moveSpeed = sp2C / partner->duration; + partner->yaw = atan2(playerStatus->position.x, playerStatus->position.z, + partner->moveToPos.x, partner->moveToPos.z); + suggest_player_anim_clearUnkFlag(0x10006); + D_802BFF00++; + break; + case 1: + suggest_player_anim_clearUnkFlag(0x10007); + D_802BFF00++; + case 2: + playerStatus->position.y += partner->jumpVelocity; + partner->jumpVelocity -= partner->jumpScale; + add_vec2D_polar(&playerStatus->position.x, &playerStatus->position.z, + partner->moveSpeed, partner->yaw); + func_800E4AD8(0); + if (partner->jumpVelocity <= 0.0f) { + playerStatus->flags |= 4; + if (partner->jumpVelocity < -10.0) { + partner->jumpVelocity = -10.0f; + } + } + sp20 = playerStatus->position.x; + sp24 = playerStatus->position.y + playerStatus->colliderHeight; + sp28 = playerStatus->position.z; + sp2C = playerStatus->colliderHeight; + if (npc_raycast_down_ahead(0, &sp20, &sp24, &sp28, &sp2C, + partner->yaw, partner->collisionRadius)) { + + D_802BFF00 = 3; + playerStatus->position.y = sp24; + } + break; + } + + gCameras->targetPos.x = playerStatus->position.x; + gCameras->targetPos.y = playerStatus->position.y; + gCameras->targetPos.z = playerStatus->position.z; + + switch (D_802BFF00) { + case 3: + partner->flags &= ~0x48; + if (D_802BFF08) { + D_802BFF08 = FALSE; + enable_player_static_collisions(); + } + enable_player_shadow(); + if (playerStatus->flags & 0x800) { + partnerActionStatus->actionState.b[3] = 0; + partnerActionStatus->actionState.b[0] = 0; + if (D_802BFF04) { + D_802BFF04 = FALSE; + enable_player_input(); + } + gGameStatusPtr->unk_7D = 0; + D_802BFF0C = 0; + partner_clear_player_tracking(partner); + set_action_state(ACTION_STATE_HIT_FIRE); + return ApiStatus_DONE1; + } + if (D_802BFF0C == 0) { + phys_main_collision_below(); + } else { + set_action_state(ACTION_STATE_FALLING); + gravity_use_fall_parms(); + } + D_802BFF00++; + break; + case 4: + partnerActionStatus->actionState.b[3] = 0; + partnerActionStatus->actionState.b[0] = 0; + playerStatus->flags &= -0x101; + if (D_802BFF04) { + D_802BFF04 = FALSE; + enable_player_input(); + } + gGameStatusPtr->unk_7D = 0; + D_802BFF0C = 0; + partner_clear_player_tracking(partner); + D_802BFF00++; + break; + case 5: + if (partner_put_away(partner) == FALSE) { + break; + } + return ApiStatus_DONE1; + } + return ApiStatus_BLOCK; +} INCLUDE_ASM(s32, "world/partner/lakilester", func_802BFA00_323550); diff --git a/src/world/partners.h b/src/world/partners.h index 8ca79a3866..ef60aaa453 100644 --- a/src/world/partners.h +++ b/src/world/partners.h @@ -42,7 +42,11 @@ extern Npc* wPartnerNpc; // wPartnerNpc s32 partner_init_get_out(Npc*); s32 partner_get_out(Npc*); +s32 partner_init_put_away(Npc* partner); +s32 partner_put_away(Npc* partner); void partner_do_player_collision(Npc* partner); void partner_walking_follow_player(Npc* partner); +s32 func_800EA52C(s32); +s32 func_800EF4E0(void); #endif diff --git a/ver/us/asm/nonmatchings/entity/Chest/entity_GiantChest_open.s b/ver/us/asm/nonmatchings/entity/Chest/entity_GiantChest_open.s deleted file mode 100644 index 7503fe9301..0000000000 --- a/ver/us/asm/nonmatchings/entity/Chest/entity_GiantChest_open.s +++ /dev/null @@ -1,346 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -glabel D_802EB320 -.double 0.7 - -glabel D_802EB328 -.double 0.4 - -.section .text - -glabel entity_GiantChest_open -/* 108E64 802E75E4 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 108E68 802E75E8 AFB00028 */ sw $s0, 0x28($sp) -/* 108E6C 802E75EC 0080802D */ daddu $s0, $a0, $zero -/* 108E70 802E75F0 AFBF0034 */ sw $ra, 0x34($sp) -/* 108E74 802E75F4 AFB20030 */ sw $s2, 0x30($sp) -/* 108E78 802E75F8 AFB1002C */ sw $s1, 0x2c($sp) -/* 108E7C 802E75FC F7BC0058 */ sdc1 $f28, 0x58($sp) -/* 108E80 802E7600 F7BA0050 */ sdc1 $f26, 0x50($sp) -/* 108E84 802E7604 F7B80048 */ sdc1 $f24, 0x48($sp) -/* 108E88 802E7608 F7B60040 */ sdc1 $f22, 0x40($sp) -/* 108E8C 802E760C F7B40038 */ sdc1 $f20, 0x38($sp) -/* 108E90 802E7610 8E110040 */ lw $s1, 0x40($s0) -/* 108E94 802E7614 8E220010 */ lw $v0, 0x10($s1) -/* 108E98 802E7618 3C128011 */ lui $s2, %hi(gPlayerStatus) -/* 108E9C 802E761C 2652EFC8 */ addiu $s2, $s2, %lo(gPlayerStatus) -/* 108EA0 802E7620 10400006 */ beqz $v0, .L802E763C -/* 108EA4 802E7624 00000000 */ nop -/* 108EA8 802E7628 8E240014 */ lw $a0, 0x14($s1) -/* 108EAC 802E762C 8E250018 */ lw $a1, 0x18($s1) -/* 108EB0 802E7630 8E26001C */ lw $a2, 0x1c($s1) -/* 108EB4 802E7634 0C04D083 */ jal set_item_entity_position -/* 108EB8 802E7638 8E270020 */ lw $a3, 0x20($s1) -.L802E763C: -/* 108EBC 802E763C 0C0B9C8C */ jal entity_Chest_open -/* 108EC0 802E7640 0200202D */ daddu $a0, $s0, $zero -/* 108EC4 802E7644 92230004 */ lbu $v1, 4($s1) -/* 108EC8 802E7648 24020001 */ addiu $v0, $zero, 1 -/* 108ECC 802E764C 1062001E */ beq $v1, $v0, .L802E76C8 -/* 108ED0 802E7650 28620002 */ slti $v0, $v1, 2 -/* 108ED4 802E7654 50400005 */ beql $v0, $zero, .L802E766C -/* 108ED8 802E7658 24020002 */ addiu $v0, $zero, 2 -/* 108EDC 802E765C 10600009 */ beqz $v1, .L802E7684 -/* 108EE0 802E7660 00000000 */ nop -/* 108EE4 802E7664 080B9EAE */ j .L802E7AB8 -/* 108EE8 802E7668 00000000 */ nop -.L802E766C: -/* 108EEC 802E766C 1062002C */ beq $v1, $v0, .L802E7720 -/* 108EF0 802E7670 24020003 */ addiu $v0, $zero, 3 -/* 108EF4 802E7674 10620107 */ beq $v1, $v0, .L802E7A94 -/* 108EF8 802E7678 00000000 */ nop -/* 108EFC 802E767C 080B9EAE */ j .L802E7AB8 -/* 108F00 802E7680 00000000 */ nop -.L802E7684: -/* 108F04 802E7684 96220002 */ lhu $v0, 2($s1) -/* 108F08 802E7688 2442FFFF */ addiu $v0, $v0, -1 -/* 108F0C 802E768C A6220002 */ sh $v0, 2($s1) -/* 108F10 802E7690 00021400 */ sll $v0, $v0, 0x10 -/* 108F14 802E7694 14400108 */ bnez $v0, .L802E7AB8 -/* 108F18 802E7698 00000000 */ nop -/* 108F1C 802E769C 92220004 */ lbu $v0, 4($s1) -/* 108F20 802E76A0 3C0141A0 */ lui $at, 0x41a0 -/* 108F24 802E76A4 44810000 */ mtc1 $at, $f0 -/* 108F28 802E76A8 3C014100 */ lui $at, 0x4100 -/* 108F2C 802E76AC 44811000 */ mtc1 $at, $f2 -/* 108F30 802E76B0 AE200024 */ sw $zero, 0x24($s1) -/* 108F34 802E76B4 24420001 */ addiu $v0, $v0, 1 -/* 108F38 802E76B8 A2220004 */ sb $v0, 4($s1) -/* 108F3C 802E76BC E6200028 */ swc1 $f0, 0x28($s1) -/* 108F40 802E76C0 080B9EAE */ j .L802E7AB8 -/* 108F44 802E76C4 E622002C */ swc1 $f2, 0x2c($s1) -.L802E76C8: -/* 108F48 802E76C8 C620002C */ lwc1 $f0, 0x2c($s1) -/* 108F4C 802E76CC 3C01802F */ lui $at, %hi(D_802EB320) -/* 108F50 802E76D0 D422B320 */ ldc1 $f2, %lo(D_802EB320)($at) -/* 108F54 802E76D4 C624001C */ lwc1 $f4, 0x1c($s1) -/* 108F58 802E76D8 46000021 */ cvt.d.s $f0, $f0 -/* 108F5C 802E76DC 46220001 */ sub.d $f0, $f0, $f2 -/* 108F60 802E76E0 C622002C */ lwc1 $f2, 0x2c($s1) -/* 108F64 802E76E4 46022100 */ add.s $f4, $f4, $f2 -/* 108F68 802E76E8 3C014000 */ lui $at, 0x4000 -/* 108F6C 802E76EC 44811000 */ mtc1 $at, $f2 -/* 108F70 802E76F0 46200020 */ cvt.s.d $f0, $f0 -/* 108F74 802E76F4 4602003E */ c.le.s $f0, $f2 -/* 108F78 802E76F8 E620002C */ swc1 $f0, 0x2c($s1) -/* 108F7C 802E76FC 450000EE */ bc1f .L802E7AB8 -/* 108F80 802E7700 E624001C */ swc1 $f4, 0x1c($s1) -/* 108F84 802E7704 92220004 */ lbu $v0, 4($s1) -/* 108F88 802E7708 3C0140C0 */ lui $at, 0x40c0 -/* 108F8C 802E770C 44810000 */ mtc1 $at, $f0 -/* 108F90 802E7710 24420001 */ addiu $v0, $v0, 1 -/* 108F94 802E7714 E620002C */ swc1 $f0, 0x2c($s1) -/* 108F98 802E7718 080B9EAE */ j .L802E7AB8 -/* 108F9C 802E771C A2220004 */ sb $v0, 4($s1) -.L802E7720: -/* 108FA0 802E7720 C6220028 */ lwc1 $f2, 0x28($s1) -/* 108FA4 802E7724 3C01430C */ lui $at, 0x430c -/* 108FA8 802E7728 44810000 */ mtc1 $at, $f0 -/* 108FAC 802E772C 00000000 */ nop -/* 108FB0 802E7730 4600103C */ c.lt.s $f2, $f0 -/* 108FB4 802E7734 00000000 */ nop -/* 108FB8 802E7738 45000014 */ bc1f .L802E778C -/* 108FBC 802E773C 00000000 */ nop -/* 108FC0 802E7740 3C0140C9 */ lui $at, 0x40c9 -/* 108FC4 802E7744 34210FD0 */ ori $at, $at, 0xfd0 -/* 108FC8 802E7748 44816000 */ mtc1 $at, $f12 -/* 108FCC 802E774C 00000000 */ nop -/* 108FD0 802E7750 460C1302 */ mul.s $f12, $f2, $f12 -/* 108FD4 802E7754 00000000 */ nop -/* 108FD8 802E7758 3C0143B4 */ lui $at, 0x43b4 -/* 108FDC 802E775C 44810000 */ mtc1 $at, $f0 -/* 108FE0 802E7760 0C00A874 */ jal cos_rad -/* 108FE4 802E7764 46006303 */ div.s $f12, $f12, $f0 -/* 108FE8 802E7768 3C014040 */ lui $at, 0x4040 -/* 108FEC 802E776C 44811000 */ mtc1 $at, $f2 -/* 108FF0 802E7770 00000000 */ nop -/* 108FF4 802E7774 46020002 */ mul.s $f0, $f0, $f2 -/* 108FF8 802E7778 00000000 */ nop -/* 108FFC 802E777C C622001C */ lwc1 $f2, 0x1c($s1) -/* 109000 802E7780 46001080 */ add.s $f2, $f2, $f0 -/* 109004 802E7784 080B9DFC */ j .L802E77F0 -/* 109008 802E7788 E622001C */ swc1 $f2, 0x1c($s1) -.L802E778C: -/* 10900C 802E778C C626001C */ lwc1 $f6, 0x1c($s1) -/* 109010 802E7790 C640002C */ lwc1 $f0, 0x2c($s2) -/* 109014 802E7794 46003001 */ sub.s $f0, $f6, $f0 -/* 109018 802E7798 3C0141F0 */ lui $at, 0x41f0 -/* 10901C 802E779C 44811000 */ mtc1 $at, $f2 -/* 109020 802E77A0 00000000 */ nop -/* 109024 802E77A4 46020001 */ sub.s $f0, $f0, $f2 -/* 109028 802E77A8 3C013E80 */ lui $at, 0x3e80 -/* 10902C 802E77AC 44811000 */ mtc1 $at, $f2 -/* 109030 802E77B0 00000000 */ nop -/* 109034 802E77B4 46020102 */ mul.s $f4, $f0, $f2 -/* 109038 802E77B8 00000000 */ nop -/* 10903C 802E77BC 3C01802F */ lui $at, %hi(D_802EB328) -/* 109040 802E77C0 D422B328 */ ldc1 $f2, %lo(D_802EB328)($at) -/* 109044 802E77C4 46002021 */ cvt.d.s $f0, $f4 -/* 109048 802E77C8 4622003E */ c.le.d $f0, $f2 -/* 10904C 802E77CC 00000000 */ nop -/* 109050 802E77D0 45020006 */ bc1fl .L802E77EC -/* 109054 802E77D4 46043001 */ sub.s $f0, $f6, $f4 -/* 109058 802E77D8 3C013ECC */ lui $at, 0x3ecc -/* 10905C 802E77DC 3421CCCD */ ori $at, $at, 0xcccd -/* 109060 802E77E0 44812000 */ mtc1 $at, $f4 -/* 109064 802E77E4 00000000 */ nop -/* 109068 802E77E8 46043001 */ sub.s $f0, $f6, $f4 -.L802E77EC: -/* 10906C 802E77EC E620001C */ swc1 $f0, 0x1c($s1) -.L802E77F0: -/* 109070 802E77F0 C62C0024 */ lwc1 $f12, 0x24($s1) -/* 109074 802E77F4 3C0140C9 */ lui $at, 0x40c9 -/* 109078 802E77F8 34210FD0 */ ori $at, $at, 0xfd0 -/* 10907C 802E77FC 4481D000 */ mtc1 $at, $f26 -/* 109080 802E7800 00000000 */ nop -/* 109084 802E7804 461A6302 */ mul.s $f12, $f12, $f26 -/* 109088 802E7808 00000000 */ nop -/* 10908C 802E780C 3C0143B4 */ lui $at, 0x43b4 -/* 109090 802E7810 4481E000 */ mtc1 $at, $f28 -/* 109094 802E7814 0C00A85B */ jal sin_rad -/* 109098 802E7818 461C6303 */ div.s $f12, $f12, $f28 -/* 10909C 802E781C C60C0048 */ lwc1 $f12, 0x48($s0) -/* 1090A0 802E7820 8E460028 */ lw $a2, 0x28($s2) -/* 1090A4 802E7824 8E470030 */ lw $a3, 0x30($s2) -/* 1090A8 802E7828 C60E0050 */ lwc1 $f14, 0x50($s0) -/* 1090AC 802E782C 0C00A720 */ jal atan2 -/* 1090B0 802E7830 46000606 */ mov.s $f24, $f0 -/* 1090B4 802E7834 0C00A6C9 */ jal clamp_angle -/* 1090B8 802E7838 46000306 */ mov.s $f12, $f0 -/* 1090BC 802E783C 3C028007 */ lui $v0, %hi(gGameStatusPtr) -/* 1090C0 802E7840 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0) -/* 1090C4 802E7844 3C014080 */ lui $at, 0x4080 -/* 1090C8 802E7848 4481B000 */ mtc1 $at, $f22 -/* 1090CC 802E784C 84430086 */ lh $v1, 0x86($v0) -/* 1090D0 802E7850 24020012 */ addiu $v0, $zero, 0x12 -/* 1090D4 802E7854 14620003 */ bne $v1, $v0, .L802E7864 -/* 1090D8 802E7858 00000000 */ nop -/* 1090DC 802E785C 3C014040 */ lui $at, 0x4040 -/* 1090E0 802E7860 4481B000 */ mtc1 $at, $f22 -.L802E7864: -/* 1090E4 802E7864 461A0502 */ mul.s $f20, $f0, $f26 -/* 1090E8 802E7868 00000000 */ nop -/* 1090EC 802E786C 461CA503 */ div.s $f20, $f20, $f28 -/* 1090F0 802E7870 0C00A85B */ jal sin_rad -/* 1090F4 802E7874 4600A306 */ mov.s $f12, $f20 -/* 1090F8 802E7878 4600B002 */ mul.s $f0, $f22, $f0 -/* 1090FC 802E787C 00000000 */ nop -/* 109100 802E7880 46180002 */ mul.s $f0, $f0, $f24 -/* 109104 802E7884 00000000 */ nop -/* 109108 802E7888 C6220018 */ lwc1 $f2, 0x18($s1) -/* 10910C 802E788C 46001080 */ add.s $f2, $f2, $f0 -/* 109110 802E7890 4600A306 */ mov.s $f12, $f20 -/* 109114 802E7894 0C00A874 */ jal cos_rad -/* 109118 802E7898 E6220018 */ swc1 $f2, 0x18($s1) -/* 10911C 802E789C 4600B002 */ mul.s $f0, $f22, $f0 -/* 109120 802E78A0 00000000 */ nop -/* 109124 802E78A4 46180002 */ mul.s $f0, $f0, $f24 -/* 109128 802E78A8 00000000 */ nop -/* 10912C 802E78AC C6240024 */ lwc1 $f4, 0x24($s1) -/* 109130 802E78B0 3C014100 */ lui $at, 0x4100 -/* 109134 802E78B4 44811000 */ mtc1 $at, $f2 -/* 109138 802E78B8 00000000 */ nop -/* 10913C 802E78BC 46022100 */ add.s $f4, $f4, $f2 -/* 109140 802E78C0 C6220020 */ lwc1 $f2, 0x20($s1) -/* 109144 802E78C4 3C014334 */ lui $at, 0x4334 -/* 109148 802E78C8 4481A000 */ mtc1 $at, $f20 -/* 10914C 802E78CC 46001081 */ sub.s $f2, $f2, $f0 -/* 109150 802E78D0 E6240024 */ swc1 $f4, 0x24($s1) -/* 109154 802E78D4 4604A03E */ c.le.s $f20, $f4 -/* 109158 802E78D8 00000000 */ nop -/* 10915C 802E78DC 45000002 */ bc1f .L802E78E8 -/* 109160 802E78E0 E6220020 */ swc1 $f2, 0x20($s1) -/* 109164 802E78E4 E6340024 */ swc1 $f20, 0x24($s1) -.L802E78E8: -/* 109168 802E78E8 C6200028 */ lwc1 $f0, 0x28($s1) -/* 10916C 802E78EC 3C014150 */ lui $at, 0x4150 -/* 109170 802E78F0 44811000 */ mtc1 $at, $f2 -/* 109174 802E78F4 00000000 */ nop -/* 109178 802E78F8 46020000 */ add.s $f0, $f0, $f2 -/* 10917C 802E78FC 4600A03E */ c.le.s $f20, $f0 -/* 109180 802E7900 00000000 */ nop -/* 109184 802E7904 4500006C */ bc1f .L802E7AB8 -/* 109188 802E7908 E6200028 */ swc1 $f0, 0x28($s1) -/* 10918C 802E790C 24020007 */ addiu $v0, $zero, 7 -/* 109190 802E7910 A6220002 */ sh $v0, 2($s1) -/* 109194 802E7914 92220004 */ lbu $v0, 4($s1) -/* 109198 802E7918 8E230010 */ lw $v1, 0x10($s1) -/* 10919C 802E791C E6340028 */ swc1 $f20, 0x28($s1) -/* 1091A0 802E7920 24420001 */ addiu $v0, $v0, 1 -/* 1091A4 802E7924 10600064 */ beqz $v1, .L802E7AB8 -/* 1091A8 802E7928 A2220004 */ sb $v0, 4($s1) -/* 1091AC 802E792C 3C040006 */ lui $a0, 6 -/* 1091B0 802E7930 0C037FDE */ jal suggest_player_anim_setUnkFlag -/* 1091B4 802E7934 3484000C */ ori $a0, $a0, 0xc -/* 1091B8 802E7938 3C10800B */ lui $s0, %hi(gCameras) -/* 1091BC 802E793C 26101D80 */ addiu $s0, $s0, %lo(gCameras) -/* 1091C0 802E7940 C600006C */ lwc1 $f0, 0x6c($s0) -/* 1091C4 802E7944 3C0142B4 */ lui $at, 0x42b4 -/* 1091C8 802E7948 44816000 */ mtc1 $at, $f12 -/* 1091CC 802E794C 00000000 */ nop -/* 1091D0 802E7950 46006301 */ sub.s $f12, $f12, $f0 -/* 1091D4 802E7954 461A6302 */ mul.s $f12, $f12, $f26 -/* 1091D8 802E7958 00000000 */ nop -/* 1091DC 802E795C 27A50018 */ addiu $a1, $sp, 0x18 -/* 1091E0 802E7960 27A6001C */ addiu $a2, $sp, 0x1c -/* 1091E4 802E7964 0C00A82D */ jal sin_cos_rad -/* 1091E8 802E7968 461C6303 */ div.s $f12, $f12, $f28 -/* 1091EC 802E796C C60C006C */ lwc1 $f12, 0x6c($s0) -/* 1091F0 802E7970 460CA301 */ sub.s $f12, $f20, $f12 -/* 1091F4 802E7974 461A6302 */ mul.s $f12, $f12, $f26 -/* 1091F8 802E7978 00000000 */ nop -/* 1091FC 802E797C 27A50020 */ addiu $a1, $sp, 0x20 -/* 109200 802E7980 27A60024 */ addiu $a2, $sp, 0x24 -/* 109204 802E7984 0C00A82D */ jal sin_cos_rad -/* 109208 802E7988 461C6303 */ div.s $f12, $f12, $f28 -/* 10920C 802E798C 4480B000 */ mtc1 $zero, $f22 -/* 109210 802E7990 C7A60018 */ lwc1 $f6, 0x18($sp) -/* 109214 802E7994 46163182 */ mul.s $f6, $f6, $f22 -/* 109218 802E7998 00000000 */ nop -/* 10921C 802E799C 3C014080 */ lui $at, 0x4080 -/* 109220 802E79A0 4481A000 */ mtc1 $at, $f20 -/* 109224 802E79A4 C7A20020 */ lwc1 $f2, 0x20($sp) -/* 109228 802E79A8 46141082 */ mul.s $f2, $f2, $f20 -/* 10922C 802E79AC 00000000 */ nop -/* 109230 802E79B0 C620001C */ lwc1 $f0, 0x1c($s1) -/* 109234 802E79B4 3C014140 */ lui $at, 0x4140 -/* 109238 802E79B8 4481C000 */ mtc1 $at, $f24 -/* 10923C 802E79BC 00000000 */ nop -/* 109240 802E79C0 46180000 */ add.s $f0, $f0, $f24 -/* 109244 802E79C4 C7A4001C */ lwc1 $f4, 0x1c($sp) -/* 109248 802E79C8 46162102 */ mul.s $f4, $f4, $f22 -/* 10924C 802E79CC 00000000 */ nop -/* 109250 802E79D0 44060000 */ mfc1 $a2, $f0 -/* 109254 802E79D4 C6200018 */ lwc1 $f0, 0x18($s1) -/* 109258 802E79D8 46060000 */ add.s $f0, $f0, $f6 -/* 10925C 802E79DC 46020001 */ sub.s $f0, $f0, $f2 -/* 109260 802E79E0 C7A80024 */ lwc1 $f8, 0x24($sp) -/* 109264 802E79E4 46144202 */ mul.s $f8, $f8, $f20 -/* 109268 802E79E8 00000000 */ nop -/* 10926C 802E79EC 44050000 */ mfc1 $a1, $f0 -/* 109270 802E79F0 C6200020 */ lwc1 $f0, 0x20($s1) -/* 109274 802E79F4 46040001 */ sub.s $f0, $f0, $f4 -/* 109278 802E79F8 46080000 */ add.s $f0, $f0, $f8 -/* 10927C 802E79FC 0000202D */ daddu $a0, $zero, $zero -/* 109280 802E7A00 3C013F80 */ lui $at, 0x3f80 -/* 109284 802E7A04 4481D000 */ mtc1 $at, $f26 -/* 109288 802E7A08 44070000 */ mfc1 $a3, $f0 -/* 10928C 802E7A0C 24020064 */ addiu $v0, $zero, 0x64 -/* 109290 802E7A10 E7BA0010 */ swc1 $f26, 0x10($sp) -/* 109294 802E7A14 0C01C2EC */ jal playFX_33 -/* 109298 802E7A18 AFA20014 */ sw $v0, 0x14($sp) -/* 10929C 802E7A1C C7A60018 */ lwc1 $f6, 0x18($sp) -/* 1092A0 802E7A20 46163182 */ mul.s $f6, $f6, $f22 -/* 1092A4 802E7A24 00000000 */ nop -/* 1092A8 802E7A28 C7A20020 */ lwc1 $f2, 0x20($sp) -/* 1092AC 802E7A2C 46141082 */ mul.s $f2, $f2, $f20 -/* 1092B0 802E7A30 00000000 */ nop -/* 1092B4 802E7A34 C620001C */ lwc1 $f0, 0x1c($s1) -/* 1092B8 802E7A38 46180000 */ add.s $f0, $f0, $f24 -/* 1092BC 802E7A3C C7A4001C */ lwc1 $f4, 0x1c($sp) -/* 1092C0 802E7A40 46162102 */ mul.s $f4, $f4, $f22 -/* 1092C4 802E7A44 00000000 */ nop -/* 1092C8 802E7A48 44060000 */ mfc1 $a2, $f0 -/* 1092CC 802E7A4C C6200018 */ lwc1 $f0, 0x18($s1) -/* 1092D0 802E7A50 46060000 */ add.s $f0, $f0, $f6 -/* 1092D4 802E7A54 46020001 */ sub.s $f0, $f0, $f2 -/* 1092D8 802E7A58 C7A80024 */ lwc1 $f8, 0x24($sp) -/* 1092DC 802E7A5C 46144202 */ mul.s $f8, $f8, $f20 -/* 1092E0 802E7A60 00000000 */ nop -/* 1092E4 802E7A64 44050000 */ mfc1 $a1, $f0 -/* 1092E8 802E7A68 C6200020 */ lwc1 $f0, 0x20($s1) -/* 1092EC 802E7A6C 46040001 */ sub.s $f0, $f0, $f4 -/* 1092F0 802E7A70 46080000 */ add.s $f0, $f0, $f8 -/* 1092F4 802E7A74 0000202D */ daddu $a0, $zero, $zero -/* 1092F8 802E7A78 44070000 */ mfc1 $a3, $f0 -/* 1092FC 802E7A7C 26220034 */ addiu $v0, $s1, 0x34 -/* 109300 802E7A80 E7BA0010 */ swc1 $f26, 0x10($sp) -/* 109304 802E7A84 0C01C0AC */ jal playFX_1B -/* 109308 802E7A88 AFA20014 */ sw $v0, 0x14($sp) -/* 10930C 802E7A8C 080B9EAE */ j .L802E7AB8 -/* 109310 802E7A90 00000000 */ nop -.L802E7A94: -/* 109314 802E7A94 96220002 */ lhu $v0, 2($s1) -/* 109318 802E7A98 2442FFFF */ addiu $v0, $v0, -1 -/* 10931C 802E7A9C A6220002 */ sh $v0, 2($s1) -/* 109320 802E7AA0 00021400 */ sll $v0, $v0, 0x10 -/* 109324 802E7AA4 14400004 */ bnez $v0, .L802E7AB8 -/* 109328 802E7AA8 00000000 */ nop -/* 10932C 802E7AAC 0C043F5A */ jal exec_entity_commandlist -/* 109330 802E7AB0 0200202D */ daddu $a0, $s0, $zero -/* 109334 802E7AB4 A2200004 */ sb $zero, 4($s1) -.L802E7AB8: -/* 109338 802E7AB8 8FBF0034 */ lw $ra, 0x34($sp) -/* 10933C 802E7ABC 8FB20030 */ lw $s2, 0x30($sp) -/* 109340 802E7AC0 8FB1002C */ lw $s1, 0x2c($sp) -/* 109344 802E7AC4 8FB00028 */ lw $s0, 0x28($sp) -/* 109348 802E7AC8 D7BC0058 */ ldc1 $f28, 0x58($sp) -/* 10934C 802E7ACC D7BA0050 */ ldc1 $f26, 0x50($sp) -/* 109350 802E7AD0 D7B80048 */ ldc1 $f24, 0x48($sp) -/* 109354 802E7AD4 D7B60040 */ ldc1 $f22, 0x40($sp) -/* 109358 802E7AD8 D7B40038 */ ldc1 $f20, 0x38($sp) -/* 10935C 802E7ADC 03E00008 */ jr $ra -/* 109360 802E7AE0 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/ver/us/asm/nonmatchings/world/partner/bow/func_802BD4FC_323E4C.s b/ver/us/asm/nonmatchings/world/partner/bow/func_802BD4FC_323E4C.s deleted file mode 100644 index c17e9961f8..0000000000 --- a/ver/us/asm/nonmatchings/world/partner/bow/func_802BD4FC_323E4C.s +++ /dev/null @@ -1,22 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802BD4FC_323E4C -/* 323E4C 802BD4FC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 323E50 802BD500 3C058011 */ lui $a1, %hi(D_8010C954) -/* 323E54 802BD504 24A5C954 */ addiu $a1, $a1, %lo(D_8010C954) -/* 323E58 802BD508 AFBF0010 */ sw $ra, 0x10($sp) -/* 323E5C 802BD50C 8CA20000 */ lw $v0, ($a1) -/* 323E60 802BD510 10400008 */ beqz $v0, .L802BD534 -/* 323E64 802BD514 00000000 */ nop -/* 323E68 802BD518 3C03802C */ lui $v1, %hi(D_802BDFFC_32494C) -/* 323E6C 802BD51C 8C63DFFC */ lw $v1, %lo(D_802BDFFC_32494C)($v1) -/* 323E70 802BD520 8C620008 */ lw $v0, 8($v1) -/* 323E74 802BD524 ACA00000 */ sw $zero, ($a1) -/* 323E78 802BD528 AC820000 */ sw $v0, ($a0) -/* 323E7C 802BD52C 0C03BD17 */ jal partner_clear_player_tracking -/* 323E80 802BD530 AC600004 */ sw $zero, 4($v1) -.L802BD534: -/* 323E84 802BD534 8FBF0010 */ lw $ra, 0x10($sp) -/* 323E88 802BD538 03E00008 */ jr $ra -/* 323E8C 802BD53C 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/partner/bow/func_802BD694_323FE4.s b/ver/us/asm/nonmatchings/world/partner/bow/func_802BD694_323FE4.s deleted file mode 100644 index f4b13172e5..0000000000 --- a/ver/us/asm/nonmatchings/world/partner/bow/func_802BD694_323FE4.s +++ /dev/null @@ -1,509 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -glabel jtbl_802BE068_3249B8 -.word L802BDB88_3244D8, L802BDC64_3245B4, L802BDD74_3246C4, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BDDC4_324714, L802BD894_3241E4, L802BDA20_324370, 0 - -.section .text - -glabel func_802BD694_323FE4 -/* 323FE4 802BD694 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 323FE8 802BD698 AFB40030 */ sw $s4, 0x30($sp) -/* 323FEC 802BD69C 0080A02D */ daddu $s4, $a0, $zero -/* 323FF0 802BD6A0 AFB3002C */ sw $s3, 0x2c($sp) -/* 323FF4 802BD6A4 3C138011 */ lui $s3, %hi(gPlayerStatus) -/* 323FF8 802BD6A8 2673EFC8 */ addiu $s3, $s3, %lo(gPlayerStatus) -/* 323FFC 802BD6AC AFB50034 */ sw $s5, 0x34($sp) -/* 324000 802BD6B0 3C158011 */ lui $s5, %hi(gPartnerActionStatus) -/* 324004 802BD6B4 26B5EBB0 */ addiu $s5, $s5, %lo(gPartnerActionStatus) -/* 324008 802BD6B8 AFB10024 */ sw $s1, 0x24($sp) -/* 32400C 802BD6BC 3C118016 */ lui $s1, %hi(gCollisionStatus) -/* 324010 802BD6C0 2631A550 */ addiu $s1, $s1, %lo(gCollisionStatus) -/* 324014 802BD6C4 AFBF0038 */ sw $ra, 0x38($sp) -/* 324018 802BD6C8 AFB20028 */ sw $s2, 0x28($sp) -/* 32401C 802BD6CC AFB00020 */ sw $s0, 0x20($sp) -/* 324020 802BD6D0 F7B40040 */ sdc1 $f20, 0x40($sp) -/* 324024 802BD6D4 10A0001C */ beqz $a1, .L802BD748 -/* 324028 802BD6D8 8E92014C */ lw $s2, 0x14c($s4) -/* 32402C 802BD6DC 0C0AF53F */ jal func_802BD4FC_323E4C -/* 324030 802BD6E0 0240202D */ daddu $a0, $s2, $zero -/* 324034 802BD6E4 8E620004 */ lw $v0, 4($s3) -/* 324038 802BD6E8 3C030010 */ lui $v1, 0x10 -/* 32403C 802BD6EC 00431024 */ and $v0, $v0, $v1 -/* 324040 802BD6F0 144001B5 */ bnez $v0, .L802BDDC8 -/* 324044 802BD6F4 24020002 */ addiu $v0, $zero, 2 -/* 324048 802BD6F8 0C03A94B */ jal func_800EA52C -/* 32404C 802BD6FC 24040009 */ addiu $a0, $zero, 9 -/* 324050 802BD700 1040001C */ beqz $v0, .L802BD774 -/* 324054 802BD704 3C020020 */ lui $v0, 0x20 -/* 324058 802BD708 8E630004 */ lw $v1, 4($s3) -/* 32405C 802BD70C 00621024 */ and $v0, $v1, $v0 -/* 324060 802BD710 1040000B */ beqz $v0, .L802BD740 -/* 324064 802BD714 3C02FFDF */ lui $v0, 0xffdf -/* 324068 802BD718 3442FFFF */ ori $v0, $v0, 0xffff -/* 32406C 802BD71C 00621024 */ and $v0, $v1, $v0 -/* 324070 802BD720 0C03805E */ jal disable_player_input -/* 324074 802BD724 AE620004 */ sw $v0, 4($s3) -/* 324078 802BD728 AE820078 */ sw $v0, 0x78($s4) -/* 32407C 802BD72C 24020001 */ addiu $v0, $zero, 1 -/* 324080 802BD730 3C01802C */ lui $at, %hi(D_802BE0C4) -/* 324084 802BD734 AC22E0C4 */ sw $v0, %lo(D_802BE0C4)($at) -/* 324088 802BD738 080AF5D1 */ j .L802BD744 -/* 32408C 802BD73C 24020014 */ addiu $v0, $zero, 0x14 -.L802BD740: -/* 324090 802BD740 24020028 */ addiu $v0, $zero, 0x28 -.L802BD744: -/* 324094 802BD744 AE820070 */ sw $v0, 0x70($s4) -.L802BD748: -/* 324098 802BD748 8E830070 */ lw $v1, 0x70($s4) -/* 32409C 802BD74C 24020028 */ addiu $v0, $zero, 0x28 -/* 3240A0 802BD750 10620005 */ beq $v1, $v0, .L802BD768 -/* 3240A4 802BD754 24020029 */ addiu $v0, $zero, 0x29 -/* 3240A8 802BD758 10620015 */ beq $v1, $v0, .L802BD7B0 -/* 3240AC 802BD75C 00000000 */ nop -/* 3240B0 802BD760 080AF61B */ j .L802BD86C -/* 3240B4 802BD764 00000000 */ nop -.L802BD768: -/* 3240B8 802BD768 82620015 */ lb $v0, 0x15($s3) -/* 3240BC 802BD76C 10400003 */ beqz $v0, .L802BD77C -/* 3240C0 802BD770 00000000 */ nop -.L802BD774: -/* 3240C4 802BD774 080AF772 */ j .L802BDDC8 -/* 3240C8 802BD778 24020002 */ addiu $v0, $zero, 2 -.L802BD77C: -/* 3240CC 802BD77C 8E620000 */ lw $v0, ($s3) -/* 3240D0 802BD780 34420100 */ ori $v0, $v0, 0x100 -/* 3240D4 802BD784 AE620000 */ sw $v0, ($s3) -/* 3240D8 802BD788 24020003 */ addiu $v0, $zero, 3 -/* 3240DC 802BD78C 0C03805E */ jal disable_player_input -/* 3240E0 802BD790 AE820074 */ sw $v0, 0x74($s4) -/* 3240E4 802BD794 AE820078 */ sw $v0, 0x78($s4) -/* 3240E8 802BD798 8E820070 */ lw $v0, 0x70($s4) -/* 3240EC 802BD79C 24030001 */ addiu $v1, $zero, 1 -/* 3240F0 802BD7A0 3C01802C */ lui $at, %hi(D_802BE0C4) -/* 3240F4 802BD7A4 AC23E0C4 */ sw $v1, %lo(D_802BE0C4)($at) -/* 3240F8 802BD7A8 080AF61A */ j .L802BD868 -/* 3240FC 802BD7AC 00431021 */ addu $v0, $v0, $v1 -.L802BD7B0: -/* 324100 802BD7B0 0C03A94B */ jal func_800EA52C -/* 324104 802BD7B4 24040009 */ addiu $a0, $zero, 9 -/* 324108 802BD7B8 10400005 */ beqz $v0, .L802BD7D0 -/* 32410C 802BD7BC 00000000 */ nop -/* 324110 802BD7C0 0C011052 */ jal is_starting_conversation -/* 324114 802BD7C4 00000000 */ nop -/* 324118 802BD7C8 10400010 */ beqz $v0, .L802BD80C -/* 32411C 802BD7CC 00000000 */ nop -.L802BD7D0: -/* 324120 802BD7D0 82630015 */ lb $v1, 0x15($s3) -/* 324124 802BD7D4 8E820078 */ lw $v0, 0x78($s4) -/* 324128 802BD7D8 0043102A */ slt $v0, $v0, $v1 -/* 32412C 802BD7DC 1040000B */ beqz $v0, .L802BD80C -/* 324130 802BD7E0 00000000 */ nop -/* 324134 802BD7E4 3C10802C */ lui $s0, %hi(D_802BE0C4) -/* 324138 802BD7E8 2610E0C4 */ addiu $s0, $s0, %lo(D_802BE0C4) -/* 32413C 802BD7EC 8E020000 */ lw $v0, ($s0) -/* 324140 802BD7F0 10400006 */ beqz $v0, .L802BD80C -/* 324144 802BD7F4 00000000 */ nop -/* 324148 802BD7F8 0C038069 */ jal enable_player_input -/* 32414C 802BD7FC 00000000 */ nop -/* 324150 802BD800 24020002 */ addiu $v0, $zero, 2 -/* 324154 802BD804 080AF615 */ j .L802BD854 -/* 324158 802BD808 AE000000 */ sw $zero, ($s0) -.L802BD80C: -/* 32415C 802BD80C 8E820074 */ lw $v0, 0x74($s4) -/* 324160 802BD810 2442FFFF */ addiu $v0, $v0, -1 -/* 324164 802BD814 14400015 */ bnez $v0, .L802BD86C -/* 324168 802BD818 AE820074 */ sw $v0, 0x74($s4) -/* 32416C 802BD81C 82630015 */ lb $v1, 0x15($s3) -/* 324170 802BD820 8E820078 */ lw $v0, 0x78($s4) -/* 324174 802BD824 0043102A */ slt $v0, $v0, $v1 -/* 324178 802BD828 1040000F */ beqz $v0, .L802BD868 -/* 32417C 802BD82C 24020014 */ addiu $v0, $zero, 0x14 -/* 324180 802BD830 3C10802C */ lui $s0, %hi(D_802BE0C4) -/* 324184 802BD834 2610E0C4 */ addiu $s0, $s0, %lo(D_802BE0C4) -/* 324188 802BD838 8E020000 */ lw $v0, ($s0) -/* 32418C 802BD83C 10400005 */ beqz $v0, .L802BD854 -/* 324190 802BD840 24020002 */ addiu $v0, $zero, 2 -/* 324194 802BD844 0C038069 */ jal enable_player_input -/* 324198 802BD848 00000000 */ nop -/* 32419C 802BD84C AE000000 */ sw $zero, ($s0) -/* 3241A0 802BD850 24020002 */ addiu $v0, $zero, 2 -.L802BD854: -/* 3241A4 802BD854 8E630000 */ lw $v1, ($s3) -/* 3241A8 802BD858 2404FEFF */ addiu $a0, $zero, -0x101 -/* 3241AC 802BD85C 00641824 */ and $v1, $v1, $a0 -/* 3241B0 802BD860 080AF772 */ j .L802BDDC8 -/* 3241B4 802BD864 AE630000 */ sw $v1, ($s3) -.L802BD868: -/* 3241B8 802BD868 AE820070 */ sw $v0, 0x70($s4) -.L802BD86C: -/* 3241BC 802BD86C 8E820070 */ lw $v0, 0x70($s4) -/* 3241C0 802BD870 2443FFFF */ addiu $v1, $v0, -1 -/* 3241C4 802BD874 2C620015 */ sltiu $v0, $v1, 0x15 -/* 3241C8 802BD878 10400152 */ beqz $v0, L802BDDC4_324714 -/* 3241CC 802BD87C 00031080 */ sll $v0, $v1, 2 -/* 3241D0 802BD880 3C01802C */ lui $at, %hi(jtbl_802BE068_3249B8) -/* 3241D4 802BD884 00220821 */ addu $at, $at, $v0 -/* 3241D8 802BD888 8C22E068 */ lw $v0, %lo(jtbl_802BE068_3249B8)($at) -/* 3241DC 802BD88C 00400008 */ jr $v0 -/* 3241E0 802BD890 00000000 */ nop -glabel L802BD894_3241E4 -/* 3241E4 802BD894 8E640000 */ lw $a0, ($s3) -/* 3241E8 802BD898 30820800 */ andi $v0, $a0, 0x800 -/* 3241EC 802BD89C 1040000B */ beqz $v0, .L802BD8CC -/* 3241F0 802BD8A0 2402FEFF */ addiu $v0, $zero, -0x101 -/* 3241F4 802BD8A4 3C10802C */ lui $s0, %hi(D_802BE0C4) -/* 3241F8 802BD8A8 2610E0C4 */ addiu $s0, $s0, %lo(D_802BE0C4) -/* 3241FC 802BD8AC 8E030000 */ lw $v1, ($s0) -/* 324200 802BD8B0 00821024 */ and $v0, $a0, $v0 -/* 324204 802BD8B4 1060FFAF */ beqz $v1, .L802BD774 -/* 324208 802BD8B8 AE620000 */ sw $v0, ($s3) -/* 32420C 802BD8BC 0C038069 */ jal enable_player_input -/* 324210 802BD8C0 00000000 */ nop -/* 324214 802BD8C4 080AF5DD */ j .L802BD774 -/* 324218 802BD8C8 AE000000 */ sw $zero, ($s0) -.L802BD8CC: -/* 32421C 802BD8CC 8E820078 */ lw $v0, 0x78($s4) -/* 324220 802BD8D0 10400003 */ beqz $v0, .L802BD8E0 -/* 324224 802BD8D4 24020001 */ addiu $v0, $zero, 1 -/* 324228 802BD8D8 3C01802C */ lui $at, %hi(D_802BE0C4) -/* 32422C 802BD8DC AC22E0C4 */ sw $v0, %lo(D_802BE0C4)($at) -.L802BD8E0: -/* 324230 802BD8E0 24040001 */ addiu $a0, $zero, 1 -/* 324234 802BD8E4 8E420000 */ lw $v0, ($s2) -/* 324238 802BD8E8 2403F5FF */ addiu $v1, $zero, -0xa01 -/* 32423C 802BD8EC 3C01802C */ lui $at, %hi(D_802BE0C0) -/* 324240 802BD8F0 AC24E0C0 */ sw $a0, %lo(D_802BE0C0)($at) -/* 324244 802BD8F4 00431024 */ and $v0, $v0, $v1 -/* 324248 802BD8F8 AE420000 */ sw $v0, ($s2) -/* 32424C 802BD8FC A2A40000 */ sb $a0, ($s5) -/* 324250 802BD900 8E620000 */ lw $v0, ($s3) -/* 324254 802BD904 24030009 */ addiu $v1, $zero, 9 -/* 324258 802BD908 A2A30003 */ sb $v1, 3($s5) -/* 32425C 802BD90C 34428000 */ ori $v0, $v0, 0x8000 -/* 324260 802BD910 0C03BD38 */ jal func_800EF4E0 -/* 324264 802BD914 AE620000 */ sw $v0, ($s3) -/* 324268 802BD918 C6600028 */ lwc1 $f0, 0x28($s3) -/* 32426C 802BD91C 26510060 */ addiu $s1, $s2, 0x60 -/* 324270 802BD920 E6400060 */ swc1 $f0, 0x60($s2) -/* 324274 802BD924 866200B0 */ lh $v0, 0xb0($s3) -/* 324278 802BD928 3C013F00 */ lui $at, 0x3f00 -/* 32427C 802BD92C 4481A000 */ mtc1 $at, $f20 -/* 324280 802BD930 44820000 */ mtc1 $v0, $f0 -/* 324284 802BD934 00000000 */ nop -/* 324288 802BD938 46800020 */ cvt.s.w $f0, $f0 -/* 32428C 802BD93C 46140002 */ mul.s $f0, $f0, $f20 -/* 324290 802BD940 00000000 */ nop -/* 324294 802BD944 0220202D */ daddu $a0, $s1, $zero -/* 324298 802BD948 26500068 */ addiu $s0, $s2, 0x68 -/* 32429C 802BD94C C662002C */ lwc1 $f2, 0x2c($s3) -/* 3242A0 802BD950 3C06C000 */ lui $a2, 0xc000 -/* 3242A4 802BD954 46001080 */ add.s $f2, $f2, $f0 -/* 3242A8 802BD958 3C038007 */ lui $v1, %hi(gCurrentCameraID) -/* 3242AC 802BD95C 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) -/* 3242B0 802BD960 3C020005 */ lui $v0, 5 -/* 3242B4 802BD964 E6420064 */ swc1 $f2, 0x64($s2) -/* 3242B8 802BD968 C6600030 */ lwc1 $f0, 0x30($s3) -/* 3242BC 802BD96C 34420002 */ ori $v0, $v0, 2 -/* 3242C0 802BD970 AE420028 */ sw $v0, 0x28($s2) -/* 3242C4 802BD974 00031080 */ sll $v0, $v1, 2 -/* 3242C8 802BD978 00431021 */ addu $v0, $v0, $v1 -/* 3242CC 802BD97C 00021080 */ sll $v0, $v0, 2 -/* 3242D0 802BD980 00431023 */ subu $v0, $v0, $v1 -/* 3242D4 802BD984 000218C0 */ sll $v1, $v0, 3 -/* 3242D8 802BD988 00431021 */ addu $v0, $v0, $v1 -/* 3242DC 802BD98C E6400068 */ swc1 $f0, 0x68($s2) -/* 3242E0 802BD990 C6600080 */ lwc1 $f0, 0x80($s3) -/* 3242E4 802BD994 000210C0 */ sll $v0, $v0, 3 -/* 3242E8 802BD998 E640000C */ swc1 $f0, 0xc($s2) -/* 3242EC 802BD99C 3C07800B */ lui $a3, %hi(gCameras+0x6C) -/* 3242F0 802BD9A0 00E23821 */ addu $a3, $a3, $v0 -/* 3242F4 802BD9A4 8CE71DEC */ lw $a3, %lo(gCameras+0x6C)($a3) -/* 3242F8 802BD9A8 0C00A7E7 */ jal add_vec2D_polar -/* 3242FC 802BD9AC 0200282D */ daddu $a1, $s0, $zero -/* 324300 802BD9B0 866200B2 */ lh $v0, 0xb2($s3) -/* 324304 802BD9B4 44820000 */ mtc1 $v0, $f0 -/* 324308 802BD9B8 00000000 */ nop -/* 32430C 802BD9BC 46800020 */ cvt.s.w $f0, $f0 -/* 324310 802BD9C0 46140002 */ mul.s $f0, $f0, $f20 -/* 324314 802BD9C4 00000000 */ nop -/* 324318 802BD9C8 0220202D */ daddu $a0, $s1, $zero -/* 32431C 802BD9CC 8E47000C */ lw $a3, 0xc($s2) -/* 324320 802BD9D0 44060000 */ mfc1 $a2, $f0 -/* 324324 802BD9D4 0C00A7E7 */ jal add_vec2D_polar -/* 324328 802BD9D8 0200282D */ daddu $a1, $s0, $zero -/* 32432C 802BD9DC C64C0038 */ lwc1 $f12, 0x38($s2) -/* 324330 802BD9E0 C64E0040 */ lwc1 $f14, 0x40($s2) -/* 324334 802BD9E4 24020005 */ addiu $v0, $zero, 5 -/* 324338 802BD9E8 A642008E */ sh $v0, 0x8e($s2) -/* 32433C 802BD9EC 8E660028 */ lw $a2, 0x28($s3) -/* 324340 802BD9F0 0C00A720 */ jal atan2 -/* 324344 802BD9F4 8E670030 */ lw $a3, 0x30($s3) -/* 324348 802BD9F8 24040021 */ addiu $a0, $zero, 0x21 -/* 32434C 802BD9FC 0C039769 */ jal set_action_state -/* 324350 802BDA00 E640000C */ swc1 $f0, 0xc($s2) -/* 324354 802BDA04 3C040001 */ lui $a0, 1 -/* 324358 802BDA08 0C037FBF */ jal suggest_player_anim_clearUnkFlag -/* 32435C 802BDA0C 34840002 */ ori $a0, $a0, 2 -/* 324360 802BDA10 8E820070 */ lw $v0, 0x70($s4) -/* 324364 802BDA14 24420001 */ addiu $v0, $v0, 1 -/* 324368 802BDA18 080AF771 */ j L802BDDC4_324714 -/* 32436C 802BDA1C AE820070 */ sw $v0, 0x70($s4) -glabel L802BDA20_324370 -/* 324370 802BDA20 86220002 */ lh $v0, 2($s1) -/* 324374 802BDA24 04400092 */ bltz $v0, .L802BDC70 -/* 324378 802BDA28 3C030010 */ lui $v1, 0x10 -/* 32437C 802BDA2C 8E620004 */ lw $v0, 4($s3) -/* 324380 802BDA30 00431024 */ and $v0, $v0, $v1 -/* 324384 802BDA34 1440008E */ bnez $v0, .L802BDC70 -/* 324388 802BDA38 00000000 */ nop -/* 32438C 802BDA3C C6600028 */ lwc1 $f0, 0x28($s3) -/* 324390 802BDA40 E6400060 */ swc1 $f0, 0x60($s2) -/* 324394 802BDA44 866200B0 */ lh $v0, 0xb0($s3) -/* 324398 802BDA48 3C013F00 */ lui $at, 0x3f00 -/* 32439C 802BDA4C 44811000 */ mtc1 $at, $f2 -/* 3243A0 802BDA50 44820000 */ mtc1 $v0, $f0 -/* 3243A4 802BDA54 00000000 */ nop -/* 3243A8 802BDA58 46800020 */ cvt.s.w $f0, $f0 -/* 3243AC 802BDA5C 46020002 */ mul.s $f0, $f0, $f2 -/* 3243B0 802BDA60 00000000 */ nop -/* 3243B4 802BDA64 C64A0038 */ lwc1 $f10, 0x38($s2) -/* 3243B8 802BDA68 C648003C */ lwc1 $f8, 0x3c($s2) -/* 3243BC 802BDA6C C6420060 */ lwc1 $f2, 0x60($s2) -/* 3243C0 802BDA70 C6460040 */ lwc1 $f6, 0x40($s2) -/* 3243C4 802BDA74 460A1081 */ sub.s $f2, $f2, $f10 -/* 3243C8 802BDA78 C664002C */ lwc1 $f4, 0x2c($s3) -/* 3243CC 802BDA7C 8642008E */ lh $v0, 0x8e($s2) -/* 3243D0 802BDA80 46002100 */ add.s $f4, $f4, $f0 -/* 3243D4 802BDA84 44820000 */ mtc1 $v0, $f0 -/* 3243D8 802BDA88 00000000 */ nop -/* 3243DC 802BDA8C 46800020 */ cvt.s.w $f0, $f0 -/* 3243E0 802BDA90 46001083 */ div.s $f2, $f2, $f0 -/* 3243E4 802BDA94 46025280 */ add.s $f10, $f10, $f2 -/* 3243E8 802BDA98 E6440064 */ swc1 $f4, 0x64($s2) -/* 3243EC 802BDA9C 46002006 */ mov.s $f0, $f4 -/* 3243F0 802BDAA0 C6620030 */ lwc1 $f2, 0x30($s3) -/* 3243F4 802BDAA4 46080001 */ sub.s $f0, $f0, $f8 -/* 3243F8 802BDAA8 E6420068 */ swc1 $f2, 0x68($s2) -/* 3243FC 802BDAAC 46061081 */ sub.s $f2, $f2, $f6 -/* 324400 802BDAB0 44822000 */ mtc1 $v0, $f4 -/* 324404 802BDAB4 00000000 */ nop -/* 324408 802BDAB8 46802120 */ cvt.s.w $f4, $f4 -/* 32440C 802BDABC 46040003 */ div.s $f0, $f0, $f4 -/* 324410 802BDAC0 46004200 */ add.s $f8, $f8, $f0 -/* 324414 802BDAC4 46002006 */ mov.s $f0, $f4 -/* 324418 802BDAC8 9642008E */ lhu $v0, 0x8e($s2) -/* 32441C 802BDACC 46001083 */ div.s $f2, $f2, $f0 -/* 324420 802BDAD0 46023180 */ add.s $f6, $f6, $f2 -/* 324424 802BDAD4 E64A0038 */ swc1 $f10, 0x38($s2) -/* 324428 802BDAD8 E648003C */ swc1 $f8, 0x3c($s2) -/* 32442C 802BDADC E6460040 */ swc1 $f6, 0x40($s2) -/* 324430 802BDAE0 C6640028 */ lwc1 $f4, 0x28($s3) -/* 324434 802BDAE4 46005006 */ mov.s $f0, $f10 -/* 324438 802BDAE8 460A2101 */ sub.s $f4, $f4, $f10 -/* 32443C 802BDAEC C662002C */ lwc1 $f2, 0x2c($s3) -/* 324440 802BDAF0 46004006 */ mov.s $f0, $f8 -/* 324444 802BDAF4 46081081 */ sub.s $f2, $f2, $f8 -/* 324448 802BDAF8 C6600030 */ lwc1 $f0, 0x30($s3) -/* 32444C 802BDAFC 2442FFFF */ addiu $v0, $v0, -1 -/* 324450 802BDB00 A642008E */ sh $v0, 0x8e($s2) -/* 324454 802BDB04 00021400 */ sll $v0, $v0, 0x10 -/* 324458 802BDB08 46060001 */ sub.s $f0, $f0, $f6 -/* 32445C 802BDB0C 4600240D */ trunc.w.s $f16, $f4 -/* 324460 802BDB10 3C01802C */ lui $at, %hi(D_802BE0E4) -/* 324464 802BDB14 E430E0E4 */ swc1 $f16, %lo(D_802BE0E4)($at) -/* 324468 802BDB18 4600140D */ trunc.w.s $f16, $f2 -/* 32446C 802BDB1C 3C01802C */ lui $at, %hi(D_802BE0E8) -/* 324470 802BDB20 E430E0E8 */ swc1 $f16, %lo(D_802BE0E8)($at) -/* 324474 802BDB24 4600040D */ trunc.w.s $f16, $f0 -/* 324478 802BDB28 3C01802C */ lui $at, %hi(D_802BE0EC) -/* 32447C 802BDB2C E430E0EC */ swc1 $f16, %lo(D_802BE0EC)($at) -/* 324480 802BDB30 144000A5 */ bnez $v0, .L802BDDC8 -/* 324484 802BDB34 0000102D */ daddu $v0, $zero, $zero -/* 324488 802BDB38 0240202D */ daddu $a0, $s2, $zero -/* 32448C 802BDB3C C6600080 */ lwc1 $f0, 0x80($s3) -/* 324490 802BDB40 24050007 */ addiu $a1, $zero, 7 -/* 324494 802BDB44 E480000C */ swc1 $f0, 0xc($a0) -/* 324498 802BDB48 9266000E */ lbu $a2, 0xe($s3) -/* 32449C 802BDB4C 0000382D */ daddu $a3, $zero, $zero -/* 3244A0 802BDB50 AFA00010 */ sw $zero, 0x10($sp) -/* 3244A4 802BDB54 AFA00014 */ sw $zero, 0x14($sp) -/* 3244A8 802BDB58 0C00F589 */ jal func_8003D624 -/* 3244AC 802BDB5C AFA00018 */ sw $zero, 0x18($sp) -/* 3244B0 802BDB60 3C040001 */ lui $a0, 1 -/* 3244B4 802BDB64 0C037FDE */ jal suggest_player_anim_setUnkFlag -/* 3244B8 802BDB68 34840014 */ ori $a0, $a0, 0x14 -/* 3244BC 802BDB6C 2404200E */ addiu $a0, $zero, 0x200e -/* 3244C0 802BDB70 0000282D */ daddu $a1, $zero, $zero -/* 3244C4 802BDB74 0C052742 */ jal sfx_play_sound_at_npc -/* 3244C8 802BDB78 2406FFFC */ addiu $a2, $zero, -4 -/* 3244CC 802BDB7C 24020001 */ addiu $v0, $zero, 1 -/* 3244D0 802BDB80 080AF771 */ j L802BDDC4_324714 -/* 3244D4 802BDB84 AE820070 */ sw $v0, 0x70($s4) -glabel L802BDB88_3244D8 -/* 3244D8 802BDB88 86220002 */ lh $v0, 2($s1) -/* 3244DC 802BDB8C 04400038 */ bltz $v0, .L802BDC70 -/* 3244E0 802BDB90 00000000 */ nop -/* 3244E4 802BDB94 9262000E */ lbu $v0, 0xe($s3) -/* 3244E8 802BDB98 2442FFF8 */ addiu $v0, $v0, -8 -/* 3244EC 802BDB9C A262000E */ sb $v0, 0xe($s3) -/* 3244F0 802BDBA0 304200FF */ andi $v0, $v0, 0xff -/* 3244F4 802BDBA4 2C420081 */ sltiu $v0, $v0, 0x81 -/* 3244F8 802BDBA8 1040000E */ beqz $v0, .L802BDBE4 -/* 3244FC 802BDBAC 24020080 */ addiu $v0, $zero, 0x80 -/* 324500 802BDBB0 A262000E */ sb $v0, 0xe($s3) -/* 324504 802BDBB4 24020016 */ addiu $v0, $zero, 0x16 -/* 324508 802BDBB8 A24200AA */ sb $v0, 0xaa($s2) -/* 32450C 802BDBBC 8E820070 */ lw $v0, 0x70($s4) -/* 324510 802BDBC0 24420001 */ addiu $v0, $v0, 1 -/* 324514 802BDBC4 AE820070 */ sw $v0, 0x70($s4) -/* 324518 802BDBC8 8E620000 */ lw $v0, ($s3) -/* 32451C 802BDBCC 2403FEFF */ addiu $v1, $zero, -0x101 -/* 324520 802BDBD0 00431024 */ and $v0, $v0, $v1 -/* 324524 802BDBD4 AE620000 */ sw $v0, ($s3) -/* 324528 802BDBD8 8E420000 */ lw $v0, ($s2) -/* 32452C 802BDBDC 34420040 */ ori $v0, $v0, 0x40 -/* 324530 802BDBE0 AE420000 */ sw $v0, ($s2) -.L802BDBE4: -/* 324534 802BDBE4 0C044181 */ jal get_shadow_by_index -/* 324538 802BDBE8 8E440078 */ lw $a0, 0x78($s2) -/* 32453C 802BDBEC 0240202D */ daddu $a0, $s2, $zero -/* 324540 802BDBF0 9263000E */ lbu $v1, 0xe($s3) -/* 324544 802BDBF4 24050007 */ addiu $a1, $zero, 7 -/* 324548 802BDBF8 00031842 */ srl $v1, $v1, 1 -/* 32454C 802BDBFC A0430005 */ sb $v1, 5($v0) -/* 324550 802BDC00 9266000E */ lbu $a2, 0xe($s3) -/* 324554 802BDC04 0000382D */ daddu $a3, $zero, $zero -/* 324558 802BDC08 AFA00010 */ sw $zero, 0x10($sp) -/* 32455C 802BDC0C AFA00014 */ sw $zero, 0x14($sp) -/* 324560 802BDC10 0C00F589 */ jal func_8003D624 -/* 324564 802BDC14 AFA00018 */ sw $zero, 0x18($sp) -/* 324568 802BDC18 C6600028 */ lwc1 $f0, 0x28($s3) -/* 32456C 802BDC1C 3C01802C */ lui $at, %hi(D_802BE0E4) -/* 324570 802BDC20 C422E0E4 */ lwc1 $f2, %lo(D_802BE0E4)($at) -/* 324574 802BDC24 468010A0 */ cvt.s.w $f2, $f2 -/* 324578 802BDC28 46020001 */ sub.s $f0, $f0, $f2 -/* 32457C 802BDC2C E6400038 */ swc1 $f0, 0x38($s2) -/* 324580 802BDC30 C660002C */ lwc1 $f0, 0x2c($s3) -/* 324584 802BDC34 3C01802C */ lui $at, %hi(D_802BE0E8) -/* 324588 802BDC38 C422E0E8 */ lwc1 $f2, %lo(D_802BE0E8)($at) -/* 32458C 802BDC3C 468010A0 */ cvt.s.w $f2, $f2 -/* 324590 802BDC40 46020001 */ sub.s $f0, $f0, $f2 -/* 324594 802BDC44 E640003C */ swc1 $f0, 0x3c($s2) -/* 324598 802BDC48 C6600030 */ lwc1 $f0, 0x30($s3) -/* 32459C 802BDC4C 3C01802C */ lui $at, %hi(D_802BE0EC) -/* 3245A0 802BDC50 C422E0EC */ lwc1 $f2, %lo(D_802BE0EC)($at) -/* 3245A4 802BDC54 468010A0 */ cvt.s.w $f2, $f2 -/* 3245A8 802BDC58 46020001 */ sub.s $f0, $f0, $f2 -/* 3245AC 802BDC5C 080AF771 */ j L802BDDC4_324714 -/* 3245B0 802BDC60 E6400040 */ swc1 $f0, 0x40($s2) -glabel L802BDC64_3245B4 -/* 3245B4 802BDC64 86220002 */ lh $v0, 2($s1) -/* 3245B8 802BDC68 04410005 */ bgez $v0, .L802BDC80 -/* 3245BC 802BDC6C 00000000 */ nop -.L802BDC70: -/* 3245C0 802BDC70 0C0AF77C */ jal func_802BDDF0_324740 -/* 3245C4 802BDC74 0240202D */ daddu $a0, $s2, $zero -/* 3245C8 802BDC78 080AF772 */ j .L802BDDC8 -/* 3245CC 802BDC7C 24020002 */ addiu $v0, $zero, 2 -.L802BDC80: -/* 3245D0 802BDC80 C6600028 */ lwc1 $f0, 0x28($s3) -/* 3245D4 802BDC84 3C01802C */ lui $at, %hi(D_802BE0E4) -/* 3245D8 802BDC88 C422E0E4 */ lwc1 $f2, %lo(D_802BE0E4)($at) -/* 3245DC 802BDC8C 468010A0 */ cvt.s.w $f2, $f2 -/* 3245E0 802BDC90 46020001 */ sub.s $f0, $f0, $f2 -/* 3245E4 802BDC94 E6400038 */ swc1 $f0, 0x38($s2) -/* 3245E8 802BDC98 C660002C */ lwc1 $f0, 0x2c($s3) -/* 3245EC 802BDC9C 3C01802C */ lui $at, %hi(D_802BE0E8) -/* 3245F0 802BDCA0 C422E0E8 */ lwc1 $f2, %lo(D_802BE0E8)($at) -/* 3245F4 802BDCA4 468010A0 */ cvt.s.w $f2, $f2 -/* 3245F8 802BDCA8 46020001 */ sub.s $f0, $f0, $f2 -/* 3245FC 802BDCAC E640003C */ swc1 $f0, 0x3c($s2) -/* 324600 802BDCB0 C6600030 */ lwc1 $f0, 0x30($s3) -/* 324604 802BDCB4 3C01802C */ lui $at, %hi(D_802BE0EC) -/* 324608 802BDCB8 C422E0EC */ lwc1 $f2, %lo(D_802BE0EC)($at) -/* 32460C 802BDCBC 468010A0 */ cvt.s.w $f2, $f2 -/* 324610 802BDCC0 46020001 */ sub.s $f0, $f0, $f2 -/* 324614 802BDCC4 44806000 */ mtc1 $zero, $f12 -/* 324618 802BDCC8 E6400040 */ swc1 $f0, 0x40($s2) -/* 32461C 802BDCCC 86A20004 */ lh $v0, 4($s5) -/* 324620 802BDCD0 86A30006 */ lh $v1, 6($s5) -/* 324624 802BDCD4 44828000 */ mtc1 $v0, $f16 -/* 324628 802BDCD8 00000000 */ nop -/* 32462C 802BDCDC 46808420 */ cvt.s.w $f16, $f16 -/* 324630 802BDCE0 44068000 */ mfc1 $a2, $f16 -/* 324634 802BDCE4 44838000 */ mtc1 $v1, $f16 -/* 324638 802BDCE8 00000000 */ nop -/* 32463C 802BDCEC 46808420 */ cvt.s.w $f16, $f16 -/* 324640 802BDCF0 44078000 */ mfc1 $a3, $f16 -/* 324644 802BDCF4 0C00A7B5 */ jal dist2D -/* 324648 802BDCF8 46006386 */ mov.s $f14, $f12 -/* 32464C 802BDCFC 86220002 */ lh $v0, 2($s1) -/* 324650 802BDD00 04400010 */ bltz $v0, .L802BDD44 -/* 324654 802BDD04 46000086 */ mov.s $f2, $f0 -/* 324658 802BDD08 3C014120 */ lui $at, 0x4120 -/* 32465C 802BDD0C 44810000 */ mtc1 $at, $f0 -/* 324660 802BDD10 00000000 */ nop -/* 324664 802BDD14 4602003C */ c.lt.s $f0, $f2 -/* 324668 802BDD18 00000000 */ nop -/* 32466C 802BDD1C 45010009 */ bc1t .L802BDD44 -/* 324670 802BDD20 00000000 */ nop -/* 324674 802BDD24 8EA2000C */ lw $v0, 0xc($s5) -/* 324678 802BDD28 30424004 */ andi $v0, $v0, 0x4004 -/* 32467C 802BDD2C 14400005 */ bnez $v0, .L802BDD44 -/* 324680 802BDD30 00000000 */ nop -/* 324684 802BDD34 8E620000 */ lw $v0, ($s3) -/* 324688 802BDD38 30420800 */ andi $v0, $v0, 0x800 -/* 32468C 802BDD3C 10400022 */ beqz $v0, .L802BDDC8 -/* 324690 802BDD40 0000102D */ daddu $v0, $zero, $zero -.L802BDD44: -/* 324694 802BDD44 0C0AF550 */ jal func_802BD540_323E90 -/* 324698 802BDD48 00000000 */ nop -/* 32469C 802BDD4C 0441001E */ bgez $v0, .L802BDDC8 -/* 3246A0 802BDD50 0000102D */ daddu $v0, $zero, $zero -/* 3246A4 802BDD54 8E820070 */ lw $v0, 0x70($s4) -/* 3246A8 802BDD58 24030003 */ addiu $v1, $zero, 3 -/* 3246AC 802BDD5C AE830074 */ sw $v1, 0x74($s4) -/* 3246B0 802BDD60 24420001 */ addiu $v0, $v0, 1 -/* 3246B4 802BDD64 AE820070 */ sw $v0, 0x70($s4) -/* 3246B8 802BDD68 82620015 */ lb $v0, 0x15($s3) -/* 3246BC 802BDD6C 080AF771 */ j L802BDDC4_324714 -/* 3246C0 802BDD70 AE820078 */ sw $v0, 0x78($s4) -glabel L802BDD74_3246C4 -/* 3246C4 802BDD74 8E820074 */ lw $v0, 0x74($s4) -/* 3246C8 802BDD78 14400008 */ bnez $v0, .L802BDD9C -/* 3246CC 802BDD7C 2442FFFF */ addiu $v0, $v0, -1 -/* 3246D0 802BDD80 82630015 */ lb $v1, 0x15($s3) -/* 3246D4 802BDD84 8E820078 */ lw $v0, 0x78($s4) -/* 3246D8 802BDD88 0043102A */ slt $v0, $v0, $v1 -/* 3246DC 802BDD8C 10400005 */ beqz $v0, .L802BDDA4 -/* 3246E0 802BDD90 24020002 */ addiu $v0, $zero, 2 -/* 3246E4 802BDD94 080AF771 */ j L802BDDC4_324714 -/* 3246E8 802BDD98 AE820070 */ sw $v0, 0x70($s4) -.L802BDD9C: -/* 3246EC 802BDD9C 080AF771 */ j L802BDDC4_324714 -/* 3246F0 802BDDA0 AE820074 */ sw $v0, 0x74($s4) -.L802BDDA4: -/* 3246F4 802BDDA4 2404200F */ addiu $a0, $zero, 0x200f -/* 3246F8 802BDDA8 0000282D */ daddu $a1, $zero, $zero -/* 3246FC 802BDDAC 0C052742 */ jal sfx_play_sound_at_npc -/* 324700 802BDDB0 2406FFFC */ addiu $a2, $zero, -4 -/* 324704 802BDDB4 0C0AF77C */ jal func_802BDDF0_324740 -/* 324708 802BDDB8 0240202D */ daddu $a0, $s2, $zero -/* 32470C 802BDDBC 080AF772 */ j .L802BDDC8 -/* 324710 802BDDC0 24020001 */ addiu $v0, $zero, 1 -glabel L802BDDC4_324714 -/* 324714 802BDDC4 0000102D */ daddu $v0, $zero, $zero -.L802BDDC8: -/* 324718 802BDDC8 8FBF0038 */ lw $ra, 0x38($sp) -/* 32471C 802BDDCC 8FB50034 */ lw $s5, 0x34($sp) -/* 324720 802BDDD0 8FB40030 */ lw $s4, 0x30($sp) -/* 324724 802BDDD4 8FB3002C */ lw $s3, 0x2c($sp) -/* 324728 802BDDD8 8FB20028 */ lw $s2, 0x28($sp) -/* 32472C 802BDDDC 8FB10024 */ lw $s1, 0x24($sp) -/* 324730 802BDDE0 8FB00020 */ lw $s0, 0x20($sp) -/* 324734 802BDDE4 D7B40040 */ ldc1 $f20, 0x40($sp) -/* 324738 802BDDE8 03E00008 */ jr $ra -/* 32473C 802BDDEC 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/ver/us/asm/nonmatchings/world/partner/bow/func_802BDDF0_324740.s b/ver/us/asm/nonmatchings/world/partner/bow/func_802BDDF0_324740.s deleted file mode 100644 index 05b40ddbd7..0000000000 --- a/ver/us/asm/nonmatchings/world/partner/bow/func_802BDDF0_324740.s +++ /dev/null @@ -1,76 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802BDDF0_324740 -/* 324740 802BDDF0 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 324744 802BDDF4 AFB10024 */ sw $s1, 0x24($sp) -/* 324748 802BDDF8 0080882D */ daddu $s1, $a0, $zero -/* 32474C 802BDDFC AFB00020 */ sw $s0, 0x20($sp) -/* 324750 802BDE00 3C108011 */ lui $s0, %hi(gPlayerStatus) -/* 324754 802BDE04 2610EFC8 */ addiu $s0, $s0, %lo(gPlayerStatus) -/* 324758 802BDE08 240200FF */ addiu $v0, $zero, 0xff -/* 32475C 802BDE0C 0000282D */ daddu $a1, $zero, $zero -/* 324760 802BDE10 00A0302D */ daddu $a2, $a1, $zero -/* 324764 802BDE14 00A0382D */ daddu $a3, $a1, $zero -/* 324768 802BDE18 AFBF0034 */ sw $ra, 0x34($sp) -/* 32476C 802BDE1C AFB40030 */ sw $s4, 0x30($sp) -/* 324770 802BDE20 AFB3002C */ sw $s3, 0x2c($sp) -/* 324774 802BDE24 AFB20028 */ sw $s2, 0x28($sp) -/* 324778 802BDE28 A202000E */ sb $v0, 0xe($s0) -/* 32477C 802BDE2C AFA00010 */ sw $zero, 0x10($sp) -/* 324780 802BDE30 AFA00014 */ sw $zero, 0x14($sp) -/* 324784 802BDE34 0C00F589 */ jal func_8003D624 -/* 324788 802BDE38 AFA00018 */ sw $zero, 0x18($sp) -/* 32478C 802BDE3C 8E240078 */ lw $a0, 0x78($s1) -/* 324790 802BDE40 24020011 */ addiu $v0, $zero, 0x11 -/* 324794 802BDE44 0C044181 */ jal get_shadow_by_index -/* 324798 802BDE48 A22200AA */ sb $v0, 0xaa($s1) -/* 32479C 802BDE4C 9203000E */ lbu $v1, 0xe($s0) -/* 3247A0 802BDE50 3C12802C */ lui $s2, %hi(D_802BE0C4) -/* 3247A4 802BDE54 2652E0C4 */ addiu $s2, $s2, %lo(D_802BE0C4) -/* 3247A8 802BDE58 00031842 */ srl $v1, $v1, 1 -/* 3247AC 802BDE5C A0430005 */ sb $v1, 5($v0) -/* 3247B0 802BDE60 8E420000 */ lw $v0, ($s2) -/* 3247B4 802BDE64 3C138011 */ lui $s3, %hi(gPartnerActionStatus) -/* 3247B8 802BDE68 2673EBB0 */ addiu $s3, $s3, %lo(gPartnerActionStatus) -/* 3247BC 802BDE6C 10400003 */ beqz $v0, .L802BDE7C -/* 3247C0 802BDE70 0200A02D */ daddu $s4, $s0, $zero -/* 3247C4 802BDE74 0C038069 */ jal enable_player_input -/* 3247C8 802BDE78 00000000 */ nop -.L802BDE7C: -/* 3247CC 802BDE7C 3C03FFFF */ lui $v1, 0xffff -/* 3247D0 802BDE80 8E020000 */ lw $v0, ($s0) -/* 3247D4 802BDE84 34637FFD */ ori $v1, $v1, 0x7ffd -/* 3247D8 802BDE88 00431024 */ and $v0, $v0, $v1 -/* 3247DC 802BDE8C AE020000 */ sw $v0, ($s0) -/* 3247E0 802BDE90 8E220000 */ lw $v0, ($s1) -/* 3247E4 802BDE94 2403FFBD */ addiu $v1, $zero, -0x43 -/* 3247E8 802BDE98 00431024 */ and $v0, $v0, $v1 -/* 3247EC 802BDE9C AE220000 */ sw $v0, ($s1) -/* 3247F0 802BDEA0 8E020000 */ lw $v0, ($s0) -/* 3247F4 802BDEA4 0000202D */ daddu $a0, $zero, $zero -/* 3247F8 802BDEA8 30420800 */ andi $v0, $v0, 0x800 -/* 3247FC 802BDEAC 10400002 */ beqz $v0, .L802BDEB8 -/* 324800 802BDEB0 AE400000 */ sw $zero, ($s2) -/* 324804 802BDEB4 24040017 */ addiu $a0, $zero, 0x17 -.L802BDEB8: -/* 324808 802BDEB8 0C039769 */ jal set_action_state -/* 32480C 802BDEBC 00000000 */ nop -/* 324810 802BDEC0 0220202D */ daddu $a0, $s1, $zero -/* 324814 802BDEC4 A2600000 */ sb $zero, ($s3) -/* 324818 802BDEC8 A2600003 */ sb $zero, 3($s3) -/* 32481C 802BDECC 8E820000 */ lw $v0, ($s4) -/* 324820 802BDED0 2403FEFF */ addiu $v1, $zero, -0x101 -/* 324824 802BDED4 00431024 */ and $v0, $v0, $v1 -/* 324828 802BDED8 0C03BD17 */ jal partner_clear_player_tracking -/* 32482C 802BDEDC AE820000 */ sw $v0, ($s4) -/* 324830 802BDEE0 8FBF0034 */ lw $ra, 0x34($sp) -/* 324834 802BDEE4 8FB40030 */ lw $s4, 0x30($sp) -/* 324838 802BDEE8 8FB3002C */ lw $s3, 0x2c($sp) -/* 32483C 802BDEEC 8FB20028 */ lw $s2, 0x28($sp) -/* 324840 802BDEF0 8FB10024 */ lw $s1, 0x24($sp) -/* 324844 802BDEF4 8FB00020 */ lw $s0, 0x20($sp) -/* 324848 802BDEF8 3C01802C */ lui $at, %hi(D_802BE0C0) -/* 32484C 802BDEFC AC20E0C0 */ sw $zero, %lo(D_802BE0C0)($at) -/* 324850 802BDF00 03E00008 */ jr $ra -/* 324854 802BDF04 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/ver/us/asm/nonmatchings/world/partner/bow/func_802BDF08_324858.s b/ver/us/asm/nonmatchings/world/partner/bow/func_802BDF08_324858.s deleted file mode 100644 index cf0358707e..0000000000 --- a/ver/us/asm/nonmatchings/world/partner/bow/func_802BDF08_324858.s +++ /dev/null @@ -1,29 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802BDF08_324858 -/* 324858 802BDF08 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 32485C 802BDF0C AFBF0014 */ sw $ra, 0x14($sp) -/* 324860 802BDF10 AFB00010 */ sw $s0, 0x10($sp) -/* 324864 802BDF14 10A0000C */ beqz $a1, .L802BDF48 -/* 324868 802BDF18 8C90014C */ lw $s0, 0x14c($a0) -/* 32486C 802BDF1C 0C03BA65 */ jal partner_init_put_away -/* 324870 802BDF20 0200202D */ daddu $a0, $s0, $zero -/* 324874 802BDF24 3C02802C */ lui $v0, %hi(D_802BE0C0) -/* 324878 802BDF28 8C42E0C0 */ lw $v0, %lo(D_802BE0C0)($v0) -/* 32487C 802BDF2C 10400004 */ beqz $v0, .L802BDF40 -/* 324880 802BDF30 2404200F */ addiu $a0, $zero, 0x200f -/* 324884 802BDF34 0000282D */ daddu $a1, $zero, $zero -/* 324888 802BDF38 0C052742 */ jal sfx_play_sound_at_npc -/* 32488C 802BDF3C 2406FFFC */ addiu $a2, $zero, -4 -.L802BDF40: -/* 324890 802BDF40 0C0AF77C */ jal func_802BDDF0_324740 -/* 324894 802BDF44 0200202D */ daddu $a0, $s0, $zero -.L802BDF48: -/* 324898 802BDF48 0C03BA6E */ jal partner_put_away -/* 32489C 802BDF4C 0200202D */ daddu $a0, $s0, $zero -/* 3248A0 802BDF50 8FBF0014 */ lw $ra, 0x14($sp) -/* 3248A4 802BDF54 8FB00010 */ lw $s0, 0x10($sp) -/* 3248A8 802BDF58 0002102B */ sltu $v0, $zero, $v0 -/* 3248AC 802BDF5C 03E00008 */ jr $ra -/* 3248B0 802BDF60 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/ver/us/asm/nonmatchings/world/partner/bow/func_802BDF64_3248B4.s b/ver/us/asm/nonmatchings/world/partner/bow/func_802BDF64_3248B4.s deleted file mode 100644 index cee1200342..0000000000 --- a/ver/us/asm/nonmatchings/world/partner/bow/func_802BDF64_3248B4.s +++ /dev/null @@ -1,36 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802BDF64_3248B4 -/* 3248B4 802BDF64 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 3248B8 802BDF68 AFB00010 */ sw $s0, 0x10($sp) -/* 3248BC 802BDF6C AFB20018 */ sw $s2, 0x18($sp) -/* 3248C0 802BDF70 3C12802C */ lui $s2, %hi(D_802BE0C0) -/* 3248C4 802BDF74 2652E0C0 */ addiu $s2, $s2, %lo(D_802BE0C0) -/* 3248C8 802BDF78 AFBF001C */ sw $ra, 0x1c($sp) -/* 3248CC 802BDF7C AFB10014 */ sw $s1, 0x14($sp) -/* 3248D0 802BDF80 8E420000 */ lw $v0, ($s2) -/* 3248D4 802BDF84 3C118011 */ lui $s1, %hi(gPartnerActionStatus) -/* 3248D8 802BDF88 2631EBB0 */ addiu $s1, $s1, %lo(gPartnerActionStatus) -/* 3248DC 802BDF8C 1040000E */ beqz $v0, .L802BDFC8 -/* 3248E0 802BDF90 0080802D */ daddu $s0, $a0, $zero -/* 3248E4 802BDF94 0C038069 */ jal enable_player_input -/* 3248E8 802BDF98 00000000 */ nop -/* 3248EC 802BDF9C 0C039769 */ jal set_action_state -/* 3248F0 802BDFA0 0000202D */ daddu $a0, $zero, $zero -/* 3248F4 802BDFA4 0C03BD17 */ jal partner_clear_player_tracking -/* 3248F8 802BDFA8 0200202D */ daddu $a0, $s0, $zero -/* 3248FC 802BDFAC A2200000 */ sb $zero, ($s1) -/* 324900 802BDFB0 A2200003 */ sb $zero, 3($s1) -/* 324904 802BDFB4 AE400000 */ sw $zero, ($s2) -/* 324908 802BDFB8 8E020000 */ lw $v0, ($s0) -/* 32490C 802BDFBC 2403FFFD */ addiu $v1, $zero, -3 -/* 324910 802BDFC0 00431024 */ and $v0, $v0, $v1 -/* 324914 802BDFC4 AE020000 */ sw $v0, ($s0) -.L802BDFC8: -/* 324918 802BDFC8 8FBF001C */ lw $ra, 0x1c($sp) -/* 32491C 802BDFCC 8FB20018 */ lw $s2, 0x18($sp) -/* 324920 802BDFD0 8FB10014 */ lw $s1, 0x14($sp) -/* 324924 802BDFD4 8FB00010 */ lw $s0, 0x10($sp) -/* 324928 802BDFD8 03E00008 */ jr $ra -/* 32492C 802BDFDC 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/world/partner/lakilester/func_802BF4F0_323040.s b/ver/us/asm/nonmatchings/world/partner/lakilester/func_802BF4F0_323040.s deleted file mode 100644 index 3864f460a5..0000000000 --- a/ver/us/asm/nonmatchings/world/partner/lakilester/func_802BF4F0_323040.s +++ /dev/null @@ -1,352 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_802BF4F0_323040 -/* 323040 802BF4F0 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 323044 802BF4F4 AFB20038 */ sw $s2, 0x38($sp) -/* 323048 802BF4F8 3C128011 */ lui $s2, %hi(gPlayerStatus) -/* 32304C 802BF4FC 2652EFC8 */ addiu $s2, $s2, %lo(gPlayerStatus) -/* 323050 802BF500 AFB3003C */ sw $s3, 0x3c($sp) -/* 323054 802BF504 3C138011 */ lui $s3, %hi(gPartnerActionStatus) -/* 323058 802BF508 2673EBB0 */ addiu $s3, $s3, %lo(gPartnerActionStatus) -/* 32305C 802BF50C AFBF0040 */ sw $ra, 0x40($sp) -/* 323060 802BF510 AFB10034 */ sw $s1, 0x34($sp) -/* 323064 802BF514 AFB00030 */ sw $s0, 0x30($sp) -/* 323068 802BF518 10A00014 */ beqz $a1, .L802BF56C -/* 32306C 802BF51C 8C90014C */ lw $s0, 0x14c($a0) -/* 323070 802BF520 3C02802C */ lui $v0, %hi(D_802BFF0C) -/* 323074 802BF524 8C42FF0C */ lw $v0, %lo(D_802BFF0C)($v0) -/* 323078 802BF528 14400002 */ bnez $v0, .L802BF534 -/* 32307C 802BF52C 0000182D */ daddu $v1, $zero, $zero -/* 323080 802BF530 24030003 */ addiu $v1, $zero, 3 -.L802BF534: -/* 323084 802BF534 3C01802C */ lui $at, %hi(D_802BFF00) -/* 323088 802BF538 AC23FF00 */ sw $v1, %lo(D_802BFF00)($at) -/* 32308C 802BF53C 0C03BA65 */ jal partner_init_put_away -/* 323090 802BF540 0200202D */ daddu $a0, $s0, $zero -/* 323094 802BF544 0C0AF5F7 */ jal func_802BD7DC -/* 323098 802BF548 00000000 */ nop -/* 32309C 802BF54C 3C02FFBF */ lui $v0, 0xffbf -/* 3230A0 802BF550 3442FFFF */ ori $v0, $v0, 0xffff -/* 3230A4 802BF554 8E430004 */ lw $v1, 4($s2) -/* 3230A8 802BF558 8E440000 */ lw $a0, ($s2) -/* 3230AC 802BF55C 00621824 */ and $v1, $v1, $v0 -/* 3230B0 802BF560 34840100 */ ori $a0, $a0, 0x100 -/* 3230B4 802BF564 AE430004 */ sw $v1, 4($s2) -/* 3230B8 802BF568 AE440000 */ sw $a0, ($s2) -.L802BF56C: -/* 3230BC 802BF56C 3C11802C */ lui $s1, %hi(D_802BFF00) -/* 3230C0 802BF570 2631FF00 */ addiu $s1, $s1, %lo(D_802BFF00) -/* 3230C4 802BF574 8E230000 */ lw $v1, ($s1) -/* 3230C8 802BF578 24020001 */ addiu $v0, $zero, 1 -/* 3230CC 802BF57C 1062005F */ beq $v1, $v0, .L802BF6FC -/* 3230D0 802BF580 28620002 */ slti $v0, $v1, 2 -/* 3230D4 802BF584 10400005 */ beqz $v0, .L802BF59C -/* 3230D8 802BF588 24020002 */ addiu $v0, $zero, 2 -/* 3230DC 802BF58C 10600007 */ beqz $v1, .L802BF5AC -/* 3230E0 802BF590 00000000 */ nop -/* 3230E4 802BF594 080AFE0E */ j .L802BF838 -/* 3230E8 802BF598 00000000 */ nop -.L802BF59C: -/* 3230EC 802BF59C 1062005D */ beq $v1, $v0, .L802BF714 -/* 3230F0 802BF5A0 00000000 */ nop -/* 3230F4 802BF5A4 080AFE0E */ j .L802BF838 -/* 3230F8 802BF5A8 00000000 */ nop -.L802BF5AC: -/* 3230FC 802BF5AC 0C0AF5F7 */ jal func_802BD7DC -/* 323100 802BF5B0 00000000 */ nop -/* 323104 802BF5B4 3C02800B */ lui $v0, %hi(gCameras) -/* 323108 802BF5B8 24421D80 */ addiu $v0, $v0, %lo(gCameras) -/* 32310C 802BF5BC C64200A8 */ lwc1 $f2, 0xa8($s2) -/* 323110 802BF5C0 3C0142B4 */ lui $at, 0x42b4 -/* 323114 802BF5C4 44813000 */ mtc1 $at, $f6 -/* 323118 802BF5C8 C444006C */ lwc1 $f4, 0x6c($v0) -/* 32311C 802BF5CC 4602303E */ c.le.s $f6, $f2 -/* 323120 802BF5D0 00000000 */ nop -/* 323124 802BF5D4 4500000E */ bc1f .L802BF610 -/* 323128 802BF5D8 00000000 */ nop -/* 32312C 802BF5DC 3C014387 */ lui $at, 0x4387 -/* 323130 802BF5E0 44810000 */ mtc1 $at, $f0 -/* 323134 802BF5E4 00000000 */ nop -/* 323138 802BF5E8 4600103C */ c.lt.s $f2, $f0 -/* 32313C 802BF5EC 00000000 */ nop -/* 323140 802BF5F0 45000007 */ bc1f .L802BF610 -/* 323144 802BF5F4 00000000 */ nop -/* 323148 802BF5F8 3C014334 */ lui $at, 0x4334 -/* 32314C 802BF5FC 44810000 */ mtc1 $at, $f0 -/* 323150 802BF600 00000000 */ nop -/* 323154 802BF604 46002000 */ add.s $f0, $f4, $f0 -/* 323158 802BF608 080AFD8B */ j .L802BF62C -/* 32315C 802BF60C 46060001 */ sub.s $f0, $f0, $f6 -.L802BF610: -/* 323160 802BF610 44800000 */ mtc1 $zero, $f0 -/* 323164 802BF614 00000000 */ nop -/* 323168 802BF618 46002000 */ add.s $f0, $f4, $f0 -/* 32316C 802BF61C 3C0142B4 */ lui $at, 0x42b4 -/* 323170 802BF620 44811000 */ mtc1 $at, $f2 -/* 323174 802BF624 00000000 */ nop -/* 323178 802BF628 46020001 */ sub.s $f0, $f0, $f2 -.L802BF62C: -/* 32317C 802BF62C E600000C */ swc1 $f0, 0xc($s0) -/* 323180 802BF630 C64C0028 */ lwc1 $f12, 0x28($s2) -/* 323184 802BF634 C64E0030 */ lwc1 $f14, 0x30($s2) -/* 323188 802BF638 8E060060 */ lw $a2, 0x60($s0) -/* 32318C 802BF63C 0C00A7B5 */ jal dist2D -/* 323190 802BF640 8E070068 */ lw $a3, 0x68($s0) -/* 323194 802BF644 E7A0002C */ swc1 $f0, 0x2c($sp) -/* 323198 802BF648 C6000064 */ lwc1 $f0, 0x64($s0) -/* 32319C 802BF64C C602003C */ lwc1 $f2, 0x3c($s0) -/* 3231A0 802BF650 2402000E */ addiu $v0, $zero, 0xe -/* 3231A4 802BF654 4600103C */ c.lt.s $f2, $f0 -/* 3231A8 802BF658 00000000 */ nop -/* 3231AC 802BF65C 45000009 */ bc1f .L802BF684 -/* 3231B0 802BF660 A602008E */ sh $v0, 0x8e($s0) -/* 3231B4 802BF664 46020001 */ sub.s $f0, $f0, $f2 -/* 3231B8 802BF668 3C014160 */ lui $at, 0x4160 -/* 3231BC 802BF66C 44811000 */ mtc1 $at, $f2 -/* 3231C0 802BF670 3C0140C0 */ lui $at, 0x40c0 -/* 3231C4 802BF674 44812000 */ mtc1 $at, $f4 -/* 3231C8 802BF678 46020003 */ div.s $f0, $f0, $f2 -/* 3231CC 802BF67C 080AFDA4 */ j .L802BF690 -/* 3231D0 802BF680 46040000 */ add.s $f0, $f0, $f4 -.L802BF684: -/* 3231D4 802BF684 3C0140C0 */ lui $at, 0x40c0 -/* 3231D8 802BF688 44810000 */ mtc1 $at, $f0 -/* 3231DC 802BF68C 00000000 */ nop -.L802BF690: -/* 3231E0 802BF690 E600001C */ swc1 $f0, 0x1c($s0) -/* 3231E4 802BF694 3C013F99 */ lui $at, 0x3f99 -/* 3231E8 802BF698 3421999A */ ori $at, $at, 0x999a -/* 3231EC 802BF69C 44810000 */ mtc1 $at, $f0 -/* 3231F0 802BF6A0 8E060060 */ lw $a2, 0x60($s0) -/* 3231F4 802BF6A4 8E070068 */ lw $a3, 0x68($s0) -/* 3231F8 802BF6A8 8602008E */ lh $v0, 0x8e($s0) -/* 3231FC 802BF6AC E6000014 */ swc1 $f0, 0x14($s0) -/* 323200 802BF6B0 C7A0002C */ lwc1 $f0, 0x2c($sp) -/* 323204 802BF6B4 44821000 */ mtc1 $v0, $f2 -/* 323208 802BF6B8 00000000 */ nop -/* 32320C 802BF6BC 468010A0 */ cvt.s.w $f2, $f2 -/* 323210 802BF6C0 46020003 */ div.s $f0, $f0, $f2 -/* 323214 802BF6C4 E6000018 */ swc1 $f0, 0x18($s0) -/* 323218 802BF6C8 C64C0028 */ lwc1 $f12, 0x28($s2) -/* 32321C 802BF6CC 0C00A720 */ jal atan2 -/* 323220 802BF6D0 C64E0030 */ lwc1 $f14, 0x30($s2) -/* 323224 802BF6D4 3C040001 */ lui $a0, 1 -/* 323228 802BF6D8 34840006 */ ori $a0, $a0, 6 -/* 32322C 802BF6DC 0C037FBF */ jal suggest_player_anim_clearUnkFlag -/* 323230 802BF6E0 E600000C */ swc1 $f0, 0xc($s0) -/* 323234 802BF6E4 3C03802C */ lui $v1, %hi(D_802BFF00) -/* 323238 802BF6E8 2463FF00 */ addiu $v1, $v1, %lo(D_802BFF00) -/* 32323C 802BF6EC 8C620000 */ lw $v0, ($v1) -/* 323240 802BF6F0 24420001 */ addiu $v0, $v0, 1 -/* 323244 802BF6F4 080AFE0E */ j .L802BF838 -/* 323248 802BF6F8 AC620000 */ sw $v0, ($v1) -.L802BF6FC: -/* 32324C 802BF6FC 3C040001 */ lui $a0, 1 -/* 323250 802BF700 0C037FBF */ jal suggest_player_anim_clearUnkFlag -/* 323254 802BF704 34840007 */ ori $a0, $a0, 7 -/* 323258 802BF708 8E220000 */ lw $v0, ($s1) -/* 32325C 802BF70C 24420001 */ addiu $v0, $v0, 1 -/* 323260 802BF710 AE220000 */ sw $v0, ($s1) -.L802BF714: -/* 323264 802BF714 C640002C */ lwc1 $f0, 0x2c($s2) -/* 323268 802BF718 C602001C */ lwc1 $f2, 0x1c($s0) -/* 32326C 802BF71C 46020000 */ add.s $f0, $f0, $f2 -/* 323270 802BF720 26440028 */ addiu $a0, $s2, 0x28 -/* 323274 802BF724 E640002C */ swc1 $f0, 0x2c($s2) -/* 323278 802BF728 C600001C */ lwc1 $f0, 0x1c($s0) -/* 32327C 802BF72C C6020014 */ lwc1 $f2, 0x14($s0) -/* 323280 802BF730 8E060018 */ lw $a2, 0x18($s0) -/* 323284 802BF734 46020001 */ sub.s $f0, $f0, $f2 -/* 323288 802BF738 8E07000C */ lw $a3, 0xc($s0) -/* 32328C 802BF73C 26450030 */ addiu $a1, $s2, 0x30 -/* 323290 802BF740 0C00A7E7 */ jal add_vec2D_polar -/* 323294 802BF744 E600001C */ swc1 $f0, 0x1c($s0) -/* 323298 802BF748 0C0392B6 */ jal func_800E4AD8 -/* 32329C 802BF74C 0000202D */ daddu $a0, $zero, $zero -/* 3232A0 802BF750 C602001C */ lwc1 $f2, 0x1c($s0) -/* 3232A4 802BF754 44800000 */ mtc1 $zero, $f0 -/* 3232A8 802BF758 00000000 */ nop -/* 3232AC 802BF75C 4600103E */ c.le.s $f2, $f0 -/* 3232B0 802BF760 00000000 */ nop -/* 3232B4 802BF764 45000011 */ bc1f .L802BF7AC -/* 3232B8 802BF768 0000202D */ daddu $a0, $zero, $zero -/* 3232BC 802BF76C 8E420000 */ lw $v0, ($s2) -/* 3232C0 802BF770 34420004 */ ori $v0, $v0, 4 -/* 3232C4 802BF774 AE420000 */ sw $v0, ($s2) -/* 3232C8 802BF778 C600001C */ lwc1 $f0, 0x1c($s0) -/* 3232CC 802BF77C 3C01C024 */ lui $at, 0xc024 -/* 3232D0 802BF780 44811800 */ mtc1 $at, $f3 -/* 3232D4 802BF784 44801000 */ mtc1 $zero, $f2 -/* 3232D8 802BF788 46000021 */ cvt.d.s $f0, $f0 -/* 3232DC 802BF78C 4622003C */ c.lt.d $f0, $f2 -/* 3232E0 802BF790 00000000 */ nop -/* 3232E4 802BF794 45000005 */ bc1f .L802BF7AC -/* 3232E8 802BF798 00000000 */ nop -/* 3232EC 802BF79C 3C01C120 */ lui $at, 0xc120 -/* 3232F0 802BF7A0 44810000 */ mtc1 $at, $f0 -/* 3232F4 802BF7A4 00000000 */ nop -/* 3232F8 802BF7A8 E600001C */ swc1 $f0, 0x1c($s0) -.L802BF7AC: -/* 3232FC 802BF7AC C6420028 */ lwc1 $f2, 0x28($s2) -/* 323300 802BF7B0 864200B0 */ lh $v0, 0xb0($s2) -/* 323304 802BF7B4 C6400030 */ lwc1 $f0, 0x30($s2) -/* 323308 802BF7B8 27A50020 */ addiu $a1, $sp, 0x20 -/* 32330C 802BF7BC E7A00028 */ swc1 $f0, 0x28($sp) -/* 323310 802BF7C0 44820000 */ mtc1 $v0, $f0 -/* 323314 802BF7C4 00000000 */ nop -/* 323318 802BF7C8 46800020 */ cvt.s.w $f0, $f0 -/* 32331C 802BF7CC E7A20020 */ swc1 $f2, 0x20($sp) -/* 323320 802BF7D0 C642002C */ lwc1 $f2, 0x2c($s2) -/* 323324 802BF7D4 864200B0 */ lh $v0, 0xb0($s2) -/* 323328 802BF7D8 46001080 */ add.s $f2, $f2, $f0 -/* 32332C 802BF7DC 44820000 */ mtc1 $v0, $f0 -/* 323330 802BF7E0 00000000 */ nop -/* 323334 802BF7E4 46800020 */ cvt.s.w $f0, $f0 -/* 323338 802BF7E8 27A2002C */ addiu $v0, $sp, 0x2c -/* 32333C 802BF7EC E7A0002C */ swc1 $f0, 0x2c($sp) -/* 323340 802BF7F0 E7A20024 */ swc1 $f2, 0x24($sp) -/* 323344 802BF7F4 AFA20010 */ sw $v0, 0x10($sp) -/* 323348 802BF7F8 C600000C */ lwc1 $f0, 0xc($s0) -/* 32334C 802BF7FC 27A60024 */ addiu $a2, $sp, 0x24 -/* 323350 802BF800 E7A00014 */ swc1 $f0, 0x14($sp) -/* 323354 802BF804 860200A6 */ lh $v0, 0xa6($s0) -/* 323358 802BF808 27A70028 */ addiu $a3, $sp, 0x28 -/* 32335C 802BF80C 44820000 */ mtc1 $v0, $f0 -/* 323360 802BF810 00000000 */ nop -/* 323364 802BF814 46800020 */ cvt.s.w $f0, $f0 -/* 323368 802BF818 0C0371DE */ jal npc_raycast_down_ahead -/* 32336C 802BF81C E7A00018 */ swc1 $f0, 0x18($sp) -/* 323370 802BF820 10400005 */ beqz $v0, .L802BF838 -/* 323374 802BF824 24020003 */ addiu $v0, $zero, 3 -/* 323378 802BF828 C7A00024 */ lwc1 $f0, 0x24($sp) -/* 32337C 802BF82C 3C01802C */ lui $at, %hi(D_802BFF00) -/* 323380 802BF830 AC22FF00 */ sw $v0, %lo(D_802BFF00)($at) -/* 323384 802BF834 E640002C */ swc1 $f0, 0x2c($s2) -.L802BF838: -/* 323388 802BF838 3C02800B */ lui $v0, %hi(gCameras) -/* 32338C 802BF83C 24421D80 */ addiu $v0, $v0, %lo(gCameras) -/* 323390 802BF840 C6400028 */ lwc1 $f0, 0x28($s2) -/* 323394 802BF844 C642002C */ lwc1 $f2, 0x2c($s2) -/* 323398 802BF848 C6440030 */ lwc1 $f4, 0x30($s2) -/* 32339C 802BF84C 3C11802C */ lui $s1, %hi(D_802BFF00) -/* 3233A0 802BF850 2631FF00 */ addiu $s1, $s1, %lo(D_802BFF00) -/* 3233A4 802BF854 E4400060 */ swc1 $f0, 0x60($v0) -/* 3233A8 802BF858 E4420064 */ swc1 $f2, 0x64($v0) -/* 3233AC 802BF85C E4440068 */ swc1 $f4, 0x68($v0) -/* 3233B0 802BF860 8E230000 */ lw $v1, ($s1) -/* 3233B4 802BF864 24020004 */ addiu $v0, $zero, 4 -/* 3233B8 802BF868 10620041 */ beq $v1, $v0, .L802BF970 -/* 3233BC 802BF86C 28620005 */ slti $v0, $v1, 5 -/* 3233C0 802BF870 10400005 */ beqz $v0, .L802BF888 -/* 3233C4 802BF874 24020003 */ addiu $v0, $zero, 3 -/* 3233C8 802BF878 10620008 */ beq $v1, $v0, .L802BF89C -/* 3233CC 802BF87C 0000102D */ daddu $v0, $zero, $zero -/* 3233D0 802BF880 080AFE79 */ j .L802BF9E4 -/* 3233D4 802BF884 00000000 */ nop -.L802BF888: -/* 3233D8 802BF888 24020005 */ addiu $v0, $zero, 5 -/* 3233DC 802BF88C 1062004F */ beq $v1, $v0, .L802BF9CC -/* 3233E0 802BF890 00000000 */ nop -/* 3233E4 802BF894 080AFE79 */ j .L802BF9E4 -/* 3233E8 802BF898 0000102D */ daddu $v0, $zero, $zero -.L802BF89C: -/* 3233EC 802BF89C 2402FFB7 */ addiu $v0, $zero, -0x49 -/* 3233F0 802BF8A0 3C05802C */ lui $a1, %hi(D_802BFF08) -/* 3233F4 802BF8A4 24A5FF08 */ addiu $a1, $a1, %lo(D_802BFF08) -/* 3233F8 802BF8A8 8E030000 */ lw $v1, ($s0) -/* 3233FC 802BF8AC 8CA40000 */ lw $a0, ($a1) -/* 323400 802BF8B0 00621824 */ and $v1, $v1, $v0 -/* 323404 802BF8B4 10800003 */ beqz $a0, .L802BF8C4 -/* 323408 802BF8B8 AE030000 */ sw $v1, ($s0) -/* 32340C 802BF8BC 0C038050 */ jal enable_player_static_collisions -/* 323410 802BF8C0 ACA00000 */ sw $zero, ($a1) -.L802BF8C4: -/* 323414 802BF8C4 0C03802C */ jal enable_player_shadow -/* 323418 802BF8C8 00000000 */ nop -/* 32341C 802BF8CC 8E420000 */ lw $v0, ($s2) -/* 323420 802BF8D0 30420800 */ andi $v0, $v0, 0x800 -/* 323424 802BF8D4 10400014 */ beqz $v0, .L802BF928 -/* 323428 802BF8D8 00000000 */ nop -/* 32342C 802BF8DC 3C03802C */ lui $v1, %hi(D_802BFF04) -/* 323430 802BF8E0 2463FF04 */ addiu $v1, $v1, %lo(D_802BFF04) -/* 323434 802BF8E4 8C620000 */ lw $v0, ($v1) -/* 323438 802BF8E8 A2600003 */ sb $zero, 3($s3) -/* 32343C 802BF8EC 10400003 */ beqz $v0, .L802BF8FC -/* 323440 802BF8F0 A2600000 */ sb $zero, ($s3) -/* 323444 802BF8F4 0C038069 */ jal enable_player_input -/* 323448 802BF8F8 AC600000 */ sw $zero, ($v1) -.L802BF8FC: -/* 32344C 802BF8FC 3C028007 */ lui $v0, %hi(gGameStatusPtr) -/* 323450 802BF900 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0) -/* 323454 802BF904 A040007D */ sb $zero, 0x7d($v0) -/* 323458 802BF908 3C01802C */ lui $at, %hi(D_802BFF0C) -/* 32345C 802BF90C AC20FF0C */ sw $zero, %lo(D_802BFF0C)($at) -/* 323460 802BF910 0C03BD17 */ jal partner_clear_player_tracking -/* 323464 802BF914 0200202D */ daddu $a0, $s0, $zero -/* 323468 802BF918 0C039769 */ jal set_action_state -/* 32346C 802BF91C 24040015 */ addiu $a0, $zero, 0x15 -/* 323470 802BF920 080AFE79 */ j .L802BF9E4 -/* 323474 802BF924 24020001 */ addiu $v0, $zero, 1 -.L802BF928: -/* 323478 802BF928 3C02802C */ lui $v0, %hi(D_802BFF0C) -/* 32347C 802BF92C 8C42FF0C */ lw $v0, %lo(D_802BFF0C)($v0) -/* 323480 802BF930 14400005 */ bnez $v0, .L802BF948 -/* 323484 802BF934 00000000 */ nop -/* 323488 802BF938 0C0391D1 */ jal phys_main_collision_below -/* 32348C 802BF93C 00000000 */ nop -/* 323490 802BF940 080AFE56 */ j .L802BF958 -/* 323494 802BF944 00000000 */ nop -.L802BF948: -/* 323498 802BF948 0C039769 */ jal set_action_state -/* 32349C 802BF94C 24040008 */ addiu $a0, $zero, 8 -/* 3234A0 802BF950 0C038C1B */ jal gravity_use_fall_parms -/* 3234A4 802BF954 00000000 */ nop -.L802BF958: -/* 3234A8 802BF958 3C03802C */ lui $v1, %hi(D_802BFF00) -/* 3234AC 802BF95C 2463FF00 */ addiu $v1, $v1, %lo(D_802BFF00) -/* 3234B0 802BF960 8C620000 */ lw $v0, ($v1) -/* 3234B4 802BF964 24420001 */ addiu $v0, $v0, 1 -/* 3234B8 802BF968 080AFE78 */ j .L802BF9E0 -/* 3234BC 802BF96C AC620000 */ sw $v0, ($v1) -.L802BF970: -/* 3234C0 802BF970 2402FEFF */ addiu $v0, $zero, -0x101 -/* 3234C4 802BF974 3C05802C */ lui $a1, %hi(D_802BFF04) -/* 3234C8 802BF978 24A5FF04 */ addiu $a1, $a1, %lo(D_802BFF04) -/* 3234CC 802BF97C A2600003 */ sb $zero, 3($s3) -/* 3234D0 802BF980 A2600000 */ sb $zero, ($s3) -/* 3234D4 802BF984 8E430000 */ lw $v1, ($s2) -/* 3234D8 802BF988 8CA40000 */ lw $a0, ($a1) -/* 3234DC 802BF98C 00621824 */ and $v1, $v1, $v0 -/* 3234E0 802BF990 10800003 */ beqz $a0, .L802BF9A0 -/* 3234E4 802BF994 AE430000 */ sw $v1, ($s2) -/* 3234E8 802BF998 0C038069 */ jal enable_player_input -/* 3234EC 802BF99C ACA00000 */ sw $zero, ($a1) -.L802BF9A0: -/* 3234F0 802BF9A0 3C028007 */ lui $v0, %hi(gGameStatusPtr) -/* 3234F4 802BF9A4 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0) -/* 3234F8 802BF9A8 A040007D */ sb $zero, 0x7d($v0) -/* 3234FC 802BF9AC 3C01802C */ lui $at, %hi(D_802BFF0C) -/* 323500 802BF9B0 AC20FF0C */ sw $zero, %lo(D_802BFF0C)($at) -/* 323504 802BF9B4 0C03BD17 */ jal partner_clear_player_tracking -/* 323508 802BF9B8 0200202D */ daddu $a0, $s0, $zero -/* 32350C 802BF9BC 8E220000 */ lw $v0, ($s1) -/* 323510 802BF9C0 24420001 */ addiu $v0, $v0, 1 -/* 323514 802BF9C4 080AFE78 */ j .L802BF9E0 -/* 323518 802BF9C8 AE220000 */ sw $v0, ($s1) -.L802BF9CC: -/* 32351C 802BF9CC 0C03BA6E */ jal partner_put_away -/* 323520 802BF9D0 0200202D */ daddu $a0, $s0, $zero -/* 323524 802BF9D4 0040182D */ daddu $v1, $v0, $zero -/* 323528 802BF9D8 14600002 */ bnez $v1, .L802BF9E4 -/* 32352C 802BF9DC 24020001 */ addiu $v0, $zero, 1 -.L802BF9E0: -/* 323530 802BF9E0 0000102D */ daddu $v0, $zero, $zero -.L802BF9E4: -/* 323534 802BF9E4 8FBF0040 */ lw $ra, 0x40($sp) -/* 323538 802BF9E8 8FB3003C */ lw $s3, 0x3c($sp) -/* 32353C 802BF9EC 8FB20038 */ lw $s2, 0x38($sp) -/* 323540 802BF9F0 8FB10034 */ lw $s1, 0x34($sp) -/* 323544 802BF9F4 8FB00030 */ lw $s0, 0x30($sp) -/* 323548 802BF9F8 03E00008 */ jr $ra -/* 32354C 802BF9FC 27BD0048 */ addiu $sp, $sp, 0x48