Match m410dll/game.c
This commit is contained in:
parent
7c4d57c7db
commit
883773eaa4
5 changed files with 38 additions and 53 deletions
|
|
@ -882,7 +882,7 @@ config.libs = [
|
||||||
Object(Matching, "REL/executor.c"),
|
Object(Matching, "REL/executor.c"),
|
||||||
Object(Matching, "REL/m410Dll/main.c"),
|
Object(Matching, "REL/m410Dll/main.c"),
|
||||||
Object(Matching, "REL/m410Dll/stage.c"),
|
Object(Matching, "REL/m410Dll/stage.c"),
|
||||||
Object(NonMatching, "REL/m410Dll/game.c"),
|
Object(Matching, "REL/m410Dll/game.c"),
|
||||||
Object(Matching, "REL/m410Dll/player.c"),
|
Object(Matching, "REL/m410Dll/player.c"),
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
|
|
||||||
|
|
@ -205,7 +205,7 @@ void fn_1_28AC(s32 arg0);
|
||||||
s32 fn_1_28DC(void);
|
s32 fn_1_28DC(void);
|
||||||
float fn_1_2FD4(float arg8, float arg9, float argA);
|
float fn_1_2FD4(float arg8, float arg9, float argA);
|
||||||
float fn_1_30F0(float arg8, float arg9);
|
float fn_1_30F0(float arg8, float arg9);
|
||||||
s32 fn_1_76B8(void *arg0, Vec *arg1, u16 arg2);
|
s32 fn_1_76B8(Vec arg0, Vec arg1, u16 arg2);
|
||||||
void fn_1_77E8(void *arg0);
|
void fn_1_77E8(void *arg0);
|
||||||
void fn_1_77F8(u16 arg0, Vec *arg1);
|
void fn_1_77F8(u16 arg0, Vec *arg1);
|
||||||
void fn_1_7840(u16 arg0, Vec *arg1);
|
void fn_1_7840(u16 arg0, Vec *arg1);
|
||||||
|
|
|
||||||
|
|
@ -64,7 +64,7 @@ typedef struct model_data {
|
||||||
Vec rot;
|
Vec rot;
|
||||||
Vec scale;
|
Vec scale;
|
||||||
Mtx unk_F0;
|
Mtx unk_F0;
|
||||||
void *unk_120;
|
ParticleData *unk_120;
|
||||||
} ModelData; // sizeof 0x124
|
} ModelData; // sizeof 0x124
|
||||||
typedef struct camera_data {
|
typedef struct camera_data {
|
||||||
f32 fov;
|
f32 fov;
|
||||||
|
|
|
||||||
|
|
@ -1091,15 +1091,14 @@ void fn_1_7494(void)
|
||||||
void fn_1_7520(Vec *arg0)
|
void fn_1_7520(Vec *arg0)
|
||||||
{
|
{
|
||||||
ParticleData *var_r30; // no, custom struct
|
ParticleData *var_r30; // no, custom struct
|
||||||
void *var_r31;
|
HsfanimStruct01 *var_r31;
|
||||||
|
|
||||||
var_r30 = Hu3DData[lbl_1_bss_38].unk_120; // unk_120 is not ParticleData
|
var_r30 = Hu3DData[lbl_1_bss_38].unk_120; // unk_120 is not ParticleData
|
||||||
// var_r31 = var_r30->unk_48 + (var_r30->unk_02++ * 0x44);
|
var_r31 = &var_r30->unk_48[var_r30->unk_02++];
|
||||||
100.0f; // to fit rodata temporarily
|
var_r31->unk2C = 100.0f;
|
||||||
// var_r31->unk_2C = 100.0f;
|
var_r31->unk34.x = arg0->x;
|
||||||
// var_r31->unk_34 = arg0->x;
|
var_r31->unk34.y = arg0->y;
|
||||||
// var_r31->unk_38 = arg0->y;
|
var_r31->unk34.z = arg0->z;
|
||||||
// var_r31->unk_3C = arg0->z;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 lbl_1_data_110 = 60;
|
s32 lbl_1_data_110 = 60;
|
||||||
|
|
@ -1107,58 +1106,48 @@ s32 lbl_1_data_110 = 60;
|
||||||
void fn_1_75A0(ModelData *model, ParticleData *particle, Mtx matrix)
|
void fn_1_75A0(ModelData *model, ParticleData *particle, Mtx matrix)
|
||||||
{
|
{
|
||||||
HsfanimStruct01 *var_r30;
|
HsfanimStruct01 *var_r30;
|
||||||
s16 var_r29;
|
s32 var_r29;
|
||||||
u8 var_r28;
|
s32 var_r28;
|
||||||
|
|
||||||
if (!particle->unk_00) {
|
if (!particle->unk_00) {
|
||||||
particle->unk_00 = 1;
|
particle->unk_00 = 1;
|
||||||
var_r30 = &particle->unk_48[particle->unk_02]; // TODO
|
var_r30 = &particle->unk_48[particle->unk_02];
|
||||||
var_r29 = particle->unk_02;
|
for (var_r29 = particle->unk_02; var_r29 < particle->unk_30; var_r29++, var_r30++) {
|
||||||
for (; var_r29 < particle->unk_30; var_r29++, var_r30 += 0x44) {
|
|
||||||
var_r30->unk2C = 0.0f;
|
var_r30->unk2C = 0.0f;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
var_r28 = (lbl_1_data_110 * 0xFF) / 60;
|
var_r28 = (lbl_1_data_110 * 0xFF) / 60;
|
||||||
var_r30 = particle->unk_48;
|
var_r30 = particle->unk_48;
|
||||||
|
|
||||||
// for (var_r29 = 0; var_r29 < particle->unk_02; var_r29++, var_r30 += 0x44) {
|
for (var_r29 = 0; var_r29 < particle->unk_02; var_r29++, var_r30++) {
|
||||||
// var_r30->unk_43 = var_r28; // 43?
|
var_r30->unk40.a = var_r28; // 43?
|
||||||
// }
|
}
|
||||||
// if (--lbl_1_data_110 == 0) {
|
if (--lbl_1_data_110 == 0) {
|
||||||
// model->unk_50 = model->unk_50 | 1;
|
model->attr |= 1;
|
||||||
// }
|
}
|
||||||
// DCStoreRange(particle->unk_048, particle->unk_30 * 0x44);
|
DCStoreRange(particle->unk_48, particle->unk_30 * 0x44);
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 fn_1_76B8(void *arg0, Vec *arg1, u16 arg2)
|
s32 fn_1_76B8(Vec arg0, Vec arg1, u16 arg2)
|
||||||
{
|
{
|
||||||
UnkM410Struct2 *var_r31;
|
UnkM410Struct2 *var_r31 = lbl_1_bss_58->data;
|
||||||
s32 var_r30;
|
s32 var_r30;
|
||||||
|
|
||||||
var_r31 = &((UnkM410Struct2 *)lbl_1_bss_58->data)[arg2 * 15];
|
var_r31 = &var_r31[arg2 * 15];
|
||||||
var_r30 = 0;
|
for(var_r30=0; var_r30<15; var_r30++, var_r31++) {
|
||||||
while (TRUE) {
|
|
||||||
if (var_r30 >= 15) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
if (!var_r31->unk_00_field0) {
|
if (!var_r31->unk_00_field0) {
|
||||||
var_r31->unk_00_field4 = 0; // TODO this sets two bytes... so maybe wrong struct, the size is right though
|
*(s16 *)var_r31 = 0;
|
||||||
// var_r31->unk_0 = var_r31->unk_0 | 0x80;
|
var_r31->unk_00_field0 = 1;
|
||||||
// var_r31->unk_0 = var_r31->unk_0 | 0x20;
|
var_r31->unk_00_field2 = 1;
|
||||||
// var_r31->unk_04 = arg0->unk_0;
|
var_r31->unk_04 = arg0;
|
||||||
// var_r31->unk_08 = arg0->unk_04;
|
var_r31->unk_1C = arg1;
|
||||||
// var_r31->unk_0C = arg0->unk_08;
|
|
||||||
// var_r31->unk_1C = arg1->unk_0;
|
|
||||||
// var_r31->unk_20 = arg1->unk_04;
|
|
||||||
// var_r31->unk_24 = arg1->unk_08;
|
|
||||||
var_r31->unk_28 = 30.000002f;
|
var_r31->unk_28 = 30.000002f;
|
||||||
var_r31->unk_38 = 0;
|
var_r31->unk_38 = NULL;
|
||||||
var_r31->unk_36 = 0;
|
var_r31->unk_36 = 0;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
var_r30++;
|
|
||||||
var_r31++;
|
|
||||||
}
|
}
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void fn_1_77A4(u16 arg0, u16 arg1, u16 arg2)
|
void fn_1_77A4(u16 arg0, u16 arg1, u16 arg2)
|
||||||
|
|
|
||||||
|
|
@ -528,11 +528,7 @@ void fn_1_9040(omObjData *object)
|
||||||
sp2C.y = 0.016666668f * var_f27;
|
sp2C.y = 0.016666668f * var_f27;
|
||||||
sp2C.z = (sp20.z - var_r31->unk_70.z) * 0.016666668f / var_f31;
|
sp2C.z = (sp20.z - var_r31->unk_70.z) * 0.016666668f / var_f31;
|
||||||
}
|
}
|
||||||
sp8 = sp2C;
|
fn_1_76B8(var_r31->unk_70, sp2C, object->work[0]);
|
||||||
var_r26 = &sp8;
|
|
||||||
sp14 = var_r31->unk_70;
|
|
||||||
var_r25 = &sp14;
|
|
||||||
fn_1_76B8(var_r25, var_r26, object->work[0]);
|
|
||||||
var_r31->unk_18 = 0;
|
var_r31->unk_18 = 0;
|
||||||
var_r31->unk_24 = 0;
|
var_r31->unk_24 = 0;
|
||||||
if (var_r31->unk_1C) {
|
if (var_r31->unk_1C) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue