mirror of
https://gitlab.com/ryandwyer/perfect-dark
synced 2026-07-30 15:53:34 -04:00
Decompile func0f148f18
This commit is contained in:
@@ -6851,7 +6851,7 @@ u32 var8007f898 = 0x00000000;
|
||||
u32 var8007f89c = 0x00000000;
|
||||
u32 var8007f8a0 = 0x3e19999a;
|
||||
u32 var8007f8a4 = 0x40400000;
|
||||
u32 var8007f8a8 = 0x41400000;
|
||||
f32 var8007f8a8 = 12;
|
||||
u32 var8007f8ac = 0x00000008;
|
||||
u32 var8007f8b0 = 0x43340000;
|
||||
u32 var8007f8b4 = 0x40a00000;
|
||||
|
||||
+83
-242
@@ -56,7 +56,7 @@ void splatTick(struct prop *prop)
|
||||
if (thudframe != -1.0f && modelGetCurAnimFrame(chr->model) < thudframe) {
|
||||
osSyncPrintf("SPLAT : Not Dead Enough %s%s%f", "", "", modelGetCurAnimFrame(chr->model));
|
||||
} else if (chr->tickssincesplat > 30 && chr->deaddropsplatsadded < 6) {
|
||||
chr->deaddropsplatsadded += func0f148f18(1, 1.1f, prop, 0, 0, 0, isskedar, 1, 150, unk350, random() & 8);
|
||||
chr->deaddropsplatsadded += func0f148f18(1, 1.1f, prop, NULL, 0, 0, isskedar, 1, 150, unk350, random() & 8);
|
||||
}
|
||||
} else {
|
||||
u32 value = chr->bulletstaken * chr->tickssincesplat;
|
||||
@@ -74,7 +74,7 @@ void splatTick(struct prop *prop)
|
||||
}
|
||||
|
||||
if (addmore) {
|
||||
chr->woundedsplatsadded += func0f148f18(1, 0.3f, prop, 0, 0, 0, isskedar, 2, 80, unk350, 0);
|
||||
chr->woundedsplatsadded += func0f148f18(1, 0.3f, prop, NULL, 0, 0, isskedar, 2, 80, unk350, 0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,7 +90,7 @@ void splatTick(struct prop *prop)
|
||||
chr->tickssincesplat += g_Vars.lvupdate240_60;
|
||||
}
|
||||
|
||||
void func0f148e54(struct prop *prop, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6)
|
||||
void func0f148e54(struct prop *prop, struct splat *arg1, struct coord *arg2, struct coord *arg3, s32 arg4, s32 arg5, s32 arg6)
|
||||
{
|
||||
struct chrdata *chr = prop->chr;
|
||||
|
||||
@@ -107,253 +107,94 @@ void func0f148e54(struct prop *prop, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32
|
||||
}
|
||||
}
|
||||
|
||||
const char var7f1b5fd0[] = "splat.c";
|
||||
const char var7f1b5fd8[] = "splat.c";
|
||||
s32 func0f148f18(s32 qty, f32 arg1, struct prop *prop, struct splat *arg3, struct coord *arg4, struct coord *arg5, s32 arg6, s32 arg7, s32 arg8, s32 arg9, s32 arg10)
|
||||
{
|
||||
s32 i;
|
||||
s32 j;
|
||||
struct splat stacksplat;
|
||||
struct splat *splat = arg7 == 0 ? arg3 : &stacksplat;
|
||||
f32 spfc[3];
|
||||
f32 spf0[3];
|
||||
f32 spe4[3];
|
||||
f32 spa4[16];
|
||||
s32 numdropped = 0;
|
||||
f32 dist;
|
||||
|
||||
if (arg7 == 0) {
|
||||
dist = coordsGetDistance(&splat->unk01c, arg5);
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
spfc[i] = ((f32 *)&splat->unk028)[i];
|
||||
spf0[i] = ((f32 *)&splat->unk00c)[i];
|
||||
((f32 *)&splat->unk01c)[i] = ((f32 *)arg5)[i];
|
||||
((f32 *)&splat->unk000)[i] = ((f32 *)arg4)[i];
|
||||
}
|
||||
} else {
|
||||
f32 extraheight;
|
||||
|
||||
if (prop->type == PROPTYPE_CHR) {
|
||||
extraheight = 50;
|
||||
} else {
|
||||
extraheight = 0;
|
||||
}
|
||||
|
||||
dist = 0.7f;
|
||||
|
||||
splat->unk028.x = 0; spfc[0] = 0;
|
||||
splat->unk028.y = -1; spfc[1] = -1;
|
||||
splat->unk028.z = 0; spfc[2] = 0;
|
||||
|
||||
splat->unk00c.x = 0; spf0[0] = 0;
|
||||
splat->unk00c.y = -1; spf0[1] = -1;
|
||||
splat->unk00c.z = 0; spf0[2] = 0;
|
||||
|
||||
splat->unk01c.x = prop->pos.x;
|
||||
splat->unk01c.y = prop->pos.y + extraheight;
|
||||
splat->unk01c.z = prop->pos.z;
|
||||
|
||||
splat->unk000.x = prop->pos.x;
|
||||
splat->unk000.y = prop->pos.y + extraheight;
|
||||
splat->unk000.z = prop->pos.z;
|
||||
}
|
||||
|
||||
for (i = 0; i < qty; i++) {
|
||||
for (j = 0; j < 3; j++) {
|
||||
f32 rand = random() * (1.0f / U32_MAX);
|
||||
spe4[j] = (rand * var8007f8a8 + rand * var8007f8a8 - var8007f8a8) * 0.017453292384744f;
|
||||
}
|
||||
|
||||
func0001648c(spe4, spa4);
|
||||
func00015b14(spa4, spfc, &splat->unk028);
|
||||
func00015b14(spa4, spf0, &splat->unk00c);
|
||||
func0f177164(&splat->unk028, &splat->unk028, 403, "splat.c");
|
||||
func0f177164(&splat->unk00c, &splat->unk00c, 404, "splat.c");
|
||||
|
||||
if (func0f149274(arg1, prop, splat, dist, arg6, arg7, arg8, arg9, arg10)) {
|
||||
numdropped++;
|
||||
}
|
||||
}
|
||||
|
||||
if (numdropped) {
|
||||
struct chrdata *chr = prop->chr;
|
||||
|
||||
chr->tickssincesplat = 0;
|
||||
chr->lastdroppos.x = prop->pos.x;
|
||||
chr->lastdroppos.y = prop->pos.y;
|
||||
chr->lastdroppos.z = prop->pos.z;
|
||||
}
|
||||
|
||||
return numdropped;
|
||||
}
|
||||
|
||||
const char var7f1b5fe0[] = "Splat : Out of range\n";
|
||||
const char var7f1b5ff8[] = "Splat_ResetChr : Reset One Char : chrdata = %x\n";
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f148f18
|
||||
glabel func0f149274
|
||||
.late_rodata
|
||||
glabel var7f1b6028
|
||||
.word 0x3f333333
|
||||
glabel var7f1b602c
|
||||
.word 0x3c8efa35
|
||||
glabel var7f1b6030
|
||||
.word 0x497423f0
|
||||
.text
|
||||
/* f148f18: 27bdfaa8 */ addiu $sp,$sp,-1368
|
||||
/* f148f1c: 8fae0574 */ lw $t6,0x574($sp)
|
||||
/* f148f20: f7ba0048 */ sdc1 $f26,0x48($sp)
|
||||
/* f148f24: 4485d000 */ mtc1 $a1,$f26
|
||||
/* f148f28: afbf0074 */ sw $ra,0x74($sp)
|
||||
/* f148f2c: afbe0070 */ sw $s8,0x70($sp)
|
||||
/* f148f30: afb7006c */ sw $s7,0x6c($sp)
|
||||
/* f148f34: afb60068 */ sw $s6,0x68($sp)
|
||||
/* f148f38: afb50064 */ sw $s5,0x64($sp)
|
||||
/* f148f3c: afb40060 */ sw $s4,0x60($sp)
|
||||
/* f148f40: afb3005c */ sw $s3,0x5c($sp)
|
||||
/* f148f44: afb20058 */ sw $s2,0x58($sp)
|
||||
/* f148f48: afb10054 */ sw $s1,0x54($sp)
|
||||
/* f148f4c: afb00050 */ sw $s0,0x50($sp)
|
||||
/* f148f50: f7b80040 */ sdc1 $f24,0x40($sp)
|
||||
/* f148f54: f7b60038 */ sdc1 $f22,0x38($sp)
|
||||
/* f148f58: f7b40030 */ sdc1 $f20,0x30($sp)
|
||||
/* f148f5c: 15c00003 */ bnez $t6,.L0f148f6c
|
||||
/* f148f60: afa40558 */ sw $a0,0x558($sp)
|
||||
/* f148f64: 10000002 */ b .L0f148f70
|
||||
/* f148f68: 00e0b825 */ or $s7,$a3,$zero
|
||||
.L0f148f6c:
|
||||
/* f148f6c: 27b7010c */ addiu $s7,$sp,0x10c
|
||||
.L0f148f70:
|
||||
/* f148f70: 8faf0574 */ lw $t7,0x574($sp)
|
||||
/* f148f74: 0000f025 */ or $s8,$zero,$zero
|
||||
/* f148f78: 8fb0056c */ lw $s0,0x56c($sp)
|
||||
/* f148f7c: 15e00029 */ bnez $t7,.L0f149024
|
||||
/* f148f80: 26e4001c */ addiu $a0,$s7,0x1c
|
||||
/* f148f84: 02002825 */ or $a1,$s0,$zero
|
||||
/* f148f88: 0fc5dd18 */ jal coordsGetDistance
|
||||
/* f148f8c: afa60560 */ sw $a2,0x560($sp)
|
||||
/* f148f90: 46000606 */ mov.s $f24,$f0
|
||||
/* f148f94: 27a400fc */ addiu $a0,$sp,0xfc
|
||||
/* f148f98: 02e01025 */ or $v0,$s7,$zero
|
||||
/* f148f9c: 27a300f0 */ addiu $v1,$sp,0xf0
|
||||
/* f148fa0: 02002825 */ or $a1,$s0,$zero
|
||||
/* f148fa4: 8fa60568 */ lw $a2,0x568($sp)
|
||||
/* f148fa8: 27a700fc */ addiu $a3,$sp,0xfc
|
||||
/* f148fac: 24630004 */ addiu $v1,$v1,0x4
|
||||
/* f148fb0: 1067000f */ beq $v1,$a3,.L0f148ff0
|
||||
/* f148fb4: c4560028 */ lwc1 $f22,0x28($v0)
|
||||
.L0f148fb8:
|
||||
/* f148fb8: e4960000 */ swc1 $f22,0x0($a0)
|
||||
/* f148fbc: c454000c */ lwc1 $f20,0xc($v0)
|
||||
/* f148fc0: 24630004 */ addiu $v1,$v1,0x4
|
||||
/* f148fc4: 24840004 */ addiu $a0,$a0,0x4
|
||||
/* f148fc8: e474fff8 */ swc1 $f20,-0x8($v1)
|
||||
/* f148fcc: c4b40000 */ lwc1 $f20,0x0($a1)
|
||||
/* f148fd0: c456002c */ lwc1 $f22,0x2c($v0)
|
||||
/* f148fd4: 24420004 */ addiu $v0,$v0,0x4
|
||||
/* f148fd8: e4540018 */ swc1 $f20,0x18($v0)
|
||||
/* f148fdc: c4d40000 */ lwc1 $f20,0x0($a2)
|
||||
/* f148fe0: 24a50004 */ addiu $a1,$a1,0x4
|
||||
/* f148fe4: 24c60004 */ addiu $a2,$a2,0x4
|
||||
/* f148fe8: 1467fff3 */ bne $v1,$a3,.L0f148fb8
|
||||
/* f148fec: e454fffc */ swc1 $f20,-0x4($v0)
|
||||
.L0f148ff0:
|
||||
/* f148ff0: e4960000 */ swc1 $f22,0x0($a0)
|
||||
/* f148ff4: c454000c */ lwc1 $f20,0xc($v0)
|
||||
/* f148ff8: 24840004 */ addiu $a0,$a0,0x4
|
||||
/* f148ffc: 24420004 */ addiu $v0,$v0,0x4
|
||||
/* f149000: e474fffc */ swc1 $f20,-0x4($v1)
|
||||
/* f149004: c4b40000 */ lwc1 $f20,0x0($a1)
|
||||
/* f149008: 24a50004 */ addiu $a1,$a1,0x4
|
||||
/* f14900c: 24c60004 */ addiu $a2,$a2,0x4
|
||||
/* f149010: e4540018 */ swc1 $f20,0x18($v0)
|
||||
/* f149014: c4d4fffc */ lwc1 $f20,-0x4($a2)
|
||||
/* f149018: e454fffc */ swc1 $f20,-0x4($v0)
|
||||
/* f14901c: 1000002c */ b .L0f1490d0
|
||||
/* f149020: 8fb90558 */ lw $t9,0x558($sp)
|
||||
.L0f149024:
|
||||
/* f149024: 90d80000 */ lbu $t8,0x0($a2)
|
||||
/* f149028: 24010003 */ addiu $at,$zero,0x3
|
||||
/* f14902c: 17010005 */ bne $t8,$at,.L0f149044
|
||||
/* f149030: 3c014248 */ lui $at,0x4248
|
||||
/* f149034: 44816000 */ mtc1 $at,$f12
|
||||
/* f149038: 44800000 */ mtc1 $zero,$f0
|
||||
/* f14903c: 10000005 */ b .L0f149054
|
||||
/* f149040: 3c01bf80 */ lui $at,0xbf80
|
||||
.L0f149044:
|
||||
/* f149044: 44800000 */ mtc1 $zero,$f0
|
||||
/* f149048: 00000000 */ nop
|
||||
/* f14904c: 46000306 */ mov.s $f12,$f0
|
||||
/* f149050: 3c01bf80 */ lui $at,0xbf80
|
||||
.L0f149054:
|
||||
/* f149054: 44811000 */ mtc1 $at,$f2
|
||||
/* f149058: 3c017f1b */ lui $at,%hi(var7f1b6028)
|
||||
/* f14905c: c4386028 */ lwc1 $f24,%lo(var7f1b6028)($at)
|
||||
/* f149060: e6e00028 */ swc1 $f0,0x28($s7)
|
||||
/* f149064: e7a000fc */ swc1 $f0,0xfc($sp)
|
||||
/* f149068: e6e2002c */ swc1 $f2,0x2c($s7)
|
||||
/* f14906c: e7a20100 */ swc1 $f2,0x100($sp)
|
||||
/* f149070: e6e00030 */ swc1 $f0,0x30($s7)
|
||||
/* f149074: e7a00104 */ swc1 $f0,0x104($sp)
|
||||
/* f149078: e6e0000c */ swc1 $f0,0xc($s7)
|
||||
/* f14907c: e7a000f0 */ swc1 $f0,0xf0($sp)
|
||||
/* f149080: e6e20010 */ swc1 $f2,0x10($s7)
|
||||
/* f149084: e7a200f4 */ swc1 $f2,0xf4($sp)
|
||||
/* f149088: e6e00014 */ swc1 $f0,0x14($s7)
|
||||
/* f14908c: e7a000f8 */ swc1 $f0,0xf8($sp)
|
||||
/* f149090: c4d00008 */ lwc1 $f16,0x8($a2)
|
||||
/* f149094: e6f0001c */ swc1 $f16,0x1c($s7)
|
||||
/* f149098: c4d2000c */ lwc1 $f18,0xc($a2)
|
||||
/* f14909c: 460c9100 */ add.s $f4,$f18,$f12
|
||||
/* f1490a0: e6e40020 */ swc1 $f4,0x20($s7)
|
||||
/* f1490a4: c4c60010 */ lwc1 $f6,0x10($a2)
|
||||
/* f1490a8: e6e60024 */ swc1 $f6,0x24($s7)
|
||||
/* f1490ac: c4c80008 */ lwc1 $f8,0x8($a2)
|
||||
/* f1490b0: e6e80000 */ swc1 $f8,0x0($s7)
|
||||
/* f1490b4: c4ca000c */ lwc1 $f10,0xc($a2)
|
||||
/* f1490b8: 460c5400 */ add.s $f16,$f10,$f12
|
||||
/* f1490bc: e6f00004 */ swc1 $f16,0x4($s7)
|
||||
/* f1490c0: c4d20010 */ lwc1 $f18,0x10($a2)
|
||||
/* f1490c4: e6f20008 */ swc1 $f18,0x8($s7)
|
||||
/* f1490c8: afa60560 */ sw $a2,0x560($sp)
|
||||
/* f1490cc: 8fb90558 */ lw $t9,0x558($sp)
|
||||
.L0f1490d0:
|
||||
/* f1490d0: 8fa60560 */ lw $a2,0x560($sp)
|
||||
/* f1490d4: 0000a025 */ or $s4,$zero,$zero
|
||||
/* f1490d8: 1b20004b */ blez $t9,.L0f149208
|
||||
/* f1490dc: 26f50028 */ addiu $s5,$s7,0x28
|
||||
/* f1490e0: 3c017f1b */ lui $at,%hi(var7f1b602c)
|
||||
/* f1490e4: c436602c */ lwc1 $f22,%lo(var7f1b602c)($at)
|
||||
/* f1490e8: 3c012f80 */ lui $at,0x2f80
|
||||
/* f1490ec: 3c118008 */ lui $s1,%hi(var8007f8a8)
|
||||
/* f1490f0: 4481a000 */ mtc1 $at,$f20
|
||||
/* f1490f4: 2631f8a8 */ addiu $s1,$s1,%lo(var8007f8a8)
|
||||
/* f1490f8: 26f6000c */ addiu $s6,$s7,0xc
|
||||
/* f1490fc: afa60560 */ sw $a2,0x560($sp)
|
||||
/* f149100: 27b300a4 */ addiu $s3,$sp,0xa4
|
||||
/* f149104: 27b200f0 */ addiu $s2,$sp,0xf0
|
||||
/* f149108: 27b000e4 */ addiu $s0,$sp,0xe4
|
||||
.L0f14910c:
|
||||
/* f14910c: 0c004b70 */ jal random
|
||||
/* f149110: 00000000 */ nop
|
||||
/* f149114: 44822000 */ mtc1 $v0,$f4
|
||||
/* f149118: c6200000 */ lwc1 $f0,0x0($s1)
|
||||
/* f14911c: 04410005 */ bgez $v0,.L0f149134
|
||||
/* f149120: 468021a0 */ cvt.s.w $f6,$f4
|
||||
/* f149124: 3c014f80 */ lui $at,0x4f80
|
||||
/* f149128: 44814000 */ mtc1 $at,$f8
|
||||
/* f14912c: 00000000 */ nop
|
||||
/* f149130: 46083180 */ add.s $f6,$f6,$f8
|
||||
.L0f149134:
|
||||
/* f149134: 46143282 */ mul.s $f10,$f6,$f20
|
||||
/* f149138: 26100004 */ addiu $s0,$s0,0x4
|
||||
/* f14913c: 46005082 */ mul.s $f2,$f10,$f0
|
||||
/* f149140: 46021400 */ add.s $f16,$f2,$f2
|
||||
/* f149144: 46008481 */ sub.s $f18,$f16,$f0
|
||||
/* f149148: 46169102 */ mul.s $f4,$f18,$f22
|
||||
/* f14914c: 1612ffef */ bne $s0,$s2,.L0f14910c
|
||||
/* f149150: e604fffc */ swc1 $f4,-0x4($s0)
|
||||
/* f149154: 27a400e4 */ addiu $a0,$sp,0xe4
|
||||
/* f149158: 0c005923 */ jal func0001648c
|
||||
/* f14915c: 02602825 */ or $a1,$s3,$zero
|
||||
/* f149160: 02602025 */ or $a0,$s3,$zero
|
||||
/* f149164: 27a500fc */ addiu $a1,$sp,0xfc
|
||||
/* f149168: 0c0056c5 */ jal func00015b14
|
||||
/* f14916c: 02a03025 */ or $a2,$s5,$zero
|
||||
/* f149170: 02602025 */ or $a0,$s3,$zero
|
||||
/* f149174: 27a500f0 */ addiu $a1,$sp,0xf0
|
||||
/* f149178: 0c0056c5 */ jal func00015b14
|
||||
/* f14917c: 02c03025 */ or $a2,$s6,$zero
|
||||
/* f149180: 3c077f1b */ lui $a3,%hi(var7f1b5fd0)
|
||||
/* f149184: 24e75fd0 */ addiu $a3,$a3,%lo(var7f1b5fd0)
|
||||
/* f149188: 02a02025 */ or $a0,$s5,$zero
|
||||
/* f14918c: 02a02825 */ or $a1,$s5,$zero
|
||||
/* f149190: 0fc5dc59 */ jal func0f177164
|
||||
/* f149194: 24060193 */ addiu $a2,$zero,0x193
|
||||
/* f149198: 3c077f1b */ lui $a3,%hi(var7f1b5fd8)
|
||||
/* f14919c: 24e75fd8 */ addiu $a3,$a3,%lo(var7f1b5fd8)
|
||||
/* f1491a0: 02c02025 */ or $a0,$s6,$zero
|
||||
/* f1491a4: 02c02825 */ or $a1,$s6,$zero
|
||||
/* f1491a8: 0fc5dc59 */ jal func0f177164
|
||||
/* f1491ac: 24060194 */ addiu $a2,$zero,0x194
|
||||
/* f1491b0: 8fa80570 */ lw $t0,0x570($sp)
|
||||
/* f1491b4: 8fa90574 */ lw $t1,0x574($sp)
|
||||
/* f1491b8: 8faa0578 */ lw $t2,0x578($sp)
|
||||
/* f1491bc: 8fab057c */ lw $t3,0x57c($sp)
|
||||
/* f1491c0: 8fac0580 */ lw $t4,0x580($sp)
|
||||
/* f1491c4: 4407c000 */ mfc1 $a3,$f24
|
||||
/* f1491c8: 4600d306 */ mov.s $f12,$f26
|
||||
/* f1491cc: 8fa50560 */ lw $a1,0x560($sp)
|
||||
/* f1491d0: 02e03025 */ or $a2,$s7,$zero
|
||||
/* f1491d4: afa80010 */ sw $t0,0x10($sp)
|
||||
/* f1491d8: afa90014 */ sw $t1,0x14($sp)
|
||||
/* f1491dc: afaa0018 */ sw $t2,0x18($sp)
|
||||
/* f1491e0: afab001c */ sw $t3,0x1c($sp)
|
||||
/* f1491e4: 0fc5249d */ jal func0f149274
|
||||
/* f1491e8: afac0020 */ sw $t4,0x20($sp)
|
||||
/* f1491ec: 10400002 */ beqz $v0,.L0f1491f8
|
||||
/* f1491f0: 8fad0558 */ lw $t5,0x558($sp)
|
||||
/* f1491f4: 27de0001 */ addiu $s8,$s8,0x1
|
||||
.L0f1491f8:
|
||||
/* f1491f8: 26940001 */ addiu $s4,$s4,0x1
|
||||
/* f1491fc: 568dffc3 */ bnel $s4,$t5,.L0f14910c
|
||||
/* f149200: 27b000e4 */ addiu $s0,$sp,0xe4
|
||||
/* f149204: 8fa60560 */ lw $a2,0x560($sp)
|
||||
.L0f149208:
|
||||
/* f149208: 53c0000a */ beqzl $s8,.L0f149234
|
||||
/* f14920c: 8fbf0074 */ lw $ra,0x74($sp)
|
||||
/* f149210: 8cc20004 */ lw $v0,0x4($a2)
|
||||
/* f149214: a4400336 */ sh $zero,0x336($v0)
|
||||
/* f149218: c4c80008 */ lwc1 $f8,0x8($a2)
|
||||
/* f14921c: e448033c */ swc1 $f8,0x33c($v0)
|
||||
/* f149220: c4c6000c */ lwc1 $f6,0xc($a2)
|
||||
/* f149224: e4460340 */ swc1 $f6,0x340($v0)
|
||||
/* f149228: c4ca0010 */ lwc1 $f10,0x10($a2)
|
||||
/* f14922c: e44a0344 */ swc1 $f10,0x344($v0)
|
||||
/* f149230: 8fbf0074 */ lw $ra,0x74($sp)
|
||||
.L0f149234:
|
||||
/* f149234: 03c01025 */ or $v0,$s8,$zero
|
||||
/* f149238: 8fbe0070 */ lw $s8,0x70($sp)
|
||||
/* f14923c: d7b40030 */ ldc1 $f20,0x30($sp)
|
||||
/* f149240: d7b60038 */ ldc1 $f22,0x38($sp)
|
||||
/* f149244: d7b80040 */ ldc1 $f24,0x40($sp)
|
||||
/* f149248: d7ba0048 */ ldc1 $f26,0x48($sp)
|
||||
/* f14924c: 8fb00050 */ lw $s0,0x50($sp)
|
||||
/* f149250: 8fb10054 */ lw $s1,0x54($sp)
|
||||
/* f149254: 8fb20058 */ lw $s2,0x58($sp)
|
||||
/* f149258: 8fb3005c */ lw $s3,0x5c($sp)
|
||||
/* f14925c: 8fb40060 */ lw $s4,0x60($sp)
|
||||
/* f149260: 8fb50064 */ lw $s5,0x64($sp)
|
||||
/* f149264: 8fb60068 */ lw $s6,0x68($sp)
|
||||
/* f149268: 8fb7006c */ lw $s7,0x6c($sp)
|
||||
/* f14926c: 03e00008 */ jr $ra
|
||||
/* f149270: 27bd0558 */ addiu $sp,$sp,0x558
|
||||
);
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f149274
|
||||
/* f149274: 27bdfa18 */ addiu $sp,$sp,-1512
|
||||
/* f149278: afbf001c */ sw $ra,0x1c($sp)
|
||||
/* f14927c: e7ac05e8 */ swc1 $f12,0x5e8($sp)
|
||||
|
||||
@@ -193,7 +193,7 @@ extern u32 var8007f870;
|
||||
extern u32 var8007f874;
|
||||
extern u32 var8007f878;
|
||||
extern u32 var8007f87c;
|
||||
extern u32 var8007f8a8;
|
||||
extern f32 var8007f8a8;
|
||||
extern u32 var8007f8dc;
|
||||
extern u32 var8007f8e8;
|
||||
extern u32 var8007f8ec;
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
#include "types.h"
|
||||
|
||||
void splatTick(struct prop *prop);
|
||||
void func0f148e54(struct prop *prop, s32 arg1, s32 arg2, s32 arg3, s32 arg4, s32 arg5, s32 arg6);
|
||||
s32 func0f148f18(s32 arg0, f32 arg1, struct prop *prop, s32 arg3, s32 arg4, s32 arg5, s32 arg6, s32 arg7, s32 arg8, s32 arg9, s32 arg10);
|
||||
u32 func0f149274(void);
|
||||
void func0f148e54(struct prop *prop, struct splat *arg1, struct coord *arg2, struct coord *arg3, s32 arg4, s32 arg5, s32 arg6);
|
||||
s32 func0f148f18(s32 qty, f32 arg1, struct prop *prop, struct splat *arg3, struct coord *arg4, struct coord *arg5, s32 arg6, s32 arg7, s32 arg8, s32 arg9, s32 arg10);
|
||||
bool func0f149274(f32 arg0, struct prop *prop, struct splat *arg2, f32 arg3, s32 arg4, s32 arg5, s32 arg6, s32 arg7, s32 arg8);
|
||||
void func0f149864(void);
|
||||
u32 func0f14986c(void);
|
||||
void chrInitSplats(struct chrdata *chr);
|
||||
|
||||
@@ -7,7 +7,7 @@ void func000159b0(f32 *matrix);
|
||||
void func000159fc(f32 *matrix, f32 *arg1);
|
||||
void func00015a00(f32 *matrix, f32 *arg1, f32 *arg2);
|
||||
void func00015b10(f32 *matrix, struct coord *coord);
|
||||
void func00015b14(f32 *matrix, struct coord *coord, s32 arg2);
|
||||
void func00015b14(f32 *matrix, f32 *coord, struct coord *arg2);
|
||||
void func00015b64(f32 *arg0, struct coord *coord);
|
||||
void func00015b68(f32 *matrix, f32 *arg1, struct coord *arg2);
|
||||
void func00015be0(f32 *matrix1, f32 *matrix2);
|
||||
|
||||
@@ -12,7 +12,7 @@ u32 func00016248(void);
|
||||
void func000162e8(f32 arg0, f32 *matrix);
|
||||
void func00016374(f32 arg0, f32 *matrix);
|
||||
void func00016400(f32 arg0, f32 *matrix);
|
||||
u32 func0001648c(void);
|
||||
void func0001648c(f32 *matrix, f32 *arg1);
|
||||
u32 func000165d8(void);
|
||||
u32 func000166a4(void);
|
||||
u32 func000166dc(void);
|
||||
|
||||
@@ -6403,4 +6403,272 @@ struct var800ab718 {
|
||||
u32 unk10;
|
||||
};
|
||||
|
||||
struct splat {
|
||||
/*0x000*/ struct coord unk000;
|
||||
/*0x00c*/ struct coord unk00c;
|
||||
/*0x018*/ u32 unk018;
|
||||
/*0x01c*/ struct coord unk01c;
|
||||
/*0x028*/ struct coord unk028;
|
||||
/*0x034*/ u32 unk034;
|
||||
/*0x038*/ u32 unk038;
|
||||
/*0x03c*/ u32 unk03c;
|
||||
/*0x040*/ u32 unk040;
|
||||
/*0x044*/ u32 unk044;
|
||||
/*0x048*/ u32 unk048;
|
||||
/*0x04c*/ u32 unk04c;
|
||||
/*0x050*/ u32 unk050;
|
||||
/*0x054*/ u32 unk054;
|
||||
/*0x058*/ u32 unk058;
|
||||
/*0x05c*/ u32 unk05c;
|
||||
/*0x060*/ u32 unk060;
|
||||
/*0x064*/ u32 unk064;
|
||||
/*0x068*/ u32 unk068;
|
||||
/*0x06c*/ u32 unk06c;
|
||||
/*0x070*/ u32 unk070;
|
||||
/*0x074*/ u32 unk074;
|
||||
/*0x078*/ u32 unk078;
|
||||
/*0x07c*/ u32 unk07c;
|
||||
/*0x080*/ u32 unk080;
|
||||
/*0x084*/ u32 unk084;
|
||||
/*0x088*/ u32 unk088;
|
||||
/*0x08c*/ u32 unk08c;
|
||||
/*0x090*/ u32 unk090;
|
||||
/*0x094*/ u32 unk094;
|
||||
/*0x098*/ u32 unk098;
|
||||
/*0x09c*/ u32 unk09c;
|
||||
/*0x0a0*/ u32 unk0a0;
|
||||
/*0x0a4*/ u32 unk0a4;
|
||||
/*0x0a8*/ u32 unk0a8;
|
||||
/*0x0ac*/ u32 unk0ac;
|
||||
/*0x0b0*/ u32 unk0b0;
|
||||
/*0x0b4*/ u32 unk0b4;
|
||||
/*0x0b8*/ u32 unk0b8;
|
||||
/*0x0bc*/ u32 unk0bc;
|
||||
/*0x0c0*/ u32 unk0c0;
|
||||
/*0x0c4*/ u32 unk0c4;
|
||||
/*0x0c8*/ u32 unk0c8;
|
||||
/*0x0cc*/ u32 unk0cc;
|
||||
/*0x0d0*/ u32 unk0d0;
|
||||
/*0x0d4*/ u32 unk0d4;
|
||||
/*0x0d8*/ u32 unk0d8;
|
||||
/*0x0dc*/ u32 unk0dc;
|
||||
/*0x0e0*/ u32 unk0e0;
|
||||
/*0x0e4*/ u32 unk0e4;
|
||||
/*0x0e8*/ u32 unk0e8;
|
||||
/*0x0ec*/ u32 unk0ec;
|
||||
/*0x0f0*/ u32 unk0f0;
|
||||
/*0x0f4*/ u32 unk0f4;
|
||||
/*0x0f8*/ u32 unk0f8;
|
||||
/*0x0fc*/ u32 unk0fc;
|
||||
/*0x100*/ u32 unk100;
|
||||
/*0x104*/ u32 unk104;
|
||||
/*0x108*/ u32 unk108;
|
||||
/*0x10c*/ u32 unk10c;
|
||||
/*0x110*/ u32 unk110;
|
||||
/*0x114*/ u32 unk114;
|
||||
/*0x118*/ u32 unk118;
|
||||
/*0x11c*/ u32 unk11c;
|
||||
/*0x120*/ u32 unk120;
|
||||
/*0x124*/ u32 unk124;
|
||||
/*0x128*/ u32 unk128;
|
||||
/*0x12c*/ u32 unk12c;
|
||||
/*0x130*/ u32 unk130;
|
||||
/*0x134*/ u32 unk134;
|
||||
/*0x138*/ u32 unk138;
|
||||
/*0x13c*/ u32 unk13c;
|
||||
/*0x140*/ u32 unk140;
|
||||
/*0x144*/ u32 unk144;
|
||||
/*0x148*/ u32 unk148;
|
||||
/*0x14c*/ u32 unk14c;
|
||||
/*0x150*/ u32 unk150;
|
||||
/*0x154*/ u32 unk154;
|
||||
/*0x158*/ u32 unk158;
|
||||
/*0x15c*/ u32 unk15c;
|
||||
/*0x160*/ u32 unk160;
|
||||
/*0x164*/ u32 unk164;
|
||||
/*0x168*/ u32 unk168;
|
||||
/*0x16c*/ u32 unk16c;
|
||||
/*0x170*/ u32 unk170;
|
||||
/*0x174*/ u32 unk174;
|
||||
/*0x178*/ u32 unk178;
|
||||
/*0x17c*/ u32 unk17c;
|
||||
/*0x180*/ u32 unk180;
|
||||
/*0x184*/ u32 unk184;
|
||||
/*0x188*/ u32 unk188;
|
||||
/*0x18c*/ u32 unk18c;
|
||||
/*0x190*/ u32 unk190;
|
||||
/*0x194*/ u32 unk194;
|
||||
/*0x198*/ u32 unk198;
|
||||
/*0x19c*/ u32 unk19c;
|
||||
/*0x1a0*/ u32 unk1a0;
|
||||
/*0x1a4*/ u32 unk1a4;
|
||||
/*0x1a8*/ u32 unk1a8;
|
||||
/*0x1ac*/ u32 unk1ac;
|
||||
/*0x1b0*/ u32 unk1b0;
|
||||
/*0x1b4*/ u32 unk1b4;
|
||||
/*0x1b8*/ u32 unk1b8;
|
||||
/*0x1bc*/ u32 unk1bc;
|
||||
/*0x1c0*/ u32 unk1c0;
|
||||
/*0x1c4*/ u32 unk1c4;
|
||||
/*0x1c8*/ u32 unk1c8;
|
||||
/*0x1cc*/ u32 unk1cc;
|
||||
/*0x1d0*/ u32 unk1d0;
|
||||
/*0x1d4*/ u32 unk1d4;
|
||||
/*0x1d8*/ u32 unk1d8;
|
||||
/*0x1dc*/ u32 unk1dc;
|
||||
/*0x1e0*/ u32 unk1e0;
|
||||
/*0x1e4*/ u32 unk1e4;
|
||||
/*0x1e8*/ u32 unk1e8;
|
||||
/*0x1ec*/ u32 unk1ec;
|
||||
/*0x1f0*/ u32 unk1f0;
|
||||
/*0x1f4*/ u32 unk1f4;
|
||||
/*0x1f8*/ u32 unk1f8;
|
||||
/*0x1fc*/ u32 unk1fc;
|
||||
/*0x200*/ u32 unk200;
|
||||
/*0x204*/ u32 unk204;
|
||||
/*0x208*/ u32 unk208;
|
||||
/*0x20c*/ u32 unk20c;
|
||||
/*0x210*/ u32 unk210;
|
||||
/*0x214*/ u32 unk214;
|
||||
/*0x218*/ u32 unk218;
|
||||
/*0x21c*/ u32 unk21c;
|
||||
/*0x220*/ u32 unk220;
|
||||
/*0x224*/ u32 unk224;
|
||||
/*0x228*/ u32 unk228;
|
||||
/*0x22c*/ u32 unk22c;
|
||||
/*0x230*/ u32 unk230;
|
||||
/*0x234*/ u32 unk234;
|
||||
/*0x238*/ u32 unk238;
|
||||
/*0x23c*/ u32 unk23c;
|
||||
/*0x240*/ u32 unk240;
|
||||
/*0x244*/ u32 unk244;
|
||||
/*0x248*/ u32 unk248;
|
||||
/*0x24c*/ u32 unk24c;
|
||||
/*0x250*/ u32 unk250;
|
||||
/*0x254*/ u32 unk254;
|
||||
/*0x258*/ u32 unk258;
|
||||
/*0x25c*/ u32 unk25c;
|
||||
/*0x260*/ u32 unk260;
|
||||
/*0x264*/ u32 unk264;
|
||||
/*0x268*/ u32 unk268;
|
||||
/*0x26c*/ u32 unk26c;
|
||||
/*0x270*/ u32 unk270;
|
||||
/*0x274*/ u32 unk274;
|
||||
/*0x278*/ u32 unk278;
|
||||
/*0x27c*/ u32 unk27c;
|
||||
/*0x280*/ u32 unk280;
|
||||
/*0x284*/ u32 unk284;
|
||||
/*0x288*/ u32 unk288;
|
||||
/*0x28c*/ u32 unk28c;
|
||||
/*0x290*/ u32 unk290;
|
||||
/*0x294*/ u32 unk294;
|
||||
/*0x298*/ u32 unk298;
|
||||
/*0x29c*/ u32 unk29c;
|
||||
/*0x2a0*/ u32 unk2a0;
|
||||
/*0x2a4*/ u32 unk2a4;
|
||||
/*0x2a8*/ u32 unk2a8;
|
||||
/*0x2ac*/ u32 unk2ac;
|
||||
/*0x2b0*/ u32 unk2b0;
|
||||
/*0x2b4*/ u32 unk2b4;
|
||||
/*0x2b8*/ u32 unk2b8;
|
||||
/*0x2bc*/ u32 unk2bc;
|
||||
/*0x2c0*/ u32 unk2c0;
|
||||
/*0x2c4*/ u32 unk2c4;
|
||||
/*0x2c8*/ u32 unk2c8;
|
||||
/*0x2cc*/ u32 unk2cc;
|
||||
/*0x2d0*/ u32 unk2d0;
|
||||
/*0x2d4*/ u32 unk2d4;
|
||||
/*0x2d8*/ u32 unk2d8;
|
||||
/*0x2dc*/ u32 unk2dc;
|
||||
/*0x2e0*/ u32 unk2e0;
|
||||
/*0x2e4*/ u32 unk2e4;
|
||||
/*0x2e8*/ u32 unk2e8;
|
||||
/*0x2ec*/ u32 unk2ec;
|
||||
/*0x2f0*/ u32 unk2f0;
|
||||
/*0x2f4*/ u32 unk2f4;
|
||||
/*0x2f8*/ u32 unk2f8;
|
||||
/*0x2fc*/ u32 unk2fc;
|
||||
/*0x300*/ u32 unk300;
|
||||
/*0x304*/ u32 unk304;
|
||||
/*0x308*/ u32 unk308;
|
||||
/*0x30c*/ u32 unk30c;
|
||||
/*0x310*/ u32 unk310;
|
||||
/*0x314*/ u32 unk314;
|
||||
/*0x318*/ u32 unk318;
|
||||
/*0x31c*/ u32 unk31c;
|
||||
/*0x320*/ u32 unk320;
|
||||
/*0x324*/ u32 unk324;
|
||||
/*0x328*/ u32 unk328;
|
||||
/*0x32c*/ u32 unk32c;
|
||||
/*0x330*/ u32 unk330;
|
||||
/*0x334*/ u32 unk334;
|
||||
/*0x338*/ u32 unk338;
|
||||
/*0x33c*/ u32 unk33c;
|
||||
/*0x340*/ u32 unk340;
|
||||
/*0x344*/ u32 unk344;
|
||||
/*0x348*/ u32 unk348;
|
||||
/*0x34c*/ u32 unk34c;
|
||||
/*0x350*/ u32 unk350;
|
||||
/*0x354*/ u32 unk354;
|
||||
/*0x358*/ u32 unk358;
|
||||
/*0x35c*/ u32 unk35c;
|
||||
/*0x360*/ u32 unk360;
|
||||
/*0x364*/ u32 unk364;
|
||||
/*0x368*/ u32 unk368;
|
||||
/*0x36c*/ u32 unk36c;
|
||||
/*0x370*/ u32 unk370;
|
||||
/*0x374*/ u32 unk374;
|
||||
/*0x378*/ u32 unk378;
|
||||
/*0x37c*/ u32 unk37c;
|
||||
/*0x380*/ u32 unk380;
|
||||
/*0x384*/ u32 unk384;
|
||||
/*0x388*/ u32 unk388;
|
||||
/*0x38c*/ u32 unk38c;
|
||||
/*0x390*/ u32 unk390;
|
||||
/*0x394*/ u32 unk394;
|
||||
/*0x398*/ u32 unk398;
|
||||
/*0x39c*/ u32 unk39c;
|
||||
/*0x3a0*/ u32 unk3a0;
|
||||
/*0x3a4*/ u32 unk3a4;
|
||||
/*0x3a8*/ u32 unk3a8;
|
||||
/*0x3ac*/ u32 unk3ac;
|
||||
/*0x3b0*/ u32 unk3b0;
|
||||
/*0x3b4*/ u32 unk3b4;
|
||||
/*0x3b8*/ u32 unk3b8;
|
||||
/*0x3bc*/ u32 unk3bc;
|
||||
/*0x3c0*/ u32 unk3c0;
|
||||
/*0x3c4*/ u32 unk3c4;
|
||||
/*0x3c8*/ u32 unk3c8;
|
||||
/*0x3cc*/ u32 unk3cc;
|
||||
/*0x3d0*/ u32 unk3d0;
|
||||
/*0x3d4*/ u32 unk3d4;
|
||||
/*0x3d8*/ u32 unk3d8;
|
||||
/*0x3dc*/ u32 unk3dc;
|
||||
/*0x3e0*/ u32 unk3e0;
|
||||
/*0x3e4*/ u32 unk3e4;
|
||||
/*0x3e8*/ u32 unk3e8;
|
||||
/*0x3ec*/ u32 unk3ec;
|
||||
/*0x3f0*/ u32 unk3f0;
|
||||
/*0x3f4*/ u32 unk3f4;
|
||||
/*0x3f8*/ u32 unk3f8;
|
||||
/*0x3fc*/ u32 unk3fc;
|
||||
/*0x400*/ u32 unk400;
|
||||
/*0x404*/ u32 unk404;
|
||||
/*0x408*/ u32 unk408;
|
||||
/*0x40c*/ u32 unk40c;
|
||||
/*0x410*/ u32 unk410;
|
||||
/*0x414*/ u32 unk414;
|
||||
/*0x418*/ u32 unk418;
|
||||
/*0x41c*/ u32 unk41c;
|
||||
/*0x420*/ u32 unk420;
|
||||
/*0x424*/ u32 unk424;
|
||||
/*0x428*/ u32 unk428;
|
||||
/*0x42c*/ u32 unk42c;
|
||||
/*0x430*/ u32 unk430;
|
||||
/*0x434*/ u32 unk434;
|
||||
/*0x438*/ u32 unk438;
|
||||
/*0x43c*/ u32 unk43c;
|
||||
/*0x440*/ u32 unk440;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user