mirror of
https://gitlab.com/ryandwyer/perfect-dark
synced 2026-08-02 08:22:08 -04:00
Decompile objApplyMomentum
This commit is contained in:
+14
-13
@@ -71,17 +71,17 @@ void bbikeExit(void)
|
||||
{
|
||||
struct defaultobj *obj = g_Vars.currentplayer->hoverbike->obj;
|
||||
struct hoverbikeobj *bikeobj = (struct hoverbikeobj *)g_Vars.currentplayer->hoverbike->obj;
|
||||
struct coord coord;
|
||||
f32 w;
|
||||
struct coord speed;
|
||||
f32 rotation;
|
||||
|
||||
obj->hidden &= ~OBJHFLAG_MOUNTED;
|
||||
|
||||
coord.x = bikeobj->speed[0];
|
||||
coord.y = 0;
|
||||
coord.z = bikeobj->speed[1];
|
||||
w = bikeobj->w;
|
||||
speed.x = bikeobj->speed[0];
|
||||
speed.y = 0;
|
||||
speed.z = bikeobj->speed[1];
|
||||
rotation = bikeobj->w;
|
||||
|
||||
func0f082a1c(obj, &coord, w, 0, 0);
|
||||
objApplyMomentum(obj, &speed, rotation, false, false);
|
||||
func0f0926bc(g_Vars.currentplayer->hoverbike, 1, 0xffff);
|
||||
func0f0926bc(g_Vars.currentplayer->prop, 1, 0xffff);
|
||||
func0f0939f8(NULL, g_Vars.currentplayer->hoverbike, SFX_BIKE_PULSE, -1,
|
||||
@@ -1028,8 +1028,8 @@ void bbike0f0d2b40(struct defaultobj *bike, struct coord *arg1, f32 arg2, struct
|
||||
if (arg2) {
|
||||
f32 xdiff = sp9c.x - bike->prop->pos.x;
|
||||
f32 zdiff = sp9c.z - bike->prop->pos.z;
|
||||
f32 somefloat = 0;
|
||||
struct coord sp3c = {0, 0, 0};
|
||||
f32 rotation = 0;
|
||||
struct coord speed = {0, 0, 0};
|
||||
|
||||
f32 tmp = 1 / sqrtf(xdiff * xdiff + zdiff * zdiff);
|
||||
|
||||
@@ -1038,11 +1038,12 @@ void bbike0f0d2b40(struct defaultobj *bike, struct coord *arg1, f32 arg2, struct
|
||||
|
||||
arg2 = arg2 / g_Vars.lvupdate240freal;
|
||||
|
||||
sp3c.x += -zdiff * arg2 * 40;
|
||||
sp3c.z += xdiff * arg2 * 40;
|
||||
somefloat += arg2 * 0.1f;
|
||||
speed.x += -zdiff * arg2 * 40;
|
||||
speed.z += xdiff * arg2 * 40;
|
||||
|
||||
func0f082a1c(obstacle, &sp3c, somefloat, true, true);
|
||||
rotation += arg2 * 0.1f;
|
||||
|
||||
objApplyMomentum(obstacle, &speed, rotation, true, true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -173,7 +173,7 @@ void bgrabExit(void)
|
||||
|
||||
rotateamount /= g_Vars.lvupdate240freal;
|
||||
|
||||
func0f082a1c(g_Vars.currentplayer->grabbedprop->obj, &moveamount,
|
||||
objApplyMomentum(g_Vars.currentplayer->grabbedprop->obj, &moveamount,
|
||||
rotateamount, 0, 0);
|
||||
}
|
||||
|
||||
@@ -476,7 +476,7 @@ glabel var7f1ad990
|
||||
/* f0cd038: e7a80034 */ swc1 $f8,0x34($sp)
|
||||
/* f0cd03c: 46049400 */ add.s $f16,$f18,$f4
|
||||
/* f0cd040: 44068000 */ mfc1 $a2,$f16
|
||||
/* f0cd044: 0fc20a87 */ jal func0f082a1c
|
||||
/* f0cd044: 0fc20a87 */ jal objApplyMomentum
|
||||
/* f0cd048: 00000000 */ nop
|
||||
.L0f0cd04c:
|
||||
/* f0cd04c: 8fbf001c */ lw $ra,0x1c($sp)
|
||||
@@ -780,7 +780,7 @@ glabel var7f1ad990
|
||||
/* f0cd038: e7a80034 */ swc1 $f8,0x34($sp)
|
||||
/* f0cd03c: 46049400 */ add.s $f16,$f18,$f4
|
||||
/* f0cd040: 44068000 */ mfc1 $a2,$f16
|
||||
/* f0cd044: 0fc20a87 */ jal func0f082a1c
|
||||
/* f0cd044: 0fc20a87 */ jal objApplyMomentum
|
||||
/* f0cd048: 00000000 */ nop
|
||||
.L0f0cd04c:
|
||||
/* f0cd04c: 8fbf001c */ lw $ra,0x1c($sp)
|
||||
|
||||
@@ -873,7 +873,7 @@ void explosionInflictDamage(struct prop *expprop)
|
||||
}
|
||||
}
|
||||
|
||||
func0f082a1c(obj, &spf4, 0.0f, 1, 1);
|
||||
objApplyMomentum(obj, &spf4, 0.0f, true, true);
|
||||
}
|
||||
} else if (objIsHealthy(obj)) {
|
||||
// Sustained damage
|
||||
|
||||
+95
-598
@@ -20955,7 +20955,7 @@ glabel var7f1aa320
|
||||
/* f0728c0: 460c2182 */ mul.s $f6,$f4,$f12
|
||||
/* f0728c4: afaf0010 */ sw $t7,0x10($sp)
|
||||
/* f0728c8: 46003203 */ div.s $f8,$f6,$f0
|
||||
/* f0728cc: 0fc20a87 */ jal func0f082a1c
|
||||
/* f0728cc: 0fc20a87 */ jal objApplyMomentum
|
||||
/* f0728d0: e7a80084 */ swc1 $f8,0x84($sp)
|
||||
/* f0728d4: 3c077f1b */ lui $a3,%hi(var7f1a9fac)
|
||||
/* f0728d8: 24e79fac */ addiu $a3,$a3,%lo(var7f1a9fac)
|
||||
@@ -21082,7 +21082,7 @@ glabel var7f1aa320
|
||||
/* f072ab4: 00000000 */ nop
|
||||
/* f072ab8: 46082400 */ add.s $f16,$f4,$f8
|
||||
/* f072abc: 44068000 */ mfc1 $a2,$f16
|
||||
/* f072ac0: 0fc20a87 */ jal func0f082a1c
|
||||
/* f072ac0: 0fc20a87 */ jal objApplyMomentum
|
||||
/* f072ac4: 00000000 */ nop
|
||||
.L0f072ac8:
|
||||
/* f072ac8: 8fbf0024 */ lw $ra,0x24($sp)
|
||||
@@ -21161,7 +21161,7 @@ glabel var7f1aa320
|
||||
/* f072a94: 460c2182 */ mul.s $f6,$f4,$f12
|
||||
/* f072a98: afaf0010 */ sw $t7,0x10($sp)
|
||||
/* f072a9c: 46003203 */ div.s $f8,$f6,$f0
|
||||
/* f072aa0: 0fc20aef */ jal func0f082a1c
|
||||
/* f072aa0: 0fc20aef */ jal objApplyMomentum
|
||||
/* f072aa4: e7a80084 */ swc1 $f8,0x84($sp)
|
||||
/* f072aa8: 3c077f1b */ lui $a3,0x7f1b
|
||||
/* f072aac: 24e7bca0 */ addiu $a3,$a3,-17248
|
||||
@@ -21288,7 +21288,7 @@ glabel var7f1aa320
|
||||
/* f072c88: 00000000 */ nop
|
||||
/* f072c8c: 46082400 */ add.s $f16,$f4,$f8
|
||||
/* f072c90: 44068000 */ mfc1 $a2,$f16
|
||||
/* f072c94: 0fc20aef */ jal func0f082a1c
|
||||
/* f072c94: 0fc20aef */ jal objApplyMomentum
|
||||
/* f072c98: 00000000 */ nop
|
||||
.PB0f072c9c:
|
||||
/* f072c9c: 8fbf0024 */ lw $ra,0x24($sp)
|
||||
@@ -21367,7 +21367,7 @@ glabel var7f1aa320
|
||||
/* f0728c0: 460c2182 */ mul.s $f6,$f4,$f12
|
||||
/* f0728c4: afaf0010 */ sw $t7,0x10($sp)
|
||||
/* f0728c8: 46003203 */ div.s $f8,$f6,$f0
|
||||
/* f0728cc: 0fc20a87 */ jal func0f082a1c
|
||||
/* f0728cc: 0fc20a87 */ jal objApplyMomentum
|
||||
/* f0728d0: e7a80084 */ swc1 $f8,0x84($sp)
|
||||
/* f0728d4: 3c077f1b */ lui $a3,%hi(var7f1a9fac)
|
||||
/* f0728d8: 24e79fac */ addiu $a3,$a3,%lo(var7f1a9fac)
|
||||
@@ -21494,7 +21494,7 @@ glabel var7f1aa320
|
||||
/* f072ab4: 00000000 */ nop
|
||||
/* f072ab8: 46082400 */ add.s $f16,$f4,$f8
|
||||
/* f072abc: 44068000 */ mfc1 $a2,$f16
|
||||
/* f072ac0: 0fc20a87 */ jal func0f082a1c
|
||||
/* f072ac0: 0fc20a87 */ jal objApplyMomentum
|
||||
/* f072ac4: 00000000 */ nop
|
||||
.L0f072ac8:
|
||||
/* f072ac8: 8fbf0024 */ lw $ra,0x24($sp)
|
||||
@@ -21573,7 +21573,7 @@ glabel var7f1aa320
|
||||
/* f0728c0: 460c2182 */ mul.s $f6,$f4,$f12
|
||||
/* f0728c4: afaf0010 */ sw $t7,0x10($sp)
|
||||
/* f0728c8: 46003203 */ div.s $f8,$f6,$f0
|
||||
/* f0728cc: 0fc20a87 */ jal func0f082a1c
|
||||
/* f0728cc: 0fc20a87 */ jal objApplyMomentum
|
||||
/* f0728d0: e7a80084 */ swc1 $f8,0x84($sp)
|
||||
/* f0728d4: 3c077f1b */ lui $a3,%hi(var7f1a9fac)
|
||||
/* f0728d8: 24e79fac */ addiu $a3,$a3,%lo(var7f1a9fac)
|
||||
@@ -21700,7 +21700,7 @@ glabel var7f1aa320
|
||||
/* f072ab4: 00000000 */ nop
|
||||
/* f072ab8: 46082400 */ add.s $f16,$f4,$f8
|
||||
/* f072abc: 44068000 */ mfc1 $a2,$f16
|
||||
/* f072ac0: 0fc20a87 */ jal func0f082a1c
|
||||
/* f072ac0: 0fc20a87 */ jal objApplyMomentum
|
||||
/* f072ac4: 00000000 */ nop
|
||||
.L0f072ac8:
|
||||
/* f072ac8: 8fbf0024 */ lw $ra,0x24($sp)
|
||||
@@ -65490,591 +65490,88 @@ void objSetDropped(struct prop *prop, u32 droptype)
|
||||
}
|
||||
}
|
||||
|
||||
#if PAL
|
||||
GLOBAL_ASM(
|
||||
glabel func0f082a1c
|
||||
.late_rodata
|
||||
glabel var7f1aa860
|
||||
.word 0x3f4ccccd
|
||||
glabel var7f1aa864
|
||||
.word 0x3b360b61
|
||||
glabel var7f1aa868
|
||||
.word 0x382fa9a2
|
||||
glabel var7f1aa86c
|
||||
.word 0x3f781062
|
||||
glabel var7f1aa870
|
||||
.word 0x3da0d2ee
|
||||
glabel var7f1aa874
|
||||
.word 0x40d55555
|
||||
glabel var7f1aa878
|
||||
.word 0x3c638e39
|
||||
glabel var7f1aa87c
|
||||
.word 0x395b940a
|
||||
glabel var7f1aa880
|
||||
.word 0x3f73f7cf
|
||||
glabel var7f1aa884
|
||||
.word 0x3da0d2ee
|
||||
glabel var7f1aa888
|
||||
.word 0x40d55555
|
||||
glabel var7f1aa88c
|
||||
.word 0x3dcccccd
|
||||
glabel var7f1aa890
|
||||
.word 0x3d638e39
|
||||
glabel var7f1aa894
|
||||
.word 0x3a5b940a
|
||||
glabel var7f1aa898
|
||||
.word 0x3f73f7cf
|
||||
glabel var7f1aa89c
|
||||
.word 0x3c20d2ee
|
||||
glabel var7f1aa8a0
|
||||
.word 0x3f555555
|
||||
glabel var7f1aa8a4
|
||||
.word 0x3dcccccd
|
||||
glabel var7f1aa8a8
|
||||
.word 0x3d638e39
|
||||
glabel var7f1aa8ac
|
||||
.word 0x3a5b940a
|
||||
glabel var7f1aa8b0
|
||||
.word 0x3f73f7cf
|
||||
glabel var7f1aa8b4
|
||||
.word 0x3ca0d2ee
|
||||
glabel var7f1aa8b8
|
||||
.word 0x3f555555
|
||||
glabel var7f1aa8bc
|
||||
.word 0x3dcccccd
|
||||
glabel var7f1aa8c0
|
||||
.word 0x3d638e39
|
||||
glabel var7f1aa8c4
|
||||
.word 0x39db940a
|
||||
glabel var7f1aa8c8
|
||||
.word 0x3f73f7cf
|
||||
glabel var7f1aa8cc
|
||||
.word 0x3da0d2ee
|
||||
glabel var7f1aa8d0
|
||||
.word 0x3fd55555
|
||||
.text
|
||||
/* f082a1c: 27bdffd0 */ addiu $sp,$sp,-48
|
||||
/* f082a20: afa60038 */ sw $a2,0x38($sp)
|
||||
/* f082a24: 00803025 */ or $a2,$a0,$zero
|
||||
/* f082a28: afbf0014 */ sw $ra,0x14($sp)
|
||||
/* f082a2c: afa40030 */ sw $a0,0x30($sp)
|
||||
/* f082a30: afa7003c */ sw $a3,0x3c($sp)
|
||||
/* f082a34: 8c840014 */ lw $a0,0x14($a0)
|
||||
/* f082a38: afa60030 */ sw $a2,0x30($sp)
|
||||
/* f082a3c: afa50034 */ sw $a1,0x34($sp)
|
||||
/* f082a40: 0fc1a179 */ jal func0f0685e4
|
||||
/* f082a44: afa0002c */ sw $zero,0x2c($sp)
|
||||
/* f082a48: 8fa60030 */ lw $a2,0x30($sp)
|
||||
/* f082a4c: 8fa3002c */ lw $v1,0x2c($sp)
|
||||
/* f082a50: 8fa50034 */ lw $a1,0x34($sp)
|
||||
/* f082a54: 8cc20040 */ lw $v0,0x40($a2)
|
||||
/* f082a58: c7a00038 */ lwc1 $f0,0x38($sp)
|
||||
/* f082a5c: 304e0040 */ andi $t6,$v0,0x40
|
||||
/* f082a60: 11c00004 */ beqz $t6,.L0f082a74
|
||||
/* f082a64: 30580080 */ andi $t8,$v0,0x80
|
||||
/* f082a68: 8ccf0048 */ lw $t7,0x48($a2)
|
||||
/* f082a6c: 10000004 */ b .L0f082a80
|
||||
/* f082a70: 8de30044 */ lw $v1,0x44($t7)
|
||||
.L0f082a74:
|
||||
/* f082a74: 13000002 */ beqz $t8,.L0f082a80
|
||||
/* f082a78: 00000000 */ nop
|
||||
/* f082a7c: 8cc30048 */ lw $v1,0x48($a2)
|
||||
.L0f082a80:
|
||||
/* f082a80: 506000b9 */ beqzl $v1,.L0f082d68
|
||||
/* f082a84: 8fbf0014 */ lw $ra,0x14($sp)
|
||||
/* f082a88: 8c790000 */ lw $t9,0x0($v1)
|
||||
/* f082a8c: 37280800 */ ori $t0,$t9,0x800
|
||||
/* f082a90: ac680000 */ sw $t0,0x0($v1)
|
||||
/* f082a94: 8fa9003c */ lw $t1,0x3c($sp)
|
||||
/* f082a98: 5120000f */ beqzl $t1,.L0f082ad8
|
||||
/* f082a9c: c4aa0000 */ lwc1 $f10,0x0($a1)
|
||||
/* f082aa0: c4640004 */ lwc1 $f4,0x4($v1)
|
||||
/* f082aa4: c4a60000 */ lwc1 $f6,0x0($a1)
|
||||
/* f082aa8: c46a0008 */ lwc1 $f10,0x8($v1)
|
||||
/* f082aac: 46062200 */ add.s $f8,$f4,$f6
|
||||
/* f082ab0: c464000c */ lwc1 $f4,0xc($v1)
|
||||
/* f082ab4: e4680004 */ swc1 $f8,0x4($v1)
|
||||
/* f082ab8: c4b00004 */ lwc1 $f16,0x4($a1)
|
||||
/* f082abc: 46105480 */ add.s $f18,$f10,$f16
|
||||
/* f082ac0: e4720008 */ swc1 $f18,0x8($v1)
|
||||
/* f082ac4: c4a60008 */ lwc1 $f6,0x8($a1)
|
||||
/* f082ac8: 46062200 */ add.s $f8,$f4,$f6
|
||||
/* f082acc: 10000007 */ b .L0f082aec
|
||||
/* f082ad0: e468000c */ swc1 $f8,0xc($v1)
|
||||
/* f082ad4: c4aa0000 */ lwc1 $f10,0x0($a1)
|
||||
.L0f082ad8:
|
||||
/* f082ad8: e46a0004 */ swc1 $f10,0x4($v1)
|
||||
/* f082adc: c4b00004 */ lwc1 $f16,0x4($a1)
|
||||
/* f082ae0: e4700008 */ swc1 $f16,0x8($v1)
|
||||
/* f082ae4: c4b20008 */ lwc1 $f18,0x8($a1)
|
||||
/* f082ae8: e472000c */ swc1 $f18,0xc($v1)
|
||||
.L0f082aec:
|
||||
/* f082aec: 8faa0040 */ lw $t2,0x40($sp)
|
||||
/* f082af0: 51400006 */ beqzl $t2,.L0f082b0c
|
||||
/* f082af4: e46000dc */ swc1 $f0,0xdc($v1)
|
||||
/* f082af8: c46400dc */ lwc1 $f4,0xdc($v1)
|
||||
/* f082afc: 46002180 */ add.s $f6,$f4,$f0
|
||||
/* f082b00: 10000002 */ b .L0f082b0c
|
||||
/* f082b04: e46600dc */ swc1 $f6,0xdc($v1)
|
||||
/* f082b08: e46000dc */ swc1 $f0,0xdc($v1)
|
||||
.L0f082b0c:
|
||||
/* f082b0c: 90c20003 */ lbu $v0,0x3($a2)
|
||||
/* f082b10: 24010035 */ addiu $at,$zero,0x35
|
||||
/* f082b14: 10410003 */ beq $v0,$at,.L0f082b24
|
||||
/* f082b18: 24010033 */ addiu $at,$zero,0x33
|
||||
/* f082b1c: 1441002b */ bne $v0,$at,.L0f082bcc
|
||||
/* f082b20: 00c02025 */ or $a0,$a2,$zero
|
||||
.L0f082b24:
|
||||
/* f082b24: 8ccb0008 */ lw $t3,0x8($a2)
|
||||
/* f082b28: 3c013f00 */ lui $at,0x3f00
|
||||
/* f082b2c: 000b6080 */ sll $t4,$t3,0x2
|
||||
/* f082b30: 05830015 */ bgezl $t4,.L0f082b88
|
||||
/* f082b34: 44814000 */ mtc1 $at,$f8
|
||||
/* f082b38: 3c017f1b */ lui $at,%hi(var7f1aa860)
|
||||
/* f082b3c: c428a860 */ lwc1 $f8,%lo(var7f1aa860)($at)
|
||||
/* f082b40: 3c017f1b */ lui $at,%hi(var7f1aa864)
|
||||
/* f082b44: e468008c */ swc1 $f8,0x8c($v1)
|
||||
/* f082b48: c42aa864 */ lwc1 $f10,%lo(var7f1aa864)($at)
|
||||
/* f082b4c: 3c017f1b */ lui $at,%hi(var7f1aa868)
|
||||
/* f082b50: e46a0098 */ swc1 $f10,0x98($v1)
|
||||
/* f082b54: c430a868 */ lwc1 $f16,%lo(var7f1aa868)($at)
|
||||
/* f082b58: 3c017f1b */ lui $at,%hi(var7f1aa86c)
|
||||
/* f082b5c: e47000e0 */ swc1 $f16,0xe0($v1)
|
||||
/* f082b60: c432a86c */ lwc1 $f18,%lo(var7f1aa86c)($at)
|
||||
/* f082b64: 3c017f1b */ lui $at,%hi(var7f1aa870)
|
||||
/* f082b68: e47200e4 */ swc1 $f18,0xe4($v1)
|
||||
/* f082b6c: c424a870 */ lwc1 $f4,%lo(var7f1aa870)($at)
|
||||
/* f082b70: 3c017f1b */ lui $at,%hi(var7f1aa874)
|
||||
/* f082b74: e46400ec */ swc1 $f4,0xec($v1)
|
||||
/* f082b78: c426a874 */ lwc1 $f6,%lo(var7f1aa874)($at)
|
||||
/* f082b7c: 10000079 */ b .L0f082d64
|
||||
/* f082b80: e46600f0 */ swc1 $f6,0xf0($v1)
|
||||
/* f082b84: 44814000 */ mtc1 $at,$f8
|
||||
.L0f082b88:
|
||||
/* f082b88: 3c017f1b */ lui $at,%hi(var7f1aa878)
|
||||
/* f082b8c: e468008c */ swc1 $f8,0x8c($v1)
|
||||
/* f082b90: c42aa878 */ lwc1 $f10,%lo(var7f1aa878)($at)
|
||||
/* f082b94: 3c017f1b */ lui $at,%hi(var7f1aa87c)
|
||||
/* f082b98: e46a0098 */ swc1 $f10,0x98($v1)
|
||||
/* f082b9c: c430a87c */ lwc1 $f16,%lo(var7f1aa87c)($at)
|
||||
/* f082ba0: 3c017f1b */ lui $at,%hi(var7f1aa880)
|
||||
/* f082ba4: e47000e0 */ swc1 $f16,0xe0($v1)
|
||||
/* f082ba8: c432a880 */ lwc1 $f18,%lo(var7f1aa880)($at)
|
||||
/* f082bac: 3c017f1b */ lui $at,%hi(var7f1aa884)
|
||||
/* f082bb0: e47200e4 */ swc1 $f18,0xe4($v1)
|
||||
/* f082bb4: c424a884 */ lwc1 $f4,%lo(var7f1aa884)($at)
|
||||
/* f082bb8: 3c017f1b */ lui $at,%hi(var7f1aa888)
|
||||
/* f082bbc: e46400ec */ swc1 $f4,0xec($v1)
|
||||
/* f082bc0: c426a888 */ lwc1 $f6,%lo(var7f1aa888)($at)
|
||||
/* f082bc4: 10000067 */ b .L0f082d64
|
||||
/* f082bc8: e46600f0 */ swc1 $f6,0xf0($v1)
|
||||
.L0f082bcc:
|
||||
/* f082bcc: afa3002c */ sw $v1,0x2c($sp)
|
||||
/* f082bd0: 0fc1a2bd */ jal objFindBboxRodata
|
||||
/* f082bd4: afa60030 */ sw $a2,0x30($sp)
|
||||
/* f082bd8: 8fa60030 */ lw $a2,0x30($sp)
|
||||
/* f082bdc: afa20028 */ sw $v0,0x28($sp)
|
||||
/* f082be0: 00402025 */ or $a0,$v0,$zero
|
||||
/* f082be4: 24c5001c */ addiu $a1,$a2,0x1c
|
||||
/* f082be8: 0fc19a4b */ jal func0f06692c
|
||||
/* f082bec: afa50018 */ sw $a1,0x18($sp)
|
||||
/* f082bf0: e7a0001c */ swc1 $f0,0x1c($sp)
|
||||
/* f082bf4: 8fa40028 */ lw $a0,0x28($sp)
|
||||
/* f082bf8: 0fc19a3f */ jal func0f0668fc
|
||||
/* f082bfc: 8fa50018 */ lw $a1,0x18($sp)
|
||||
/* f082c00: c7a8001c */ lwc1 $f8,0x1c($sp)
|
||||
/* f082c04: 8fa40028 */ lw $a0,0x28($sp)
|
||||
/* f082c08: 8fa50018 */ lw $a1,0x18($sp)
|
||||
/* f082c0c: 46004281 */ sub.s $f10,$f8,$f0
|
||||
/* f082c10: 0fc19a7b */ jal func0f0669ec
|
||||
/* f082c14: e7aa0024 */ swc1 $f10,0x24($sp)
|
||||
/* f082c18: e7a0001c */ swc1 $f0,0x1c($sp)
|
||||
/* f082c1c: 8fa40028 */ lw $a0,0x28($sp)
|
||||
/* f082c20: 0fc19a6f */ jal func0f0669bc
|
||||
/* f082c24: 8fa50018 */ lw $a1,0x18($sp)
|
||||
/* f082c28: 3c014316 */ lui $at,0x4316
|
||||
/* f082c2c: 44816000 */ mtc1 $at,$f12
|
||||
/* f082c30: c7ae0024 */ lwc1 $f14,0x24($sp)
|
||||
/* f082c34: 8fa3002c */ lw $v1,0x2c($sp)
|
||||
/* f082c38: c7b0001c */ lwc1 $f16,0x1c($sp)
|
||||
/* f082c3c: 460e603c */ c.lt.s $f12,$f14
|
||||
/* f082c40: 3c017f1b */ lui $at,%hi(var7f1aa88c)
|
||||
/* f082c44: 45010006 */ bc1t .L0f082c60
|
||||
/* f082c48: 00000000 */ nop
|
||||
/* f082c4c: 46008081 */ sub.s $f2,$f16,$f0
|
||||
/* f082c50: 4602603c */ c.lt.s $f12,$f2
|
||||
/* f082c54: 00000000 */ nop
|
||||
/* f082c58: 45020014 */ bc1fl .L0f082cac
|
||||
/* f082c5c: 3c014296 */ lui $at,0x4296
|
||||
.L0f082c60:
|
||||
/* f082c60: c432a88c */ lwc1 $f18,%lo(var7f1aa88c)($at)
|
||||
/* f082c64: 3c017f1b */ lui $at,%hi(var7f1aa890)
|
||||
/* f082c68: e472008c */ swc1 $f18,0x8c($v1)
|
||||
/* f082c6c: c424a890 */ lwc1 $f4,%lo(var7f1aa890)($at)
|
||||
/* f082c70: 3c017f1b */ lui $at,%hi(var7f1aa894)
|
||||
/* f082c74: e4640098 */ swc1 $f4,0x98($v1)
|
||||
/* f082c78: c426a894 */ lwc1 $f6,%lo(var7f1aa894)($at)
|
||||
/* f082c7c: 3c017f1b */ lui $at,%hi(var7f1aa898)
|
||||
/* f082c80: e46600e0 */ swc1 $f6,0xe0($v1)
|
||||
/* f082c84: c428a898 */ lwc1 $f8,%lo(var7f1aa898)($at)
|
||||
/* f082c88: 3c017f1b */ lui $at,%hi(var7f1aa89c)
|
||||
/* f082c8c: e46800e4 */ swc1 $f8,0xe4($v1)
|
||||
/* f082c90: c42aa89c */ lwc1 $f10,%lo(var7f1aa89c)($at)
|
||||
/* f082c94: 3c017f1b */ lui $at,%hi(var7f1aa8a0)
|
||||
/* f082c98: e46a00ec */ swc1 $f10,0xec($v1)
|
||||
/* f082c9c: c430a8a0 */ lwc1 $f16,%lo(var7f1aa8a0)($at)
|
||||
/* f082ca0: 10000030 */ b .L0f082d64
|
||||
/* f082ca4: e47000f0 */ swc1 $f16,0xf0($v1)
|
||||
/* f082ca8: 3c014296 */ lui $at,0x4296
|
||||
.L0f082cac:
|
||||
/* f082cac: 44810000 */ mtc1 $at,$f0
|
||||
/* f082cb0: 3c017f1b */ lui $at,%hi(var7f1aa8a4)
|
||||
/* f082cb4: 460e003c */ c.lt.s $f0,$f14
|
||||
/* f082cb8: 00000000 */ nop
|
||||
/* f082cbc: 45010005 */ bc1t .L0f082cd4
|
||||
/* f082cc0: 00000000 */ nop
|
||||
/* f082cc4: 4602003c */ c.lt.s $f0,$f2
|
||||
/* f082cc8: 00000000 */ nop
|
||||
/* f082ccc: 45000013 */ bc1f .L0f082d1c
|
||||
/* f082cd0: 00000000 */ nop
|
||||
.L0f082cd4:
|
||||
/* f082cd4: c432a8a4 */ lwc1 $f18,%lo(var7f1aa8a4)($at)
|
||||
/* f082cd8: 3c017f1b */ lui $at,%hi(var7f1aa8a8)
|
||||
/* f082cdc: e472008c */ swc1 $f18,0x8c($v1)
|
||||
/* f082ce0: c424a8a8 */ lwc1 $f4,%lo(var7f1aa8a8)($at)
|
||||
/* f082ce4: 3c017f1b */ lui $at,%hi(var7f1aa8ac)
|
||||
/* f082ce8: e4640098 */ swc1 $f4,0x98($v1)
|
||||
/* f082cec: c426a8ac */ lwc1 $f6,%lo(var7f1aa8ac)($at)
|
||||
/* f082cf0: 3c017f1b */ lui $at,%hi(var7f1aa8b0)
|
||||
/* f082cf4: e46600e0 */ swc1 $f6,0xe0($v1)
|
||||
/* f082cf8: c428a8b0 */ lwc1 $f8,%lo(var7f1aa8b0)($at)
|
||||
/* f082cfc: 3c017f1b */ lui $at,%hi(var7f1aa8b4)
|
||||
/* f082d00: e46800e4 */ swc1 $f8,0xe4($v1)
|
||||
/* f082d04: c42aa8b4 */ lwc1 $f10,%lo(var7f1aa8b4)($at)
|
||||
/* f082d08: 3c017f1b */ lui $at,%hi(var7f1aa8b8)
|
||||
/* f082d0c: e46a00ec */ swc1 $f10,0xec($v1)
|
||||
/* f082d10: c430a8b8 */ lwc1 $f16,%lo(var7f1aa8b8)($at)
|
||||
/* f082d14: 10000013 */ b .L0f082d64
|
||||
/* f082d18: e47000f0 */ swc1 $f16,0xf0($v1)
|
||||
.L0f082d1c:
|
||||
/* f082d1c: 3c017f1b */ lui $at,%hi(var7f1aa8bc)
|
||||
/* f082d20: c432a8bc */ lwc1 $f18,%lo(var7f1aa8bc)($at)
|
||||
/* f082d24: 3c017f1b */ lui $at,%hi(var7f1aa8c0)
|
||||
/* f082d28: e472008c */ swc1 $f18,0x8c($v1)
|
||||
/* f082d2c: c424a8c0 */ lwc1 $f4,%lo(var7f1aa8c0)($at)
|
||||
/* f082d30: 3c017f1b */ lui $at,%hi(var7f1aa8c4)
|
||||
/* f082d34: e4640098 */ swc1 $f4,0x98($v1)
|
||||
/* f082d38: c426a8c4 */ lwc1 $f6,%lo(var7f1aa8c4)($at)
|
||||
/* f082d3c: 3c017f1b */ lui $at,%hi(var7f1aa8c8)
|
||||
/* f082d40: e46600e0 */ swc1 $f6,0xe0($v1)
|
||||
/* f082d44: c428a8c8 */ lwc1 $f8,%lo(var7f1aa8c8)($at)
|
||||
/* f082d48: 3c017f1b */ lui $at,%hi(var7f1aa8cc)
|
||||
/* f082d4c: e46800e4 */ swc1 $f8,0xe4($v1)
|
||||
/* f082d50: c42aa8cc */ lwc1 $f10,%lo(var7f1aa8cc)($at)
|
||||
/* f082d54: 3c017f1b */ lui $at,%hi(var7f1aa8d0)
|
||||
/* f082d58: e46a00ec */ swc1 $f10,0xec($v1)
|
||||
/* f082d5c: c430a8d0 */ lwc1 $f16,%lo(var7f1aa8d0)($at)
|
||||
/* f082d60: e47000f0 */ swc1 $f16,0xf0($v1)
|
||||
.L0f082d64:
|
||||
/* f082d64: 8fbf0014 */ lw $ra,0x14($sp)
|
||||
.L0f082d68:
|
||||
/* f082d68: 27bd0030 */ addiu $sp,$sp,0x30
|
||||
/* f082d6c: 03e00008 */ jr $ra
|
||||
/* f082d70: 00000000 */ nop
|
||||
);
|
||||
#else
|
||||
GLOBAL_ASM(
|
||||
glabel func0f082a1c
|
||||
.late_rodata
|
||||
glabel var7f1aa860
|
||||
.word 0x3f4ccccd
|
||||
glabel var7f1aa864
|
||||
.word 0x3b360b61
|
||||
glabel var7f1aa868
|
||||
.word 0x382fa9a2
|
||||
glabel var7f1aa86c
|
||||
.word 0x3f795810
|
||||
glabel var7f1aa870
|
||||
.word 0x3da0d2ee
|
||||
glabel var7f1aa874
|
||||
.word 0x40d55555
|
||||
glabel var7f1aa878
|
||||
.word 0x3c638e39
|
||||
glabel var7f1aa87c
|
||||
.word 0x395b940a
|
||||
glabel var7f1aa880
|
||||
.word 0x3f760419
|
||||
glabel var7f1aa884
|
||||
.word 0x3da0d2ee
|
||||
glabel var7f1aa888
|
||||
.word 0x40d55555
|
||||
glabel var7f1aa88c
|
||||
.word 0x3dcccccd
|
||||
glabel var7f1aa890
|
||||
.word 0x3d638e39
|
||||
glabel var7f1aa894
|
||||
.word 0x3a5b940a
|
||||
glabel var7f1aa898
|
||||
.word 0x3f760419
|
||||
glabel var7f1aa89c
|
||||
.word 0x3c20d2ee
|
||||
glabel var7f1aa8a0
|
||||
.word 0x3f555555
|
||||
glabel var7f1aa8a4
|
||||
.word 0x3dcccccd
|
||||
glabel var7f1aa8a8
|
||||
.word 0x3d638e39
|
||||
glabel var7f1aa8ac
|
||||
.word 0x3a5b940a
|
||||
glabel var7f1aa8b0
|
||||
.word 0x3f760419
|
||||
glabel var7f1aa8b4
|
||||
.word 0x3ca0d2ee
|
||||
glabel var7f1aa8b8
|
||||
.word 0x3f555555
|
||||
glabel var7f1aa8bc
|
||||
.word 0x3dcccccd
|
||||
glabel var7f1aa8c0
|
||||
.word 0x3d638e39
|
||||
glabel var7f1aa8c4
|
||||
.word 0x39db940a
|
||||
glabel var7f1aa8c8
|
||||
.word 0x3f760419
|
||||
glabel var7f1aa8cc
|
||||
.word 0x3da0d2ee
|
||||
glabel var7f1aa8d0
|
||||
.word 0x3fd55555
|
||||
.text
|
||||
/* f082a1c: 27bdffd0 */ addiu $sp,$sp,-48
|
||||
/* f082a20: afa60038 */ sw $a2,0x38($sp)
|
||||
/* f082a24: 00803025 */ or $a2,$a0,$zero
|
||||
/* f082a28: afbf0014 */ sw $ra,0x14($sp)
|
||||
/* f082a2c: afa40030 */ sw $a0,0x30($sp)
|
||||
/* f082a30: afa7003c */ sw $a3,0x3c($sp)
|
||||
/* f082a34: 8c840014 */ lw $a0,0x14($a0)
|
||||
/* f082a38: afa60030 */ sw $a2,0x30($sp)
|
||||
/* f082a3c: afa50034 */ sw $a1,0x34($sp)
|
||||
/* f082a40: 0fc1a179 */ jal func0f0685e4
|
||||
/* f082a44: afa0002c */ sw $zero,0x2c($sp)
|
||||
/* f082a48: 8fa60030 */ lw $a2,0x30($sp)
|
||||
/* f082a4c: 8fa3002c */ lw $v1,0x2c($sp)
|
||||
/* f082a50: 8fa50034 */ lw $a1,0x34($sp)
|
||||
/* f082a54: 8cc20040 */ lw $v0,0x40($a2)
|
||||
/* f082a58: c7a00038 */ lwc1 $f0,0x38($sp)
|
||||
/* f082a5c: 304e0040 */ andi $t6,$v0,0x40
|
||||
/* f082a60: 11c00004 */ beqz $t6,.L0f082a74
|
||||
/* f082a64: 30580080 */ andi $t8,$v0,0x80
|
||||
/* f082a68: 8ccf0048 */ lw $t7,0x48($a2)
|
||||
/* f082a6c: 10000004 */ b .L0f082a80
|
||||
/* f082a70: 8de30044 */ lw $v1,0x44($t7)
|
||||
.L0f082a74:
|
||||
/* f082a74: 13000002 */ beqz $t8,.L0f082a80
|
||||
/* f082a78: 00000000 */ nop
|
||||
/* f082a7c: 8cc30048 */ lw $v1,0x48($a2)
|
||||
.L0f082a80:
|
||||
/* f082a80: 506000b9 */ beqzl $v1,.L0f082d68
|
||||
/* f082a84: 8fbf0014 */ lw $ra,0x14($sp)
|
||||
/* f082a88: 8c790000 */ lw $t9,0x0($v1)
|
||||
/* f082a8c: 37280800 */ ori $t0,$t9,0x800
|
||||
/* f082a90: ac680000 */ sw $t0,0x0($v1)
|
||||
/* f082a94: 8fa9003c */ lw $t1,0x3c($sp)
|
||||
/* f082a98: 5120000f */ beqzl $t1,.L0f082ad8
|
||||
/* f082a9c: c4aa0000 */ lwc1 $f10,0x0($a1)
|
||||
/* f082aa0: c4640004 */ lwc1 $f4,0x4($v1)
|
||||
/* f082aa4: c4a60000 */ lwc1 $f6,0x0($a1)
|
||||
/* f082aa8: c46a0008 */ lwc1 $f10,0x8($v1)
|
||||
/* f082aac: 46062200 */ add.s $f8,$f4,$f6
|
||||
/* f082ab0: c464000c */ lwc1 $f4,0xc($v1)
|
||||
/* f082ab4: e4680004 */ swc1 $f8,0x4($v1)
|
||||
/* f082ab8: c4b00004 */ lwc1 $f16,0x4($a1)
|
||||
/* f082abc: 46105480 */ add.s $f18,$f10,$f16
|
||||
/* f082ac0: e4720008 */ swc1 $f18,0x8($v1)
|
||||
/* f082ac4: c4a60008 */ lwc1 $f6,0x8($a1)
|
||||
/* f082ac8: 46062200 */ add.s $f8,$f4,$f6
|
||||
/* f082acc: 10000007 */ b .L0f082aec
|
||||
/* f082ad0: e468000c */ swc1 $f8,0xc($v1)
|
||||
/* f082ad4: c4aa0000 */ lwc1 $f10,0x0($a1)
|
||||
.L0f082ad8:
|
||||
/* f082ad8: e46a0004 */ swc1 $f10,0x4($v1)
|
||||
/* f082adc: c4b00004 */ lwc1 $f16,0x4($a1)
|
||||
/* f082ae0: e4700008 */ swc1 $f16,0x8($v1)
|
||||
/* f082ae4: c4b20008 */ lwc1 $f18,0x8($a1)
|
||||
/* f082ae8: e472000c */ swc1 $f18,0xc($v1)
|
||||
.L0f082aec:
|
||||
/* f082aec: 8faa0040 */ lw $t2,0x40($sp)
|
||||
/* f082af0: 51400006 */ beqzl $t2,.L0f082b0c
|
||||
/* f082af4: e46000dc */ swc1 $f0,0xdc($v1)
|
||||
/* f082af8: c46400dc */ lwc1 $f4,0xdc($v1)
|
||||
/* f082afc: 46002180 */ add.s $f6,$f4,$f0
|
||||
/* f082b00: 10000002 */ b .L0f082b0c
|
||||
/* f082b04: e46600dc */ swc1 $f6,0xdc($v1)
|
||||
/* f082b08: e46000dc */ swc1 $f0,0xdc($v1)
|
||||
.L0f082b0c:
|
||||
/* f082b0c: 90c20003 */ lbu $v0,0x3($a2)
|
||||
/* f082b10: 24010035 */ addiu $at,$zero,0x35
|
||||
/* f082b14: 10410003 */ beq $v0,$at,.L0f082b24
|
||||
/* f082b18: 24010033 */ addiu $at,$zero,0x33
|
||||
/* f082b1c: 1441002b */ bne $v0,$at,.L0f082bcc
|
||||
/* f082b20: 00c02025 */ or $a0,$a2,$zero
|
||||
.L0f082b24:
|
||||
/* f082b24: 8ccb0008 */ lw $t3,0x8($a2)
|
||||
/* f082b28: 3c013f00 */ lui $at,0x3f00
|
||||
/* f082b2c: 000b6080 */ sll $t4,$t3,0x2
|
||||
/* f082b30: 05830015 */ bgezl $t4,.L0f082b88
|
||||
/* f082b34: 44814000 */ mtc1 $at,$f8
|
||||
/* f082b38: 3c017f1b */ lui $at,%hi(var7f1aa860)
|
||||
/* f082b3c: c428a860 */ lwc1 $f8,%lo(var7f1aa860)($at)
|
||||
/* f082b40: 3c017f1b */ lui $at,%hi(var7f1aa864)
|
||||
/* f082b44: e468008c */ swc1 $f8,0x8c($v1)
|
||||
/* f082b48: c42aa864 */ lwc1 $f10,%lo(var7f1aa864)($at)
|
||||
/* f082b4c: 3c017f1b */ lui $at,%hi(var7f1aa868)
|
||||
/* f082b50: e46a0098 */ swc1 $f10,0x98($v1)
|
||||
/* f082b54: c430a868 */ lwc1 $f16,%lo(var7f1aa868)($at)
|
||||
/* f082b58: 3c017f1b */ lui $at,%hi(var7f1aa86c)
|
||||
/* f082b5c: e47000e0 */ swc1 $f16,0xe0($v1)
|
||||
/* f082b60: c432a86c */ lwc1 $f18,%lo(var7f1aa86c)($at)
|
||||
/* f082b64: 3c017f1b */ lui $at,%hi(var7f1aa870)
|
||||
/* f082b68: e47200e4 */ swc1 $f18,0xe4($v1)
|
||||
/* f082b6c: c424a870 */ lwc1 $f4,%lo(var7f1aa870)($at)
|
||||
/* f082b70: 3c017f1b */ lui $at,%hi(var7f1aa874)
|
||||
/* f082b74: e46400ec */ swc1 $f4,0xec($v1)
|
||||
/* f082b78: c426a874 */ lwc1 $f6,%lo(var7f1aa874)($at)
|
||||
/* f082b7c: 10000079 */ b .L0f082d64
|
||||
/* f082b80: e46600f0 */ swc1 $f6,0xf0($v1)
|
||||
/* f082b84: 44814000 */ mtc1 $at,$f8
|
||||
.L0f082b88:
|
||||
/* f082b88: 3c017f1b */ lui $at,%hi(var7f1aa878)
|
||||
/* f082b8c: e468008c */ swc1 $f8,0x8c($v1)
|
||||
/* f082b90: c42aa878 */ lwc1 $f10,%lo(var7f1aa878)($at)
|
||||
/* f082b94: 3c017f1b */ lui $at,%hi(var7f1aa87c)
|
||||
/* f082b98: e46a0098 */ swc1 $f10,0x98($v1)
|
||||
/* f082b9c: c430a87c */ lwc1 $f16,%lo(var7f1aa87c)($at)
|
||||
/* f082ba0: 3c017f1b */ lui $at,%hi(var7f1aa880)
|
||||
/* f082ba4: e47000e0 */ swc1 $f16,0xe0($v1)
|
||||
/* f082ba8: c432a880 */ lwc1 $f18,%lo(var7f1aa880)($at)
|
||||
/* f082bac: 3c017f1b */ lui $at,%hi(var7f1aa884)
|
||||
/* f082bb0: e47200e4 */ swc1 $f18,0xe4($v1)
|
||||
/* f082bb4: c424a884 */ lwc1 $f4,%lo(var7f1aa884)($at)
|
||||
/* f082bb8: 3c017f1b */ lui $at,%hi(var7f1aa888)
|
||||
/* f082bbc: e46400ec */ swc1 $f4,0xec($v1)
|
||||
/* f082bc0: c426a888 */ lwc1 $f6,%lo(var7f1aa888)($at)
|
||||
/* f082bc4: 10000067 */ b .L0f082d64
|
||||
/* f082bc8: e46600f0 */ swc1 $f6,0xf0($v1)
|
||||
.L0f082bcc:
|
||||
/* f082bcc: afa3002c */ sw $v1,0x2c($sp)
|
||||
/* f082bd0: 0fc1a2bd */ jal objFindBboxRodata
|
||||
/* f082bd4: afa60030 */ sw $a2,0x30($sp)
|
||||
/* f082bd8: 8fa60030 */ lw $a2,0x30($sp)
|
||||
/* f082bdc: afa20028 */ sw $v0,0x28($sp)
|
||||
/* f082be0: 00402025 */ or $a0,$v0,$zero
|
||||
/* f082be4: 24c5001c */ addiu $a1,$a2,0x1c
|
||||
/* f082be8: 0fc19a4b */ jal func0f06692c
|
||||
/* f082bec: afa50018 */ sw $a1,0x18($sp)
|
||||
/* f082bf0: e7a0001c */ swc1 $f0,0x1c($sp)
|
||||
/* f082bf4: 8fa40028 */ lw $a0,0x28($sp)
|
||||
/* f082bf8: 0fc19a3f */ jal func0f0668fc
|
||||
/* f082bfc: 8fa50018 */ lw $a1,0x18($sp)
|
||||
/* f082c00: c7a8001c */ lwc1 $f8,0x1c($sp)
|
||||
/* f082c04: 8fa40028 */ lw $a0,0x28($sp)
|
||||
/* f082c08: 8fa50018 */ lw $a1,0x18($sp)
|
||||
/* f082c0c: 46004281 */ sub.s $f10,$f8,$f0
|
||||
/* f082c10: 0fc19a7b */ jal func0f0669ec
|
||||
/* f082c14: e7aa0024 */ swc1 $f10,0x24($sp)
|
||||
/* f082c18: e7a0001c */ swc1 $f0,0x1c($sp)
|
||||
/* f082c1c: 8fa40028 */ lw $a0,0x28($sp)
|
||||
/* f082c20: 0fc19a6f */ jal func0f0669bc
|
||||
/* f082c24: 8fa50018 */ lw $a1,0x18($sp)
|
||||
/* f082c28: 3c014316 */ lui $at,0x4316
|
||||
/* f082c2c: 44816000 */ mtc1 $at,$f12
|
||||
/* f082c30: c7ae0024 */ lwc1 $f14,0x24($sp)
|
||||
/* f082c34: 8fa3002c */ lw $v1,0x2c($sp)
|
||||
/* f082c38: c7b0001c */ lwc1 $f16,0x1c($sp)
|
||||
/* f082c3c: 460e603c */ c.lt.s $f12,$f14
|
||||
/* f082c40: 3c017f1b */ lui $at,%hi(var7f1aa88c)
|
||||
/* f082c44: 45010006 */ bc1t .L0f082c60
|
||||
/* f082c48: 00000000 */ nop
|
||||
/* f082c4c: 46008081 */ sub.s $f2,$f16,$f0
|
||||
/* f082c50: 4602603c */ c.lt.s $f12,$f2
|
||||
/* f082c54: 00000000 */ nop
|
||||
/* f082c58: 45020014 */ bc1fl .L0f082cac
|
||||
/* f082c5c: 3c014296 */ lui $at,0x4296
|
||||
.L0f082c60:
|
||||
/* f082c60: c432a88c */ lwc1 $f18,%lo(var7f1aa88c)($at)
|
||||
/* f082c64: 3c017f1b */ lui $at,%hi(var7f1aa890)
|
||||
/* f082c68: e472008c */ swc1 $f18,0x8c($v1)
|
||||
/* f082c6c: c424a890 */ lwc1 $f4,%lo(var7f1aa890)($at)
|
||||
/* f082c70: 3c017f1b */ lui $at,%hi(var7f1aa894)
|
||||
/* f082c74: e4640098 */ swc1 $f4,0x98($v1)
|
||||
/* f082c78: c426a894 */ lwc1 $f6,%lo(var7f1aa894)($at)
|
||||
/* f082c7c: 3c017f1b */ lui $at,%hi(var7f1aa898)
|
||||
/* f082c80: e46600e0 */ swc1 $f6,0xe0($v1)
|
||||
/* f082c84: c428a898 */ lwc1 $f8,%lo(var7f1aa898)($at)
|
||||
/* f082c88: 3c017f1b */ lui $at,%hi(var7f1aa89c)
|
||||
/* f082c8c: e46800e4 */ swc1 $f8,0xe4($v1)
|
||||
/* f082c90: c42aa89c */ lwc1 $f10,%lo(var7f1aa89c)($at)
|
||||
/* f082c94: 3c017f1b */ lui $at,%hi(var7f1aa8a0)
|
||||
/* f082c98: e46a00ec */ swc1 $f10,0xec($v1)
|
||||
/* f082c9c: c430a8a0 */ lwc1 $f16,%lo(var7f1aa8a0)($at)
|
||||
/* f082ca0: 10000030 */ b .L0f082d64
|
||||
/* f082ca4: e47000f0 */ swc1 $f16,0xf0($v1)
|
||||
/* f082ca8: 3c014296 */ lui $at,0x4296
|
||||
.L0f082cac:
|
||||
/* f082cac: 44810000 */ mtc1 $at,$f0
|
||||
/* f082cb0: 3c017f1b */ lui $at,%hi(var7f1aa8a4)
|
||||
/* f082cb4: 460e003c */ c.lt.s $f0,$f14
|
||||
/* f082cb8: 00000000 */ nop
|
||||
/* f082cbc: 45010005 */ bc1t .L0f082cd4
|
||||
/* f082cc0: 00000000 */ nop
|
||||
/* f082cc4: 4602003c */ c.lt.s $f0,$f2
|
||||
/* f082cc8: 00000000 */ nop
|
||||
/* f082ccc: 45000013 */ bc1f .L0f082d1c
|
||||
/* f082cd0: 00000000 */ nop
|
||||
.L0f082cd4:
|
||||
/* f082cd4: c432a8a4 */ lwc1 $f18,%lo(var7f1aa8a4)($at)
|
||||
/* f082cd8: 3c017f1b */ lui $at,%hi(var7f1aa8a8)
|
||||
/* f082cdc: e472008c */ swc1 $f18,0x8c($v1)
|
||||
/* f082ce0: c424a8a8 */ lwc1 $f4,%lo(var7f1aa8a8)($at)
|
||||
/* f082ce4: 3c017f1b */ lui $at,%hi(var7f1aa8ac)
|
||||
/* f082ce8: e4640098 */ swc1 $f4,0x98($v1)
|
||||
/* f082cec: c426a8ac */ lwc1 $f6,%lo(var7f1aa8ac)($at)
|
||||
/* f082cf0: 3c017f1b */ lui $at,%hi(var7f1aa8b0)
|
||||
/* f082cf4: e46600e0 */ swc1 $f6,0xe0($v1)
|
||||
/* f082cf8: c428a8b0 */ lwc1 $f8,%lo(var7f1aa8b0)($at)
|
||||
/* f082cfc: 3c017f1b */ lui $at,%hi(var7f1aa8b4)
|
||||
/* f082d00: e46800e4 */ swc1 $f8,0xe4($v1)
|
||||
/* f082d04: c42aa8b4 */ lwc1 $f10,%lo(var7f1aa8b4)($at)
|
||||
/* f082d08: 3c017f1b */ lui $at,%hi(var7f1aa8b8)
|
||||
/* f082d0c: e46a00ec */ swc1 $f10,0xec($v1)
|
||||
/* f082d10: c430a8b8 */ lwc1 $f16,%lo(var7f1aa8b8)($at)
|
||||
/* f082d14: 10000013 */ b .L0f082d64
|
||||
/* f082d18: e47000f0 */ swc1 $f16,0xf0($v1)
|
||||
.L0f082d1c:
|
||||
/* f082d1c: 3c017f1b */ lui $at,%hi(var7f1aa8bc)
|
||||
/* f082d20: c432a8bc */ lwc1 $f18,%lo(var7f1aa8bc)($at)
|
||||
/* f082d24: 3c017f1b */ lui $at,%hi(var7f1aa8c0)
|
||||
/* f082d28: e472008c */ swc1 $f18,0x8c($v1)
|
||||
/* f082d2c: c424a8c0 */ lwc1 $f4,%lo(var7f1aa8c0)($at)
|
||||
/* f082d30: 3c017f1b */ lui $at,%hi(var7f1aa8c4)
|
||||
/* f082d34: e4640098 */ swc1 $f4,0x98($v1)
|
||||
/* f082d38: c426a8c4 */ lwc1 $f6,%lo(var7f1aa8c4)($at)
|
||||
/* f082d3c: 3c017f1b */ lui $at,%hi(var7f1aa8c8)
|
||||
/* f082d40: e46600e0 */ swc1 $f6,0xe0($v1)
|
||||
/* f082d44: c428a8c8 */ lwc1 $f8,%lo(var7f1aa8c8)($at)
|
||||
/* f082d48: 3c017f1b */ lui $at,%hi(var7f1aa8cc)
|
||||
/* f082d4c: e46800e4 */ swc1 $f8,0xe4($v1)
|
||||
/* f082d50: c42aa8cc */ lwc1 $f10,%lo(var7f1aa8cc)($at)
|
||||
/* f082d54: 3c017f1b */ lui $at,%hi(var7f1aa8d0)
|
||||
/* f082d58: e46a00ec */ swc1 $f10,0xec($v1)
|
||||
/* f082d5c: c430a8d0 */ lwc1 $f16,%lo(var7f1aa8d0)($at)
|
||||
/* f082d60: e47000f0 */ swc1 $f16,0xf0($v1)
|
||||
.L0f082d64:
|
||||
/* f082d64: 8fbf0014 */ lw $ra,0x14($sp)
|
||||
.L0f082d68:
|
||||
/* f082d68: 27bd0030 */ addiu $sp,$sp,0x30
|
||||
/* f082d6c: 03e00008 */ jr $ra
|
||||
/* f082d70: 00000000 */ nop
|
||||
);
|
||||
#endif
|
||||
void objApplyMomentum(struct defaultobj *obj, struct coord *speed, f32 rotation, bool addspeed, bool addrotation)
|
||||
{
|
||||
struct projectile *projectile = NULL;
|
||||
struct modelrodata_bbox *bbox;
|
||||
f32 sp24;
|
||||
f32 sp20;
|
||||
|
||||
func0f0685e4(obj->prop);
|
||||
|
||||
if (obj->hidden & OBJHFLAG_HANGINGMONITOR) {
|
||||
projectile = obj->monitormount->projectile;
|
||||
} else if (obj->hidden & OBJHFLAG_AIRBORNE) {
|
||||
projectile = obj->projectile;
|
||||
}
|
||||
|
||||
if (projectile) {
|
||||
projectile->flags |= PROJECTILEFLAG_00000800;
|
||||
|
||||
if (addspeed) {
|
||||
projectile->speed.x += speed->x;
|
||||
projectile->speed.y += speed->y;
|
||||
projectile->speed.z += speed->z;
|
||||
} else {
|
||||
projectile->speed.x = speed->x;
|
||||
projectile->speed.y = speed->y;
|
||||
projectile->speed.z = speed->z;
|
||||
}
|
||||
|
||||
if (addrotation) {
|
||||
projectile->unk0dc += rotation;
|
||||
} else {
|
||||
projectile->unk0dc = rotation;
|
||||
}
|
||||
|
||||
if (obj->type == OBJTYPE_HOVERPROP || obj->type == OBJTYPE_HOVERBIKE) {
|
||||
if (obj->flags & OBJFLAG_20000000) {
|
||||
projectile->unk08c = 0.8f;
|
||||
projectile->unk098 = 0.0027777778f;
|
||||
projectile->unk0e0 = 0.000041881234f;
|
||||
projectile->unk0e4 = PAL ? 0.969f : 0.974f;
|
||||
projectile->unk0ec = 0.07852732f;
|
||||
projectile->unk0f0 = 6.6666665f;
|
||||
} else {
|
||||
projectile->unk08c = 0.5f;
|
||||
projectile->unk098 = 0.013888889f;
|
||||
projectile->unk0e0 = 0.00020940616f;
|
||||
projectile->unk0e4 = PAL ? 0.953f : 0.961f;
|
||||
projectile->unk0ec = 0.07852732f;
|
||||
projectile->unk0f0 = 6.6666665f;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
bbox = objFindBboxRodata(obj);
|
||||
|
||||
sp24 = func0f06692c(bbox, obj->realrot) - func0f0668fc(bbox, obj->realrot);
|
||||
sp20 = func0f0669ec(bbox, obj->realrot) - func0f0669bc(bbox, obj->realrot);
|
||||
|
||||
if (sp24 > 150.0f || sp20 > 150.0f) {
|
||||
projectile->unk08c = 0.1f;
|
||||
projectile->unk098 = 0.055555556f;
|
||||
projectile->unk0e0 = 0.00083762466f;
|
||||
projectile->unk0e4 = PAL ? 0.953f : 0.961f;
|
||||
projectile->unk0ec = 0.009815915f;
|
||||
projectile->unk0f0 = 0.8333333f;
|
||||
} else if (sp24 > 75.0f || sp20 > 75.0f) {
|
||||
projectile->unk08c = 0.1f;
|
||||
projectile->unk098 = 0.055555556f;
|
||||
projectile->unk0e0 = 0.00083762466f;
|
||||
projectile->unk0e4 = PAL ? 0.953f : 0.961f;
|
||||
projectile->unk0ec = 0.01963183f;
|
||||
projectile->unk0f0 = 0.8333333f;
|
||||
} else {
|
||||
projectile->unk08c = 0.1f;
|
||||
projectile->unk098 = 0.055555556f;
|
||||
projectile->unk0e0 = 0.00041881233f;
|
||||
projectile->unk0e4 = PAL ? 0.953f : 0.961f;
|
||||
projectile->unk0ec = 0.07852732f;
|
||||
projectile->unk0f0 = 1.6666666f;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#if PIRACYCHECKS
|
||||
GLOBAL_ASM(
|
||||
@@ -66228,18 +65725,18 @@ s8 var8006abbc = 0;
|
||||
//}
|
||||
#endif
|
||||
|
||||
void func0f082e84(struct defaultobj *obj, struct coord *pos, struct coord *dir, struct coord *tween, bool arg4)
|
||||
void func0f082e84(struct defaultobj *obj, struct coord *pos, struct coord *dir, struct coord *tween, bool addrotation)
|
||||
{
|
||||
struct coord sp34 = {0, 0, 0};
|
||||
struct coord speed = {0, 0, 0};
|
||||
f32 a = tween->f[0] * dir->f[0] + tween->f[2] * dir->f[2];
|
||||
f32 b = pos->f[0] - obj->prop->pos.f[0];
|
||||
f32 c = pos->f[2] - obj->prop->pos.f[2];
|
||||
f32 d = -b * dir->f[2] + c * dir->f[0];
|
||||
|
||||
sp34.f[0] += a * dir->f[0] * 0.2f;
|
||||
sp34.f[2] += a * dir->f[2] * 0.2f;
|
||||
speed.f[0] += a * dir->f[0] * 0.2f;
|
||||
speed.f[2] += a * dir->f[2] * 0.2f;
|
||||
|
||||
func0f082a1c(obj, &sp34, a * d * 0.0001f, true, arg4);
|
||||
objApplyMomentum(obj, &speed, a * d * 0.0001f, true, addrotation);
|
||||
}
|
||||
|
||||
void objDetach(struct prop *prop)
|
||||
|
||||
@@ -215,9 +215,9 @@ bool modelIsNodeNotTvscreen(struct modelfiledata *filedata, struct modelnode *no
|
||||
void func0f081ccc(struct defaultobj *obj, s32 arg1);
|
||||
void objBounce(struct defaultobj *obj, struct coord *arg1);
|
||||
void objSetDropped(struct prop *prop, u32 droptype);
|
||||
void func0f082a1c(struct defaultobj *obj, struct coord *coord, f32 rotate, bool arg3, bool arg4);
|
||||
void objApplyMomentum(struct defaultobj *obj, struct coord *speed, f32 rotation, bool addspeed, bool addrotation);
|
||||
void piracyRestore(void);
|
||||
void func0f082e84(struct defaultobj *obj, struct coord *pos, struct coord *dir, struct coord *tween, bool arg4);
|
||||
void func0f082e84(struct defaultobj *obj, struct coord *pos, struct coord *dir, struct coord *tween, bool addrotation);
|
||||
void objDetach(struct prop *prop);
|
||||
bool objDrop(struct prop *prop, bool lazy);
|
||||
void objFall(struct defaultobj *obj, s32 playernum);
|
||||
|
||||
Reference in New Issue
Block a user