From 63072fe0c13e415d052e3c92471c401c11d5e1db Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Thu, 15 Dec 2022 20:31:51 -0500 Subject: [PATCH] fire vine plant hot (#889) --- src/world/area_kmr/kmr_22/8FF8B0.c | 321 ++++++++++++-- .../data/world/area_jan/jan_02/B33E50.data.s | 4 +- .../data/world/area_kmr/kmr_22/900A80.data.s | 8 +- .../kmr_22/8FF8B0/func_80240240_8FF8B0.s | 58 --- .../kmr_22/8FF8B0/func_80240314_8FF984.s | 69 --- .../kmr_22/8FF8B0/func_80240418_8FFA88.s | 55 --- .../kmr_22/8FF8B0/func_8024056C_8FFBDC.s | 392 ------------------ .../kmr_22/8FF8B0/func_80240BA8_900218.s | 101 ----- ver/us/symbol_addrs.txt | 24 +- ver/us/undefined_syms.txt | 2 +- 10 files changed, 309 insertions(+), 725 deletions(-) delete mode 100644 ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240240_8FF8B0.s delete mode 100644 ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240314_8FF984.s delete mode 100644 ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240418_8FFA88.s delete mode 100644 ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_8024056C_8FFBDC.s delete mode 100644 ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240BA8_900218.s diff --git a/src/world/area_kmr/kmr_22/8FF8B0.c b/src/world/area_kmr/kmr_22/8FF8B0.c index c00f9c0a9e..3084092273 100644 --- a/src/world/area_kmr/kmr_22/8FF8B0.c +++ b/src/world/area_kmr/kmr_22/8FF8B0.c @@ -1,48 +1,307 @@ #include "kmr_22.h" -INCLUDE_ASM(s32, "world/area_kmr/kmr_22/8FF8B0", func_80240240_8FF8B0); +// TODO this entire file should be an include from kzn_19_4_npc.c -INCLUDE_ASM(s32, "world/area_kmr/kmr_22/8FF8B0", func_80240314_8FF984); +enum { + VINE_0 = 0, + VINE_1 = 1, + VINE_2 = 2, + VINE_3 = 3, + NUM_VINES = 4 +}; -INCLUDE_ASM(s32, "world/area_kmr/kmr_22/8FF8B0", func_80240418_8FFA88); +enum { + MV_VinesData = MapVar(0), + MV_BossDefeated = MapVar(10), +}; -ApiStatus func_802404E4_8FFB54(Evt* script, s32 isInitialCall) { +enum { + VINE_0_BASE = 0x80200000, + VINE_1_BASE = 0x80204000, + VINE_2_BASE = 0x80207000, + VINE_3_BASE = 0x8020A000, +}; // TODO shiftability -- hard-coded addresses in gBackgroundImage + +extern s32 N(VineAnimationsDmaTable)[]; +extern Gfx N(lava_piranha_vine_gfx)[]; +extern s32 N(VineRenderState); + +void N(make_vine_interpolation)(LavaPiranhaVine* vine) { + Evt dummyEvt; + Evt* dummyEvtPtr = &dummyEvt; + s32 args[4]; + s32 count; + + // setup dummy call to LoadPath + args[0] = 3 * vine->boneCount; // generate three output samples per input + args[1] = (s32) &vine->bonePos; // points + args[2] = vine->boneCount; // num vectors + args[3] = EASING_LINEAR; + dummyEvtPtr->ptrReadPos = args; + LoadPath(dummyEvtPtr, 1); + + count = 0; + do { + GetNextPathPos(dummyEvtPtr, 1); + vine->points[count].x = evt_get_float_variable(dummyEvtPtr, LVar1); + vine->points[count].y = evt_get_float_variable(dummyEvtPtr, LVar2); + vine->points[count].z = evt_get_float_variable(dummyEvtPtr, LVar3); + count++; + } while (dummyEvtPtr->varTable[0] != 0); + vine->numPoints = count; +} + +API_CALLABLE(N(SetVineBonePos)) { Bytecode* args = script->ptrReadPos; + s32 vineIdx = evt_get_variable(script, *args++); + s32 jointIdx = evt_get_variable(script, *args++); + s32 x = evt_get_variable(script, *args++); + s32 y = evt_get_variable(script, *args++); + s32 z = evt_get_variable(script, *args++); + LavaPiranhaVine* vines = (LavaPiranhaVine*) evt_get_variable(NULL, MapVar(0)); + LavaPiranhaVine* vine = &vines[vineIdx]; - evt_get_variable(script, *args++); - evt_get_variable(script, *args++); - evt_get_variable(script, *args++); - evt_get_variable(script, *args++); - evt_get_variable(script, *args++); - evt_get_variable(NULL, MapVar(0)); + vine->bonePos[jointIdx].x = x; + vine->bonePos[jointIdx].y = y; + vine->bonePos[jointIdx].z = z; return ApiStatus_DONE2; } -void func_8024056C_8FFBDC(void*); -INCLUDE_ASM(s32, "world/area_kmr/kmr_22/8FF8B0", func_8024056C_8FFBDC); +API_CALLABLE(N(SetVineBoneRot)) { + Bytecode* args = script->ptrReadPos; + s32 vineIdx = evt_get_variable(script, *args++); + s32 jointIdx = evt_get_variable(script, *args++); + s32 rx = evt_get_variable(script, *args++); + s32 ry = evt_get_variable(script, *args++); + s32 rz = evt_get_variable(script, *args++); + LavaPiranhaVine* vines = (LavaPiranhaVine*) evt_get_variable(NULL, MapVar(0)); + LavaPiranhaVine* vine = &vines[vineIdx]; -void func_80240B00_900170(void) { - RenderTask rt; - - rt.appendGfx = &func_8024056C_8FFBDC; - rt.distance = 10; - rt.appendGfxArg = NULL; - rt.renderMode = RENDER_MODE_SURFACE_OPA; - queue_render_task(&rt); -} - -extern s32 D_802483D0; - -ApiStatus func_80240B3C_9001AC(Evt* script, s32 isInitialCall) { - D_802483D0 = 0; + vine->boneRot[jointIdx] = rz; return ApiStatus_DONE2; } -ApiStatus func_80240B4C_9001BC(Evt* script, s32 isInitialCall) { - evt_set_variable(script, MapVar(0), (s32) heap_malloc(0x780)); // TODO what is this - D_802483D0 = -1; - create_worker_world(NULL, func_80240B00_900170); +API_CALLABLE(N(SetVineBoneScale)) { + Bytecode* args = script->ptrReadPos; + s32 vineIdx = evt_get_variable(script, *args++); + s32 jointIdx = evt_get_variable(script, *args++); + s32 sx = evt_get_variable(script, *args++); + s32 sy = evt_get_variable(script, *args++); + s32 sz = evt_get_variable(script, *args++); + LavaPiranhaVine* vines = (LavaPiranhaVine*) evt_get_variable(NULL, MapVar(0)); + LavaPiranhaVine* vine = &vines[vineIdx]; + + // do nothing return ApiStatus_DONE2; } -INCLUDE_ASM(s32, "world/area_kmr/kmr_22/8FF8B0", func_80240BA8_900218); +void N(appendGfx_piranha_vines)(void* data) { + Vtx_t* vtxBuffer; + Vtx_t* vtx; + + f32 boneLength; + s32 boneCount; + + f32 angle; + f32 nextAngle; + f32 curAngle1; + f32 curAngle2; + + f32 alphaCoord; + f32 alphaFrac; + s32 nearest; + + s32 numPoints; + s32 i, j; + + f32 deltaX, deltaY; + f32 posX, posY, posZ; + + if (N(VineRenderState) == -1) { + return; + } + + if (N(VineRenderState) == 0) { + for (i = 0; i < NUM_VINES; i++) { + LavaPiranhaVine* vines = (LavaPiranhaVine*) evt_get_variable(NULL, MV_VinesData); + LavaPiranhaVine* vine = &vines[i]; + + switch (i) { + default: + return; + case 0: + boneCount = 9; + boneLength = 10.0f; + break; + case 1: + boneCount = 7; + boneLength = 8.0f; + break; + case 2: + boneCount = 7; + boneLength = 8.0f; + break; + case 3: + boneCount = 5; + boneLength = 8.0f; + break; + } + + vine->boneCount = boneCount; + vine->boneLength = boneLength; + + for (j = 0; j < boneCount; j++) { + if (j == (boneCount - 1)) { + vine->boneRot[j] += 90.0f; + } else { + curAngle1 = vine->boneRot[j]; + nextAngle = vine->boneRot[j + 1]; + if (nextAngle - curAngle1 > 180.0f) { + curAngle1 += 360.0f; + } else if (nextAngle - curAngle1 < -180.0f) { + nextAngle += 360.0f; + } + // average cur and next angles + vine->boneRot[j] = ((curAngle1 + nextAngle) / 2.0) + 90.0; + } + } + + N(make_vine_interpolation)(vine); + } + + N(VineRenderState) = 1; + } + + gDPPipeSync(gMasterGfxPos++); + gSPDisplayList(gMasterGfxPos++, N(lava_piranha_vine_gfx)); + + for (i = 0; i < NUM_VINES; i++) { + LavaPiranhaVine* vines = (LavaPiranhaVine*) evt_get_variable(NULL, MV_VinesData); + LavaPiranhaVine* vine = &vines[i]; + + boneLength = vine->boneLength; + boneCount = vine->boneCount; + numPoints = vine->numPoints; + + // we'll build the vertex data and place it in the display list, so jump forward + // here and leave space behind for the gSPBranchList command followed by two vertices + // for each point in numPoints + + vtxBuffer = (Vtx_t*)(gMasterGfxPos + 1); + gSPBranchList(gMasterGfxPos, &gMasterGfxPos[1 + 2 * (2 * numPoints)]); + vtx = (Vtx_t*) (++gMasterGfxPos); + gMasterGfxPos = &gMasterGfxPos[2 * (2 * numPoints)]; + + for (j = 0; j < numPoints; j++) { + posX = vine->points[j].x; + posY = vine->points[j].y; + posZ = vine->points[j].z; + + alphaCoord = ((f32) j * boneCount) / numPoints; + nearest = (s32) alphaCoord; + alphaFrac = alphaCoord - (f32)nearest; + + if (nearest + 1 >= boneCount) { + angle = vine->boneRot[boneCount - 1]; + } else { + curAngle2 = vine->boneRot[nearest]; + nextAngle = vine->boneRot[nearest + 1]; + if (nextAngle - curAngle2 > 180.0f) { + nextAngle -= 360.0f; + } + if (nextAngle - curAngle2 < -180.0f) { + nextAngle += 360.0f; + } + angle = ((nextAngle - curAngle2) * alphaFrac) + curAngle2; + } + + deltaX = sin_deg(angle) * boneLength; + deltaY = -cos_deg(angle) * boneLength; + + vtx->ob[0] = posX + deltaX; + vtx->ob[1] = posY + deltaY; + vtx->ob[2] = posZ; + vtx->tc[0] = j * 0x140; + vtx->tc[1] = 0; + vtx->cn[0] = j * 50; + vtx->cn[1] = j * 120;; + vtx->cn[2] = j * 30; + vtx++; + + vtx->ob[0] = posX - deltaX; + vtx->ob[1] = posY - deltaY; + vtx->ob[2] = posZ; + vtx->tc[0] = j * 0x140; + vtx->tc[1] = 0x400; + vtx->cn[0] = j * 50; + vtx->cn[1] = j * 120;; + vtx->cn[2] = j * 30; + vtx++; + } + + for (j = 0; j < numPoints - 1; j++) { + gSPVertex(gMasterGfxPos++, &vtxBuffer[2*j], 4, 0); + gSP2Triangles(gMasterGfxPos++, 1, 0, 2, 0, 1, 2, 3, 0); + } + } + + gDPPipeSync(gMasterGfxPos++); +} + +void N(worker_render_piranha_vines)(void) { + RenderTask renderTask; + + renderTask.appendGfx = &N(appendGfx_piranha_vines); + renderTask.appendGfxArg = 0; + renderTask.distance = 10; + renderTask.renderMode = RENDER_MODE_SURFACE_OPA; + + queue_render_task(&renderTask); +} + +API_CALLABLE(N(MarkVineInterpolationDirty)) { + N(VineRenderState) = 0; + return ApiStatus_DONE2; +} + +API_CALLABLE(N(CreateVineRenderer)) { + LavaPiranhaVine* data = heap_malloc(NUM_VINES * sizeof(*data)); + evt_set_variable(script, MV_VinesData, (s32) data); + N(VineRenderState) = -1; + create_worker_world(NULL, &N(worker_render_piranha_vines)); + return ApiStatus_DONE2; +} + +API_CALLABLE(N(LoadAnimationFromTable)) { + Bytecode* args = script->ptrReadPos; + s32 type = evt_get_variable(script, *args++); + s32 index = evt_get_variable(script, *args++); + + switch (type) { + case VINE_0: + dma_copy( + (u8*) N(VineAnimationsDmaTable)[3 * index + 0], + (u8*) N(VineAnimationsDmaTable)[3 * index + 1], + (void*) VINE_0_BASE); + break; + case VINE_1: + dma_copy( + (u8*) N(VineAnimationsDmaTable)[3 * index + 0], + (u8*) N(VineAnimationsDmaTable)[3 * index + 1], + (void*) VINE_1_BASE); + break; + case VINE_2: + dma_copy( + (u8*) N(VineAnimationsDmaTable)[3 * index + 0], + (u8*) N(VineAnimationsDmaTable)[3 * index + 1], + (void*) VINE_2_BASE); + break; + case VINE_3: + dma_copy( + (u8*) N(VineAnimationsDmaTable)[3 * index + 0], + (u8*) N(VineAnimationsDmaTable)[3 * index + 1], + (void*) VINE_3_BASE); + break; + } + return ApiStatus_DONE2; +} diff --git a/ver/us/asm/data/world/area_jan/jan_02/B33E50.data.s b/ver/us/asm/data/world/area_jan/jan_02/B33E50.data.s index 7b2e779da9..aba861f591 100644 --- a/ver/us/asm/data/world/area_jan/jan_02/B33E50.data.s +++ b/ver/us/asm/data/world/area_jan/jan_02/B33E50.data.s @@ -35,7 +35,7 @@ dlabel D_802483AC_B3481C dlabel D_802483C0_B34830 .word 0xC4128000, 0x00000000, 0xC3570000, 0x00000000 -dlabel D_802483D0_B34840 +dlabel kmr_22_VineRenderState_B34840 .word 0x00000002, 0x00000042, 0x00000043 dlabel D_802483DC_B3484C @@ -45,7 +45,7 @@ dlabel D_802483E4_B34854 .word 0x00000001, 0x000000AC, 0x0000024F, 0x0000004B, 0xFFFFFF24, 0x0000000F, 0x00000000, 0xF9718895 dlabel D_80248404_B34874 -.word D_802483D0_B34840, D_802483DC_B3484C, D_802483E4_B34854, 0x00000000, 0x00000000 +.word kmr_22_VineRenderState_B34840, D_802483DC_B3484C, D_802483E4_B34854, 0x00000000, 0x00000000 dlabel D_80248418_B34888 .word 0x44114000, 0x00000000, 0xC3700000, 0x00000000 diff --git a/ver/us/asm/data/world/area_kmr/kmr_22/900A80.data.s b/ver/us/asm/data/world/area_kmr/kmr_22/900A80.data.s index 3d56b182d1..5389834b2d 100644 --- a/ver/us/asm/data/world/area_kmr/kmr_22/900A80.data.s +++ b/ver/us/asm/data/world/area_kmr/kmr_22/900A80.data.s @@ -92,17 +92,17 @@ dlabel D_80241900_900F70 dlabel D_80241D00_901370 .word 0x014041C1, 0xE7390241, 0x044F0000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 -dlabel D_80241F00_901570 +dlabel kmr_22_lava_piranha_vine_gfx .word 0xE7000000, 0x00000000, 0xD7000002, 0xFFFFFFFF, 0xE3000A01, 0x00000000, 0xE3000C00, 0x00080000, 0xE3000D01, 0x00000000, 0xE3000F00, 0x00000000, 0xE3001201, 0x00002000, 0xE3001402, 0x00000C00, 0xE200001C, 0x00551238, 0xFCFFFFFF, 0xFFFDF2F9, 0xFA000000, 0x50505000, 0xE3001001, 0x00008000, 0xFD100000, D_80241D00_901370, 0xE8000000, 0x00000000, 0xF5000100, 0x07000000, 0xE6000000, 0x00000000, 0xF0000000, 0x0703C000, 0xE7000000, 0x00000000, 0xFD48001F, D_80241900_900F70, 0xF5480800, 0x07094060, 0xE6000000, 0x00000000, 0xF4000000, 0x0707E07C, 0xE7000000, 0x00000000, 0xF5400800, 0x00094060, 0xF2000000, 0x000FC07C, 0xD9000000, 0x00000000, 0xD9FFFFFF, 0x00000005, 0xDF000000, 0x00000000 -dlabel D_80241FE0_901650 +dlabel kmr_22_VineAnimationsDmaTable .word 0x007B6690, 0x007B70E0, 0x80234000, 0x007B5960, 0x007B6690, 0x80234000, 0x007C4F50, 0x007C7410, 0x80234000, 0x007C7410, 0x007C7E50, 0x80234000, 0x007B70E0, 0x007B8030, 0x80234000, 0x007B8030, 0x007B8D30, 0x80234000, 0x007B8D30, 0x007B97E0, 0x80234000, 0x007B97E0, 0x007BA280, 0x80234000, 0x007BA280, 0x007BB050, 0x80234000, 0x007BB050, 0x007BBD80, 0x80234000, 0x007BBD80, 0x007BEDD0, 0x80234000, 0x007BEDD0, 0x007C16C0, 0x80234000, 0x007C16C0, 0x007C3A00, 0x80234000, 0x007C3A00, 0x007C44D0, 0x80234000, 0x007C44D0, 0x007C4F50, 0x80234000, 0x007C7E50, 0x007CA850, 0x80234000, 0x007CA850, 0x007CD5F0, 0x80234000, 0x007CD5F0, 0x007CDB30, 0x80234000, 0x007CDB30, 0x007CEFF0, 0x80234000, 0x007CEFF0, 0x007CFCC0, 0x80234000, 0x007CFCC0, 0x007D0860, 0x80234000, 0x007D0860, 0x007D14E0, 0x80234000, 0x007D14E0, 0x007D2080, 0x80234000, 0x007D2080, 0x007D2960, 0x80234000, 0x007D2960, 0x007D3260, 0x80234000, 0x007D3260, 0x007D5570, 0x80234000, 0x007D5570, 0x007D6F80, 0x80234000, 0x007D6F80, 0x007D76B0, 0x80234000, 0x007D76B0, 0x007D8FF0, 0x80234000, 0x007D8FF0, 0x007D96E0, 0x80234000, 0x007D96E0, 0x007D98E0, 0x80234000, 0x007D98E0, 0x007DA140, 0x80234000, 0x007DA140, 0x007DC180, 0x80234000, 0x007DC180, 0x007DE970, 0x80234000, 0x007DE970, 0x007DF2B0, 0x80234000, 0x007DF2B0, 0x007E03B0, 0x80234000, 0x007E03B0, 0x007E0E80, 0x80234000 dlabel D_8024219C_90180C -.word 0x00000043, 0x00000003, GetSelfVar, 0x00000000, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x0000000A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcPos, 0x00000015, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x0000000A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcRotation, 0x00000015, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000001, func_80240B3C_9001AC, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x0000000A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000000, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x0000000A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C82, 0x0000005A, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000000, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000000, 0x00000000, 0x00000001, 0x00000001, 0x00000001, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000000, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000000, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000000, 0x00000001, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000009, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000000, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000009, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000000, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000000, 0x00000002, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000000, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000000, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000000, 0x00000003, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000000, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000000, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000000, 0x00000004, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000000, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000000, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000000, 0x00000005, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000000, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000000, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000000, 0x00000006, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000000, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000000, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000000, 0x00000007, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000000, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000000, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000000, 0x00000008, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcPos, 0x00000016, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcRotation, 0x00000016, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000001, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C82, 0x0000005A, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000001, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000001, 0x00000000, 0x00000001, 0x00000001, 0x00000001, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000002, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000001, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000001, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000001, 0x00000001, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000001, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000001, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000001, 0x00000002, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000001, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000001, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000001, 0x00000003, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000001, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000001, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000001, 0x00000004, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000001, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000001, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000001, 0x00000005, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000001, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000001, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000001, 0x00000006, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcPos, 0x00000017, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcRotation, 0x00000017, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000002, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C82, 0x0000005A, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000002, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000002, 0x00000000, 0x00000001, 0x00000001, 0x00000001, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000002, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000002, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000002, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000002, 0x00000001, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000002, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000002, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000002, 0x00000002, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000002, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000002, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000002, 0x00000003, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000002, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000002, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000002, 0x00000004, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000002, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000002, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000002, 0x00000005, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000002, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000002, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000002, 0x00000006, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000003, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000003, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000003, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000003, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000003, 0x00000000, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000003, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000003, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000003, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000003, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000003, 0x00000001, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000003, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000003, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000003, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000003, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000003, 0x00000002, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000003, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000003, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000003, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000003, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000003, 0x00000003, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000003, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240314_8FF984, 0x00000003, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000003, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_80240418_8FFA88, 0x00000003, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, func_802404E4_8FFB54, 0x00000003, 0x00000004, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000003, GetSelfVar, 0x00000000, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000003, 0x00000001, 0x00000000, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x0000000A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcPos, 0x00000015, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x0000000A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcRotation, 0x00000015, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000001, kmr_22_MarkVineInterpolationDirty, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x0000000A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000000, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x0000000A, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C82, 0x0000005A, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000000, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000000, 0x00000000, 0x00000001, 0x00000001, 0x00000001, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000000, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000000, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000000, 0x00000001, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000009, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000000, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000009, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000000, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000000, 0x00000002, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000000, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000000, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000000, 0x00000003, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000000, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000000, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000000, 0x00000004, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000000, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000000, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000000, 0x00000005, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000000, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000000, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000000, 0x00000006, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000000, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000000, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000000, 0x00000007, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000000, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000000, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000000, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000000, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000000, 0x00000008, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcPos, 0x00000016, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcRotation, 0x00000016, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000001, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C82, 0x0000005A, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000001, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000001, 0x00000000, 0x00000001, 0x00000001, 0x00000001, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000002, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000001, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000001, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000001, 0x00000001, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000001, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000001, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000001, 0x00000002, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000001, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000001, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000001, 0x00000003, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000001, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000001, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000001, 0x00000004, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000001, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000001, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000001, 0x00000005, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000001, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000001, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000001, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000001, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000001, 0x00000006, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcPos, 0x00000017, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000005, SetNpcRotation, 0x00000017, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000002, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000008, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000027, 0x00000002, 0xFE363C82, 0x0000005A, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000002, 0x00000000, 0xFE363C80, 0x00000000, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000002, 0x00000000, 0x00000001, 0x00000001, 0x00000001, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000028, 0x00000002, 0xFE363C82, 0x00000002, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000002, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000002, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000002, 0x00000001, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000002, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000007, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000002, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000002, 0x00000002, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000002, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000002, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000002, 0x00000003, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000002, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000002, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000002, 0x00000004, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000002, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000002, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000002, 0x00000005, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000002, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000002, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000002, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000002, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000002, 0x00000006, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000003, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000003, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000003, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000003, 0x00000000, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000003, 0x00000000, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000003, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000003, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000003, 0x00000006, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000003, 0x00000001, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000003, 0x00000001, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000003, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000003, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000003, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000003, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000003, 0x00000002, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000003, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000003, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000003, 0x00000005, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000003, 0x00000003, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000003, 0x00000003, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000043, 0x00000006, GetAnimatedPositionByTreeIndex, 0x00000003, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBonePos, 0x00000003, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, GetAnimatedRotationByTreeIndex, 0x00000003, 0x00000002, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneRot, 0x00000003, 0x00000004, 0xFE363C80, 0xFE363C81, 0xFE363C82, 0x00000043, 0x00000006, kmr_22_SetVineBoneScale, 0x00000003, 0x00000004, 0xF24A7D5C, 0xF24A7D5C, 0xF24A7E80, 0x00000008, 0x00000001, 0x00000001, 0x00000004, 0x00000001, 0x00000000, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80243534_902BA4 -.word 0x00000043, 0x00000007, func_802CFD30, 0x00000015, 0x0000000E, 0x00000050, 0x00000050, 0x00000050, 0x00000000, 0x00000043, 0x00000007, func_802CFD30, 0x00000016, 0x0000000E, 0x00000050, 0x00000050, 0x00000050, 0x00000000, 0x00000043, 0x00000007, func_802CFD30, 0x00000017, 0x0000000E, 0x00000050, 0x00000050, 0x00000050, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000015, 0x00790003, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000016, 0x007B0003, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000017, 0x007B0003, 0x00000043, 0x00000003, EnableNpcShadow, 0x00000015, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0x00000016, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0x00000017, 0x00000000, 0x0000003E, 0x00000002, 0x00000040, 0xFE363C80, 0x00000043, 0x00000003, SetSelfVar, 0x00000000, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000043, 0x00000003, BindNpcAux, 0xFFFFFFFF, D_8024219C_90180C, 0x00000043, 0x00000003, LoadAnimatedModel, 0x00000000, D_80241620_900C90, 0x00000043, 0x00000003, func_80240BA8_900218, 0x00000000, 0x00000000, 0x00000043, 0x00000003, PlayModelAnimation, 0x00000000, func_80200000, 0x00000043, 0x00000005, SetAnimatedModelRootPosition, 0x00000000, 0xFFFFFFD8, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimatorFlags, 0x00000000, 0x00000080, 0x00000001, 0x00000043, 0x00000003, LoadAnimatedModel, 0x00000001, D_802417B0_900E20, 0x00000043, 0x00000003, func_80240BA8_900218, 0x00000001, 0x0000001F, 0x00000043, 0x00000003, PlayModelAnimation, 0x00000001, 0x80204000, 0x00000043, 0x00000005, SetAnimatedModelRootPosition, 0x00000001, 0xFFFFFFD8, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimatorFlags, 0x00000001, 0x00000080, 0x00000001, 0x00000043, 0x00000003, LoadAnimatedModel, 0x00000002, D_802417B0_900E20, 0x00000043, 0x00000003, func_80240BA8_900218, 0x00000002, 0x0000001F, 0x00000043, 0x00000003, PlayModelAnimation, 0x00000002, 0x80207000, 0x00000043, 0x00000005, SetAnimatedModelRootPosition, 0x00000002, 0x0000000A, 0x00000000, 0x00000014, 0x00000043, 0x00000004, SetAnimatorFlags, 0x00000002, 0x00000080, 0x00000001, 0x00000043, 0x00000003, LoadAnimatedModel, 0x00000003, D_802418E0_900F50, 0x00000043, 0x00000003, func_80240BA8_900218, 0x00000003, 0x00000022, 0x00000043, 0x00000003, PlayModelAnimation, 0x00000003, 0x8020A000, 0x00000043, 0x00000005, SetAnimatedModelRootPosition, 0x00000003, 0xFFFFFFD8, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimatorFlags, 0x00000003, 0x00000080, 0x00000001, 0x00000043, 0x00000001, func_80240B4C_9001BC, 0x00000002, 0x00000000, 0x00000001, 0x00000000 +.word 0x00000043, 0x00000007, func_802CFD30, 0x00000015, 0x0000000E, 0x00000050, 0x00000050, 0x00000050, 0x00000000, 0x00000043, 0x00000007, func_802CFD30, 0x00000016, 0x0000000E, 0x00000050, 0x00000050, 0x00000050, 0x00000000, 0x00000043, 0x00000007, func_802CFD30, 0x00000017, 0x0000000E, 0x00000050, 0x00000050, 0x00000050, 0x00000000, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000015, 0x00790003, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000016, 0x007B0003, 0x00000043, 0x00000003, SetNpcAnimation, 0x00000017, 0x007B0003, 0x00000043, 0x00000003, EnableNpcShadow, 0x00000015, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0x00000016, 0x00000000, 0x00000043, 0x00000003, EnableNpcShadow, 0x00000017, 0x00000000, 0x0000003E, 0x00000002, 0x00000040, 0xFE363C80, 0x00000043, 0x00000003, SetSelfVar, 0x00000000, 0xFE363C80, 0x0000003C, 0x00000001, 0xFE363C80, 0x00000043, 0x00000003, BindNpcAux, 0xFFFFFFFF, D_8024219C_90180C, 0x00000043, 0x00000003, LoadAnimatedModel, 0x00000000, D_80241620_900C90, 0x00000043, 0x00000003, kmr_22_LoadAnimationFromTable, 0x00000000, 0x00000000, 0x00000043, 0x00000003, PlayModelAnimation, 0x00000000, func_80200000, 0x00000043, 0x00000005, SetAnimatedModelRootPosition, 0x00000000, 0xFFFFFFD8, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimatorFlags, 0x00000000, 0x00000080, 0x00000001, 0x00000043, 0x00000003, LoadAnimatedModel, 0x00000001, D_802417B0_900E20, 0x00000043, 0x00000003, kmr_22_LoadAnimationFromTable, 0x00000001, 0x0000001F, 0x00000043, 0x00000003, PlayModelAnimation, 0x00000001, 0x80204000, 0x00000043, 0x00000005, SetAnimatedModelRootPosition, 0x00000001, 0xFFFFFFD8, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimatorFlags, 0x00000001, 0x00000080, 0x00000001, 0x00000043, 0x00000003, LoadAnimatedModel, 0x00000002, D_802417B0_900E20, 0x00000043, 0x00000003, kmr_22_LoadAnimationFromTable, 0x00000002, 0x0000001F, 0x00000043, 0x00000003, PlayModelAnimation, 0x00000002, 0x80207000, 0x00000043, 0x00000005, SetAnimatedModelRootPosition, 0x00000002, 0x0000000A, 0x00000000, 0x00000014, 0x00000043, 0x00000004, SetAnimatorFlags, 0x00000002, 0x00000080, 0x00000001, 0x00000043, 0x00000003, LoadAnimatedModel, 0x00000003, D_802418E0_900F50, 0x00000043, 0x00000003, kmr_22_LoadAnimationFromTable, 0x00000003, 0x00000022, 0x00000043, 0x00000003, PlayModelAnimation, 0x00000003, 0x8020A000, 0x00000043, 0x00000005, SetAnimatedModelRootPosition, 0x00000003, 0xFFFFFFD8, 0x00000000, 0x00000000, 0x00000043, 0x00000004, SetAnimatorFlags, 0x00000003, 0x00000080, 0x00000001, 0x00000043, 0x00000001, kmr_22_CreateVineRenderer, 0x00000002, 0x00000000, 0x00000001, 0x00000000 dlabel D_80243838_902EA8 .word 0x00000002, 0x00000000, 0x00000001, 0x00000000 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240240_8FF8B0.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240240_8FF8B0.s deleted file mode 100644 index 8922437bbb..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240240_8FF8B0.s +++ /dev/null @@ -1,58 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240240_8FF8B0 -/* 8FF8B0 80240240 27BDFE60 */ addiu $sp, $sp, -0x1a0 -/* 8FF8B4 80240244 AFB30194 */ sw $s3, 0x194($sp) -/* 8FF8B8 80240248 0080982D */ daddu $s3, $a0, $zero -/* 8FF8BC 8024024C AFB1018C */ sw $s1, 0x18c($sp) -/* 8FF8C0 80240250 27B10010 */ addiu $s1, $sp, 0x10 -/* 8FF8C4 80240254 0220202D */ daddu $a0, $s1, $zero -/* 8FF8C8 80240258 24050001 */ addiu $a1, $zero, 1 -/* 8FF8CC 8024025C AFBF0198 */ sw $ra, 0x198($sp) -/* 8FF8D0 80240260 AFB20190 */ sw $s2, 0x190($sp) -/* 8FF8D4 80240264 AFB00188 */ sw $s0, 0x188($sp) -/* 8FF8D8 80240268 8E630090 */ lw $v1, 0x90($s3) -/* 8FF8DC 8024026C 0000902D */ daddu $s2, $zero, $zero -/* 8FF8E0 80240270 AFB3017C */ sw $s3, 0x17c($sp) -/* 8FF8E4 80240274 00A31004 */ sllv $v0, $v1, $a1 -/* 8FF8E8 80240278 00431021 */ addu $v0, $v0, $v1 -/* 8FF8EC 8024027C AFA20178 */ sw $v0, 0x178($sp) -/* 8FF8F0 80240280 8E630090 */ lw $v1, 0x90($s3) -/* 8FF8F4 80240284 27A20178 */ addiu $v0, $sp, 0x178 -/* 8FF8F8 80240288 AFA00184 */ sw $zero, 0x184($sp) -/* 8FF8FC 8024028C AFA2001C */ sw $v0, 0x1c($sp) -/* 8FF900 80240290 0C0B550C */ jal LoadPath -/* 8FF904 80240294 AFA30180 */ sw $v1, 0x180($sp) -/* 8FF908 80240298 0260802D */ daddu $s0, $s3, $zero -.L8024029C: -/* 8FF90C 8024029C 0220202D */ daddu $a0, $s1, $zero -/* 8FF910 802402A0 0C0B5549 */ jal GetNextPathPos -/* 8FF914 802402A4 24050001 */ addiu $a1, $zero, 1 -/* 8FF918 802402A8 0220202D */ daddu $a0, $s1, $zero -/* 8FF91C 802402AC 3C05FE36 */ lui $a1, 0xfe36 -/* 8FF920 802402B0 0C0B210B */ jal evt_get_float_variable -/* 8FF924 802402B4 34A53C81 */ ori $a1, $a1, 0x3c81 -/* 8FF928 802402B8 0220202D */ daddu $a0, $s1, $zero -/* 8FF92C 802402BC 3C05FE36 */ lui $a1, 0xfe36 -/* 8FF930 802402C0 34A53C82 */ ori $a1, $a1, 0x3c82 -/* 8FF934 802402C4 0C0B210B */ jal evt_get_float_variable -/* 8FF938 802402C8 E6000098 */ swc1 $f0, 0x98($s0) -/* 8FF93C 802402CC 0220202D */ daddu $a0, $s1, $zero -/* 8FF940 802402D0 3C05FE36 */ lui $a1, 0xfe36 -/* 8FF944 802402D4 34A53C83 */ ori $a1, $a1, 0x3c83 -/* 8FF948 802402D8 0C0B210B */ jal evt_get_float_variable -/* 8FF94C 802402DC E600009C */ swc1 $f0, 0x9c($s0) -/* 8FF950 802402E0 E60000A0 */ swc1 $f0, 0xa0($s0) -/* 8FF954 802402E4 2610000C */ addiu $s0, $s0, 0xc -/* 8FF958 802402E8 8E220084 */ lw $v0, 0x84($s1) -/* 8FF95C 802402EC 1440FFEB */ bnez $v0, .L8024029C -/* 8FF960 802402F0 26520001 */ addiu $s2, $s2, 1 -/* 8FF964 802402F4 AE7201DC */ sw $s2, 0x1dc($s3) -/* 8FF968 802402F8 8FBF0198 */ lw $ra, 0x198($sp) -/* 8FF96C 802402FC 8FB30194 */ lw $s3, 0x194($sp) -/* 8FF970 80240300 8FB20190 */ lw $s2, 0x190($sp) -/* 8FF974 80240304 8FB1018C */ lw $s1, 0x18c($sp) -/* 8FF978 80240308 8FB00188 */ lw $s0, 0x188($sp) -/* 8FF97C 8024030C 03E00008 */ jr $ra -/* 8FF980 80240310 27BD01A0 */ addiu $sp, $sp, 0x1a0 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240314_8FF984.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240314_8FF984.s deleted file mode 100644 index 9f0492c272..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240314_8FF984.s +++ /dev/null @@ -1,69 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240314_8FF984 -/* 8FF984 80240314 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 8FF988 80240318 AFB10014 */ sw $s1, 0x14($sp) -/* 8FF98C 8024031C 0080882D */ daddu $s1, $a0, $zero -/* 8FF990 80240320 AFBF0024 */ sw $ra, 0x24($sp) -/* 8FF994 80240324 AFB40020 */ sw $s4, 0x20($sp) -/* 8FF998 80240328 AFB3001C */ sw $s3, 0x1c($sp) -/* 8FF99C 8024032C AFB20018 */ sw $s2, 0x18($sp) -/* 8FF9A0 80240330 AFB00010 */ sw $s0, 0x10($sp) -/* 8FF9A4 80240334 8E30000C */ lw $s0, 0xc($s1) -/* 8FF9A8 80240338 8E050000 */ lw $a1, ($s0) -/* 8FF9AC 8024033C 0C0B1EAF */ jal evt_get_variable -/* 8FF9B0 80240340 26100004 */ addiu $s0, $s0, 4 -/* 8FF9B4 80240344 8E050000 */ lw $a1, ($s0) -/* 8FF9B8 80240348 26100004 */ addiu $s0, $s0, 4 -/* 8FF9BC 8024034C 0220202D */ daddu $a0, $s1, $zero -/* 8FF9C0 80240350 0C0B1EAF */ jal evt_get_variable -/* 8FF9C4 80240354 0040982D */ daddu $s3, $v0, $zero -/* 8FF9C8 80240358 8E050000 */ lw $a1, ($s0) -/* 8FF9CC 8024035C 26100004 */ addiu $s0, $s0, 4 -/* 8FF9D0 80240360 0220202D */ daddu $a0, $s1, $zero -/* 8FF9D4 80240364 0C0B1EAF */ jal evt_get_variable -/* 8FF9D8 80240368 0040902D */ daddu $s2, $v0, $zero -/* 8FF9DC 8024036C 8E050000 */ lw $a1, ($s0) -/* 8FF9E0 80240370 26100004 */ addiu $s0, $s0, 4 -/* 8FF9E4 80240374 0220202D */ daddu $a0, $s1, $zero -/* 8FF9E8 80240378 0C0B1EAF */ jal evt_get_variable -/* 8FF9EC 8024037C 0040A02D */ daddu $s4, $v0, $zero -/* 8FF9F0 80240380 0220202D */ daddu $a0, $s1, $zero -/* 8FF9F4 80240384 8E050000 */ lw $a1, ($s0) -/* 8FF9F8 80240388 0C0B1EAF */ jal evt_get_variable -/* 8FF9FC 8024038C 0040882D */ daddu $s1, $v0, $zero -/* 8FFA00 80240390 0000202D */ daddu $a0, $zero, $zero -/* 8FFA04 80240394 3C05FD05 */ lui $a1, 0xfd05 -/* 8FFA08 80240398 34A50F80 */ ori $a1, $a1, 0xf80 -/* 8FFA0C 8024039C 0C0B1EAF */ jal evt_get_variable -/* 8FFA10 802403A0 0040802D */ daddu $s0, $v0, $zero -/* 8FFA14 802403A4 00131900 */ sll $v1, $s3, 4 -/* 8FFA18 802403A8 00731823 */ subu $v1, $v1, $s3 -/* 8FFA1C 802403AC 00031940 */ sll $v1, $v1, 5 -/* 8FFA20 802403B0 00432021 */ addu $a0, $v0, $v1 -/* 8FFA24 802403B4 24020002 */ addiu $v0, $zero, 2 -/* 8FFA28 802403B8 00121840 */ sll $v1, $s2, 1 -/* 8FFA2C 802403BC 00721821 */ addu $v1, $v1, $s2 -/* 8FFA30 802403C0 00431804 */ sllv $v1, $v1, $v0 -/* 8FFA34 802403C4 00832021 */ addu $a0, $a0, $v1 -/* 8FFA38 802403C8 44940000 */ mtc1 $s4, $f0 -/* 8FFA3C 802403CC 00000000 */ nop -/* 8FFA40 802403D0 46800020 */ cvt.s.w $f0, $f0 -/* 8FFA44 802403D4 E4800000 */ swc1 $f0, ($a0) -/* 8FFA48 802403D8 44910000 */ mtc1 $s1, $f0 -/* 8FFA4C 802403DC 00000000 */ nop -/* 8FFA50 802403E0 46800020 */ cvt.s.w $f0, $f0 -/* 8FFA54 802403E4 E4800004 */ swc1 $f0, 4($a0) -/* 8FFA58 802403E8 44900000 */ mtc1 $s0, $f0 -/* 8FFA5C 802403EC 00000000 */ nop -/* 8FFA60 802403F0 46800020 */ cvt.s.w $f0, $f0 -/* 8FFA64 802403F4 E4800008 */ swc1 $f0, 8($a0) -/* 8FFA68 802403F8 8FBF0024 */ lw $ra, 0x24($sp) -/* 8FFA6C 802403FC 8FB40020 */ lw $s4, 0x20($sp) -/* 8FFA70 80240400 8FB3001C */ lw $s3, 0x1c($sp) -/* 8FFA74 80240404 8FB20018 */ lw $s2, 0x18($sp) -/* 8FFA78 80240408 8FB10014 */ lw $s1, 0x14($sp) -/* 8FFA7C 8024040C 8FB00010 */ lw $s0, 0x10($sp) -/* 8FFA80 80240410 03E00008 */ jr $ra -/* 8FFA84 80240414 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240418_8FFA88.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240418_8FFA88.s deleted file mode 100644 index 042e5644c1..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240418_8FFA88.s +++ /dev/null @@ -1,55 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240418_8FFA88 -/* 8FFA88 80240418 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 8FFA8C 8024041C AFB10014 */ sw $s1, 0x14($sp) -/* 8FFA90 80240420 0080882D */ daddu $s1, $a0, $zero -/* 8FFA94 80240424 AFBF0020 */ sw $ra, 0x20($sp) -/* 8FFA98 80240428 AFB3001C */ sw $s3, 0x1c($sp) -/* 8FFA9C 8024042C AFB20018 */ sw $s2, 0x18($sp) -/* 8FFAA0 80240430 AFB00010 */ sw $s0, 0x10($sp) -/* 8FFAA4 80240434 8E30000C */ lw $s0, 0xc($s1) -/* 8FFAA8 80240438 8E050000 */ lw $a1, ($s0) -/* 8FFAAC 8024043C 0C0B1EAF */ jal evt_get_variable -/* 8FFAB0 80240440 26100004 */ addiu $s0, $s0, 4 -/* 8FFAB4 80240444 8E050000 */ lw $a1, ($s0) -/* 8FFAB8 80240448 26100004 */ addiu $s0, $s0, 4 -/* 8FFABC 8024044C 0220202D */ daddu $a0, $s1, $zero -/* 8FFAC0 80240450 0C0B1EAF */ jal evt_get_variable -/* 8FFAC4 80240454 0040982D */ daddu $s3, $v0, $zero -/* 8FFAC8 80240458 8E050000 */ lw $a1, ($s0) -/* 8FFACC 8024045C 26100004 */ addiu $s0, $s0, 4 -/* 8FFAD0 80240460 0220202D */ daddu $a0, $s1, $zero -/* 8FFAD4 80240464 0C0B1EAF */ jal evt_get_variable -/* 8FFAD8 80240468 0040902D */ daddu $s2, $v0, $zero -/* 8FFADC 8024046C 8E050000 */ lw $a1, ($s0) -/* 8FFAE0 80240470 26100004 */ addiu $s0, $s0, 4 -/* 8FFAE4 80240474 0C0B1EAF */ jal evt_get_variable -/* 8FFAE8 80240478 0220202D */ daddu $a0, $s1, $zero -/* 8FFAEC 8024047C 8E050000 */ lw $a1, ($s0) -/* 8FFAF0 80240480 0C0B1EAF */ jal evt_get_variable -/* 8FFAF4 80240484 0220202D */ daddu $a0, $s1, $zero -/* 8FFAF8 80240488 0000202D */ daddu $a0, $zero, $zero -/* 8FFAFC 8024048C 3C05FD05 */ lui $a1, 0xfd05 -/* 8FFB00 80240490 34A50F80 */ ori $a1, $a1, 0xf80 -/* 8FFB04 80240494 0C0B1EAF */ jal evt_get_variable -/* 8FFB08 80240498 0040802D */ daddu $s0, $v0, $zero -/* 8FFB0C 8024049C 00131900 */ sll $v1, $s3, 4 -/* 8FFB10 802404A0 00731823 */ subu $v1, $v1, $s3 -/* 8FFB14 802404A4 00031940 */ sll $v1, $v1, 5 -/* 8FFB18 802404A8 00431821 */ addu $v1, $v0, $v1 -/* 8FFB1C 802404AC 24020002 */ addiu $v0, $zero, 2 -/* 8FFB20 802404B0 00529004 */ sllv $s2, $s2, $v0 -/* 8FFB24 802404B4 00721821 */ addu $v1, $v1, $s2 -/* 8FFB28 802404B8 44900000 */ mtc1 $s0, $f0 -/* 8FFB2C 802404BC 00000000 */ nop -/* 8FFB30 802404C0 46800020 */ cvt.s.w $f0, $f0 -/* 8FFB34 802404C4 E460006C */ swc1 $f0, 0x6c($v1) -/* 8FFB38 802404C8 8FBF0020 */ lw $ra, 0x20($sp) -/* 8FFB3C 802404CC 8FB3001C */ lw $s3, 0x1c($sp) -/* 8FFB40 802404D0 8FB20018 */ lw $s2, 0x18($sp) -/* 8FFB44 802404D4 8FB10014 */ lw $s1, 0x14($sp) -/* 8FFB48 802404D8 8FB00010 */ lw $s0, 0x10($sp) -/* 8FFB4C 802404DC 03E00008 */ jr $ra -/* 8FFB50 802404E0 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_8024056C_8FFBDC.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_8024056C_8FFBDC.s deleted file mode 100644 index cba8ae9fc8..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_8024056C_8FFBDC.s +++ /dev/null @@ -1,392 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -.section .rodata - -dlabel D_802483B0_907A20 -.double 90.0, 0.0 - -.section .text - -glabel func_8024056C_8FFBDC -/* 8FFBDC 8024056C 27BDFF70 */ addiu $sp, $sp, -0x90 -/* 8FFBE0 80240570 3C038025 */ lui $v1, %hi(D_802483D0) -/* 8FFBE4 80240574 8C6383D0 */ lw $v1, %lo(D_802483D0)($v1) -/* 8FFBE8 80240578 2402FFFF */ addiu $v0, $zero, -1 -/* 8FFBEC 8024057C AFBF005C */ sw $ra, 0x5c($sp) -/* 8FFBF0 80240580 AFBE0058 */ sw $fp, 0x58($sp) -/* 8FFBF4 80240584 AFB70054 */ sw $s7, 0x54($sp) -/* 8FFBF8 80240588 AFB60050 */ sw $s6, 0x50($sp) -/* 8FFBFC 8024058C AFB5004C */ sw $s5, 0x4c($sp) -/* 8FFC00 80240590 AFB40048 */ sw $s4, 0x48($sp) -/* 8FFC04 80240594 AFB30044 */ sw $s3, 0x44($sp) -/* 8FFC08 80240598 AFB20040 */ sw $s2, 0x40($sp) -/* 8FFC0C 8024059C AFB1003C */ sw $s1, 0x3c($sp) -/* 8FFC10 802405A0 AFB00038 */ sw $s0, 0x38($sp) -/* 8FFC14 802405A4 F7BE0088 */ sdc1 $f30, 0x88($sp) -/* 8FFC18 802405A8 F7BC0080 */ sdc1 $f28, 0x80($sp) -/* 8FFC1C 802405AC F7BA0078 */ sdc1 $f26, 0x78($sp) -/* 8FFC20 802405B0 F7B80070 */ sdc1 $f24, 0x70($sp) -/* 8FFC24 802405B4 F7B60068 */ sdc1 $f22, 0x68($sp) -/* 8FFC28 802405B8 1062013F */ beq $v1, $v0, .L80240AB8 -/* 8FFC2C 802405BC F7B40060 */ sdc1 $f20, 0x60($sp) -/* 8FFC30 802405C0 1460005E */ bnez $v1, .L8024073C -/* 8FFC34 802405C4 0000382D */ daddu $a3, $zero, $zero -/* 8FFC38 802405C8 00E0802D */ daddu $s0, $a3, $zero -/* 8FFC3C 802405CC 3C0142B4 */ lui $at, 0x42b4 -/* 8FFC40 802405D0 4481E000 */ mtc1 $at, $f28 -/* 8FFC44 802405D4 3C014334 */ lui $at, 0x4334 -/* 8FFC48 802405D8 4481D000 */ mtc1 $at, $f26 -/* 8FFC4C 802405DC 3C0143B4 */ lui $at, 0x43b4 -/* 8FFC50 802405E0 4481A000 */ mtc1 $at, $f20 -/* 8FFC54 802405E4 3C01C334 */ lui $at, 0xc334 -/* 8FFC58 802405E8 4481B000 */ mtc1 $at, $f22 -.L802405EC: -/* 8FFC5C 802405EC 0000202D */ daddu $a0, $zero, $zero -/* 8FFC60 802405F0 3C05FD05 */ lui $a1, 0xfd05 -/* 8FFC64 802405F4 34A50F80 */ ori $a1, $a1, 0xf80 -/* 8FFC68 802405F8 0C0B1EAF */ jal evt_get_variable -/* 8FFC6C 802405FC AFA70030 */ sw $a3, 0x30($sp) -/* 8FFC70 80240600 00502021 */ addu $a0, $v0, $s0 -/* 8FFC74 80240604 8FA70030 */ lw $a3, 0x30($sp) -/* 8FFC78 80240608 24020001 */ addiu $v0, $zero, 1 -/* 8FFC7C 8024060C 10E20011 */ beq $a3, $v0, .L80240654 -/* 8FFC80 80240610 28E20002 */ slti $v0, $a3, 2 -/* 8FFC84 80240614 50400005 */ beql $v0, $zero, .L8024062C -/* 8FFC88 80240618 24020002 */ addiu $v0, $zero, 2 -/* 8FFC8C 8024061C 10E00009 */ beqz $a3, .L80240644 -/* 8FFC90 80240620 00000000 */ nop -/* 8FFC94 80240624 080902AE */ j .L80240AB8 -/* 8FFC98 80240628 00000000 */ nop -.L8024062C: -/* 8FFC9C 8024062C 10E2000B */ beq $a3, $v0, .L8024065C -/* 8FFCA0 80240630 24020003 */ addiu $v0, $zero, 3 -/* 8FFCA4 80240634 10E2000A */ beq $a3, $v0, .L80240660 -/* 8FFCA8 80240638 24140005 */ addiu $s4, $zero, 5 -/* 8FFCAC 8024063C 080902AE */ j .L80240AB8 -/* 8FFCB0 80240640 00000000 */ nop -.L80240644: -/* 8FFCB4 80240644 3C014120 */ lui $at, 0x4120 -/* 8FFCB8 80240648 4481C000 */ mtc1 $at, $f24 -/* 8FFCBC 8024064C 0809019A */ j .L80240668 -/* 8FFCC0 80240650 24140009 */ addiu $s4, $zero, 9 -.L80240654: -/* 8FFCC4 80240654 08090198 */ j .L80240660 -/* 8FFCC8 80240658 24140007 */ addiu $s4, $zero, 7 -.L8024065C: -/* 8FFCCC 8024065C 24140007 */ addiu $s4, $zero, 7 -.L80240660: -/* 8FFCD0 80240660 3C014100 */ lui $at, 0x4100 -/* 8FFCD4 80240664 4481C000 */ mtc1 $at, $f24 -.L80240668: -/* 8FFCD8 80240668 0000882D */ daddu $s1, $zero, $zero -/* 8FFCDC 8024066C AC940090 */ sw $s4, 0x90($a0) -/* 8FFCE0 80240670 1A800027 */ blez $s4, .L80240710 -/* 8FFCE4 80240674 E4980094 */ swc1 $f24, 0x94($a0) -/* 8FFCE8 80240678 2686FFFF */ addiu $a2, $s4, -1 -/* 8FFCEC 8024067C 0080182D */ daddu $v1, $a0, $zero -/* 8FFCF0 80240680 24050004 */ addiu $a1, $zero, 4 -/* 8FFCF4 80240684 3C013FE0 */ lui $at, 0x3fe0 -/* 8FFCF8 80240688 44814800 */ mtc1 $at, $f9 -/* 8FFCFC 8024068C 44804000 */ mtc1 $zero, $f8 -/* 8FFD00 80240690 3C018025 */ lui $at, %hi(D_802483B0_907A20) -/* 8FFD04 80240694 D42683B0 */ ldc1 $f6, %lo(D_802483B0_907A20)($at) -.L80240698: -/* 8FFD08 80240698 16260004 */ bne $s1, $a2, .L802406AC -/* 8FFD0C 8024069C 00851021 */ addu $v0, $a0, $a1 -/* 8FFD10 802406A0 C460006C */ lwc1 $f0, 0x6c($v1) -/* 8FFD14 802406A4 080901BE */ j .L802406F8 -/* 8FFD18 802406A8 461C0000 */ add.s $f0, $f0, $f28 -.L802406AC: -/* 8FFD1C 802406AC C460006C */ lwc1 $f0, 0x6c($v1) -/* 8FFD20 802406B0 C444006C */ lwc1 $f4, 0x6c($v0) -/* 8FFD24 802406B4 46002081 */ sub.s $f2, $f4, $f0 -/* 8FFD28 802406B8 4602D03C */ c.lt.s $f26, $f2 -/* 8FFD2C 802406BC 00000000 */ nop -/* 8FFD30 802406C0 45000003 */ bc1f .L802406D0 -/* 8FFD34 802406C4 00000000 */ nop -/* 8FFD38 802406C8 080901B8 */ j .L802406E0 -/* 8FFD3C 802406CC 46140000 */ add.s $f0, $f0, $f20 -.L802406D0: -/* 8FFD40 802406D0 4616103C */ c.lt.s $f2, $f22 -/* 8FFD44 802406D4 00000000 */ nop -/* 8FFD48 802406D8 45030001 */ bc1tl .L802406E0 -/* 8FFD4C 802406DC 46142100 */ add.s $f4, $f4, $f20 -.L802406E0: -/* 8FFD50 802406E0 46040000 */ add.s $f0, $f0, $f4 -/* 8FFD54 802406E4 46000021 */ cvt.d.s $f0, $f0 -/* 8FFD58 802406E8 46280002 */ mul.d $f0, $f0, $f8 -/* 8FFD5C 802406EC 00000000 */ nop -/* 8FFD60 802406F0 46260000 */ add.d $f0, $f0, $f6 -/* 8FFD64 802406F4 46200020 */ cvt.s.d $f0, $f0 -.L802406F8: -/* 8FFD68 802406F8 E460006C */ swc1 $f0, 0x6c($v1) -/* 8FFD6C 802406FC 24630004 */ addiu $v1, $v1, 4 -/* 8FFD70 80240700 26310001 */ addiu $s1, $s1, 1 -/* 8FFD74 80240704 0234102A */ slt $v0, $s1, $s4 -/* 8FFD78 80240708 1440FFE3 */ bnez $v0, .L80240698 -/* 8FFD7C 8024070C 24A50004 */ addiu $a1, $a1, 4 -.L80240710: -/* 8FFD80 80240710 0C090090 */ jal func_80240240_8FF8B0 -/* 8FFD84 80240714 AFA70030 */ sw $a3, 0x30($sp) -/* 8FFD88 80240718 8FA70030 */ lw $a3, 0x30($sp) -/* 8FFD8C 8024071C 24E70001 */ addiu $a3, $a3, 1 -/* 8FFD90 80240720 28E20004 */ slti $v0, $a3, 4 -/* 8FFD94 80240724 1440FFB1 */ bnez $v0, .L802405EC -/* 8FFD98 80240728 261001E0 */ addiu $s0, $s0, 0x1e0 -/* 8FFD9C 8024072C 24020001 */ addiu $v0, $zero, 1 -/* 8FFDA0 80240730 3C018025 */ lui $at, %hi(D_802483D0) -/* 8FFDA4 80240734 AC2283D0 */ sw $v0, %lo(D_802483D0)($at) -/* 8FFDA8 80240738 0000382D */ daddu $a3, $zero, $zero -.L8024073C: -/* 8FFDAC 8024073C 3C02800A */ lui $v0, %hi(gMasterGfxPos) -/* 8FFDB0 80240740 2442A66C */ addiu $v0, $v0, %lo(gMasterGfxPos) -/* 8FFDB4 80240744 0040402D */ daddu $t0, $v0, $zero -/* 8FFDB8 80240748 3C090100 */ lui $t1, 0x100 -/* 8FFDBC 8024074C 35294008 */ ori $t1, $t1, 0x4008 -/* 8FFDC0 80240750 AFA90018 */ sw $t1, 0x18($sp) -/* 8FFDC4 80240754 3C090602 */ lui $t1, 0x602 -/* 8FFDC8 80240758 35290004 */ ori $t1, $t1, 4 -/* 8FFDCC 8024075C AFA9001C */ sw $t1, 0x1c($sp) -/* 8FFDD0 80240760 AFA00020 */ sw $zero, 0x20($sp) -/* 8FFDD4 80240764 8D030000 */ lw $v1, ($t0) -/* 8FFDD8 80240768 3C02E700 */ lui $v0, 0xe700 -/* 8FFDDC 8024076C 0060202D */ daddu $a0, $v1, $zero -/* 8FFDE0 80240770 24630008 */ addiu $v1, $v1, 8 -/* 8FFDE4 80240774 AD030000 */ sw $v1, ($t0) -/* 8FFDE8 80240778 AC820000 */ sw $v0, ($a0) -/* 8FFDEC 8024077C 24620008 */ addiu $v0, $v1, 8 -/* 8FFDF0 80240780 AC800004 */ sw $zero, 4($a0) -/* 8FFDF4 80240784 AD020000 */ sw $v0, ($t0) -/* 8FFDF8 80240788 3C02DE00 */ lui $v0, 0xde00 -/* 8FFDFC 8024078C AC620000 */ sw $v0, ($v1) -/* 8FFE00 80240790 3C028024 */ lui $v0, %hi(D_80241F00_901570) -/* 8FFE04 80240794 24421F00 */ addiu $v0, $v0, %lo(D_80241F00_901570) -/* 8FFE08 80240798 AC620004 */ sw $v0, 4($v1) -.L8024079C: -/* 8FFE0C 8024079C 0000202D */ daddu $a0, $zero, $zero -/* 8FFE10 802407A0 3C05FD05 */ lui $a1, 0xfd05 -/* 8FFE14 802407A4 34A50F80 */ ori $a1, $a1, 0xf80 -/* 8FFE18 802407A8 AFA70030 */ sw $a3, 0x30($sp) -/* 8FFE1C 802407AC 0C0B1EAF */ jal evt_get_variable -/* 8FFE20 802407B0 AFA80034 */ sw $t0, 0x34($sp) -/* 8FFE24 802407B4 0000882D */ daddu $s1, $zero, $zero -/* 8FFE28 802407B8 8FA90020 */ lw $t1, 0x20($sp) -/* 8FFE2C 802407BC 8FA80034 */ lw $t0, 0x34($sp) -/* 8FFE30 802407C0 0049A821 */ addu $s5, $v0, $t1 -/* 8FFE34 802407C4 3C02DE01 */ lui $v0, 0xde01 -/* 8FFE38 802407C8 C6B80094 */ lwc1 $f24, 0x94($s5) -/* 8FFE3C 802407CC 8D040000 */ lw $a0, ($t0) -/* 8FFE40 802407D0 8EB40090 */ lw $s4, 0x90($s5) -/* 8FFE44 802407D4 24890008 */ addiu $t1, $a0, 8 -/* 8FFE48 802407D8 AFA90010 */ sw $t1, 0x10($sp) -/* 8FFE4C 802407DC 8EA601DC */ lw $a2, 0x1dc($s5) -/* 8FFE50 802407E0 AC820000 */ sw $v0, ($a0) -/* 8FFE54 802407E4 00061940 */ sll $v1, $a2, 5 -/* 8FFE58 802407E8 24620008 */ addiu $v0, $v1, 8 -/* 8FFE5C 802407EC 00821021 */ addu $v0, $a0, $v0 -/* 8FFE60 802407F0 01231821 */ addu $v1, $t1, $v1 -/* 8FFE64 802407F4 AC820004 */ sw $v0, 4($a0) -/* 8FFE68 802407F8 AD030000 */ sw $v1, ($t0) -/* 8FFE6C 802407FC 8FA70030 */ lw $a3, 0x30($sp) -/* 8FFE70 80240800 18C00088 */ blez $a2, .L80240A24 -/* 8FFE74 80240804 0120982D */ daddu $s3, $t1, $zero -/* 8FFE78 80240808 2682FFFF */ addiu $v0, $s4, -1 -/* 8FFE7C 8024080C 00021080 */ sll $v0, $v0, 2 -/* 8FFE80 80240810 02A21021 */ addu $v0, $s5, $v0 -/* 8FFE84 80240814 AFA20014 */ sw $v0, 0x14($sp) -/* 8FFE88 80240818 0220282D */ daddu $a1, $s1, $zero -/* 8FFE8C 8024081C 0220F02D */ daddu $fp, $s1, $zero -/* 8FFE90 80240820 0220B82D */ daddu $s7, $s1, $zero -/* 8FFE94 80240824 0220B02D */ daddu $s6, $s1, $zero -/* 8FFE98 80240828 02A0902D */ daddu $s2, $s5, $zero -/* 8FFE9C 8024082C 24900016 */ addiu $s0, $a0, 0x16 -.L80240830: -/* 8FFEA0 80240830 44911000 */ mtc1 $s1, $f2 -/* 8FFEA4 80240834 00000000 */ nop -/* 8FFEA8 80240838 468010A0 */ cvt.s.w $f2, $f2 -/* 8FFEAC 8024083C 44940000 */ mtc1 $s4, $f0 -/* 8FFEB0 80240840 00000000 */ nop -/* 8FFEB4 80240844 46800020 */ cvt.s.w $f0, $f0 -/* 8FFEB8 80240848 46001082 */ mul.s $f2, $f2, $f0 -/* 8FFEBC 8024084C 00000000 */ nop -/* 8FFEC0 80240850 44860000 */ mtc1 $a2, $f0 -/* 8FFEC4 80240854 00000000 */ nop -/* 8FFEC8 80240858 46800020 */ cvt.s.w $f0, $f0 -/* 8FFECC 8024085C C65A0098 */ lwc1 $f26, 0x98($s2) -/* 8FFED0 80240860 C65C009C */ lwc1 $f28, 0x9c($s2) -/* 8FFED4 80240864 C65E00A0 */ lwc1 $f30, 0xa0($s2) -/* 8FFED8 80240868 46001083 */ div.s $f2, $f2, $f0 -/* 8FFEDC 8024086C 4600128D */ trunc.w.s $f10, $f2 -/* 8FFEE0 80240870 44045000 */ mfc1 $a0, $f10 -/* 8FFEE4 80240874 00000000 */ nop -/* 8FFEE8 80240878 44840000 */ mtc1 $a0, $f0 -/* 8FFEEC 8024087C 00000000 */ nop -/* 8FFEF0 80240880 46800020 */ cvt.s.w $f0, $f0 -/* 8FFEF4 80240884 24830001 */ addiu $v1, $a0, 1 -/* 8FFEF8 80240888 0074102A */ slt $v0, $v1, $s4 -/* 8FFEFC 8024088C 14400005 */ bnez $v0, .L802408A4 -/* 8FFF00 80240890 46001181 */ sub.s $f6, $f2, $f0 -/* 8FFF04 80240894 8FA90014 */ lw $t1, 0x14($sp) -/* 8FFF08 80240898 C536006C */ lwc1 $f22, 0x6c($t1) -/* 8FFF0C 8024089C 0809024C */ j .L80240930 -/* 8FFF10 802408A0 4600B306 */ mov.s $f12, $f22 -.L802408A4: -/* 8FFF14 802408A4 00031080 */ sll $v0, $v1, 2 -/* 8FFF18 802408A8 02A21021 */ addu $v0, $s5, $v0 -/* 8FFF1C 802408AC C444006C */ lwc1 $f4, 0x6c($v0) -/* 8FFF20 802408B0 00041080 */ sll $v0, $a0, 2 -/* 8FFF24 802408B4 02A21021 */ addu $v0, $s5, $v0 -/* 8FFF28 802408B8 C44C006C */ lwc1 $f12, 0x6c($v0) -/* 8FFF2C 802408BC 460C2081 */ sub.s $f2, $f4, $f12 -/* 8FFF30 802408C0 3C014334 */ lui $at, 0x4334 -/* 8FFF34 802408C4 44810000 */ mtc1 $at, $f0 -/* 8FFF38 802408C8 00000000 */ nop -/* 8FFF3C 802408CC 4602003C */ c.lt.s $f0, $f2 -/* 8FFF40 802408D0 00000000 */ nop -/* 8FFF44 802408D4 45000006 */ bc1f .L802408F0 -/* 8FFF48 802408D8 00000000 */ nop -/* 8FFF4C 802408DC 3C0143B4 */ lui $at, 0x43b4 -/* 8FFF50 802408E0 44815000 */ mtc1 $at, $f10 -/* 8FFF54 802408E4 00000000 */ nop -/* 8FFF58 802408E8 460A2101 */ sub.s $f4, $f4, $f10 -/* 8FFF5C 802408EC 460C2081 */ sub.s $f2, $f4, $f12 -.L802408F0: -/* 8FFF60 802408F0 3C01C334 */ lui $at, 0xc334 -/* 8FFF64 802408F4 44810000 */ mtc1 $at, $f0 -/* 8FFF68 802408F8 00000000 */ nop -/* 8FFF6C 802408FC 4600103C */ c.lt.s $f2, $f0 -/* 8FFF70 80240900 00000000 */ nop -/* 8FFF74 80240904 45020006 */ bc1fl .L80240920 -/* 8FFF78 80240908 460C2001 */ sub.s $f0, $f4, $f12 -/* 8FFF7C 8024090C 3C0143B4 */ lui $at, 0x43b4 -/* 8FFF80 80240910 44815000 */ mtc1 $at, $f10 -/* 8FFF84 80240914 00000000 */ nop -/* 8FFF88 80240918 460A2100 */ add.s $f4, $f4, $f10 -/* 8FFF8C 8024091C 460C2001 */ sub.s $f0, $f4, $f12 -.L80240920: -/* 8FFF90 80240920 46060002 */ mul.s $f0, $f0, $f6 -/* 8FFF94 80240924 00000000 */ nop -/* 8FFF98 80240928 460C0580 */ add.s $f22, $f0, $f12 -/* 8FFF9C 8024092C 4600B306 */ mov.s $f12, $f22 -.L80240930: -/* 8FFFA0 80240930 AFA50028 */ sw $a1, 0x28($sp) -/* 8FFFA4 80240934 AFA6002C */ sw $a2, 0x2c($sp) -/* 8FFFA8 80240938 AFA70030 */ sw $a3, 0x30($sp) -/* 8FFFAC 8024093C 0C00A8BB */ jal sin_deg -/* 8FFFB0 80240940 AFA80034 */ sw $t0, 0x34($sp) -/* 8FFFB4 80240944 46180502 */ mul.s $f20, $f0, $f24 -/* 8FFFB8 80240948 00000000 */ nop -/* 8FFFBC 8024094C 0C00A8D4 */ jal cos_deg -/* 8FFFC0 80240950 4600B306 */ mov.s $f12, $f22 -/* 8FFFC4 80240954 46000007 */ neg.s $f0, $f0 -/* 8FFFC8 80240958 46180002 */ mul.s $f0, $f0, $f24 -/* 8FFFCC 8024095C 00000000 */ nop -/* 8FFFD0 80240960 4614D100 */ add.s $f4, $f26, $f20 -/* 8FFFD4 80240964 4600E080 */ add.s $f2, $f28, $f0 -/* 8FFFD8 80240968 4614D501 */ sub.s $f20, $f26, $f20 -/* 8FFFDC 8024096C 2652000C */ addiu $s2, $s2, 0xc -/* 8FFFE0 80240970 26310001 */ addiu $s1, $s1, 1 -/* 8FFFE4 80240974 4600E001 */ sub.s $f0, $f28, $f0 -/* 8FFFE8 80240978 4600228D */ trunc.w.s $f10, $f4 -/* 8FFFEC 8024097C 44025000 */ mfc1 $v0, $f10 -/* 8FFFF0 80240980 00000000 */ nop -/* 8FFFF4 80240984 A6620000 */ sh $v0, ($s3) -/* 8FFFF8 80240988 4600128D */ trunc.w.s $f10, $f2 -/* 8FFFFC 8024098C 44025000 */ mfc1 $v0, $f10 -/* 900000 80240990 4600F28D */ trunc.w.s $f10, $f30 -/* 900004 80240994 44035000 */ mfc1 $v1, $f10 -/* 900008 80240998 26730010 */ addiu $s3, $s3, 0x10 -/* 90000C 8024099C A602FFF4 */ sh $v0, -0xc($s0) -/* 900010 802409A0 A603FFF6 */ sh $v1, -0xa($s0) -/* 900014 802409A4 A616FFFA */ sh $s6, -6($s0) -/* 900018 802409A8 A600FFFC */ sh $zero, -4($s0) -/* 90001C 802409AC A217FFFE */ sb $s7, -2($s0) -/* 900020 802409B0 A21EFFFF */ sb $fp, -1($s0) -/* 900024 802409B4 8FA50028 */ lw $a1, 0x28($sp) -/* 900028 802409B8 4600A28D */ trunc.w.s $f10, $f20 -/* 90002C 802409BC 44025000 */ mfc1 $v0, $f10 -/* 900030 802409C0 A2050000 */ sb $a1, ($s0) -/* 900034 802409C4 26100010 */ addiu $s0, $s0, 0x10 -/* 900038 802409C8 A6620000 */ sh $v0, ($s3) -/* 90003C 802409CC 4600028D */ trunc.w.s $f10, $f0 -/* 900040 802409D0 44025000 */ mfc1 $v0, $f10 -/* 900044 802409D4 00000000 */ nop -/* 900048 802409D8 A602FFF4 */ sh $v0, -0xc($s0) -/* 90004C 802409DC 24020400 */ addiu $v0, $zero, 0x400 -/* 900050 802409E0 A603FFF6 */ sh $v1, -0xa($s0) -/* 900054 802409E4 A616FFFA */ sh $s6, -6($s0) -/* 900058 802409E8 A602FFFC */ sh $v0, -4($s0) -/* 90005C 802409EC A217FFFE */ sb $s7, -2($s0) -/* 900060 802409F0 A21EFFFF */ sb $fp, -1($s0) -/* 900064 802409F4 A2050000 */ sb $a1, ($s0) -/* 900068 802409F8 26100010 */ addiu $s0, $s0, 0x10 -/* 90006C 802409FC 26730010 */ addiu $s3, $s3, 0x10 -/* 900070 80240A00 24A5001E */ addiu $a1, $a1, 0x1e -/* 900074 80240A04 27DE0078 */ addiu $fp, $fp, 0x78 -/* 900078 80240A08 26F70032 */ addiu $s7, $s7, 0x32 -/* 90007C 80240A0C 8FA6002C */ lw $a2, 0x2c($sp) -/* 900080 80240A10 8FA70030 */ lw $a3, 0x30($sp) -/* 900084 80240A14 8FA80034 */ lw $t0, 0x34($sp) -/* 900088 80240A18 0226102A */ slt $v0, $s1, $a2 -/* 90008C 80240A1C 1440FF84 */ bnez $v0, .L80240830 -/* 900090 80240A20 26D60140 */ addiu $s6, $s6, 0x140 -.L80240A24: -/* 900094 80240A24 24C5FFFF */ addiu $a1, $a2, -1 -/* 900098 80240A28 18A00014 */ blez $a1, .L80240A7C -/* 90009C 80240A2C 0000882D */ daddu $s1, $zero, $zero -/* 9000A0 80240A30 3C060002 */ lui $a2, 2 -/* 9000A4 80240A34 34C60406 */ ori $a2, $a2, 0x406 -/* 9000A8 80240A38 8FA40010 */ lw $a0, 0x10($sp) -.L80240A3C: -/* 9000AC 80240A3C 8D030000 */ lw $v1, ($t0) -/* 9000B0 80240A40 26310001 */ addiu $s1, $s1, 1 -/* 9000B4 80240A44 0060102D */ daddu $v0, $v1, $zero -/* 9000B8 80240A48 24630008 */ addiu $v1, $v1, 8 -/* 9000BC 80240A4C AC440004 */ sw $a0, 4($v0) -/* 9000C0 80240A50 AD030000 */ sw $v1, ($t0) -/* 9000C4 80240A54 8FA90018 */ lw $t1, 0x18($sp) -/* 9000C8 80240A58 24840020 */ addiu $a0, $a0, 0x20 -/* 9000CC 80240A5C AC490000 */ sw $t1, ($v0) -/* 9000D0 80240A60 24620008 */ addiu $v0, $v1, 8 -/* 9000D4 80240A64 AD020000 */ sw $v0, ($t0) -/* 9000D8 80240A68 8FA9001C */ lw $t1, 0x1c($sp) -/* 9000DC 80240A6C 0225102A */ slt $v0, $s1, $a1 -/* 9000E0 80240A70 AC660004 */ sw $a2, 4($v1) -/* 9000E4 80240A74 1440FFF1 */ bnez $v0, .L80240A3C -/* 9000E8 80240A78 AC690000 */ sw $t1, ($v1) -.L80240A7C: -/* 9000EC 80240A7C 24E70001 */ addiu $a3, $a3, 1 -/* 9000F0 80240A80 8FA90020 */ lw $t1, 0x20($sp) -/* 9000F4 80240A84 28E20004 */ slti $v0, $a3, 4 -/* 9000F8 80240A88 252901E0 */ addiu $t1, $t1, 0x1e0 -/* 9000FC 80240A8C 1440FF43 */ bnez $v0, .L8024079C -/* 900100 80240A90 AFA90020 */ sw $t1, 0x20($sp) -/* 900104 80240A94 3C03800A */ lui $v1, %hi(gMasterGfxPos) -/* 900108 80240A98 2463A66C */ addiu $v1, $v1, %lo(gMasterGfxPos) -/* 90010C 80240A9C 8C620000 */ lw $v0, ($v1) -/* 900110 80240AA0 0040202D */ daddu $a0, $v0, $zero -/* 900114 80240AA4 24420008 */ addiu $v0, $v0, 8 -/* 900118 80240AA8 AC620000 */ sw $v0, ($v1) -/* 90011C 80240AAC 3C02E700 */ lui $v0, 0xe700 -/* 900120 80240AB0 AC820000 */ sw $v0, ($a0) -/* 900124 80240AB4 AC800004 */ sw $zero, 4($a0) -.L80240AB8: -/* 900128 80240AB8 8FBF005C */ lw $ra, 0x5c($sp) -/* 90012C 80240ABC 8FBE0058 */ lw $fp, 0x58($sp) -/* 900130 80240AC0 8FB70054 */ lw $s7, 0x54($sp) -/* 900134 80240AC4 8FB60050 */ lw $s6, 0x50($sp) -/* 900138 80240AC8 8FB5004C */ lw $s5, 0x4c($sp) -/* 90013C 80240ACC 8FB40048 */ lw $s4, 0x48($sp) -/* 900140 80240AD0 8FB30044 */ lw $s3, 0x44($sp) -/* 900144 80240AD4 8FB20040 */ lw $s2, 0x40($sp) -/* 900148 80240AD8 8FB1003C */ lw $s1, 0x3c($sp) -/* 90014C 80240ADC 8FB00038 */ lw $s0, 0x38($sp) -/* 900150 80240AE0 D7BE0088 */ ldc1 $f30, 0x88($sp) -/* 900154 80240AE4 D7BC0080 */ ldc1 $f28, 0x80($sp) -/* 900158 80240AE8 D7BA0078 */ ldc1 $f26, 0x78($sp) -/* 90015C 80240AEC D7B80070 */ ldc1 $f24, 0x70($sp) -/* 900160 80240AF0 D7B60068 */ ldc1 $f22, 0x68($sp) -/* 900164 80240AF4 D7B40060 */ ldc1 $f20, 0x60($sp) -/* 900168 80240AF8 03E00008 */ jr $ra -/* 90016C 80240AFC 27BD0090 */ addiu $sp, $sp, 0x90 diff --git a/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240BA8_900218.s b/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240BA8_900218.s deleted file mode 100644 index 0200a952e4..0000000000 --- a/ver/us/asm/nonmatchings/world/area_kmr/kmr_22/8FF8B0/func_80240BA8_900218.s +++ /dev/null @@ -1,101 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80240BA8_900218 -/* 900218 80240BA8 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 90021C 80240BAC AFB10014 */ sw $s1, 0x14($sp) -/* 900220 80240BB0 0080882D */ daddu $s1, $a0, $zero -/* 900224 80240BB4 AFBF0018 */ sw $ra, 0x18($sp) -/* 900228 80240BB8 AFB00010 */ sw $s0, 0x10($sp) -/* 90022C 80240BBC 8E30000C */ lw $s0, 0xc($s1) -/* 900230 80240BC0 8E050000 */ lw $a1, ($s0) -/* 900234 80240BC4 0C0B1EAF */ jal evt_get_variable -/* 900238 80240BC8 26100004 */ addiu $s0, $s0, 4 -/* 90023C 80240BCC 0220202D */ daddu $a0, $s1, $zero -/* 900240 80240BD0 8E050000 */ lw $a1, ($s0) -/* 900244 80240BD4 0C0B1EAF */ jal evt_get_variable -/* 900248 80240BD8 0040802D */ daddu $s0, $v0, $zero -/* 90024C 80240BDC 0040202D */ daddu $a0, $v0, $zero -/* 900250 80240BE0 24020001 */ addiu $v0, $zero, 1 -/* 900254 80240BE4 12020019 */ beq $s0, $v0, .L80240C4C -/* 900258 80240BE8 2A020002 */ slti $v0, $s0, 2 -/* 90025C 80240BEC 10400005 */ beqz $v0, .L80240C04 -/* 900260 80240BF0 24020002 */ addiu $v0, $zero, 2 -/* 900264 80240BF4 12000009 */ beqz $s0, .L80240C1C -/* 900268 80240BF8 00041840 */ sll $v1, $a0, 1 -/* 90026C 80240BFC 0809033D */ j .L80240CF4 -/* 900270 80240C00 00000000 */ nop -.L80240C04: -/* 900274 80240C04 1202001F */ beq $s0, $v0, .L80240C84 -/* 900278 80240C08 24020003 */ addiu $v0, $zero, 3 -/* 90027C 80240C0C 1202002B */ beq $s0, $v0, .L80240CBC -/* 900280 80240C10 3C068020 */ lui $a2, 0x8020 -/* 900284 80240C14 0809033D */ j .L80240CF4 -/* 900288 80240C18 00000000 */ nop -.L80240C1C: -/* 90028C 80240C1C 3C028024 */ lui $v0, %hi(D_80241FE0_901650) -/* 900290 80240C20 24421FE0 */ addiu $v0, $v0, %lo(D_80241FE0_901650) -/* 900294 80240C24 00641821 */ addu $v1, $v1, $a0 -/* 900298 80240C28 00032080 */ sll $a0, $v1, 2 -/* 90029C 80240C2C 00822021 */ addu $a0, $a0, $v0 -/* 9002A0 80240C30 24630001 */ addiu $v1, $v1, 1 -/* 9002A4 80240C34 00031880 */ sll $v1, $v1, 2 -/* 9002A8 80240C38 00621821 */ addu $v1, $v1, $v0 -/* 9002AC 80240C3C 8C840000 */ lw $a0, ($a0) -/* 9002B0 80240C40 8C650000 */ lw $a1, ($v1) -/* 9002B4 80240C44 0809033B */ j .L80240CEC -/* 9002B8 80240C48 3C068020 */ lui $a2, 0x8020 -.L80240C4C: -/* 9002BC 80240C4C 3C068020 */ lui $a2, 0x8020 -/* 9002C0 80240C50 3C028024 */ lui $v0, %hi(D_80241FE0_901650) -/* 9002C4 80240C54 24421FE0 */ addiu $v0, $v0, %lo(D_80241FE0_901650) -/* 9002C8 80240C58 00041840 */ sll $v1, $a0, 1 -/* 9002CC 80240C5C 00641821 */ addu $v1, $v1, $a0 -/* 9002D0 80240C60 00032080 */ sll $a0, $v1, 2 -/* 9002D4 80240C64 00822021 */ addu $a0, $a0, $v0 -/* 9002D8 80240C68 24630001 */ addiu $v1, $v1, 1 -/* 9002DC 80240C6C 00031880 */ sll $v1, $v1, 2 -/* 9002E0 80240C70 00621821 */ addu $v1, $v1, $v0 -/* 9002E4 80240C74 8C840000 */ lw $a0, ($a0) -/* 9002E8 80240C78 8C650000 */ lw $a1, ($v1) -/* 9002EC 80240C7C 0809033B */ j .L80240CEC -/* 9002F0 80240C80 34C64000 */ ori $a2, $a2, 0x4000 -.L80240C84: -/* 9002F4 80240C84 3C068020 */ lui $a2, 0x8020 -/* 9002F8 80240C88 3C028024 */ lui $v0, %hi(D_80241FE0_901650) -/* 9002FC 80240C8C 24421FE0 */ addiu $v0, $v0, %lo(D_80241FE0_901650) -/* 900300 80240C90 00041840 */ sll $v1, $a0, 1 -/* 900304 80240C94 00641821 */ addu $v1, $v1, $a0 -/* 900308 80240C98 00032080 */ sll $a0, $v1, 2 -/* 90030C 80240C9C 00822021 */ addu $a0, $a0, $v0 -/* 900310 80240CA0 24630001 */ addiu $v1, $v1, 1 -/* 900314 80240CA4 00031880 */ sll $v1, $v1, 2 -/* 900318 80240CA8 00621821 */ addu $v1, $v1, $v0 -/* 90031C 80240CAC 8C840000 */ lw $a0, ($a0) -/* 900320 80240CB0 8C650000 */ lw $a1, ($v1) -/* 900324 80240CB4 0809033B */ j .L80240CEC -/* 900328 80240CB8 34C67000 */ ori $a2, $a2, 0x7000 -.L80240CBC: -/* 90032C 80240CBC 3C028024 */ lui $v0, %hi(D_80241FE0_901650) -/* 900330 80240CC0 24421FE0 */ addiu $v0, $v0, %lo(D_80241FE0_901650) -/* 900334 80240CC4 00041840 */ sll $v1, $a0, 1 -/* 900338 80240CC8 00641821 */ addu $v1, $v1, $a0 -/* 90033C 80240CCC 00032080 */ sll $a0, $v1, 2 -/* 900340 80240CD0 00822021 */ addu $a0, $a0, $v0 -/* 900344 80240CD4 24630001 */ addiu $v1, $v1, 1 -/* 900348 80240CD8 00031880 */ sll $v1, $v1, 2 -/* 90034C 80240CDC 00621821 */ addu $v1, $v1, $v0 -/* 900350 80240CE0 8C840000 */ lw $a0, ($a0) -/* 900354 80240CE4 8C650000 */ lw $a1, ($v1) -/* 900358 80240CE8 34C6A000 */ ori $a2, $a2, 0xa000 -.L80240CEC: -/* 90035C 80240CEC 0C00A5CF */ jal dma_copy -/* 900360 80240CF0 00000000 */ nop -.L80240CF4: -/* 900364 80240CF4 8FBF0018 */ lw $ra, 0x18($sp) -/* 900368 80240CF8 8FB10014 */ lw $s1, 0x14($sp) -/* 90036C 80240CFC 8FB00010 */ lw $s0, 0x10($sp) -/* 900370 80240D00 24020002 */ addiu $v0, $zero, 2 -/* 900374 80240D04 03E00008 */ jr $ra -/* 900378 80240D08 27BD0020 */ addiu $sp, $sp, 0x20 -/* 90037C 80240D0C 00000000 */ nop diff --git a/ver/us/symbol_addrs.txt b/ver/us/symbol_addrs.txt index a30337cab7..c7c2a8b475 100644 --- a/ver/us/symbol_addrs.txt +++ b/ver/us/symbol_addrs.txt @@ -16423,18 +16423,18 @@ func_80240000_8FF670 = 0x80240000; // type:func rom:0x8FF670 func_80240010_8FF680 = 0x80240010; // type:func rom:0x8FF680 func_802401E0_8FF850 = 0x802401E0; // type:func rom:0x8FF850 func_80240208_8FF878 = 0x80240208; // type:func rom:0x8FF878 -func_80240240_8FF8B0 = 0x80240240; // type:func rom:0x8FF8B0 -func_80240314_8FF984 = 0x80240314; // type:func rom:0x8FF984 -func_80240418_8FFA88 = 0x80240418; // type:func rom:0x8FFA88 -func_802404E4_8FFB54 = 0x802404E4; // type:func rom:0x8FFB54 -func_8024056C_8FFBDC = 0x8024056C; // type:func rom:0x8FFBDC -func_80240B00_900170 = 0x80240B00; // type:func rom:0x900170 -func_80240B3C_9001AC = 0x80240B3C; // type:func rom:0x9001AC -func_80240B4C_9001BC = 0x80240B4C; // type:func rom:0x9001BC -func_80240BA8_900218 = 0x80240BA8; // type:func rom:0x900218 +kmr_22_make_vine_interpolation = 0x80240240; // type:func rom:0x8FF8B0 +kmr_22_SetVineBonePos = 0x80240314; // type:func rom:0x8FF984 +kmr_22_SetVineBoneRot = 0x80240418; // type:func rom:0x8FFA88 +kmr_22_SetVineBoneScale = 0x802404E4; // type:func rom:0x8FFB54 +kmr_22_appendGfx_piranha_vines = 0x8024056C; // type:func rom:0x8FFBDC +kmr_22_worker_render_piranha_vines = 0x80240B00; // type:func rom:0x900170 +kmr_22_MarkVineInterpolationDirty = 0x80240B3C; // type:func rom:0x9001AC +kmr_22_CreateVineRenderer = 0x80240B4C; // type:func rom:0x9001BC +kmr_22_LoadAnimationFromTable = 0x80240BA8; // type:func rom:0x900218 D_80240DE0_900450 = 0x80240DE0; // type:data rom:0x900450 -D_80241F00_901570 = 0x80241F00; // type:data rom:0x901570 -D_80241FE0_901650 = 0x80241FE0; // type:data rom:0x901650 +kmr_22_lava_piranha_vine_gfx = 0x80241F00; // type:data rom:0x901570 +kmr_22_VineAnimationsDmaTable = 0x80241FE0; // type:data rom:0x901650 D_802483B0_907A20 = 0x802483B0; // type:data rom:0x907A20 kmr_23_map_init = 0x80240000; // type:func rom:0x907A30 kmr_23_func_80240010_907A40 = 0x80240010; // type:func rom:0x907A40 @@ -26390,7 +26390,7 @@ kzn_19_VineRenderState = 0x80248380; // type:data dead_kzn_19_D_80248388 = 0x80248388; // type:data D_802483C0 = 0x802483C0; // type:data D_802483C4 = 0x802483C4; // type:data -D_802483D0 = 0x802483D0; // type:data +kmr_22_VineRenderState = 0x802483D0; // type:data iwa_10_D_80248480 = 0x80248480; // type:data dead_kzn_19_LetterDelivery_SavedNpcAnim = 0x8024854C; // type:data kzn_19_LetterDelivery_SavedNpcAnim = 0x8024854C; // type:data diff --git a/ver/us/undefined_syms.txt b/ver/us/undefined_syms.txt index 1ba8781cfc..23335fa0e8 100644 --- a/ver/us/undefined_syms.txt +++ b/ver/us/undefined_syms.txt @@ -269,7 +269,7 @@ D_80247D00 = 0x80247D00; D_80247E68 = 0x80247E68; D_802483C0 = 0x802483C0; D_802483C4 = 0x802483C4; -D_802483D0 = 0x802483D0; +kmr_22_VineRenderState = 0x802483D0; iwa_10_D_80248480 = 0x80248480; D_80248600 = 0x80248600; D_80248624 = 0x80248624;