mirror of
https://github.com/HarbourMasters/Starship.git
synced 2025-02-09 03:37:49 +03:00
Merge branch 'master' of github.com:sonicdcer/sf64
This commit is contained in:
commit
5e1d4ab9a8
@ -1781,9 +1781,6 @@ void Area6_8018C0D0(f32* arg0, f32 arg1, Vec3f* arg2, f32 arg3, s32 arg4) {
|
|||||||
Matrix_Pop(&gGfxMatrix);
|
Matrix_Pop(&gGfxMatrix);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef NON_MATCHING
|
|
||||||
// weirdness on setting spAC.x to 0.0f and in loading bossA6 near the fakeness
|
|
||||||
// https://decomp.me/scratch/mwrs8
|
|
||||||
void Area6_8018C54C(Boss* bossA6) {
|
void Area6_8018C54C(Boss* bossA6) {
|
||||||
Vec3f spD0[30];
|
Vec3f spD0[30];
|
||||||
Vec3f spC4;
|
Vec3f spC4;
|
||||||
@ -1804,10 +1801,12 @@ void Area6_8018C54C(Boss* bossA6) {
|
|||||||
Animation_GetFrameData(&D_A6_6018994, 0, spD0);
|
Animation_GetFrameData(&D_A6_6018994, 0, spD0);
|
||||||
if (D_i3_801C22F0.unk_24 != 255.0f) {
|
if (D_i3_801C22F0.unk_24 != 255.0f) {
|
||||||
RCP_SetupDL(&gMasterDisp, 0x47);
|
RCP_SetupDL(&gMasterDisp, 0x47);
|
||||||
spAC.x = 0.0f;
|
|
||||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, (s32) D_i3_801C22F0.unk_24);
|
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, (s32) D_i3_801C22F0.unk_24);
|
||||||
|
spAC.x = 0.0f;
|
||||||
|
|
||||||
if ((gSysFrameCount & 1) == 0) {
|
if ((gSysFrameCount & 1) == 0) {
|
||||||
|
spAC.x = 1.0f;
|
||||||
|
if (1) {}
|
||||||
spAC.x = 0.0f;
|
spAC.x = 0.0f;
|
||||||
}
|
}
|
||||||
spAC.y = spAC.z = 0.0f;
|
spAC.y = spAC.z = 0.0f;
|
||||||
@ -1855,7 +1854,7 @@ void Area6_8018C54C(Boss* bossA6) {
|
|||||||
bossA6->swork[A6_SWK_27 + i]--;
|
bossA6->swork[A6_SWK_27 + i]--;
|
||||||
if (bossA6->swork[A6_SWK_27 + i] <= 0) {
|
if (bossA6->swork[A6_SWK_27 + i] <= 0) {
|
||||||
bossA6->swork[A6_SWK_18 + i] = 4;
|
bossA6->swork[A6_SWK_18 + i] = 4;
|
||||||
bossA6->swork[A6_SWK_38 + i] = 1;
|
bossA6->swork[A6_SWK_38] = 1;
|
||||||
bossA6->fwork[A6_FWK_10 + i] = bossA6->fwork[A6_FWK_19 + i] = bossA6->fwork[A6_FWK_13 + i] =
|
bossA6->fwork[A6_FWK_10 + i] = bossA6->fwork[A6_FWK_19 + i] = bossA6->fwork[A6_FWK_13 + i] =
|
||||||
bossA6->fwork[A6_FWK_22 + i] = 0.0f;
|
bossA6->fwork[A6_FWK_22 + i] = 0.0f;
|
||||||
bossA6->fwork[A6_FWK_25 + i] = -90.0f;
|
bossA6->fwork[A6_FWK_25 + i] = -90.0f;
|
||||||
@ -1973,10 +1972,6 @@ void Area6_8018C54C(Boss* bossA6) {
|
|||||||
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, 74.0f, 1);
|
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, 74.0f, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
void Area6_8018C54C(Boss* bossA6);
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i3/fox_a6/Area6_8018C54C.s")
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void Area6_8018D3CC(s32 arg0, f32 xPos, f32 yPos, f32 zPos, f32 xVel, f32 yVel, f32 zVel, f32 xRot, f32 yRot,
|
void Area6_8018D3CC(s32 arg0, f32 xPos, f32 yPos, f32 zPos, f32 xVel, f32 yVel, f32 zVel, f32 xRot, f32 yRot,
|
||||||
f32 zRot) {
|
f32 zRot) {
|
||||||
|
@ -3961,20 +3961,15 @@ void Aquas_801B6E54(Actor* actor) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// OBJ_ACTOR_262 action
|
// OBJ_ACTOR_262 action
|
||||||
#ifdef NON_MATCHING
|
|
||||||
// reloads 0.0f for temp_fs2_2.
|
|
||||||
// https://decomp.me/scratch/02s9H
|
|
||||||
|
|
||||||
void Aquas_801B6FF8(Actor* actor) {
|
void Aquas_801B6FF8(Actor* actor) {
|
||||||
s32 i;
|
s32 i;
|
||||||
f32 temp_dx;
|
f32 temp_dx;
|
||||||
f32 temp_dy;
|
f32 temp_dy;
|
||||||
f32 temp_dz;
|
f32 temp_dz;
|
||||||
f32 temp_fs2_2;
|
s32 pad;
|
||||||
f32 spA8;
|
f32 spA8;
|
||||||
Vec3f sp9C;
|
Vec3f sp9C;
|
||||||
Vec3f sp90;
|
Vec3f sp90;
|
||||||
f32 var_fs0;
|
|
||||||
|
|
||||||
if (actor->health == -100) {
|
if (actor->health == -100) {
|
||||||
actor->itemDrop = DROP_SILVER_RING_50p;
|
actor->itemDrop = DROP_SILVER_RING_50p;
|
||||||
@ -4015,15 +4010,15 @@ void Aquas_801B6FF8(Actor* actor) {
|
|||||||
temp_dy = actor->fwork[2] - actor->obj.pos.y;
|
temp_dy = actor->fwork[2] - actor->obj.pos.y;
|
||||||
temp_dz = actor->fwork[3] - actor->obj.pos.z;
|
temp_dz = actor->fwork[3] - actor->obj.pos.z;
|
||||||
spA8 = Math_RadToDeg(Math_Atan2F(temp_dx, temp_dz));
|
spA8 = Math_RadToDeg(Math_Atan2F(temp_dx, temp_dz));
|
||||||
var_fs0 = Math_RadToDeg(-Math_Atan2F(temp_dy, sqrtf(SQ(temp_dx) + SQ(temp_dz))));
|
temp_dz = Math_RadToDeg(-Math_Atan2F(temp_dy, sqrtf(SQ(temp_dx) + SQ(temp_dz))));
|
||||||
temp_fs2_2 = Math_SmoothStepToAngle(&actor->obj.rot.y, spA8, 0.1f, 1.0f, 0.0f);
|
temp_dy = Math_SmoothStepToAngle(&actor->obj.rot.y, spA8, 0.1f, 1.0f, 0);
|
||||||
Math_SmoothStepToAngle(&actor->obj.rot.x, var_fs0, 0.1f, 1.0f, 0.0f);
|
Math_SmoothStepToAngle(&actor->obj.rot.x, temp_dz, 0.1f, 1.0f, 0);
|
||||||
|
|
||||||
var_fs0 = 340.0f;
|
temp_dz = 340.0f;
|
||||||
if (temp_fs2_2 < 0.0f) {
|
if (temp_dy < 0.0f) {
|
||||||
var_fs0 = 20.0f;
|
temp_dz = 20.0f;
|
||||||
}
|
}
|
||||||
Math_SmoothStepToAngle(&actor->obj.rot.z, var_fs0, 0.1f, 1.0f, 0.f);
|
Math_SmoothStepToAngle(&actor->obj.rot.z, temp_dz, 0.1f, 1.0f, 0.f);
|
||||||
Matrix_RotateY(gCalcMatrix, actor->obj.rot.y * M_DTOR, 0);
|
Matrix_RotateY(gCalcMatrix, actor->obj.rot.y * M_DTOR, 0);
|
||||||
Matrix_RotateX(gCalcMatrix, actor->obj.rot.x * M_DTOR, 1);
|
Matrix_RotateX(gCalcMatrix, actor->obj.rot.x * M_DTOR, 1);
|
||||||
sp9C.x = sp9C.y = 0.0f;
|
sp9C.x = sp9C.y = 0.0f;
|
||||||
@ -4075,9 +4070,6 @@ void Aquas_801B6FF8(Actor* actor) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i3/fox_aq/Aquas_801B6FF8.s")
|
|
||||||
#endif
|
|
||||||
|
|
||||||
bool Aquas_801B76EC(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
|
bool Aquas_801B76EC(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
|
||||||
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
|
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
|
||||||
|
Loading…
Reference in New Issue
Block a user