Merge pull request #15 from inspectredc/func_80C0F544

func_80C0F544
This commit is contained in:
Alejandro Asenjo Nitti
2023-11-03 16:16:56 -03:00
committed by GitHub
2 changed files with 30 additions and 3 deletions
+19 -2
View File
@@ -53,7 +53,7 @@ s32 func_80C0B888(EnBsb* this, PlayState* play);
void func_80C0C32C(EnBsb* this);
void func_80C0C430(EnBsb* this);
void func_80C0D00C(EnBsb* this);
void func_80C0F544(EnBsb* this, Vec3f* pos, Vec3f* unk_02, Vec3f* unk3, f32 unk4, s32 unk5);
void func_80C0F544(EnBsb* this, Vec3f* pos, Vec3f* velocity, Vec3f* accel, f32 arg0, s16 arg1);
#if 0
// static ColliderJntSphElementInit sJntSphElementsInit[7] = {
@@ -1144,7 +1144,24 @@ void func_80C0F170(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot, Acto
#pragma GLOBAL_ASM("asm/non_matchings/overlays/ovl_En_Bsb/EnBsb_Draw.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/ovl_En_Bsb/func_80C0F544.s")
void func_80C0F544(EnBsb* this, Vec3f* pos, Vec3f* velocity, Vec3f* accel, f32 arg0, s16 arg1) {
EnBsbUnkStruct* var_s0 = &this->unk_0444;
s16 i;
for (i = 0; i < ARRAY_COUNT(this->unk_0444); i++, var_s0++) {
if (var_s0->unk_00 == 0) {
var_s0->unk_00 = 1U;
var_s0->pos = *pos;
var_s0->velocity = *velocity;
var_s0->accel = *accel;
var_s0->unk_30 = arg0;
var_s0->unk_34 = arg1;
var_s0->unk_28.x = (s16) (s32) Rand_CenteredFloat(30000.0f);
var_s0->unk_28.y = (s16) (s32) Rand_CenteredFloat(30000.0f);
var_s0->unk_28.z = (s16) (s32) Rand_CenteredFloat(30000.0f);
return;
}
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/ovl_En_Bsb/func_80C0F640.s")
+11 -1
View File
@@ -7,6 +7,16 @@ struct EnBsb;
typedef void (*EnBsbActionFunc)(struct EnBsb*, PlayState*);
typedef struct EnBsbUnkStruct {
/* 0x00 */ u8 unk_00;
/* 0x04 */ Vec3f pos;
/* 0x10 */ Vec3f velocity;
/* 0x1C */ Vec3f accel;
/* 0x28 */ Vec3s unk_28;
/* 0x30 */ f32 unk_30;
/* 0x34 */ s16 unk_34;
} EnBsbUnkStruct; // size = 0x38
typedef struct EnBsb {
/* 0x0000 */ Actor actor;
/* 0x0144 */ SkelAnime skelAnime;
@@ -52,7 +62,7 @@ typedef struct EnBsb {
/* 0x0330 */ Vec3f unk_0330[17];
/* 0x03FC */ s32 unk_03FC[17];
/* 0x0440 */ s16 unk_0440;
/* 0x0444 */ char pad_0444[0xAF0];
/* 0x0444 */ EnBsbUnkStruct unk_0444[0x32];
/* 0x0F34 */ ColliderJntSph unk_0F34;
/* 0x0F54 */ ColliderJntSphElement unk_0F54[7];
/* 0x1114 */ u32 unk_1114;