SubS Skelanime functions (#572)

* Bring code over

* Change ActorDraw typedefs from actor to thisx

* Rename functions

* Format

* Rename and clean up limb draws

* Some more limb draw cleanup

* Some more cleanup

* Function comments

* Last bit of cleanup

* update tutorial

* More tutorial and format

* Remove extra newlines form actorfixer

* Missed one

* Remove some unnecessary casts

* Fix SkelAnime transform functions in functions.h

* Remove bug comments, and add note

* Remove some more unneeded casts and rename one variable

* format

* Fix merge

* Format
This commit is contained in:
Derek Hensley
2022-01-16 20:14:34 +00:00
committed by GitHub
parent a9c2449c11
commit aa90d1ee2b
53 changed files with 411 additions and 271 deletions
+8 -3
View File
@@ -385,6 +385,11 @@ animdict = {
"func_800A81F0": "EffectBlure_AddVertex",
"func_800A8514": "EffectBlure_AddSpace",
"Effect_GetParams": "Effect_GetByIndex",
"func_801343C0": "SkelAnime_DrawTransformFlexOpa",
"func_80134148": "SkelAnime_DrawTransformFlexLimbOpa",
"func_8013AB00": "SubS_DrawTransformFlex",
"func_8013A860": "SubS_DrawTransformFlexLimb",
# Structs members
"skelAnime.unk03": "skelAnime.taper",
@@ -404,10 +409,10 @@ animdict = {
"skelAnime.prevFramePos": "skelAnime.prevTransl",
"skelAnime.unk3E": "skelAnime.baseTransl",
"actor.minVelocityY": "actor.terminalVelocity",
"actor.yDistToWater" : "actor.depthInWater",
"actor.yDistToWater": "actor.depthInWater",
"actor.yDistToPlayer": "actor.playerHeightRel",
"globalCtx->mf_187FC" : "globalCtx->billboardMtxF",
"globalCtx->projectionMatrix" : "globalCtx->viewProjectionMtxF",
"globalCtx->mf_187FC": "globalCtx->billboardMtxF",
"globalCtx->projectionMatrix": "globalCtx->viewProjectionMtxF",
"player->unk_A87": "player->exchangeItemId",
"player->leftHandActor": "player->heldActor",
"player->unk_384": "player->getItemId",
+41 -41
View File
@@ -2527,8 +2527,8 @@
0x80133B3C:("SkelAnime_DrawOpa",),
0x80133CDC:("SkelAnime_DrawFlexLimbOpa",),
0x80133F28:("SkelAnime_DrawFlexOpa",),
0x80134148:("func_80134148",),
0x801343C0:("func_801343C0",),
0x80134148:("SkelAnime_DrawTransformFlexLimbOpa",),
0x801343C0:("SkelAnime_DrawTransformFlexOpa",),
0x80134600:("SkelAnime_GetFrameData",),
0x80134724:("Animation_GetLength",),
0x80134748:("Animation_GetLastFrame",),
@@ -2656,8 +2656,8 @@
0x8013A504:("func_8013A504",),
0x8013A530:("func_8013A530",),
0x8013A7C0:("SubS_FindDoor",),
0x8013A860:("func_8013A860",),
0x8013AB00:("func_8013AB00",),
0x8013A860:("SubS_DrawTransformFlexLimb",),
0x8013AB00:("SubS_DrawTransformFlex",),
0x8013AD6C:("func_8013AD6C",),
0x8013AD9C:("func_8013AD9C",),
0x8013AED4:("func_8013AED4",),
@@ -5441,7 +5441,7 @@
0x808925F8:("EnNiw_LandBeforeIdle",),
0x8089262C:("EnNiw_CheckRage",),
0x808927CC:("EnNiw_Update",),
0x80892E70:("EnNiw_LimbDraw",),
0x80892E70:("EnNiw_OverrideLimbDraw",),
0x80892FA0:("EnNiw_Draw",),
0x80893008:("EnNiw_SpawnFeather",),
0x808930FC:("EnNiw_UpdateFeather",),
@@ -6066,8 +6066,8 @@
0x808BE6C4:("func_808BE6C4",),
0x808BE73C:("func_808BE73C",),
0x808BEA48:("EnDekunuts_Update",),
0x808BEBD0:("func_808BEBD0",),
0x808BED30:("func_808BED30",),
0x808BEBD0:("EnDekunuts_OverrideLimbDraw",),
0x808BED30:("EnDekunuts_PostLimbDraw",),
0x808BEE38:("EnDekunuts_Draw",),
0x808BF220:("EnBbfall_Init",),
0x808BF318:("EnBbfall_Destroy",),
@@ -7509,8 +7509,8 @@
0x80943BC0:("func_80943BC0",),
0x80943BDC:("func_80943BDC",),
0x80943CA4:("EnDaiku_Update",),
0x80943E18:("func_80943E18",),
0x80943E60:("func_80943E60",),
0x80943E18:("EnDaiku_OverrideLimbDraw",),
0x80943E60:("EnDaiku_PostLimbDraw",),
0x80943EE4:("EnDaiku_Draw",),
0x809441E0:("EnNwc_Init",),
0x80944310:("EnNwc_Destroy",),
@@ -7625,9 +7625,9 @@
0x809510E4:("EnGm_Init",),
0x80951224:("EnGm_Destroy",),
0x80951264:("EnGm_Update",),
0x809513AC:("func_809513AC",),
0x809514BC:("func_809514BC",),
0x80951594:("func_80951594",),
0x809513AC:("EnGm_OverrideLimbDraw",),
0x809514BC:("EnGm_PostLimbDraw",),
0x80951594:("EnGm_TransformLimbDraw",),
0x80951748:("EnGm_Draw",),
0x80952620:("EnMs_Init",),
0x80952708:("EnMs_Destroy",),
@@ -8351,8 +8351,8 @@
0x8098BCA8:("EnDg_Init",),
0x8098BE18:("EnDg_Destroy",),
0x8098BE44:("EnDg_Update",),
0x8098BFB8:("func_8098BFB8",),
0x8098BFD4:("func_8098BFD4",),
0x8098BFB8:("EnDg_OverrideLimbDraw",),
0x8098BFD4:("EnDg_PostLimbDraw",),
0x8098C06C:("EnDg_Draw",),
0x8098CA20:("func_8098CA20",),
0x8098CAD0:("func_8098CAD0",),
@@ -8478,8 +8478,8 @@
0x80993738:("func_80993738",),
0x8099386C:("func_8099386C",),
0x80993BC0:("EnWf_Update",),
0x80993E50:("func_80993E50",),
0x80993E94:("func_80993E94",),
0x80993E50:("EnWf_OverrideLimbDraw",),
0x80993E94:("EnWf_PostLimbDraw",),
0x80993F68:("EnWf_Draw",),
0x8099408C:("func_8099408C",),
0x809947B0:("func_809947B0",),
@@ -9033,7 +9033,7 @@
0x809C339C:("EnAob01_Update",),
0x809C33D8:("EnAob01_OverrideLimbDraw",),
0x809C35B4:("EnAob01_PostLimbDraw",),
0x809C35F4:("EnAob01_UnkDraw",),
0x809C35F4:("EnAob01_TransformLimbDraw",),
0x809C3608:("EnAob01_Draw",),
0x809C3D80:("EnBoj01_Init",),
0x809C3D90:("EnBoj01_Destroy",),
@@ -9743,7 +9743,7 @@
0x80A159B0:("EnGo_Update",),
0x80A15B80:("func_80A15B80",),
0x80A15D04:("EnGo_OverrideLimbDraw",),
0x80A15E38:("EnGo_UnkDraw",),
0x80A15E38:("EnGo_TransfromLimbDraw",),
0x80A15FEC:("func_80A15FEC",),
0x80A16D40:("func_80A16D40",),
0x80A16D6C:("func_80A16D6C",),
@@ -10118,9 +10118,9 @@
0x80A2EAAC:("DmSa_Destroy",),
0x80A2EABC:("DmSa_DoNothing",),
0x80A2EACC:("DmSa_Update",),
0x80A2EB10:("func_80A2EB10",),
0x80A2EB2C:("func_80A2EB2C",),
0x80A2EB44:("func_80A2EB44",),
0x80A2EB10:("DmSa_OverrideLimbDraw",),
0x80A2EB2C:("DmSa_PostLimbDraw",),
0x80A2EB44:("DmSa_TransformLimbDraw",),
0x80A2EB58:("func_80A2EB58",),
0x80A2EBB0:("func_80A2EBB0",),
0x80A2EBE8:("DmSa_Draw",),
@@ -11249,7 +11249,7 @@
0x80A884E8:("EnTru_Update",),
0x80A885B8:("EnTru_OverrideLimbDraw",),
0x80A88698:("EnTru_PostLimbDraw",),
0x80A886D4:("func_80A886D4",),
0x80A886D4:("EnTru_TransformLimbDraw",),
0x80A887E4:("EnTru_Draw",),
0x80A8B770:("EnTrt_ChangeAnim",),
0x80A8B80C:("EnTrt_TestItemSelected",),
@@ -11331,7 +11331,7 @@
0x80A8FA00:("EnTrt_UpdateHeadPosAndRot",),
0x80A8FB34:("EnTrt_OverrideLimbDraw",),
0x80A8FBB4:("EnTrt_PostLimbDraw",),
0x80A8FC64:("EnTrt_UnkActorDraw",),
0x80A8FC64:("EnTrt_TransformLimbDraw",),
0x80A8FCE0:("EnTrt_Draw",),
0x80A903B0:("EnTest5_SetupAction",),
0x80A903BC:("EnTest5_Init",),
@@ -12328,7 +12328,7 @@
0x80ADD400:("EnSellnuts_Update",),
0x80ADD4E0:("func_80ADD4E0",),
0x80ADD7B4:("func_80ADD7B4",),
0x80ADD7CC:("func_80ADD7CC",),
0x80ADD7CC:("EnSellnuts_TransformLimbDraw",),
0x80ADD8A4:("EnSellnuts_Draw",),
0x80ADE230:("func_80ADE230",),
0x80ADE5A4:("BgDkjailIvy_Init",),
@@ -12604,8 +12604,8 @@
0x80AEF2D8:("func_80AEF2D8",),
0x80AEF3E8:("EnTk_Update",),
0x80AEF5F4:("func_80AEF5F4",),
0x80AEF65C:("func_80AEF65C",),
0x80AEF6A4:("func_80AEF6A4",),
0x80AEF65C:("EnTk_OverrideLimbDraw",),
0x80AEF6A4:("EnTk_PostLimbDraw",),
0x80AEF734:("EnTk_Draw",),
0x80AF0060:("BgMarketStep_Init",),
0x80AF0088:("BgMarketStep_Draw",),
@@ -12772,9 +12772,9 @@
0x80AFA7A8:("EnPm_Init",),
0x80AFA8B0:("EnPm_Destroy",),
0x80AFA8F0:("EnPm_Update",),
0x80AFAA04:("func_80AFAA04",),
0x80AFAA44:("func_80AFAA44",),
0x80AFABAC:("func_80AFABAC",),
0x80AFAA04:("EnPm_OverrideLimbDraw",),
0x80AFAA44:("EnPm_PostLimbDraw",),
0x80AFABAC:("EnPm_TransformLimbDraw",),
0x80AFACAC:("EnPm_Draw",),
0x80AFC960:("func_80AFC960",),
0x80AFCA94:("EnGakufu_Init",),
@@ -13633,8 +13633,8 @@
0x80B3D7B8:("EnDnp_Destroy",),
0x80B3D7E4:("EnDnp_Update",),
0x80B3D974:("func_80B3D974",),
0x80B3DA88:("func_80B3DA88",),
0x80B3DAA0:("func_80B3DAA0",),
0x80B3DA88:("EnDnp_PostLimbDraw",),
0x80B3DAA0:("EnDnp_TransformLimbDraw",),
0x80B3DB98:("EnDnp_Draw",),
0x80B3DFF0:("func_80B3DFF0",),
0x80B3E168:("func_80B3E168",),
@@ -13657,9 +13657,9 @@
0x80B3F318:("EnDai_Init",),
0x80B3F494:("EnDai_Destroy",),
0x80B3F4A4:("EnDai_Update",),
0x80B3F598:("func_80B3F598",),
0x80B3F614:("func_80B3F614",),
0x80B3F6EC:("func_80B3F6EC",),
0x80B3F598:("EnDai_OverrideLimbDraw",),
0x80B3F614:("EnDai_PostLimbDraw",),
0x80B3F6EC:("EnDai_TransformLimbDraw",),
0x80B3F78C:("func_80B3F78C",),
0x80B3F920:("func_80B3F920",),
0x80B3FB84:("EnDai_Draw",),
@@ -14870,7 +14870,7 @@
0x80B95128:("func_80B95128",),
0x80B95240:("func_80B95240",),
0x80B95260:("EnZog_Update",),
0x80B954C4:("func_80B954C4",),
0x80B954C4:("EnZog_PostLimbDraw",),
0x80B95598:("func_80B95598",),
0x80B95668:("EnZog_Draw",),
0x80B95E20:("func_80B95E20",),
@@ -15247,7 +15247,7 @@
0x80BAE108:("EnSuttari_Update",),
0x80BAE250:("EnSuttari_OverrideLimbDraw",),
0x80BAE3C4:("EnSuttari_PostLimbDraw",),
0x80BAE524:("EnSuttari_UnkDraw",),
0x80BAE524:("EnSuttari_TransformLimbDraw",),
0x80BAE538:("EnSuttari_Draw",),
0x80BAEF70:("EnZod_Init",),
0x80BAF1C0:("EnZod_Destroy",),
@@ -15326,7 +15326,7 @@
0x80BB3728:("func_80BB3728",),
0x80BB3860:("EnGeg_OverrideLimbDraw",),
0x80BB387C:("EnGeg_PostLimbDraw",),
0x80BB39F8:("EnGeg_UnkDraw",),
0x80BB39F8:("EnGeg_TransformLimbDraw",),
0x80BB3BE0:("func_80BB3BE0",),
0x80BB3CB4:("func_80BB3CB4",),
0x80BB3E0C:("EnGeg_Draw",),
@@ -16274,7 +16274,7 @@
0x80BEFF34:("EnAkindonuts_Update",),
0x80BEFFB4:("EnAkindonuts_OverrideLimbDraw",),
0x80BF0178:("EnAkindonuts_PostLimbDraw",),
0x80BF0190:("EnAkindonuts_UnkActorDraw",),
0x80BF0190:("EnAkindonuts_TransformLimbDraw",),
0x80BF0258:("EnAkindonuts_Draw",),
0x80BF0D90:("EffStk_Init",),
0x80BF0DD0:("EffStk_Destroy",),
@@ -16745,7 +16745,7 @@
0x80C102D4:("EnRecepgirl_Talk",),
0x80C104E8:("EnRecepgirl_Update",),
0x80C10558:("EnRecepgirl_OverrideLimbDraw",),
0x80C10590:("EnRecepgirl_UnkLimbDraw",),
0x80C10590:("EnRecepgirl_TransformLimbDraw",),
0x80C105EC:("EnRecepgirl_Draw",),
0x80C10770:("EnThiefbird_Init",),
0x80C10958:("EnThiefbird_Destroy",),
@@ -16972,7 +16972,7 @@
0x80C1E048:("DmNb_Init",),
0x80C1E0F8:("DmNb_Destroy",),
0x80C1E108:("DmNb_Update",),
0x80C1E168:("DmNb_UnkActorDraw",),
0x80C1E168:("DmNb_TransformLimbDraw",),
0x80C1E17C:("DmNb_Draw",),
0x80C1E290:("func_80C1E290",),
0x80C1E2D4:("func_80C1E2D4",),
@@ -17090,7 +17090,7 @@
0x80C23980:("func_80C23980",),
0x80C2399C:("func_80C2399C",),
0x80C239C8:("EnEndingHero5_Update",),
0x80C23A30:("func_80C23A30",),
0x80C23A30:("EnEndingHero5_PostLimbDraw",),
0x80C23A7C:("EnEndingHero5_Draw",),
0x80C23C90:("EnEndingHero6_Init",),
0x80C23D50:("EnEndingHero6_Destroy",),
+4 -4
View File
@@ -2041,8 +2041,8 @@ asm/non_matchings/code/z_skelanime/SkelAnime_DrawLimb.s,SkelAnime_DrawLimb,0x801
asm/non_matchings/code/z_skelanime/SkelAnime_Draw.s,SkelAnime_Draw,0x80133B3C,0x68
asm/non_matchings/code/z_skelanime/SkelAnime_DrawLimbSV.s,SkelAnime_DrawLimbSV,0x80133CDC,0x93
asm/non_matchings/code/z_skelanime/SkelAnime_DrawFlexOpa.s,SkelAnime_DrawFlexOpa,0x80133F28,0x88
asm/non_matchings/code/z_skelanime/func_80134148.s,func_80134148,0x80134148,0x9E
asm/non_matchings/code/z_skelanime/func_801343C0.s,func_801343C0,0x801343C0,0x90
asm/non_matchings/code/z_skelanime/SkelAnime_DrawTransformFlexLimbOpa.s,SkelAnime_DrawTransformFlexLimbOpa,0x80134148,0x9E
asm/non_matchings/code/z_skelanime/SkelAnime_DrawTransformFlexOpa.s,SkelAnime_DrawTransformFlexOpa,0x801343C0,0x90
asm/non_matchings/code/z_skelanime/SkelAnime_AnimateFrame.s,SkelAnime_AnimateFrame,0x80134600,0x49
asm/non_matchings/code/z_skelanime/SkelAnime_GetTotalFrames.s,SkelAnime_GetTotalFrames,0x80134724,0x9
asm/non_matchings/code/z_skelanime/Animation_GetLastFrame.s,Animation_GetLastFrame,0x80134748,0xB
@@ -2170,8 +2170,8 @@ asm/non_matchings/code/z_snap/func_8013A4C4.s,func_8013A4C4,0x8013A4C4,0x10
asm/non_matchings/code/z_snap/func_8013A504.s,func_8013A504,0x8013A504,0xB
asm/non_matchings/code/z_snap/func_8013A530.s,func_8013A530,0x8013A530,0xA4
asm/non_matchings/code/z_sub_s/SubS_FindDoor.s,SubS_FindDoor,0x8013A7C0,0x28
asm/non_matchings/code/z_sub_s/func_8013A860.s,func_8013A860,0x8013A860,0xA8
asm/non_matchings/code/z_sub_s/func_8013AB00.s,func_8013AB00,0x8013AB00,0x9B
asm/non_matchings/code/z_sub_s/SubS_DrawTransformFlexLimb.s,SubS_DrawTransformFlexLimb,0x8013A860,0xA8
asm/non_matchings/code/z_sub_s/SubS_DrawTransformFlex.s,SubS_DrawTransformFlex,0x8013AB00,0x9B
asm/non_matchings/code/z_sub_s/func_8013AD6C.s,func_8013AD6C,0x8013AD6C,0xC
asm/non_matchings/code/z_sub_s/func_8013AD9C.s,func_8013AD9C,0x8013AD9C,0x4E
asm/non_matchings/code/z_sub_s/func_8013AED4.s,func_8013AED4,0x8013AED4,0xB
1 asm/non_matchings/code/z_en_a_keep/EnAObj_Init.s EnAObj_Init 0x800A5AC0 0x2B
2041 asm/non_matchings/code/z_skelanime/SkelAnime_Draw.s SkelAnime_Draw 0x80133B3C 0x68
2042 asm/non_matchings/code/z_skelanime/SkelAnime_DrawLimbSV.s SkelAnime_DrawLimbSV 0x80133CDC 0x93
2043 asm/non_matchings/code/z_skelanime/SkelAnime_DrawFlexOpa.s SkelAnime_DrawFlexOpa 0x80133F28 0x88
2044 asm/non_matchings/code/z_skelanime/func_80134148.s asm/non_matchings/code/z_skelanime/SkelAnime_DrawTransformFlexLimbOpa.s func_80134148 SkelAnime_DrawTransformFlexLimbOpa 0x80134148 0x9E
2045 asm/non_matchings/code/z_skelanime/func_801343C0.s asm/non_matchings/code/z_skelanime/SkelAnime_DrawTransformFlexOpa.s func_801343C0 SkelAnime_DrawTransformFlexOpa 0x801343C0 0x90
2046 asm/non_matchings/code/z_skelanime/SkelAnime_AnimateFrame.s SkelAnime_AnimateFrame 0x80134600 0x49
2047 asm/non_matchings/code/z_skelanime/SkelAnime_GetTotalFrames.s SkelAnime_GetTotalFrames 0x80134724 0x9
2048 asm/non_matchings/code/z_skelanime/Animation_GetLastFrame.s Animation_GetLastFrame 0x80134748 0xB
2170 asm/non_matchings/code/z_snap/func_8013A504.s func_8013A504 0x8013A504 0xB
2171 asm/non_matchings/code/z_snap/func_8013A530.s func_8013A530 0x8013A530 0xA4
2172 asm/non_matchings/code/z_sub_s/SubS_FindDoor.s SubS_FindDoor 0x8013A7C0 0x28
2173 asm/non_matchings/code/z_sub_s/func_8013A860.s asm/non_matchings/code/z_sub_s/SubS_DrawTransformFlexLimb.s func_8013A860 SubS_DrawTransformFlexLimb 0x8013A860 0xA8
2174 asm/non_matchings/code/z_sub_s/func_8013AB00.s asm/non_matchings/code/z_sub_s/SubS_DrawTransformFlex.s func_8013AB00 SubS_DrawTransformFlex 0x8013AB00 0x9B
2175 asm/non_matchings/code/z_sub_s/func_8013AD6C.s func_8013AD6C 0x8013AD6C 0xC
2176 asm/non_matchings/code/z_sub_s/func_8013AD9C.s func_8013AD9C 0x8013AD9C 0x4E
2177 asm/non_matchings/code/z_sub_s/func_8013AED4.s func_8013AED4 0x8013AED4 0xB