Decompile chrTickAttackRoll

This commit is contained in:
Ryan Dwyer
2021-05-24 12:19:00 +10:00
parent 830aec0b2a
commit 95466a22e4
4 changed files with 178 additions and 432 deletions
+172 -426
View File
@@ -1265,33 +1265,28 @@ struct attackanimgroup *g_KneelDualAttackAnims[][32] = {
},
};
// These 8 animations must be kept together because the code loads a pointer to
// the heavy anims then adds 4 to get to the light anims. Using an array here
// would be less hacky, but then the individual names would be lost.
struct attackanimconfig g_AttackAnimRollHeavyLeft1 = { 0x000b, 76, 0, 0, 20, -1, 98, 161, -1, -1, 93, 161, 0.87252569198608, -0.52351540327072, 0.69802057743073, -0.69802057743073, 1.7000000476837, 2 };
struct attackanimconfig g_AttackAnimRollHeavyRight1 = { 0x000c, 58, 0, 0, 10, -1, 77, 104, -1, -1, 72, 104, 0.87252569198608, -0.34901028871536, 0.61076802015305, -0.69802057743073, 1.5499999523163, 1.5 };
struct attackanimconfig g_AttackAnimRollHeavyLeft2 = { 0x000d, 61, 0, 0, 10, -1, 83, 128, -1, -1, 78, 128, 0.87252569198608, -0.52351540327072, 0.87252569198608, -0.52351540327072, 1.2000000476837, 1.2999999523163 };
struct attackanimconfig g_AttackAnimRollHeavyRight2 = { 0x0027, 63, 0, 0, 10, -1, 73, 114, -1, -1, 68, 114, 0.87252569198608, -0.52351540327072, 0.61076802015305, -0.61076802015305, 1.6499999761581, 1.5 };
struct attackanimconfig g_AttackAnimRollLightLeft1 = { 0x000b, 76, 0, 0, 20, 76, 98, 161, -1, -1, 93, 161, 0.87252569198608, -0.52351540327072, 0.69802057743073, -0.69802057743073, 1.7000000476837, 2 };
struct attackanimconfig g_AttackAnimRollLightRight1 = { 0x000c, 58, 0, 0, 10, 63, 77, 104, -1, -1, 72, 104, 0.87252569198608, -0.34901028871536, 0.61076802015305, -0.69802057743073, 1.5499999523163, 1.5 };
struct attackanimconfig g_AttackAnimRollLightLeft2 = { 0x000d, 61, 0, 0, 10, 56, 83, 128, -1, -1, 78, 128, 0.87252569198608, -0.52351540327072, 0.87252569198608, -0.52351540327072, 1.2000000476837, 1.2999999523163 };
struct attackanimconfig g_AttackAnimRollLightRight2 = { 0x0027, 63, 0, 0, 10, 50, 73, 114, -1, -1, 68, 114, 0.87252569198608, -0.52351540327072, 0.61076802015305, -0.61076802015305, 1.6499999761581, 1.5 };
struct attackanimconfig var80067668 = { 0x0045, 0, 0, 0, 7, 64, 19, 51, 24, 46, 14, 58, 0.87252569198608, -0.69802057743073, 0.52351540327072, -0.7852731347084, 0, 0 };
struct attackanimconfig var800676b0 = { 0x004a, 0, 0, 1.5707963705063, 14, 76, 26, 31, 31, 38, 15, 49, 0.87252569198608, -0.69802057743073, 0.52351540327072, -1.0470308065414, 0, 0 };
struct attackanimconfig var800676f8 = { 0x004c, 26, 0, 0, 25, 89, 41, 63, 41, 51, 21, 80, 0.87252569198608, -0.69802057743073, 0.34901028871536, -1.1342834234238, 0, 0 };
struct attackanimconfig var80067740 = { 0x0050, 18, 0, 1.5707963705063, 11, 78, 33, 52, 35, 45, 15, 66, 0.87252569198608, -0.087252572178841, 0.69802057743073, -0.7852731347084, 1.5, 1 };
struct attackanimconfig var80067788 = { 0x007a, 26, 0, 0, 7, 92, 28, 68, -1, -1, 11, 73, 0.87252569198608, -0.69802057743073, 0.69802057743073, -0.69802057743073, 0, 0 };
struct attackanimconfig var800677d0 = { 0x007b, 26, 0, 1.5707963705063, 9, 112, 38, 87, -1, -1, 19, 98, 0.87252569198608, -0.69802057743073, 0.43626284599304, -0.43626284599304, 0, 0 };
struct attackanimconfig var80067818 = { 0x0074, 22, 0, 0, 10, 11, 34, 87, -1, -1, 17, 104, 0.87252569198608, -0.69802057743073, 0.61076802015305, -0.7852731347084, 0, 0 };
struct attackanimconfig var80067860 = { 0x0075, 28, 0, 1.5707963705063, 15, 108, 34, 73, -1, -1, 17, 93, 0.87252569198608, -0.69802057743073, 0.52351540327072, -0.7852731347084, 0, 0 };
struct attackanimconfig var800678a8 = { 0x007a, 26, 0, 0, 7, 92, 28, 68, -1, -1, 11, 73, 0.87252569198608, -0.69802057743073, 0.69802057743073, -0.69802057743073, 0, 0 };
struct attackanimconfig var800678f0 = { 0x007d, 25, 0, 1.5707963705063, 10, 112, 32, 86, -1, -1, 19, 97, 0.87252569198608, -0.69802057743073, 0.43626284599304, -0.43626284599304, 0, 0 };
struct attackanimconfig var80067938 = { 0x0077, 25, 0, 0, 9, 92, 33, 62, -1, -1, 18, 69, 0.87252569198608, -0.69802057743073, 0.61076802015305, -0.7852731347084, 0, 0 };
struct attackanimconfig var80067980[] = {
{ 0x0078, 19, 0, 1.5707963705063, 3, 95, 30, 64, -1, -1, 14, 71, 0.87252569198608, -0.69802057743073, 0.52351540327072, -0.7852731347084, 1.5, 1 },
{ 0x0000, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
struct attackanimconfig g_RollAttackAnims[] = {
{ 0x000b, 76, 0, 0, 20, -1, 98, 161, -1, -1, 93, 161, 0.87252569198608, -0.52351540327072, 0.69802057743073, -0.69802057743073, 1.7000000476837, 2 },
{ 0x000c, 58, 0, 0, 10, -1, 77, 104, -1, -1, 72, 104, 0.87252569198608, -0.34901028871536, 0.61076802015305, -0.69802057743073, 1.5499999523163, 1.5 },
{ 0x000d, 61, 0, 0, 10, -1, 83, 128, -1, -1, 78, 128, 0.87252569198608, -0.52351540327072, 0.87252569198608, -0.52351540327072, 1.2000000476837, 1.2999999523163 },
{ 0x0027, 63, 0, 0, 10, -1, 73, 114, -1, -1, 68, 114, 0.87252569198608, -0.52351540327072, 0.61076802015305, -0.61076802015305, 1.6499999761581, 1.5 },
{ 0x000b, 76, 0, 0, 20, 76, 98, 161, -1, -1, 93, 161, 0.87252569198608, -0.52351540327072, 0.69802057743073, -0.69802057743073, 1.7000000476837, 2 },
{ 0x000c, 58, 0, 0, 10, 63, 77, 104, -1, -1, 72, 104, 0.87252569198608, -0.34901028871536, 0.61076802015305, -0.69802057743073, 1.5499999523163, 1.5 },
{ 0x000d, 61, 0, 0, 10, 56, 83, 128, -1, -1, 78, 128, 0.87252569198608, -0.52351540327072, 0.87252569198608, -0.52351540327072, 1.2000000476837, 1.2999999523163 },
{ 0x0027, 63, 0, 0, 10, 50, 73, 114, -1, -1, 68, 114, 0.87252569198608, -0.52351540327072, 0.61076802015305, -0.61076802015305, 1.6499999761581, 1.5 },
{ 0x0045, 0, 0, 0, 7, 64, 19, 51, 24, 46, 14, 58, 0.87252569198608, -0.69802057743073, 0.52351540327072, -0.7852731347084, 0, 0 },
{ 0x004a, 0, 0, 1.5707963705063, 14, 76, 26, 31, 31, 38, 15, 49, 0.87252569198608, -0.69802057743073, 0.52351540327072, -1.0470308065414, 0, 0 },
{ 0x004c, 26, 0, 0, 25, 89, 41, 63, 41, 51, 21, 80, 0.87252569198608, -0.69802057743073, 0.34901028871536, -1.1342834234238, 0, 0 },
{ 0x0050, 18, 0, 1.5707963705063, 11, 78, 33, 52, 35, 45, 15, 66, 0.87252569198608, -0.087252572178841, 0.69802057743073, -0.7852731347084, 1.5, 1 },
{ 0x007a, 26, 0, 0, 7, 92, 28, 68, -1, -1, 11, 73, 0.87252569198608, -0.69802057743073, 0.69802057743073, -0.69802057743073, 0, 0 },
{ 0x007b, 26, 0, 1.5707963705063, 9, 112, 38, 87, -1, -1, 19, 98, 0.87252569198608, -0.69802057743073, 0.43626284599304, -0.43626284599304, 0, 0 },
{ 0x0074, 22, 0, 0, 10, 11, 34, 87, -1, -1, 17, 104, 0.87252569198608, -0.69802057743073, 0.61076802015305, -0.7852731347084, 0, 0 },
{ 0x0075, 28, 0, 1.5707963705063, 15, 108, 34, 73, -1, -1, 17, 93, 0.87252569198608, -0.69802057743073, 0.52351540327072, -0.7852731347084, 0, 0 },
{ 0x007a, 26, 0, 0, 7, 92, 28, 68, -1, -1, 11, 73, 0.87252569198608, -0.69802057743073, 0.69802057743073, -0.69802057743073, 0, 0 },
{ 0x007d, 25, 0, 1.5707963705063, 10, 112, 32, 86, -1, -1, 19, 97, 0.87252569198608, -0.69802057743073, 0.43626284599304, -0.43626284599304, 0, 0 },
{ 0x0077, 25, 0, 0, 9, 92, 33, 62, -1, -1, 18, 69, 0.87252569198608, -0.69802057743073, 0.61076802015305, -0.7852731347084, 0, 0 },
{ 0x0078, 19, 0, 1.5707963705063, 3, 95, 30, 64, -1, -1, 14, 71, 0.87252569198608, -0.69802057743073, 0.52351540327072, -0.7852731347084, 1.5, 1 },
{ 0x0000, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
};
struct attackanimconfig g_AttackAnimHeavyWalk = { 0x0030, 0, 0, 0, 0, -1, 0, 0, -1, -1, 0, 0, 0.87252569198608, -0.52351540327072, 0.52351540327072, -0.52351540327072, 1.3999999761581, 1.2999999523163 };
@@ -2658,23 +2653,25 @@ void chrAttackRoll(struct chrdata *chr, bool toleft)
}
if ((toleft && !flip) || (!toleft && flip)) {
// Roll to left
if (random() % 2) {
animcfg = &g_AttackAnimRollHeavyLeft1;
animcfg = &g_RollAttackAnims[0];
} else {
animcfg = &g_AttackAnimRollHeavyLeft2;
animcfg = &g_RollAttackAnims[2];
}
} else {
// Roll to right
if (random() % 2) {
animcfg = &g_AttackAnimRollHeavyRight1;
animcfg = &g_RollAttackAnims[1];
} else {
animcfg = &g_AttackAnimRollHeavyRight2;
animcfg = &g_RollAttackAnims[3];
}
}
if (onehanded) {
// Move the animation pointer to the light-weight version of the same
// animation. The light-weight versions are defined immediately after
// the heavy versions.
// Move the animation pointer to the one-handed version of the same
// animation. The one-handed versions are in the array immediately after
// the four heavy-weapon versions.
animcfg += 4;
}
@@ -3853,10 +3850,10 @@ bool chrIsAnimPreventingArgh(struct chrdata *chr, f32 *dst)
} else if (chr->actiontype == ACT_ATTACKROLL
&& modelGetAnimNum(chr->model) == chr->act_attack.animcfg->animnum) {
if (chr->act_attack.onehanded) {
if (chr->act_attack.animcfg == &g_AttackAnimRollLightLeft1
|| chr->act_attack.animcfg == &g_AttackAnimRollLightRight1
|| chr->act_attack.animcfg == &g_AttackAnimRollLightLeft2
|| chr->act_attack.animcfg == &g_AttackAnimRollLightRight2) {
if (chr->act_attack.animcfg == &g_RollAttackAnims[4]
|| chr->act_attack.animcfg == &g_RollAttackAnims[5]
|| chr->act_attack.animcfg == &g_RollAttackAnims[6]
|| chr->act_attack.animcfg == &g_RollAttackAnims[7]) {
endframe = chr->act_attack.animcfg->unk04 - 8;
if (chr->act_attack.animcfg->unk14 < chr->act_attack.animcfg->unk04) {
@@ -18221,19 +18218,19 @@ glabel func0f041c44
/* f041c5c: 54400032 */ bnezl $v0,.L0f041d28
/* f041c60: 00001025 */ or $v0,$zero,$zero
/* f041c64: 8c82002c */ lw $v0,0x2c($a0)
/* f041c68: 3c0e8006 */ lui $t6,%hi(g_AttackAnimRollHeavyLeft2)
/* f041c6c: 25ce74b8 */ addiu $t6,$t6,%lo(g_AttackAnimRollHeavyLeft2)
/* f041c68: 3c0e8006 */ lui $t6,%hi(g_RollAttackAnims+0x90)
/* f041c6c: 25ce74b8 */ addiu $t6,$t6,%lo(g_RollAttackAnims+0x90)
/* f041c70: 11c20004 */ beq $t6,$v0,.L0f041c84
/* f041c74: 3c0f8006 */ lui $t7,%hi(g_AttackAnimRollHeavyRight2)
/* f041c78: 25ef7500 */ addiu $t7,$t7,%lo(g_AttackAnimRollHeavyRight2)
/* f041c74: 3c0f8006 */ lui $t7,%hi(g_RollAttackAnims+0xd8)
/* f041c78: 25ef7500 */ addiu $t7,$t7,%lo(g_RollAttackAnims+0xd8)
/* f041c7c: 55e2002a */ bnel $t7,$v0,.L0f041d28
/* f041c80: 00001025 */ or $v0,$zero,$zero
.L0f041c84:
/* f041c84: 8c820020 */ lw $v0,0x20($a0)
/* f041c88: 3c098006 */ lui $t1,%hi(g_AttackAnimRollHeavyRight1)
/* f041c88: 3c098006 */ lui $t1,%hi(g_RollAttackAnims+0x48)
/* f041c8c: 24080002 */ addiu $t0,$zero,0x2
/* f041c90: 8c580020 */ lw $t8,0x20($v0)
/* f041c94: 25297470 */ addiu $t1,$t1,%lo(g_AttackAnimRollHeavyRight1)
/* f041c94: 25297470 */ addiu $t1,$t1,%lo(g_RollAttackAnims+0x48)
/* f041c98: 3c053f33 */ lui $a1,0x3f33
/* f041c9c: 83190008 */ lb $t9,0x8($t8)
/* f041ca0: 3c063f8f */ lui $a2,0x3f8f
@@ -18247,17 +18244,17 @@ glabel func0f041c44
/* f041cc0: afa2002c */ sw $v0,0x2c($sp)
/* f041cc4: 3c0141b0 */ lui $at,0x41b0
/* f041cc8: 44812000 */ mtc1 $at,$f4
/* f041ccc: 3c058006 */ lui $a1,%hi(g_AttackAnimRollHeavyRight1)
/* f041cd0: 3c078006 */ lui $a3,%hi(g_AttackAnimRollHeavyRight1+0x1c)
/* f041cd4: 8ce7748c */ lw $a3,%lo(g_AttackAnimRollHeavyRight1+0x1c)($a3)
/* f041cd8: 84a57470 */ lh $a1,%lo(g_AttackAnimRollHeavyRight1)($a1)
/* f041ccc: 3c058006 */ lui $a1,%hi(g_RollAttackAnims+0x48)
/* f041cd0: 3c078006 */ lui $a3,%hi(g_RollAttackAnims+0x48+0x1c)
/* f041cd4: 8ce7748c */ lw $a3,%lo(g_RollAttackAnims+0x48+0x1c)($a3)
/* f041cd8: 84a57470 */ lh $a1,%lo(g_RollAttackAnims+0x48)($a1)
/* f041cdc: 8fa4002c */ lw $a0,0x2c($sp)
/* f041ce0: 8fa60024 */ lw $a2,0x24($sp)
/* f041ce4: e7a00010 */ swc1 $f0,0x10($sp)
/* f041ce8: 0c007733 */ jal modelSetAnimation
/* f041cec: e7a40014 */ swc1 $f4,0x14($sp)
/* f041cf0: 3c018006 */ lui $at,%hi(g_AttackAnimRollHeavyRight1+0x14)
/* f041cf4: c4207484 */ lwc1 $f0,%lo(g_AttackAnimRollHeavyRight1+0x14)($at)
/* f041cf0: 3c018006 */ lui $at,%hi(g_RollAttackAnims+0x48+0x14)
/* f041cf4: c4207484 */ lwc1 $f0,%lo(g_RollAttackAnims+0x48+0x14)($at)
/* f041cf8: 44803000 */ mtc1 $zero,$f6
/* f041cfc: 00000000 */ nop
/* f041d00: 4600303e */ c.le.s $f6,$f0
@@ -20075,382 +20072,131 @@ void chrTickAttack(struct chrdata *chr)
func0f041e48(chr);
}
GLOBAL_ASM(
glabel chrTickAttackRoll
/* f0433e0: 27bdffb8 */ addiu $sp,$sp,-72
/* f0433e4: afbf001c */ sw $ra,0x1c($sp)
/* f0433e8: afa40048 */ sw $a0,0x48($sp)
/* f0433ec: 8c8f0014 */ lw $t7,0x14($a0)
/* f0433f0: 000fc280 */ sll $t8,$t7,0xa
/* f0433f4: 0703000e */ bgezl $t8,.L0f043430
/* f0433f8: 8fa90048 */ lw $t1,0x48($sp)
/* f0433fc: 0c0076e5 */ jal modelIsAnimMerging
/* f043400: 8c840020 */ lw $a0,0x20($a0)
/* f043404: 5440014c */ bnezl $v0,.L0f043938
/* f043408: 8fbf001c */ lw $ra,0x1c($sp)
/* f04340c: 0fc0c290 */ jal chrAttackRollChooseAnimation
/* f043410: 8fa40048 */ lw $a0,0x48($sp)
/* f043414: 8fa20048 */ lw $v0,0x48($sp)
/* f043418: 3c01ffdf */ lui $at,0xffdf
/* f04341c: 3421ffff */ ori $at,$at,0xffff
/* f043420: 8c590014 */ lw $t9,0x14($v0)
/* f043424: 03214024 */ and $t0,$t9,$at
/* f043428: ac480014 */ sw $t0,0x14($v0)
/* f04342c: 8fa90048 */ lw $t1,0x48($sp)
.L0f043430:
/* f043430: 812a0035 */ lb $t2,0x35($t1)
/* f043434: 1140013d */ beqz $t2,.L0f04392c
/* f043438: 00000000 */ nop
/* f04343c: 8d240020 */ lw $a0,0x20($t1)
/* f043440: 0c00745f */ jal modelGetCurAnimFrame
/* f043444: afa40044 */ sw $a0,0x44($sp)
/* f043448: 8fa70048 */ lw $a3,0x48($sp)
/* f04344c: 3c0b8006 */ lui $t3,%hi(g_AttackAnimRollLightLeft1)
/* f043450: 256b7548 */ addiu $t3,$t3,%lo(g_AttackAnimRollLightLeft1)
/* f043454: 8ce2002c */ lw $v0,0x2c($a3)
/* f043458: 3c0c8006 */ lui $t4,%hi(g_AttackAnimRollLightRight1)
/* f04345c: 46000306 */ mov.s $f12,$f0
/* f043460: 11620009 */ beq $t3,$v0,.L0f043488
/* f043464: 258c7590 */ addiu $t4,$t4,%lo(g_AttackAnimRollLightRight1)
/* f043468: 11820007 */ beq $t4,$v0,.L0f043488
/* f04346c: 3c0d8006 */ lui $t5,%hi(g_AttackAnimRollLightLeft2)
/* f043470: 25ad75d8 */ addiu $t5,$t5,%lo(g_AttackAnimRollLightLeft2)
/* f043474: 11a20004 */ beq $t5,$v0,.L0f043488
/* f043478: 3c0f8006 */ lui $t7,%hi(g_AttackAnimRollLightRight2)
/* f04347c: 25ef7620 */ addiu $t7,$t7,%lo(g_AttackAnimRollLightRight2)
/* f043480: 15e200c8 */ bne $t7,$v0,.L0f0437a4
/* f043484: 3c0c8006 */ lui $t4,%hi(var80067668)
.L0f043488:
/* f043488: c4440014 */ lwc1 $f4,0x14($v0)
/* f04348c: 8fb80044 */ lw $t8,0x44($sp)
/* f043490: 4600203e */ c.le.s $f4,$f0
/* f043494: 00000000 */ nop
/* f043498: 450000c0 */ bc1f .L0f04379c
/* f04349c: 00000000 */ nop
/* f0434a0: 8f0e0020 */ lw $t6,0x20($t8)
/* f0434a4: 3c014180 */ lui $at,0x4180
/* f0434a8: 44811000 */ mtc1 $at,$f2
/* f0434ac: 81d90008 */ lb $t9,0x8($t6)
/* f0434b0: 24430120 */ addiu $v1,$v0,0x120
/* f0434b4: afb90038 */ sw $t9,0x38($sp)
/* f0434b8: 80e80039 */ lb $t0,0x39($a3)
/* f0434bc: 11000010 */ beqz $t0,.L0f043500
/* f0434c0: 00000000 */ nop
/* f0434c4: 80ea0038 */ lb $t2,0x38($a3)
/* f0434c8: 1140000d */ beqz $t2,.L0f043500
/* f0434cc: 00000000 */ nop
/* f0434d0: afa3003c */ sw $v1,0x3c($sp)
/* f0434d4: 0c004b70 */ jal random
/* f0434d8: e7a20034 */ swc1 $f2,0x34($sp)
/* f0434dc: 30490001 */ andi $t1,$v0,0x1
/* f0434e0: 8fa3003c */ lw $v1,0x3c($sp)
/* f0434e4: 15200004 */ bnez $t1,.L0f0434f8
/* f0434e8: c7a20034 */ lwc1 $f2,0x34($sp)
/* f0434ec: 24630120 */ addiu $v1,$v1,0x120
/* f0434f0: 10000003 */ b .L0f043500
/* f0434f4: 8fa70048 */ lw $a3,0x48($sp)
.L0f0434f8:
/* f0434f8: 24630240 */ addiu $v1,$v1,0x240
/* f0434fc: 8fa70048 */ lw $a3,0x48($sp)
.L0f043500:
/* f043500: 3c028006 */ lui $v0,%hi(g_AttackAnimRollHeavyLeft1)
/* f043504: 24427428 */ addiu $v0,$v0,%lo(g_AttackAnimRollHeavyLeft1)
/* f043508: 244b0240 */ addiu $t3,$v0,0x240
/* f04350c: 146b0005 */ bne $v1,$t3,.L0f043524
/* f043510: 00e02025 */ or $a0,$a3,$zero
/* f043514: 3c0141c0 */ lui $at,0x41c0
/* f043518: 44811000 */ mtc1 $at,$f2
/* f04351c: 10000043 */ b .L0f04362c
/* f043520: 240d0002 */ addiu $t5,$zero,0x2
.L0f043524:
/* f043524: 244c0288 */ addiu $t4,$v0,0x288
/* f043528: 146c0005 */ bne $v1,$t4,.L0f043540
/* f04352c: 244d02d0 */ addiu $t5,$v0,0x2d0
/* f043530: 3c0141c0 */ lui $at,0x41c0
/* f043534: 44811000 */ mtc1 $at,$f2
/* f043538: 1000003c */ b .L0f04362c
/* f04353c: 240d0002 */ addiu $t5,$zero,0x2
.L0f043540:
/* f043540: 146d0005 */ bne $v1,$t5,.L0f043558
/* f043544: 244f0318 */ addiu $t7,$v0,0x318
/* f043548: 3c014200 */ lui $at,0x4200
/* f04354c: 44811000 */ mtc1 $at,$f2
/* f043550: 10000036 */ b .L0f04362c
/* f043554: 240d0002 */ addiu $t5,$zero,0x2
.L0f043558:
/* f043558: 146f0005 */ bne $v1,$t7,.L0f043570
/* f04355c: 24580360 */ addiu $t8,$v0,0x360
/* f043560: 3c014230 */ lui $at,0x4230
/* f043564: 44811000 */ mtc1 $at,$f2
/* f043568: 10000030 */ b .L0f04362c
/* f04356c: 240d0002 */ addiu $t5,$zero,0x2
.L0f043570:
/* f043570: 14780005 */ bne $v1,$t8,.L0f043588
/* f043574: 244e03a8 */ addiu $t6,$v0,0x3a8
/* f043578: 3c0141c0 */ lui $at,0x41c0
/* f04357c: 44811000 */ mtc1 $at,$f2
/* f043580: 1000002a */ b .L0f04362c
/* f043584: 240d0002 */ addiu $t5,$zero,0x2
.L0f043588:
/* f043588: 146e0005 */ bne $v1,$t6,.L0f0435a0
/* f04358c: 245903f0 */ addiu $t9,$v0,0x3f0
/* f043590: 3c014208 */ lui $at,0x4208
/* f043594: 44811000 */ mtc1 $at,$f2
/* f043598: 10000024 */ b .L0f04362c
/* f04359c: 240d0002 */ addiu $t5,$zero,0x2
.L0f0435a0:
/* f0435a0: 14790005 */ bne $v1,$t9,.L0f0435b8
/* f0435a4: 24480438 */ addiu $t0,$v0,0x438
/* f0435a8: 3c014200 */ lui $at,0x4200
/* f0435ac: 44811000 */ mtc1 $at,$f2
/* f0435b0: 1000001e */ b .L0f04362c
/* f0435b4: 240d0002 */ addiu $t5,$zero,0x2
.L0f0435b8:
/* f0435b8: 14680005 */ bne $v1,$t0,.L0f0435d0
/* f0435bc: 244a0480 */ addiu $t2,$v0,0x480
/* f0435c0: 3c014230 */ lui $at,0x4230
/* f0435c4: 44811000 */ mtc1 $at,$f2
/* f0435c8: 10000018 */ b .L0f04362c
/* f0435cc: 240d0002 */ addiu $t5,$zero,0x2
.L0f0435d0:
/* f0435d0: 146a0005 */ bne $v1,$t2,.L0f0435e8
/* f0435d4: 244904c8 */ addiu $t1,$v0,0x4c8
/* f0435d8: 3c0141c0 */ lui $at,0x41c0
/* f0435dc: 44811000 */ mtc1 $at,$f2
/* f0435e0: 10000012 */ b .L0f04362c
/* f0435e4: 240d0002 */ addiu $t5,$zero,0x2
.L0f0435e8:
/* f0435e8: 14690005 */ bne $v1,$t1,.L0f043600
/* f0435ec: 244b0510 */ addiu $t3,$v0,0x510
/* f0435f0: 3c014208 */ lui $at,0x4208
/* f0435f4: 44811000 */ mtc1 $at,$f2
/* f0435f8: 1000000c */ b .L0f04362c
/* f0435fc: 240d0002 */ addiu $t5,$zero,0x2
.L0f043600:
/* f043600: 146b0005 */ bne $v1,$t3,.L0f043618
/* f043604: 244c0558 */ addiu $t4,$v0,0x558
/* f043608: 3c014200 */ lui $at,0x4200
/* f04360c: 44811000 */ mtc1 $at,$f2
/* f043610: 10000006 */ b .L0f04362c
/* f043614: 240d0002 */ addiu $t5,$zero,0x2
.L0f043618:
/* f043618: 146c0003 */ bne $v1,$t4,.L0f043628
/* f04361c: 3c014230 */ lui $at,0x4230
/* f043620: 44811000 */ mtc1 $at,$f2
/* f043624: 00000000 */ nop
.L0f043628:
/* f043628: 240d0002 */ addiu $t5,$zero,0x2
.L0f04362c:
/* f04362c: a0ed0030 */ sb $t5,0x30($a3)
/* f043630: ace3002c */ sw $v1,0x2c($a3)
/* f043634: a0e00008 */ sb $zero,0x8($a3)
/* f043638: 3c063f4c */ lui $a2,0x3f4c
/* f04363c: 34c6cccd */ ori $a2,$a2,0xcccd
/* f043640: e7a20034 */ swc1 $f2,0x34($sp)
/* f043644: afa3003c */ sw $v1,0x3c($sp)
/* f043648: 0fc0b857 */ jal chrGetRangedSpeed
/* f04364c: 3c053f00 */ lui $a1,0x3f00
/* f043650: 8fa3003c */ lw $v1,0x3c($sp)
/* f043654: c7a20034 */ lwc1 $f2,0x34($sp)
/* f043658: 8fa40044 */ lw $a0,0x44($sp)
/* f04365c: 84650000 */ lh $a1,0x0($v1)
/* f043660: 8c670010 */ lw $a3,0x10($v1)
/* f043664: e7a00010 */ swc1 $f0,0x10($sp)
/* f043668: 8fa60038 */ lw $a2,0x38($sp)
/* f04366c: 0c007733 */ jal modelSetAnimation
/* f043670: e7a20014 */ swc1 $f2,0x14($sp)
/* f043674: 8faf0048 */ lw $t7,0x48($sp)
/* f043678: 8fa3003c */ lw $v1,0x3c($sp)
/* f04367c: c7a20034 */ lwc1 $f2,0x34($sp)
/* f043680: 81f80036 */ lb $t8,0x36($t7)
/* f043684: 53000014 */ beqzl $t8,.L0f0436d8
/* f043688: c4600020 */ lwc1 $f0,0x20($v1)
/* f04368c: c4600024 */ lwc1 $f0,0x24($v1)
/* f043690: 44803000 */ mtc1 $zero,$f6
/* f043694: 8fa40044 */ lw $a0,0x44($sp)
/* f043698: 4600303e */ c.le.s $f6,$f0
/* f04369c: 00000000 */ nop
/* f0436a0: 45020008 */ bc1fl .L0f0436c4
/* f0436a4: 8c65001c */ lw $a1,0x1c($v1)
/* f0436a8: 44050000 */ mfc1 $a1,$f0
/* f0436ac: 8fa40044 */ lw $a0,0x44($sp)
/* f0436b0: 0c007787 */ jal modelSetAnimEndFrame
/* f0436b4: e7a20034 */ swc1 $f2,0x34($sp)
/* f0436b8: 1000001d */ b .L0f043730
/* f0436bc: c7a20034 */ lwc1 $f2,0x34($sp)
/* f0436c0: 8c65001c */ lw $a1,0x1c($v1)
.L0f0436c4:
/* f0436c4: 0c007787 */ jal modelSetAnimEndFrame
/* f0436c8: e7a20034 */ swc1 $f2,0x34($sp)
/* f0436cc: 10000018 */ b .L0f043730
/* f0436d0: c7a20034 */ lwc1 $f2,0x34($sp)
/* f0436d4: c4600020 */ lwc1 $f0,0x20($v1)
.L0f0436d8:
/* f0436d8: 44804000 */ mtc1 $zero,$f8
/* f0436dc: 8fa40044 */ lw $a0,0x44($sp)
/* f0436e0: 4600403e */ c.le.s $f8,$f0
/* f0436e4: 00000000 */ nop
/* f0436e8: 45020007 */ bc1fl .L0f043708
/* f0436ec: c4600014 */ lwc1 $f0,0x14($v1)
/* f0436f0: 44050000 */ mfc1 $a1,$f0
/* f0436f4: 0c007787 */ jal modelSetAnimEndFrame
/* f0436f8: e7a20034 */ swc1 $f2,0x34($sp)
/* f0436fc: 1000000c */ b .L0f043730
/* f043700: c7a20034 */ lwc1 $f2,0x34($sp)
/* f043704: c4600014 */ lwc1 $f0,0x14($v1)
.L0f043708:
/* f043708: 44805000 */ mtc1 $zero,$f10
/* f04370c: 8fa40044 */ lw $a0,0x44($sp)
/* f043710: 4600503e */ c.le.s $f10,$f0
/* f043714: 00000000 */ nop
/* f043718: 45020006 */ bc1fl .L0f043734
/* f04371c: 8fae0048 */ lw $t6,0x48($sp)
/* f043720: 44050000 */ mfc1 $a1,$f0
/* f043724: 0c007787 */ jal modelSetAnimEndFrame
/* f043728: e7a20034 */ swc1 $f2,0x34($sp)
/* f04372c: c7a20034 */ lwc1 $f2,0x34($sp)
.L0f043730:
/* f043730: 8fae0048 */ lw $t6,0x48($sp)
.L0f043734:
/* f043734: 44808000 */ mtc1 $zero,$f16
/* f043738: 8fa40044 */ lw $a0,0x44($sp)
/* f04373c: 8dd9002c */ lw $t9,0x2c($t6)
/* f043740: c732000c */ lwc1 $f18,0xc($t9)
/* f043744: 46128032 */ c.eq.s $f16,$f18
/* f043748: 00000000 */ nop
/* f04374c: 45010013 */ bc1t .L0f04379c
/* f043750: 00000000 */ nop
/* f043754: 8c880008 */ lw $t0,0x8($a0)
/* f043758: 8d050000 */ lw $a1,0x0($t0)
/* f04375c: 0c006a87 */ jal modelGetNodeRwData
/* f043760: e7a20034 */ swc1 $f2,0x34($sp)
/* f043764: c7a20034 */ lwc1 $f2,0x34($sp)
/* f043768: e442005c */ swc1 $f2,0x5c($v0)
/* f04376c: 8faa0048 */ lw $t2,0x48($sp)
/* f043770: 8d49002c */ lw $t1,0x2c($t2)
/* f043774: c524000c */ lwc1 $f4,0xc($t1)
/* f043778: 46002187 */ neg.s $f6,$f4
/* f04377c: 46023203 */ div.s $f8,$f6,$f2
/* f043780: e4480058 */ swc1 $f8,0x58($v0)
/* f043784: 8fab0038 */ lw $t3,0x38($sp)
/* f043788: 11600004 */ beqz $t3,.L0f04379c
/* f04378c: 00000000 */ nop
/* f043790: c44a0058 */ lwc1 $f10,0x58($v0)
/* f043794: 46005407 */ neg.s $f16,$f10
/* f043798: e4500058 */ swc1 $f16,0x58($v0)
.L0f04379c:
/* f04379c: 10000063 */ b .L0f04392c
/* f0437a0: 00000000 */ nop
.L0f0437a4:
/* f0437a4: 258c7668 */ addiu $t4,$t4,%lo(var80067668)
/* f0437a8: 11820022 */ beq $t4,$v0,.L0f043834
/* f0437ac: 3c0d8006 */ lui $t5,%hi(var800676b0)
/* f0437b0: 25ad76b0 */ addiu $t5,$t5,%lo(var800676b0)
/* f0437b4: 11a2001f */ beq $t5,$v0,.L0f043834
/* f0437b8: 3c0f8006 */ lui $t7,%hi(var800676f8)
/* f0437bc: 25ef76f8 */ addiu $t7,$t7,%lo(var800676f8)
/* f0437c0: 11e2001c */ beq $t7,$v0,.L0f043834
/* f0437c4: 3c188006 */ lui $t8,%hi(var80067740)
/* f0437c8: 27187740 */ addiu $t8,$t8,%lo(var80067740)
/* f0437cc: 13020019 */ beq $t8,$v0,.L0f043834
/* f0437d0: 3c0e8006 */ lui $t6,%hi(var80067788)
/* f0437d4: 25ce7788 */ addiu $t6,$t6,%lo(var80067788)
/* f0437d8: 11c20016 */ beq $t6,$v0,.L0f043834
/* f0437dc: 3c198006 */ lui $t9,%hi(var800677d0)
/* f0437e0: 273977d0 */ addiu $t9,$t9,%lo(var800677d0)
/* f0437e4: 13220013 */ beq $t9,$v0,.L0f043834
/* f0437e8: 3c088006 */ lui $t0,%hi(var80067818)
/* f0437ec: 25087818 */ addiu $t0,$t0,%lo(var80067818)
/* f0437f0: 11020010 */ beq $t0,$v0,.L0f043834
/* f0437f4: 3c0a8006 */ lui $t2,%hi(var80067860)
/* f0437f8: 254a7860 */ addiu $t2,$t2,%lo(var80067860)
/* f0437fc: 1142000d */ beq $t2,$v0,.L0f043834
/* f043800: 3c098006 */ lui $t1,%hi(var800678a8)
/* f043804: 252978a8 */ addiu $t1,$t1,%lo(var800678a8)
/* f043808: 1122000a */ beq $t1,$v0,.L0f043834
/* f04380c: 3c0b8006 */ lui $t3,%hi(var800678f0)
/* f043810: 256b78f0 */ addiu $t3,$t3,%lo(var800678f0)
/* f043814: 11620007 */ beq $t3,$v0,.L0f043834
/* f043818: 3c0c8006 */ lui $t4,%hi(var80067938)
/* f04381c: 258c7938 */ addiu $t4,$t4,%lo(var80067938)
/* f043820: 11820004 */ beq $t4,$v0,.L0f043834
/* f043824: 3c0d8006 */ lui $t5,%hi(var80067980)
/* f043828: 25ad7980 */ addiu $t5,$t5,%lo(var80067980)
/* f04382c: 15a2003f */ bne $t5,$v0,.L0f04392c
/* f043830: 00000000 */ nop
.L0f043834:
/* f043834: 80ef0036 */ lb $t7,0x36($a3)
/* f043838: 15e0003c */ bnez $t7,.L0f04392c
/* f04383c: 00000000 */ nop
/* f043840: c4420024 */ lwc1 $f2,0x24($v0)
/* f043844: 44809000 */ mtc1 $zero,$f18
/* f043848: 00000000 */ nop
/* f04384c: 4602903c */ c.lt.s $f18,$f2
/* f043850: 00000000 */ nop
/* f043854: 45000035 */ bc1f .L0f04392c
/* f043858: 00000000 */ nop
/* f04385c: 4602003e */ c.le.s $f0,$f2
/* f043860: 8fa40044 */ lw $a0,0x44($sp)
/* f043864: 45000031 */ bc1f .L0f04392c
/* f043868: 00000000 */ nop
/* f04386c: 0c007468 */ jal modelGetAnimEndFrame
/* f043870: e7ac0040 */ swc1 $f12,0x40($sp)
/* f043874: c7ac0040 */ lwc1 $f12,0x40($sp)
/* f043878: 460c003e */ c.le.s $f0,$f12
/* f04387c: 00000000 */ nop
/* f043880: 4500002a */ bc1f .L0f04392c
/* f043884: 00000000 */ nop
/* f043888: 0c00744f */ jal modelGetAnimNum
/* f04388c: 8fa40044 */ lw $a0,0x44($sp)
/* f043890: 3c063f4c */ lui $a2,0x3f4c
/* f043894: 34c6cccd */ ori $a2,$a2,0xcccd
/* f043898: a7a20026 */ sh $v0,0x26($sp)
/* f04389c: 8fa40048 */ lw $a0,0x48($sp)
/* f0438a0: 0fc0b857 */ jal chrGetRangedSpeed
/* f0438a4: 3c053f00 */ lui $a1,0x3f00
/* f0438a8: 8fa40044 */ lw $a0,0x44($sp)
/* f0438ac: 8fb90048 */ lw $t9,0x48($sp)
/* f0438b0: 3c014180 */ lui $at,0x4180
/* f0438b4: 8c8e0020 */ lw $t6,0x20($a0)
/* f0438b8: 8f28002c */ lw $t0,0x2c($t9)
/* f0438bc: 44812000 */ mtc1 $at,$f4
/* f0438c0: 81c60008 */ lb $a2,0x8($t6)
/* f0438c4: 8d070024 */ lw $a3,0x24($t0)
/* f0438c8: e7a00010 */ swc1 $f0,0x10($sp)
/* f0438cc: 87a50026 */ lh $a1,0x26($sp)
/* f0438d0: 0c007733 */ jal modelSetAnimation
/* f0438d4: e7a40014 */ swc1 $f4,0x14($sp)
/* f0438d8: 8faa0048 */ lw $t2,0x48($sp)
/* f0438dc: 8fac0048 */ lw $t4,0x48($sp)
/* f0438e0: 81490037 */ lb $t1,0x37($t2)
/* f0438e4: 5120000e */ beqzl $t1,.L0f043920
/* f0438e8: 8d8d002c */ lw $t5,0x2c($t4)
/* f0438ec: 8d4b002c */ lw $t3,0x2c($t2)
/* f0438f0: 44803000 */ mtc1 $zero,$f6
/* f0438f4: c5600014 */ lwc1 $f0,0x14($t3)
/* f0438f8: 4600303e */ c.le.s $f6,$f0
/* f0438fc: 00000000 */ nop
/* f043900: 4500000a */ bc1f .L0f04392c
/* f043904: 00000000 */ nop
/* f043908: 44050000 */ mfc1 $a1,$f0
/* f04390c: 0c007787 */ jal modelSetAnimEndFrame
/* f043910: 8fa40044 */ lw $a0,0x44($sp)
/* f043914: 10000005 */ b .L0f04392c
/* f043918: 00000000 */ nop
/* f04391c: 8d8d002c */ lw $t5,0x2c($t4)
.L0f043920:
/* f043920: 8fa40044 */ lw $a0,0x44($sp)
/* f043924: 0c007787 */ jal modelSetAnimEndFrame
/* f043928: 8da5001c */ lw $a1,0x1c($t5)
.L0f04392c:
/* f04392c: 0fc10792 */ jal func0f041e48
/* f043930: 8fa40048 */ lw $a0,0x48($sp)
/* f043934: 8fbf001c */ lw $ra,0x1c($sp)
.L0f043938:
/* f043938: 27bd0048 */ addiu $sp,$sp,0x48
/* f04393c: 03e00008 */ jr $ra
/* f043940: 00000000 */ nop
);
void chrTickAttackRoll(struct chrdata *chr)
{
if (chr->hidden & CHRHFLAG_NEEDANIM) {
if (modelIsAnimMerging(chr->model)) {
return;
}
chrAttackRollChooseAnimation(chr);
chr->hidden &= ~CHRHFLAG_NEEDANIM;
}
if (chr->act_attack.onehanded) {
struct model *model = chr->model;
f32 curframe = modelGetCurAnimFrame(model);
if (chr->act_attack.animcfg == &g_RollAttackAnims[4]
|| chr->act_attack.animcfg == &g_RollAttackAnims[5]
|| chr->act_attack.animcfg == &g_RollAttackAnims[6]
|| chr->act_attack.animcfg == &g_RollAttackAnims[7]) {
if (curframe >= chr->act_attack.animcfg->unk14) {
struct attackanimconfig *newanimcfg = chr->act_attack.animcfg + 4;
bool flip = model->anim->flip;
f32 sp34 = 16;
if (chr->act_attack.firegun[HAND_LEFT] && chr->act_attack.firegun[HAND_RIGHT]) {
if (random() % 2 == 0) {
newanimcfg += 4;
} else {
newanimcfg += 8;
}
}
if (newanimcfg == &g_RollAttackAnims[8]) {
sp34 = 24;
} else if (newanimcfg == &g_RollAttackAnims[9]) {
sp34 = 24;
} else if (newanimcfg == &g_RollAttackAnims[10]) {
sp34 = 32;
} else if (newanimcfg == &g_RollAttackAnims[11]) {
sp34 = 44;
} else if (newanimcfg == &g_RollAttackAnims[12]) {
sp34 = 24;
} else if (newanimcfg == &g_RollAttackAnims[13]) {
sp34 = 34;
} else if (newanimcfg == &g_RollAttackAnims[14]) {
sp34 = 32;
} else if (newanimcfg == &g_RollAttackAnims[15]) {
sp34 = 44;
} else if (newanimcfg == &g_RollAttackAnims[16]) {
sp34 = 24;
} else if (newanimcfg == &g_RollAttackAnims[17]) {
sp34 = 34;
} else if (newanimcfg == &g_RollAttackAnims[18]) {
sp34 = 32;
} else if (newanimcfg == &g_RollAttackAnims[19]) {
sp34 = 44;
}
chr->act_attack.turning = 2;
chr->act_attack.animcfg = newanimcfg;
chr->sleep = 0;
modelSetAnimation(model, newanimcfg->animnum, flip, newanimcfg->unk10,
chrGetRangedSpeed(chr, 0.5f, 0.8f), sp34);
if (chr->act_attack.dorecoil) {
if (newanimcfg->unk24 >= 0.0f) {
modelSetAnimEndFrame(model, newanimcfg->unk24);
} else {
modelSetAnimEndFrame(model, newanimcfg->unk1c);
}
} else {
if (newanimcfg->unk20 >= 0.0f) {
modelSetAnimEndFrame(model, newanimcfg->unk20);
} else {
if (newanimcfg->unk14 >= 0.0f) {
modelSetAnimEndFrame(model, newanimcfg->unk14);
}
}
}
if (chr->act_attack.animcfg->unk0c != 0.0f) {
union modelrwdata *rwdata = modelGetNodeRwData(model, model->filedata->rootnode);
rwdata->chrinfo.unk5c = sp34;
rwdata->chrinfo.unk58 = -chr->act_attack.animcfg->unk0c / sp34;
if (flip) {
rwdata->chrinfo.unk58 = -rwdata->chrinfo.unk58;
}
}
}
} else if (chr->act_attack.animcfg == &g_RollAttackAnims[8]
|| chr->act_attack.animcfg == &g_RollAttackAnims[9]
|| chr->act_attack.animcfg == &g_RollAttackAnims[10]
|| chr->act_attack.animcfg == &g_RollAttackAnims[11]
|| chr->act_attack.animcfg == &g_RollAttackAnims[12]
|| chr->act_attack.animcfg == &g_RollAttackAnims[13]
|| chr->act_attack.animcfg == &g_RollAttackAnims[14]
|| chr->act_attack.animcfg == &g_RollAttackAnims[15]
|| chr->act_attack.animcfg == &g_RollAttackAnims[16]
|| chr->act_attack.animcfg == &g_RollAttackAnims[17]
|| chr->act_attack.animcfg == &g_RollAttackAnims[18]
|| chr->act_attack.animcfg == &g_RollAttackAnims[19]) {
if (!chr->act_attack.dorecoil
&& chr->act_attack.animcfg->unk24 > 0
&& curframe <= chr->act_attack.animcfg->unk24
&& curframe >= modelGetAnimEndFrame(model)) {
modelSetAnimation(model, modelGetAnimNum(model), model->anim->flip,
chr->act_attack.animcfg->unk24, chrGetRangedSpeed(chr, 0.5f, 0.8f), 16);
if (chr->act_attack.dooneburst) {
if (chr->act_attack.animcfg->unk14 >= 0) {
modelSetAnimEndFrame(model, chr->act_attack.animcfg->unk14);
}
} else {
u32 stack;
modelSetAnimEndFrame(model, chr->act_attack.animcfg->unk1c);
}
}
}
}
func0f041e48(chr);
}
void propPrintDangerous(void)
{
+4 -4
View File
@@ -408,8 +408,8 @@ glabel func0f000648
/* f000784: 3c148006 */ lui $s4,%hi(g_KneelHeavyAttackAnims)
/* f000788: 3c158006 */ lui $s5,%hi(g_KneelLightAttackAnims)
/* f00078c: 3c108006 */ lui $s0,%hi(g_KneelDualAttackAnims)
/* f000790: 3c168006 */ lui $s6,%hi(g_AttackAnimRollHeavyLeft1)
/* f000794: 26d67428 */ addiu $s6,$s6,%lo(g_AttackAnimRollHeavyLeft1)
/* f000790: 3c168006 */ lui $s6,%hi(g_RollAttackAnims)
/* f000794: 26d67428 */ addiu $s6,$s6,%lo(g_RollAttackAnims)
/* f000798: 26107328 */ addiu $s0,$s0,%lo(g_KneelDualAttackAnims)
/* f00079c: 26b56ef0 */ addiu $s5,$s5,%lo(g_KneelLightAttackAnims)
/* f0007a0: 26946a70 */ addiu $s4,$s4,%lo(g_KneelHeavyAttackAnims)
@@ -436,9 +436,9 @@ glabel func0f000648
/* f0007f0: 26940080 */ addiu $s4,$s4,0x80
/* f0007f4: 1616ffee */ bne $s0,$s6,.L0f0007b0
/* f0007f8: 26b50080 */ addiu $s5,$s5,0x80
/* f0007fc: 3c048006 */ lui $a0,%hi(g_AttackAnimRollHeavyLeft1)
/* f0007fc: 3c048006 */ lui $a0,%hi(g_RollAttackAnims)
/* f000800: 0fc00103 */ jal func0f00040c
/* f000804: 24847428 */ addiu $a0,$a0,%lo(g_AttackAnimRollHeavyLeft1)
/* f000804: 24847428 */ addiu $a0,$a0,%lo(g_RollAttackAnims)
/* f000808: 3c048006 */ lui $a0,%hi(g_AttackAnimHeavyWalk)
/* f00080c: 0fc00103 */ jal func0f00040c
/* f000810: 24847a10 */ addiu $a0,$a0,%lo(g_AttackAnimHeavyWalk)
+1 -1
View File
@@ -206,7 +206,7 @@ extern struct attackanimgroup *g_StandDualAttackAnims[][32];
extern struct attackanimgroup *g_KneelHeavyAttackAnims[][32];
extern struct attackanimgroup *g_KneelLightAttackAnims[][32];
extern struct attackanimgroup *g_KneelDualAttackAnims[][32];
extern struct attackanimconfig g_AttackAnimRollHeavyLeft1;
extern struct attackanimconfig g_RollAttackAnims[];
extern struct attackanimconfig g_AttackAnimHeavyWalk;
extern struct attackanimconfig g_AttackAnimHeavyRun;
extern struct attackanimconfig g_AttackAnimLightWalk;
+1 -1
View File
@@ -724,7 +724,7 @@ struct modelrwdata_chrinfo { // type 0x01
struct coord unk34;
struct coord unk40; // "2" version of unk24
struct coord unk4c; // "2" version of unk34
u32 unk58;
f32 unk58;
f32 unk5c;
};