Attempt to decompile menuRenderModels

This commit is contained in:
Ryan Dwyer
2022-01-29 18:52:46 +10:00
parent b7550f19d9
commit 019c972924
20 changed files with 1172 additions and 1415 deletions
+2 -2
View File
@@ -143,7 +143,7 @@ void bheadUpdate(f32 arg0, f32 arg1)
}
{
struct objticksp476 sp80 = {NULL, 1, 3};
struct modelrenderdata sp80 = {NULL, 1, 3};
Mtxf sp40;
struct coord modelpos = {0, 0, 0};
bool somebool = model0001e2a8();
@@ -156,7 +156,7 @@ void bheadUpdate(f32 arg0, f32 arg1)
model0001b3bc(&g_Vars.currentplayer->model);
mtx4LoadIdentity(&sp40);
sp80.matrix = &sp40;
sp80.unk00 = &sp40;
sp80.unk10 = g_Vars.currentplayer->bondheadmatrices;
model0001cebc(&sp80, &g_Vars.currentplayer->model);
+6 -6
View File
@@ -6640,7 +6640,7 @@ glabel var7f1a87a8
// && (obj->hidden & OBJHFLAG_00000800) == 0
// && (obj->flags2 & OBJFLAG2_INVISIBLE) == 0) {
// Mtxf *sp104 = model0001a5cc(model->attachedtomodel, model->attachedtonode, 0);
// struct objticksp476 thing = {NULL, 1, 3};
// struct modelrenderdata thing = {NULL, 1, 3};
// u32 stack;
// Mtxf sp80;
// Mtxf sp40;
@@ -7027,7 +7027,7 @@ bool chrTickBeams(struct prop *prop)
*/
s32 chrTick(struct prop *prop)
{
struct objticksp476 sp210 = {0, 1, 3};
struct modelrenderdata sp210 = {0, 1, 3};
struct chrdata *chr = prop->chr;
struct model *model = chr->model;
bool onscreen;
@@ -7347,7 +7347,7 @@ s32 chrTick(struct prop *prop)
mtx4LoadTranslation(&sp190, &sp1a8);
mtx4MultMtx4InPlace(currentPlayerGetMatrix1740(), &sp1a8);
sp210.matrix = &sp1a8;
sp210.unk00 = &sp1a8;
} else if (prop->type == PROPTYPE_PLAYER) {
u8 stack[0x14];
f32 sp130;
@@ -7364,12 +7364,12 @@ s32 chrTick(struct prop *prop)
mtx4LoadTranslation(&sp17c, &sp1a8);
mtx4MultMtx4InPlace(currentPlayerGetMatrix1740(), &sp1a8);
sp210.matrix = &sp1a8;
sp210.unk00 = &sp1a8;
} else {
sp210.matrix = currentPlayerGetMatrix1740();
sp210.unk00 = currentPlayerGetMatrix1740();
}
} else {
sp210.matrix = currentPlayerGetMatrix1740();
sp210.unk00 = currentPlayerGetMatrix1740();
}
sp210.unk10 = gfxAllocate(model->filedata->nummatrices * sizeof(Mtxf));
+12 -12
View File
@@ -5213,7 +5213,7 @@ glabel var7f1b5948
/* f13be0c: ad2034a4 */ sw $zero,0x34a4($t1)
/* f13be10: 8ce50000 */ lw $a1,0x0($a3)
/* f13be14: ac22fc3c */ sw $v0,-0x3c4($at)
/* f13be18: 0fc3d001 */ jal menuRenderHudPiece
/* f13be18: 0fc3d001 */ jal menuRenderModels
/* f13be1c: 24a52ef0 */ addiu $a1,$a1,0x2ef0
/* f13be20: 3c0e0102 */ lui $t6,0x102
/* f13be24: 35ce0040 */ ori $t6,$t6,0x40
@@ -5522,7 +5522,7 @@ glabel var7f1b5948
/* f13b2a8: ad2034a4 */ sw $zero,0x34a4($t1)
/* f13b2ac: 8ce50000 */ lw $a1,0x0($a3)
/* f13b2b0: ac22f6dc */ sw $v0,%lo(var8007f6dc)($at)
/* f13b2b4: 0fc3ce2c */ jal menuRenderHudPiece
/* f13b2b4: 0fc3ce2c */ jal menuRenderModels
/* f13b2b8: 24a52ef0 */ addiu $a1,$a1,0x2ef0
/* f13b2bc: 3c0e0102 */ lui $t6,0x102
/* f13b2c0: 35ce0040 */ ori $t6,$t6,0x40
@@ -5831,7 +5831,7 @@ glabel var7f1b5948
/* f135da8: ad2034a4 */ sw $zero,0x34a4($t1)
/* f135dac: 8ce50000 */ lw $a1,0x0($a3)
/* f135db0: ac221f30 */ sw $v0,0x1f30($at)
/* f135db4: 0fc3c0fd */ jal menuRenderHudPiece
/* f135db4: 0fc3c0fd */ jal menuRenderModels
/* f135db8: 24a52ef0 */ addiu $a1,$a1,0x2ef0
/* f135dbc: 3c0e0102 */ lui $t6,0x102
/* f135dc0: 35ce0040 */ ori $t6,$t6,0x40
@@ -6023,7 +6023,7 @@ glabel var7f1b5948
// g_CreditsData->unk34a1 |= 0x02;
// g_CreditsData->unk34a4 = 0;
//
// gdl = menuRenderHudPiece(gdl, &g_CreditsData->unk2ef0, 4);
// gdl = menuRenderModels(gdl, &g_CreditsData->unk2ef0, 4);
//
// gSPMatrix(gdl++, osVirtualToPhysical(matrix), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
//
@@ -6112,17 +6112,17 @@ void creditsInit(void)
creditsInitSlides();
func0f0f8bb4(&g_CreditsData->unk2ef0, 0x25800, 1);
g_CreditsData->unk3470 = 0;
g_CreditsData->unk2ef0.unk580 = 0;
func0f0f372c(&g_CreditsData->unk2ef0, 0, 0, 0, 0, 0, 0, 1, 5);
g_CreditsData->unk342c = 90;
g_CreditsData->unk3400 = 8.2;
g_CreditsData->unk3404 = -4.1;
g_CreditsData->unk340c = 0.00393;
g_CreditsData->unk343c = 0;
g_CreditsData->unk3414 = g_CreditsData->unk343c;
g_CreditsData->unk3468 = 60;
g_CreditsData->unk2ef0.unk53c = 90;
g_CreditsData->unk2ef0.unk510 = 8.2;
g_CreditsData->unk2ef0.unk514 = -4.1;
g_CreditsData->unk2ef0.unk51c = 0.00393;
g_CreditsData->unk2ef0.unk54c = 0;
g_CreditsData->unk2ef0.unk524 = g_CreditsData->unk2ef0.unk54c;
g_CreditsData->unk2ef0.unk578 = 60;
g_CreditsUsingAltTitle = g_CreditsAltTitleRequested;
+4 -4
View File
@@ -412,16 +412,16 @@ glabel func0f10d730
void func0f10d770(void)
{
func0f0f8bb4(&g_Menus[0].unk840, bgunCalculateGunMemCapacity() - func0f0e4fe0(), 0);
g_Menus[0].mpconfigbuffer = bgunGetGunMem() + func0f0e4fe0();
g_Menus[0].unk840.unk004 = bgunGetGunMem() + func0f0e4fe0();
func0f0f8bb4(&g_Menus[1].unk840, bgunCalculateGunMemCapacity() - func0f0e4fe0(), 0);
g_Menus[1].mpconfigbuffer = bgunGetGunMem() + func0f0e4fe0();
g_Menus[1].unk840.unk004 = bgunGetGunMem() + func0f0e4fe0();
func0f0f8bb4(&g_Menus[2].unk840, bgunCalculateGunMemCapacity() - func0f0e4fe0(), 0);
g_Menus[2].mpconfigbuffer = bgunGetGunMem() + func0f0e4fe0();
g_Menus[2].unk840.unk004 = bgunGetGunMem() + func0f0e4fe0();
func0f0f8bb4(&g_Menus[3].unk840, bgunCalculateGunMemCapacity() - func0f0e4fe0(), 0);
g_Menus[3].mpconfigbuffer = bgunGetGunMem() + func0f0e4fe0();
g_Menus[3].unk840.unk004 = bgunGetGunMem() + func0f0e4fe0();
}
#if VERSION >= VERSION_NTSC_1_0
+2 -2
View File
@@ -96,14 +96,14 @@ void currentPlayerInitAnimation(void)
}
{
struct objticksp476 sp88 = {NULL, 1, 3};
struct modelrenderdata sp88 = {NULL, 1, 3};
Mtxf sp48;
modelSetAnimation(&g_Vars.currentplayer->model, 1, 0, 0, 0.5f, 0);
model0001b3bc(&g_Vars.currentplayer->model);
mtx4LoadIdentity(&sp48);
sp88.matrix = &sp48;
sp88.unk00 = &sp48;
sp88.unk10 = g_Vars.currentplayer->bondheadmatrices;
model0001cebc(&sp88, &g_Vars.currentplayer->model);
+2 -2
View File
@@ -695,9 +695,9 @@ void menuTick(void)
if (g_Vars.currentplayer->gunctrl.gunmemowner == 1 && g_Vars.stagenum != STAGE_CITRAINING) {
g_MenuData.unk5d5_01 = true;
if (g_Menus[0].unk844) {
if (g_Menus[0].unk840.unk004) {
bgun0f09df50();
g_Menus[0].unk844 = 0;
g_Menus[0].unk840.unk004 = NULL;
}
}
}
+3 -3
View File
@@ -873,12 +873,12 @@ Mtxf *currentPlayerGetUnk1768(void)
return g_Vars.currentplayer->unk1768;
}
void currentPlayerSetUnk175c(void *value)
void currentPlayerSetUnk175c(Mtxf *mtx)
{
g_Vars.currentplayer->unk175c = value;
g_Vars.currentplayer->unk175c = mtx;
}
void *currentPlayerGetUnk175c(void)
Mtxf *currentPlayerGetUnk175c(void)
{
return g_Vars.currentplayer->unk175c;
}
+635 -70
View File
@@ -10,6 +10,7 @@
#include "game/game_0b3350.h"
#include "game/game_0b4950.h"
#include "game/game_0b69d0.h"
#include "game/game_1a7560.h"
#include "game/savebuffer.h"
#include "game/game_0e0770.h"
#include "game/menu/items.h"
@@ -27,6 +28,7 @@
#include "game/training/training.h"
#include "game/game_1a78b0.h"
#include "game/gamefile.h"
#include "game/gfxmemory.h"
#include "game/lang.h"
#include "game/mplayer/mplayer.h"
#include "game/pak/pak.h"
@@ -36,6 +38,7 @@
#include "lib/joy.h"
#include "lib/vi.h"
#include "lib/main.h"
#include "lib/model.h"
#include "lib/snd.h"
#include "lib/memp.h"
#include "lib/rng.h"
@@ -65,40 +68,7 @@ s32 g_MenuScissorX1;
s32 g_MenuScissorX2;
s32 g_MenuScissorY1;
s32 g_MenuScissorY2;
u32 var800a2048;
u32 var800a204c;
u32 var800a2050;
u32 var800a2054;
u32 var800a2058;
u32 var800a205c;
u32 var800a2060;
u32 var800a2064;
u32 var800a2068;
u32 var800a206c;
u32 var800a2070;
u32 var800a2074;
u32 var800a2078;
u32 var800a207c;
u32 var800a2080;
u32 var800a2084;
u32 var800a2088;
u32 var800a208c;
u32 var800a2090;
u32 var800a2094;
u32 var800a2098;
u32 var800a209c;
u32 var800a20a0;
u32 var800a20a4;
u32 var800a20a8;
u32 var800a20ac;
u32 var800a20b0;
u32 var800a20b4;
u32 var800a20b8;
u32 var800a20bc;
u32 var800a20c0;
u32 var800a20c4;
u32 var800a20c8;
u32 var800a20cc;
Vp var800a2048[8];
#if VERSION >= VERSION_NTSC_1_0
struct menudialogdef g_PakCannotReadGameBoyMenuDialog;
@@ -3216,12 +3186,11 @@ u32 var80073b6cnb[3] = {0};
#endif
u32 var800714c0 = 0x0000000a;
u32 var800714c4 = 0x0000012c;
#if VERSION >= VERSION_PAL_FINAL
GLOBAL_ASM(
glabel menuRenderHudPiece
glabel menuRenderModels
.late_rodata
glabel var7f1b3c1cpf
.word 0x40f33333
@@ -4827,7 +4796,7 @@ glabel var7f1b3c40pf
);
#elif VERSION >= VERSION_NTSC_1_0
GLOBAL_ASM(
glabel menuRenderHudPiece
glabel menuRenderModels
.late_rodata
glabel var7f1b292c
.word 0x40f33333
@@ -6436,7 +6405,7 @@ glabel var7f1b2948
);
#else
GLOBAL_ASM(
glabel menuRenderHudPiece
glabel menuRenderModels
.late_rodata
glabel var7f1b292c
.word 0x40f33333
@@ -8070,6 +8039,602 @@ glabel var7f1b2948
);
#endif
/**
* Render the hudpiece as well as any models within dialogs.
*/
// Mismatch: Not functionally identical (hudpiece/chrbios/vehicles do not render).
// Revisit when more is known about the menu840 struct.
//Gfx *menuRenderModels(Gfx *gdl, struct menu840 *thing, s32 arg2)
//{
// f32 sp430;
// f32 sp42c;
// f32 sp428;
// f32 sp424;
// s32 bodyfilelen; // 420
// s32 sp410;
// s32 bodyfilelen2; // 40c
// u16 bodyfilenum; // 408
// s32 bodynum; // 404
// s32 headnum; // 400
// struct modelrenderdata renderdata; // 3b8
// Mtxf *sp3b4;
// struct coord sp398;
// f32 sp390[2];
// Mtxf sp350;
// Mtxf sp310;
// f32 sp30c;
// s32 sp308;
// struct coord sp2fc;
// f32 sp2f8;
// s32 sp2f4;
// f32 sp2d0;
// struct coord sp2bc;
// struct coord sp2ac;
// f32 sp29c;
// struct coord sp290;
// Mtxf sp244;
// Mtxf sp204;
// Mtxf sp1c4;
// Mtxf sp184;
// f32 aspect; // 17c
// f32 sp178;
// s32 sp160;
// Mtxf sp120;
// Mtxf spe0;
// struct coord spd0;
// f32 spc8[2];
// Mtxf sp70;
// s32 headfilenum;
// s32 i;
// s32 j;
// s32 totalfilelen;
//
// if (g_Vars.stagenum != STAGE_CITRAINING && g_Vars.stagenum != STAGE_CREDITS) {
// if (g_MenuData.unk5d5_01 && arg2 != 1 && arg2 < 3) {
// return gdl;
// }
//
// if (thing->unk004 == NULL) {
// if (bgun0f09e004(1)) {
// thing->unk004 = bgunGetGunMem();
// thing->unk008 = bgunCalculateGunMemCapacity();
// } else {
// return gdl;
// }
// }
// }
//
// if (thing->unk004 == NULL) {
// return gdl;
// }
//
// if (thing->unk00c != 0) {
// if (thing->unk010 == thing->unk00c) {
// thing->unk00c = 0;
// thing->unk000 = 0;
// } else {
// if (thing->unk010 == 0x4fac5ace) {
// mpClearCurrentChallenge();
// }
//
// if (thing->unk000 == 0) {
// thing->unk000 = 1;
// return gdl;
// }
//
// thing->unk000--;
//
// if (thing->unk000 == 0) {
// if ((thing->unk00c & 0xffff) == 0xffff || (thing->unk00c & 0x80000000)) {
// if (thing->unk00c & 0x80000000) {
// headnum = thing->unk00c & 0x3ff;
// bodynum = (thing->unk00c & 0xffc00) >> 10;
// } else {
// s32 mpheadnum = (thing->unk00c >> 16) & 0xff;
// s32 mpbodynum = (thing->unk00c >> 24) & 0xff;
// bodynum = mpGetBodyId(mpbodynum);
//
// if (mpheadnum < mpGetNumHeads2()) {
// headnum = mpGetHeadId(mpheadnum);
// } else {
// headnum = mpGetBeauHeadId(func0f14a9f8(mpheadnum - mpGetNumHeads2()));
// thing->unk5b0 = mpheadnum - mpGetNumHeads2();
// }
// }
//
// bodyfilenum = g_HeadsAndBodies[bodynum].filenum;
// totalfilelen = ALIGN64(fileGetInflatedLength(g_HeadsAndBodies[bodynum].filenum));
//
// if (g_HeadsAndBodies[bodynum].unk00_01) {
// headnum = -1;
// headfilenum = 0xffff;
// } else {
// headfilenum = g_HeadsAndBodies[headnum].filenum;
// totalfilelen += ALIGN64(fileGetInflatedLength(headfilenum));
// }
//
// totalfilelen += 0x4000;
//
// func0f172e70(&sp410, thing->unk004 + totalfilelen, thing->unk008 - totalfilelen);
//
// thing->headnum = headnum;
// thing->bodynum = bodynum;
// thing->bodymodeldef = func0f1a7794(bodyfilenum, thing->unk004, totalfilelen, &sp410);
// bodyfilelen2 = ALIGN64(fileGetSize(bodyfilenum));
// modelCalculateRwDataLen(thing->bodymodeldef);
//
// if (headnum < 0) {
// thing->headmodeldef = NULL;
// } else {
// thing->headmodeldef = func0f1a7794(headfilenum, thing->unk004 + bodyfilelen2, totalfilelen - bodyfilelen2, &sp410);
// fileGetSize(headfilenum);
// bodyCalculateHeadOffset(thing->headmodeldef, headnum, bodynum);
// modelCalculateRwDataLen(thing->headmodeldef);
// }
//
// modelInit(&thing->bodymodel, thing->bodymodeldef, &thing->unk110, true);
// animInit(&thing->bodyanim);
//
// thing->bodymodel.unk02 = 256;
// thing->bodymodel.anim = &thing->bodyanim;
//
// func0f02ce8c(bodynum, headnum, thing->bodymodeldef, thing->headmodeldef, false, &thing->bodymodel, false, 1);
// } else {
// totalfilelen = ALIGN64(fileGetInflatedLength(thing->unk00c)) + 0x4000;
//
// func0f172e70(&sp410, thing->unk004 + totalfilelen, thing->unk008 - totalfilelen);
//
// thing->headnum = -1;
// thing->bodynum = -1;
// thing->bodymodeldef = func0f1a7794(thing->unk00c, thing->unk004, totalfilelen, &sp410);
//
// fileGetSize(thing->unk00c);
// modelCalculateRwDataLen(thing->bodymodeldef);
// modelInit(&thing->bodymodel, thing->bodymodeldef, &thing->unk110, true);
// animInit(&thing->bodyanim);
//
// thing->bodymodel.unk02 = 256;
// thing->bodymodel.anim = &thing->bodyanim;
// }
//
// thing->unk010 = thing->unk00c;
// thing->unk05e = 0;
// thing->unk00c = 0;
// } else {
// return gdl;
// }
// }
// }
//
// if (thing->bodymodeldef != NULL) {
// struct modelrenderdata sp3b8 = {NULL, false, 3};
//
// if (arg2 < 3 && g_MenuData.unk5d5_03) {
// gdl = vi0000b280(gdl);
// gdl = vi0000b1d0(gdl);
//
// g_MenuData.unk5d5_03 = false;
//
// if (arg2 != 2) {
// gdl = menuApplyScissor(gdl);
// }
//
// gSPSetGeometryMode(gdl++, G_ZBUFFER);
// }
//
// gSPDisplayList(gdl++, var80061380);
// gSPDisplayList(gdl++, var800613a0);
//
// sp308 = 0;
//
// if (thing->unk554 > 0.0f) {
// sp2f4 = 1;
//
// if (thing->bodymodeldef->skel == &g_SkelChr) {
// struct modelnode *node = modelGetPart(thing->bodymodeldef, MODELPART_CHR_0006);
//
// if (node) {
// struct modelrodata_position *rodata = &node->rodata->position;
// f32 temp_f0 = func0f006bd0(thing->unk574 / 480.0f);
//
// sp2fc.x = 0.0f;
// sp2fc.y = 0.0f - (rodata->pos.y / 7.6f * (1.0f - temp_f0 * temp_f0));
// sp2fc.z = 0.0f;
//
// thing->unk554 = (1.0f - temp_f0) * 270.0f + 100.0f;
// sp2f4 = 0;
// sp2f8 = thing->unk554 / (rodata->pos.f[1] * 0.5f);
// sp308 = 1;
//
// modelFindBboxRodata(&thing->bodymodel);
// }
// }
//
// if (sp2f4 != 0) {
// struct modelrodata_bbox *bbox = modelFindBboxRodata(&thing->bodymodel);
//
// if (bbox) {
// sp2fc.x = -(bbox->xmax - ((bbox->xmax - bbox->xmin) * 0.5f));
// sp2fc.y = -(bbox->ymax - ((bbox->ymax - bbox->ymin) * 0.5f));
// sp2fc.z = -(bbox->zmax - ((bbox->zmax - bbox->zmin) * 0.5f));
// sp308 = 1;
// sp2f8 = thing->unk554 / ((bbox->ymax - bbox->ymin) * 0.5f);
// }
// }
// }
//
// mtx4LoadIdentity(&sp350);
//
// if (arg2 == 1) {
// if (IS8MB()) {
// s32 i;
// if (thing->unk538 != thing->unk510) {
// for (i = 0; i < g_Vars.diffframe60; i++) {
// thing->unk510 = (thing->unk538 * 0.002f) + (0.998f * thing->unk510);
// }
// }
//
// if (thing->unk53c != thing->unk514) {
// for (i = 0; i < g_Vars.diffframe60; i++) {
// thing->unk514 = (thing->unk53c * 0.002f) + (0.998f * thing->unk514);
// }
// }
//
// if (thing->unk540 != thing->unk518) {
// for (i = 0; i < g_Vars.diffframe60; i++) {
// thing->unk518 = (thing->unk540 * 0.002f) + (0.998f * thing->unk518);
// }
// }
//
// if (thing->unk544 != thing->unk51c) {
// for (i = 0; i < g_Vars.diffframe60; i++) {
// thing->unk51c = (thing->unk544 * 0.002f) + (0.998f * thing->unk51c);
// }
// }
//
// sp430 = thing->unk510;
//
// if (g_ViRes == VIRES_HI) {
// sp430 += sp430;
// }
//
// sp42c = thing->unk514;
// sp428 = thing->unk518;
// sp424 = thing->unk51c;
//
// sp398.x = thing->unk520 = thing->unk548;
// sp398.y = thing->unk524 = thing->unk54c;
// sp398.z = thing->unk528 = thing->unk550;
//
// mtx4LoadRotation(&sp398, &sp350);
// }
// } else {
// if (thing->unk5b1_05) {
// thing->unk564 += g_Vars.diffframe60f / 40.0f;
//
// if (thing->unk564 > 1.0f) {
// thing->unk5b1_05 = false;
// thing->unk510 = thing->unk538;
// thing->unk514 = thing->unk53c;
// thing->unk518 = thing->unk540;
// thing->unk51c = thing->unk544;
// } else {
// f32 sp2d0 = (-cosf(thing->unk564 * M_PI) * 0.5f) + 0.5f;
// f32 f12 = 1.0f - sp2d0;
//
// if (thing->unk568 & 2) {
// sp430 = (thing->unk510 * f12) + (sp2d0 * thing->unk538);
// sp42c = (thing->unk514 * f12) + (sp2d0 * thing->unk53c);
// sp428 = (thing->unk518 * f12) + (sp2d0 * thing->unk540);
// } else {
// sp430 = thing->unk510 = thing->unk538;
// sp42c = thing->unk514 = thing->unk53c;
// sp428 = thing->unk518 = thing->unk540;
// }
//
// if (thing->unk568 & 1) {
// sp424 = (thing->unk51c * f12) + (sp2d0 * thing->unk544);
// } else {
// sp424 = thing->unk51c = thing->unk544;
// }
//
// if (thing->unk568 & 4) {
// sp290.x = thing->unk520;
// sp290.y = thing->unk524;
// sp290.z = thing->unk528;
//
// func0f096ca0(&sp290, &sp2bc);
//
// sp290.x = thing->unk548;
// sp290.y = thing->unk54c;
// sp290.z = thing->unk550;
//
// func0f096ca0(&sp290, &sp2ac);
// func0f0972b8(&sp2bc, &sp2ac, sp2d0, &sp29c);
// func0f096ed4(&sp29c, &sp350);
// } else {
// sp398.x = thing->unk520 = thing->unk548;
// sp398.y = thing->unk524 = thing->unk54c;
// sp398.z = thing->unk528 = thing->unk550;
//
// mtx4LoadRotation(&sp398, &sp350);
// }
// }
// }
//
// if (!thing->unk5b1_05) {
// sp430 = thing->unk510 = thing->unk538;
// sp42c = thing->unk514 = thing->unk53c;
// sp428 = thing->unk518 = thing->unk540;
// sp424 = thing->unk51c = thing->unk544;
//
// thing->unk520 = thing->unk548;
// thing->unk524 = thing->unk54c;
// thing->unk528 = thing->unk550;
//
// sp398.x = thing->unk548;
// sp398.y = thing->unk54c;
// sp398.z = thing->unk550;
//
// mtx4LoadRotation(&sp398, &sp350);
// }
// }
//
// sp30c = -100.0f + sp428;
//
// if (arg2 == 1) {
// if (IS8MB()) {
// sp390[0] = thing->unk510 * g_ScaleX;
// sp390[1] = thing->unk514;
// }
// } else {
// sp390[0] = viGetViewLeft() + g_ScaleX * sp430 + 0.5f * viGetViewWidth();
// sp390[1] = viGetViewTop() + viGetViewHeight() * 0.5f + sp42c;
// }
//
// func0f0b4c3c(sp390, &sp398, 1.0f);
// mtx4LoadIdentity(&sp310);
//
// if (thing->partvisibility != NULL) {
// struct modelpartvisibility *ptr = thing->partvisibility;
//
// while (ptr->part != 255) {
// struct modelnode *node = modelGetPart(thing->bodymodeldef, ptr->part);
//
// if (node) {
// union modelrwdata *rwdata = modelGetNodeRwData(&thing->bodymodel, node);
//
// if (rwdata) {
// if (ptr->visible) {
// rwdata->toggle.visible = true;
// } else {
// rwdata->toggle.visible = false;
// }
// }
// }
//
// ptr++;
// }
// }
//
// if (arg2 == 3) {
// sp398.x = thing->unk510;
// sp398.y = thing->unk514;
// sp398.z = thing->unk518;
// } else {
// f32 mult = sp30c / sp398.z;
// sp398.x *= mult;
// sp398.y *= mult;
// sp398.z *= mult;
// }
//
//#if VERSION < VERSION_NTSC_1_0
// if (thing->unk010 < 0) {
// struct coord newpos = {0, 0, 0};
// struct coord oldpos;
//
// model0001b3bc(&thing->bodymodel);
//
// modelGetRootPosition(&thing->bodymodel, &oldpos);
//
// if (joyGetButtons(0, L_TRIG)) {
// modelSetRootPosition(&thing->bodymodel, &newpos);
// }
// }
//#endif
//
// mtx4LoadTranslation(&sp398, &sp310);
//
// if (sp308) {
// mtx00015f04(sp424 * sp2f8, &sp310);
// } else {
// mtx00015f04(sp424, &sp310);
// }
//
// if (sp308) {
// mtx4LoadTranslation(&sp2fc, &sp204);
// } else {
// sp398.x = thing->unk52c;
// sp398.y = thing->unk530;
// sp398.z = thing->unk534;
// mtx4LoadTranslation(&sp398, &sp204);
// }
//
// mtx4MultMtx4(&sp310, &sp350, &sp244);
//
// if (arg2 == 3) {
// func0f13ae04(&sp1c4);
// mtx4MultMtx4(&sp1c4, &sp244, &sp184);
// mtx4MultMtx4(&sp184, &sp204, &thing->unk014);
// } else {
// mtx4MultMtx4(&sp244, &sp204, &thing->unk014);
// }
//
// gdl = func0f0e2348(gdl);
//
// if (arg2 < 3) {
// if (arg2 != 0) {
// gdl = func0f0d49c8(gdl);
// gSPMatrix(gdl++, osVirtualToPhysical(currentPlayerGetUnk1750()), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
// } else {
// static u32 znear = 10;
// static u32 zfar = 300;
//
// aspect = (f32) (g_MenuScissorX2 - g_MenuScissorX1) / (f32) (g_MenuScissorY2 - g_MenuScissorY1);
//
// mainOverrideVariable("mzn", &znear);
// mainOverrideVariable("mzf", &zfar);
//
// gdl = func0f0d49c8(gdl);
//
// viSetViewPosition(g_MenuScissorX1 * g_ScaleX, g_MenuScissorY1);
// viSetFovAspectAndSize(g_Vars.currentplayer->fovy, aspect, (g_MenuScissorX2 - g_MenuScissorX1) * g_ScaleX, g_MenuScissorY2 - g_MenuScissorY1);
//
// gdl = vi0000af00(gdl, &var800a2048[g_MpPlayerNum]);
// gdl = vi0000aca4(gdl, znear, zfar);
// }
// }
//
// sp3b4 = gfxAllocate(thing->bodymodeldef->nummatrices * sizeof(Mtxf));
//
// for (i = 0; i < thing->bodymodeldef->nummatrices; i++) {
// mtx4LoadIdentity(&sp3b4[i]);
// }
//
// thing->bodymodel.matrices = sp3b4;
//
// if (thing->unk05c && thing->unk05c != thing->unk05e) {
// if (thing->unk5b1_04) {
// modelSetAnimation(&thing->bodymodel, thing->unk05c, false, 0, -0.5f, 0.0f);
// model0001e018(&thing->bodymodel, modelGetNumAnimFrames(&thing->bodymodel));
// } else {
// modelSetAnimation(&thing->bodymodel, thing->unk05c, false, 0, 0.5f, 0.0f);
// }
//
// thing->unk05e = thing->unk05c;
// }
//
// thing->unk05c = 0;
//
// if (thing->unk05e != 0) {
// model0001ee18(&thing->bodymodel, g_Vars.diffframe240, true);
//
// if (thing->unk5b1_04) {
// sp178 = modelGetNumAnimFrames(&thing->bodymodel) - modelGetCurAnimFrame(&thing->bodymodel);
// } else {
// sp178 = modelGetCurAnimFrame(&thing->bodymodel);
// }
//
// if (sp178 >= modelGetNumAnimFrames(&thing->bodymodel) - 1) {
// thing->unk05e = 0;
// }
// }
//
// mtx4Copy(&thing->unk014, sp3b4);
//
// renderdata.unk00 = &thing->unk014;
// renderdata.unk10 = thing->bodymodel.matrices;
//
// model0001cebc(&renderdata, &thing->bodymodel);
//
// if (thing->bodymodeldef->skel == &g_SkelHudPiece) {
// struct modelnode *node = modelGetPart(thing->bodymodeldef, MODELPART_HUDPIECE_0000);
//
// if (node) {
// struct modelrodata_gundl *rodata = &node->rodata->gundl;
// s32 i;
//
// for (i = 0; i < rodata->unk10; i++) {
// rodata->unk0c[i].unk08 -= g_Vars.diffframe60 * 100;
//
// if (rodata->unk0c[i].unk08 < -0x6000) {
// for (j = 0; j < rodata->unk10; j++) {
// rodata->unk0c[j].unk08 += 0x2000;
// }
// }
// }
// }
//
// node = modelGetPart(thing->bodymodeldef, MODELPART_HUDPIECE_0002);
//
// if (node) {
// sp160 = model0001a524(node, 0);
// mtx4LoadIdentity(&sp120);
// mtx4LoadXRotation(func0f006b54(4), &sp120);
// mtx4MultMtx4(&sp3b4[sp160], &sp120, &spe0);
// mtx4Copy(&spe0, &sp3b4[sp160]);
// }
//
// node = modelGetPart(thing->bodymodeldef, MODELPART_HUDPIECE_0001);
//
// if (node) {
// if (g_MenuData.root == MENUROOT_MAINMENU
// || g_MenuData.root == MENUROOT_FILEMGR
// || g_MenuData.root == MENUROOT_MPSETUP
// || g_MenuData.root == MENUROOT_TRAINING) {
// Mtxf *mtx = &sp3b4[model0001a524(node, 0)];
//
// spd0.x = mtx->m[3][0];
// spd0.y = mtx->m[3][1];
// spd0.z = mtx->m[3][2];
//
// func0f0b4d04(&spd0, spc8);
// var8009de98 = ((s32)spc8[0] - viGetWidth() / 2) / g_ScaleX;
// var8009de9c = (s32)spc8[1] - viGetHeight() / 2;
// }
// }
// }
//
// gSPNumLights(gdl++, 1);
// gSPLight(gdl++, &var80071470, 1);
// gSPLight(gdl++, &var80071468, 2);
// gSPLookAtX(gdl++, currentPlayerGetUnk175c()->m[0]);
// gSPLookAtY(gdl++, currentPlayerGetUnk175c()->m[1]);
//
// renderdata.unk30 = 1;
// renderdata.envcolour = 0xffffffff;
// renderdata.fogcolour = 0xffffffff;
//
// gSPSetGeometryMode(gdl++, G_ZBUFFER);
//
// renderdata.zbufferenabled = true;
//
// renderdata.gdl = gdl;
// modelRender(&renderdata, &thing->bodymodel);
// gdl = renderdata.gdl;
//
// mtx00016760();
//
// for (i = 0; i < thing->bodymodeldef->nummatrices; i++) {
// mtx4Copy(&thing->bodymodel.matrices[i], &sp70);
// mtx00016054(&sp70, &thing->bodymodel.matrices[i]);
// }
//
// mtx00016784();
//
// if (arg2 < 3) {
// gdl = func0f0d479c(gdl);
// }
//
// gDPPipeSync(gdl++);
// gDPSetCycleType(gdl++, G_CYC_1CYCLE);
// gDPSetAlphaCompare(gdl++, G_AC_NONE);
// gDPSetCombineMode(gdl++, G_CC_MODULATEI, G_CC_MODULATEI);
// gSPClearGeometryMode(gdl++, G_CULL_BOTH);
// gDPSetTextureFilter(gdl++, G_TF_BILERP);
//
// func0f0b39c0(&gdl, NULL, 2, 0, 2, 1, NULL);
//
// gDPSetRenderMode(gdl++, G_RM_XLU_SURF, G_RM_XLU_SURF2);
//
// func0f0b39c0(&gdl, NULL, 2, 0, 2, 1, NULL);
//
// gSPDisplayList(gdl++, var800613a0);
// }
//
// return gdl;
//}
GLOBAL_ASM(
glabel func0f0f5004
/* f0f5004: 27bdffa0 */ addiu $sp,$sp,-96
@@ -8350,7 +8915,7 @@ glabel dialogRender
/* f0f5558: 256c0840 */ addiu $t4,$t3,0x840
/* f0f555c: 018d2821 */ addu $a1,$t4,$t5
/* f0f5560: 8fa401e8 */ lw $a0,0x1e8($sp)
/* f0f5564: 0fc3ce2c */ jal menuRenderHudPiece
/* f0f5564: 0fc3ce2c */ jal menuRenderModels
/* f0f5568: 24060002 */ addiu $a2,$zero,0x2
/* f0f556c: 24590008 */ addiu $t9,$v0,0x8
/* f0f5570: afb901e8 */ sw $t9,0x1e8($sp)
@@ -9358,7 +9923,7 @@ glabel dialogRender
/* f0f6430: 272f0840 */ addiu $t7,$t9,0x840
/* f0f6434: 24840008 */ addiu $a0,$a0,0x8
/* f0f6438: 01ed2821 */ addu $a1,$t7,$t5
/* f0f643c: 0fc3ce2c */ jal menuRenderHudPiece
/* f0f643c: 0fc3ce2c */ jal menuRenderModels
/* f0f6440: 00003025 */ or $a2,$zero,$zero
/* f0f6444: 244c0008 */ addiu $t4,$v0,0x8
/* f0f6448: afac01e8 */ sw $t4,0x1e8($sp)
@@ -10579,7 +11144,7 @@ glabel dialogRender
/* f0f1f3c: 25f8079c */ addiu $t8,$t7,0x79c
/* f0f1f40: 03192821 */ addu $a1,$t8,$t9
/* f0f1f44: 8fa401e8 */ lw $a0,0x1e8($sp)
/* f0f1f48: 0fc3c0fd */ jal menuRenderHudPiece
/* f0f1f48: 0fc3c0fd */ jal menuRenderModels
/* f0f1f4c: 24060002 */ addiu $a2,$zero,0x2
/* f0f1f50: 244e0008 */ addiu $t6,$v0,0x8
/* f0f1f54: afae01e8 */ sw $t6,0x1e8($sp)
@@ -11572,7 +12137,7 @@ glabel dialogRender
/* f0f2de4: 25d9079c */ addiu $t9,$t6,0x79c
/* f0f2de8: 24840008 */ addiu $a0,$a0,0x8
/* f0f2dec: 03382821 */ addu $a1,$t9,$t8
/* f0f2df0: 0fc3c0fd */ jal menuRenderHudPiece
/* f0f2df0: 0fc3c0fd */ jal menuRenderModels
/* f0f2df4: 00003025 */ or $a2,$zero,$zero
/* f0f2df8: 244f0008 */ addiu $t7,$v0,0x8
/* f0f2dfc: afaf01e8 */ sw $t7,0x1e8($sp)
@@ -13086,7 +13651,7 @@ void menuPushRootDialog(struct menudialogdef *dialogdef, s32 root)
|| root == MENUROOT_MPSETUP
|| root == MENUROOT_TRAINING
|| root == MENUROOT_FILEMGR) {
if (IS8MB() && (g_MenuData.unk5d4 == 0 || g_MenuData.unk5cd_04)) {
if (IS8MB() && (g_MenuData.unk5d4 == 0 || g_MenuData.unk01c.unk5b1_04)) {
if (!g_MenuData.unk5d5_04) {
g_MenuData.unk5d5_05 = true;
}
@@ -13359,10 +13924,10 @@ void menuInit(void)
}
for (i = 0; i < 4; i++) {
g_Menus[i].unk844 = 0;
g_Menus[i].unk840.unk004 = NULL;
}
g_MenuData.unk020 = 0;
g_MenuData.unk01c.unk004 = NULL;
if (g_Vars.stagenum == STAGE_CITRAINING) {
g_MissionConfig.iscoop = false;
@@ -13389,17 +13954,17 @@ void menuInit(void)
func0f0f8bb4(&g_MenuData.unk01c, 0xc800, 1);
}
g_MenuData.unk028 = 0x259;
g_MenuData.unk540 = g_MenuData.unk568 = -M_PI;
g_MenuData.unk53c = g_MenuData.unk564 = 0;
g_MenuData.unk544 = g_MenuData.unk56c = 0;
g_MenuData.unk52c = g_MenuData.hudpiecex = -205.5f;
g_MenuData.unk530 = g_MenuData.hudpiecey = 244.7f;
g_MenuData.unk534 = g_MenuData.unk55c = 68.3f;
g_MenuData.unk538 = g_MenuData.unk560 = 0.12209f;
g_MenuData.unk5cd_01 = false;
g_MenuData.unk590 = 0;
g_MenuData.unk59c = 0;
g_MenuData.unk01c.unk00c = 0x259;
g_MenuData.unk01c.unk524 = g_MenuData.unk01c.unk54c = -M_PI;
g_MenuData.unk01c.unk520 = g_MenuData.unk01c.unk548 = 0;
g_MenuData.unk01c.unk528 = g_MenuData.unk01c.unk550 = 0;
g_MenuData.unk01c.unk510 = g_MenuData.unk01c.unk538 = -205.5f;
g_MenuData.unk01c.unk514 = g_MenuData.unk01c.unk53c = 244.7f;
g_MenuData.unk01c.unk518 = g_MenuData.unk01c.unk540 = 68.3f;
g_MenuData.unk01c.unk51c = g_MenuData.unk01c.unk544 = 0.12209f;
g_MenuData.unk01c.unk5b1_01 = false;
g_MenuData.unk01c.unk574 = 0;
g_MenuData.unk01c.unk580 = 0;
}
g_MenuData.unk5d4 = 0;
@@ -17891,10 +18456,10 @@ Gfx *menuRender(Gfx *gdl)
// Calculate hudpiece things then render it
if (g_MenuData.unk5d5_05) {
g_MenuData.unk07a = 0;
g_MenuData.unk078 = 0x40d;
g_MenuData.unk59c = 0;
g_MenuData.unk5cd_04 = false;
g_MenuData.unk01c.unk05e = 0;
g_MenuData.unk01c.unk05c = 0x40d;
g_MenuData.unk01c.unk580 = 0;
g_MenuData.unk01c.unk5b1_04 = false;
g_MenuData.unk5d4 = 1;
g_MenuData.unk5d5_05 = false;
}
@@ -17907,8 +18472,8 @@ Gfx *menuRender(Gfx *gdl)
// Everyone 1 in 100 frames on average, calculate a new X/Y for the hudpiece
// Note: unintentional 64-bit float comparison done here
if (random() * (1.0f / U32_MAX) < 0.01) {
g_MenuData.hudpiecex = random() * (1.0f / U32_MAX) * 80.0f + -205.5f - 40.0f;
g_MenuData.hudpiecey = random() * (1.0f / U32_MAX) * 80.0f + 244.7f - 40.0f;
g_MenuData.unk01c.unk538 = random() * (1.0f / U32_MAX) * 80.0f + -205.5f - 40.0f;
g_MenuData.unk01c.unk53c = random() * (1.0f / U32_MAX) * 80.0f + 244.7f - 40.0f;
}
var8009de98 = var8009de9c = 0;
@@ -17939,13 +18504,13 @@ Gfx *menuRender(Gfx *gdl)
}
if (removepiece) {
if (g_MenuData.unk59c == 0) {
g_MenuData.unk5cd_04 = true;
g_MenuData.unk07a = 0;
g_MenuData.unk078 = 0x40d;
g_MenuData.unk59c = 1;
} else if (g_MenuData.unk07a == 0) {
g_MenuData.unk59c = 0;
if (g_MenuData.unk01c.unk580 == 0) {
g_MenuData.unk01c.unk5b1_04 = true;
g_MenuData.unk01c.unk05e = 0;
g_MenuData.unk01c.unk05c = 0x40d;
g_MenuData.unk01c.unk580 = 1;
} else if (g_MenuData.unk01c.unk05e == 0) {
g_MenuData.unk01c.unk580 = 0;
g_MenuData.unk5d4 = 0;
}
}
@@ -17955,7 +18520,7 @@ Gfx *menuRender(Gfx *gdl)
if (usepiece) {
g_MenuData.unk5d5_03 = false;
gdl = menuRenderHudPiece(gdl, &g_MenuData.unk01c, 1);
gdl = menuRenderModels(gdl, &g_MenuData.unk01c, 1);
gSPClearGeometryMode(gdl++, G_ZBUFFER);
g_MenuData.unk5d5_03 = true;
+41 -42
View File
@@ -798,11 +798,11 @@ s32 menudialog00103608(s32 operation, struct menudialogdef *dialogdef, union han
{
switch (operation) {
case MENUOP_OPEN:
g_Menus[g_MpPlayerNum].unk850 = 0;
g_Menus[g_MpPlayerNum].unk840.unk010 = 0;
func0f00e980(g_MissionConfig.stagenum,
g_Menus[g_MpPlayerNum].unk844,
g_Menus[g_MpPlayerNum].unk848, &g_Briefing);
g_Menus[g_MpPlayerNum].unk840.unk004,
g_Menus[g_MpPlayerNum].unk840.unk008, &g_Briefing);
break;
case MENUOP_CLOSE:
langClearBank(g_Briefing.langbank);
@@ -4836,52 +4836,51 @@ void func0f105948(s32 weaponnum)
if (weaponHasFlag(weaponnum, WEAPONFLAG_HIDEMENUMODEL) == false && (u32)wantindex >= 0 && useindex >= 0) {
weapon = weaponFindById(weaponnum);
g_Menus[g_MpPlayerNum].unk840 = 8;
g_Menus[g_MpPlayerNum].unk850 = 0;
g_Menus[g_MpPlayerNum].unk84c = weaponGetModelNum(weaponnum);
g_Menus[g_MpPlayerNum].unkd78 = 0;
g_Menus[g_MpPlayerNum].unkd50 = 0;
g_Menus[g_MpPlayerNum].unkd7c = 0;
g_Menus[g_MpPlayerNum].unkd54 = 0;
g_Menus[g_MpPlayerNum].unkd80 = 0;
g_Menus[g_MpPlayerNum].unkd58 = 0;
g_Menus[g_MpPlayerNum].unkd90 = 0;
g_Menus[g_MpPlayerNum].unkd68 = 0;
g_Menus[g_MpPlayerNum].unkd6c = gunconfig[useindex][0];
g_Menus[g_MpPlayerNum].unkd70 = gunconfig[useindex][1];
g_Menus[g_MpPlayerNum].unkd74 = gunconfig[useindex][2];
g_Menus[g_MpPlayerNum].unkd88 = gunconfig[useindex][3];
g_Menus[g_MpPlayerNum].unkd60 = gunconfig[useindex][3]; // @bug? Wrong index?
g_Menus[g_MpPlayerNum].unk840.unk000 = 8;
g_Menus[g_MpPlayerNum].unk840.unk010 = 0;
g_Menus[g_MpPlayerNum].unk840.unk00c = weaponGetModelNum(weaponnum);
g_Menus[g_MpPlayerNum].unk840.unk538 = 0;
g_Menus[g_MpPlayerNum].unk840.unk510 = 0;
g_Menus[g_MpPlayerNum].unk840.unk53c = 0;
g_Menus[g_MpPlayerNum].unk840.unk514 = 0;
g_Menus[g_MpPlayerNum].unk840.unk540 = 0;
g_Menus[g_MpPlayerNum].unk840.unk518 = 0;
g_Menus[g_MpPlayerNum].unk840.unk550 = 0;
g_Menus[g_MpPlayerNum].unk840.unk528 = 0;
g_Menus[g_MpPlayerNum].unk840.unk52c = gunconfig[useindex][0];
g_Menus[g_MpPlayerNum].unk840.unk530 = gunconfig[useindex][1];
g_Menus[g_MpPlayerNum].unk840.unk534 = gunconfig[useindex][2];
g_Menus[g_MpPlayerNum].unk840.unk548 = gunconfig[useindex][3];
g_Menus[g_MpPlayerNum].unk840.unk520 = gunconfig[useindex][3]; // @bug? Wrong index?
func0f0f372c(&g_Menus[g_MpPlayerNum].unk840, 0, 0, 0, 0, 0, 0, gunconfig[useindex][4], 1);
g_Menus[g_MpPlayerNum].unkd5c = 0;
g_Menus[g_MpPlayerNum].partvisibility = weapon->partvisibility;
g_Menus[g_MpPlayerNum].unkd94 = -1;
g_Menus[g_MpPlayerNum].unk840.unk51c = 0;
g_Menus[g_MpPlayerNum].unk840.partvisibility = weapon->partvisibility;
g_Menus[g_MpPlayerNum].unk840.unk554 = -1;
// These indexes correspond to WEAPON_DISGUISE40 and WEAPON_DISGUISE41
if (wantindex == 0x3e || wantindex == 0x3f) {
if ((u32)wantindex == 0x3e) {
g_Menus[g_MpPlayerNum].unk84c = 0x0a01ffff;
g_Menus[g_MpPlayerNum].unk840.unk00c = 0x0a01ffff;
} else {
g_Menus[g_MpPlayerNum].unk84c = 0x0400ffff;
g_Menus[g_MpPlayerNum].unk840.unk00c = 0x0400ffff;
}
g_Menus[g_MpPlayerNum].partvisibility = NULL;
g_Menus[g_MpPlayerNum].unkdc0 = 0;
g_Menus[g_MpPlayerNum].unk840.partvisibility = NULL;
g_Menus[g_MpPlayerNum].unk840.unk580 = 0;
func0f0f372c(&g_Menus[g_MpPlayerNum].unk840, 0, 0, 0, 0, 0, 0, 1, 1);
g_Menus[g_MpPlayerNum].unkdb8 = PALDOWN(60);
g_Menus[g_MpPlayerNum].unkdb4 = PALDOWN(120);
g_Menus[g_MpPlayerNum].unkd8c = -0.2f;
g_Menus[g_MpPlayerNum].unkd64 = -0.2f;
g_Menus[g_MpPlayerNum].unk840.unk578 = PALDOWN(60);
g_Menus[g_MpPlayerNum].unk840.unk574 = PALDOWN(120);
g_Menus[g_MpPlayerNum].unk840.unk54c = -0.2f;
g_Menus[g_MpPlayerNum].unk840.unk524 = -0.2f;
}
} else {
g_Menus[g_MpPlayerNum].unk894 = 0;
g_Menus[g_MpPlayerNum].unk850 = 0;
g_Menus[g_MpPlayerNum].unk84c = 0;
g_Menus[g_MpPlayerNum].unk840.bodymodeldef = NULL;
g_Menus[g_MpPlayerNum].unk840.unk010 = 0;
g_Menus[g_MpPlayerNum].unk840.unk00c = 0;
}
}
@@ -4889,11 +4888,11 @@ s32 inventoryMenuDialog(s32 operation, struct menudialogdef *dialogdef, union ha
{
if (operation == MENUOP_TICK) {
if (g_Menus[g_MpPlayerNum].curdialog && g_Menus[g_MpPlayerNum].curdialog->definition == dialogdef) {
g_Menus[g_MpPlayerNum].unkdb4 -= g_Vars.diffframe60;
g_Menus[g_MpPlayerNum].unkd8c = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unkd64 = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unkd68 = 0;
g_Menus[g_MpPlayerNum].unkd90 = 0;
g_Menus[g_MpPlayerNum].unk840.unk574 -= g_Vars.diffframe60;
g_Menus[g_MpPlayerNum].unk840.unk54c = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unk840.unk524 = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unk840.unk528 = 0;
g_Menus[g_MpPlayerNum].unk840.unk550 = 0;
if (var80072d88 != g_InventoryWeapon) {
func0f105948(g_InventoryWeapon);
@@ -4901,9 +4900,9 @@ s32 inventoryMenuDialog(s32 operation, struct menudialogdef *dialogdef, union ha
}
if (g_InventoryWeapon == WEAPON_DISGUISE40 || g_InventoryWeapon == WEAPON_DISGUISE41) {
g_Menus[g_MpPlayerNum].unk89c = 0x6a;
g_Menus[g_MpPlayerNum].unkdb8 = PALDOWN(60);
g_Menus[g_MpPlayerNum].unkdb4 = PALDOWN(120);
g_Menus[g_MpPlayerNum].unk840.unk05c = ANIM_006A;
g_Menus[g_MpPlayerNum].unk840.unk578 = PALDOWN(60);
g_Menus[g_MpPlayerNum].unk840.unk574 = PALDOWN(120);
}
} else {
var80072d88 = 255;
+2 -2
View File
@@ -8875,8 +8875,8 @@ char *menuitemScrollableGetText(u32 type)
return mpconfigGetDescription(g_Menus[g_MpPlayerNum].training.mpconfig);
case DESCRIPTION_MPCHALLENGE:
if (!mpIsChallengeLoaded()) {
g_Menus[g_MpPlayerNum].unk850 = 0x4fac5ace;
mpLoadAndStoreCurrentChallenge(g_Menus[g_MpPlayerNum].mpconfigbuffer, g_Menus[g_MpPlayerNum].mpconfigbufferlen);
g_Menus[g_MpPlayerNum].unk840.unk010 = 0x4fac5ace;
mpLoadAndStoreCurrentChallenge(g_Menus[g_MpPlayerNum].unk840.unk004, g_Menus[g_MpPlayerNum].unk840.unk008);
}
return mpGetCurrentChallengeDescription();
case DESCRIPTION_CHRBIO: return ciGetChrBioDescription();
+55 -57
View File
@@ -534,28 +534,28 @@ s32 mpCharacterBodyMenuHandler(s32 operation, struct menuitem *item, union handl
data->carousel.value = mpGetNumBodies();
break;
case MENUOP_11:
g_Menus[g_MpPlayerNum].unk89c = 0x1fc;
g_Menus[g_MpPlayerNum].unk84c = mpbodynum << 16 | 0xffff | mpheadnum << 24;
g_Menus[g_MpPlayerNum].unkdb4 += g_Vars.diffframe60;
g_Menus[g_MpPlayerNum].unk840.unk05c = 0x1fc;
g_Menus[g_MpPlayerNum].unk840.unk00c = mpbodynum << 16 | 0xffff | mpheadnum << 24;
g_Menus[g_MpPlayerNum].unk840.unk574 += g_Vars.diffframe60;
if (g_Menus[g_MpPlayerNum].unkdb4 > PALDOWN(480)) {
g_Menus[g_MpPlayerNum].unkdb4 -= PALDOWN(480);
if (g_Menus[g_MpPlayerNum].unk840.unk574 > PALDOWN(480)) {
g_Menus[g_MpPlayerNum].unk840.unk574 -= PALDOWN(480);
}
if (g_Menus[g_MpPlayerNum].unkdb8 > 0) {
g_Menus[g_MpPlayerNum].unkdb8 -= g_Vars.diffframe60;
if (g_Menus[g_MpPlayerNum].unk840.unk578 > 0) {
g_Menus[g_MpPlayerNum].unk840.unk578 -= g_Vars.diffframe60;
} else {
#if VERSION >= VERSION_PAL_FINAL
f32 value = g_Menus[g_MpPlayerNum].unkd64 + 0.01f * g_Vars.diffframe60freal;
f32 value = g_Menus[g_MpPlayerNum].unk840.unk524 + 0.01f * g_Vars.diffframe60freal;
#else
f32 value = g_Menus[g_MpPlayerNum].unkd64 + 0.01f * g_Vars.diffframe60f;
f32 value = g_Menus[g_MpPlayerNum].unk840.unk524 + 0.01f * g_Vars.diffframe60f;
#endif
g_Menus[g_MpPlayerNum].unkd8c = value;
g_Menus[g_MpPlayerNum].unkd64 = value;
g_Menus[g_MpPlayerNum].unk840.unk54c = value;
g_Menus[g_MpPlayerNum].unk840.unk524 = value;
}
g_Menus[g_MpPlayerNum].partvisibility = NULL;
g_Menus[g_MpPlayerNum].unkd94 = 30;
g_Menus[g_MpPlayerNum].unk840.partvisibility = NULL;
g_Menus[g_MpPlayerNum].unk840.unk554 = 30;
break;
case MENUOP_21:
if (!mpIsFeatureUnlocked(mpGetBodyRequiredFeature(data->carousel.value))) {
@@ -564,7 +564,7 @@ s32 mpCharacterBodyMenuHandler(s32 operation, struct menuitem *item, union handl
break;
#if VERSION >= VERSION_NTSC_1_0
case MENUOP_FOCUS:
g_Menus[g_MpPlayerNum].unk840 = 3;
g_Menus[g_MpPlayerNum].unk840.unk000 = 3;
break;
#endif
case MENUOP_GETOPTIONVALUE:
@@ -572,26 +572,26 @@ s32 mpCharacterBodyMenuHandler(s32 operation, struct menuitem *item, union handl
break;
case MENUOP_SET:
case MENUOP_CHECKPREFOCUSED:
g_Menus[g_MpPlayerNum].unkdc0 = 0;
g_Menus[g_MpPlayerNum].unk840.unk580 = 0;
func0f0f372c(&g_Menus[g_MpPlayerNum].unk840, 0, 0, 0, 0, 0, 0, 1, 1);
g_Menus[g_MpPlayerNum].unkd50 = 8.2f;
g_Menus[g_MpPlayerNum].unkd54 = -4.1f;
g_Menus[g_MpPlayerNum].unkd7c = -4.1f;
g_Menus[g_MpPlayerNum].unk840.unk510 = 8.2f;
g_Menus[g_MpPlayerNum].unk840.unk514 = -4.1f;
g_Menus[g_MpPlayerNum].unk840.unk53c = -4.1f;
g_Menus[g_MpPlayerNum].unkd78 = 8.2f;
g_Menus[g_MpPlayerNum].unkd5c = 0.002f;
g_Menus[g_MpPlayerNum].unkd64 = -0.2f;
g_Menus[g_MpPlayerNum].unkd8c = -0.2f;
g_Menus[g_MpPlayerNum].unk840.unk538 = 8.2f;
g_Menus[g_MpPlayerNum].unk840.unk51c = 0.002f;
g_Menus[g_MpPlayerNum].unk840.unk524 = -0.2f;
g_Menus[g_MpPlayerNum].unk840.unk54c = -0.2f;
g_Menus[g_MpPlayerNum].unkdb8 = PALDOWN(60);
g_Menus[g_MpPlayerNum].unkdb4 = PALDOWN(120);
g_Menus[g_MpPlayerNum].unk840 = 8;
g_Menus[g_MpPlayerNum].unk840.unk578 = PALDOWN(60);
g_Menus[g_MpPlayerNum].unk840.unk574 = PALDOWN(120);
g_Menus[g_MpPlayerNum].unk840.unk000 = 8;
#if VERSION >= VERSION_NTSC_1_0
if (operation == MENUOP_CHECKPREFOCUSED) {
g_Menus[g_MpPlayerNum].unk840 = 16;
g_Menus[g_MpPlayerNum].unk840.unk000 = 16;
}
#endif
@@ -1272,30 +1272,30 @@ s32 mpCharacterHeadMenuHandler(s32 operation, struct menuitem *item, union handl
break;
case MENUOP_11:
#if VERSION >= VERSION_PAL_FINAL
diffframe = g_Menus[g_MpPlayerNum].unkd64 + 0.01f * g_Vars.diffframe60freal;
diffframe = g_Menus[g_MpPlayerNum].unk840.unk524 + 0.01f * g_Vars.diffframe60freal;
#else
diffframe = g_Menus[g_MpPlayerNum].unkd64 + 0.01f * g_Vars.diffframe60f;
diffframe = g_Menus[g_MpPlayerNum].unk840.unk524 + 0.01f * g_Vars.diffframe60f;
#endif
g_Menus[g_MpPlayerNum].unkd8c = diffframe;
g_Menus[g_MpPlayerNum].unkd64 = diffframe;
g_Menus[g_MpPlayerNum].unk840.unk54c = diffframe;
g_Menus[g_MpPlayerNum].unk840.unk524 = diffframe;
if (mpheadnum < mpGetNumHeads2()) {
headnum = mpGetHeadId(mpheadnum);
g_Menus[g_MpPlayerNum].unk84c = g_HeadsAndBodies[headnum].filenum;
g_Menus[g_MpPlayerNum].unkdf1 = false;
g_Menus[g_MpPlayerNum].unk840.unk00c = g_HeadsAndBodies[headnum].filenum;
g_Menus[g_MpPlayerNum].unk840.unk5b1_01 = false;
} else {
headnum = mpGetBeauHeadId(func0f14a9f8(mpheadnum - mpGetNumHeads2()));
g_Menus[g_MpPlayerNum].unk84c = g_HeadsAndBodies[headnum].filenum;
g_Menus[g_MpPlayerNum].unkdf1 = true;
g_Menus[g_MpPlayerNum].unkdf0 = mpheadnum - mpGetNumHeads2();
g_Menus[g_MpPlayerNum].unk840.unk00c = g_HeadsAndBodies[headnum].filenum;
g_Menus[g_MpPlayerNum].unk840.unk5b1_01 = true;
g_Menus[g_MpPlayerNum].unk840.unk5b0 = mpheadnum - mpGetNumHeads2();
}
g_Menus[g_MpPlayerNum].unkdb4 = 0;
g_Menus[g_MpPlayerNum].partvisibility = visibility;
g_Menus[g_MpPlayerNum].unkd94 = 30;
g_Menus[g_MpPlayerNum].unk840.unk574 = 0;
g_Menus[g_MpPlayerNum].unk840.partvisibility = visibility;
g_Menus[g_MpPlayerNum].unk840.unk554 = 30;
break;
case MENUOP_21:
if (!mpIsFeatureUnlocked(mpGetHeadRequiredFeature(data->carousel.value))) {
@@ -1308,24 +1308,22 @@ s32 mpCharacterHeadMenuHandler(s32 operation, struct menuitem *item, union handl
case MENUOP_SET:
case MENUOP_FOCUS:
#if VERSION >= VERSION_NTSC_1_0
g_Menus[g_MpPlayerNum].unk840 = 3;
g_Menus[g_MpPlayerNum].unk840.unk000 = 3;
#endif
mpGetNumHeads2();
func0f0f372c(&g_Menus[g_MpPlayerNum].unk840, 0, 0, 0, 0, 0, 0, 1, 1);
g_Menus[g_MpPlayerNum].unkd50 = 0;
g_Menus[g_MpPlayerNum].unkd54 = 0;
g_Menus[g_MpPlayerNum].unkd7c = -3;
g_Menus[g_MpPlayerNum].unkd78 = 0;
g_Menus[g_MpPlayerNum].unkd5c = 0.01f;
g_Menus[g_MpPlayerNum].unkd64 = -0.3f;
g_Menus[g_MpPlayerNum].unkd8c = -0.3f;
g_Menus[g_MpPlayerNum].unkd84 = 1;
g_Menus[g_MpPlayerNum].unkd94 = 30;
g_Menus[g_MpPlayerNum].unk840.unk510 = 0;
g_Menus[g_MpPlayerNum].unk840.unk514 = 0;
g_Menus[g_MpPlayerNum].unk840.unk53c = -3;
g_Menus[g_MpPlayerNum].unk840.unk538 = 0;
g_Menus[g_MpPlayerNum].unk840.unk51c = 0.01f;
g_Menus[g_MpPlayerNum].unk840.unk524 = -0.3f;
g_Menus[g_MpPlayerNum].unk840.unk54c = -0.3f;
g_Menus[g_MpPlayerNum].unk840.unk544 = 1;
g_Menus[g_MpPlayerNum].unk840.unk554 = 30;
break;
}
@@ -3005,12 +3003,12 @@ s32 menudialog0017e3fc(s32 operation, struct menudialogdef *dialogdef, union han
{
switch (operation) {
case MENUOP_OPEN:
g_Menus[g_MpPlayerNum].unk850 = 0;
g_Menus[g_MpPlayerNum].unk840.unk010 = 0;
g_Menus[g_MpPlayerNum].training.mpconfig = mpGetNthAvailableChallengeSomething(
g_Menus[g_MpPlayerNum].training.unke1c,
g_Menus[g_MpPlayerNum].mpconfigbuffer,
g_Menus[g_MpPlayerNum].mpconfigbufferlen);
g_Menus[g_MpPlayerNum].unk840.unk004,
g_Menus[g_MpPlayerNum].unk840.unk008);
break;
case MENUOP_CLOSE:
break;
@@ -3351,16 +3349,16 @@ s32 mpCombatChallengesMenuDialog(s32 operation, struct menudialogdef *dialogdef,
&& g_Menus[g_MpPlayerNum].curdialog
&& g_Menus[g_MpPlayerNum].curdialog->definition == dialogdef
&& !mpIsChallengeLoaded()) {
g_Menus[g_MpPlayerNum].unk850 = 0x4fac5ace;
g_Menus[g_MpPlayerNum].unk840.unk010 = 0x4fac5ace;
mpLoadAndStoreCurrentChallenge(
g_Menus[g_MpPlayerNum].mpconfigbuffer,
g_Menus[g_MpPlayerNum].mpconfigbufferlen);
g_Menus[g_MpPlayerNum].unk840.unk004,
g_Menus[g_MpPlayerNum].unk840.unk008);
}
}
if (operation == MENUOP_CLOSE) {
if (g_Menus[g_MpPlayerNum].unk850 == 0x4fac5ace) {
if (g_Menus[g_MpPlayerNum].unk840.unk010 == 0x4fac5ace) {
mpClearCurrentChallenge();
}
}
+6 -6
View File
@@ -49470,14 +49470,14 @@ void objInitMatrices(struct prop *prop)
hangingmonitorInitMatrices(prop);
} else {
if (obj->model->filedata->nummatrices >= 2) {
struct objticksp476 thing = {NULL, 1, 3};
struct modelrenderdata thing = {NULL, 1, 3};
u32 stack;
Mtxf sp28;
mtx4Copy(obj->model->matrices, &sp28);
thing.unk10 = obj->model->matrices;
thing.matrix = &sp28;
thing.unk00 = &sp28;
model0001ce64(&thing, obj->model);
}
@@ -49672,7 +49672,7 @@ s32 objTick(struct prop *prop)
model->anim = NULL;
} else {
// In cutscene
struct objticksp476 sp476 = {0, 1, 3};
struct modelrenderdata sp476 = {0, 1, 3};
Mtxf sp412;
struct coord sp400;
s16 sp384[8];
@@ -49700,7 +49700,7 @@ s32 objTick(struct prop *prop)
sp556 = true;
sp476.unk10 = gfxAllocate(model->filedata->nummatrices * sizeof(Mtxf));
sp476.matrix = currentPlayerGetMatrix1740();
sp476.unk00 = currentPlayerGetMatrix1740();
model0001cebc(&sp476, model);
if (fulltick) {
@@ -49758,7 +49758,7 @@ s32 objTick(struct prop *prop)
}
}
} else {
struct objticksp476 sp312 = {0, 1, 3};
struct modelrenderdata sp312 = {0, 1, 3};
Mtxf sp248;
struct coord sp236;
s16 sp220[8];
@@ -49798,7 +49798,7 @@ s32 objTick(struct prop *prop)
sp556 = true;
sp312.unk10 = gfxAllocate(model->filedata->nummatrices * sizeof(Mtxf));
sp312.matrix = &sp152;
sp312.unk00 = &sp152;
model0001cebc(&sp312, model);
if (fulltick) {
+48 -48
View File
@@ -224,11 +224,11 @@ s32 frTrainingInfoMenuDialog(s32 operation, struct menudialogdef *dialogdef, uni
break;
case MENUOP_TICK:
if (g_Menus[g_MpPlayerNum].curdialog && g_Menus[g_MpPlayerNum].curdialog->definition == dialogdef) {
g_Menus[g_MpPlayerNum].unkdb4 -= g_Vars.diffframe60;
g_Menus[g_MpPlayerNum].unkd8c = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unkd64 = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unkd68 = 0;
g_Menus[g_MpPlayerNum].unkd90 = 0;
g_Menus[g_MpPlayerNum].unk840.unk574 -= g_Vars.diffframe60;
g_Menus[g_MpPlayerNum].unk840.unk54c = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unk840.unk524 = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unk840.unk528 = 0;
g_Menus[g_MpPlayerNum].unk840.unk550 = 0;
}
break;
case MENUOP_CLOSE:
@@ -1102,14 +1102,14 @@ s32 ciCharacterProfileMenuDialog(s32 operation, struct menudialogdef *dialogdef,
case MENUOP_OPEN:
if (bodynum == BODY_DRCAROLL) {
scale = 0.7f;
g_Menus[g_MpPlayerNum].unkd94 = -1;
g_Menus[g_MpPlayerNum].unk840.unk554 = -1;
} else {
g_Menus[g_MpPlayerNum].unkd94 = 30;
g_Menus[g_MpPlayerNum].unk840.unk554 = 30;
scale = 1.0f;
}
g_Menus[g_MpPlayerNum].unkdb4 = PALDOWN(120);
g_Menus[g_MpPlayerNum].unkdc0 = 0;
g_Menus[g_MpPlayerNum].unk840.unk574 = PALDOWN(120);
g_Menus[g_MpPlayerNum].unk840.unk580 = 0;
#if VERSION >= VERSION_PAL_FINAL
if (g_ViRes != VIRES_HI) {
@@ -1145,12 +1145,12 @@ s32 ciCharacterProfileMenuDialog(s32 operation, struct menudialogdef *dialogdef,
func0f0f372c(&g_Menus[g_MpPlayerNum].unk840, x, y, 0, 0, 0, 0, scale, 7);
g_Menus[g_MpPlayerNum].unkd50 = 8.2f;
g_Menus[g_MpPlayerNum].unkd54 = -4.1f;
g_Menus[g_MpPlayerNum].unkd5c = 0.00393f;
g_Menus[g_MpPlayerNum].unkd64 = 0;
g_Menus[g_MpPlayerNum].unkd8c = 0;
g_Menus[g_MpPlayerNum].unkdb8 = PALDOWN(60);
g_Menus[g_MpPlayerNum].unk840.unk510 = 8.2f;
g_Menus[g_MpPlayerNum].unk840.unk514 = -4.1f;
g_Menus[g_MpPlayerNum].unk840.unk51c = 0.00393f;
g_Menus[g_MpPlayerNum].unk840.unk524 = 0;
g_Menus[g_MpPlayerNum].unk840.unk54c = 0;
g_Menus[g_MpPlayerNum].unk840.unk578 = PALDOWN(60);
break;
case MENUOP_CLOSE:
break;
@@ -1170,10 +1170,10 @@ s32 ciCharacterProfileMenuDialog(s32 operation, struct menudialogdef *dialogdef,
{ 255 },
};
g_Menus[g_MpPlayerNum].partvisibility = vis;
g_Menus[g_MpPlayerNum].unk89c = 318;
g_Menus[g_MpPlayerNum].unk840.partvisibility = vis;
g_Menus[g_MpPlayerNum].unk840.unk05c = 318;
} else {
g_Menus[g_MpPlayerNum].unk89c = 106;
g_Menus[g_MpPlayerNum].unk840.unk05c = 106;
}
if (bodynum == BODY_THEKING) {
@@ -1182,23 +1182,23 @@ s32 ciCharacterProfileMenuDialog(s32 operation, struct menudialogdef *dialogdef,
{ 255 },
};
g_Menus[g_MpPlayerNum].partvisibility = vis;
g_Menus[g_MpPlayerNum].unk840.partvisibility = vis;
}
g_Menus[g_MpPlayerNum].unk84c = 0xffff;
g_Menus[g_MpPlayerNum].unk84c |= (mpheadnum << 16);
g_Menus[g_MpPlayerNum].unk84c |= (mpbodynum << 24);
g_Menus[g_MpPlayerNum].unk840.unk00c = 0xffff;
g_Menus[g_MpPlayerNum].unk840.unk00c |= (mpheadnum << 16);
g_Menus[g_MpPlayerNum].unk840.unk00c |= (mpbodynum << 24);
if (g_Menus[g_MpPlayerNum].unkdb8 > 0) {
g_Menus[g_MpPlayerNum].unkdb8 -= g_Vars.diffframe60;
if (g_Menus[g_MpPlayerNum].unk840.unk578 > 0) {
g_Menus[g_MpPlayerNum].unk840.unk578 -= g_Vars.diffframe60;
} else {
#if VERSION >= VERSION_PAL_FINAL
f32 tmp = g_Menus[g_MpPlayerNum].unkd64 + 0.01f * g_Vars.diffframe60freal;
f32 tmp = g_Menus[g_MpPlayerNum].unk840.unk524 + 0.01f * g_Vars.diffframe60freal;
#else
f32 tmp = g_Menus[g_MpPlayerNum].unkd64 + 0.01f * g_Vars.diffframe60f;
f32 tmp = g_Menus[g_MpPlayerNum].unk840.unk524 + 0.01f * g_Vars.diffframe60f;
#endif
g_Menus[g_MpPlayerNum].unkd8c = tmp;
g_Menus[g_MpPlayerNum].unkd64 = tmp;
g_Menus[g_MpPlayerNum].unk840.unk54c = tmp;
g_Menus[g_MpPlayerNum].unk840.unk524 = tmp;
}
break;
@@ -1361,32 +1361,32 @@ s32 dtTrainingDetailsMenuDialog(s32 operation, struct menudialogdef *dialogdef,
#if VERSION >= VERSION_PAL_FINAL
if (g_ViRes == VIRES_HI) {
if (optionsGetScreenRatio() == SCREENRATIO_16_9) {
g_Menus[g_MpPlayerNum].unkd78 = 84;
g_Menus[g_MpPlayerNum].unkd50 = 84;
g_Menus[g_MpPlayerNum].unk840.unk538 = 84;
g_Menus[g_MpPlayerNum].unk840.unk510 = 84;
} else {
g_Menus[g_MpPlayerNum].unkd78 = 104;
g_Menus[g_MpPlayerNum].unkd50 = 104;
g_Menus[g_MpPlayerNum].unk840.unk538 = 104;
g_Menus[g_MpPlayerNum].unk840.unk510 = 104;
}
} else {
if (optionsGetScreenRatio() == SCREENRATIO_16_9) {
g_Menus[g_MpPlayerNum].unkd78 = 64;
g_Menus[g_MpPlayerNum].unkd50 = 64;
g_Menus[g_MpPlayerNum].unk840.unk538 = 64;
g_Menus[g_MpPlayerNum].unk840.unk510 = 64;
} else {
g_Menus[g_MpPlayerNum].unkd78 = 84;
g_Menus[g_MpPlayerNum].unkd50 = 84;
g_Menus[g_MpPlayerNum].unk840.unk538 = 84;
g_Menus[g_MpPlayerNum].unk840.unk510 = 84;
}
}
#else
if (optionsGetScreenRatio() == SCREENRATIO_16_9) {
g_Menus[g_MpPlayerNum].unkd78 = 70;
g_Menus[g_MpPlayerNum].unkd50 = 70;
g_Menus[g_MpPlayerNum].unk840.unk538 = 70;
g_Menus[g_MpPlayerNum].unk840.unk510 = 70;
} else {
g_Menus[g_MpPlayerNum].unkd78 = 90;
g_Menus[g_MpPlayerNum].unkd50 = 90;
g_Menus[g_MpPlayerNum].unk840.unk538 = 90;
g_Menus[g_MpPlayerNum].unk840.unk510 = 90;
}
#endif
g_Menus[g_MpPlayerNum].unkd84 /= 2.5f;
g_Menus[g_MpPlayerNum].unk840.unk544 /= 2.5f;
}
break;
case MENUOP_CLOSE:
@@ -1396,15 +1396,15 @@ s32 dtTrainingDetailsMenuDialog(s32 operation, struct menudialogdef *dialogdef,
s32 weaponnum = dtGetWeaponByDeviceIndex(dtGetIndexBySlot(g_DtSlot));
if (weaponnum == WEAPON_DISGUISE41) {
g_Menus[g_MpPlayerNum].unk89c = 0x6a;
g_Menus[g_MpPlayerNum].unkdb8 = PALDOWN(60);
g_Menus[g_MpPlayerNum].unkdb4 = PALDOWN(120);
g_Menus[g_MpPlayerNum].unk840.unk05c = ANIM_006A;
g_Menus[g_MpPlayerNum].unk840.unk578 = PALDOWN(60);
g_Menus[g_MpPlayerNum].unk840.unk574 = PALDOWN(120);
}
g_Menus[g_MpPlayerNum].unkd8c = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unkd64 = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unkd90 = 0;
g_Menus[g_MpPlayerNum].unkd68 = 0;
g_Menus[g_MpPlayerNum].unk840.unk54c = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unk840.unk524 = 18.849555969238f * var80061630;
g_Menus[g_MpPlayerNum].unk840.unk550 = 0;
g_Menus[g_MpPlayerNum].unk840.unk528 = 0;
}
break;
}
+2 -368
View File
@@ -23,7 +23,7 @@ void creditsInitSlides(void);
struct credit *creditGetByRow(s32 row);
void creditsTickSlide(void);
Gfx *func0f13a3ec(Gfx *gdl);
u32 func0f13ae04(void);
void func0f13ae04(Mtxf *mtx);
void creditsTick(void);
Gfx *creditsRender(Gfx *gdl);
void creditsInit(void);
@@ -66,373 +66,7 @@ struct creditsdata {
/*0x2eed*/ u8 unk2eed;
/*0x2eee*/ u8 unk2eee;
/*0x2eef*/ u8 unk2eef;
/*0x2ef0*/ u8 unk2ef0;
/*0x2ef4*/ u32 unk2ef4;
/*0x2ef8*/ u32 unk2ef8;
/*0x2efc*/ u32 unk2efc;
/*0x2f00*/ u32 unk2f00;
/*0x2f04*/ u32 unk2f04;
/*0x2f08*/ u32 unk2f08;
/*0x2f0c*/ u32 unk2f0c;
/*0x2f10*/ u32 unk2f10;
/*0x2f14*/ u32 unk2f14;
/*0x2f18*/ u32 unk2f18;
/*0x2f1c*/ u32 unk2f1c;
/*0x2f20*/ u32 unk2f20;
/*0x2f24*/ u32 unk2f24;
/*0x2f28*/ u32 unk2f28;
/*0x2f2c*/ u32 unk2f2c;
/*0x2f30*/ u32 unk2f30;
/*0x2f34*/ u32 unk2f34;
/*0x2f38*/ u32 unk2f38;
/*0x2f3c*/ u32 unk2f3c;
/*0x2f40*/ u32 unk2f40;
/*0x2f44*/ u32 unk2f44;
/*0x2f48*/ u32 unk2f48;
/*0x2f4c*/ u32 unk2f4c;
/*0x2f50*/ u32 unk2f50;
/*0x2f54*/ u32 unk2f54;
/*0x2f58*/ u32 unk2f58;
/*0x2f5c*/ u32 unk2f5c;
/*0x2f60*/ u32 unk2f60;
/*0x2f64*/ u32 unk2f64;
/*0x2f68*/ u32 unk2f68;
/*0x2f6c*/ u32 unk2f6c;
/*0x2f70*/ u32 unk2f70;
/*0x2f74*/ u32 unk2f74;
/*0x2f78*/ u32 unk2f78;
/*0x2f7c*/ u32 unk2f7c;
/*0x2f80*/ u32 unk2f80;
/*0x2f84*/ u32 unk2f84;
/*0x2f88*/ u32 unk2f88;
/*0x2f8c*/ u32 unk2f8c;
/*0x2f90*/ u32 unk2f90;
/*0x2f94*/ u32 unk2f94;
/*0x2f98*/ u32 unk2f98;
/*0x2f9c*/ u32 unk2f9c;
/*0x2fa0*/ u32 unk2fa0;
/*0x2fa4*/ u32 unk2fa4;
/*0x2fa8*/ u32 unk2fa8;
/*0x2fac*/ u32 unk2fac;
/*0x2fb0*/ u32 unk2fb0;
/*0x2fb4*/ u32 unk2fb4;
/*0x2fb8*/ u32 unk2fb8;
/*0x2fbc*/ u32 unk2fbc;
/*0x2fc0*/ u32 unk2fc0;
/*0x2fc4*/ u32 unk2fc4;
/*0x2fc8*/ u32 unk2fc8;
/*0x2fcc*/ u32 unk2fcc;
/*0x2fd0*/ u32 unk2fd0;
/*0x2fd4*/ u32 unk2fd4;
/*0x2fd8*/ u32 unk2fd8;
/*0x2fdc*/ u32 unk2fdc;
/*0x2fe0*/ u32 unk2fe0;
/*0x2fe4*/ u32 unk2fe4;
/*0x2fe8*/ u32 unk2fe8;
/*0x2fec*/ u32 unk2fec;
/*0x2ff0*/ u32 unk2ff0;
/*0x2ff4*/ u32 unk2ff4;
/*0x2ff8*/ u32 unk2ff8;
/*0x2ffc*/ u32 unk2ffc;
/*0x3000*/ u32 unk3000;
/*0x3004*/ u32 unk3004;
/*0x3008*/ u32 unk3008;
/*0x300c*/ u32 unk300c;
/*0x3010*/ u32 unk3010;
/*0x3014*/ u32 unk3014;
/*0x3018*/ u32 unk3018;
/*0x301c*/ u32 unk301c;
/*0x3020*/ u32 unk3020;
/*0x3024*/ u32 unk3024;
/*0x3028*/ u32 unk3028;
/*0x302c*/ u32 unk302c;
/*0x3030*/ u32 unk3030;
/*0x3034*/ u32 unk3034;
/*0x3038*/ u32 unk3038;
/*0x303c*/ u32 unk303c;
/*0x3040*/ u32 unk3040;
/*0x3044*/ u32 unk3044;
/*0x3048*/ u32 unk3048;
/*0x304c*/ u32 unk304c;
/*0x3050*/ u32 unk3050;
/*0x3054*/ u32 unk3054;
/*0x3058*/ u32 unk3058;
/*0x305c*/ u32 unk305c;
/*0x3060*/ u32 unk3060;
/*0x3064*/ u32 unk3064;
/*0x3068*/ u32 unk3068;
/*0x306c*/ u32 unk306c;
/*0x3070*/ u32 unk3070;
/*0x3074*/ u32 unk3074;
/*0x3078*/ u32 unk3078;
/*0x307c*/ u32 unk307c;
/*0x3080*/ u32 unk3080;
/*0x3084*/ u32 unk3084;
/*0x3088*/ u32 unk3088;
/*0x308c*/ u32 unk308c;
/*0x3090*/ u32 unk3090;
/*0x3094*/ u32 unk3094;
/*0x3098*/ u32 unk3098;
/*0x309c*/ u32 unk309c;
/*0x30a0*/ u32 unk30a0;
/*0x30a4*/ u32 unk30a4;
/*0x30a8*/ u32 unk30a8;
/*0x30ac*/ u32 unk30ac;
/*0x30b0*/ u32 unk30b0;
/*0x30b4*/ u32 unk30b4;
/*0x30b8*/ u32 unk30b8;
/*0x30bc*/ u32 unk30bc;
/*0x30c0*/ u32 unk30c0;
/*0x30c4*/ u32 unk30c4;
/*0x30c8*/ u32 unk30c8;
/*0x30cc*/ u32 unk30cc;
/*0x30d0*/ u32 unk30d0;
/*0x30d4*/ u32 unk30d4;
/*0x30d8*/ u32 unk30d8;
/*0x30dc*/ u32 unk30dc;
/*0x30e0*/ u32 unk30e0;
/*0x30e4*/ u32 unk30e4;
/*0x30e8*/ u32 unk30e8;
/*0x30ec*/ u32 unk30ec;
/*0x30f0*/ u32 unk30f0;
/*0x30f4*/ u32 unk30f4;
/*0x30f8*/ u32 unk30f8;
/*0x30fc*/ u32 unk30fc;
/*0x3100*/ u32 unk3100;
/*0x3104*/ u32 unk3104;
/*0x3108*/ u32 unk3108;
/*0x310c*/ u32 unk310c;
/*0x3110*/ u32 unk3110;
/*0x3114*/ u32 unk3114;
/*0x3118*/ u32 unk3118;
/*0x311c*/ u32 unk311c;
/*0x3120*/ u32 unk3120;
/*0x3124*/ u32 unk3124;
/*0x3128*/ u32 unk3128;
/*0x312c*/ u32 unk312c;
/*0x3130*/ u32 unk3130;
/*0x3134*/ u32 unk3134;
/*0x3138*/ u32 unk3138;
/*0x313c*/ u32 unk313c;
/*0x3140*/ u32 unk3140;
/*0x3144*/ u32 unk3144;
/*0x3148*/ u32 unk3148;
/*0x314c*/ u32 unk314c;
/*0x3150*/ u32 unk3150;
/*0x3154*/ u32 unk3154;
/*0x3158*/ u32 unk3158;
/*0x315c*/ u32 unk315c;
/*0x3160*/ u32 unk3160;
/*0x3164*/ u32 unk3164;
/*0x3168*/ u32 unk3168;
/*0x316c*/ u32 unk316c;
/*0x3170*/ u32 unk3170;
/*0x3174*/ u32 unk3174;
/*0x3178*/ u32 unk3178;
/*0x317c*/ u32 unk317c;
/*0x3180*/ u32 unk3180;
/*0x3184*/ u32 unk3184;
/*0x3188*/ u32 unk3188;
/*0x318c*/ u32 unk318c;
/*0x3190*/ u32 unk3190;
/*0x3194*/ u32 unk3194;
/*0x3198*/ u32 unk3198;
/*0x319c*/ u32 unk319c;
/*0x31a0*/ u32 unk31a0;
/*0x31a4*/ u32 unk31a4;
/*0x31a8*/ u32 unk31a8;
/*0x31ac*/ u32 unk31ac;
/*0x31b0*/ u32 unk31b0;
/*0x31b4*/ u32 unk31b4;
/*0x31b8*/ u32 unk31b8;
/*0x31bc*/ u32 unk31bc;
/*0x31c0*/ u32 unk31c0;
/*0x31c4*/ u32 unk31c4;
/*0x31c8*/ u32 unk31c8;
/*0x31cc*/ u32 unk31cc;
/*0x31d0*/ u32 unk31d0;
/*0x31d4*/ u32 unk31d4;
/*0x31d8*/ u32 unk31d8;
/*0x31dc*/ u32 unk31dc;
/*0x31e0*/ u32 unk31e0;
/*0x31e4*/ u32 unk31e4;
/*0x31e8*/ u32 unk31e8;
/*0x31ec*/ u32 unk31ec;
/*0x31f0*/ u32 unk31f0;
/*0x31f4*/ u32 unk31f4;
/*0x31f8*/ u32 unk31f8;
/*0x31fc*/ u32 unk31fc;
/*0x3200*/ u32 unk3200;
/*0x3204*/ u32 unk3204;
/*0x3208*/ u32 unk3208;
/*0x320c*/ u32 unk320c;
/*0x3210*/ u32 unk3210;
/*0x3214*/ u32 unk3214;
/*0x3218*/ u32 unk3218;
/*0x321c*/ u32 unk321c;
/*0x3220*/ u32 unk3220;
/*0x3224*/ u32 unk3224;
/*0x3228*/ u32 unk3228;
/*0x322c*/ u32 unk322c;
/*0x3230*/ u32 unk3230;
/*0x3234*/ u32 unk3234;
/*0x3238*/ u32 unk3238;
/*0x323c*/ u32 unk323c;
/*0x3240*/ u32 unk3240;
/*0x3244*/ u32 unk3244;
/*0x3248*/ u32 unk3248;
/*0x324c*/ u32 unk324c;
/*0x3250*/ u32 unk3250;
/*0x3254*/ u32 unk3254;
/*0x3258*/ u32 unk3258;
/*0x325c*/ u32 unk325c;
/*0x3260*/ u32 unk3260;
/*0x3264*/ u32 unk3264;
/*0x3268*/ u32 unk3268;
/*0x326c*/ u32 unk326c;
/*0x3270*/ u32 unk3270;
/*0x3274*/ u32 unk3274;
/*0x3278*/ u32 unk3278;
/*0x327c*/ u32 unk327c;
/*0x3280*/ u32 unk3280;
/*0x3284*/ u32 unk3284;
/*0x3288*/ u32 unk3288;
/*0x328c*/ u32 unk328c;
/*0x3290*/ u32 unk3290;
/*0x3294*/ u32 unk3294;
/*0x3298*/ u32 unk3298;
/*0x329c*/ u32 unk329c;
/*0x32a0*/ u32 unk32a0;
/*0x32a4*/ u32 unk32a4;
/*0x32a8*/ u32 unk32a8;
/*0x32ac*/ u32 unk32ac;
/*0x32b0*/ u32 unk32b0;
/*0x32b4*/ u32 unk32b4;
/*0x32b8*/ u32 unk32b8;
/*0x32bc*/ u32 unk32bc;
/*0x32c0*/ u32 unk32c0;
/*0x32c4*/ u32 unk32c4;
/*0x32c8*/ u32 unk32c8;
/*0x32cc*/ u32 unk32cc;
/*0x32d0*/ u32 unk32d0;
/*0x32d4*/ u32 unk32d4;
/*0x32d8*/ u32 unk32d8;
/*0x32dc*/ u32 unk32dc;
/*0x32e0*/ u32 unk32e0;
/*0x32e4*/ u32 unk32e4;
/*0x32e8*/ u32 unk32e8;
/*0x32ec*/ u32 unk32ec;
/*0x32f0*/ u32 unk32f0;
/*0x32f4*/ u32 unk32f4;
/*0x32f8*/ u32 unk32f8;
/*0x32fc*/ u32 unk32fc;
/*0x3300*/ u32 unk3300;
/*0x3304*/ u32 unk3304;
/*0x3308*/ u32 unk3308;
/*0x330c*/ u32 unk330c;
/*0x3310*/ u32 unk3310;
/*0x3314*/ u32 unk3314;
/*0x3318*/ u32 unk3318;
/*0x331c*/ u32 unk331c;
/*0x3320*/ u32 unk3320;
/*0x3324*/ u32 unk3324;
/*0x3328*/ u32 unk3328;
/*0x332c*/ u32 unk332c;
/*0x3330*/ u32 unk3330;
/*0x3334*/ u32 unk3334;
/*0x3338*/ u32 unk3338;
/*0x333c*/ u32 unk333c;
/*0x3340*/ u32 unk3340;
/*0x3344*/ u32 unk3344;
/*0x3348*/ u32 unk3348;
/*0x334c*/ u32 unk334c;
/*0x3350*/ u32 unk3350;
/*0x3354*/ u32 unk3354;
/*0x3358*/ u32 unk3358;
/*0x335c*/ u32 unk335c;
/*0x3360*/ u32 unk3360;
/*0x3364*/ u32 unk3364;
/*0x3368*/ u32 unk3368;
/*0x336c*/ u32 unk336c;
/*0x3370*/ u32 unk3370;
/*0x3374*/ u32 unk3374;
/*0x3378*/ u32 unk3378;
/*0x337c*/ u32 unk337c;
/*0x3380*/ u32 unk3380;
/*0x3384*/ u32 unk3384;
/*0x3388*/ u32 unk3388;
/*0x338c*/ u32 unk338c;
/*0x3390*/ u32 unk3390;
/*0x3394*/ u32 unk3394;
/*0x3398*/ u32 unk3398;
/*0x339c*/ u32 unk339c;
/*0x33a0*/ u32 unk33a0;
/*0x33a4*/ u32 unk33a4;
/*0x33a8*/ u32 unk33a8;
/*0x33ac*/ u32 unk33ac;
/*0x33b0*/ u32 unk33b0;
/*0x33b4*/ u32 unk33b4;
/*0x33b8*/ u32 unk33b8;
/*0x33bc*/ u32 unk33bc;
/*0x33c0*/ u32 unk33c0;
/*0x33c4*/ u32 unk33c4;
/*0x33c8*/ u32 unk33c8;
/*0x33cc*/ u32 unk33cc;
/*0x33d0*/ u32 unk33d0;
/*0x33d4*/ u32 unk33d4;
/*0x33d8*/ u32 unk33d8;
/*0x33dc*/ u32 unk33dc;
/*0x33e0*/ u32 unk33e0;
/*0x33e4*/ u32 unk33e4;
/*0x33e8*/ u32 unk33e8;
/*0x33ec*/ u32 unk33ec;
/*0x33f0*/ u32 unk33f0;
/*0x33f4*/ u32 unk33f4;
/*0x33f8*/ u32 unk33f8;
/*0x33fc*/ u32 unk33fc;
/*0x3400*/ f32 unk3400;
/*0x3404*/ f32 unk3404;
/*0x3408*/ u32 unk3408;
/*0x340c*/ f32 unk340c;
/*0x3410*/ f32 unk3410;
/*0x3414*/ f32 unk3414;
/*0x3418*/ f32 unk3418;
/*0x341c*/ u32 unk341c;
/*0x3420*/ u32 unk3420;
/*0x3424*/ u32 unk3424;
/*0x3428*/ f32 unk3428;
/*0x342c*/ f32 unk342c;
/*0x3430*/ f32 unk3430;
/*0x3434*/ f32 unk3434;
/*0x3438*/ f32 unk3438;
/*0x343c*/ f32 unk343c;
/*0x3440*/ f32 unk3440;
/*0x3444*/ u32 unk3444;
/*0x3448*/ u32 unk3448;
/*0x344c*/ u32 unk344c;
/*0x3450*/ u32 unk3450;
/*0x3454*/ u32 unk3454;
/*0x3458*/ u32 unk3458;
/*0x345c*/ u32 unk345c;
/*0x3460*/ u32 unk3460;
/*0x3464*/ u32 unk3464;
/*0x3468*/ u32 unk3468;
/*0x346c*/ u32 unk346c;
/*0x3470*/ u32 unk3470;
/*0x3474*/ u32 unk3474;
/*0x3478*/ u32 unk3478;
/*0x347c*/ u32 unk347c;
/*0x3480*/ u32 unk3480;
/*0x3484*/ u32 unk3484;
/*0x3488*/ u32 unk3488;
/*0x348c*/ u32 unk348c;
/*0x3490*/ u32 unk3490;
/*0x3494*/ u32 unk3494;
/*0x3498*/ u32 unk3498;
/*0x349c*/ u32 unk349c;
/*0x34a0*/ u8 unk34a0;
/*0x34a1*/ u8 unk34a1; // flags?
/*0x34a4*/ u32 unk34a4;
/*0x2ef0*/ struct menu840 unk2ef0;
/*0x34a8*/ u32 unk34a8;
/*0x34ac*/ u32 unk34ac;
/*0x34b0*/ u32 unk34b0;
+1 -1
View File
@@ -27,7 +27,7 @@ s32 func0f00e1f8(s32 padnum);
s32 func0f00e2b0(s32 padnum);
void setupDoor(struct doorobj *door, s32 cmdindex);
void setupHov(struct defaultobj *obj, struct hov *hov);
void func0f00e980(s32 stagenum, s32 arg0, s32 arg1, struct briefing *briefing);
void func0f00e980(s32 stagenum, u8 *arg0, s32 arg1, struct briefing *briefing);
void setupLoadFiles(s32 stagenum);
void setupParseObjects(s32 stagenum);
+2 -2
View File
@@ -32,8 +32,8 @@ void currentPlayerSetUnk1754(Mtxf *matrix);
Mtxf *currentPlayerGetUnk1754(void);
void currentPlayerSetUnk174c(Mtxf *matrix);
Mtxf *currentPlayerGetUnk174c(void);
void currentPlayerSetUnk175c(void *value);
void *currentPlayerGetUnk175c(void);
void currentPlayerSetUnk175c(Mtxf *matrix);
Mtxf *currentPlayerGetUnk175c(void);
f32 currentPlayerGetLodScaleZ(void);
f32 currentPlayerGetScreenWidth(void);
f32 currentPlayerGetScreenHeight(void);
+4 -4
View File
@@ -56,9 +56,9 @@ void menuCloseDialog(void);
void menuUpdateCurFrame(void);
void menuPopDialog(void);
void func0f0f3704(struct menudialogdef *dialogdef);
void func0f0f372c(u8 *arg0, f32 x, f32 y, f32 arg3, f32 arg4, f32 arg5, f32 arg6, f32 arg7, s32 arg8);
void func0f0f37a4(u8 *arg0);
Gfx *menuRenderHudPiece(Gfx *gdl, u8 *arg1, u32 arg2);
void func0f0f372c(struct menu840 *arg0, f32 x, f32 y, f32 arg3, f32 arg4, f32 arg5, f32 arg6, f32 arg7, s32 arg8);
void func0f0f37a4(struct menu840 *arg0);
Gfx *menuRenderModels(Gfx *gdl, struct menu840 *arg1, s32 arg2);
u32 func0f0f5004(void);
Gfx *menuApplyScissor(Gfx *gdl);
Gfx *dialogRender(Gfx *gdl, struct menudialog *dialog, struct menu *menu, s32 arg3);
@@ -75,7 +75,7 @@ void menuPushRootDialog(struct menudialogdef *dialogdef, s32 arg1);
void func0f0f85e0(struct menudialogdef *dialogdef, s32 root);
Gfx *menuRenderDialog(Gfx *gdl, struct menudialog *dialog, struct menu *menu, s32 arg3);
Gfx *menuRenderDialogs(Gfx *gdl);
void func0f0f8bb4(u8 *arg0, u32 arg1, u32 arg2);
void func0f0f8bb4(struct menu840 *arg0, u32 arg1, u32 arg2);
void menuInit(void);
void menuSwipe(s32 direction);
void dialogTick(struct menudialog *dialog, struct menuinputs *inputs, u32 tickflags);
+6 -6
View File
@@ -34,11 +34,11 @@ f32 model0001afe8(f32 arg0, f32 angle, f32 frac);
void model0001b07c(struct coord *arg0, struct coord *arg1, f32 mult);
void model0001b0e8(struct model *model, struct modelnode *node);
void model0001b3bc(struct model *model);
void model0001b400(struct objticksp476 *arg0, struct model *model, struct modelnode *node);
void model0001b400(struct modelrenderdata *arg0, struct model *model, struct modelnode *node);
u32 model0001b80c(void);
u32 model0001bc14(void);
void model0001bfa8(struct objticksp476 *arg0, struct model *model, struct modelnode *node);
void model0001c5b4(struct objticksp476 *arg0, struct model *model, struct modelnode *node);
void model0001bfa8(struct modelrenderdata *arg0, struct model *model, struct modelnode *node);
void model0001c5b4(struct modelrenderdata *arg0, struct model *model, struct modelnode *node);
void model0001c664(struct model *model, struct modelnode *node);
void model0001c784(struct model *model, struct modelnode *node);
void model0001c7d0(struct model *model, struct modelnode *node);
@@ -48,9 +48,9 @@ void modelRenderNodeReorder(struct model *model, struct modelnode *node);
void model0001c950(struct model *model, struct modelnode *node);
void model0001cb0c(struct model *model, struct modelnode *node);
void model0001cc20(struct model *model);
void model0001cd18(struct objticksp476 *arg0, struct model *model);
void model0001ce64(struct objticksp476 *arg0, struct model *model);
void model0001cebc(struct objticksp476 *arg0, struct model *model);
void model0001cd18(struct modelrenderdata *arg0, struct model *model);
void model0001ce64(struct modelrenderdata *arg0, struct model *model);
void model0001cebc(struct modelrenderdata *renderdata, struct model *model);
s16 modelGetAnimNum(struct model *model);
bool modelIsFlipped(struct model *model);
f32 modelGetCurAnimFrame(struct model *model);
+332 -771
View File
File diff suppressed because it is too large Load Diff
+7 -7
View File
@@ -655,7 +655,7 @@ void model0001b3bc(struct model *model)
}
}
void model0001b400(struct objticksp476 *arg0, struct model *model, struct modelnode *node)
void model0001b400(struct modelrenderdata *arg0, struct model *model, struct modelnode *node)
{
struct anim *anim = model->anim;
union modelrodata *rodata = node->rodata;
@@ -698,7 +698,7 @@ void model0001b400(struct objticksp476 *arg0, struct model *model, struct modeln
if (node->parent) {
sp24c = model0001a5cc(model, node->parent, 0);
} else {
sp24c = arg0->matrix;
sp24c = arg0->unk00;
}
anim00024050(sp240, anim->flip, skel, anim->animnum, anim->unk04, &sp230, &sp224, &sp218);
@@ -2172,7 +2172,7 @@ glabel model0001bfa8
);
#endif
void model0001c5b4(struct objticksp476 *arg0, struct model *model, struct modelnode *node)
void model0001c5b4(struct modelrenderdata *arg0, struct model *model, struct modelnode *node)
{
union modelrodata *rodata = node->rodata;
Mtxf *sp68;
@@ -2183,7 +2183,7 @@ void model0001c5b4(struct objticksp476 *arg0, struct model *model, struct modeln
if (node->parent) {
sp68 = model0001a5cc(model, node->parent, 0);
} else {
sp68 = arg0->matrix;
sp68 = arg0->unk00;
}
if (sp68) {
@@ -2472,7 +2472,7 @@ void model0001cc20(struct model *model)
}
}
void model0001cd18(struct objticksp476 *arg0, struct model *model)
void model0001cd18(struct modelrenderdata *arg0, struct model *model)
{
struct modelnode *node = model->filedata->rootnode;
@@ -2521,7 +2521,7 @@ void model0001cd18(struct objticksp476 *arg0, struct model *model)
}
}
void model0001ce64(struct objticksp476 *arg0, struct model *model)
void model0001ce64(struct modelrenderdata *arg0, struct model *model)
{
model->matrices = arg0->unk10;
@@ -2538,7 +2538,7 @@ void model0001ce64(struct objticksp476 *arg0, struct model *model)
#endif
}
void model0001cebc(struct objticksp476 *arg0, struct model *model)
void model0001cebc(struct modelrenderdata *arg0, struct model *model)
{
struct anim *anim = model->anim;
f32 speed;