z_player_lib: Part 1 (#688)

* fix some symbols and file splits

* PLAYER_STATE macros

* Move over a few functions

* AP functions and update struct

* another small bunch

* Add player_lib prototypes

* A few more functions

* Some fixes and add stuff to actorfixer

* format

* bss

* Elliptic's review

* Engineer's review

* Some renames and cleanups

* bss

* A bit of cleaning up

* Player_DrawZoraShield

* format

* actorfixer, bss and format

* Forgot to merge master again

* Rename some LinkGoron dlists

* PlayerMeleeWeaponAnimation enum

* format

* actorfixer, bss and format

* more bss

* actorfixer

* format

* actorfixer and format

* bss

* Update src/code/z_player_lib.c

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* sEnvironmentTextTriggers

* Update include/z64save.h

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* Update src/code/z_player_lib.c

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* Update src/code/z_player_lib.c

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* Update src/code/z_player_lib.c

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* breman mask march comment

* fix

* fixes

* bss

* RESPAWN_MODE_RETURN

* review

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>

* format

* Engineer's review

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update src/code/z_player_lib.c

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>

* review

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* Update include/z64player.h

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* review

Co-authored-by: EllipticEllipsis <elliptic.ellipsis@gmail.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* format

* unused mwas

* fixes

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: EllipticEllipsis <elliptic.ellipsis@gmail.com>
This commit is contained in:
Anghelo Carvajal 2022-07-11 23:43:46 -04:00 committed by GitHub
parent cd5de59431
commit 87506f7c19
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
71 changed files with 1729 additions and 454 deletions

View File

@ -35,7 +35,7 @@
<DList Name="object_link_goron_DL_00A0A0" Offset="0xA0A0" />
<DList Name="object_link_goron_DL_00A220" Offset="0xA220" />
<DList Name="object_link_goron_DL_00A500" Offset="0xA500" />
<DList Name="object_link_goron_DL_00BDD8" Offset="0xBDD8" />
<DList Name="gLinkGoronCurledDL" Offset="0xBDD8" />
<DList Name="object_link_goron_DL_00C540" Offset="0xC540" />
<Texture Name="object_link_goron_Tex_00C6B8" OutName="tex_00C6B8" Format="ci8" Width="32" Height="64" Offset="0xC6B8" />
<Texture Name="object_link_goron_Tex_00CEB8" OutName="tex_00CEB8" Format="rgba16" Width="8" Height="16" Offset="0xCEB8" />
@ -62,7 +62,7 @@
<DList Name="object_link_goron_DL_011468" Offset="0x11468" />
<Texture Name="object_link_goron_Tex_011628" OutName="tex_011628" Format="ci8" Width="16" Height="16" Offset="0x11628" />
<Texture Name="object_link_goron_Tex_011728" OutName="tex_011728" Format="rgba16" Width="8" Height="32" Offset="0x11728" />
<DList Name="object_link_goron_DL_011AB8" Offset="0x11AB8" />
<DList Name="gLinkGoronGoronPunchEffectDL" Offset="0x11AB8" />
<Texture Name="object_link_goron_Tex_011C10" OutName="tex_011C10" Format="i4" Width="32" Height="32" Offset="0x11C10" />
<Texture Name="object_link_goron_Tex_011E10" OutName="tex_011E10" Format="i4" Width="64" Height="64" Offset="0x11E10" />
<DList Name="object_link_goron_DL_0127B0" Offset="0x127B0" />
@ -72,7 +72,7 @@
<Texture Name="object_link_goron_Tex_013660" OutName="tex_013660" Format="i4" Width="64" Height="64" Offset="0x13660" />
<Texture Name="object_link_goron_Tex_013E60" OutName="tex_013E60" Format="i4" Width="64" Height="64" Offset="0x13E60" />
<TextureAnimation Name="object_link_goron_Matanimheader_014684" Offset="0x14684" />
<DList Name="object_link_goron_DL_014690" Offset="0x14690" />
<DList Name="gLinkGoronRollingSpikesAndEffectDL" Offset="0x14690" />
<DList Name="object_link_goron_DL_016A88" Offset="0x16A88" />
<DList Name="object_link_goron_DL_017180" Offset="0x17180" />
<DList Name="object_link_goron_DL_017620" Offset="0x17620" />

View File

@ -56,7 +56,14 @@
<DList Name="object_link_zora_DL_010978" Offset="0x10978" />
<DList Name="object_link_zora_DL_010D08" Offset="0x10D08" />
<DList Name="object_link_zora_DL_0110A8" Offset="0x110A8" />
<!-- <Blob Name="object_link_zora_Blob_011710" Size="0x50" Offset="0x11710" /> -->
<Array Name="object_link_zora_Vtx_011210" Count="80" Offset="0x011210">
<Vtx/>
</Array>
<Array Name="object_link_zora_U8_011710" Count="80" Offset="0x011710">
<Scalar Type="x8"/>
</Array>
<DList Name="object_link_zora_DL_011760" Offset="0x11760" />
<DList Name="object_link_zora_DL_011A58" Offset="0x11A58" />
<Texture Name="object_link_zora_Tex_011A60" OutName="tex_011A60" Format="i8" Width="64" Height="32" Offset="0x11A60" />

View File

@ -542,7 +542,7 @@ void EffectSsDFire_Spawn(PlayState* play, Vec3f* pos, Vec3f* velocity, Vec3f* ac
void EffectSsBubble_Spawn(PlayState* play, Vec3f* pos, f32 yPosOffset, f32 yPosRandScale, f32 xzPosRandScale, f32 scale);
void EffectSsGRipple_Spawn(PlayState* play, Vec3f* pos, s16 radius, s16 radiusMax, s16 life);
void EffectSsGSplash_Spawn(PlayState* play, Vec3f* pos, Color_RGBA8* primColor, Color_RGBA8* envColor, s16 type, s16 scale);
// void EffectSsGFire_Spawn(UNK_TYPE4 uParm1, Vec3f* pzParm2);
void EffectSsGFire_Spawn(PlayState* play, Vec3f* pos);
// void EffectSsLightning_Spawn(UNK_TYPE4 uParm1, Vec3f* pzParm2, Color_RGBA8* pzParm3, Color_RGBA8* pzParm4, UNK_TYPE2 param_5, UNK_TYPE2 param_6, UNK_TYPE2 param_7, UNK_TYPE2 param_8);
void EffectSsDtBubble_SpawnColorProfile(PlayState* play, Vec3f* pos, Vec3f* velocity, Vec3f* accel, s16 scale, s16 life, s16 colorProfile, s16 randXZ);
void EffectSsDtBubble_SpawnCustomColor(PlayState* play, Vec3f* pos, Vec3f* velocity, Vec3f* accel, Color_RGBA8* primColor, Color_RGBA8* envColor, s16 scale, s16 life, s16 randXZ);
@ -1123,7 +1123,7 @@ void func_800DFC90(Vec3s* arg0, Camera* camera);
s16 Camera_GetCamDirPitch(Camera* camera);
s16 Camera_GetCamDirYaw(Camera* camera);
void func_800DFD04(Camera* camera, s32 arg1, s32 arg2, s32 arg3);
// void func_800DFD78(void);
void func_800DFD78(Camera* camera, s32 paramFlag, void* value);
// UNK_TYPE4 func_800DFEF0(s32 param_1, u16 param_2);
// UNK_TYPE4 func_800DFF18(Camera* iParm1, UNK_TYPE2 uParm2);
// UNK_TYPE4 func_800DFF34(s32 param_1);
@ -1893,7 +1893,7 @@ void func_801149A0(s32 itemId, s16 slotId);
// void func_80114CA0(void);
s32 Interface_HasEmptyBottle(void);
s32 Interface_HasItemInBottle(u8 itemId);
// void func_80114FD0(void);
void func_80114FD0(PlayState* play, u8 itemId, u8 heldItemButton);
// void func_80115130(void);
// void func_801152B8(void);
// void func_801153C8(void);
@ -1943,108 +1943,86 @@ void func_80121FC4(PlayState* play);
Path* Path_GetByIndex(PlayState* play, s16 index, s16 max);
f32 Path_OrientAndGetDistSq(Actor* actor, Path* path, s16 waypoint, s16* yaw);
void Path_CopyLastPoint(Path* path, Vec3f* dest);
void FrameAdvance_Init(FrameAdvanceContext* frameAdvCtx);
s32 FrameAdvance_Update(FrameAdvanceContext* frameAdvCtx, Input* input);
void func_801226E0(PlayState* play, s8 arg1);
void func_80122744(PlayState* play, UNK_PTR arg1, u32 arg2, Vec3s* arg3);
s32 func_80122760(PlayState* play, UNK_PTR arg1, f32 arg2);
s32 func_801226E0(PlayState* play, s32 arg1);
s32 func_80122744(PlayState* play, struct_80122744_arg1* arg1, u32 arg2, Vec3s* arg3);
s32 func_80122760(PlayState* play, struct_80122744_arg1* arg1, f32 arg2);
void func_80122868(PlayState* play, Player* player);
void func_801229A0(PlayState* play, Player* player);
// void func_801229EC(void);
// void func_801229FC(void);
// void func_80122BA4(void);
// void func_80122C20(void);
// void func_80122D44(void);
// void func_80122ED8(void);
// void func_80122EEC(void);
void func_801229EC(UNK_TYPE arg0, UNK_TYPE arg1);
void func_801229FC(Player* player);
void func_80122BA4(PlayState* play, struct_80122D44_arg1* arg1, s32 arg2, s32 alpha);
void func_80122C20(PlayState* play, struct_80122D44_arg1* arg1);
void func_80122D44(PlayState* play, struct_80122D44_arg1* arg1);
u8 Player_MaskIdToItemId(s32 maskIdMinusOne);
u8 Player_GetCurMaskItemId(PlayState* play);
void func_80122F28(Player* player);
s32 func_80122F9C(PlayState* play);
s32 func_80122FCC(PlayState* play);
void func_8012300C(PlayState* play, s32 arg1);
void func_8012301C(s32 iParm1, PlayState* play);
void func_8012301C(Player* player, PlayState* play);
void func_80123140(PlayState* play, Player* player);
u32 func_80123358(PlayState* play, Player* player);
s32 Player_InCsMode(GameState* gameState);
// void func_80123420(void);
// void func_80123434(void);
// void func_80123448(void);
// void func_801234B0(void);
// void func_801234D4(void);
s32 Player_InBlockingCsMode(PlayState* play, Player* player);
s32 Player_InCsMode(PlayState* play);
s32 func_80123420(Player* player);
s32 func_80123434(Player* player);
s32 func_80123448(PlayState* play);
s32 Player_IsGoronOrDeku(Player* player);
s32 func_801234D4(PlayState* play);
s32 func_80123590(PlayState* play, Actor* actor);
// void func_8012364C(void);
s32 func_8012364C(PlayState* play, Player* player, s32 arg2);
s32 func_80123810(PlayState* play);
// void func_80123960(void);
// void func_801239AC(void);
void func_80123AA4(Player* player, s32 arg1);
// void func_80123BD4(void);
// void func_80123C58(void);
void Player_SetEquipmentData(PlayState* play, Player* this);
void func_80123D50(PlayState* play, Player* player, UNK_TYPE arg2, UNK_TYPE arg3);
s32 Player_ActionToModelGroup(Player* player, s32 actionParam);
void func_801239AC(Player* player);
void Player_SetModels(Player* player, s32 arg1);
void Player_SetModelGroup(Player* player, s32 modelGroup);
void func_80123C58(Player* player);
void Player_SetEquipmentData(PlayState* play, Player* this);
void func_80123D50(PlayState* play, Player* player, s32 itemId, s32 actionParam);
void func_80123DA4(Player* player);
// void func_80123DC0(void);
void func_80123DC0(Player* player);
void func_80123E90(PlayState* play, Actor* actor);
void func_80123F2C(PlayState* play, s32 arg1);
s32 func_80123F48(PlayState* play, Vec3f* arg1, f32 arg2, f32 arg3);
s32 func_80124020(void);
s32 func_80123F2C(PlayState* play, s32 ammo);
s32 Player_IsBurningStickInRange(PlayState* play, Vec3f* pos, f32 xzRange, f32 yRange);
u8 Player_GetStrength(void);
u8 Player_GetMask(PlayState* play);
void Player_RemoveMask(PlayState* play);
s32 func_8012405C(PlayState* play);
s32 func_80124088(PlayState* play);
s32 func_801240C8(Player* player);
// void func_801240DC(void);
// void func_80124110(void);
// void func_80124148(void);
// void func_80124168(void);
s32 func_80124190(Player* player);
// void func_801241B4(void);
// void func_801241E0(void);
// void func_8012420C(void);
// void func_8012422C(void);
s32 Player_HasMirrorShieldEquipped(PlayState* play);
s32 Player_IsHoldingMirrorShield(PlayState* play);
s32 Player_IsHoldingHookshot(Player* player);
s32 func_801240DC(Player* player);
s32 func_80124110(Player* player, s32 actionParam);
s32 func_80124148(Player* player);
s32 Player_ActionToMeleeWeapon(s32 actionParam);
s32 Player_GetMeleeWeaponHeld(Player* player);
s32 Player_IsHoldingTwoHandedWeapon(Player* player);
s32 Player_ActionToBottle(Player* player, s32 actionParam);
s32 Player_GetBottleHeld(Player* Player);
s32 Player_ActionToExplosive(Player* player, s32 actionParam);
s32 Player_GetExplosiveHeld(Player* player);
// void func_80124278(void);
s32 func_80124278(Actor* actor, s32 arg1);
s32 func_801242B4(Player* player);
// void func_801242DC(void);
// void func_80124420(void);
// void func_80124618(void);
// void func_801246F4(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE1 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE4 param_10, UNK_TYPE4 param_11);
// void func_80124870(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8);
// void func_80124CC4(void);
// void func_80124F18(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
// void func_80124FF0(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE2 param_10);
// void func_801251C4(void);
// void func_80125318(void);
// void func_80125340(void);
// void func_8012536C(void);
// void func_801253A4(void);
// void func_80125500(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5);
// void func_80125580(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
// void func_80125CE0(void);
// void func_80125D4C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
// void func_801262C8(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
// void func_801263FC(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6);
s32 func_801242DC(PlayState* play);
void func_80124420(Player* player);
void func_80124618(struct_80124618 arg0[], f32 curFrame, Vec3f* arg2);
void func_801246F4(PlayState* play, void** skeleton, Vec3s* jointTable, s32 dListCount, s32 lod, s32 tunic, s32 boots, s32 face, OverrideLimbDrawFlex overrideLimbDraw, PostLimbDrawFlex postLimbDraw, Actor* actor);
void func_80125318(Vec3f* arg0, Vec3s* arg1);
void Player_DrawZoraShield(PlayState* play, Player* player);
void func_80125500(PlayState* play, Player* player, s32 limbIndex, Vec3f* pos, Vec3s* rot);
s32 func_80125D4C(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, Actor* actor);
s32 func_801262C8(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, Actor* actor);
s32 func_801263FC(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, Actor* thisx);
s32 func_80126440(PlayState* play, ColliderQuad* collider, WeaponInfo* weaponInfo, Vec3f* arg3, Vec3f* arg4);
// void func_801265C8(void);
// void func_8012669C(void);
// void func_80126808(void);
void func_8012697C(PlayState* play, Player* player);
// void func_80126AB4(void);
// void func_80126B8C(void);
// void func_80126BD0(void);
// void func_801271B0(void);
// void func_80127438(void);
// void func_80127488(void);
// void func_8012754C(void);
// void func_80127594(void);
// void func_801278F8(void);
// void func_80127A60(void);
// void func_80127B64(void);
// void func_80127BE8(void);
// void func_80127DA4(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7);
// void func_80128388(void);
// void func_801284A0(void);
// void func_80128640(void);
// void func_80128B74(void);
// void func_80128BD0(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE1 param_5, UNK_TYPE4 param_6);
void Player_DrawGetItem(PlayState* play, Player* player);
void func_80126B8C(PlayState* play, Player* player);
s32 func_80127438(PlayState* play, Player* player, s32 maskId);
s32 func_80128640(PlayState* play, Player* player, Gfx* dlist);
void func_80128B74(PlayState* play, Player* player, s32 limbIndex);
void func_80128BD0(PlayState* play, s32 limbIndex, Gfx** dList1, Gfx** dList2, Vec3s* rot, Actor* actor);
void PreNMI_Stop(PreNMIContext* prenmiCtx);
void PreNMI_Update(PreNMIContext* prenmiCtx);
void PreNMI_Draw(PreNMIContext* prenmiCtx);

View File

@ -1160,31 +1160,18 @@ extern UNK_PTR D_801BF5C0;
// extern UNK_TYPE1 D_801BFD8C;
// extern UNK_TYPE1 D_801BFD94;
// extern UNK_TYPE2 D_801BFD98;
// extern UNK_TYPE1 D_801BFD9E;
// extern UNK_TYPE1 D_801BFDD0;
// extern UNK_TYPE1 D_801BFDE8;
// extern UNK_TYPE1 D_801BFE00;
// extern UNK_TYPE1 D_801BFE14;
// extern UNK_TYPE2 D_801BFF34;
// extern UNK_TYPE1 D_801BFF3C;
// extern UNK_TYPE1 D_801BFF90;
// extern UNK_TYPE1 D_801BFF98;
// extern UNK_TYPE1 D_801BFFA0;
// extern UNK_TYPE1 D_801BFFB0;
extern u8 gPlayerModelTypes[][5];
// extern UNK_TYPE1 D_801BFFFC;
// extern UNK_TYPE1 D_801C0000;
// extern UNK_TYPE1 D_801C0001;
// extern UNK_TYPE1 D_801C0002;
// extern UNK_TYPE1 D_801C0008;
// extern UNK_TYPE1 D_801C0010;
// extern UNK_TYPE1 D_801C0024;
// extern UNK_TYPE1 D_801C0034;
// extern UNK_TYPE1 D_801C0040;
// extern UNK_TYPE1 D_801C005C;
// extern UNK_TYPE1 D_801C0060;
// extern UNK_TYPE1 D_801C0070;
// extern UNK_TYPE1 D_801C0084;
// extern UNK_TYPE1 D_801C00A0;
// extern UNK_TYPE1 D_801C00AC;
// extern UNK_TYPE1 D_801C00BC;
// extern UNK_TYPE1 D_801C00D4;
@ -1204,7 +1191,6 @@ extern UNK_PTR D_801BF5C0;
// extern UNK_TYPE1 D_801C02BC;
// extern UNK_TYPE1 D_801C02D0;
// extern UNK_TYPE1 D_801C02E4;
extern UNK_PTR D_801C02F8;
// extern UNK_TYPE1 D_801C0340;
// extern UNK_TYPE1 D_801C0368;
// extern UNK_TYPE1 D_801C03A0;
@ -1222,8 +1208,6 @@ extern UNK_PTR D_801C02F8;
// extern UNK_TYPE1 D_801C05C8;
// extern UNK_TYPE1 D_801C05D8;
// extern UNK_TYPE1 D_801C05F0;
// extern UNK_TYPE2 D_801C05F2;
// extern UNK_TYPE1 D_801C05FA;
// extern UNK_TYPE1 D_801C0608;
// extern UNK_TYPE1 D_801C0628;
// extern UNK_TYPE1 D_801C0678;
@ -1247,14 +1231,12 @@ extern Gfx D_801C0850[];
extern UNK_PTR D_801C0870;
// extern UNK_TYPE1 D_801C0890;
// extern UNK_TYPE1 D_801C08A0;
// extern UNK_TYPE1 D_801C08A1;
// extern UNK_TYPE1 D_801C08C0;
// extern UNK_TYPE1 D_801C08FC;
// extern UNK_TYPE1 D_801C0910;
// extern UNK_TYPE1 D_801C0924;
// extern UNK_TYPE1 D_801C0938;
// extern UNK_TYPE1 D_801C094C;
// extern UNK_TYPE4 D_801C0954;
// extern UNK_TYPE4 D_801C0958;
extern UNK_PTR D_801C095C;
// extern UNK_TYPE1 D_801C0964;
@ -1281,26 +1263,17 @@ extern UNK_PTR D_801C0B0C;
// extern UNK_TYPE1 D_801C0B20;
// extern UNK_TYPE1 D_801C0B90;
// extern UNK_TYPE4 D_801C0BA8;
// extern UNK_TYPE4 D_801C0BAC;
// extern UNK_TYPE4 D_801C0BB0;
// extern UNK_TYPE1 D_801C0BB4;
// extern UNK_TYPE4 D_801C0BB8;
// extern UNK_TYPE1 D_801C0BC0;
// extern UNK_TYPE1 D_801C0BD0;
// extern UNK_TYPE4 D_801C0BE0;
// extern UNK_TYPE4 D_801C0BE4;
// extern UNK_TYPE4 D_801C0BE8;
// extern UNK_TYPE4 D_801C0BEC;
// extern UNK_TYPE4 D_801C0BF0;
// extern UNK_TYPE4 D_801C0BF4;
// extern UNK_TYPE1 D_801C0BF8;
// extern UNK_TYPE1 D_801C0BFC;
// extern UNK_TYPE1 D_801C0C00;
// extern UNK_TYPE4 D_801C0C0C;
// extern UNK_TYPE1 D_801C0C30;
// extern UNK_TYPE1 D_801C0C54;
// extern UNK_TYPE1 D_801C0C78;
// extern UNK_TYPE1 D_801C0C94;
// extern UNK_TYPE1 D_801C0CA8;
// extern UNK_TYPE4 D_801C0CE8;
// extern UNK_TYPE1 D_801C0D24;
@ -1323,6 +1296,7 @@ extern UNK_PTR D_801C0B0C;
// extern UNK_TYPE1 D_801C0EA0;
// extern UNK_TYPE1 D_801C0EAC;
// extern UNK_TYPE1 D_801C0EB8;
extern Gfx sSetupDL[438];
extern Gfx sFillSetupDL[12];
extern Gfx gEmptyDL[1];
@ -1343,8 +1317,8 @@ extern u8 gItemSlots[];
extern s16 gItemPrices[];
extern u16 gScenesPerRegion[11][27];
extern u32 D_801C2410[];
extern s16 gLinkFormObjectIndexes[8];
extern RomFile objectFileTable[643];
extern s16 gPlayerFormObjectIndices[8];
extern RomFile gObjectTable[643];
extern SceneTableEntry gSceneTable[];
extern UNK_PTR D_801C5C50;
// extern UNK_TYPE1 D_801C5C9C;
@ -3212,8 +3186,6 @@ extern s16 D_801F4E7A;
// extern UNK_TYPE1 D_801F59E0;
// extern UNK_TYPE1 D_801F59E4;
// extern UNK_TYPE1 D_801F59E8;
// extern UNK_TYPE1 D_801F59EC;
// extern UNK_TYPE1 D_801F59F0;
// extern UNK_TYPE1 D_801F59F4;
// extern UNK_TYPE1 D_801F59F8;
// extern UNK_TYPE1 sSkyboxDrawMatrix;

View File

@ -552,7 +552,7 @@ typedef struct {
/* 0x214 */ u16 unk_214;
/* 0x218 */ f32 unk_218;
/* 0x21C */ s16 unk_21C;
/* 0x21E */ s16 unk_21E;
/* 0x21E */ s16 bButtonDoAction;
/* 0x220 */ s16 unk_220;
/* 0x222 */ s16 unk_222;
/* 0x224 */ s16 unk_224;
@ -1300,7 +1300,7 @@ struct PlayState {
/* 0x18788 */ void (*talkWithPlayer)(struct PlayState* play, Actor* actor);
/* 0x1878C */ void (*unk_1878C)(struct PlayState* play);
/* 0x18790 */ void (*unk_18790)(struct PlayState* play, s16 arg1, Actor* actor);
/* 0x18794 */ void* unk_18794; //! @TODO: Determine function prototype
/* 0x18794 */ s32 (*unk_18794)(struct PlayState* play, Player* player, s32 arg2, s32 arg3);
/* 0x18798 */ s32 (*setPlayerTalkAnim)(struct PlayState* play, void* talkAnim, s32 arg2);
/* 0x1879C */ s16 playerActorCsIds[10];
/* 0x187B0 */ MtxF viewProjectionMtxF;
@ -1327,7 +1327,7 @@ struct PlayState {
/* 0x18876 */ s16 unk_18876;
/* 0x18878 */ s16 bgCoverAlpha;
/* 0x1887A */ u16 nextEntranceIndex;
/* 0x1887C */ s8 unk_1887C;
/* 0x1887C */ s8 unk_1887C; // shootingGalleryStatus?
/* 0x1887D */ s8 unk_1887D;
/* 0x1887E */ s8 unk_1887E;
/* 0x1887F */ u8 unk_1887F; // fadeTransition

View File

@ -80,6 +80,11 @@ typedef struct {
/* 0x3A */ s16 unk3A;
} ActorEnTest20C; // size = 0x3C
typedef struct {
/* 0x0 */ s16 unk_0; // frame?
/* 0x2 */ Vec3s unk_2; // pos?
} struct_80124618; // size = 0x8
typedef struct {
/* 0x00 */ s16 id;
/* 0x02 */ u8 type;

View File

@ -261,7 +261,10 @@ typedef enum {
/* 0xA1 */ ITEM_GOLD_DUST_2,
/* 0xA2 */ ITEM_HYLIAN_LOACH_2,
/* 0xA3 */ ITEM_SEA_HORSE_CAUGHT,
/* 0xFD */ ITEM_UNK_FD = 0xFD,
/* 0xF0 */ ITEM_F0 = 0xF0,
/* 0xF1 */ ITEM_F1,
/* 0xF2 */ ITEM_F2,
/* 0xFD */ ITEM_FD = 0xFD,
/* 0xFF */ ITEM_NONE = 0xFF
} ItemID;

View File

@ -24,6 +24,14 @@ typedef enum {
/* 0x07 */ PLAYER_BOOTS_MAX
} PlayerBoots;
typedef enum {
/* 0x00 */ PLAYER_STRENGTH_DEKU,
/* 0x01 */ PLAYER_STRENGTH_HUMAN,
/* 0x02 */ PLAYER_STRENGTH_ZORA,
/* 0x03 */ PLAYER_STRENGTH_GORON,
/* 0x04 */ PLAYER_STRENGTH_MAX
} PlayerStrength;
typedef enum {
/* 0x00 */ PLAYER_FORM_FIERCE_DEITY,
/* 0x01 */ PLAYER_FORM_GORON,
@ -64,14 +72,14 @@ typedef enum {
typedef enum {
/* 0x00 */ PLAYER_AP_NONE,
/* 0x01 */ PLAYER_AP_UNK_1,
/* 0x02 */ PLAYER_AP_UNK_2,
/* 0x01 */ PLAYER_AP_LAST_USED,
/* 0x02 */ PLAYER_AP_FISHING_POLE,
/* 0x03 */ PLAYER_AP_SWORD_KOKIRI,
/* 0x04 */ PLAYER_AP_SWORD_RAZOR,
/* 0x05 */ PLAYER_AP_SWORD_GILDED,
/* 0x06 */ PLAYER_AP_SWORD_GREAT_FAIRY,
/* 0x07 */ PLAYER_AP_STICK,
/* 0x08 */ PLAYER_AP_UNK_8,
/* 0x08 */ PLAYER_AP_ZORA_FINS,
/* 0x09 */ PLAYER_AP_BOW,
/* 0x0A */ PLAYER_AP_BOW_FIRE,
/* 0x0B */ PLAYER_AP_BOW_ICE,
@ -141,6 +149,44 @@ typedef enum {
/* 0xFD */ PLAYER_AP_MAX = 0xFD
} PlayerActionParam;
typedef enum {
/* 0 */ PLAYER_MWA_FORWARD_SLASH_1H, // Vertical one-handed slash
/* 1 */ PLAYER_MWA_FORWARD_SLASH_2H, // Vertical two-handed slash
/* 2 */ PLAYER_MWA_FORWARD_COMBO_1H, // Third vertical one-handed slash
/* 3 */ PLAYER_MWA_FORWARD_COMBO_2H, // Third vertical two-handed slash
/* 4 */ PLAYER_MWA_RIGHT_SLASH_1H, // Horizontal one-handed slash
/* 5 */ PLAYER_MWA_RIGHT_SLASH_2H, // Horizontal two-handed slash
/* 6 */ PLAYER_MWA_RIGHT_COMBO_1H, // Third horizontal one-handed slash
/* 7 */ PLAYER_MWA_RIGHT_COMBO_2H, // Third horizontal two-handed slash
/* 8 */ PLAYER_MWA_LEFT_SLASH_1H, // Targeted one-handed rightwalk slash
/* 9 */ PLAYER_MWA_LEFT_SLASH_2H, // Targeted two-handed rightwalk slash
/* 10 */ PLAYER_MWA_LEFT_COMBO_1H, // Third targeted one-handed rightwalk slash
/* 11 */ PLAYER_MWA_LEFT_COMBO_2H, // Third targeted two-handed rightwalk slash
/* 12 */ PLAYER_MWA_STAB_1H, // Crouch stab/targeted one-handed stab
/* 13 */ PLAYER_MWA_STAB_2H, // Targeted two-handed stab
/* 14 */ PLAYER_MWA_STAB_COMBO_1H, // Third targeted one-handed stab
/* 15 */ PLAYER_MWA_STAB_COMBO_2H, // Third targeted two-handed stab
/* 16 */ PLAYER_MWA_FLIPSLASH_START, // unused
/* 17 */ PLAYER_MWA_JUMPSLASH_START, // Start of jumpslash
/* 18 */ PLAYER_MWA_ZORA_JUMPKICK_START, // Start of Zora jump attack
/* 19 */ PLAYER_MWA_FLIPSLASH_FINISH, // unused
/* 20 */ PLAYER_MWA_JUMPSLASH_FINISH, // End of jumpslash
/* 21 */ PLAYER_MWA_ZORA_JUMPKICK_FINISH, // End of Zora jump attack
/* 22 */ PLAYER_MWA_BACKSLASH_RIGHT, // unused
/* 23 */ PLAYER_MWA_BACKSLASH_LEFT, // unused
/* 24 */ PLAYER_MWA_GORON_PUNCH_LEFT, // Goron punch
/* 25 */ PLAYER_MWA_GORON_PUNCH_RIGHT, // Second Goron punch
/* 26 */ PLAYER_MWA_GORON_PUNCH_BUTT, // Goron butt punch
/* 27 */ PLAYER_MWA_ZORA_PUNCH_LEFT, // Zora punch
/* 28 */ PLAYER_MWA_ZORA_PUNCH_COMBO, // Second Zora punch
/* 29 */ PLAYER_MWA_ZORA_PUNCH_KICK, // Zora kick
/* 30 */ PLAYER_MWA_SPIN_ATTACK_1H, // Half-charged one-handed spin
/* 31 */ PLAYER_MWA_SPIN_ATTACK_2H, // Half-charged two-handed spin
/* 32 */ PLAYER_MWA_BIG_SPIN_1H, // Fully-charged one-handed spin
/* 33 */ PLAYER_MWA_BIG_SPIN_2H, // Fully-charged two-handed spin
/* 34 */ PLAYER_MWA_MAX
} PlayerMeleeWeaponAnimation;
typedef struct {
/* 0x00 */ f32 unk_00;
/* 0x04 */ f32 unk_04;
@ -178,7 +224,6 @@ typedef struct {
/* 0xD4 */ LinkAnimationHeader* unk_D4[2];
} PlayerAgeProperties; // size = 0xDC
typedef struct {
/* 0x00 */ s32 active;
/* 0x04 */ Vec3f tip;
@ -188,6 +233,226 @@ typedef struct {
typedef void (*PlayerFuncD58)(struct PlayState*, struct Player*);
typedef struct {
/* 0x00 */ u8 unk_00;
/* 0x01 */ u8 alpha;
/* 0x02 */ char unk_02[2]; // probably alignment padding
/* 0x04 */ MtxF mf;
} struct_80122D44_arg1_unk_04; // size = 0x44
typedef struct {
/* 0x00 */ u8 unk_00;
/* 0x01 */ s8 unk_01;
/* 0x02 */ char unk_02[2]; // probably alignment padding
/* 0x04 */ struct_80122D44_arg1_unk_04 unk_04[4];
} struct_80122D44_arg1; // size >= 0x114
typedef struct struct_80122744_arg1 {
/* 0x00 */ s8 unk_00;
/* 0x01 */ s8 unk_01;
/* 0x02 */ s8 unk_02;
/* 0x03 */ s8 unk_03;
/* 0x04 */ Vec3s* unk_04;
} struct_80122744_arg1; // size = 0x08
//
#define PLAYER_STATE1_1 (1 << 0)
//
#define PLAYER_STATE1_2 (1 << 1)
//
#define PLAYER_STATE1_4 (1 << 2)
//
#define PLAYER_STATE1_8 (1 << 3)
//
#define PLAYER_STATE1_10 (1 << 4)
//
#define PLAYER_STATE1_20 (1 << 5)
//
#define PLAYER_STATE1_40 (1 << 6)
//
#define PLAYER_STATE1_80 (1 << 7)
//
#define PLAYER_STATE1_100 (1 << 8)
//
#define PLAYER_STATE1_200 (1 << 9)
//
#define PLAYER_STATE1_400 (1 << 10)
//
#define PLAYER_STATE1_800 (1 << 11)
//
#define PLAYER_STATE1_1000 (1 << 12)
//
#define PLAYER_STATE1_2000 (1 << 13)
//
#define PLAYER_STATE1_4000 (1 << 14)
//
#define PLAYER_STATE1_8000 (1 << 15)
//
#define PLAYER_STATE1_10000 (1 << 16)
//
#define PLAYER_STATE1_20000 (1 << 17)
//
#define PLAYER_STATE1_40000 (1 << 18)
//
#define PLAYER_STATE1_80000 (1 << 19)
//
#define PLAYER_STATE1_100000 (1 << 20)
//
#define PLAYER_STATE1_200000 (1 << 21)
//
#define PLAYER_STATE1_400000 (1 << 22)
//
#define PLAYER_STATE1_800000 (1 << 23)
//
#define PLAYER_STATE1_1000000 (1 << 24)
//
#define PLAYER_STATE1_2000000 (1 << 25)
//
#define PLAYER_STATE1_4000000 (1 << 26)
// Swimming?
#define PLAYER_STATE1_8000000 (1 << 27)
//
#define PLAYER_STATE1_10000000 (1 << 28)
//
#define PLAYER_STATE1_20000000 (1 << 29)
//
#define PLAYER_STATE1_40000000 (1 << 30)
//
#define PLAYER_STATE1_80000000 (1 << 31)
//
#define PLAYER_STATE2_1 (1 << 0)
//
#define PLAYER_STATE2_2 (1 << 1)
//
#define PLAYER_STATE2_4 (1 << 2)
//
#define PLAYER_STATE2_8 (1 << 3)
//
#define PLAYER_STATE2_10 (1 << 4)
//
#define PLAYER_STATE2_20 (1 << 5)
//
#define PLAYER_STATE2_40 (1 << 6)
//
#define PLAYER_STATE2_80 (1 << 7)
//
#define PLAYER_STATE2_100 (1 << 8)
//
#define PLAYER_STATE2_200 (1 << 9)
//
#define PLAYER_STATE2_400 (1 << 10)
//
#define PLAYER_STATE2_800 (1 << 11)
//
#define PLAYER_STATE2_1000 (1 << 12)
//
#define PLAYER_STATE2_2000 (1 << 13)
//
#define PLAYER_STATE2_4000 (1 << 14)
//
#define PLAYER_STATE2_8000 (1 << 15)
//
#define PLAYER_STATE2_10000 (1 << 16)
//
#define PLAYER_STATE2_20000 (1 << 17)
//
#define PLAYER_STATE2_40000 (1 << 18)
//
#define PLAYER_STATE2_80000 (1 << 19)
//
#define PLAYER_STATE2_100000 (1 << 20)
//
#define PLAYER_STATE2_200000 (1 << 21)
//
#define PLAYER_STATE2_400000 (1 << 22)
//
#define PLAYER_STATE2_800000 (1 << 23)
//
#define PLAYER_STATE2_1000000 (1 << 24)
//
#define PLAYER_STATE2_2000000 (1 << 25)
//
#define PLAYER_STATE2_4000000 (1 << 26)
//
#define PLAYER_STATE2_8000000 (1 << 27)
//
#define PLAYER_STATE2_10000000 (1 << 28)
//
#define PLAYER_STATE2_20000000 (1 << 29)
//
#define PLAYER_STATE2_40000000 (1 << 30)
//
#define PLAYER_STATE2_80000000 (1 << 31)
//
#define PLAYER_STATE3_1 (1 << 0)
//
#define PLAYER_STATE3_2 (1 << 1)
//
#define PLAYER_STATE3_4 (1 << 2)
//
#define PLAYER_STATE3_8 (1 << 3)
//
#define PLAYER_STATE3_10 (1 << 4)
//
#define PLAYER_STATE3_20 (1 << 5)
//
#define PLAYER_STATE3_40 (1 << 6)
//
#define PLAYER_STATE3_80 (1 << 7)
//
#define PLAYER_STATE3_100 (1 << 8)
//
#define PLAYER_STATE3_200 (1 << 9)
//
#define PLAYER_STATE3_400 (1 << 10)
//
#define PLAYER_STATE3_800 (1 << 11)
//
#define PLAYER_STATE3_1000 (1 << 12)
//
#define PLAYER_STATE3_2000 (1 << 13)
//
#define PLAYER_STATE3_4000 (1 << 14)
//
#define PLAYER_STATE3_8000 (1 << 15)
//
#define PLAYER_STATE3_10000 (1 << 16)
//
#define PLAYER_STATE3_20000 (1 << 17)
//
#define PLAYER_STATE3_40000 (1 << 18)
//
#define PLAYER_STATE3_80000 (1 << 19)
//
#define PLAYER_STATE3_100000 (1 << 20)
//
#define PLAYER_STATE3_200000 (1 << 21)
//
#define PLAYER_STATE3_400000 (1 << 22)
//
#define PLAYER_STATE3_800000 (1 << 23)
//
#define PLAYER_STATE3_1000000 (1 << 24)
//
#define PLAYER_STATE3_2000000 (1 << 25)
//
#define PLAYER_STATE3_4000000 (1 << 26)
//
#define PLAYER_STATE3_8000000 (1 << 27)
//
#define PLAYER_STATE3_10000000 (1 << 28)
// breman mask march?
#define PLAYER_STATE3_20000000 (1 << 29)
//
#define PLAYER_STATE3_40000000 (1 << 30)
//
#define PLAYER_STATE3_80000000 (1 << 31)
typedef struct Player {
/* 0x000 */ Actor actor;
/* 0x144 */ s8 currentShield;
@ -238,7 +503,7 @@ typedef struct Player {
/* 0x1DC */ OSMesgQueue giObjectLoadQueue;
/* 0x1F4 */ OSMesg giObjectLoadMsg;
/* 0x1F8 */ void* giObjectSegment;
/* 0x1FC */ u8 maskObjectLoading;
/* 0x1FC */ u8 maskObjectLoadState;
/* 0x1FD */ s8 maskId;
/* 0x200 */ DmaRequest maskDmaRequest;
/* 0x220 */ OSMesgQueue maskObjectLoadQueue;
@ -266,7 +531,7 @@ typedef struct Player {
/* 0x38C */ s8 mountSide;
/* 0x390 */ Actor* rideActor;
/* 0x394 */ u8 csMode;
/* 0x395 */ u8 unk_395;
/* 0x395 */ u8 unk_395; // prevCsMode?
/* 0x396 */ u8 unk_396;
/* 0x397 */ u8 unk_397;
/* 0x398 */ Actor* unk_398;
@ -282,15 +547,16 @@ typedef struct Player {
/* 0x3CC */ s16 unk_3CC;
/* 0x3CE */ s8 unk_3CE;
/* 0x3CF */ u8 unk_3CF;
/* 0x3D0 */ char unk_3D0[0x148];
/* 0x3D0 */ struct_80122D44_arg1 unk_3D0;
/* 0x404 */ UNK_TYPE1 unk_404[0x34];
/* 0x518 */ ColliderCylinder cylinder;
/* 0x564 */ ColliderQuad swordQuads[2];
/* 0x564 */ ColliderQuad meleeWeaponQuads[2];
/* 0x664 */ ColliderQuad shieldQuad;
/* 0x6E4 */ ColliderCylinder shieldCylinder;
/* 0x730 */ Actor* unk_730;
/* 0x734 */ char unk_734[4];
/* 0x738 */ s32 unk_738;
/* 0x73C */ s32 blureEffectIndex[3];
/* 0x73C */ s32 meleeWeaponEffectIndex[3];
/* 0x748 */ char unk_748[0x320];
/* 0xA68 */ PlayerAgeProperties* ageProperties; // repurposed as "transformation properties"?
/* 0xA6C */ u32 stateFlags1;
@ -328,8 +594,8 @@ typedef struct Player {
/* 0xAD4 */ s16 currentYaw;
/* 0xAD6 */ s16 targetYaw;
/* 0xAD8 */ u16 unk_AD8;
/* 0xADA */ s8 swordAnimation;
/* 0xADB */ s8 swordState;
/* 0xADA */ s8 meleeWeaponAnimation;
/* 0xADB */ s8 meleeWeaponState;
/* 0xADC */ s8 unk_ADC;
/* 0xADD */ s8 unk_ADD;
/* 0xADE */ u8 unk_ADE;
@ -389,7 +655,7 @@ typedef struct Player {
/* 0xB92 */ s16 unk_B92;
/* 0xB94 */ s16 unk_B94;
/* 0xB96 */ s16 unk_B96;
/* 0xB98 */ WeaponInfo swordInfo[3];
/* 0xB98 */ WeaponInfo meleeWeaponInfo[3];
/* 0xBEC */ Vec3f bodyPartsPos[18];
/* 0xCC4 */ MtxF mf_CC4;
/* 0xD04 */ MtxF shieldMf;

View File

@ -11,10 +11,10 @@ struct FileChooseContext;
// TODO: properly name DOWN, RETURN and TOP
typedef enum RespawnMode {
/* 0 */ RESTART_MODE_DOWN, // "RESTART_MODE_DOWN"
/* 1 */ RESTART_MODE_RETURN, // "RESTART_MODE_RETURN"
/* 2 */ RESTART_MODE_TOP, // "RESTART_MODE_TOP"
/* 3 */ RESPAWN_MODE_UNK_3, // Maybe related to grottos
/* 0 */ RESPAWN_MODE_DOWN, // "RESTART_MODE_DOWN"
/* 1 */ RESPAWN_MODE_RETURN, // "RESTART_MODE_RETURN"
/* 2 */ RESPAWN_MODE_TOP, // "RESTART_MODE_TOP"
/* 3 */ RESPAWN_MODE_UNK_3, // Related to grottos
/* 4 */ RESPAWN_MODE_GORON, // "RESTART_MODE_GORON"
/* 5 */ RESPAWN_MODE_ZORA, // "RESTART_MODE_ZORA"
/* 6 */ RESPAWN_MODE_DEKU, // "RESTART_MODE_NUTS"

View File

@ -260,7 +260,7 @@ typedef union {
typedef struct {
/* 0x00 */ s8 num;
/* 0x01 */ u8 unk1;
/* 0x02 */ u8 unk2;
/* 0x02 */ u8 unk2; // 3: Room is hot
/* 0x03 */ u8 unk3;
/* 0x04 */ s8 echo;
/* 0x05 */ u8 unk5;

View File

@ -481,8 +481,8 @@ s32 Inventory_GetBtnBItem(PlayState* play) {
return ITEM_NONE;
} else if (CUR_FORM_EQUIP(EQUIP_SLOT_B) == ITEM_NONE) {
if (play->interfaceCtx.unk_21C != 0) {
if (play->interfaceCtx.unk_21E != 0) {
return play->interfaceCtx.unk_21E;
if (play->interfaceCtx.bButtonDoAction != 0) {
return play->interfaceCtx.bButtonDoAction;
}
}
return ITEM_NONE;

View File

@ -1856,8 +1856,7 @@ s32 Actor_ProcessTalkRequest(Actor* actor, GameState* gameState) {
s32 func_800B8500(Actor* actor, PlayState* play, f32 xzRange, f32 yRange, s32 exchangeItemId) {
Player* player = GET_PLAYER(play);
if ((player->actor.flags & ACTOR_FLAG_100) ||
((exchangeItemId > EXCH_ITEM_NONE) && Player_InCsMode(&play->state)) ||
if ((player->actor.flags & ACTOR_FLAG_100) || ((exchangeItemId > EXCH_ITEM_NONE) && Player_InCsMode(play)) ||
(!actor->isTargeted &&
((fabsf(actor->playerHeightRel) > fabsf(yRange)) || ((actor->xzDistToPlayer > player->targetActorDistance)) ||
(xzRange < actor->xzDistToPlayer)))) {
@ -1933,7 +1932,7 @@ s32 func_800B8718(Actor* actor, GameState* gameState) {
s32 func_800B874C(Actor* actor, PlayState* play, f32 xzRange, f32 yRange) {
Player* player = GET_PLAYER(play);
if ((player->actor.flags & ACTOR_FLAG_20000000) || Player_InCsMode(&play->state) ||
if ((player->actor.flags & ACTOR_FLAG_20000000) || Player_InCsMode(play) ||
(yRange < fabsf(actor->playerHeightRel)) || ((player->unk_A94 < actor->xzDistToPlayer)) ||
(xzRange < actor->xzDistToPlayer)) {
return false;
@ -2205,8 +2204,8 @@ void func_800B9098(Actor* actor) {
actor->audioFlags |= 0x40;
}
s32 func_800B90AC(PlayState* play, Actor* actor, CollisionPoly* polygon, s32 index, s32 arg4) {
if (func_800C99D4(&play->colCtx, polygon, index) == 8) {
s32 func_800B90AC(PlayState* play, Actor* actor, CollisionPoly* polygon, s32 bgId, s32 arg4) {
if (func_800C99D4(&play->colCtx, polygon, bgId) == 8) {
return true;
}
@ -4352,7 +4351,7 @@ s32 func_800BE184(PlayState* play, Actor* actor, f32 xzDist, s16 arg3, s16 arg4,
s16 phi_v0 = BINANG_SUB(BINANG_ROT180(actor->yawTowardsPlayer), player->actor.shape.rot.y);
s16 temp_t0 = actor->yawTowardsPlayer - arg5;
if ((actor->xzDistToPlayer <= xzDist) && (player->swordState != 0)) {
if ((actor->xzDistToPlayer <= xzDist) && (player->meleeWeaponState != 0)) {
if ((arg4 >= ABS_ALT(phi_v0)) && (arg3 >= ABS_ALT(temp_t0))) {
return true;
}

View File

@ -1454,7 +1454,7 @@ void func_800EDA04(PlayState* play, CutsceneContext* csCtx) {
}
void func_800EDA84(PlayState* play, CutsceneContext* csCtx) {
if ((gSaveContext.cutsceneTrigger != 0) && (csCtx->state == CS_STATE_0) && !Player_InCsMode(&play->state)) {
if ((gSaveContext.cutsceneTrigger != 0) && (csCtx->state == CS_STATE_0) && !Player_InCsMode(play)) {
gSaveContext.save.cutscene = 0xFFFD;
}

View File

@ -119,7 +119,7 @@ void FireObj_UpdateStateTransitions(PlayState* play, FireObj* fire) {
FireObj_SetState(fire, fire->dynamicSizeStep, FIRE_STATE_3);
}
if ((fire->flags & 2) && (player->itemActionParam == PLAYER_AP_STICK)) {
Math_Vec3f_Diff(&player->swordInfo[0].tip, &fire->position, &dist);
Math_Vec3f_Diff(&player->meleeWeaponInfo[0].tip, &fire->position, &dist);
if (Math3D_LengthSquared(&dist) < 400.0f) {
sp40 = true;
}

View File

@ -398,7 +398,7 @@ void LifeMeter_UpdateSizeAndBeep(PlayState* play) {
if (interfaceCtx->lifeSizeChange <= 0) {
interfaceCtx->lifeSizeChange = 0;
interfaceCtx->lifeSizeChangeDirection = 0;
if (!Player_InCsMode(&play->state) && (play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0) &&
if (!Player_InCsMode(play) && (play->pauseCtx.state == 0) && (play->pauseCtx.debugState == 0) &&
LifeMeter_IsCritical() && !Play_InCsMode(play)) {
play_sound(NA_SE_SY_HITPOINT_ALARM);
}

View File

@ -59,7 +59,7 @@
#pragma GLOBAL_ASM("asm/non_matchings/code/z_play/Play_Update.s")
s32 Play_InCsMode(PlayState* this) {
return (this->csCtx.state != 0) || Player_InCsMode(&this->state);
return (this->csCtx.state != 0) || Player_InCsMode(this);
}
#pragma GLOBAL_ASM("asm/non_matchings/code/z_play/func_80169100.s")
@ -209,10 +209,10 @@ void func_80169ECC(PlayState* this) {
void func_80169EFC(GameState* thisx) {
PlayState* this = (PlayState*)thisx;
gSaveContext.respawn[RESTART_MODE_DOWN].tempSwitchFlags = this->actorCtx.flags.switches[2];
gSaveContext.respawn[RESTART_MODE_DOWN].unk_18 = this->actorCtx.flags.collectible[1];
gSaveContext.respawn[RESTART_MODE_DOWN].tempCollectFlags = this->actorCtx.flags.collectible[2];
this->nextEntranceIndex = gSaveContext.respawn[RESTART_MODE_DOWN].entranceIndex;
gSaveContext.respawn[RESPAWN_MODE_DOWN].tempSwitchFlags = this->actorCtx.flags.switches[2];
gSaveContext.respawn[RESPAWN_MODE_DOWN].unk_18 = this->actorCtx.flags.collectible[1];
gSaveContext.respawn[RESPAWN_MODE_DOWN].tempCollectFlags = this->actorCtx.flags.collectible[2];
this->nextEntranceIndex = gSaveContext.respawn[RESPAWN_MODE_DOWN].entranceIndex;
gSaveContext.respawnFlag = 1;
func_80169ECC(this);
this->sceneLoadFlag = 0x14;
@ -224,7 +224,7 @@ void func_80169EFC(GameState* thisx) {
void func_80169F78(GameState* thisx) {
PlayState* this = (PlayState*)thisx;
this->nextEntranceIndex = gSaveContext.respawn[RESTART_MODE_TOP].entranceIndex;
this->nextEntranceIndex = gSaveContext.respawn[RESPAWN_MODE_TOP].entranceIndex;
gSaveContext.respawnFlag = -1;
func_80169ECC(this);
this->sceneLoadFlag = 0x14;

File diff suppressed because it is too large Load Diff

View File

@ -4,12 +4,12 @@ s32 Object_Spawn(ObjectContext* objectCtx, s16 id) {
size_t size;
objectCtx->status[objectCtx->num].id = id;
size = objectFileTable[id].vromEnd - objectFileTable[id].vromStart;
size = gObjectTable[id].vromEnd - gObjectTable[id].vromStart;
if (1) {}
if (size != 0) {
DmaMgr_SendRequest0(objectCtx->status[objectCtx->num].segment, objectFileTable[id].vromStart, size);
DmaMgr_SendRequest0(objectCtx->status[objectCtx->num].segment, gObjectTable[id].vromStart, size);
}
if (objectCtx->num < OBJECT_EXCHANGE_BANK_MAX - 1) {
@ -66,7 +66,7 @@ void Object_UpdateBank(ObjectContext* objectCtx) {
s32 id = -status->id;
if (status->dmaReq.vromAddr == 0) {
objectFile = &objectFileTable[id];
objectFile = &gObjectTable[id];
size = objectFile->vromEnd - objectFile->vromStart;
if (size == 0) {
@ -112,13 +112,13 @@ void Object_LoadAll(ObjectContext* objectCtx) {
for (i = 0; i < objectCtx->num; i++) {
id = objectCtx->status[i].id;
vromSize = objectFileTable[id].vromEnd - objectFileTable[id].vromStart;
vromSize = gObjectTable[id].vromEnd - gObjectTable[id].vromStart;
if (vromSize == 0) {
continue;
}
DmaMgr_SendRequest0(objectCtx->status[i].segment, objectFileTable[id].vromStart, vromSize);
DmaMgr_SendRequest0(objectCtx->status[i].segment, gObjectTable[id].vromStart, vromSize);
}
}
@ -130,7 +130,7 @@ void* func_8012F73C(ObjectContext* objectCtx, s32 iParm2, s16 id) {
objectCtx->status[iParm2].id = -id;
objectCtx->status[iParm2].dmaReq.vromAddr = 0;
fileTableEntry = &objectFileTable[id];
fileTableEntry = &gObjectTable[id];
vromSize = fileTableEntry->vromEnd - fileTableEntry->vromStart;
// TODO: UB to cast void to u32
@ -149,7 +149,7 @@ void Scene_HeaderCmdSpawnList(PlayState* play, SceneCmd* cmd) {
play->linkActorEntry =
(ActorEntry*)Lib_SegmentedToVirtual(cmd->spawnList.segment) + play->setupEntranceList[play->curSpawn].spawn;
if ((play->linkActorEntry->params & 0x0F00) >> 8 == 0x0C ||
(gSaveContext.respawnFlag == 0x02 && gSaveContext.respawn[RESTART_MODE_RETURN].playerParams == 0x0CFF)) {
(gSaveContext.respawnFlag == 0x02 && gSaveContext.respawn[RESPAWN_MODE_RETURN].playerParams == 0x0CFF)) {
// Skull Kid Object
Object_Spawn(&play->objectCtx, OBJECT_STK);
return;
@ -159,7 +159,7 @@ void Scene_HeaderCmdSpawnList(PlayState* play, SceneCmd* cmd) {
nextObject = play->objectCtx.status[play->objectCtx.num].segment;
play->objectCtx.num = loadedCount;
play->objectCtx.spawnedObjectCount = loadedCount;
playerObjectId = gLinkFormObjectIndexes[(void)0, gSaveContext.save.playerForm];
playerObjectId = gPlayerFormObjectIndices[(void)0, gSaveContext.save.playerForm];
gActorOverlayTable[0].initInfo->objectId = playerObjectId;
Object_Spawn(&play->objectCtx, playerObjectId);

View File

@ -596,7 +596,7 @@ ItemEquips sSaveDefaultItemEquips = {
{ ITEM_SWORD_KOKIRI, ITEM_NONE, ITEM_NONE, ITEM_NONE },
{ ITEM_SWORD_KOKIRI, ITEM_NONE, ITEM_NONE, ITEM_NONE },
{ ITEM_SWORD_KOKIRI, ITEM_NONE, ITEM_NONE, ITEM_NONE },
{ ITEM_UNK_FD, ITEM_NONE, ITEM_NONE, ITEM_NONE },
{ ITEM_FD, ITEM_NONE, ITEM_NONE, ITEM_NONE },
},
{
{ SLOT_OCARINA, SLOT_NONE, SLOT_NONE, SLOT_NONE },

View File

@ -107,7 +107,7 @@ void ArmsHook_DetachHookFromActor(ArmsHook* this) {
s32 ArmsHook_CheckForCancel(ArmsHook* this) {
Player* player = (Player*)this->actor.parent;
if (func_801240C8(player)) {
if (Player_IsHoldingHookshot(player)) {
if ((player->heldItemActionParam != player->itemActionParam) || ((player->actor.flags & ACTOR_FLAG_100)) ||
((player->stateFlags1 & 0x4000080))) {
this->timer = 0;
@ -128,7 +128,7 @@ void ArmsHook_AttachHookToActor(ArmsHook* this, Actor* actor) {
void ArmsHook_Shoot(ArmsHook* this, PlayState* play) {
Player* player = GET_PLAYER(play);
if ((this->actor.parent == NULL) || (!func_801240C8(player))) {
if ((this->actor.parent == NULL) || (!Player_IsHoldingHookshot(player))) {
ArmsHook_DetachHookFromActor(this);
Actor_MarkForDeath(&this->actor);
return;
@ -311,13 +311,13 @@ void ArmsHook_Draw(Actor* thisx, PlayState* play) {
Matrix_MultVec3f(&D_808C1C10, &this->unk1E0);
Matrix_MultVec3f(&D_808C1C28, &sp5C);
Matrix_MultVec3f(&D_808C1C34, &sp50);
this->unk1C4.active = false;
this->unk_1C4.active = false;
} else {
Matrix_MultVec3f(&D_808C1C1C, &this->unk1E0);
Matrix_MultVec3f(&D_808C1C40, &sp5C);
Matrix_MultVec3f(&D_808C1C4C, &sp50);
}
func_80126440(play, &this->collider, &this->unk1C4, &sp5C, &sp50);
func_80126440(play, &this->collider, &this->unk_1C4, &sp5C, &sp50);
func_8012C28C(play->state.gfxCtx);
func_80122868(play, player);

View File

@ -10,7 +10,7 @@ typedef void (*ArmsHookActionFunc)(struct ArmsHook*, PlayState*);
typedef struct ArmsHook {
/* 0x000 */ Actor actor;
/* 0x144 */ ColliderQuad collider;
/* 0x1C4 */ WeaponInfo unk1C4;
/* 0x1C4 */ WeaponInfo unk_1C4;
/* 0x1E0 */ Vec3f unk1E0;
/* 0x1EC */ Vec3f unk1EC;
/* 0x1F8 */ Actor* grabbed;

View File

@ -50,7 +50,7 @@ void BgF40Switch_CheckAll(BgF40Switch* this, PlayState* play) {
s32 isPressed;
Actor* actor;
BgF40Switch* actorAsSwitch;
u32 inCsMode = Player_InCsMode(&play->state);
u32 inCsMode = Player_InCsMode(play);
for (actor = play->actorCtx.actorLists[ACTORCAT_SWITCH].first; actor != NULL; actor = actor->next) {
if (actor->id == ACTOR_BG_F40_SWITCH && actor->room == this->dyna.actor.room && actor->update != NULL) {

View File

@ -67,7 +67,7 @@ s8 func_80ACABA8(BgOpenShutter* this, PlayState* play) {
f32 temp_fv0;
s16 temp_v0;
if (!Player_InCsMode(&play->state) && (this->dyna.actor.xzDistToPlayer < 100.0f)) {
if (!Player_InCsMode(play) && (this->dyna.actor.xzDistToPlayer < 100.0f)) {
temp_fv0 = func_80ACAB10(play, &this->dyna.actor, 0.0f, 65.0f, 15.0f);
if (fabsf(temp_fv0) < 50.0f) {
temp_v0 = player->actor.shape.rot.y - this->dyna.actor.shape.rot.y;

View File

@ -280,9 +280,9 @@ void func_809CE4C8(BgSpdweb* this, PlayState* play) {
sp40.z = this->dyna.actor.world.pos.z;
sp3A = player->unk_B6A;
if (func_80123F48(play, &sp40, 70.0f, 50.0f)) {
this->dyna.actor.home.pos.x = player->swordInfo[0].tip.x;
this->dyna.actor.home.pos.z = player->swordInfo[0].tip.z;
if (Player_IsBurningStickInRange(play, &sp40, 70.0f, 50.0f)) {
this->dyna.actor.home.pos.x = player->meleeWeaponInfo[0].tip.x;
this->dyna.actor.home.pos.z = player->meleeWeaponInfo[0].tip.z;
func_809CEE74(this);
return;
}
@ -461,7 +461,7 @@ void func_809CEBC0(BgSpdweb* this, PlayState* play) {
}
func_809CEE74(this);
} else if ((player->itemActionParam == 7) && (player->unk_B28 != 0)) {
Math_Vec3f_Diff(&player->swordInfo[0].tip, &this->dyna.actor.world.pos, &sp3C);
Math_Vec3f_Diff(&player->meleeWeaponInfo[0].tip, &this->dyna.actor.world.pos, &sp3C);
sp38 = Math_SinS(-this->dyna.actor.shape.rot.x);
sp34 = Math_CosS(-this->dyna.actor.shape.rot.x);
sp30 = Math_SinS(-this->dyna.actor.shape.rot.y);
@ -472,7 +472,7 @@ void func_809CEBC0(BgSpdweb* this, PlayState* play) {
temp_f10 = (sp3C.x * sp2C) + (sp3C.z * sp30);
if ((fabsf(temp_f10) < 70.0f) && (fabsf(sp58) < 10.0f) && (temp_f18 < 160.0f) && (temp_f18 > 20.0f)) {
Math_Vec3f_Copy(&this->dyna.actor.home.pos, &player->swordInfo[0].tip);
Math_Vec3f_Copy(&this->dyna.actor.home.pos, &player->meleeWeaponInfo[0].tip);
func_809CEE74(this);
}
}

View File

@ -288,7 +288,7 @@ f32 func_808A0D90(PlayState* play, DoorShutter* this, f32 arg2, f32 arg3, f32 ar
s32 func_808A0E28(DoorShutter* this, PlayState* play) {
Player* player = GET_PLAYER(play);
if (!Player_InCsMode(&play->state)) {
if (!Player_InCsMode(play)) {
ShutterInfo* shutterInfo = &D_808A21B0[this->unk_164];
f32 temp_f0 = func_808A0D90(play, this, 0.0f, shutterInfo->unk_0A, shutterInfo->unk_0B);
@ -569,7 +569,7 @@ void func_808A1884(DoorShutter* this, PlayState* play) {
if (DoorShutter_SetupDoor(this, play) && !(player->stateFlags1 & 0x800)) {
DoorShutter_SetupAction(this, func_808A1C50);
if (ActorCutscene_GetCurrentIndex() == 0x7D) {
func_801226E0(play, ((void)0, gSaveContext.respawn[RESTART_MODE_DOWN].data));
func_801226E0(play, ((void)0, gSaveContext.respawn[RESPAWN_MODE_DOWN].data));
player->unk_A86 = -1;
func_800B7298(play, NULL, 0x73);
}
@ -643,7 +643,7 @@ s32 func_808A1D68(DoorShutter* this, PlayState* play) {
s32 temp_a0;
s32 temp_a1;
if (Player_InCsMode(&play->state)) {
if (Player_InCsMode(play)) {
return true;
}

View File

@ -246,7 +246,7 @@ f32 DoorSpiral_GetDistFromPlayer(PlayState* play, DoorSpiral* this, f32 yOffset,
s32 DoorSpiral_PlayerShouldClimb(DoorSpiral* this, PlayState* play) {
Player* player = GET_PLAYER(play);
if (!Player_InCsMode(&play->state)) {
if (!Player_InCsMode(play)) {
SpiralInfo* spiralInfo = &sSpiralInfo[this->spiralType];
f32 dist = DoorSpiral_GetDistFromPlayer(play, this, 0.0f, spiralInfo->spiralWidth, spiralInfo->spiralHeight);

View File

@ -548,7 +548,7 @@ void EnArrow_Update(Actor* thisx, PlayState* play) {
if ((this->unk_263 != 0) ||
((this->actor.params >= ENARROW_0) && ((this->actor.params == ENARROW_7) || (player->unk_D57 != 0))) ||
!func_80123358(play, player)) {
!Player_InBlockingCsMode(play, player)) {
this->actionFunc(this, play);
}

View File

@ -297,7 +297,7 @@ void func_809CD634(EnBji01* this, PlayState* play) {
func_801A5BD0(0x6F);
Audio_QueueSeqCmd(0xE0000101);
play->nextEntranceIndex = 0x54A0; /* Termina Field from telescope */
gSaveContext.respawn[RESTART_MODE_DOWN].entranceIndex = play->nextEntranceIndex;
gSaveContext.respawn[RESPAWN_MODE_DOWN].entranceIndex = play->nextEntranceIndex;
func_80169EFC(&play->state); /* Load new entrance? */
gSaveContext.respawnFlag = -2;
this->actionFunc = EnBji01_DoNothing;

View File

@ -502,7 +502,7 @@ void EnBom_Update(Actor* thisx, PlayState* play) {
(this->collider1.base.oc->category == ACTORCAT_BOSS)))) {
this->timer = 0;
thisx->shape.rot.z = 0;
} else if ((this->timer > 100) && (func_80123F48(play, &thisx->world.pos, 30.0f, 50.0f))) {
} else if ((this->timer > 100) && (Player_IsBurningStickInRange(play, &thisx->world.pos, 30.0f, 50.0f))) {
this->timer = 100;
}

View File

@ -182,7 +182,7 @@ void func_808AEAE0(EnBombf* this, PlayState* play) {
}
}
} else {
if (func_80123F48(play, &this->actor.world.pos, 30.0f, 50.0f)) {
if (Player_IsBurningStickInRange(play, &this->actor.world.pos, 30.0f, 50.0f)) {
bombf = (EnBombf*)Actor_Spawn(&play->actorCtx, play, ACTOR_EN_BOMBF, this->actor.world.pos.x,
this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, ENBOMBF_0);
if (bombf != NULL) {
@ -365,7 +365,7 @@ void EnBombf_Update(Actor* thisx, PlayState* play) {
((this->colliderCylinder.base.ocFlags1 & OC1_HIT) && (this->colliderCylinder.base.oc->category == 5))) {
this->unk_1F8 = 1;
this->timer = 0;
} else if ((this->timer > 100) && func_80123F48(play, &this->actor.world.pos, 30.0f, 50.0f)) {
} else if ((this->timer > 100) && Player_IsBurningStickInRange(play, &this->actor.world.pos, 30.0f, 50.0f)) {
this->timer = 100;
}

View File

@ -321,9 +321,9 @@ void func_8091CBB4(EnButte* this, PlayState* play) {
sp40 = 0.0f;
if ((this->unk_24E != 0) && (this->unk_24C < 12)) {
sp48.x = player->swordInfo[0].tip.x + (Math_SinS(player->actor.shape.rot.y) * 10.0f);
sp48.y = player->swordInfo[0].tip.y;
sp48.z = player->swordInfo[0].tip.z + (Math_CosS(player->actor.shape.rot.y) * 10.0f);
sp48.x = player->meleeWeaponInfo[0].tip.x + (Math_SinS(player->actor.shape.rot.y) * 10.0f);
sp48.y = player->meleeWeaponInfo[0].tip.y;
sp48.z = player->meleeWeaponInfo[0].tip.z + (Math_CosS(player->actor.shape.rot.y) * 10.0f);
yaw = Math_Vec3f_Yaw(&this->actor.world.pos, &sp48);
if (Math_ScaledStepToS(&this->actor.world.rot.y, yaw + (s32)(Rand_ZeroOne() * D_8091D3F0), 0x7D0)) {
@ -335,10 +335,10 @@ void func_8091CBB4(EnButte* this, PlayState* play) {
}
}
if (player->swordInfo[0].tip.y < player->actor.world.pos.y + 30.0f) {
if (player->meleeWeaponInfo[0].tip.y < player->actor.world.pos.y + 30.0f) {
this->unk_25C = player->actor.world.pos.y + 30.0f;
} else {
this->unk_25C = player->swordInfo[0].tip.y;
this->unk_25C = player->meleeWeaponInfo[0].tip.y;
}
func_8091C6B4(this);
@ -359,7 +359,7 @@ void func_8091CBB4(EnButte* this, PlayState* play) {
!(distSq < SQ(320.0f))) {
func_8091C748(this);
} else if ((distSq > SQ(240.0f)) &&
(Math3D_XZDistanceSquared(player->swordInfo[0].tip.x, player->swordInfo[0].tip.z,
(Math3D_XZDistanceSquared(player->meleeWeaponInfo[0].tip.x, player->meleeWeaponInfo[0].tip.z,
this->actor.world.pos.x, this->actor.world.pos.z) < SQ(60.0f))) {
func_8091CF64(this);
}
@ -416,7 +416,7 @@ void EnButte_Update(Actor* thisx, PlayState* play) {
this->unk_258 += 0x600;
if (ENBUTTE_GET_1(&this->actor) == ENBUTTE_1) {
if (GET_PLAYER(play)->swordState == 0) {
if (GET_PLAYER(play)->meleeWeaponState == 0) {
if (this->unk_252 > 0) {
this->unk_252--;
}

View File

@ -438,7 +438,7 @@ s32 func_8089AE00(EnDinofos* this, PlayState* play) {
return true;
}
if ((this->actor.xzDistToPlayer < 100.0f) && (player->swordState != 0) && this->actor.isTargeted &&
if ((this->actor.xzDistToPlayer < 100.0f) && (player->meleeWeaponState != 0) && this->actor.isTargeted &&
(Rand_ZeroOne() < 0.5f) && func_8089A968(this) && Player_IsFacingActor(&this->actor, 0x2000, play)) {
if (Rand_ZeroOne() < 0.5f) {
func_8089C024(this, 2);

View File

@ -489,7 +489,7 @@ void func_80866B20(EnDoor* this, PlayState* play) {
} else if (this->unk_1A7 != 0) {
this->actionFunc = func_80866F94;
Actor_PlaySfxAtPos(&this->dyna.actor, NA_SE_EV_DOOR_OPEN);
} else if (!Player_InCsMode(&play->state)) {
} else if (!Player_InCsMode(play)) {
Actor_OffsetOfPointInActorCoords(&this->dyna.actor, &playerPosRelToDoor, &player->actor.world.pos);
if ((D_80867BC0[0] != 0) || ((fabsf(playerPosRelToDoor.y) < 20.0f) && (fabsf(playerPosRelToDoor.x) < 20.0f) &&
(fabsf(playerPosRelToDoor.z) < 50.0f))) {

View File

@ -662,7 +662,7 @@ void func_8088DD34(EnElf* this, PlayState* play) {
return;
}
if (Player_InCsMode(&play->state)) {
if (Player_InCsMode(play)) {
if ((this->fairyFlags & 0x4000) && (this->fairyFlags & 0x100) && func_8088DCA4(this)) {
return;
}

View File

@ -437,7 +437,7 @@ void EnElforg_FreeFloating(EnElforg* this, PlayState* play) {
}
scaledYDistance = this->actor.playerHeightRel - (this->actor.shape.yOffset * this->actor.scale.y);
if (!Player_InCsMode(&play->state)) {
if (!Player_InCsMode(play)) {
if ((this->actor.xzDistToPlayer < 30.0f) && (scaledYDistance < 12.0f) && (scaledYDistance > -68.0f)) {
EnElforg_SetupFairyCollected(this, play);
func_80115908(play, 48);

View File

@ -709,8 +709,10 @@ void func_80C20E90(EnHintSkb* this, PlayState* play) {
this->unk_3E8 |= 1;
case 15:
if ((player->swordAnimation == 4) || (player->swordAnimation == 11) || (player->swordAnimation == 22) ||
(player->swordAnimation == 23)) {
if ((player->meleeWeaponAnimation == PLAYER_MWA_RIGHT_SLASH_1H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_LEFT_COMBO_2H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_BACKSLASH_RIGHT) ||
(player->meleeWeaponAnimation == PLAYER_MWA_BACKSLASH_LEFT)) {
this->unk_3E8 |= 1;
}

View File

@ -931,7 +931,7 @@ void EnKakasi_DancingNightAway(EnKakasi* this, PlayState* play) {
if (this->unk204 == 0) {
player = GET_PLAYER(play);
Play_SetRespawnData(&play->state, RESTART_MODE_DOWN, Entrance_CreateIndexFromSpawn(0), player->unk_3CE,
Play_SetRespawnData(&play->state, RESPAWN_MODE_DOWN, Entrance_CreateIndexFromSpawn(0), player->unk_3CE,
0xBFF, &player->unk_3C0, player->unk_3CC);
func_80169EFC(&play->state);

View File

@ -254,7 +254,7 @@ void EnKanban_Update(Actor* thisx, PlayState* play) {
u8 i;
if (hitItem->toucher.dmgFlags & 0x200) {
this->cutType = sCutTypes[player->swordAnimation];
this->cutType = sCutTypes[player->meleeWeaponAnimation];
} else if (hitItem->toucher.dmgFlags & 0x10) {
this->invincibilityTimer = 0;
this->cutType = this->unk_19A + 3;

View File

@ -356,7 +356,8 @@ s32 func_80B26BF8(EnKendoJs* this, PlayState* play) {
return 0;
}
if ((player->swordState != 0) || (player->stateFlags3 & 0x8000000) || (player->stateFlags2 & 0x80000)) {
if ((player->meleeWeaponState != 0) || (player->stateFlags3 & 0x8000000) ||
(player->stateFlags2 & 0x80000)) {
return 1;
}
break;
@ -366,7 +367,7 @@ s32 func_80B26BF8(EnKendoJs* this, PlayState* play) {
return 0;
}
if ((player->swordState != 0) || (player->stateFlags2 & 0x80000)) {
if ((player->meleeWeaponState != 0) || (player->stateFlags2 & 0x80000)) {
return 1;
}
break;
@ -376,14 +377,16 @@ s32 func_80B26BF8(EnKendoJs* this, PlayState* play) {
return 0;
}
if ((player->swordState != 0) || (player->stateFlags3 & 0x8000000) || (player->stateFlags2 & 0x80000)) {
if ((player->meleeWeaponState != 0) || (player->stateFlags3 & 0x8000000) ||
(player->stateFlags2 & 0x80000)) {
return 1;
}
this->unk_28E = 0;
break;
case 3:
if ((this->unk_28E == 1) && ((player->swordAnimation == 4) || (player->swordAnimation == 6))) {
if ((this->unk_28E == 1) && ((player->meleeWeaponAnimation == PLAYER_MWA_RIGHT_SLASH_1H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_RIGHT_COMBO_1H))) {
this->unk_28E = 0;
return 0;
}
@ -395,7 +398,8 @@ s32 func_80B26BF8(EnKendoJs* this, PlayState* play) {
break;
case 4:
if ((this->unk_28E == 1) && ((player->swordAnimation == 0) || (player->swordAnimation == 2))) {
if ((this->unk_28E == 1) && ((player->meleeWeaponAnimation == PLAYER_MWA_FORWARD_SLASH_1H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_FORWARD_COMBO_1H))) {
this->unk_28E = 0;
return 0;
}
@ -407,7 +411,7 @@ s32 func_80B26BF8(EnKendoJs* this, PlayState* play) {
break;
case 5:
if ((this->unk_28E == 1) && (player->swordAnimation == 12)) {
if ((this->unk_28E == 1) && (player->meleeWeaponAnimation == PLAYER_MWA_STAB_1H)) {
this->unk_28E = 0;
return 0;
}
@ -419,7 +423,8 @@ s32 func_80B26BF8(EnKendoJs* this, PlayState* play) {
break;
case 6:
if ((this->unk_28E == 1) && ((player->swordAnimation == 17) || (player->swordAnimation == 20))) {
if ((this->unk_28E == 1) && ((player->meleeWeaponAnimation == PLAYER_MWA_JUMPSLASH_START) ||
(player->meleeWeaponAnimation == PLAYER_MWA_JUMPSLASH_FINISH))) {
this->unk_28E = 0;
return 0;
}
@ -449,7 +454,7 @@ s32 func_80B26F6C(EnKendoJs* this, PlayState* play) {
switch (this->unk_288) {
case 0x271D:
if (func_80124190(player)) {
if (Player_GetMeleeWeaponHeld(player) != 0) {
Message_StartTextbox(play, 0x272A, &this->actor);
this->unk_288 = 0x272A;
return true;
@ -612,12 +617,13 @@ void func_80B274BC(EnKendoJs* this, PlayState* play) {
}
if (this->unk_28E == 1) {
if ((player->swordAnimation == 17) || (player->swordAnimation == 20)) {
if ((player->meleeWeaponAnimation == PLAYER_MWA_JUMPSLASH_START) ||
(player->meleeWeaponAnimation == PLAYER_MWA_JUMPSLASH_FINISH)) {
play->interfaceCtx.unk_25C = 3;
if (gSaveContext.minigameScore >= 27) {
player->stateFlags1 |= 0x20;
}
} else if (player->swordAnimation == 12) {
} else if (player->meleeWeaponAnimation == PLAYER_MWA_STAB_1H) {
play->interfaceCtx.unk_25C = 2;
} else {
play->interfaceCtx.unk_25C = 1;

View File

@ -58,7 +58,40 @@ u8 D_80B386C0[] = {
};
s32 D_80B386CC[] = {
5, 5, 3, 3, 7, 7, 7, 7, 3, 3, 3, 3, 7, 7, 3, 3, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 7, 7,
5, // PLAYER_MWA_FORWARD_SLASH_1H
5, // PLAYER_MWA_FORWARD_SLASH_2H
3, // PLAYER_MWA_FORWARD_COMBO_1H
3, // PLAYER_MWA_FORWARD_COMBO_2H
7, // PLAYER_MWA_RIGHT_SLASH_1H
7, // PLAYER_MWA_RIGHT_SLASH_2H
7, // PLAYER_MWA_RIGHT_COMBO_1H
7, // PLAYER_MWA_RIGHT_COMBO_2H
3, // PLAYER_MWA_LEFT_SLASH_1H
3, // PLAYER_MWA_LEFT_SLASH_2H
3, // PLAYER_MWA_LEFT_COMBO_1H
3, // PLAYER_MWA_LEFT_COMBO_2H
7, // PLAYER_MWA_STAB_1H
7, // PLAYER_MWA_STAB_2H
3, // PLAYER_MWA_STAB_COMBO_1H
3, // PLAYER_MWA_STAB_COMBO_2H
0, // PLAYER_MWA_FLIPSLASH_START
0, // PLAYER_MWA_JUMPSLASH_START
0, // PLAYER_MWA_ZORA_JUMPKICK_START
0, // PLAYER_MWA_FLIPSLASH_FINISH
5, // PLAYER_MWA_JUMPSLASH_FINISH
0, // PLAYER_MWA_ZORA_JUMPKICK_FINISH
0, // PLAYER_MWA_BACKSLASH_RIGHT
0, // PLAYER_MWA_BACKSLASH_LEFT
0, // PLAYER_MWA_GORON_PUNCH_LEFT
0, // PLAYER_MWA_GORON_PUNCH_RIGHT
0, // PLAYER_MWA_GORON_PUNCH_BUTT
0, // PLAYER_MWA_ZORA_PUNCH_LEFT
0, // PLAYER_MWA_ZORA_PUNCH_COMBO
0, // PLAYER_MWA_ZORA_PUNCH_KICK
7, // PLAYER_MWA_SPIN_ATTACK_1H
7, // PLAYER_MWA_SPIN_ATTACK_2H
7, // PLAYER_MWA_BIG_SPIN_1H
7 // PLAYER_MWA_BIG_SPIN_2H
};
Vec3f D_80B38754 = { -2.0f, 3.0f, 0.0f };
@ -328,7 +361,7 @@ void func_80B37590(EnMaruta* this, PlayState* play) {
break;
case 4:
if (player->swordAnimation == 8) {
if (player->meleeWeaponAnimation == PLAYER_MWA_LEFT_SLASH_1H) {
sp48 = D_80B3876C;
} else {
sp48 = D_80B38778;
@ -337,7 +370,7 @@ void func_80B37590(EnMaruta* this, PlayState* play) {
break;
case 5:
if (player->swordAnimation == 0) {
if (player->meleeWeaponAnimation == PLAYER_MWA_FORWARD_SLASH_1H) {
sp48 = D_80B38784;
} else {
sp48 = D_80B38790;
@ -346,7 +379,7 @@ void func_80B37590(EnMaruta* this, PlayState* play) {
break;
case 6:
if (player->swordAnimation == 0) {
if (player->meleeWeaponAnimation == PLAYER_MWA_FORWARD_SLASH_1H) {
sp48 = D_80B3879C;
} else {
sp48 = D_80B387A8;
@ -355,7 +388,7 @@ void func_80B37590(EnMaruta* this, PlayState* play) {
break;
case 8:
if (player->swordAnimation == 4) {
if (player->meleeWeaponAnimation == PLAYER_MWA_RIGHT_SLASH_1H) {
sp48 = D_80B387B4;
} else {
sp48 = D_80B387C0;
@ -459,8 +492,10 @@ s32 func_80B37B78(EnMaruta* this, PlayState* play) {
temp_v1 = BINANG_SUB(temp_v1, player->actor.shape.rot.y);
if ((ABS_ALT(temp_v1) < 0x1555) ||
((player->swordState != 0) && ((player->swordAnimation == 4) || (player->swordAnimation == 6) ||
(player->swordAnimation == 0x1E) || (player->swordAnimation == 0x20)))) {
((player->meleeWeaponState != 0) && ((player->meleeWeaponAnimation == PLAYER_MWA_RIGHT_SLASH_1H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_RIGHT_COMBO_1H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_SPIN_ATTACK_1H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_BIG_SPIN_1H)))) {
return true;
}
return false;
@ -492,16 +527,17 @@ void func_80B37CA0(EnMaruta* this, PlayState* play) {
this->collider.base.acFlags &= ~AC_HIT;
Actor_PlaySfxAtPos(&this->actor, NA_SE_IT_SWORD_STRIKE);
if (D_80B386CC[player->swordAnimation] != 0) {
s32 temp = D_80B386CC[player->swordAnimation] + 1;
if (D_80B386CC[player->meleeWeaponAnimation] != 0) {
s32 temp = D_80B386CC[player->meleeWeaponAnimation] + 1;
temp = (temp << 8) & 0xFF00;
this->unk_210 = D_80B386CC[player->swordAnimation];
this->unk_210 = D_80B386CC[player->meleeWeaponAnimation];
Actor_SpawnAsChild(&play->actorCtx, &this->actor, play, ACTOR_EN_MARUTA, this->actor.world.pos.x,
this->actor.world.pos.y, this->actor.world.pos.z, 0, this->actor.shape.rot.y, 0,
temp);
this->actor.world.rot.y = this->actor.shape.rot.y;
if ((this->unk_210 == 5) || ((this->unk_210 == 7) && (player->swordAnimation == 0xC))) {
if ((this->unk_210 == 5) ||
((this->unk_210 == 7) && (player->meleeWeaponAnimation == PLAYER_MWA_STAB_1H))) {
func_80B37590(this, play);
} else {
func_80B374B8(this);

View File

@ -212,7 +212,7 @@ void func_80B1A768(EnPoSisters* this, PlayState* play) {
f32 sp20;
if ((this->unk_18D == 0) || (this->actionFunc != func_80B1B444)) {
if (((player->swordState == 0) || (player->swordAnimation >= 30)) &&
if (((player->meleeWeaponState == 0) || (player->meleeWeaponAnimation >= PLAYER_MWA_SPIN_ATTACK_1H)) &&
((player->actor.world.pos.y - player->actor.floorHeight) < 1.0f)) {
Math_StepToF(&this->unk_2EC, 110.0f, 3.0f);
} else {

View File

@ -1035,8 +1035,10 @@ void func_80B72970(EnRailSkb* this, PlayState* play) {
this->unk_402 |= 1;
case 15:
if ((player->swordAnimation == 4) || (player->swordAnimation == 11) || (player->swordAnimation == 22) ||
(player->swordAnimation == 23)) {
if ((player->meleeWeaponAnimation == PLAYER_MWA_RIGHT_SLASH_1H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_LEFT_COMBO_2H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_BACKSLASH_RIGHT) ||
(player->meleeWeaponAnimation == PLAYER_MWA_BACKSLASH_LEFT)) {
this->unk_402 |= 1;
}

View File

@ -962,8 +962,10 @@ void func_8099672C(EnSkb* this, PlayState* play) {
this->unk_3D8 |= 1;
case 15:
if ((player->swordAnimation == 4) || (player->swordAnimation == 11) ||
(player->swordAnimation == 22) || (player->swordAnimation == 23)) {
if ((player->meleeWeaponAnimation == PLAYER_MWA_RIGHT_SLASH_1H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_LEFT_COMBO_2H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_BACKSLASH_RIGHT) ||
(player->meleeWeaponAnimation == PLAYER_MWA_BACKSLASH_LEFT)) {
this->unk_3D8 |= 1;
}

View File

@ -150,9 +150,9 @@ void EnTanron1_Update(Actor* thisx, PlayState* play) {
}
if ((player->itemActionParam == 7) && (player->unk_B28 != 0)) {
this->unk_14C.x = player->swordInfo[0].tip.x;
this->unk_14C.y = player->swordInfo[0].tip.y;
this->unk_14C.z = player->swordInfo[0].tip.z;
this->unk_14C.x = player->meleeWeaponInfo[0].tip.x;
this->unk_14C.y = player->meleeWeaponInfo[0].tip.y;
this->unk_14C.z = player->meleeWeaponInfo[0].tip.z;
this->unk_158 = 0x5000;
this->unk_15C = 50.0f;
@ -207,8 +207,8 @@ void func_80BB5318(EnTanron1* this, PlayState* play) {
f32 temp_f30 = this->unk_15C;
if (player->unk_ADC != 0) {
phi_s2 = &player->swordInfo[0].tip;
if (player->swordAnimation >= 30) {
phi_s2 = &player->meleeWeaponInfo[0].tip;
if (player->meleeWeaponAnimation >= PLAYER_MWA_SPIN_ATTACK_1H) {
phi_f28 = 2500.0f;
} else {
phi_f28 = 400.0f;

View File

@ -398,7 +398,7 @@ void func_80A42AB8(EnTest4* this, PlayState* play) {
func_80A41FA4(this, play);
} else {
gSaveContext.screenScale = 0.0f;
Play_SetRespawnData(&play->state, RESTART_MODE_DOWN, Entrance_CreateIndexFromSpawn(0),
Play_SetRespawnData(&play->state, RESPAWN_MODE_DOWN, Entrance_CreateIndexFromSpawn(0),
player->unk_3CE, 0xBFF, &player->unk_3C0, player->unk_3CC);
func_80169EFC(&play->state);
if (player->stateFlags1 & 0x800000) {
@ -447,7 +447,7 @@ void func_80A42AB8(EnTest4* this, PlayState* play) {
} else {
playerParams = 0xBFF;
}
Play_SetRespawnData(&play->state, RESTART_MODE_RETURN, entranceIndex, player->unk_3CE, playerParams,
Play_SetRespawnData(&play->state, RESPAWN_MODE_RETURN, entranceIndex, player->unk_3CE, playerParams,
&player->unk_3C0, player->unk_3CC);
if ((play->sceneNum == SCENE_TENMON_DAI) || (play->sceneNum == SCENE_00KEIKOKU)) {

View File

@ -980,7 +980,7 @@ void func_80A92950(EnTest6* this, PlayState* play) {
player->unk_3CE, 0xBFF, &player->unk_3C0, player->unk_3CC);
this->unk_276 = 99;
play->sceneLoadFlag = 0x14;
play->nextEntranceIndex = gSaveContext.respawn[RESTART_MODE_RETURN].entranceIndex;
play->nextEntranceIndex = gSaveContext.respawn[RESPAWN_MODE_RETURN].entranceIndex;
play->unk_1887F = 2;
if ((gSaveContext.save.time > CLOCK_TIME(18, 0)) || (gSaveContext.save.time < CLOCK_TIME(6, 0))) {
gSaveContext.respawnFlag = -0x63;
@ -1061,7 +1061,7 @@ void func_80A92950(EnTest6* this, PlayState* play) {
player->unk_3CE, 0xBFF, &player->unk_3C0, player->unk_3CC);
this->unk_276 = 99;
play->sceneLoadFlag = 0x14;
play->nextEntranceIndex = gSaveContext.respawn[RESTART_MODE_RETURN].entranceIndex;
play->nextEntranceIndex = gSaveContext.respawn[RESPAWN_MODE_RETURN].entranceIndex;
play->unk_1887F = 2;
gSaveContext.respawnFlag = 2;
play->msgCtx.ocarinaMode = 4;

View File

@ -464,14 +464,14 @@ s32 func_80BA42BC(EnToto* this, PlayState* play) {
}
}
}
func_80122744(play, this->unk2BC, phi_s0, end - phi_s0);
func_80122744(play, &this->unk_2BC, phi_s0, end - phi_s0);
this->spotlights = Actor_Spawn(&play->actorCtx, play, ACTOR_DM_CHAR07, 0.0f, 0.0f, 0.0f, 0, 0, 0, 0xF02);
return 0;
}
s32 func_80BA43F4(EnToto* this, PlayState* play) {
func_80BA3C88(this);
if (func_80122760(play, this->unk2BC, 60.0f)) {
if (func_80122760(play, &this->unk_2BC, 60.0f)) {
func_800B7298(play, NULL, 0x13);
return func_80BA4204(this, play);
}

View File

@ -37,7 +37,7 @@ typedef struct EnToto {
/* 0x2B6 */ u8 unk2B6;
/* 0x2B7 */ u8 unk2B7;
/* 0x2B8 */ EnTotoText* text;
/* 0x2BC */ char unk2BC[0x8]; // Some z_player_lib struct size 0x8 more info from func_80122744 and func_80122760
/* 0x2BC */ struct_80122744_arg1 unk_2BC;
/* 0x2C4 */ Actor* spotlights;
/* 0x2C8 */ s32 pad2C8;
} EnToto; // size = 0x2CC

View File

@ -876,7 +876,7 @@ s32 func_80A87880(Actor* thisx, PlayState* play) {
} else if (Animation_OnFrame(&this->skelAnime, 12.0f) && !(this->unk_34E & 0x800)) {
this->unk_34E |= 0x400;
this->unk_34E |= 0x800;
func_80123AA4(player, 3);
Player_SetModels(player, 3);
}
break;

View File

@ -112,7 +112,7 @@ void func_80A66278(EnWarpUzu* this, PlayState* play) {
void func_80A66384(EnWarpUzu* this, PlayState* play) {
play->nextEntranceIndex = 0x22A0;
gSaveContext.respawn[RESTART_MODE_DOWN].entranceIndex = play->nextEntranceIndex;
gSaveContext.respawn[RESPAWN_MODE_DOWN].entranceIndex = play->nextEntranceIndex;
func_80169EFC(&play->state);
gSaveContext.respawnFlag = -2;
this->actionFunc = EnWarpUzu_DoNothing;

View File

@ -91,7 +91,7 @@ void EnWarpTag_CheckDungeonKeepObject(EnWarptag* this, PlayState* play) {
}
void EnWarpTag_WaitForPlayer(EnWarptag* this, PlayState* play) {
if (!Player_InCsMode(&play->state) && (this->dyna.actor.xzDistToPlayer <= 30.0f) &&
if (!Player_InCsMode(play) && (this->dyna.actor.xzDistToPlayer <= 30.0f) &&
(this->dyna.actor.playerHeightRel <= 10.0f)) {
if (GET_WARPTAG_INVISIBLE(&this->dyna.actor)) {
func_800B7298(play, NULL, 0x51);

View File

@ -411,7 +411,7 @@ s32 func_80990948(PlayState* play, EnWf* this, s16 arg2) {
}
if (func_800BE184(play, &this->actor, 100.0f, 10000, 12000, this->actor.shape.rot.y) &&
((player->swordAnimation == 0x11) || ((play->gameplayFrames % 2) != 0))) {
((player->meleeWeaponAnimation == PLAYER_MWA_JUMPSLASH_START) || ((play->gameplayFrames % 2) != 0))) {
func_8099282C(this);
return true;
}
@ -424,7 +424,7 @@ s32 func_80990948(PlayState* play, EnWf* this, s16 arg2) {
return true;
}
if ((player->swordAnimation == 0x11) || ((play->gameplayFrames % 2) != 0)) {
if ((player->meleeWeaponAnimation == PLAYER_MWA_JUMPSLASH_START) || ((play->gameplayFrames % 2) != 0)) {
func_8099282C(this);
return true;
}
@ -615,7 +615,7 @@ void func_80991280(EnWf* this, PlayState* play) {
if (!func_8099408C(play, this) && !func_80990948(play, this, 0)) {
phi_v1 = ABS_ALT(BINANG_SUB(player->actor.shape.rot.y, this->actor.shape.rot.y));
if ((this->actor.xzDistToPlayer < 80.0f) && (player->swordState != 0) && (phi_v1 >= 0x1F40)) {
if ((this->actor.xzDistToPlayer < 80.0f) && (player->meleeWeaponState != 0) && (phi_v1 >= 0x1F40)) {
this->actor.shape.rot.y = this->actor.yawTowardsPlayer;
this->actor.world.rot.y = this->actor.yawTowardsPlayer;
func_80991948(this);
@ -665,7 +665,7 @@ void func_8099149C(EnWf* this, PlayState* play) {
sp28 = ABS_ALT(BINANG_SUB(player->actor.shape.rot.y, this->actor.shape.rot.y));
if ((this->actor.xzDistToPlayer < (150.0f + sp2C)) && (player->swordState != 0) && (sp28 >= 0x1F40)) {
if ((this->actor.xzDistToPlayer < (150.0f + sp2C)) && (player->meleeWeaponState != 0) && (sp28 >= 0x1F40)) {
this->actor.shape.rot.y = this->actor.yawTowardsPlayer;
this->actor.world.rot.y = this->actor.yawTowardsPlayer;
if (Rand_ZeroOne() > 0.7f) {
@ -1066,7 +1066,7 @@ void func_809928CC(EnWf* this, PlayState* play) {
if (this->unk_2A0 != 0) {
this->unk_2A0--;
} else if (func_800BE184(play, &this->actor, 100.0f, 10000, 0x4000, this->actor.shape.rot.y)) {
if ((player->swordAnimation != 0x11) || ((play->gameplayFrames % 2) != 0)) {
if ((player->meleeWeaponAnimation != PLAYER_MWA_JUMPSLASH_START) || ((play->gameplayFrames % 2) != 0)) {
this->unk_2A0 = 10;
} else {
func_8099223C(this);

View File

@ -72,7 +72,7 @@ void EnWizFire_Init(Actor* thisx, PlayState* play) {
this->unk_1FC = 255.0f;
this->actor.flags &= ~ACTOR_FLAG_1;
if (!func_8012405C(play)) {
if (!Player_HasMirrorShieldEquipped(play)) {
this->collider.info.toucher.dmgFlags = 0x20000000;
}
@ -266,7 +266,7 @@ void func_80A49A44(EnWizFire* this, PlayState* play) {
}
}
if (func_8012405C(play) && (this->collider.base.atFlags & AT_BOUNCED)) {
if (Player_HasMirrorShieldEquipped(play) && (this->collider.base.atFlags & AT_BOUNCED)) {
Actor_PlaySfxAtPos(&this->actor, NA_SE_IT_SHIELD_REFLECT_MG);
this->collider.base.atFlags &= ~(AT_TYPE_ENEMY | AT_BOUNCED | AT_HIT);
this->collider.base.atFlags |= AT_TYPE_PLAYER;

View File

@ -602,7 +602,7 @@ void MirRay_Draw(Actor* thisx, PlayState* play) {
this->reflectIntensity = 0.0f;
if (!D_808E3BF0 && !this->unLit && func_80124088(play)) {
if (!D_808E3BF0 && !this->unLit && Player_IsHoldingMirrorShield(play)) {
Matrix_Mult(&player->shieldMf, MTXMODE_NEW);
MirRay_SetIntensity(this, play);

View File

@ -127,7 +127,7 @@ void MirRay3_Update(Actor* thisx, PlayState* play) {
this->unk_210 &= ~2;
if (func_8012405C(play)) {
if (Player_HasMirrorShieldEquipped(play)) {
if (this->colliderCylinder.base.acFlags & AC_HIT) {
this->unk_210 |= 2;
}
@ -353,7 +353,7 @@ void MirRay3_Draw(Actor* thisx, PlayState* play) {
f32 temp;
u16 time;
if (!(this->unk_210 & 1) && func_8012405C(play)) {
if (!(this->unk_210 & 1) && Player_HasMirrorShieldEquipped(play)) {
Matrix_Mult(&player->shieldMf, MTXMODE_NEW);
func_80B9E544(this, play);

View File

@ -4,6 +4,7 @@
* Description: Breakable Pot With Grass
*/
#include "prevent_bss_reordering.h"
#include "z_obj_flowerpot.h"
#include "objects/object_flowerpot/object_flowerpot.h"
@ -23,13 +24,13 @@ void func_80A1CC0C(ObjFlowerpot* this, PlayState* play);
void func_80A1CD10(ObjFlowerpot* this);
void func_80A1CEF4(ObjFlowerpot* this2, PlayState* play);
static u32 D_80A1D830;
static MtxF D_80A1D838[8];
static s16 D_80A1DA38;
static s16 D_80A1DA3A;
static s16 D_80A1DA3C;
static s16 D_80A1DA3E;
static s16 D_80A1DA40;
u32 D_80A1D830;
MtxF D_80A1D838[8];
s16 D_80A1DA38;
s16 D_80A1DA3A;
s16 D_80A1DA3C;
s16 D_80A1DA3E;
s16 D_80A1DA40;
const ActorInit Obj_Flowerpot_InitVars = {
ACTOR_OBJ_FLOWERPOT,
@ -81,15 +82,15 @@ static ColliderJntSphInit sJntSphInit = {
sJntSphElementsInit,
};
static s16 D_80A1D3F8 = 0;
s16 D_80A1D3F8 = 0;
static s16 D_80A1D3FC = 0;
s16 D_80A1D3FC = 0;
static s16 D_80A1D400 = 0;
s16 D_80A1D400 = 0;
static u8 D_80A1D404 = true;
u8 D_80A1D404 = true;
static Vec3f D_80A1D408 = { 0.0f, 20.0f, 0.0f };
Vec3f D_80A1D408 = { 0.0f, 20.0f, 0.0f };
static InitChainEntry sInitChain[] = {
ICHAIN_F32_DIV1000(gravity, -2000, ICHAIN_CONTINUE), ICHAIN_F32_DIV1000(terminalVelocity, -20000, ICHAIN_CONTINUE),

View File

@ -1204,7 +1204,7 @@ void func_80A25FD4(ObjIceblock* this, PlayState* play) {
if (sp2C == -1) {
sp30 = false;
} else if (!(this->unk_1B0 & 2) && (this->unk_26E[sp2C] >= 11) && !func_80A24118(this, play, 2.0f, &sp20) &&
!Player_InCsMode(&play->state)) {
!Player_InCsMode(play)) {
func_80A23370(this, sp2C);
func_80A260E8(this);
sp30 = false;

View File

@ -228,7 +228,9 @@ void func_80B658A4(ObjKendoKanban* this, PlayState* play) {
Player* player = GET_PLAYER(play);
if (this->unk_30C == OBJKENDOKANBAN_F_0) {
if ((player->swordAnimation == 0) || (player->swordAnimation == 1) || (player->swordAnimation == 0x14)) {
if ((player->meleeWeaponAnimation == PLAYER_MWA_FORWARD_SLASH_1H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_FORWARD_SLASH_2H) ||
(player->meleeWeaponAnimation == PLAYER_MWA_JUMPSLASH_FINISH)) {
this->unk_30C = (OBJKENDOKANBAN_F_4 | OBJKENDOKANBAN_F_1);
this->unk_304 = 0x71C;
this->actor.velocity = D_80B6666C;

View File

@ -84,7 +84,7 @@ s32 ObjOshihiki_StrongEnough(ObjOshihiki* this, PlayState* play) {
return true;
}
if (func_80124020() >= 2) {
if (Player_GetStrength() >= PLAYER_STRENGTH_ZORA) {
return true;
}
return false;

View File

@ -531,7 +531,7 @@ void func_80A22334(ObjSkateblock* this, PlayState* play) {
if (sp2C == -1) {
sp30 = false;
} else if (!(this->unk_1C1 & 2) && (this->unk_172[sp2C] > 10) && (D_80A22A10 == 0) &&
!func_80A216D4(this, play, 2.0f, &sp20) && !Player_InCsMode(&play->state)) {
!func_80A216D4(this, play, 2.0f, &sp20) && !Player_InCsMode(play)) {
func_80A21C88(this, sp2C);
func_80A2244C(this);
sp30 = false;

View File

@ -534,14 +534,14 @@ s32 func_80B30480(ObjSpidertent* this, PlayState* play, Vec3f* arg2) {
for (i = 0; i < ARRAY_COUNT(this->colliderElements); i++) {
triNorm = &this->collider.elements[i].dim;
if (func_80B2FB94(&player->swordInfo[0].tip, 6.0f, triNorm, &sp58, &sp54) &&
if (func_80B2FB94(&player->meleeWeaponInfo[0].tip, 6.0f, triNorm, &sp58, &sp54) &&
func_80B2FC98(triNorm, &sp58)) {
break;
}
}
if (i < ARRAY_COUNT(this->colliderElements)) {
Math_Vec3f_Copy(arg2, &player->swordInfo[0].tip);
Math_Vec3f_Copy(arg2, &player->meleeWeaponInfo[0].tip);
return true;
}
}

View File

@ -595,7 +595,7 @@ void ObjSwitch_FloorSwitchDown(ObjSwitch* this, PlayState* play) {
case OBJSWITCH_SUBTYPE_RESET:
case OBJSWITCH_SUBTYPE_RESET_INVERTED:
if (!DynaPolyActor_IsInSwitchPressedState(&this->dyna) &&
(!Player_InCsMode(&play->state) || play->sceneNum == SCENE_SECOM)) {
(!Player_InCsMode(play) || play->sceneNum == SCENE_SECOM)) {
if (this->floorSwitchReleaseTimer <= 0) {
if (subType == OBJSWITCH_SUBTYPE_RESET) {
ObjSwitch_SetSwitchFlagState(this, play, false);
@ -885,7 +885,7 @@ void ObjSwitch_LargeFloorSwitchDown(ObjSwitch* this, PlayState* play) {
ObjSwitch_LargeFloorSwitchRiseUpInit(this);
}
} else if (subType == OBJSWITCH_SUBTYPE_RESET || subType == OBJSWITCH_SUBTYPE_RESET_INVERTED) {
if (!DynaPolyActor_IsInHeavySwitchPressedState(&this->dyna) && !Player_InCsMode(&play->state)) {
if (!DynaPolyActor_IsInHeavySwitchPressedState(&this->dyna) && !Player_InCsMode(play)) {
if (this->floorSwitchReleaseTimer <= 0) {
if (OBJ_SWITCH_GET_SUBTYPE(&this->dyna.actor) == OBJSWITCH_SUBTYPE_RESET) {
ObjSwitch_SetSwitchFlagState(this, play, false);
@ -945,7 +945,7 @@ void ObjSwitch_Update(Actor* thisx, PlayState* play) {
break;
case OBJSWITCH_TYPE_CRYSTAL:
case OBJSWITCH_TYPE_CRYSTAL_TARGETABLE:
if (!Player_InCsMode(&play->state)) {
if (!Player_InCsMode(play)) {
if (this->disableCrystalSwitchTimer > 0) {
this->disableCrystalSwitchTimer--;
}

View File

@ -199,7 +199,7 @@ void ObjSyokudai_Update(Actor* thisx, PlayState* play2) {
} else if (player->itemActionParam == PLAYER_AP_STICK) {
Vec3f stickTipSeparationVec;
Math_Vec3f_Diff(&player->swordInfo[0].tip, &thisx->world.pos, &stickTipSeparationVec);
Math_Vec3f_Diff(&player->meleeWeaponInfo[0].tip, &thisx->world.pos, &stickTipSeparationVec);
stickTipSeparationVec.y -= OBJ_SYOKUDAI_STICK_IGNITION_HEIGHT;
if (SQXYZ(stickTipSeparationVec) < SQ(OBJ_SYOKUDAI_STICK_IGNITION_RADIUS)) {
interaction = OBJ_SYOKUDAI_INTERACTION_STICK;

View File

@ -457,9 +457,9 @@ void ObjTokeidai_TowerOpening_EndCutscene(ObjTokeidai* this, PlayState* play) {
gSaveContext.nextCutsceneIndex = 0;
gSaveContext.respawnFlag = 2;
play->sceneLoadFlag = 0x14;
play->nextEntranceIndex = gSaveContext.respawn[RESTART_MODE_RETURN].entranceIndex;
play->nextEntranceIndex = gSaveContext.respawn[RESPAWN_MODE_RETURN].entranceIndex;
play->unk_1887F = 2;
if (gSaveContext.respawn[RESTART_MODE_RETURN].playerParams == 0xCFF) {
if (gSaveContext.respawn[RESPAWN_MODE_RETURN].playerParams == 0xCFF) {
gSaveContext.nextTransition = 0x15;
} else {
gSaveContext.nextTransition = 2;

View File

@ -44,7 +44,7 @@ void Select_LoadGame(SelectContext* this, u32 entranceIndex, s32 opt) {
gSaveContext.save.time = CLOCK_TIME(6, 0) - 1;
}
gSaveContext.respawn[RESTART_MODE_DOWN].entranceIndex = 0xFFFF;
gSaveContext.respawn[RESPAWN_MODE_DOWN].entranceIndex = 0xFFFF;
gSaveContext.seqIndex = (u8)NA_BGM_DISABLED;
gSaveContext.nightSeqIndex = 0xFF;
gSaveContext.showTitleCard = true;

View File

@ -544,7 +544,7 @@
0x801BF550 : "z_map_exp",
0x801BF5C0 : "z_msgevent",
0x801BF6C0 : "z_parameter",
0x801BFDD0 : "z_player_lib",
0x801BFDA0 : "z_player_lib",
0x801C0EC0 : "z_quake",
0x801C0EF0 : "z_rcp",
0x801C1D10 : "z_room",

View File

@ -2182,29 +2182,29 @@
0x80122BA4:("func_80122BA4",),
0x80122C20:("func_80122C20",),
0x80122D44:("func_80122D44",),
0x80122ED8:("func_80122ED8",),
0x80122EEC:("func_80122EEC",),
0x80122ED8:("Player_MaskIdToItemId",),
0x80122EEC:("Player_GetCurMaskItemId",),
0x80122F28:("func_80122F28",),
0x80122F9C:("func_80122F9C",),
0x80122FCC:("func_80122FCC",),
0x8012300C:("func_8012300C",),
0x8012301C:("func_8012301C",),
0x80123140:("func_80123140",),
0x80123358:("func_80123358",),
0x80123358:("Player_InBlockingCsMode",),
0x801233E4:("Player_InCsMode",),
0x80123420:("func_80123420",),
0x80123434:("func_80123434",),
0x80123448:("func_80123448",),
0x801234B0:("func_801234B0",),
0x801234B0:("Player_IsGoronOrDeku",),
0x801234D4:("func_801234D4",),
0x80123590:("func_80123590",),
0x801235DC:("func_801235DC",),
0x8012364C:("func_8012364C",),
0x80123810:("func_80123810",),
0x80123960:("func_80123960",),
0x80123960:("Player_ActionToModelGroup",),
0x801239AC:("func_801239AC",),
0x80123AA4:("func_80123AA4",),
0x80123BD4:("func_80123BD4",),
0x80123AA4:("Player_SetModels",),
0x80123BD4:("Player_SetModelGroup",),
0x80123C58:("func_80123C58",),
0x80123C90:("Player_SetEquipmentData",),
0x80123D50:("func_80123D50",),
@ -2213,22 +2213,22 @@
0x80123E90:("func_80123E90",),
0x80123F14:("func_80123F14",),
0x80123F2C:("func_80123F2C",),
0x80123F48:("func_80123F48",),
0x80124020:("func_80124020",),
0x80123F48:("Player_IsBurningStickInRange",),
0x80124020:("Player_GetStrength",),
0x8012403C:("Player_GetMask",),
0x8012404C:("Player_RemoveMask",),
0x8012405C:("func_8012405C",),
0x80124088:("func_80124088",),
0x801240C8:("func_801240C8",),
0x8012405C:("Player_HasMirrorShieldEquipped",),
0x80124088:("Player_IsHoldingMirrorShield",),
0x801240C8:("Player_IsHoldingHookshot",),
0x801240DC:("func_801240DC",),
0x80124110:("func_80124110",),
0x80124148:("func_80124148",),
0x80124168:("func_80124168",),
0x80124190:("func_80124190",),
0x801241B4:("func_801241B4",),
0x801241E0:("func_801241E0",),
0x8012420C:("func_8012420C",),
0x8012422C:("func_8012422C",),
0x80124168:("Player_ActionToMeleeWeapon",),
0x80124190:("Player_GetMeleeWeaponHeld",),
0x801241B4:("Player_IsHoldingTwoHandedWeapon",),
0x801241E0:("Player_ActionToBottle",),
0x8012420C:("Player_GetBottleHeld",),
0x8012422C:("Player_ActionToExplosive",),
0x80124258:("Player_GetExplosiveHeld",),
0x80124278:("func_80124278",),
0x801242B4:("func_801242B4",),
@ -2244,7 +2244,7 @@
0x80125318:("func_80125318",),
0x80125340:("func_80125340",),
0x8012536C:("func_8012536C",),
0x801253A4:("func_801253A4",),
0x801253A4:("Player_DrawZoraShield",),
0x80125500:("func_80125500",),
0x80125580:("func_80125580",),
0x80125CE0:("func_80125CE0",),
@ -2254,15 +2254,15 @@
0x80126440:("func_80126440",),
0x801265C8:("func_801265C8",),
0x8012669C:("func_8012669C",),
0x80126808:("func_80126808",),
0x8012697C:("func_8012697C",),
0x80126808:("Player_DrawGetItemImpl",),
0x8012697C:("Player_DrawGetItem",),
0x80126AB4:("func_80126AB4",),
0x80126B8C:("func_80126B8C",),
0x80126BD0:("func_80126BD0",),
0x801271B0:("func_801271B0",),
0x80127438:("func_80127438",),
0x80127488:("func_80127488",),
0x8012754C:("func_8012754C",),
0x8012754C:("Player_DrawCouplesMask",),
0x80127594:("func_80127594",),
0x801278F8:("func_801278F8",),
0x80127A60:("func_80127A60",),

View File

@ -1200,32 +1200,23 @@
0x801BFD84:("D_801BFD84","UNK_TYPE1","",0x1),
0x801BFD8C:("D_801BFD8C","UNK_TYPE1","",0x1),
0x801BFD94:("D_801BFD94","UNK_TYPE1","",0x1),
0x801BFD98:("D_801BFD98","UNK_TYPE2","",0x2),
0x801BFD9E:("D_801BFD9E","UNK_TYPE1","",0x1),
0x801BFD98:("D_801BFD98","UNK_TYPE2","",0x8),
0x801BFDA0:("sMaskObjectIds","s16","[24]",0x30),
0x801BFDD0:("D_801BFDD0","UNK_TYPE1","",0x1),
0x801BFDE8:("D_801BFDE8","UNK_TYPE1","",0x1),
0x801BFDE8:("sMaskItemIds","UNK_TYPE1","",0x1),
0x801BFE00:("D_801BFE00","UNK_TYPE1","",0x1),
0x801BFE14:("D_801BFE14","UNK_TYPE1","",0x1),
0x801BFF34:("D_801BFF34","UNK_TYPE2","",0x2),
0x801BFF3C:("D_801BFF3C","UNK_TYPE1","",0x1),
0x801BFF3C:("sActionModelGroups","UNK_TYPE1","",0x1),
0x801BFF90:("D_801BFF90","UNK_TYPE1","",0x1),
0x801BFF98:("D_801BFF98","UNK_TYPE1","",0x1),
0x801BFFA0:("D_801BFFA0","UNK_TYPE1","",0x1),
0x801BFFB0:("D_801BFFB0","UNK_TYPE1","",0x1),
0x801BFF98:("sPlayerStrengths","UNK_TYPE1","",0x1),
0x801BFFA0:("sEnvironmentTextTriggers","UNK_TYPE1","",0x1),
0x801BFFB0:("gPlayerModelTypes","UNK_TYPE1","",0x1),
0x801BFFFC:("D_801BFFFC","UNK_TYPE1","",0x1),
0x801C0000:("D_801C0000","UNK_TYPE1","",0x1),
0x801C0001:("D_801C0001","UNK_TYPE1","",0x1),
0x801C0002:("D_801C0002","UNK_TYPE1","",0x1),
0x801C0008:("D_801C0008","UNK_TYPE1","",0x1),
0x801C0010:("D_801C0010","UNK_TYPE1","",0x1),
0x801C0024:("D_801C0024","UNK_TYPE1","",0x1),
0x801C0034:("D_801C0034","UNK_TYPE1","",0x1),
0x801C0040:("D_801C0040","UNK_TYPE1","",0x1),
0x801C005C:("D_801C005C","UNK_TYPE1","",0x1),
0x801C0060:("D_801C0060","UNK_TYPE1","",0x1),
0x801C0070:("D_801C0070","UNK_TYPE1","",0x1),
0x801C0084:("D_801C0084","UNK_TYPE1","",0x1),
0x801C00A0:("D_801C00A0","UNK_TYPE1","",0x1),
0x801C00AC:("D_801C00AC","UNK_TYPE1","",0x1),
0x801C00BC:("D_801C00BC","UNK_TYPE1","",0x1),
0x801C00D4:("D_801C00D4","UNK_TYPE1","",0x1),
@ -1245,7 +1236,7 @@
0x801C02BC:("D_801C02BC","UNK_TYPE1","",0x1),
0x801C02D0:("D_801C02D0","UNK_TYPE1","",0x1),
0x801C02E4:("D_801C02E4","UNK_TYPE1","",0x1),
0x801C02F8:("D_801C02F8","UNK_PTR","",0x4),
0x801C02F8:("sPlayerDListGroups","UNK_PTR","",0x4),
0x801C0340:("D_801C0340","UNK_TYPE1","",0x1),
0x801C0368:("D_801C0368","UNK_TYPE1","",0x1),
0x801C03A0:("D_801C03A0","UNK_TYPE1","",0x1),
@ -1262,9 +1253,7 @@
0x801C05A8:("D_801C05A8","UNK_TYPE1","",0x1),
0x801C05C8:("D_801C05C8","UNK_TYPE1","",0x1),
0x801C05D8:("D_801C05D8","UNK_TYPE1","",0x1),
0x801C05F0:("D_801C05F0","UNK_TYPE1","",0x1),
0x801C05F2:("D_801C05F2","UNK_TYPE2","",0x2),
0x801C05FA:("D_801C05FA","UNK_TYPE1","",0x1),
0x801C05F0:("D_801C05F0","struct_80124618","[3]",0x18),
0x801C0608:("D_801C0608","UNK_TYPE1","",0x1),
0x801C0628:("D_801C0628","UNK_TYPE1","",0x1),
0x801C0678:("D_801C0678","UNK_TYPE1","",0x1),
@ -1287,15 +1276,13 @@
0x801C0860:("D_801C0860","UNK_TYPE1","",0x1),
0x801C0870:("D_801C0870","UNK_PTR","",0x4),
0x801C0890:("D_801C0890","UNK_TYPE1","",0x1),
0x801C08A0:("D_801C08A0","UNK_TYPE1","",0x1),
0x801C08A1:("D_801C08A1","UNK_TYPE1","",0x1),
0x801C08A0:("D_801C08A0","UNK_TYPE1","",0x20),
0x801C08C0:("D_801C08C0","UNK_TYPE1","",0x1),
0x801C08FC:("D_801C08FC","UNK_TYPE1","",0x1),
0x801C0910:("D_801C0910","UNK_TYPE1","",0x1),
0x801C0924:("D_801C0924","UNK_TYPE1","",0x1),
0x801C0938:("D_801C0938","UNK_TYPE1","",0x1),
0x801C094C:("D_801C094C","UNK_TYPE1","",0x1),
0x801C0954:("D_801C0954","UNK_TYPE4","",0x4),
0x801C094C:("D_801C094C","Vec3f","",0xC),
0x801C0958:("D_801C0958","UNK_TYPE4","",0x4),
0x801C095C:("D_801C095C","UNK_PTR","",0x4),
0x801C0964:("D_801C0964","UNK_TYPE1","",0x1),
@ -1321,27 +1308,18 @@
0x801C0B1C:("D_801C0B1C","UNK_TYPE1","",0x1),
0x801C0B20:("D_801C0B20","UNK_TYPE1","",0x1),
0x801C0B90:("D_801C0B90","UNK_TYPE1","",0x1),
0x801C0BA8:("D_801C0BA8","UNK_TYPE4","",0x4),
0x801C0BAC:("D_801C0BAC","UNK_TYPE4","",0x4),
0x801C0BB0:("D_801C0BB0","UNK_TYPE4","",0x4),
0x801C0BB4:("D_801C0BB4","UNK_TYPE1","",0x1),
0x801C0BB8:("D_801C0BB8","UNK_TYPE4","",0x4),
0x801C0BA8:("D_801C0BA8","Vec3f","",0xC),
0x801C0BB4:("D_801C0BB4","Vec3f","",0xC),
0x801C0BC0:("D_801C0BC0","UNK_TYPE1","",0x1),
0x801C0BD0:("D_801C0BD0","UNK_TYPE1","",0x1),
0x801C0BE0:("D_801C0BE0","UNK_TYPE4","",0x4),
0x801C0BE4:("D_801C0BE4","UNK_TYPE4","",0x4),
0x801C0BE8:("D_801C0BE8","UNK_TYPE4","",0x4),
0x801C0BEC:("D_801C0BEC","UNK_TYPE4","",0x4),
0x801C0BF0:("D_801C0BF0","UNK_TYPE4","",0x4),
0x801C0BF4:("D_801C0BF4","UNK_TYPE4","",0x4),
0x801C0BE0:("D_801C0BE0","Vec3f","",0xC),
0x801C0BEC:("D_801C0BEC","Vec3f","",0xC),
0x801C0BF8:("D_801C0BF8","UNK_TYPE1","",0x1),
0x801C0BFC:("D_801C0BFC","UNK_TYPE1","",0x1),
0x801C0C00:("D_801C0C00","UNK_TYPE1","",0x1),
0x801C0C0C:("D_801C0C0C","UNK_TYPE4","",0x4),
0x801C0C30:("D_801C0C30","UNK_TYPE1","",0x1),
0x801C0C54:("D_801C0C54","UNK_TYPE1","",0x1),
0x801C0C78:("D_801C0C78","UNK_TYPE1","",0x1),
0x801C0C94:("D_801C0C94","UNK_TYPE1","",0x1),
0x801C0C54:("D_801C0C54","struct_80128388_arg1","",0x54),
0x801C0CA8:("D_801C0CA8","UNK_TYPE1","",0x1),
0x801C0CE8:("D_801C0CE8","UNK_TYPE4","",0x4),
0x801C0D24:("D_801C0D24","UNK_TYPE1","",0x1),
@ -1394,8 +1372,8 @@
0x801C2650:("tatlMessageFiles","RomFile","[2]",0x10),
0x801C2660:("sceneTextureFiles","RomFile","[9]",0x48),
0x801C26A8:("sceneHeaderFuncTable","scene_header_func","[31]",0x7c),
0x801C2730:("gLinkFormObjectIndexes","s16","[8]",0x10),
0x801C2740:("objectFileTable","RomFile","[643]",0x1418),
0x801C2730:("gPlayerFormObjectIndices","s16","[8]",0x10),
0x801C2740:("gObjectTable","RomFile","[643]",0x1418),
0x801C3B60:("sSceneDrawDefaultDl","Gfx","[11]",0x58),
0x801C3BB8:("gSceneProcSceneDrawFuncs","SceneDrawConfigFunc","[8]",0x20),
0x801C3BD8:("gSceneProcDrawFuncs","scene_proc_draw_func","[6]",0x18),
@ -4057,9 +4035,7 @@
0x801F59DC:("D_801F59DC","UNK_TYPE1","",0x1),
0x801F59E0:("D_801F59E0","UNK_TYPE1","",0x1),
0x801F59E4:("D_801F59E4","UNK_TYPE1","",0x1),
0x801F59E8:("D_801F59E8","UNK_TYPE1","",0x1),
0x801F59EC:("D_801F59EC","UNK_TYPE1","",0x1),
0x801F59F0:("D_801F59F0","UNK_TYPE1","",0x1),
0x801F59E8:("D_801F59E8","Vec3f","",0xC),
0x801F59F4:("D_801F59F4","UNK_TYPE1","",0x1),
0x801F59F8:("D_801F59F8","UNK_TYPE1","",0x1),
0x801F5A00:("sQuakeRequest","QuakeRequest","[4]",0x90),

View File

@ -100,6 +100,12 @@ wordReplace = {
"func_800B78B8": "Actor_UpdateBgCheckInfo",
"func_8012403C": "Player_GetMask",
"func_8012404c": "Player_RemoveMask",
"func_80123AA4": "Player_SetModels",
"func_80123BD4": "Player_SetModelGroup",
"func_80123F48": "Player_IsBurningStickInRange",
"func_8012405C": "Player_HasMirrorShieldEquipped",
"func_80124088": "Player_IsHoldingMirrorShield",
"func_8012697C": "Player_DrawGetItem",
"Actor_SpawnWithParentAndCutscene": "Actor_SpawnAsChildAndCutscene",
"Actor_SpawnWithParent": "Actor_SpawnAsChild",
"Actor_IsLinkFacingActor": "Player_IsFacingActor",
@ -589,7 +595,6 @@ wordReplace = {
"skelAnime.prevFrameRot": "skelAnime.prevRot",
"skelAnime.prevFramePos": "skelAnime.prevTransl",
"skelAnime.unk3E": "skelAnime.baseTransl",
"actor.minVelocityY": "actor.terminalVelocity",
"actor.yDistToWater": "actor.depthInWater",
"actor.yDistToPlayer": "actor.playerHeightRel",
@ -620,6 +625,7 @@ wordReplace = {
"gSaveContext.skullTokenCount": "gSaveContext.save.skullTokenCount",
"gSaveContext.cutscene": "gSaveContext.save.cutscene",
"gSaveContext.health": "gSaveContext.save.playerData.health",
"gSaveContext.equips": "gSaveContext.save.equips",
"gSaveContext.unk_1016": "gSaveContext.jinxTimer",
"gSaveContext.unk_3F58": "gSaveContext.sunsSongState",
"gSaveContext.unk_48C8": "gSaveContext.dungeonIndex",
@ -631,17 +637,23 @@ wordReplace = {
"player->unk_388": "player->interactRangeActor",
"player->unk_38C": "player->mountSide",
"player->unk_394": "player->csMode",
"player->swordQuads": "player->meleeWeaponQuads",
"player->blureEffectIndex": "player->meleeWeaponEffectIndex",
"player->swordAnimation": "player->meleeWeaponAnimation",
"player->swordState": "player->meleeWeaponState",
"player->swordInfo": "player->meleeWeaponInfo",
"csCtx.npcActions": "csCtx.actorActions",
"csCtx->npcActions": "csCtx->actorActions",
"csCtx.unk_12": "csCtx.currentCsIndex",
"play->mf_187FC": "play->billboardMtxF",
"play->projectionMatrix": "play->viewProjectionMtxF",
"play->actorCtx.actorList[": "play->actorCtx.actorLists[",
"play->envCtx.unk_8C": "play->envCtx.lightSettings",
"play->envCtx.unk_E5": "play->envCtx.fillScreen",
"play->envCtx.unk_E6": "play->envCtx.screenFillColor",
"play->envCtx.unk_C3": "play->envCtx.lightSettingOverride",
"play->envCtx.unk_DC": "play->envCtx.lightBlend",
"globalCtx->mf_187FC": "play->billboardMtxF",
"globalCtx->projectionMatrix": "play->viewProjectionMtxF",
"globalCtx->actorCtx.actorList[": "play->actorCtx.actorLists[",
"globalCtx->envCtx.unk_8C": "play->envCtx.lightSettings",
"globalCtx->envCtx.unk_E5": "play->envCtx.fillScreen",
"globalCtx->envCtx.unk_E6": "play->envCtx.screenFillColor",
"globalCtx->envCtx.unk_C3": "play->envCtx.lightSettingOverride",
"globalCtx->envCtx.unk_DC": "play->envCtx.lightBlend",
"globalCtx->interfaceCtx.unk_21E": "play->interfaceCtx.bButtonDoAction",
"play->msgCtx.unk1202A": "play->msgCtx.ocarinaMode",
"play->msgCtx.unk1202C": "play->msgCtx.ocarinaAction",

View File

@ -9,6 +9,7 @@ SET_FULLSCREEN_VIEWPORT = "void"
OPEN_DISPS = "void"
CLOSE_DISPS = "void"
ABS = "int"
ABS_ALT = "int"
SQ = "int"
CLAMP = "int"
CLOCK_TIME = "int"

View File

@ -1696,29 +1696,29 @@ asm/non_matchings/code/z_player_lib/func_801229FC.s,func_801229FC,0x801229FC,0x6
asm/non_matchings/code/z_player_lib/func_80122BA4.s,func_80122BA4,0x80122BA4,0x1F
asm/non_matchings/code/z_player_lib/func_80122C20.s,func_80122C20,0x80122C20,0x49
asm/non_matchings/code/z_player_lib/func_80122D44.s,func_80122D44,0x80122D44,0x65
asm/non_matchings/code/z_player_lib/func_80122ED8.s,func_80122ED8,0x80122ED8,0x5
asm/non_matchings/code/z_player_lib/func_80122EEC.s,func_80122EEC,0x80122EEC,0xF
asm/non_matchings/code/z_player_lib/Player_MaskIdToItemId.s,Player_MaskIdToItemId,0x80122ED8,0x5
asm/non_matchings/code/z_player_lib/Player_GetCurMaskItemId.s,Player_GetCurMaskItemId,0x80122EEC,0xF
asm/non_matchings/code/z_player_lib/func_80122F28.s,func_80122F28,0x80122F28,0x1D
asm/non_matchings/code/z_player_lib/func_80122F9C.s,func_80122F9C,0x80122F9C,0xC
asm/non_matchings/code/z_player_lib/func_80122FCC.s,func_80122FCC,0x80122FCC,0x10
asm/non_matchings/code/z_player_lib/func_8012300C.s,func_8012300C,0x8012300C,0x4
asm/non_matchings/code/z_player_lib/func_8012301C.s,func_8012301C,0x8012301C,0x49
asm/non_matchings/code/z_player_lib/func_80123140.s,func_80123140,0x80123140,0x86
asm/non_matchings/code/z_player_lib/func_80123358.s,func_80123358,0x80123358,0x23
asm/non_matchings/code/z_player_lib/Player_InBlockingCsMode.s,Player_InBlockingCsMode,0x80123358,0x23
asm/non_matchings/code/z_player_lib/Player_InCsMode.s,Player_InCsMode,0x801233E4,0xF
asm/non_matchings/code/z_player_lib/func_80123420.s,func_80123420,0x80123420,0x5
asm/non_matchings/code/z_player_lib/func_80123434.s,func_80123434,0x80123434,0x5
asm/non_matchings/code/z_player_lib/func_80123448.s,func_80123448,0x80123448,0x1A
asm/non_matchings/code/z_player_lib/func_801234B0.s,func_801234B0,0x801234B0,0x9
asm/non_matchings/code/z_player_lib/Player_IsGoronOrDeku.s,Player_IsGoronOrDeku,0x801234B0,0x9
asm/non_matchings/code/z_player_lib/func_801234D4.s,func_801234D4,0x801234D4,0x2F
asm/non_matchings/code/z_player_lib/func_80123590.s,func_80123590,0x80123590,0x13
asm/non_matchings/code/z_player_lib/func_801235DC.s,func_801235DC,0x801235DC,0x1C
asm/non_matchings/code/z_player_lib/func_8012364C.s,func_8012364C,0x8012364C,0x71
asm/non_matchings/code/z_player_lib/func_80123810.s,func_80123810,0x80123810,0x54
asm/non_matchings/code/z_player_lib/func_80123960.s,func_80123960,0x80123960,0x13
asm/non_matchings/code/z_player_lib/Player_ActionToModelGroup.s,Player_ActionToModelGroup,0x80123960,0x13
asm/non_matchings/code/z_player_lib/func_801239AC.s,func_801239AC,0x801239AC,0x3E
asm/non_matchings/code/z_player_lib/func_80123AA4.s,func_80123AA4,0x80123AA4,0x4C
asm/non_matchings/code/z_player_lib/func_80123BD4.s,func_80123BD4,0x80123BD4,0x21
asm/non_matchings/code/z_player_lib/Player_SetModels.s,Player_SetModels,0x80123AA4,0x4C
asm/non_matchings/code/z_player_lib/Player_SetModelGroup.s,Player_SetModelGroup,0x80123BD4,0x21
asm/non_matchings/code/z_player_lib/func_80123C58.s,func_80123C58,0x80123C58,0xE
asm/non_matchings/code/z_player_lib/Player_SetEquipmentData.s,Player_SetEquipmentData,0x80123C90,0x30
asm/non_matchings/code/z_player_lib/func_80123D50.s,func_80123D50,0x80123D50,0x15
@ -1727,22 +1727,22 @@ asm/non_matchings/code/z_player_lib/func_80123DC0.s,func_80123DC0,0x80123DC0,0x3
asm/non_matchings/code/z_player_lib/func_80123E90.s,func_80123E90,0x80123E90,0x21
asm/non_matchings/code/z_player_lib/func_80123F14.s,func_80123F14,0x80123F14,0x6
asm/non_matchings/code/z_player_lib/func_80123F2C.s,func_80123F2C,0x80123F2C,0x7
asm/non_matchings/code/z_player_lib/func_80123F48.s,func_80123F48,0x80123F48,0x36
asm/non_matchings/code/z_player_lib/func_80124020.s,func_80124020,0x80124020,0x7
asm/non_matchings/code/z_player_lib/Player_IsBurningStickInRange.s,Player_IsBurningStickInRange,0x80123F48,0x36
asm/non_matchings/code/z_player_lib/Player_GetStrength.s,Player_GetStrength,0x80124020,0x7
asm/non_matchings/code/z_player_lib/Player_GetMask.s,Player_GetMask,0x8012403C,0x4
asm/non_matchings/code/z_player_lib/Player_RemoveMask.s,Player_RemoveMask,0x8012404C,0x4
asm/non_matchings/code/z_player_lib/func_8012405C.s,func_8012405C,0x8012405C,0xB
asm/non_matchings/code/z_player_lib/func_80124088.s,func_80124088,0x80124088,0x10
asm/non_matchings/code/z_player_lib/func_801240C8.s,func_801240C8,0x801240C8,0x5
asm/non_matchings/code/z_player_lib/Player_HasMirrorShieldEquipped.s,Player_HasMirrorShieldEquipped,0x8012405C,0xB
asm/non_matchings/code/z_player_lib/Player_IsHoldingMirrorShield.s,Player_IsHoldingMirrorShield,0x80124088,0x10
asm/non_matchings/code/z_player_lib/Player_IsHoldingHookshot.s,Player_IsHoldingHookshot,0x801240C8,0x5
asm/non_matchings/code/z_player_lib/func_801240DC.s,func_801240DC,0x801240DC,0xD
asm/non_matchings/code/z_player_lib/func_80124110.s,func_80124110,0x80124110,0xE
asm/non_matchings/code/z_player_lib/func_80124148.s,func_80124148,0x80124148,0x8
asm/non_matchings/code/z_player_lib/func_80124168.s,func_80124168,0x80124168,0xA
asm/non_matchings/code/z_player_lib/func_80124190.s,func_80124190,0x80124190,0x9
asm/non_matchings/code/z_player_lib/func_801241B4.s,func_801241B4,0x801241B4,0xB
asm/non_matchings/code/z_player_lib/func_801241E0.s,func_801241E0,0x801241E0,0xB
asm/non_matchings/code/z_player_lib/func_8012420C.s,func_8012420C,0x8012420C,0x8
asm/non_matchings/code/z_player_lib/func_8012422C.s,func_8012422C,0x8012422C,0xB
asm/non_matchings/code/z_player_lib/Player_ActionToMeleeWeapon.s,Player_ActionToMeleeWeapon,0x80124168,0xA
asm/non_matchings/code/z_player_lib/Player_GetMeleeWeaponHeld.s,Player_GetMeleeWeaponHeld,0x80124190,0x9
asm/non_matchings/code/z_player_lib/Player_IsHoldingTwoHandedWeapon.s,Player_IsHoldingTwoHandedWeapon,0x801241B4,0xB
asm/non_matchings/code/z_player_lib/Player_ActionToBottle.s,Player_ActionToBottle,0x801241E0,0xB
asm/non_matchings/code/z_player_lib/Player_GetBottleHeld.s,Player_GetBottleHeld,0x8012420C,0x8
asm/non_matchings/code/z_player_lib/Player_ActionToExplosive.s,Player_ActionToExplosive,0x8012422C,0xB
asm/non_matchings/code/z_player_lib/Player_GetExplosiveHeld.s,Player_GetExplosiveHeld,0x80124258,0x8
asm/non_matchings/code/z_player_lib/func_80124278.s,func_80124278,0x80124278,0xF
asm/non_matchings/code/z_player_lib/func_801242B4.s,func_801242B4,0x801242B4,0xA
@ -1758,7 +1758,7 @@ asm/non_matchings/code/z_player_lib/func_801251C4.s,func_801251C4,0x801251C4,0x5
asm/non_matchings/code/z_player_lib/func_80125318.s,func_80125318,0x80125318,0xA
asm/non_matchings/code/z_player_lib/func_80125340.s,func_80125340,0x80125340,0xB
asm/non_matchings/code/z_player_lib/func_8012536C.s,func_8012536C,0x8012536C,0xE
asm/non_matchings/code/z_player_lib/func_801253A4.s,func_801253A4,0x801253A4,0x57
asm/non_matchings/code/z_player_lib/Player_DrawZoraShield.s,Player_DrawZoraShield,0x801253A4,0x57
asm/non_matchings/code/z_player_lib/func_80125500.s,func_80125500,0x80125500,0x20
asm/non_matchings/code/z_player_lib/func_80125580.s,func_80125580,0x80125580,0x1D8
asm/non_matchings/code/z_player_lib/func_80125CE0.s,func_80125CE0,0x80125CE0,0x1B
@ -1768,15 +1768,15 @@ asm/non_matchings/code/z_player_lib/func_801263FC.s,func_801263FC,0x801263FC,0x1
asm/non_matchings/code/z_player_lib/func_80126440.s,func_80126440,0x80126440,0x62
asm/non_matchings/code/z_player_lib/func_801265C8.s,func_801265C8,0x801265C8,0x35
asm/non_matchings/code/z_player_lib/func_8012669C.s,func_8012669C,0x8012669C,0x5B
asm/non_matchings/code/z_player_lib/func_80126808.s,func_80126808,0x80126808,0x5D
asm/non_matchings/code/z_player_lib/func_8012697C.s,func_8012697C,0x8012697C,0x4E
asm/non_matchings/code/z_player_lib/Player_DrawGetItemImpl.s,Player_DrawGetItemImpl,0x80126808,0x5D
asm/non_matchings/code/z_player_lib/Player_DrawGetItem.s,Player_DrawGetItem,0x8012697C,0x4E
asm/non_matchings/code/z_player_lib/func_80126AB4.s,func_80126AB4,0x80126AB4,0x36
asm/non_matchings/code/z_player_lib/func_80126B8C.s,func_80126B8C,0x80126B8C,0x11
asm/non_matchings/code/z_player_lib/func_80126BD0.s,func_80126BD0,0x80126BD0,0x178
asm/non_matchings/code/z_player_lib/func_801271B0.s,func_801271B0,0x801271B0,0xA2
asm/non_matchings/code/z_player_lib/func_80127438.s,func_80127438,0x80127438,0x14
asm/non_matchings/code/z_player_lib/func_80127488.s,func_80127488,0x80127488,0x31
asm/non_matchings/code/z_player_lib/func_8012754C.s,func_8012754C,0x8012754C,0x12
asm/non_matchings/code/z_player_lib/Player_DrawCouplesMask.s,Player_DrawCouplesMask,0x8012754C,0x12
asm/non_matchings/code/z_player_lib/func_80127594.s,func_80127594,0x80127594,0xD9
asm/non_matchings/code/z_player_lib/func_801278F8.s,func_801278F8,0x801278F8,0x5A
asm/non_matchings/code/z_player_lib/func_80127A60.s,func_80127A60,0x80127A60,0x41

1 asm/non_matchings/code/z_en_a_keep/EnAObj_Init.s EnAObj_Init 0x800A5AC0 0x2B
1696 asm/non_matchings/code/z_player_lib/func_80122BA4.s func_80122BA4 0x80122BA4 0x1F
1697 asm/non_matchings/code/z_player_lib/func_80122C20.s func_80122C20 0x80122C20 0x49
1698 asm/non_matchings/code/z_player_lib/func_80122D44.s func_80122D44 0x80122D44 0x65
1699 asm/non_matchings/code/z_player_lib/func_80122ED8.s asm/non_matchings/code/z_player_lib/Player_MaskIdToItemId.s func_80122ED8 Player_MaskIdToItemId 0x80122ED8 0x5
1700 asm/non_matchings/code/z_player_lib/func_80122EEC.s asm/non_matchings/code/z_player_lib/Player_GetCurMaskItemId.s func_80122EEC Player_GetCurMaskItemId 0x80122EEC 0xF
1701 asm/non_matchings/code/z_player_lib/func_80122F28.s func_80122F28 0x80122F28 0x1D
1702 asm/non_matchings/code/z_player_lib/func_80122F9C.s func_80122F9C 0x80122F9C 0xC
1703 asm/non_matchings/code/z_player_lib/func_80122FCC.s func_80122FCC 0x80122FCC 0x10
1704 asm/non_matchings/code/z_player_lib/func_8012300C.s func_8012300C 0x8012300C 0x4
1705 asm/non_matchings/code/z_player_lib/func_8012301C.s func_8012301C 0x8012301C 0x49
1706 asm/non_matchings/code/z_player_lib/func_80123140.s func_80123140 0x80123140 0x86
1707 asm/non_matchings/code/z_player_lib/func_80123358.s asm/non_matchings/code/z_player_lib/Player_InBlockingCsMode.s func_80123358 Player_InBlockingCsMode 0x80123358 0x23
1708 asm/non_matchings/code/z_player_lib/Player_InCsMode.s Player_InCsMode 0x801233E4 0xF
1709 asm/non_matchings/code/z_player_lib/func_80123420.s func_80123420 0x80123420 0x5
1710 asm/non_matchings/code/z_player_lib/func_80123434.s func_80123434 0x80123434 0x5
1711 asm/non_matchings/code/z_player_lib/func_80123448.s func_80123448 0x80123448 0x1A
1712 asm/non_matchings/code/z_player_lib/func_801234B0.s asm/non_matchings/code/z_player_lib/Player_IsGoronOrDeku.s func_801234B0 Player_IsGoronOrDeku 0x801234B0 0x9
1713 asm/non_matchings/code/z_player_lib/func_801234D4.s func_801234D4 0x801234D4 0x2F
1714 asm/non_matchings/code/z_player_lib/func_80123590.s func_80123590 0x80123590 0x13
1715 asm/non_matchings/code/z_player_lib/func_801235DC.s func_801235DC 0x801235DC 0x1C
1716 asm/non_matchings/code/z_player_lib/func_8012364C.s func_8012364C 0x8012364C 0x71
1717 asm/non_matchings/code/z_player_lib/func_80123810.s func_80123810 0x80123810 0x54
1718 asm/non_matchings/code/z_player_lib/func_80123960.s asm/non_matchings/code/z_player_lib/Player_ActionToModelGroup.s func_80123960 Player_ActionToModelGroup 0x80123960 0x13
1719 asm/non_matchings/code/z_player_lib/func_801239AC.s func_801239AC 0x801239AC 0x3E
1720 asm/non_matchings/code/z_player_lib/func_80123AA4.s asm/non_matchings/code/z_player_lib/Player_SetModels.s func_80123AA4 Player_SetModels 0x80123AA4 0x4C
1721 asm/non_matchings/code/z_player_lib/func_80123BD4.s asm/non_matchings/code/z_player_lib/Player_SetModelGroup.s func_80123BD4 Player_SetModelGroup 0x80123BD4 0x21
1722 asm/non_matchings/code/z_player_lib/func_80123C58.s func_80123C58 0x80123C58 0xE
1723 asm/non_matchings/code/z_player_lib/Player_SetEquipmentData.s Player_SetEquipmentData 0x80123C90 0x30
1724 asm/non_matchings/code/z_player_lib/func_80123D50.s func_80123D50 0x80123D50 0x15
1727 asm/non_matchings/code/z_player_lib/func_80123E90.s func_80123E90 0x80123E90 0x21
1728 asm/non_matchings/code/z_player_lib/func_80123F14.s func_80123F14 0x80123F14 0x6
1729 asm/non_matchings/code/z_player_lib/func_80123F2C.s func_80123F2C 0x80123F2C 0x7
1730 asm/non_matchings/code/z_player_lib/func_80123F48.s asm/non_matchings/code/z_player_lib/Player_IsBurningStickInRange.s func_80123F48 Player_IsBurningStickInRange 0x80123F48 0x36
1731 asm/non_matchings/code/z_player_lib/func_80124020.s asm/non_matchings/code/z_player_lib/Player_GetStrength.s func_80124020 Player_GetStrength 0x80124020 0x7
1732 asm/non_matchings/code/z_player_lib/Player_GetMask.s Player_GetMask 0x8012403C 0x4
1733 asm/non_matchings/code/z_player_lib/Player_RemoveMask.s Player_RemoveMask 0x8012404C 0x4
1734 asm/non_matchings/code/z_player_lib/func_8012405C.s asm/non_matchings/code/z_player_lib/Player_HasMirrorShieldEquipped.s func_8012405C Player_HasMirrorShieldEquipped 0x8012405C 0xB
1735 asm/non_matchings/code/z_player_lib/func_80124088.s asm/non_matchings/code/z_player_lib/Player_IsHoldingMirrorShield.s func_80124088 Player_IsHoldingMirrorShield 0x80124088 0x10
1736 asm/non_matchings/code/z_player_lib/func_801240C8.s asm/non_matchings/code/z_player_lib/Player_IsHoldingHookshot.s func_801240C8 Player_IsHoldingHookshot 0x801240C8 0x5
1737 asm/non_matchings/code/z_player_lib/func_801240DC.s func_801240DC 0x801240DC 0xD
1738 asm/non_matchings/code/z_player_lib/func_80124110.s func_80124110 0x80124110 0xE
1739 asm/non_matchings/code/z_player_lib/func_80124148.s func_80124148 0x80124148 0x8
1740 asm/non_matchings/code/z_player_lib/func_80124168.s asm/non_matchings/code/z_player_lib/Player_ActionToMeleeWeapon.s func_80124168 Player_ActionToMeleeWeapon 0x80124168 0xA
1741 asm/non_matchings/code/z_player_lib/func_80124190.s asm/non_matchings/code/z_player_lib/Player_GetMeleeWeaponHeld.s func_80124190 Player_GetMeleeWeaponHeld 0x80124190 0x9
1742 asm/non_matchings/code/z_player_lib/func_801241B4.s asm/non_matchings/code/z_player_lib/Player_IsHoldingTwoHandedWeapon.s func_801241B4 Player_IsHoldingTwoHandedWeapon 0x801241B4 0xB
1743 asm/non_matchings/code/z_player_lib/func_801241E0.s asm/non_matchings/code/z_player_lib/Player_ActionToBottle.s func_801241E0 Player_ActionToBottle 0x801241E0 0xB
1744 asm/non_matchings/code/z_player_lib/func_8012420C.s asm/non_matchings/code/z_player_lib/Player_GetBottleHeld.s func_8012420C Player_GetBottleHeld 0x8012420C 0x8
1745 asm/non_matchings/code/z_player_lib/func_8012422C.s asm/non_matchings/code/z_player_lib/Player_ActionToExplosive.s func_8012422C Player_ActionToExplosive 0x8012422C 0xB
1746 asm/non_matchings/code/z_player_lib/Player_GetExplosiveHeld.s Player_GetExplosiveHeld 0x80124258 0x8
1747 asm/non_matchings/code/z_player_lib/func_80124278.s func_80124278 0x80124278 0xF
1748 asm/non_matchings/code/z_player_lib/func_801242B4.s func_801242B4 0x801242B4 0xA
1758 asm/non_matchings/code/z_player_lib/func_80125318.s func_80125318 0x80125318 0xA
1759 asm/non_matchings/code/z_player_lib/func_80125340.s func_80125340 0x80125340 0xB
1760 asm/non_matchings/code/z_player_lib/func_8012536C.s func_8012536C 0x8012536C 0xE
1761 asm/non_matchings/code/z_player_lib/func_801253A4.s asm/non_matchings/code/z_player_lib/Player_DrawZoraShield.s func_801253A4 Player_DrawZoraShield 0x801253A4 0x57
1762 asm/non_matchings/code/z_player_lib/func_80125500.s func_80125500 0x80125500 0x20
1763 asm/non_matchings/code/z_player_lib/func_80125580.s func_80125580 0x80125580 0x1D8
1764 asm/non_matchings/code/z_player_lib/func_80125CE0.s func_80125CE0 0x80125CE0 0x1B
1768 asm/non_matchings/code/z_player_lib/func_80126440.s func_80126440 0x80126440 0x62
1769 asm/non_matchings/code/z_player_lib/func_801265C8.s func_801265C8 0x801265C8 0x35
1770 asm/non_matchings/code/z_player_lib/func_8012669C.s func_8012669C 0x8012669C 0x5B
1771 asm/non_matchings/code/z_player_lib/func_80126808.s asm/non_matchings/code/z_player_lib/Player_DrawGetItemImpl.s func_80126808 Player_DrawGetItemImpl 0x80126808 0x5D
1772 asm/non_matchings/code/z_player_lib/func_8012697C.s asm/non_matchings/code/z_player_lib/Player_DrawGetItem.s func_8012697C Player_DrawGetItem 0x8012697C 0x4E
1773 asm/non_matchings/code/z_player_lib/func_80126AB4.s func_80126AB4 0x80126AB4 0x36
1774 asm/non_matchings/code/z_player_lib/func_80126B8C.s func_80126B8C 0x80126B8C 0x11
1775 asm/non_matchings/code/z_player_lib/func_80126BD0.s func_80126BD0 0x80126BD0 0x178
1776 asm/non_matchings/code/z_player_lib/func_801271B0.s func_801271B0 0x801271B0 0xA2
1777 asm/non_matchings/code/z_player_lib/func_80127438.s func_80127438 0x80127438 0x14
1778 asm/non_matchings/code/z_player_lib/func_80127488.s func_80127488 0x80127488 0x31
1779 asm/non_matchings/code/z_player_lib/func_8012754C.s asm/non_matchings/code/z_player_lib/Player_DrawCouplesMask.s func_8012754C Player_DrawCouplesMask 0x8012754C 0x12
1780 asm/non_matchings/code/z_player_lib/func_80127594.s func_80127594 0x80127594 0xD9
1781 asm/non_matchings/code/z_player_lib/func_801278F8.s func_801278F8 0x801278F8 0x5A
1782 asm/non_matchings/code/z_player_lib/func_80127A60.s func_80127A60 0x80127A60 0x41