mirror of
https://gitlab.com/dk64_decomp/dk64.git
synced 2024-11-23 07:01:58 +00:00
Tons of labels
This commit is contained in:
parent
edca33ee94
commit
9cdfce0dcf
@ -127,6 +127,13 @@ int gameIsInQuitGameMode(void);
|
||||
|
||||
s32 countSetFlags(s32 startIndex, s32 length, u8 flagType);
|
||||
|
||||
void changeCollectableCount(s32 HUDItemIndex, u8 playerIndex, s16 amount);
|
||||
|
||||
Chunk14 *func_global_asm_80630588(Chunk14 *arg0, Model2Model *arg1, u8 arg2, u8 *arg3);
|
||||
|
||||
void addActorRecolor(Actor *actor, s16 x, s16 y, s16 z, s32 alpha, s32 red, s32 green, s32 blue, s32);
|
||||
Struct80717D84 *func_global_asm_80714D08(void *sprite, f32 scale, f32 x, f32 y, f32 z, Actor *actor, s32 arg6, s32 boneIndex, u8 arg8);
|
||||
|
||||
// TODO: Not 100% on return type
|
||||
u8 getBonePosition(Actor *actor, s32 boneIndex, f32 *x, f32 *y, f32 *z);
|
||||
|
||||
@ -194,7 +201,6 @@ void func_global_asm_806EB744(void);
|
||||
void func_global_asm_806EB8CC(void);
|
||||
void func_global_asm_806EB964(void);
|
||||
void func_global_asm_806EBA04(void);
|
||||
// TODO: Signatures deduplicated up to here
|
||||
void func_global_asm_806EBA74(void);
|
||||
void func_global_asm_806EBAF4(void);
|
||||
void func_global_asm_806EBB44(void);
|
||||
@ -209,6 +215,7 @@ void func_global_asm_806EBF74(void);
|
||||
void func_global_asm_806EBFD0(void);
|
||||
void func_global_asm_806EC014(void);
|
||||
void func_global_asm_806EC044(void);
|
||||
// TODO: Signatures deduplicated up to here
|
||||
void func_global_asm_806EC1A8(void);
|
||||
void func_global_asm_806EC2CC(void);
|
||||
void func_global_asm_806EC3BC(void);
|
||||
@ -828,7 +835,7 @@ void func_global_asm_806E1630(void);
|
||||
void func_global_asm_806CC948();
|
||||
void func_global_asm_806CFECC(void);
|
||||
void func_global_asm_806D2378();
|
||||
void func_global_asm_806F4D70(u8 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4);
|
||||
void func_global_asm_806F4D70(u8 playerIndex, f32 x, f32 y, f32 z, f32 arg4);
|
||||
void func_global_asm_806D3608(void);
|
||||
void func_global_asm_80685210(f32 arg0, s16 arg1, s16 arg2);
|
||||
void func_global_asm_806F142C(Actor*);
|
||||
@ -1235,7 +1242,7 @@ s32 func_global_asm_806FBB9C(s16 textureIndex);
|
||||
void func_global_asm_80663C60(f32 *arg0, s16 arg1);
|
||||
void func_global_asm_8072ED90(void);
|
||||
u8 func_global_asm_8072F4A8(Actor *arg0, u8 arg1, f32 *arg2, f32 *arg3, f32 *arg4);
|
||||
void func_global_asm_80730D60(s32 arg0, u8 arg1, u8 arg2, u8 arg3, void **arg4, void **arg5);
|
||||
void func_global_asm_80730D60(Actor *arg0, u8 arg1, u8 arg2, u8 arg3, void **arg4, void **arg5);
|
||||
s32 func_global_asm_8067B2C0(s32);
|
||||
void func_global_asm_80678F64(Actor*);
|
||||
s16 func_global_asm_8067AF74(Actor*);
|
||||
|
@ -1269,7 +1269,7 @@ struct actor {
|
||||
f32 y_velocity; // at 0xC0
|
||||
f32 y_acceleration; // at 0xC4
|
||||
f32 terminal_velocity; // at 0xC8
|
||||
u8 unkCC; // Used
|
||||
u8 unkCC; // Used, bone index?
|
||||
u8 unkCD;
|
||||
u8 unkCE;
|
||||
u8 unkCF;
|
||||
|
@ -2288,7 +2288,6 @@ us,asm,func_global_asm_806FDF1C,56,yes
|
||||
us,asm,func_global_asm_806F14BC,428,yes
|
||||
us,asm,func_global_asm_8063643C,12,yes
|
||||
us,asm,func_global_asm_806B63E0,44,yes
|
||||
us,asm,func_global_asm_806F91B4,568,no
|
||||
us,asm,func_global_asm_80641A78,136,yes
|
||||
us,asm,func_global_asm_8072EE7C,256,yes
|
||||
us,asm,func_global_asm_806B1EE8,32,yes
|
||||
@ -2331,6 +2330,7 @@ us,asm,func_global_asm_8066EAEC,84,yes
|
||||
us,asm,func_global_asm_8072DC7C,120,yes
|
||||
us,asm,func_global_asm_80644A18,680,no
|
||||
us,asm,func_global_asm_806D4010,556,yes
|
||||
us,asm,changeCollectableCount,568,no
|
||||
us,asm,func_global_asm_807300BC,844,no
|
||||
us,asm,func_global_asm_80726E60,128,yes
|
||||
us,asm,func_global_asm_80675180,180,no
|
||||
|
|
@ -2288,7 +2288,6 @@ us,asm,func_global_asm_806FDF1C,56,yes
|
||||
us,asm,func_global_asm_806F14BC,428,yes
|
||||
us,asm,func_global_asm_8063643C,12,yes
|
||||
us,asm,func_global_asm_806B63E0,44,yes
|
||||
us,asm,func_global_asm_806F91B4,568,no
|
||||
us,asm,func_global_asm_80641A78,136,yes
|
||||
us,asm,func_global_asm_8072EE7C,256,yes
|
||||
us,asm,func_global_asm_806B1EE8,32,yes
|
||||
@ -2331,6 +2330,7 @@ us,asm,func_global_asm_8066EAEC,84,yes
|
||||
us,asm,func_global_asm_8072DC7C,120,yes
|
||||
us,asm,func_global_asm_80644A18,680,no
|
||||
us,asm,func_global_asm_806D4010,556,yes
|
||||
us,asm,changeCollectableCount,568,no
|
||||
us,asm,func_global_asm_807300BC,844,no
|
||||
us,asm,func_global_asm_80726E60,128,yes
|
||||
us,asm,func_global_asm_80675180,180,no
|
||||
|
|
@ -81,14 +81,14 @@ u8 func_bonus_80025480(Actor **arg0, u8 arg1) {
|
||||
return D_bonus_8002D8B0[arg1][arg0[arg1]->unk15F];
|
||||
}
|
||||
|
||||
void func_bonus_800254B0(s16 arg0, s16 arg1, s16 arg2, s16 arg3) {
|
||||
void func_bonus_800254B0(s16 x, s16 y, s16 z, s16 count) {
|
||||
s16 i;
|
||||
|
||||
for (i = 0; i < arg3; i++) {
|
||||
for (i = 0; i < count; i++) {
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_8071498C(&func_global_asm_80717404);
|
||||
func_global_asm_80714950(1);
|
||||
drawSpriteAtPosition(D_global_asm_8074E880[((rand() >> 0xF) % 1000) % 3], 0.3f, arg0, arg1, arg2);
|
||||
drawSpriteAtPosition(D_global_asm_8074E880[((rand() >> 0xF) % 1000) % 3], 0.3f, x, y, z);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -107,9 +107,9 @@ typedef struct {
|
||||
|
||||
void func_bonus_8002733C(Struct8002733C *arg0) {
|
||||
s16 i;
|
||||
s16 var_s2;
|
||||
s16 x;
|
||||
|
||||
var_s2 = 0x118;
|
||||
x = 280;
|
||||
for (i = 0; i < 5; i++) {
|
||||
if (arg0->unk4[i] != NULL) {
|
||||
func_global_asm_80715908(arg0->unk4[i]);
|
||||
@ -121,8 +121,8 @@ void func_bonus_8002733C(Struct8002733C *arg0) {
|
||||
func_global_asm_80714944(i * 3);
|
||||
func_global_asm_8071498C(&func_global_asm_8071A038);
|
||||
func_global_asm_80714950(&arg0->unk18[i]);
|
||||
arg0->unk4[i] = drawSpriteAtPosition(&D_global_asm_8071FFD4, 1.0f, var_s2, 210.0f, -10.0f);
|
||||
var_s2 -= 0x1E;
|
||||
arg0->unk4[i] = drawSpriteAtPosition(&D_global_asm_8071FFD4, 1.0f, x, 210.0f, -10.0f);
|
||||
x -= 30;
|
||||
}
|
||||
playSound(0x3E4, 0x7FFF, 63.0f, 1.0f, 5, 0);
|
||||
}
|
||||
|
@ -148,20 +148,20 @@ void func_boss_8002A55C(u8 arg0, f32 arg1) {
|
||||
}
|
||||
|
||||
void func_boss_8002A5CC(void) {
|
||||
f32 sp6C;
|
||||
f32 sp68;
|
||||
f32 sp64;
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
s16 i;
|
||||
|
||||
getBonePosition(current_actor_pointer, 1, &sp6C, &sp68, &sp64);
|
||||
sp6C += ((rand() >> 0xF) % 80) - 40;
|
||||
sp68 += ((rand() >> 0xF) % 100) + 50;
|
||||
sp64 += ((rand() >> 0xF) % 80) - 40;
|
||||
getBonePosition(current_actor_pointer, 1, &x, &y, &z);
|
||||
x += ((rand() >> 0xF) % 80) - 40;
|
||||
y += ((rand() >> 0xF) % 100) + 50;
|
||||
z += ((rand() >> 0xF) % 80) - 40;
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_8071498C(&func_global_asm_8071EDEC);
|
||||
func_global_asm_80714950(current_actor_pointer);
|
||||
changeActorColor(0xFF, 0xD7, 0x58, 0xFF);
|
||||
drawSpriteAtPosition(&D_global_asm_80720120, 1.5f, sp6C, sp68, sp64);
|
||||
drawSpriteAtPosition(&D_global_asm_80720120, 1.5f, x, y, z);
|
||||
for (i = 0; i < 4; i++) {
|
||||
func_global_asm_80714998(2);
|
||||
func_global_asm_8071498C(&func_global_asm_8071720C);
|
||||
|
@ -363,7 +363,7 @@ void func_critter_80027DC0(void) {
|
||||
current_actor_pointer->control_state_progress = 1;
|
||||
func_global_asm_80604CBC(player_pointer, 0x104, 0x3C, 1, 1, 0xFF, 1.0f, 0);
|
||||
func_global_asm_806F8BC4(6, 0, 0);
|
||||
func_global_asm_806F91B4(6, extra_player_info_pointer->unk1A4, 999);
|
||||
changeCollectableCount(6, extra_player_info_pointer->unk1A4, 999);
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
|
@ -104,7 +104,6 @@ extern s16 D_global_asm_807FDB3E;
|
||||
extern s16 D_global_asm_807FDB40;
|
||||
extern s16 D_global_asm_807FDB42;
|
||||
|
||||
Struct80717D84 *func_global_asm_80714D08(void*, f32, f32, f32, f32, s32, s32, s32, u8);
|
||||
void func_global_asm_80714A9C(void);
|
||||
void func_global_asm_80718380(Struct80717D84 *arg0, s8 *arg1);
|
||||
int func_global_asm_80717404(); // TODO: Signature
|
||||
@ -250,29 +249,29 @@ void func_global_asm_80714A9C(void) {
|
||||
D_global_asm_807FDB3A = 0x258;
|
||||
}
|
||||
|
||||
Struct80717D84 *func_global_asm_80714B84(void *arg0, f32 arg1, s32 arg2, s32 arg3, u8 arg4) {
|
||||
f32 sp3C;
|
||||
f32 sp38;
|
||||
f32 sp34;
|
||||
|
||||
func_global_asm_806335B0(arg2, 1, arg3, &sp3C, &sp38, &sp34);
|
||||
return func_global_asm_80714D08(arg0, arg1, sp3C, sp38, sp34, 0, arg2, arg3, arg4);
|
||||
}
|
||||
|
||||
Struct80717D84 *func_global_asm_80714C08(void *sprite, f32 scale, Actor *arg2, s32 arg3, u8 arg4) {
|
||||
Struct80717D84 *func_global_asm_80714B84(void *sprite, f32 scale, s32 arg2, s32 boneIndex, u8 arg4) {
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
|
||||
getBonePosition(arg2, arg3, &x, &y, &z);
|
||||
if (!(arg2->object_properties_bitfield & 0x200) && (arg2->animation_state != NULL) && (D_global_asm_807FDB36 & 0x80)) {
|
||||
func_global_asm_806335B0(arg2, 1, boneIndex, &x, &y, &z);
|
||||
return func_global_asm_80714D08(sprite, scale, x, y, z, NULL, arg2, boneIndex, arg4);
|
||||
}
|
||||
|
||||
Struct80717D84 *func_global_asm_80714C08(void *sprite, f32 scale, Actor *actor, s32 boneIndex, u8 arg4) {
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
|
||||
getBonePosition(actor, boneIndex, &x, &y, &z);
|
||||
if (!(actor->object_properties_bitfield & 0x200) && (actor->animation_state != NULL) && (D_global_asm_807FDB36 & 0x80)) {
|
||||
func_global_asm_80714A38(0x40);
|
||||
}
|
||||
return func_global_asm_80714D08(sprite, scale, x, y, z, arg2, 0, arg3, arg4);
|
||||
return func_global_asm_80714D08(sprite, scale, x, y, z, actor, 0, boneIndex, arg4);
|
||||
}
|
||||
|
||||
Struct80717D84 *drawSpriteAtPosition(void* sprite, f32 scale, f32 x, f32 y, f32 z) {
|
||||
return func_global_asm_80714D08(sprite, scale, x, y, z, 0, 0, 0, 0);
|
||||
return func_global_asm_80714D08(sprite, scale, x, y, z, NULL, 0, 0, 0);
|
||||
}
|
||||
|
||||
extern u8 D_global_asm_80750AB4;
|
||||
@ -290,17 +289,17 @@ extern s16 D_global_asm_807FDB3C;
|
||||
|
||||
void func_global_asm_80714778(f32);
|
||||
|
||||
Struct80717D84 *func_global_asm_80714D08(void *arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4, s32 arg5, s32 arg6, s32 arg7, u8 arg8) {
|
||||
Struct80717D84 *func_global_asm_80714D08(void *sprite, f32 scale, f32 x, f32 y, f32 z, Actor *actor, s32 arg6, s32 boneIndex, u8 arg8) {
|
||||
Struct80717D84 *sp2C;
|
||||
s32 i;
|
||||
s32 var_v0;
|
||||
Struct807FDB00 *var_s0;
|
||||
|
||||
func_global_asm_80714778(arg1);
|
||||
func_global_asm_80714778(scale);
|
||||
var_s0 = D_global_asm_807FDB00;
|
||||
var_v0 = 0;
|
||||
while (!var_v0 && var_s0 != NULL) {
|
||||
if (arg0 == var_s0->unk0) {
|
||||
if (sprite == var_s0->unk0) {
|
||||
var_v0 = 1;
|
||||
} else {
|
||||
var_s0 = var_s0->next;
|
||||
@ -320,22 +319,22 @@ Struct80717D84 *func_global_asm_80714D08(void *arg0, f32 arg1, f32 arg2, f32 arg
|
||||
}
|
||||
D_global_asm_807FDB08 = sp2C;
|
||||
if (D_global_asm_807FDB1D != 0) {
|
||||
arg2 *= 4.0f;
|
||||
arg3 *= 4.0f;
|
||||
arg4 *= 4.0f;
|
||||
arg1 *= 4.0f;
|
||||
x *= 4.0f;
|
||||
y *= 4.0f;
|
||||
z *= 4.0f;
|
||||
scale *= 4.0f;
|
||||
D_global_asm_807FDB20 *= 4.0f;
|
||||
D_global_asm_807FDB24 *= 4.0f;
|
||||
}
|
||||
sp2C->unk340 = arg2;
|
||||
sp2C->unk344 = arg3;
|
||||
sp2C->unk348 = arg4;
|
||||
sp2C->unk340 = x;
|
||||
sp2C->unk344 = y;
|
||||
sp2C->unk348 = z;
|
||||
if (D_global_asm_807FDB28 != 0) {
|
||||
sp2C->unk360 = D_global_asm_807FDB20;
|
||||
sp2C->unk364 = D_global_asm_807FDB24;
|
||||
} else {
|
||||
sp2C->unk360 = arg1;
|
||||
sp2C->unk364 = arg1;
|
||||
sp2C->unk360 = scale;
|
||||
sp2C->unk364 = scale;
|
||||
}
|
||||
if (D_global_asm_807FDB0F != 0) {
|
||||
sp2C->unk36A = D_global_asm_807FDB0C;
|
||||
@ -353,9 +352,9 @@ Struct80717D84 *func_global_asm_80714D08(void *arg0, f32 arg1, f32 arg2, f32 arg
|
||||
sp2C->unk368 = D_global_asm_807FDB1A;
|
||||
sp2C->unk380 = var_s0->unk8 * var_s0->unk9;
|
||||
sp2C->unk334 = arg8;
|
||||
sp2C->unk338 = arg5;
|
||||
sp2C->unk338 = actor;
|
||||
sp2C->unk33C = arg6;
|
||||
sp2C->unk33E = arg7;
|
||||
sp2C->unk33E = boneIndex;
|
||||
sp2C->unk34E = D_global_asm_807FDB30;
|
||||
sp2C->unk350 = D_global_asm_807FDB1C;
|
||||
sp2C->unk351 = 0;
|
||||
@ -421,7 +420,6 @@ void func_global_asm_807158C0(void) {
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_119370/func_global_asm_80715908.s")
|
||||
|
||||
/*
|
||||
? func_global_asm_80630588(?, void *, ?, ? *);
|
||||
extern s32 D_80000310;
|
||||
extern void *D_global_asm_807FDB04;
|
||||
extern void *D_global_asm_807FDB08;
|
||||
@ -816,11 +814,11 @@ void func_global_asm_807180F4(s32 arg0, s32 arg1) {
|
||||
func_global_asm_80716FB4(arg0, arg1);
|
||||
}
|
||||
|
||||
void func_global_asm_80718124(f32 arg0, f32 arg1, f32 arg2, f32 arg3) {
|
||||
void func_global_asm_80718124(f32 scale, f32 x, f32 y, f32 z) {
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_80714998(3);
|
||||
func_global_asm_8071498C(&func_global_asm_80718380);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FEF4, arg0, arg1, arg2, arg3);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FEF4, scale, x, y, z);
|
||||
}
|
||||
|
||||
void func_global_asm_80718188(Struct80717D84 *arg0, s8 *arg1) {
|
||||
@ -1702,7 +1700,7 @@ extern s32 D_global_asm_8071FB54;
|
||||
|
||||
void func_global_asm_8071C24C(Struct80717D84 *arg0, u8 *arg1) {
|
||||
s32 pad;
|
||||
f32 sp50;
|
||||
f32 y;
|
||||
s16 sp48[3];
|
||||
|
||||
if (arg0->unk384 == NULL) {
|
||||
@ -1717,10 +1715,10 @@ void func_global_asm_8071C24C(Struct80717D84 *arg0, u8 *arg1) {
|
||||
arg0->unk340 += 1.0f;
|
||||
arg0->unk344 += arg0->unk384_f32->unk0;
|
||||
arg0->unk384_f32->unk0 -= D_global_asm_8075E9B8;
|
||||
sp50 = arg0->unk344;
|
||||
if (func_global_asm_80667110(arg0->unk340, arg0->unk348, &sp50) == 0) {
|
||||
y = arg0->unk344;
|
||||
if (func_global_asm_80667110(arg0->unk340, arg0->unk348, &y) == 0) {
|
||||
*arg1 = 1;
|
||||
} else if (arg0->unk344 < sp50) {
|
||||
} else if (arg0->unk344 < y) {
|
||||
if (arg0->unk384_f32->unk0 < 0.0) {
|
||||
*arg1 = 1;
|
||||
}
|
||||
@ -1732,7 +1730,7 @@ void func_global_asm_8071C24C(Struct80717D84 *arg0, u8 *arg1) {
|
||||
func_global_asm_80714950(1);
|
||||
func_global_asm_8071498C(&func_global_asm_8071C004);
|
||||
func_global_asm_80714944(7);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FB54, 0.667f, arg0->unk340, sp50 + 10.0f, arg0->unk348);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FB54, 0.667f, arg0->unk340, y + 10.0f, arg0->unk348);
|
||||
}
|
||||
createLight(arg0->unk340, arg0->unk344, arg0->unk348, 0.0f, 0.0f, 0.0f, 200.0f, 0, sp48[0], sp48[1], sp48[2]);
|
||||
}
|
||||
@ -2329,11 +2327,11 @@ void func_global_asm_8071EA24(Struct80717D84 *arg0, s32 arg1) {
|
||||
|
||||
void func_global_asm_8071EB70(Struct80717D84 *arg0, s32 arg1) {
|
||||
f32 *var_v1;
|
||||
f32 temp_f0_2;
|
||||
f32 d;
|
||||
f32 temp_f16;
|
||||
f32 temp_f14;
|
||||
f32 temp_f0;
|
||||
f32 temp_f2;
|
||||
f32 dz;
|
||||
f32 dx;
|
||||
f32 dy;
|
||||
s32 var_f12; // Amazingly this is correct
|
||||
|
||||
temp_f16 = (arg0->unk35C * 3) / 4;
|
||||
@ -2343,15 +2341,15 @@ void func_global_asm_8071EB70(Struct80717D84 *arg0, s32 arg1) {
|
||||
*var_v1 = arg0->unk36D;
|
||||
}
|
||||
var_v1 = arg0->unk384;
|
||||
temp_f0 = character_change_array->unk224 - arg0->unk348;
|
||||
temp_f2 = character_change_array->unk21C - arg0->unk340;
|
||||
temp_f14 = character_change_array->unk220 - arg0->unk344;
|
||||
temp_f0_2 = sqrtf((temp_f0 * temp_f0) + ((temp_f2 * temp_f2) + (temp_f14 * temp_f14)));
|
||||
if (temp_f0_2 < temp_f16) {
|
||||
dx = character_change_array->unk224 - arg0->unk348;
|
||||
dy = character_change_array->unk21C - arg0->unk340;
|
||||
dz = character_change_array->unk220 - arg0->unk344;
|
||||
d = sqrtf((dx * dx) + ((dy * dy) + (dz * dz)));
|
||||
if (d < temp_f16) {
|
||||
arg0->unk36D = *var_v1;
|
||||
return;
|
||||
}
|
||||
var_f12 = (*var_v1 * ((temp_f0_2 - temp_f16) / (arg0->unk35C - temp_f16)));
|
||||
var_f12 = (*var_v1 * ((d - temp_f16) / (arg0->unk35C - temp_f16)));
|
||||
if (*var_v1 < var_f12) {
|
||||
var_f12 = *var_v1;
|
||||
}
|
||||
@ -2360,15 +2358,15 @@ void func_global_asm_8071EB70(Struct80717D84 *arg0, s32 arg1) {
|
||||
|
||||
void func_global_asm_8071EDEC(Struct80717D84 *arg0, s32 arg1) {
|
||||
f64 temp;
|
||||
f32 sp34;
|
||||
f32 sp30;
|
||||
f32 sp2C;
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
|
||||
getBonePosition(arg0->unk35C, 1, &sp34, &sp30, &sp2C);
|
||||
getBonePosition(arg0->unk35C, 1, &x, &y, &z);
|
||||
temp = D_global_asm_8075EAA0;
|
||||
arg0->unk340 += (sp34 - arg0->unk340) * temp;
|
||||
arg0->unk344 += (sp30 - arg0->unk344) * temp;
|
||||
arg0->unk348 += (sp2C - arg0->unk348) * temp;
|
||||
arg0->unk340 += (x - arg0->unk340) * temp;
|
||||
arg0->unk344 += (y - arg0->unk344) * temp;
|
||||
arg0->unk348 += (z - arg0->unk348) * temp;
|
||||
}
|
||||
|
||||
void func_global_asm_8071EEA4(Struct80717D84 *arg0, s32 arg1) {
|
||||
|
@ -5,12 +5,12 @@ extern s32 D_global_asm_8071FB34;
|
||||
extern s32 D_global_asm_8071FF18;
|
||||
extern f64 D_global_asm_8075FF20;
|
||||
void func_global_asm_806A5DF0(s32, f32, f32, f32, s32, s32, s32, s32);
|
||||
void func_global_asm_806F91B4(u8, u8, s16);
|
||||
s16 func_global_asm_806CC190(s16, s16, f32);
|
||||
s16 func_global_asm_806CC190(s16, s16, f32);
|
||||
|
||||
extern f64 D_global_asm_8075FF38;
|
||||
|
||||
// doable, close
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_12E800/initializeCharacterSpawnerActor.s")
|
||||
|
||||
extern s8 D_global_asm_807FBB85;
|
||||
@ -28,7 +28,6 @@ typedef struct {
|
||||
void func_global_asm_806663F8(void);
|
||||
|
||||
/*
|
||||
// TODO: Doable, very close!!!
|
||||
void initializeCharacterSpawnerActor(void) {
|
||||
EnemyInfo *temp_t9;
|
||||
AAD_global_asm_80729B00 *temp_t7;
|
||||
@ -660,19 +659,19 @@ void func_global_asm_8072DAA4(void) {
|
||||
}
|
||||
|
||||
void func_global_asm_8072DB68(s32 arg0) {
|
||||
u8 phi_v1;
|
||||
s16 phi_s0;
|
||||
u8 amount;
|
||||
s16 i;
|
||||
|
||||
if (func_global_asm_806F8AD4(0xB, cc_player_index) >= 4) {
|
||||
phi_v1 = 3;
|
||||
amount = 3;
|
||||
} else {
|
||||
phi_v1 = func_global_asm_806F8AD4(0xB, cc_player_index);
|
||||
amount = func_global_asm_806F8AD4(0xB, cc_player_index);
|
||||
}
|
||||
func_global_asm_806F91B4(0xB, cc_player_index, -phi_v1);
|
||||
changeCollectableCount(0xB, cc_player_index, -amount);
|
||||
func_global_asm_806F8BC4(0xB, 0, 0);
|
||||
playSong(0x41, 1.0f);
|
||||
for (phi_s0 = 0; phi_s0 < phi_v1; phi_s0++) {
|
||||
func_global_asm_806A5DF0(0x36, player_pointer->x_position, player_pointer->y_position, player_pointer->z_position, (player_pointer->y_rotation + (phi_s0 * 0xC8)) - 0xC8, 1, -1, 0);
|
||||
for (i = 0; i < amount; i++) {
|
||||
func_global_asm_806A5DF0(0x36, player_pointer->x_position, player_pointer->y_position, player_pointer->z_position, (player_pointer->y_rotation + (i * 200)) - 200, 1, -1, 0);
|
||||
}
|
||||
}
|
||||
|
||||
@ -810,13 +809,13 @@ u8 func_global_asm_8072E22C(u16 arg0) {
|
||||
return ((dx * dx) + (dy * dy) + (dz * dz)) < (arg0 * arg0);
|
||||
}
|
||||
|
||||
void func_global_asm_8072E2B0(Actor *arg0, f32 *arg1, f32 *arg2, f32 *arg3) {
|
||||
void func_global_asm_8072E2B0(Actor *arg0, f32 *x, f32 *y, f32 *z) {
|
||||
if (arg0->unkCC) {
|
||||
getBonePosition(arg0, arg0->unkCC, arg1, arg2, arg3);
|
||||
getBonePosition(arg0, arg0->unkCC, x, y, z);
|
||||
} else {
|
||||
*arg1 = arg0->x_position;
|
||||
*arg2 = arg0->y_position;
|
||||
*arg3 = arg0->z_position;
|
||||
*x = arg0->x_position;
|
||||
*y = arg0->y_position;
|
||||
*z = arg0->z_position;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include "functions.h"
|
||||
|
||||
s32 func_global_asm_8063367C(s32, u8, s32);
|
||||
s32 func_global_asm_80671D64(s32, s32);
|
||||
s32 func_global_asm_80671D64(Actor*, s32);
|
||||
void func_global_asm_8072F230(Actor*, u8, u8);
|
||||
s32 func_global_asm_8061F2B8(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32 *, f32 *, f32 *);
|
||||
f32 func_global_asm_80627A00(f64, f32, f32, f32, f32);
|
||||
@ -318,38 +318,38 @@ s32 func_global_asm_8072F8D4(GlobalASMStruct82 *arg0, s32 arg1, s16 arg2) {
|
||||
}
|
||||
|
||||
f32 func_global_asm_8072FA14(Actor *arg0, PlayerAdditionalActorData *arg1, GlobalASMStruct82 *arg2, u8 arg3) {
|
||||
u8 temp_t0;
|
||||
u8 temp_t1;
|
||||
f32 sp80;
|
||||
f32 sp7C;
|
||||
f32 sp78;
|
||||
f32 sp74;
|
||||
f32 sp70;
|
||||
f32 sp6C;
|
||||
u8 boneIndex1;
|
||||
u8 boneIndex2;
|
||||
f32 z2;
|
||||
f32 y2;
|
||||
f32 x2;
|
||||
f32 z1;
|
||||
f32 y1;
|
||||
f32 x1;
|
||||
f32 sp68;
|
||||
f32 sp64;
|
||||
f32 sp60;
|
||||
f32 var_f2;
|
||||
f32 sp58;
|
||||
f32 sp54;
|
||||
f32 sp50;
|
||||
f32 x3;
|
||||
f32 y3;
|
||||
f32 z3;
|
||||
|
||||
temp_t0 = arg2->unk34[arg3].unk0;
|
||||
temp_t1 = arg2->unk34[arg3].unk1;
|
||||
boneIndex1 = arg2->unk34[arg3].unk0;
|
||||
boneIndex2 = arg2->unk34[arg3].unk1;
|
||||
switch (arg2->unk4) {
|
||||
case 0:
|
||||
getBonePosition(arg2->unk0, temp_t0, &sp6C, &sp70, &sp74);
|
||||
getBonePosition(arg2->unk0, temp_t1, &sp78, &sp7C, &sp80);
|
||||
getBonePosition(arg2->unk0, boneIndex1, &x1, &y1, &z1);
|
||||
getBonePosition(arg2->unk0, boneIndex2, &x2, &y2, &z2);
|
||||
break;
|
||||
case 1:
|
||||
case 2:
|
||||
func_global_asm_806335B0(arg2->unk0, 1, temp_t0, &sp6C, &sp70, &sp74);
|
||||
func_global_asm_806335B0(arg2->unk0, 1, temp_t1, &sp78, &sp7C, &sp80);
|
||||
func_global_asm_806335B0(arg2->unk0, 1, boneIndex1, &x1, &y1, &z1);
|
||||
func_global_asm_806335B0(arg2->unk0, 1, boneIndex2, &x2, &y2, &z2);
|
||||
break;
|
||||
}
|
||||
getBonePosition(arg0, 1, &sp58, &sp54, &sp50);
|
||||
func_global_asm_8061F2B8(sp58, sp54, sp50, sp6C, sp70, sp74, sp78, sp7C, sp80, &sp68, &sp64, &sp60);
|
||||
var_f2 = (sp64 - sp70) / (sp7C - sp70);
|
||||
getBonePosition(arg0, 1, &x3, &y3, &z3);
|
||||
func_global_asm_8061F2B8(x3, y3, z3, x1, y1, z1, x2, y2, z2, &sp68, &sp64, &sp60);
|
||||
var_f2 = (sp64 - y1) / (y2 - y1);
|
||||
if (arg2->unk18 == 2 || arg2->unk18 == 3) {
|
||||
if (arg3 == 0) {
|
||||
if (var_f2 < 0.05) {
|
||||
@ -402,26 +402,26 @@ void func_global_asm_8072FDD4(GlobalASMStruct82 *arg0, f32 arg1, s8 *arg2, f32 *
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_133A90/func_global_asm_80730408.s")
|
||||
|
||||
void func_global_asm_80730AEC(u8 arg0, f32 arg1, GlobalASMStruct82 *arg2, f32 *arg3, f32 *arg4, f32 *arg5) {
|
||||
u8 sp7C[4];
|
||||
u8 bones[4];
|
||||
f32 sp4C[4][3];
|
||||
|
||||
sp7C[0] = arg2->unk34[MAX(arg0 - 1, 0)].unk0;
|
||||
sp7C[1] = arg2->unk34[arg0].unk0;
|
||||
sp7C[2] = arg2->unk34[arg0].unk1;
|
||||
sp7C[3] = arg2->unk34[MIN((arg0 + 1), (arg2->unk7 - 1))].unk1;
|
||||
bones[0] = arg2->unk34[MAX(arg0 - 1, 0)].unk0;
|
||||
bones[1] = arg2->unk34[arg0].unk0;
|
||||
bones[2] = arg2->unk34[arg0].unk1;
|
||||
bones[3] = arg2->unk34[MIN((arg0 + 1), (arg2->unk7 - 1))].unk1;
|
||||
switch (arg2->unk4) {
|
||||
case 1:
|
||||
case 2:
|
||||
func_global_asm_806335B0(arg2->unk0, 1, sp7C[0], &sp4C[0][0], &sp4C[0][1], &sp4C[0][2]);
|
||||
func_global_asm_806335B0(arg2->unk0, 1, sp7C[1], &sp4C[1][0], &sp4C[1][1], &sp4C[1][2]);
|
||||
func_global_asm_806335B0(arg2->unk0, 1, sp7C[2], &sp4C[2][0], &sp4C[2][1], &sp4C[2][2]);
|
||||
func_global_asm_806335B0(arg2->unk0, 1, sp7C[3], &sp4C[3][0], &sp4C[3][1], &sp4C[3][2]);
|
||||
func_global_asm_806335B0(arg2->unk0, 1, bones[0], &sp4C[0][0], &sp4C[0][1], &sp4C[0][2]);
|
||||
func_global_asm_806335B0(arg2->unk0, 1, bones[1], &sp4C[1][0], &sp4C[1][1], &sp4C[1][2]);
|
||||
func_global_asm_806335B0(arg2->unk0, 1, bones[2], &sp4C[2][0], &sp4C[2][1], &sp4C[2][2]);
|
||||
func_global_asm_806335B0(arg2->unk0, 1, bones[3], &sp4C[3][0], &sp4C[3][1], &sp4C[3][2]);
|
||||
break;
|
||||
case 0:
|
||||
getBonePosition(arg2->unk0, sp7C[0], &sp4C[0][0], &sp4C[0][1], &sp4C[0][2]);
|
||||
getBonePosition(arg2->unk0, sp7C[1], &sp4C[0][0], &sp4C[0][1], &sp4C[0][2]);
|
||||
getBonePosition(arg2->unk0, sp7C[1], &sp4C[0][0], &sp4C[0][1], &sp4C[0][2]);
|
||||
getBonePosition(arg2->unk0, sp7C[2], &sp4C[0][0], &sp4C[0][1], &sp4C[0][2]);
|
||||
getBonePosition(arg2->unk0, bones[0], &sp4C[0][0], &sp4C[0][1], &sp4C[0][2]);
|
||||
getBonePosition(arg2->unk0, bones[1], &sp4C[0][0], &sp4C[0][1], &sp4C[0][2]);
|
||||
getBonePosition(arg2->unk0, bones[1], &sp4C[0][0], &sp4C[0][1], &sp4C[0][2]);
|
||||
getBonePosition(arg2->unk0, bones[2], &sp4C[0][0], &sp4C[0][1], &sp4C[0][2]);
|
||||
break;
|
||||
}
|
||||
*arg3 = func_global_asm_80627A00(arg1, sp4C[0][0], sp4C[1][0], sp4C[2][0], sp4C[3][0]);
|
||||
@ -429,7 +429,7 @@ void func_global_asm_80730AEC(u8 arg0, f32 arg1, GlobalASMStruct82 *arg2, f32 *a
|
||||
*arg5 = func_global_asm_80627A00(arg1, sp4C[0][2], sp4C[1][2], sp4C[2][2], sp4C[3][2]);
|
||||
}
|
||||
|
||||
void func_global_asm_80730D60(s32 arg0, u8 arg1, u8 arg2, u8 arg3, void **arg4, void **arg5) {
|
||||
void func_global_asm_80730D60(Actor *arg0, u8 arg1, u8 arg2, u8 arg3, void **arg4, void **arg5) {
|
||||
switch (arg1) {
|
||||
case 0:
|
||||
*arg4 = func_global_asm_80671D64(arg0, arg2);
|
||||
|
@ -844,6 +844,7 @@ void func_global_asm_8062D1E0(Struct8062D1E0_arg0 *arg0, Struct8062D1E0_arg1 *ar
|
||||
}
|
||||
*/
|
||||
|
||||
// TODO: Any cleanup possible for this?
|
||||
void func_global_asm_8062D26C(Actor *arg0) {
|
||||
s32 sp1C;
|
||||
|
||||
|
@ -994,8 +994,6 @@ void func_global_asm_806645B8(s16 arg0);
|
||||
|
||||
void func_global_asm_8066C904(OM2_unk28 *arg0);
|
||||
|
||||
Chunk14 *func_global_asm_80630588(Chunk14 *arg0, s32 arg1, u8 arg2, u8 *arg3);
|
||||
|
||||
void func_global_asm_806593C8(s32 arg0, s32 arg1);
|
||||
void func_global_asm_80636074(ObjectModel2 *arg0);
|
||||
|
||||
|
@ -838,15 +838,15 @@ void func_global_asm_80642844(s16 arg0, s16 arg1, Struct80642844 *arg2, s32 arg3
|
||||
extern s32 D_global_asm_8071FC58;
|
||||
|
||||
void func_global_asm_80642940(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
f32 var_f18;
|
||||
f32 var_f4;
|
||||
f32 var_f6;
|
||||
f32 randomZOffset;
|
||||
f32 randomYOffset;
|
||||
f32 randomXOffset;
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 1; i++) {
|
||||
var_f6 = (((func_global_asm_806119A0() / 10000U) % 200) / 10.0) - 10.0;
|
||||
var_f4 = (((func_global_asm_806119A0() / 10000U) % 200) / 10.0) - 7.0;
|
||||
var_f18 = (((func_global_asm_806119A0() / 10000U) % 200) / 10.0) - 10.0;
|
||||
randomXOffset = (((func_global_asm_806119A0() / 10000U) % 200) / 10.0) - 10.0;
|
||||
randomYOffset = (((func_global_asm_806119A0() / 10000U) % 200) / 10.0) - 7.0;
|
||||
randomZOffset = (((func_global_asm_806119A0() / 10000U) % 200) / 10.0) - 10.0;
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_807149FC(2);
|
||||
func_global_asm_80714950(0x64);
|
||||
@ -854,9 +854,9 @@ void func_global_asm_80642940(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
drawSpriteAtPosition(
|
||||
&D_global_asm_8071FC58,
|
||||
0.5f,
|
||||
D_global_asm_807F621C + var_f6,
|
||||
D_global_asm_807F6220 + var_f4,
|
||||
D_global_asm_807F6224 + var_f18
|
||||
D_global_asm_807F621C + randomXOffset,
|
||||
D_global_asm_807F6220 + randomYOffset,
|
||||
D_global_asm_807F6224 + randomZOffset
|
||||
);
|
||||
}
|
||||
createLight(D_global_asm_807F621C, D_global_asm_807F6220, D_global_asm_807F6224, 0.0f, 0.0f, 0.0f, 300.0f, 0, 0xA6, 0x30, 0xFF);
|
||||
|
@ -247,9 +247,9 @@ typedef struct {
|
||||
void func_global_asm_806436E0(Struct806436E0_arg0 *arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
Struct807F5FD4_unk0 *temp_v0_2;
|
||||
Struct806436E0_malloc *var_v1;
|
||||
s32 sp34;
|
||||
s32 sp30;
|
||||
s32 sp2C;
|
||||
s32 x;
|
||||
s32 y;
|
||||
s32 z;
|
||||
s32 count;
|
||||
|
||||
if (arg0->unk0 == NULL) {
|
||||
@ -266,14 +266,14 @@ void func_global_asm_806436E0(Struct806436E0_arg0 *arg0, s32 arg1, s32 arg2, s32
|
||||
var_v1->unk4 = 0;
|
||||
}
|
||||
temp_v0_2 = &D_global_asm_807F5FD4->unk0[0][var_v1->unk4];
|
||||
sp34 = temp_v0_2->unk0;
|
||||
sp30 = temp_v0_2->unk4;
|
||||
sp2C = temp_v0_2->unk8;
|
||||
x = temp_v0_2->unk0;
|
||||
y = temp_v0_2->unk4;
|
||||
z = temp_v0_2->unk8;
|
||||
func_global_asm_80714998(2);
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_80714950(0);
|
||||
func_global_asm_8071498C(&func_global_asm_8071C004);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FB54, 0.667f, sp34, sp30 + 0xA, sp2C);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FB54, 0.667f, x, y + 10, z);
|
||||
var_v1->unk0 = 0x19;
|
||||
}
|
||||
var_v1->unk0--;
|
||||
@ -289,9 +289,9 @@ extern s32 D_global_asm_8071FE08; // TODO: Datatype
|
||||
extern s32 D_global_asm_8071FE64;
|
||||
extern s32 D_global_asm_8071FE88;
|
||||
extern s32 D_global_asm_8071FEAC;
|
||||
extern f32 D_global_asm_807F621C;
|
||||
extern f32 D_global_asm_807F6220;
|
||||
extern f32 D_global_asm_807F6224;
|
||||
extern f32 D_global_asm_807F621C; // x
|
||||
extern f32 D_global_asm_807F6220; // y
|
||||
extern f32 D_global_asm_807F6224; // z
|
||||
|
||||
int func_global_asm_8071910C(); // TODO: Signature
|
||||
|
||||
@ -299,22 +299,22 @@ void func_global_asm_806438B8(s32 arg0, s16 arg1, s16 arg2, s16 arg3) {
|
||||
s32 pad;
|
||||
s32 temp_s0;
|
||||
s32 i;
|
||||
f32 sp60;
|
||||
f32 sp5C;
|
||||
f32 sp58;
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
|
||||
if (arg2 == 1) {
|
||||
func_global_asm_806335B0(arg1, 1, arg3, &sp60, &sp5C, &sp58);
|
||||
func_global_asm_806335B0(arg1, 1, arg3, &x, &y, &z);
|
||||
} else {
|
||||
sp60 = D_global_asm_807F621C;
|
||||
sp5C = D_global_asm_807F6220;
|
||||
sp58 = D_global_asm_807F6224;
|
||||
x = D_global_asm_807F621C;
|
||||
y = D_global_asm_807F6220;
|
||||
z = D_global_asm_807F6224;
|
||||
}
|
||||
func_global_asm_807149B8(0);
|
||||
func_global_asm_807149FC(1);
|
||||
func_global_asm_80714950(0x100C8);
|
||||
func_global_asm_8071498C(&func_global_asm_8071A8B0);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE08, 1.5f, sp60, sp5C, sp58);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE08, 1.5f, x, y, z);
|
||||
for (i = 0; i < 7; i++) {
|
||||
temp_s0 = (s32)(func_global_asm_806119A0() / 10000U) % 3;
|
||||
func_global_asm_807149B8(1);
|
||||
@ -324,13 +324,13 @@ void func_global_asm_806438B8(s32 arg0, s16 arg1, s16 arg2, s16 arg3) {
|
||||
func_global_asm_80714950(7);
|
||||
switch (temp_s0) {
|
||||
case 0:
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE64, 0.5f, sp60, sp5C, sp58);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE64, 0.5f, x, y, z);
|
||||
break;
|
||||
case 1:
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE88, 0.5f, sp60, sp5C, sp58);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE88, 0.5f, x, y, z);
|
||||
break;
|
||||
case 2:
|
||||
drawSpriteAtPosition(&D_global_asm_8071FEAC, 0.5f, sp60, sp5C, sp58);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FEAC, 0.5f, x, y, z);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -353,9 +353,9 @@ void func_global_asm_80643B24(s32 arg0, s16 arg1, s32 arg2, s32 arg3) {
|
||||
}
|
||||
}
|
||||
|
||||
extern f32 D_global_asm_807F621C;
|
||||
extern f32 D_global_asm_807F6220;
|
||||
extern f32 D_global_asm_807F6224;
|
||||
extern f32 D_global_asm_807F621C; // x
|
||||
extern f32 D_global_asm_807F6220; // y
|
||||
extern f32 D_global_asm_807F6224; // z
|
||||
extern s32 D_global_asm_807201D4;
|
||||
|
||||
typedef struct {
|
||||
@ -857,9 +857,9 @@ extern f32 D_global_asm_807F6224;
|
||||
|
||||
void func_global_asm_80646DC4(s32 arg0, s16 arg1, s16 arg2, s16 arg3) {
|
||||
s32 pad2;
|
||||
f32 spB8;
|
||||
f32 spB4;
|
||||
f32 spB0;
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
s32 pad[6];
|
||||
f32 var_f28;
|
||||
s32 i;
|
||||
@ -868,12 +868,12 @@ void func_global_asm_80646DC4(s32 arg0, s16 arg1, s16 arg2, s16 arg3) {
|
||||
|
||||
if (arg2 != 0) {
|
||||
for (i = 1; i < 7; i++) {
|
||||
func_global_asm_806335B0(arg1, 1, i, &spB8, &spB4, &spB0);
|
||||
func_global_asm_806335B0(arg1, 1, i, &x, &y, &z);
|
||||
func_global_asm_8071496C(i);
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_8071498C(&func_global_asm_8071BB14);
|
||||
changeActorColor(0xFF, 0xFF, 0xFF, 0x96);
|
||||
drawSpriteAtPosition(&D_global_asm_80720BE8, 1.5f, spB8, spB4, spB0);
|
||||
drawSpriteAtPosition(&D_global_asm_80720BE8, 1.5f, x, y, z);
|
||||
}
|
||||
return;
|
||||
}
|
||||
@ -888,14 +888,14 @@ void func_global_asm_80646DC4(s32 arg0, s16 arg1, s16 arg2, s16 arg3) {
|
||||
sp84[1] = i * 0x2A8;
|
||||
sp84[2] = (rand() % 500) + 150;
|
||||
if (arg3 == 0) {
|
||||
func_global_asm_806335B0(arg1, 1, i, &spB8, &spB4, &spB0);
|
||||
spB4 += 10.0;
|
||||
func_global_asm_806335B0(arg1, 1, i, &x, &y, &z);
|
||||
y += 10.0;
|
||||
} else {
|
||||
spB8 = ((func_global_asm_806119FC() * 30.0) + D_global_asm_807F621C) - 15.0;
|
||||
spB4 = (func_global_asm_806119FC() * 40.0) + D_global_asm_807F6220;
|
||||
spB0 = ((func_global_asm_806119FC() * 30.0) + D_global_asm_807F6224) - 15.0;
|
||||
x = ((func_global_asm_806119FC() * 30.0) + D_global_asm_807F621C) - 15.0;
|
||||
y = (func_global_asm_806119FC() * 40.0) + D_global_asm_807F6220;
|
||||
z = ((func_global_asm_806119FC() * 30.0) + D_global_asm_807F6224) - 15.0;
|
||||
}
|
||||
func_global_asm_806891D8(0x5A, spB8, spB4, spB0, 0, var_f28, NULL, &sp84[0]);
|
||||
func_global_asm_806891D8(0x5A, x, y, z, 0, var_f28, NULL, &sp84[0]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -927,28 +927,28 @@ void func_global_asm_80647170(s32 arg0, s16 arg1, s16 arg2, s32 arg3) {
|
||||
|
||||
void func_global_asm_80647218(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
s32 i;
|
||||
f32 rand1;
|
||||
f32 rand2;
|
||||
f32 rand3;
|
||||
f32 rand4;
|
||||
f32 randomXOffset;
|
||||
f32 randomYOffset;
|
||||
f32 randomZOffset;
|
||||
f32 randomScaleOffset;
|
||||
|
||||
for (i = 0; i < 6; i++) {
|
||||
rand1 = (f32)((func_global_asm_806119A0() / 1000U) % 20) - 10.0;
|
||||
rand2 = (f32)((func_global_asm_806119A0() / 1000U) % 20) - 10.0;
|
||||
rand3 = (f32)((func_global_asm_806119A0() / 1000U) % 20) - 10.0;
|
||||
rand4 = (f32)((f32)(((func_global_asm_806119A0() / 1000U) % 50) - 25.0) / 50.0);
|
||||
randomXOffset = (f32)((func_global_asm_806119A0() / 1000U) % 20) - 10.0;
|
||||
randomYOffset = (f32)((func_global_asm_806119A0() / 1000U) % 20) - 10.0;
|
||||
randomZOffset = (f32)((func_global_asm_806119A0() / 1000U) % 20) - 10.0;
|
||||
randomScaleOffset = (f32)((f32)(((func_global_asm_806119A0() / 1000U) % 50) - 25.0) / 50.0);
|
||||
func_global_asm_80714950(-0xAA);
|
||||
func_global_asm_8071498C(func_global_asm_80717D4C);
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_80714998(3);
|
||||
func_global_asm_8071496C(i << 1);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, (rand4) + 1.5, D_global_asm_807F621C + (rand1), D_global_asm_807F6220 + (rand2), D_global_asm_807F6224 + (rand3));
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, (randomScaleOffset) + 1.5, D_global_asm_807F621C + (randomXOffset), D_global_asm_807F6220 + (randomYOffset), D_global_asm_807F6224 + (randomZOffset));
|
||||
}
|
||||
}
|
||||
|
||||
void func_global_asm_80647508(s32 arg0, s16 arg1, s32 arg2, s32 arg3) {
|
||||
s32 sp34;
|
||||
f32 sp30, sp2C, sp28;
|
||||
f32 x, y, z;
|
||||
|
||||
sp34 = ((func_global_asm_806119A0() / 1000U) % 10) + 1;
|
||||
func_global_asm_80714950(-0x28A - ((func_global_asm_806119A0() / 1000U) % 200));
|
||||
@ -957,8 +957,8 @@ void func_global_asm_80647508(s32 arg0, s16 arg1, s32 arg2, s32 arg3) {
|
||||
func_global_asm_80714998(9);
|
||||
changeActorColor(0xFF, 0xFF, 0xFF, 0x64);
|
||||
func_global_asm_80714944(5);
|
||||
func_global_asm_806335B0(arg1, 1, sp34, &sp30, &sp2C, &sp28);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, 1.5f, sp30, sp2C - 70, sp28);
|
||||
func_global_asm_806335B0(arg1, 1, sp34, &x, &y, &z);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, 1.5f, x, y - 70, z);
|
||||
}
|
||||
|
||||
// Close
|
||||
@ -1029,7 +1029,7 @@ int func_global_asm_8071910C(); // TODO: Signature
|
||||
|
||||
void func_global_asm_80647834(s32 arg0, s16 arg1, s32 arg2, s32 arg3) {
|
||||
s32 i;
|
||||
f32 temp;
|
||||
f32 randomYOffset;
|
||||
|
||||
for (i = 0; i < 0xC; i++) {
|
||||
func_global_asm_807149B8(1);
|
||||
@ -1037,8 +1037,8 @@ void func_global_asm_80647834(s32 arg0, s16 arg1, s32 arg2, s32 arg3) {
|
||||
func_global_asm_8071498C(func_global_asm_8071910C);
|
||||
func_global_asm_80714998(2);
|
||||
func_global_asm_80714950(4);
|
||||
temp = ((func_global_asm_806119A0() / 1000U) % 80);
|
||||
drawSpriteAtPosition(&D_global_asm_80720EA4, 1.0f, D_global_asm_807F621C, D_global_asm_807F6220 + temp, D_global_asm_807F6224);
|
||||
randomYOffset = ((func_global_asm_806119A0() / 1000U) % 80);
|
||||
drawSpriteAtPosition(&D_global_asm_80720EA4, 1.0f, D_global_asm_807F621C, D_global_asm_807F6220 + randomYOffset, D_global_asm_807F6224);
|
||||
}
|
||||
for (i = 1; i != 6; i++) {
|
||||
func_global_asm_80714950(-0x78);
|
||||
@ -1235,17 +1235,17 @@ typedef struct {
|
||||
} Struct8064826C_arg0;
|
||||
|
||||
void func_global_asm_8064826C(Struct8064826C_arg0 *arg0, s32 arg1, s16 arg2, s32 arg3) {
|
||||
s32 *sp3C;
|
||||
void *sprite;
|
||||
f32 sp38;
|
||||
s32 pad2;
|
||||
s32 pad;
|
||||
f32 sp2C;
|
||||
f32 sp28;
|
||||
f32 xOffset;
|
||||
f32 zOffset;
|
||||
f32 temp_f0;
|
||||
Struct8064826C_malloc *temp_v0;
|
||||
|
||||
sp2C = func_global_asm_80612794(((D_global_asm_807F622C + 90.0f) * 4096.0f) / 360.0f) * 15.0f;
|
||||
sp28 = func_global_asm_80612790(((D_global_asm_807F622C + 90.0f) * 4096.0f) / 360.0f) * 15.0f;
|
||||
xOffset = func_global_asm_80612794(((D_global_asm_807F622C + 90.0f) * 4096.0f) / 360.0f) * 15.0f;
|
||||
zOffset = func_global_asm_80612790(((D_global_asm_807F622C + 90.0f) * 4096.0f) / 360.0f) * 15.0f;
|
||||
if (arg0->unk0 == NULL) {
|
||||
arg0->unk0 = malloc(sizeof(Struct8064826C_malloc));
|
||||
temp_v0 = arg0->unk0;
|
||||
@ -1257,16 +1257,16 @@ void func_global_asm_8064826C(Struct8064826C_arg0 *arg0, s32 arg1, s16 arg2, s32
|
||||
func_global_asm_807149B8(1);
|
||||
switch (arg2) {
|
||||
case 0:
|
||||
sp3C = &D_global_asm_80721200;
|
||||
sprite = &D_global_asm_80721200;
|
||||
break;
|
||||
case 1:
|
||||
sp3C = &D_global_asm_8072121C;
|
||||
sprite = &D_global_asm_8072121C;
|
||||
break;
|
||||
case 2:
|
||||
sp3C = &D_global_asm_80721250;
|
||||
sprite = &D_global_asm_80721250;
|
||||
break;
|
||||
case 3:
|
||||
sp3C = &D_global_asm_80721238;
|
||||
sprite = &D_global_asm_80721238;
|
||||
break;
|
||||
}
|
||||
sp38 = func_global_asm_80612794(temp_v0->unk0) * 0.1;
|
||||
@ -1276,7 +1276,7 @@ void func_global_asm_8064826C(Struct8064826C_arg0 *arg0, s32 arg1, s16 arg2, s32
|
||||
func_global_asm_80714A08(sp38 + 1.0, (f32)(temp_f0 * 0.1) + 1.0);
|
||||
func_global_asm_807149A8(1400);
|
||||
func_global_asm_80714A28(4);
|
||||
drawSpriteAtPosition(sp3C, 0.0f, D_global_asm_807F621C + sp2C, (func_global_asm_80612794(temp_v0->unk8) * 10.0) + (D_global_asm_807F6220 + 80.0), D_global_asm_807F6224 + sp28);
|
||||
drawSpriteAtPosition(sprite, 0.0f, D_global_asm_807F621C + xOffset, (func_global_asm_80612794(temp_v0->unk8) * 10.0) + (D_global_asm_807F6220 + 80.0), D_global_asm_807F6224 + zOffset);
|
||||
temp_v0->unk8 += 0x64;
|
||||
if ((D_global_asm_8076A068 % 12) == 0) {
|
||||
func_global_asm_807149B8(1);
|
||||
@ -1284,7 +1284,7 @@ void func_global_asm_8064826C(Struct8064826C_arg0 *arg0, s32 arg1, s16 arg2, s32
|
||||
func_global_asm_8071498C(&func_global_asm_80716F10);
|
||||
func_global_asm_807149A8(1400);
|
||||
func_global_asm_80714A28(4);
|
||||
drawSpriteAtPosition(&D_global_asm_8072126C, 2.0f, D_global_asm_807F621C + sp2C, D_global_asm_807F6220 + 30.0, D_global_asm_807F6224 + sp28);
|
||||
drawSpriteAtPosition(&D_global_asm_8072126C, 2.0f, D_global_asm_807F621C + xOffset, D_global_asm_807F6220 + 30.0, D_global_asm_807F6224 + zOffset);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1904,8 +1904,6 @@ u8 func_global_asm_8064BE58(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
/*
|
||||
extern s32 D_global_asm_807552F0;
|
||||
|
||||
void func_global_asm_806F91B4(s32, u8, s32);
|
||||
|
||||
s32 func_global_asm_8064BE80(s32 arg0, s16 arg1, s16 arg2, s32 arg3) {
|
||||
s32 playerIndex;
|
||||
f32 temp;
|
||||
@ -1915,7 +1913,7 @@ s32 func_global_asm_8064BE80(s32 arg0, s16 arg1, s16 arg2, s32 arg3) {
|
||||
return 0;
|
||||
}
|
||||
if (func_global_asm_806F8AD4(1, playerIndex) != 0) {
|
||||
func_global_asm_806F91B4(7, playerIndex, 1);
|
||||
changeCollectableCount(7, playerIndex, 1);
|
||||
temp = func_global_asm_806F8AD4(7, playerIndex);
|
||||
temp /= D_global_asm_807552F0;
|
||||
// temp *= 0.5f;
|
||||
@ -2531,7 +2529,7 @@ void func_global_asm_8064E5C0(Struct8064E5C0_arg0 *arg0, s32 arg1, s32 arg2, s32
|
||||
void func_global_asm_8064EA48(s32 arg0, s32 arg1, s32 arg2, s32 arg3) {
|
||||
if (func_global_asm_806F8AD4(1, 0) >= 2) {
|
||||
func_global_asm_806F8BC4(1, 0, 0);
|
||||
func_global_asm_806F91B4(1, 0, -2);
|
||||
changeCollectableCount(1, 0, -2);
|
||||
// DK Arcade Level 3?
|
||||
setFlag(0x83, TRUE, FLAG_TYPE_PERMANENT);
|
||||
}
|
||||
|
@ -249,8 +249,6 @@ void func_global_asm_806524A0(s32 arg0, u8 arg1) {
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_55B20/func_global_asm_80652594.s")
|
||||
|
||||
Chunk14 *func_global_asm_80630588(Chunk14*, s32, s32, u8*);
|
||||
|
||||
/*
|
||||
// TODO: Quite close
|
||||
// Something to do with arg2? Loop condition? Break?
|
||||
|
@ -488,21 +488,21 @@ void func_global_asm_80666280(u8 arg0) {
|
||||
|
||||
void func_global_asm_80666428(Actor*, f32, f32, f32, void*, void*, void*, void*, u8);
|
||||
|
||||
void func_global_asm_80666290(Actor *arg0, void *arg1, void *arg2, void *arg3, void *arg4, u8 arg5) {
|
||||
f32 sp3C;
|
||||
f32 sp38;
|
||||
f32 sp34;
|
||||
void func_global_asm_80666290(Actor *actor, void *arg1, void *arg2, void *arg3, void *arg4, u8 arg5) {
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
|
||||
D_global_asm_807F94BC = 0;
|
||||
D_global_asm_807F94B3 = 0;
|
||||
if (arg0->unkCC && !arg0->locked_to_pad && arg0->object_properties_bitfield & 0x10) {
|
||||
getBonePosition(arg0, arg0->unkCC, &sp3C, &sp38, &sp34);
|
||||
if (actor->unkCC && !actor->locked_to_pad && actor->object_properties_bitfield & 0x10) {
|
||||
getBonePosition(actor, actor->unkCC, &x, &y, &z);
|
||||
} else {
|
||||
sp3C = arg0->x_position;
|
||||
sp38 = arg0->unk8C;
|
||||
sp34 = arg0->z_position;
|
||||
x = actor->x_position;
|
||||
y = actor->unk8C;
|
||||
z = actor->z_position;
|
||||
}
|
||||
func_global_asm_80666428(arg0, sp3C, sp38, sp34, arg1, arg2, arg3, arg4, arg5);
|
||||
func_global_asm_80666428(actor, x, y, z, arg1, arg2, arg3, arg4, arg5);
|
||||
}
|
||||
|
||||
// BUG: Missing return?
|
||||
|
@ -414,16 +414,16 @@ extern s32 D_global_asm_8071FE88; // TODO: Datatype
|
||||
extern s32 D_global_asm_8071FEAC; // TODO: Datatype
|
||||
|
||||
void func_global_asm_8067DCC0(void) {
|
||||
f32 temp_f20;
|
||||
f32 scale;
|
||||
s32 temp_s0;
|
||||
s32 i;
|
||||
s32 pad;
|
||||
|
||||
temp_f20 = current_actor_pointer->animation_state->scale_y / 0.15;
|
||||
scale = current_actor_pointer->animation_state->scale_y / 0.15;
|
||||
func_global_asm_8060E7EC(0, 0xB4, 0xA);
|
||||
func_global_asm_807149B8(0);
|
||||
func_global_asm_807149FC(1);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE08, temp_f20 * 0.75, current_actor_pointer->x_position, current_actor_pointer->y_position, current_actor_pointer->z_position);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE08, scale * 0.75, current_actor_pointer->x_position, current_actor_pointer->y_position, current_actor_pointer->z_position);
|
||||
playSoundAtActorPosition(current_actor_pointer, 0x23, 0xFF, 0x7F, 1);
|
||||
for (i = 0; i < 7; i++) {
|
||||
temp_s0 = (s32)(func_global_asm_806119A0() / 10000U) % 3;
|
||||
@ -434,13 +434,13 @@ void func_global_asm_8067DCC0(void) {
|
||||
func_global_asm_80714950(2);
|
||||
switch (temp_s0) {
|
||||
case 0:
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE64, temp_f20 * 0.25, current_actor_pointer->x_position, current_actor_pointer->y_position, current_actor_pointer->z_position);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE64, scale * 0.25, current_actor_pointer->x_position, current_actor_pointer->y_position, current_actor_pointer->z_position);
|
||||
break;
|
||||
case 1:
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE88, temp_f20 * 0.25, current_actor_pointer->x_position, current_actor_pointer->y_position, current_actor_pointer->z_position);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE88, scale * 0.25, current_actor_pointer->x_position, current_actor_pointer->y_position, current_actor_pointer->z_position);
|
||||
break;
|
||||
case 2:
|
||||
drawSpriteAtPosition(&D_global_asm_8071FEAC, temp_f20 * 0.25, current_actor_pointer->x_position, current_actor_pointer->y_position, current_actor_pointer->z_position);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FEAC, scale * 0.25, current_actor_pointer->x_position, current_actor_pointer->y_position, current_actor_pointer->z_position);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -450,37 +450,37 @@ extern s32 D_global_asm_80720120;
|
||||
extern s32 D_global_asm_80720340;
|
||||
extern s32 D_global_asm_8072038C;
|
||||
|
||||
void func_global_asm_8067DF44(f32 arg0, f32 arg1, f32 arg2, f32 arg3, u8 arg4, u8 arg5) {
|
||||
void func_global_asm_8067DF44(f32 x, f32 y, f32 z, f32 arg3, u8 arg4, u8 arg5) {
|
||||
f64 sp80;
|
||||
f32 sp7C;
|
||||
f32 temp_f20;
|
||||
f32 temp_f22;
|
||||
f32 temp_f24;
|
||||
f32 randomZOffset;
|
||||
f32 randomXOffset;
|
||||
f32 randomYOffset;
|
||||
s32 i;
|
||||
|
||||
if (arg5 != 0) {
|
||||
playSoundAtPosition(arg0, arg1, arg2, 0xF6, 0xFF, 0x7F, 0x19, 0x1E, 0.3f, 0);
|
||||
playSoundAtPosition(x, y, z, 0xF6, 0xFF, 0x7F, 0x19, 0x1E, 0.3f, 0);
|
||||
}
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_8071498C(&func_global_asm_8071B89C);
|
||||
drawSpriteAtPosition(&D_global_asm_80720120, 0.0f, arg0, arg1 + 5.0f, arg2);
|
||||
drawSpriteAtPosition(&D_global_asm_80720120, 0.0f, x, y + 5.0f, z);
|
||||
sp80 = arg3;
|
||||
sp7C = arg3 * 1.5;
|
||||
for (i = 0; i < 5; i++) {
|
||||
temp_f22 = (((rand() >> 0xF) % 20) - 0xA) * arg3;
|
||||
temp_f24 = (((rand() >> 0xF) % 20) - 0xA) * arg3;
|
||||
temp_f20 = (((rand() >> 0xF) % 20) - 0xA) * arg3;
|
||||
randomXOffset = (((rand() >> 0xF) % 20) - 0xA) * arg3;
|
||||
randomYOffset = (((rand() >> 0xF) % 20) - 0xA) * arg3;
|
||||
randomZOffset = (((rand() >> 0xF) % 20) - 0xA) * arg3;
|
||||
func_global_asm_8071496C(4);
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_807149FC(1);
|
||||
func_global_asm_8071498C(&func_global_asm_8071BB14);
|
||||
drawSpriteAtPosition(&D_global_asm_80720340, sp7C, arg0 + temp_f22, arg1 + temp_f24, arg2 + temp_f20);
|
||||
drawSpriteAtPosition(&D_global_asm_80720340, sp7C, x + randomXOffset, y + randomYOffset, z + randomZOffset);
|
||||
}
|
||||
func_global_asm_8071496C(4);
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_807149FC(1);
|
||||
func_global_asm_8071498C(&func_global_asm_8071BB14);
|
||||
drawSpriteAtPosition(&D_global_asm_80720340, sp7C, arg0, arg1, arg2);
|
||||
drawSpriteAtPosition(&D_global_asm_80720340, sp7C, x, y, z);
|
||||
if (arg4 != 0) {
|
||||
for (i = 0; i < 0xC; i++) {
|
||||
func_global_asm_807149B8(1);
|
||||
@ -488,7 +488,7 @@ void func_global_asm_8067DF44(f32 arg0, f32 arg1, f32 arg2, f32 arg3, u8 arg4, u
|
||||
func_global_asm_80714950(i + 0x0B020000);
|
||||
func_global_asm_8071498C(&func_global_asm_8071ABDC);
|
||||
func_global_asm_80714998(1);
|
||||
drawSpriteAtPosition(&D_global_asm_8072038C, sp80 * 0.5, arg0, arg1, arg2);
|
||||
drawSpriteAtPosition(&D_global_asm_8072038C, sp80 * 0.5, x, y, z);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -502,11 +502,11 @@ void func_global_asm_8067E278(u8 arg0, u8 arg1) {
|
||||
arg1);
|
||||
}
|
||||
|
||||
void func_global_asm_8067E2E4(Actor *arg0, u8 arg1, f32 arg2) {
|
||||
f32 sp2C, sp28, sp24;
|
||||
void func_global_asm_8067E2E4(Actor *actor, u8 boneIndex, f32 arg2) {
|
||||
f32 x, y, z;
|
||||
|
||||
getBonePosition(current_actor_pointer, arg1, &sp2C, &sp28, &sp24);
|
||||
func_global_asm_8067DF44(sp2C, sp28, sp24, arg2, 0, 1);
|
||||
getBonePosition(current_actor_pointer, boneIndex, &x, &y, &z);
|
||||
func_global_asm_8067DF44(x, y, z, arg2, 0, 1);
|
||||
}
|
||||
|
||||
void func_global_asm_8067E348(void) {
|
||||
@ -1228,11 +1228,13 @@ void func_global_asm_8068412C(void) {
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_807149A8(1000);
|
||||
func_global_asm_80714A28(4);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FC8C,
|
||||
1.3f,
|
||||
current_actor_pointer->x_position,
|
||||
current_actor_pointer->y_position + 13.0,
|
||||
current_actor_pointer->z_position);
|
||||
drawSpriteAtPosition(
|
||||
&D_global_asm_8071FC8C,
|
||||
1.3f,
|
||||
current_actor_pointer->x_position,
|
||||
current_actor_pointer->y_position + 13.0,
|
||||
current_actor_pointer->z_position
|
||||
);
|
||||
if (func_global_asm_80689F2C()) {
|
||||
current_actor_pointer->draw_distance = 2000;
|
||||
} else {
|
||||
|
@ -143,40 +143,40 @@ void func_global_asm_80684900(u8 arg0) {
|
||||
func_global_asm_80714C08(&D_global_asm_8072139C, (((rand() >> 0xF) % 50) / 80.0) + 0.1, current_actor_pointer, 8, 0);
|
||||
}
|
||||
|
||||
void func_global_asm_80684A00(s16 arg0, s8 arg1) {
|
||||
f32 sp3C, sp38, sp34, sp30;
|
||||
void func_global_asm_80684A00(s16 boneIndex, s8 arg1) {
|
||||
f32 x, y, z, scale;
|
||||
|
||||
sp30 = current_actor_pointer->animation_state->scale_y / 0.15;
|
||||
getBonePosition(current_actor_pointer, arg0, &sp3C, &sp38, &sp34);
|
||||
scale = current_actor_pointer->animation_state->scale_y / 0.15;
|
||||
getBonePosition(current_actor_pointer, boneIndex, &x, &y, &z);
|
||||
func_global_asm_80714950((((rand() >> 0xF) % 100) + 400) * arg1);
|
||||
func_global_asm_8071498C(&func_global_asm_80717D4C);
|
||||
func_global_asm_807149B8(1);
|
||||
drawSpriteAtPosition(D_global_asm_8074E880[((rand() >> 0xF) % 1000) % 3],
|
||||
sp30 * 0.8,
|
||||
((rand() >> 0xF) % 20) + (sp3C - 10.0f),
|
||||
sp38,
|
||||
((rand() >> 0xF) % 20) + (sp34 - 10.0f)
|
||||
scale * 0.8,
|
||||
((rand() >> 0xF) % 20) + (x - 10.0f),
|
||||
y,
|
||||
((rand() >> 0xF) % 20) + (z - 10.0f)
|
||||
);
|
||||
}
|
||||
|
||||
void func_global_asm_80684BB0(s16 arg0, s16 arg1, s16 arg2) {
|
||||
f32 sp54;
|
||||
f32 sp50;
|
||||
f32 sp4C;
|
||||
f32 sp48;
|
||||
void func_global_asm_80684BB0(s16 boneIndex, s16 arg1, s16 arg2) {
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
f32 scale;
|
||||
|
||||
sp48 = current_actor_pointer->animation_state->scale_y / 0.15;
|
||||
getBonePosition(current_actor_pointer, arg0, &sp54, &sp50, &sp4C);
|
||||
scale = current_actor_pointer->animation_state->scale_y / 0.15;
|
||||
getBonePosition(current_actor_pointer, boneIndex, &x, &y, &z);
|
||||
func_global_asm_80714950(arg1 + (arg2 << 0x10));
|
||||
func_global_asm_8071498C(&func_global_asm_8071F2F8);
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_807149FC(MAX(2.0, arg2 * 0.02));
|
||||
drawSpriteAtPosition(
|
||||
D_global_asm_8074E880[((rand() >> 0xF) % 1000) % 3],
|
||||
sp48 * 0.8,
|
||||
((rand() >> 0xF) % 60) + (sp54 - 30.0f),
|
||||
sp50,
|
||||
((rand() >> 0xF) % 60) + (sp4C - 30.0f)
|
||||
scale * 0.8,
|
||||
((rand() >> 0xF) % 60) + (x - 30.0f),
|
||||
y,
|
||||
((rand() >> 0xF) % 60) + (z - 30.0f)
|
||||
);
|
||||
}
|
||||
|
||||
@ -226,14 +226,14 @@ void func_global_asm_80685020(u8 arg0, u8 arg1) {
|
||||
int func_global_asm_8071910C();
|
||||
|
||||
void func_global_asm_806850D0(void) {
|
||||
f32 temp_f20;
|
||||
f32 scale;
|
||||
s32 temp_s0;
|
||||
|
||||
temp_f20 = current_actor_pointer->animation_state->scale_y / 0.15;
|
||||
scale = current_actor_pointer->animation_state->scale_y / 0.15;
|
||||
func_global_asm_807149B8(0);
|
||||
func_global_asm_807149FC(1);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FE08,
|
||||
temp_f20 * 0.75,
|
||||
scale * 0.75,
|
||||
current_actor_pointer->x_position,
|
||||
current_actor_pointer->y_position,
|
||||
current_actor_pointer->z_position
|
||||
@ -245,7 +245,7 @@ void func_global_asm_806850D0(void) {
|
||||
func_global_asm_80714998(2);
|
||||
func_global_asm_80714950(0);
|
||||
drawSpriteAtPosition(&D_global_asm_8072073C,
|
||||
temp_f20 * 0.15,
|
||||
scale * 0.15,
|
||||
current_actor_pointer->x_position,
|
||||
current_actor_pointer->y_position,
|
||||
current_actor_pointer->z_position
|
||||
@ -264,7 +264,7 @@ void func_global_asm_80685210(f32 arg0, s16 arg1, s16 arg2) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_global_asm_806852C4(f32 arg0, f32 arg1, f32 arg2, f32 arg3) {
|
||||
void func_global_asm_806852C4(f32 scale, f32 x, f32 y, f32 z) {
|
||||
s16 i;
|
||||
|
||||
for (i = 0; i < 8; i++) {
|
||||
@ -272,7 +272,7 @@ void func_global_asm_806852C4(f32 arg0, f32 arg1, f32 arg2, f32 arg3) {
|
||||
func_global_asm_80714950(i);
|
||||
func_global_asm_807149B8(1);
|
||||
changeActorColor(0xFF, 0xFF, 0xFF, 0xC8);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, arg0, arg1, arg2, arg3);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, scale, x, y, z);
|
||||
}
|
||||
}
|
||||
|
||||
@ -324,13 +324,13 @@ void func_global_asm_80685390(void) {
|
||||
}
|
||||
*/
|
||||
|
||||
void func_global_asm_80685520(f32 arg0, u8 arg1, f32 arg2, f32 arg3, f32 arg4) {
|
||||
void func_global_asm_80685520(f32 scale, u8 arg1, f32 x, f32 y, f32 z) {
|
||||
s32 temp_s0;
|
||||
s32 i;
|
||||
|
||||
if (D_global_asm_80750AD0 == 0) {
|
||||
if (arg1 > 0) {
|
||||
func_global_asm_806852C4(arg0, arg2, arg3, arg4);
|
||||
func_global_asm_806852C4(scale, x, y, z);
|
||||
}
|
||||
if (arg1 >= 2) {
|
||||
for (i = 0; i < 8; i++) {
|
||||
@ -339,7 +339,7 @@ void func_global_asm_80685520(f32 arg0, u8 arg1, f32 arg2, f32 arg3, f32 arg4) {
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_807149FC(-1);
|
||||
changeActorColor(0xFF, 0xFF, 0xFF, 0xFF);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FF40, arg0 * 0.5, arg2, arg3, arg4);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FF40, scale * 0.5, x, y, z);
|
||||
}
|
||||
}
|
||||
if (arg1 >= 3) {
|
||||
@ -349,7 +349,7 @@ void func_global_asm_80685520(f32 arg0, u8 arg1, f32 arg2, f32 arg3, f32 arg4) {
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_807149FC(-1);
|
||||
changeActorColor(0xFF, 0xFF, 0xFF, 0xFF);
|
||||
drawSpriteAtPosition(D_global_asm_8074E880[i % 3], arg0, arg2, arg3, arg4);
|
||||
drawSpriteAtPosition(D_global_asm_8074E880[i % 3], scale, x, y, z);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -382,18 +382,18 @@ void func_global_asm_8068588C(Actor *arg0, s16 arg1, f32 arg2, f32 arg3, f32 arg
|
||||
func_global_asm_806858E8(arg0, arg1, arg2, arg3, arg4, arg5, arg6);
|
||||
}
|
||||
|
||||
void func_global_asm_806858E8(Actor *arg0, s16 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, s32 arg6) {
|
||||
void func_global_asm_806858E8(Actor *arg0, s16 arg1, f32 scale, f32 x, f32 y, f32 z, s32 arg6) {
|
||||
if (arg0 != NULL) {
|
||||
if (arg1 != 0) {
|
||||
getBonePosition(arg0, arg1, &arg3, &arg4, &arg5);
|
||||
getBonePosition(arg0, arg1, &x, &y, &z);
|
||||
}
|
||||
}
|
||||
func_global_asm_8071498C(&func_global_asm_80718080);
|
||||
func_global_asm_80714950(arg6);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, arg2, arg3, arg4 + 5.0f, arg5)->unk338 = arg0;
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, scale, x, y + 5.0f, z)->unk338 = arg0;
|
||||
}
|
||||
|
||||
void func_global_asm_80685984(f32 arg0, f32 arg1, f32 arg2, f32 arg3) {
|
||||
void func_global_asm_80685984(f32 scale, f32 x, f32 y, f32 z) {
|
||||
s32 pad;
|
||||
|
||||
if (((rand() >> 0xF) % 100) >= 0x33) {
|
||||
@ -402,18 +402,18 @@ void func_global_asm_80685984(f32 arg0, f32 arg1, f32 arg2, f32 arg3) {
|
||||
func_global_asm_807149B8(1);
|
||||
changeActorColor(0x9B, 0x9B, 0x9B, 0xC8);
|
||||
func_global_asm_8071498C(&func_global_asm_80719EF4);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, arg0, (((rand() >> 0xF) % 100000) % 10) + (arg1 - 5.0f), arg2, (((rand() >> 0xF) % 100000) % 10) + (arg3 - 5.0f));
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, scale, (((rand() >> 0xF) % 100000) % 10) + (x - 5.0f), y, (((rand() >> 0xF) % 100000) % 10) + (z - 5.0f));
|
||||
}
|
||||
}
|
||||
|
||||
void func_global_asm_80685B44(void *arg0, u8 arg1, f32 arg2, u8 arg3, u8 arg4, s16 arg5, s16 arg6, s16 arg7, s16 arg8) {
|
||||
s8 temp_s0;
|
||||
s8 temp_s4;
|
||||
void func_global_asm_80685B44(void *sprite, u8 arg1, f32 scale, u8 arg3, u8 arg4, s16 arg5, s16 x, s16 y, s16 z) {
|
||||
s8 randomZOffset;
|
||||
s8 randomXOffset;
|
||||
s16 i;
|
||||
|
||||
for (i = 0; i < arg3; i++) {
|
||||
temp_s4 = (((rand() >> 0xF) % 32767) % (arg4 * 2)) + -arg4;
|
||||
temp_s0 = (((rand() >> 0xF) % 32767) % (arg4 * 2)) + -arg4;
|
||||
randomXOffset = (((rand() >> 0xF) % 32767) % (arg4 * 2)) + -arg4;
|
||||
randomZOffset = (((rand() >> 0xF) % 32767) % (arg4 * 2)) + -arg4;
|
||||
func_global_asm_80714950(-arg5 - ((rand() >> 0xF) % 80));
|
||||
func_global_asm_8071498C(&func_global_asm_807180F4);
|
||||
func_global_asm_807149B8(1);
|
||||
@ -421,7 +421,7 @@ void func_global_asm_80685B44(void *arg0, u8 arg1, f32 arg2, u8 arg3, u8 arg4, s
|
||||
if (arg1) {
|
||||
func_global_asm_8071496C(arg1);
|
||||
}
|
||||
drawSpriteAtPosition(arg0, arg2, arg6 + temp_s4, arg7, arg8 + temp_s0);
|
||||
drawSpriteAtPosition(sprite, scale, x + randomXOffset, y, z + randomZOffset);
|
||||
}
|
||||
}
|
||||
|
||||
@ -599,7 +599,7 @@ void func_global_asm_80686CF8(Actor *arg0) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_global_asm_80686E40(f32 arg0, f32 arg1, f32 arg2, s32 arg3) {
|
||||
void func_global_asm_80686E40(f32 x, f32 y, f32 z, s32 arg3) {
|
||||
s32 i;
|
||||
s32 var_s4;
|
||||
s32 var_s5;
|
||||
@ -620,7 +620,7 @@ void func_global_asm_80686E40(f32 arg0, f32 arg1, f32 arg2, s32 arg3) {
|
||||
func_global_asm_8071498C(&func_global_asm_80717930);
|
||||
func_global_asm_8071496C(i >> var_s4);
|
||||
func_global_asm_80714950(arg3);
|
||||
drawSpriteAtPosition(D_global_asm_8074E880[i % 3], 0.5f, arg0, arg1, arg2);
|
||||
drawSpriteAtPosition(D_global_asm_8074E880[i % 3], 0.5f, x, y, z);
|
||||
}
|
||||
}
|
||||
|
||||
@ -724,12 +724,12 @@ void func_global_asm_806877C8(u8 arg0) {
|
||||
}
|
||||
|
||||
void func_global_asm_8068780C(u8 arg0, u8 arg1, u8 arg2, u8 arg3) {
|
||||
f32 sp74;
|
||||
f32 sp70;
|
||||
f32 sp6C;
|
||||
f32 sp68;
|
||||
f32 sp64;
|
||||
f32 sp60;
|
||||
f32 x1;
|
||||
f32 y1;
|
||||
f32 z1;
|
||||
f32 x2;
|
||||
f32 y2;
|
||||
f32 z2;
|
||||
f32 sp5C;
|
||||
f32 sp58;
|
||||
f32 sp54;
|
||||
@ -737,15 +737,15 @@ void func_global_asm_8068780C(u8 arg0, u8 arg1, u8 arg2, u8 arg3) {
|
||||
f32 sp4C;
|
||||
f32 sp48;
|
||||
u16 sp46; // Padding, not used
|
||||
u8 sp45;
|
||||
u8 sp44;
|
||||
u8 boneIndex1;
|
||||
u8 boneIndex2;
|
||||
|
||||
sp45 = (((rand() >> 0xF) % 32767) % ((arg1 - arg0) + 1)) + arg0;
|
||||
sp44 = (((rand() >> 0xF) % 32767) % ((arg3 - arg2) + 1)) + arg2;
|
||||
getBonePosition(current_actor_pointer, sp45, &sp74, &sp70, &sp6C);
|
||||
getBonePosition(current_actor_pointer, sp44, &sp68, &sp64, &sp60);
|
||||
func_global_asm_80626F8C(sp74, sp70, sp6C, &sp58, &sp54, 0, 1.0f, 0);
|
||||
func_global_asm_80626F8C(sp68, sp64, sp60, &sp50, &sp4C, 0, 1.0f, 0);
|
||||
boneIndex1 = (((rand() >> 0xF) % 32767) % ((arg1 - arg0) + 1)) + arg0;
|
||||
boneIndex2 = (((rand() >> 0xF) % 32767) % ((arg3 - arg2) + 1)) + arg2;
|
||||
getBonePosition(current_actor_pointer, boneIndex1, &x1, &y1, &z1);
|
||||
getBonePosition(current_actor_pointer, boneIndex2, &x2, &y2, &z2);
|
||||
func_global_asm_80626F8C(x1, y1, z1, &sp58, &sp54, 0, 1.0f, 0);
|
||||
func_global_asm_80626F8C(x2, y2, z2, &sp50, &sp4C, 0, 1.0f, 0);
|
||||
sp5C = ((func_global_asm_80665DE0(sp50, sp4C, sp58, sp54) * 0x168) / 4096) + 0x5A;
|
||||
if (sp5C < 270.0f) {
|
||||
sp5C += 180.0f;
|
||||
@ -755,7 +755,7 @@ void func_global_asm_8068780C(u8 arg0, u8 arg1, u8 arg2, u8 arg3) {
|
||||
func_global_asm_807149FC(1);
|
||||
func_global_asm_80714950(sp5C);
|
||||
func_global_asm_8071498C(&func_global_asm_8071E028);
|
||||
drawSpriteAtPosition(&D_global_asm_80720B24, sp48 * 0.008, (sp74 + sp68) * 0.5, (sp70 + sp64) * 0.5, (sp6C + sp60) * 0.5);
|
||||
drawSpriteAtPosition(&D_global_asm_80720B24, sp48 * 0.008, (x1 + x2) * 0.5, (y1 + y2) * 0.5, (z1 + z2) * 0.5);
|
||||
if (((rand() >> 0xF) % 1000) & 1) {
|
||||
func_global_asm_806595F0(1);
|
||||
createLight(current_actor_pointer->x_position, current_actor_pointer->y_position, current_actor_pointer->z_position, 0.0f, 0.0f, 0.0f, 150.0f, 0, 0x96, 0x64, 0xFF);
|
||||
|
@ -296,9 +296,9 @@ void func_global_asm_80690500(void) {
|
||||
A178_80690500 *a178;
|
||||
AAD_global_asm_80690500_unk104 *aaD_104;
|
||||
u8 sp4B;
|
||||
f32 sp44;
|
||||
f32 sp40;
|
||||
f32 sp3C;
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
|
||||
aaD = current_actor_pointer->additional_actor_data;
|
||||
a178 = current_actor_pointer->unk178;
|
||||
@ -321,13 +321,13 @@ void func_global_asm_80690500(void) {
|
||||
setAction(0x4C, current_actor_pointer, PaaD->unk1A4);
|
||||
}
|
||||
if (func_global_asm_8061CB50() == 0 || (func_global_asm_8061CB50() != 0 && player_pointer->unk6A & 0x100)) {
|
||||
getBonePosition(current_actor_pointer, 1, &sp44, &sp40, &sp3C);
|
||||
createLight(sp44, sp40, sp3C, 0.0f, 0.0f, 0.0f, 300.0f, 0, 0xFF, 0xFF, 0xFF);
|
||||
getBonePosition(current_actor_pointer, 1, &x, &y, &z);
|
||||
createLight(x, y, z, 0.0f, 0.0f, 0.0f, 300.0f, 0, 0xFF, 0xFF, 0xFF);
|
||||
if (isFlagSet(0x6B, FLAG_TYPE_TEMPORARY) == 0) {
|
||||
if (func_global_asm_8061CB50() != 0) {
|
||||
if (player_pointer->unk6A & 0x100) {
|
||||
getBonePosition(current_actor_pointer, 2, &sp44, &sp40, &sp3C);
|
||||
func_global_asm_8070033C(sp44, sp40, sp3C, 0.0f, 0.0f, 0.0f, 0.0f, 0xFF, 0xFF, 0xFF);
|
||||
getBonePosition(current_actor_pointer, 2, &x, &y, &z);
|
||||
func_global_asm_8070033C(x, y, z, 0.0f, 0.0f, 0.0f, 0.0f, 0xFF, 0xFF, 0xFF);
|
||||
}
|
||||
}
|
||||
if (func_global_asm_8061CB50() == 0) {
|
||||
@ -407,13 +407,13 @@ void func_global_asm_80690AB0(s16 arg0, s16 arg1, s16 arg2, s16 arg3, f32 arg4,
|
||||
func_global_asm_80690930(var_s0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);
|
||||
}
|
||||
|
||||
void func_global_asm_80690BE8(s16 arg0, s16 arg1, f32 arg2, Actor *arg3, s32 arg4, f32 arg5, Actor *arg6) {
|
||||
f32 sp34;
|
||||
f32 sp30;
|
||||
f32 sp2C;
|
||||
void func_global_asm_80690BE8(s16 arg0, s16 arg1, f32 arg2, Actor *arg3, s32 boneIndex, f32 arg5, Actor *arg6) {
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
|
||||
getBonePosition(arg3, arg4, &sp34, &sp30, &sp2C);
|
||||
func_global_asm_80690A28(arg0, arg1, arg2, sp34, sp30, sp2C, arg5, arg6);
|
||||
getBonePosition(arg3, boneIndex, &x, &y, &z);
|
||||
func_global_asm_80690A28(arg0, arg1, arg2, x, y, z, arg5, arg6);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_936B0/func_global_asm_80690C60.s")
|
||||
|
@ -570,9 +570,9 @@ void func_global_asm_806A0310(void) {
|
||||
void func_global_asm_806A0330(void) {
|
||||
s32 pad[8];
|
||||
s32 i;
|
||||
f32 sp68;
|
||||
f32 sp64;
|
||||
f32 sp60;
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
|
||||
if (!(current_actor_pointer->object_properties_bitfield & 0x10)) {
|
||||
current_actor_pointer->noclip_byte = 0x1C;
|
||||
@ -600,12 +600,12 @@ void func_global_asm_806A0330(void) {
|
||||
func_global_asm_8061F0B0(D_global_asm_807F5D10, 0xF, 0xF);
|
||||
playSoundAtActorPosition(current_actor_pointer, 0x162, 0xE1, 0x3C, 1);
|
||||
for (i = 1; i < 7; i++) {
|
||||
getBonePosition(current_actor_pointer, i, &sp68, &sp64, &sp60);
|
||||
getBonePosition(current_actor_pointer, i, &x, &y, &z);
|
||||
func_global_asm_8071496C(i);
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_8071498C(&func_global_asm_8071BB14);
|
||||
changeActorColor(0xFF, 0xFF, 0xFF, 0x96);
|
||||
drawSpriteAtPosition(&D_global_asm_80720BE8, 1.5f, sp68, sp64, sp60);
|
||||
drawSpriteAtPosition(&D_global_asm_80720BE8, 1.5f, x, y, z);
|
||||
}
|
||||
deleteActor(current_actor_pointer);
|
||||
}
|
||||
|
@ -104,7 +104,7 @@ void func_global_asm_806A1ABC(void) {
|
||||
extern s32 D_global_asm_8071FFA0;
|
||||
|
||||
void func_global_asm_806A1AC4(void) {
|
||||
f32 temp_f20;
|
||||
f32 randomScale;
|
||||
s16 i;
|
||||
|
||||
if (!(current_actor_pointer->object_properties_bitfield & 0x10)) {
|
||||
@ -152,13 +152,13 @@ void func_global_asm_806A1AC4(void) {
|
||||
case 0:
|
||||
if ((object_timer & 7) == 0) {
|
||||
for (i = 0; i < 0xC; i++) {
|
||||
temp_f20 = ((((rand() >> 0xF) % 32767) % 171) + 0x96) * 0.01;
|
||||
randomScale = ((((rand() >> 0xF) % 32767) % 171) + 0x96) * 0.01;
|
||||
func_global_asm_8071498C(&func_global_asm_8071E864);
|
||||
func_global_asm_80714950(i);
|
||||
func_global_asm_807149B8(1);
|
||||
changeActorColor(0x8C, 0x8C, 0x8C, 0xFF);
|
||||
func_global_asm_80714998(5);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, temp_f20, current_actor_pointer->x_position, current_actor_pointer->y_position + 50.0f, current_actor_pointer->z_position);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FFA0, randomScale, current_actor_pointer->x_position, current_actor_pointer->y_position + 50.0f, current_actor_pointer->z_position);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -217,9 +217,9 @@ void func_global_asm_806A1FD8(void) {
|
||||
AAD_global_asm_806A1FD8 *aaD;
|
||||
s32 i;
|
||||
u8 var_a1;
|
||||
f32 sp54;
|
||||
f32 sp50;
|
||||
f32 sp4C;
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
Actor *temp_s0;
|
||||
|
||||
aaD = current_actor_pointer->additional_actor_data;
|
||||
@ -230,7 +230,7 @@ void func_global_asm_806A1FD8(void) {
|
||||
aaD->unk8 = current_actor_pointer->y_position;
|
||||
current_actor_pointer->unk130 = 0x46;
|
||||
current_actor_pointer->unk131 = 0x14;
|
||||
if (isFlagSet(func_global_asm_80688C30(func_global_asm_80688E68(current_actor_pointer)), FLAG_TYPE_PERMANENT) != 0) {
|
||||
if (isFlagSet(func_global_asm_80688C30(func_global_asm_80688E68(current_actor_pointer)), FLAG_TYPE_PERMANENT)) {
|
||||
deleteActor(current_actor_pointer);
|
||||
}
|
||||
}
|
||||
@ -255,8 +255,8 @@ void func_global_asm_806A1FD8(void) {
|
||||
func_global_asm_8071498C(&func_global_asm_80717D4C);
|
||||
func_global_asm_80714950(-0x64);
|
||||
changeActorColor(0x64, 0x46, 0x1E, 0xFF);
|
||||
getBonePosition(current_actor_pointer, i, &sp54, &sp50, &sp4C);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FF18, 2.0f, sp54, sp50 + 10.0, sp4C);
|
||||
getBonePosition(current_actor_pointer, i, &x, &y, &z);
|
||||
drawSpriteAtPosition(&D_global_asm_8071FF18, 2.0f, x, y + 10.0, z);
|
||||
}
|
||||
aaD->unk0 = 0xF;
|
||||
playSoundAtActorPosition(current_actor_pointer, 0x1C1, 0xFF, 0x7F, 1);
|
||||
|
@ -107,7 +107,6 @@ void func_global_asm_806A4DDC(Actor *arg0);
|
||||
void func_global_asm_806A5DF0(s16 arg0, f32 arg1, f32 arg2, f32 arg3, s16 arg4, u8 arg5, s16 arg6, s32 arg7);
|
||||
|
||||
s32 func_global_asm_80723020(Actor *arg0, s32 arg1, s32 arg2, f32 arg3, f32 arg4, f32 arg5, u8 arg6);
|
||||
void func_global_asm_806F91B4(s32 HUDItemIndex, u8 playerIndex, s16 amount);
|
||||
void func_global_asm_80723484(s32, Actor*);
|
||||
void func_global_asm_807149FC(s32 arg0);
|
||||
|
||||
@ -858,7 +857,7 @@ void func_global_asm_806A7600(void *arg0) {
|
||||
setFlag(sp34->unk6, TRUE, FLAG_TYPE_PERMANENT);
|
||||
}
|
||||
func_global_asm_806F8BC4(0, 0, 0);
|
||||
func_global_asm_806F91B4(0, 0, 0xA);
|
||||
changeCollectableCount(0, 0, 10);
|
||||
}
|
||||
}
|
||||
|
||||
@ -910,7 +909,7 @@ void func_global_asm_806A7BDC(void) {
|
||||
func_global_asm_80714C08(sp44.unk0[sp60], 0.2f, current_actor_pointer, 1, 0);
|
||||
playSong(0x7F, 1.0f);
|
||||
func_global_asm_806F8BC4(7, 0, 0);
|
||||
func_global_asm_806F91B4(7, 0, func_global_asm_806F8EDC(7, 0));
|
||||
changeCollectableCount(7, 0, func_global_asm_806F8EDC(7, 0));
|
||||
}
|
||||
if (!(object_timer & 0xF)) {
|
||||
func_global_asm_807149B8(1);
|
||||
|
@ -56,20 +56,20 @@ void func_global_asm_806ADFE0(void) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_global_asm_806AE2B0(s32 modelIndex, s16 arg1, s16 arg2, s16 arg3) {
|
||||
f32 sp2C;
|
||||
f32 sp28;
|
||||
f32 sp24;
|
||||
void func_global_asm_806AE2B0(s32 modelIndex, s16 arg1, s16 boneIndex, s16 arg3) {
|
||||
f32 x;
|
||||
f32 y;
|
||||
f32 z;
|
||||
|
||||
if (spawnActor(ACTOR_KROSSBONES_HEAD, modelIndex)) {
|
||||
getBonePosition(current_actor_pointer, arg2, &sp2C, &sp28, &sp24);
|
||||
getBonePosition(current_actor_pointer, boneIndex, &x, &y, &z);
|
||||
last_spawned_actor->floor = current_actor_pointer->floor;
|
||||
last_spawned_actor->y_rotation = current_actor_pointer->y_rotation + arg1;
|
||||
last_spawned_actor->unkEE = last_spawned_actor->y_rotation;
|
||||
last_spawned_actor->unk168 = arg3;
|
||||
last_spawned_actor->x_position = sp2C;
|
||||
last_spawned_actor->y_position = sp28;
|
||||
last_spawned_actor->z_position = sp24;
|
||||
last_spawned_actor->x_position = x;
|
||||
last_spawned_actor->y_position = y;
|
||||
last_spawned_actor->z_position = z;
|
||||
func_global_asm_807248B0(last_spawned_actor, current_actor_pointer->animation_state->scale_y);
|
||||
}
|
||||
}
|
||||
|
@ -8,13 +8,13 @@ extern s32 D_global_asm_80750600[];
|
||||
// TODO: Are these correct?
|
||||
extern s32 D_global_asm_8071FFA0;
|
||||
|
||||
void func_global_asm_806B11C0(u8 arg0) {
|
||||
f32 sp3C, sp38, sp34;
|
||||
void func_global_asm_806B11C0(u8 boneIndex) {
|
||||
f32 x, y, z;
|
||||
|
||||
getBonePosition(current_actor_pointer, arg0, &sp3C, &sp38, &sp34);
|
||||
func_global_asm_80685B44(&D_global_asm_8071FFA0, 0, 1.0f, 3, 5, 0x28, sp3C, current_actor_pointer->floor, sp34);
|
||||
getBonePosition(current_actor_pointer, boneIndex, &x, &y, &z);
|
||||
func_global_asm_80685B44(&D_global_asm_8071FFA0, 0, 1.0f, 3, 5, 0x28, x, current_actor_pointer->floor, z);
|
||||
// spawnShockwave
|
||||
func_global_asm_806846B4(sp3C, current_actor_pointer->floor, sp34, 0.05f, 0.04, current_actor_pointer, 0);
|
||||
func_global_asm_806846B4(x, current_actor_pointer->floor, z, 0.05f, 0.04, current_actor_pointer, 0);
|
||||
}
|
||||
|
||||
void func_global_asm_806B1290(void) {
|
||||
|
@ -20,7 +20,7 @@ void func_global_asm_806B9CB0() {
|
||||
renderActor(current_actor_pointer, 0);
|
||||
}
|
||||
|
||||
void func_global_asm_806B9CE0(u8 arg0, s8 arg1) {
|
||||
void func_global_asm_806B9CE0(u8 arg0, s8 yOffset) {
|
||||
switch (arg0) {
|
||||
case 0:
|
||||
func_global_asm_8071498C(&func_global_asm_8071720C);
|
||||
@ -35,7 +35,7 @@ void func_global_asm_806B9CE0(u8 arg0, s8 arg1) {
|
||||
D_global_asm_8074E880[((rand() >> 0xF) % 1000) % 3],
|
||||
(((rand() >> 0xF) % 256) * 0.001953125) + 0.5,
|
||||
((rand() >> 0xF) % 6) + (current_actor_pointer->x_position - 3.0f),
|
||||
current_actor_pointer->y_position + arg1,
|
||||
current_actor_pointer->y_position + yOffset,
|
||||
((rand() >> 0xF) % 6) + (current_actor_pointer->z_position - 3.0f)
|
||||
);
|
||||
}
|
||||
|
@ -29,7 +29,6 @@ extern u16 D_global_asm_807FC930[];
|
||||
void func_global_asm_8061C518(Actor*, Actor*, s32, s32, s32, s32, s32, s32, s32, s32, f32);
|
||||
void func_global_asm_8061C600(Actor*, Actor*, s32, s32, s32, s32, s32, s32, s32, s32, f32);
|
||||
void func_global_asm_806BF920(void);
|
||||
void func_global_asm_806F91B4(s32, u8, s32);
|
||||
int func_global_asm_807035C4(); // TODO: Signature
|
||||
void func_global_asm_80718BF4(void);
|
||||
int func_global_asm_807197B4(); // TODO: Signature
|
||||
@ -152,7 +151,7 @@ void func_global_asm_806BE09C(void) {
|
||||
if (!(object_timer & 3)) {
|
||||
sp3C = &D_global_asm_807FC950->character_progress[*current_character_index];
|
||||
D_global_asm_807FDC90->unk2C--;
|
||||
func_global_asm_806F91B4(0, 0, -1);
|
||||
changeCollectableCount(0, 0, -1);
|
||||
sp3C->coloured_bananas_fed_to_tns[levelIndex]++;
|
||||
for (i = 0; i < 5; i++) { count += D_global_asm_807FC950[0].character_progress[i].coloured_bananas_fed_to_tns[levelIndex]; }
|
||||
if (count >= D_global_asm_807446C0[levelIndex]) {
|
||||
@ -920,14 +919,14 @@ void func_global_asm_806C28B8(void) {
|
||||
}
|
||||
*/
|
||||
|
||||
void func_global_asm_806C2A64(u8 arg0, u8 arg1, u8 arg2, f32 arg3, f32 arg4, f32 arg5, void *arg6, f32 arg7) {
|
||||
void func_global_asm_806C2A64(u8 arg0, u8 arg1, u8 arg2, f32 x, f32 y, f32 z, void *sprite, f32 scale) {
|
||||
func_global_asm_807149A8(1000);
|
||||
func_global_asm_80714998(0xFF);
|
||||
func_global_asm_80714944(((rand() >> 0xF) % 32767) % 11);
|
||||
changeActorColor(arg0, arg1, arg2, 0xFF);
|
||||
func_global_asm_8071498C(&func_global_asm_80717D84);
|
||||
func_global_asm_80714950(2);
|
||||
drawSpriteAtPosition(arg6, arg7 * 0.2, arg3, arg4, arg5);
|
||||
drawSpriteAtPosition(sprite, scale * 0.2, x, y, z);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_C2A90/func_global_asm_806C2B2C.s")
|
||||
|
@ -59,8 +59,6 @@ extern ExitData D_global_asm_807FC908;
|
||||
extern ExitData D_global_asm_807FC918;
|
||||
extern s16 D_global_asm_807FC930[];
|
||||
|
||||
void func_global_asm_806F91B4(s32, u8, s32);
|
||||
|
||||
void func_global_asm_806C7B00(void) {
|
||||
s16 i;
|
||||
for (i = 0; i < 0xE; i++) {
|
||||
@ -697,11 +695,11 @@ void func_global_asm_806C9AE0(void) {
|
||||
D_global_asm_807FD56C = 0;
|
||||
}
|
||||
|
||||
void func_global_asm_806C9C1C(s32 arg0) {
|
||||
void func_global_asm_806C9C1C(s32 playerIndex) {
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < 5; i++) {
|
||||
func_global_asm_806F91B4(D_global_asm_80750B34[i], arg0, 9999);
|
||||
changeCollectableCount(D_global_asm_80750B34[i], playerIndex, 9999);
|
||||
}
|
||||
func_global_asm_806F833C(0);
|
||||
}
|
||||
|
@ -96,7 +96,6 @@ extern s16 D_global_asm_807FD584; // index into a ton of arrays
|
||||
extern u8 D_global_asm_807FD586;
|
||||
|
||||
void func_global_asm_8062217C(Actor*, u8);
|
||||
void func_global_asm_806F91B4(s32, s32, s16);
|
||||
int func_global_asm_806FF358(); // TODO: Signature
|
||||
int func_global_asm_806FF75C(); // TODO: Signature
|
||||
void func_global_asm_80665160(Actor *, s16, s16);
|
||||
@ -316,7 +315,7 @@ void func_global_asm_806CA2E4(void) {
|
||||
current_actor_pointer->control_state = 0x2D;
|
||||
current_actor_pointer->control_state_progress = 0;
|
||||
func_global_asm_806F8BC4(5, 0, 0);
|
||||
func_global_asm_806F91B4(5, extra_player_info_pointer->unk1A4, -1 * func_global_asm_806FA7A4(5));
|
||||
changeCollectableCount(5, extra_player_info_pointer->unk1A4, -1 * func_global_asm_806FA7A4(5));
|
||||
playAnimation(current_actor_pointer, 0x42);
|
||||
playSoundAtActorPosition(current_actor_pointer, 0xF2, 0xFF, 0x7F, 0);
|
||||
current_actor_pointer->unkB8 = 0.0f;
|
||||
@ -388,7 +387,7 @@ void func_global_asm_806CB53C(void) {
|
||||
}
|
||||
if (!(D_global_asm_80750B54[current_actor_pointer->control_state].unk0 & 0x300) && !(extra_player_info_pointer->unk1F0 & 0x14000) && !func_global_asm_8061CB50()) {
|
||||
if ((extra_player_info_pointer->unk1F4 & 0x10) == 0) {
|
||||
func_global_asm_806F91B4(5, extra_player_info_pointer->unk1A4, -1);
|
||||
changeCollectableCount(5, extra_player_info_pointer->unk1A4, -1);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@ -1266,23 +1265,23 @@ void func_global_asm_806CEE64(f32 arg0) {
|
||||
}
|
||||
|
||||
void func_global_asm_806CEED8(void) {
|
||||
f32 sp44; // 44
|
||||
f32 sp40; // 40
|
||||
f32 sp3C; // 3C
|
||||
f32 sp38; // 38
|
||||
f32 sp34; // 34
|
||||
f32 sp30; // 30
|
||||
f32 d; // 2C
|
||||
f32 sp28; // 28
|
||||
s32 sp24; // 24
|
||||
s32 sp20; // 20
|
||||
f32 x2;
|
||||
f32 x1;
|
||||
f32 y2;
|
||||
f32 y1;
|
||||
f32 z2;
|
||||
f32 z1;
|
||||
f32 dxz;
|
||||
f32 dy;
|
||||
s32 boneIndex1;
|
||||
s32 boneIndex2;
|
||||
|
||||
func_global_asm_806CF2EC(&sp24, &sp20);
|
||||
getBonePosition(current_actor_pointer, sp24, &sp40, &sp38, &sp30);
|
||||
getBonePosition(current_actor_pointer, sp20, &sp44, &sp3C, &sp34);
|
||||
sp28 = sp3C - sp38;
|
||||
d = sqrtf(((sp34 - sp30) * (sp34 - sp30)) + ((sp44 - sp40) * (sp44 - sp40)));
|
||||
extra_player_info_pointer->unk1BC = ((0.0 - (func_global_asm_80611BB4(sp28, d) * 57.29577637f)) + 270.0);
|
||||
func_global_asm_806CF2EC(&boneIndex1, &boneIndex2);
|
||||
getBonePosition(current_actor_pointer, boneIndex1, &x1, &y1, &z1);
|
||||
getBonePosition(current_actor_pointer, boneIndex2, &x2, &y2, &z2);
|
||||
dy = y2 - y1;
|
||||
dxz = sqrtf(((z2 - z1) * (z2 - z1)) + ((x2 - x1) * (x2 - x1)));
|
||||
extra_player_info_pointer->unk1BC = ((0.0 - (func_global_asm_80611BB4(dy, dxz) * 57.29577637f)) + 270.0);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_CEAE0/func_global_asm_806CEFBC.s")
|
||||
@ -2541,21 +2540,21 @@ void func_global_asm_806D25CC(void) {
|
||||
}
|
||||
|
||||
void func_global_asm_806D266C(void) {
|
||||
f32 sp2C, sp28, sp24;
|
||||
f32 x, y, z;
|
||||
|
||||
func_global_asm_806D2378();
|
||||
func_global_asm_806D25CC();
|
||||
getBonePosition(current_actor_pointer, 3, &sp2C, &sp28, &sp24);
|
||||
func_global_asm_806F4D70(cc_player_index, sp2C, sp28, sp24, 25.0f);
|
||||
getBonePosition(current_actor_pointer, 3, &x, &y, &z);
|
||||
func_global_asm_806F4D70(cc_player_index, x, y, z, 25.0f);
|
||||
}
|
||||
|
||||
void func_global_asm_806D26D8(void) {
|
||||
f32 sp2C, sp28, sp24;
|
||||
f32 x, y, z;
|
||||
|
||||
func_global_asm_806D2378();
|
||||
func_global_asm_806D25CC();
|
||||
getBonePosition(current_actor_pointer, 2, &sp2C, &sp28, &sp24);
|
||||
func_global_asm_806F4D70(cc_player_index, sp2C, sp28, sp24, 25.0f);
|
||||
getBonePosition(current_actor_pointer, 2, &x, &y, &z);
|
||||
func_global_asm_806F4D70(cc_player_index, x, y, z, 25.0f);
|
||||
}
|
||||
|
||||
void func_global_asm_806D2744(s32 arg0) {
|
||||
|
@ -78,7 +78,6 @@ extern s32 D_global_asm_807FBB68;
|
||||
extern f32 D_global_asm_807FBC58;
|
||||
extern s16 D_global_asm_807FD584; // index into a ton of arrays
|
||||
|
||||
void func_global_asm_806F91B4(s32, s32, s16);
|
||||
void func_global_asm_80665160(Actor *, s16, s16);
|
||||
f32 func_global_asm_806CD898(f32 currentSpeed, f32 desiredSpeed, f32 boostAmount); // boostSpeed
|
||||
void func_global_asm_806CEE64(f32);
|
||||
@ -236,7 +235,7 @@ void func_global_asm_806D2E9C(void) {
|
||||
if (func_global_asm_8061CB50() == 0) {
|
||||
func_global_asm_806CC948();
|
||||
if ((func_global_asm_806F8AD4(5, cc_player_index) != 0) && !(extra_player_info_pointer->unk1F0 & 0x10000)) {
|
||||
func_global_asm_806F91B4(5, cc_player_index, -1);
|
||||
changeCollectableCount(5, cc_player_index, -1);
|
||||
}
|
||||
}
|
||||
renderActor(current_actor_pointer, 0);
|
||||
@ -3132,7 +3131,7 @@ void func_global_asm_806DED44(void) {
|
||||
func_global_asm_80709464(PaaD->unk1A4);
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
func_global_asm_806F91B4(D_global_asm_80750FE0[i], 0, 9999);
|
||||
changeCollectableCount(D_global_asm_80750FE0[i], 0, 9999);
|
||||
func_global_asm_806F8BC4(D_global_asm_80750FE0[i], 0, 0);
|
||||
}
|
||||
}
|
||||
|
@ -39,7 +39,6 @@ extern u8 D_global_asm_807FC8B9;
|
||||
extern s16 D_global_asm_807FD584; // index into a ton of arrays
|
||||
extern f32 D_global_asm_807FD888;
|
||||
|
||||
void func_global_asm_806F91B4(s32, s32, s16);
|
||||
f32 func_global_asm_806DFFA0(f32, s16, s16);
|
||||
void func_global_asm_806EAB44(Actor *arg0, u8 arg1);
|
||||
s32 handleInputsForControlState(s32 arg0);
|
||||
@ -1702,7 +1701,7 @@ void func_global_asm_806E52D0(void) {
|
||||
current_actor_pointer->noclip_byte = 1;
|
||||
}
|
||||
if (!temp_v1) {
|
||||
func_global_asm_806F91B4(7, cc_player_index, -1);
|
||||
changeCollectableCount(7, cc_player_index, -1);
|
||||
}
|
||||
}
|
||||
if (!temp_v1) {
|
||||
|
@ -59,7 +59,6 @@ extern f32 D_global_asm_807FD888;
|
||||
extern void func_global_asm_8068E474(void);
|
||||
void func_global_asm_8061C2F0(Actor *, f32, f32, f32, f32, f32, f32, s32);
|
||||
void func_global_asm_8062217C(Actor*, u8);
|
||||
void func_global_asm_806F91B4(s32, s32, s16);
|
||||
void func_global_asm_806EAB44(Actor *arg0, u8 arg1);
|
||||
void func_global_asm_806CFECC(void);
|
||||
s16 func_global_asm_8062773C(s32);
|
||||
@ -857,7 +856,7 @@ void func_global_asm_806E9BA8(s32 arg0) {
|
||||
playSound(0x263, 0x7FFF, 63.0f, 1.0f, 0xA, 0);
|
||||
current_actor_pointer->control_state = arg0;
|
||||
current_actor_pointer->control_state_progress = 0;
|
||||
func_global_asm_806F91B4(6, cc_player_index, -1);
|
||||
changeCollectableCount(6, cc_player_index, -1);
|
||||
createLight(
|
||||
character_change_array[cc_player_index].look_at_eye_x,
|
||||
character_change_array[cc_player_index].look_at_eye_y,
|
||||
|
@ -9,9 +9,9 @@ extern s16 D_global_asm_807FD724;
|
||||
extern u8 D_global_asm_80754238[];
|
||||
|
||||
typedef struct {
|
||||
f32 unk0;
|
||||
f32 unk4;
|
||||
f32 unk8;
|
||||
f32 unk0; // x
|
||||
f32 unk4; // y
|
||||
f32 unk8; // z
|
||||
f32 unkC;
|
||||
} Struct807FD740;
|
||||
|
||||
@ -25,12 +25,12 @@ void func_global_asm_806F4750() {
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_F9450/func_global_asm_806F4778.s")
|
||||
|
||||
void func_global_asm_806F4D70(u8 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4) {
|
||||
D_global_asm_807FD740[arg0].unk0 = arg1;
|
||||
D_global_asm_807FD740[arg0].unk4 = arg2;
|
||||
D_global_asm_807FD740[arg0].unk8 = arg3;
|
||||
D_global_asm_807FD740[arg0].unkC = arg4;
|
||||
D_global_asm_807FD780[arg0] = NULL;
|
||||
void func_global_asm_806F4D70(u8 playerIndex, f32 x, f32 y, f32 z, f32 arg4) {
|
||||
D_global_asm_807FD740[playerIndex].unk0 = x;
|
||||
D_global_asm_807FD740[playerIndex].unk4 = y;
|
||||
D_global_asm_807FD740[playerIndex].unk8 = z;
|
||||
D_global_asm_807FD740[playerIndex].unkC = arg4;
|
||||
D_global_asm_807FD780[playerIndex] = NULL;
|
||||
}
|
||||
|
||||
// close
|
||||
|
@ -606,10 +606,10 @@ u16 func_global_asm_806F8EDC(s32 HUDItemIndex, s32 playerIndex) {
|
||||
}
|
||||
|
||||
// Close
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/hud/func_global_asm_806F91B4.s")
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/hud/changeCollectableCount.s")
|
||||
|
||||
/*
|
||||
void func_global_asm_806F91B4(s32 HUDItemIndex, u8 playerIndex, s16 amount) {
|
||||
void changeCollectableCount(s32 HUDItemIndex, u8 playerIndex, s16 amount) {
|
||||
HUDDisplay *HUDItem;
|
||||
CharacterProgress *sp48;
|
||||
s32 maxItemCapacity;
|
||||
|
@ -54,8 +54,6 @@ void func_menu_80025FB4(MenuStruct1*, CharacterProgress*, s32);
|
||||
void func_menu_80026B28(MenuStruct1*, CharacterProgress*, s32);
|
||||
void func_menu_80026DAC(MenuStruct1*, CharacterProgress*, s32);
|
||||
|
||||
void func_global_asm_806F91B4(s32, s32, s16);
|
||||
|
||||
s32 func_menu_80025AF0(MenuStruct1 *arg0, s32 characterIndex) {
|
||||
s32 phi_v1;
|
||||
s32 phi_v0;
|
||||
@ -170,9 +168,9 @@ void func_menu_80025E04(MenuStruct1 *arg0, CharacterProgress *arg1) {
|
||||
}
|
||||
break;
|
||||
}
|
||||
func_global_asm_806F91B4(1, 0, -arg0->unk4);
|
||||
changeCollectableCount(1, 0, -arg0->unk4);
|
||||
if (sp1E >= 0) {
|
||||
func_global_asm_806F91B4(sp1E, 0, 9999);
|
||||
changeCollectableCount(sp1E, 0, 9999);
|
||||
}
|
||||
func_global_asm_8060DEC8(); // saveTheGame()
|
||||
}
|
||||
@ -637,7 +635,7 @@ void func_menu_80026DAC(MenuStruct1 *arg0, CharacterProgress *arg1, s32 flagInde
|
||||
temp2 = func_global_asm_806F8EDC(sp24, 0);
|
||||
if (temp < temp2) {
|
||||
loadText(current_actor_pointer, sp2C, sp28);
|
||||
func_global_asm_806F91B4(sp24, 0, 999);
|
||||
changeCollectableCount(sp24, 0, 999);
|
||||
arg0->unkE = 0;
|
||||
cutsceneIndex = 5;
|
||||
}
|
||||
|
@ -89,7 +89,6 @@ void func_minecart_80024254(Struct80024254_arg0 *arg0) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_global_asm_8072177C(Actor *, s16, s16, s16, s32, s32, s32, s32, s32);
|
||||
void func_minecart_800253C0(void *, s16, u8);
|
||||
extern s16 D_global_asm_80750AC4;
|
||||
|
||||
@ -125,9 +124,9 @@ void func_minecart_8002430C(u8 arg0, s32 arg1, s16 arg2, u8 arg3) {
|
||||
f32 dx;
|
||||
f32 dz;
|
||||
f32 dy;
|
||||
f32 sp60;
|
||||
f32 sp5C;
|
||||
f32 sp58;
|
||||
f32 z;
|
||||
f32 y;
|
||||
f32 x;
|
||||
|
||||
aaD = current_actor_pointer->additional_actor_data;
|
||||
PaaD = character_change_array->player_pointer->PaaD;
|
||||
@ -198,30 +197,30 @@ void func_minecart_8002430C(u8 arg0, s32 arg1, s16 arg2, u8 arg3) {
|
||||
func_global_asm_8068ECF4(6, 0xFF);
|
||||
func_minecart_80024254(aaD);
|
||||
func_minecart_800253C0(aaD, arg2, arg3);
|
||||
getBonePosition(current_actor_pointer, 5, &sp58, &sp5C, &sp60);
|
||||
func_global_asm_8072177C(current_actor_pointer, sp58, sp5C, sp60, 0xFF, 0xFF, 0xFF, 0xFF, 0);
|
||||
func_global_asm_8072177C(aaD->unk4, sp58, sp5C, sp60, 0xFF, 0xFF, 0xFF, 0xFF, 0);
|
||||
getBonePosition(current_actor_pointer, 5, &x, &y, &z);
|
||||
addActorRecolor(current_actor_pointer, x, y, z, 0xFF, 0xFF, 0xFF, 0xFF, 0);
|
||||
addActorRecolor(aaD->unk4, x, y, z, 0xFF, 0xFF, 0xFF, 0xFF, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void func_minecart_80024768(void) {
|
||||
f32 sp4C;
|
||||
f32 sp48;
|
||||
f32 sp44;
|
||||
f32 sp40;
|
||||
f32 sp3C;
|
||||
f32 sp38;
|
||||
f32 z2;
|
||||
f32 y2;
|
||||
f32 x2;
|
||||
f32 z1;
|
||||
f32 y1;
|
||||
f32 x1;
|
||||
|
||||
if (extra_player_info_pointer->unk1F0 & 0x10000002) {
|
||||
getBonePosition(current_actor_pointer, 2, &sp38, &sp3C, &sp40);
|
||||
getBonePosition(current_actor_pointer, 1, &sp44, &sp48, &sp4C);
|
||||
getBonePosition(current_actor_pointer, 2, &x1, &y1, &z1);
|
||||
getBonePosition(current_actor_pointer, 1, &x2, &y2, &z2);
|
||||
} else {
|
||||
getBonePosition(current_actor_pointer, 1, &sp38, &sp3C, &sp40);
|
||||
getBonePosition(current_actor_pointer, 2, &sp44, &sp48, &sp4C);
|
||||
getBonePosition(current_actor_pointer, 1, &x1, &y1, &z1);
|
||||
getBonePosition(current_actor_pointer, 2, &x2, &y2, &z2);
|
||||
}
|
||||
func_global_asm_8065A6F8(0xC8);
|
||||
func_global_asm_8065A660(20.0f, 40.0f);
|
||||
createLight(sp38, sp3C, sp40, sp44, sp48, sp4C, 0.0f, 1, 0xFF, 0xFF, 0xFF);
|
||||
createLight(x1, y1, z1, x2, y2, z2, 0.0f, 1, 0xFF, 0xFF, 0xFF);
|
||||
}
|
||||
|
||||
typedef struct {
|
||||
|
@ -107,11 +107,13 @@ void func_minecart_80026C54(void) {
|
||||
func_global_asm_8071498C(&func_global_asm_80717D4C);
|
||||
func_global_asm_807149B8(1);
|
||||
func_global_asm_80714A28(4);
|
||||
drawSpriteAtPosition(D_global_asm_8074E880[((rand() >> 0xF) % 1000) % 3],
|
||||
drawSpriteAtPosition(
|
||||
D_global_asm_8074E880[((rand() >> 0xF) % 1000) % 3],
|
||||
0.5f,
|
||||
((rand() >> 0xF) % 20) + (current_actor_pointer->x_position - 10.0f),
|
||||
current_actor_pointer->y_position,
|
||||
((rand() >> 0xF) % 20) + (current_actor_pointer->z_position - 10.0f));
|
||||
((rand() >> 0xF) % 20) + (current_actor_pointer->z_position - 10.0f)
|
||||
);
|
||||
}
|
||||
|
||||
// Jumptable, huge
|
||||
@ -200,8 +202,6 @@ void func_minecart_80027EE8(MinecartStruct1 *arg0) {
|
||||
}
|
||||
*/
|
||||
|
||||
s32 func_global_asm_8072177C(void *, s16, s16, s16, s32, s32, s32, s32, s32);
|
||||
|
||||
typedef struct {
|
||||
u8 unk0[0x10 - 0x0];
|
||||
s16 unk10;
|
||||
@ -212,9 +212,9 @@ typedef struct {
|
||||
void func_minecart_800280BC(void) {
|
||||
A178_minecart_800280BC *sp54;
|
||||
Struct807FBB70_unk278 *temp_v1;
|
||||
f32 sp4C;
|
||||
f32 sp48;
|
||||
f32 sp44;
|
||||
f32 z;
|
||||
f32 y;
|
||||
f32 x;
|
||||
u8 *temp_v0_2;
|
||||
|
||||
sp54 = current_actor_pointer->unk178;
|
||||
@ -254,8 +254,8 @@ void func_minecart_800280BC(void) {
|
||||
func_global_asm_8068ECF4(6, 0xFF);
|
||||
func_global_asm_8072B438(0x200);
|
||||
func_minecart_800253C0(sp54, 0x7FFF, 0x23);
|
||||
getBonePosition(current_actor_pointer, 5, &sp44, &sp48, &sp4C);
|
||||
func_global_asm_8072177C(current_actor_pointer, sp44, sp48, sp4C, 0xFF, 0xFF, 0xFF, 0xFF, 0);
|
||||
getBonePosition(current_actor_pointer, 5, &x, &y, &z);
|
||||
addActorRecolor(current_actor_pointer, x, y, z, 0xFF, 0xFF, 0xFF, 0xFF, 0);
|
||||
func_minecart_80027EE8(sp54);
|
||||
break;
|
||||
case 2:
|
||||
|
@ -53,7 +53,6 @@ void func_multiplayer_80025F84();
|
||||
s32 func_multiplayer_80026BD8(s32);
|
||||
|
||||
void func_global_asm_806A5DF0(u16, f32, f32, f32, s32, s32, s32, s32);
|
||||
void func_global_asm_806F91B4(s32, u8, s16);
|
||||
void func_global_asm_806F54E0(u8, s32, s32);
|
||||
extern int func_global_asm_8071F3C0(); // TODO: Signature
|
||||
|
||||
@ -570,31 +569,31 @@ void func_multiplayer_800268DC(Actor *arg0, PlayerAdditionalActorData *arg1, Pla
|
||||
extra_player_info_pointer->unk21E = 0;
|
||||
}
|
||||
if ((D_global_asm_807552E8 == 3) || (D_global_asm_807552E8 == 5)) {
|
||||
func_global_asm_806F91B4(1, arg1->unk1A4, -10);
|
||||
changeCollectableCount(1, arg1->unk1A4, -10);
|
||||
}
|
||||
}
|
||||
|
||||
void func_multiplayer_8002698C(MultiplayerStruct0 *arg0) {
|
||||
if (D_global_asm_807552E8 == 2) {
|
||||
func_global_asm_806F91B4(1, arg0->unk1A4, -3);
|
||||
changeCollectableCount(1, arg0->unk1A4, -3);
|
||||
}
|
||||
}
|
||||
|
||||
void func_multiplayer_800269C8(u8 arg0, s8 arg1) {
|
||||
void func_multiplayer_800269C8(u8 playerIndex, s8 arg1) {
|
||||
Actor *temp_s0;
|
||||
struct_unknown_mp_aad* phi_v1;
|
||||
s32 temp_v1;
|
||||
s32 sp30;
|
||||
PlayerProgress *temp_s1;
|
||||
|
||||
temp_s0 = character_change_array[arg0].player_pointer;
|
||||
temp_s1 = &D_global_asm_807FC950[arg0];
|
||||
temp_s0 = character_change_array[playerIndex].player_pointer;
|
||||
temp_s1 = &D_global_asm_807FC950[playerIndex];
|
||||
temp_v1 = temp_s1->health + temp_s1->unk2FD + arg1;
|
||||
sp30 = temp_s1->unk2FA - temp_v1;
|
||||
if ((func_global_asm_806F8AD4(1U, arg0) != 0) && ((temp_v1 <= 0) || (sp30 >= 2))) {
|
||||
if ((func_global_asm_806F8AD4(1U, playerIndex) != 0) && ((temp_v1 <= 0) || (sp30 >= 2))) {
|
||||
struct_unknown_mp_aad* aad = func_global_asm_8067ADB4(0x13E)->additional_actor_data;
|
||||
aad->unk4C = 1;
|
||||
func_global_asm_806F91B4(1, arg0, -0xA);
|
||||
changeCollectableCount(1, playerIndex, -10);
|
||||
if (D_global_asm_807552E8 == 5) {
|
||||
func_multiplayer_80025F84();
|
||||
}
|
||||
@ -603,21 +602,21 @@ void func_multiplayer_800269C8(u8 arg0, s8 arg1) {
|
||||
}
|
||||
}
|
||||
|
||||
void func_multiplayer_80026B0C(s32 arg0) {
|
||||
Actor *player = character_change_array[arg0].player_pointer;
|
||||
void func_multiplayer_80026B0C(s32 playerIndex) {
|
||||
Actor *player = character_change_array[playerIndex].player_pointer;
|
||||
player->noclip_byte = 0xC;
|
||||
switch (D_global_asm_807552E8) {
|
||||
case 2:
|
||||
func_global_asm_806F91B4(1, arg0, -3);
|
||||
changeCollectableCount(1, playerIndex, -3);
|
||||
break;
|
||||
case 5:
|
||||
func_global_asm_806F91B4(7, arg0, -0x40);
|
||||
changeCollectableCount(7, playerIndex, -64);
|
||||
// fallthrough
|
||||
case 3:
|
||||
func_multiplayer_800269C8(arg0, 0);
|
||||
func_multiplayer_800269C8(playerIndex, 0);
|
||||
break;
|
||||
case 4:
|
||||
func_global_asm_806F91B4(7, arg0, -1);
|
||||
changeCollectableCount(7, playerIndex, -1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -2,7 +2,6 @@
|
||||
#include "functions.h"
|
||||
|
||||
f32 func_global_asm_80665E48(f32, f32, f32, f32);
|
||||
s32 func_global_asm_8072177C(void *, s16, s16, s16, s32, s32, s32, s32, s32);
|
||||
|
||||
typedef struct {
|
||||
u8 pad0[0x10 - 0x0];
|
||||
@ -301,9 +300,9 @@ void func_race_80029054(void) {
|
||||
A17C_race_80029054 *a17C;
|
||||
Actor *temp;
|
||||
A178_race_80029054 *sp48;
|
||||
f32 sp44;
|
||||
f32 sp40;
|
||||
f32 sp3C;
|
||||
f32 z;
|
||||
f32 y;
|
||||
f32 x;
|
||||
|
||||
a178 = current_actor_pointer->unk178;
|
||||
a17C = current_actor_pointer->unk17C;
|
||||
@ -322,10 +321,10 @@ void func_race_80029054(void) {
|
||||
func_global_asm_8067E278(0, 1);
|
||||
current_actor_pointer->control_state = 0x40;
|
||||
}
|
||||
getBonePosition(current_actor_pointer, 6, &sp3C, &sp40, &sp44);
|
||||
func_global_asm_8072177C(current_actor_pointer, sp3C, sp40, sp44, 0xFF, 0xFF, 0xFF, 0xFF, 0);
|
||||
getBonePosition(current_actor_pointer, 0xB, &sp3C, &sp40, &sp44);
|
||||
func_global_asm_8072177C(current_actor_pointer, sp3C, sp40, sp44, 0xFF, 0xFF, 0xFF, 0xFF, 0);
|
||||
getBonePosition(current_actor_pointer, 6, &x, &y, &z);
|
||||
addActorRecolor(current_actor_pointer, x, y, z, 0xFF, 0xFF, 0xFF, 0xFF, 0);
|
||||
getBonePosition(current_actor_pointer, 0xB, &x, &y, &z);
|
||||
addActorRecolor(current_actor_pointer, x, y, z, 0xFF, 0xFF, 0xFF, 0xFF, 0);
|
||||
func_race_80026354(a17C, a178, 1);
|
||||
if (a178->unk34 == 0 && sp48->unk34 == 5) {
|
||||
D_global_asm_807FDC9C[1].pad0[0] = 0;
|
||||
|
@ -210,6 +210,8 @@ __osViIntrCount = 0x80014FEC; // segment:dk64_boot
|
||||
__osTimerCounter = 0x80014FF0; // segment:dk64_boot
|
||||
__osEepPifRam = 0x800162E0; // segment:dk64_boot
|
||||
|
||||
addActorRecolor = 0x8072177C; // segment:global_asm
|
||||
changeCollectableCount = 0x806F91B4; // segment:global_asm
|
||||
getBonePosition = 0x80671C0C; // segment:global_asm
|
||||
moveAndScaleActorToAnother = 0x8067B238; // segment:global_asm
|
||||
getTextString = 0x8070E750; // segment:global_asm
|
||||
|
Loading…
Reference in New Issue
Block a user