mirror of
https://github.com/HarbourMasters/Starship.git
synced 2025-02-09 03:37:49 +03:00
Fix Bolse Dynamic Ground. Authored-by: @theboy181
This commit is contained in:
parent
d82a578622
commit
16feaa826e
@ -2198,7 +2198,7 @@ void Bolse_LoadLevelObjects(void) {
|
|||||||
}
|
}
|
||||||
Object_SetInfo(&boss->info, boss->obj.id);
|
Object_SetInfo(&boss->info, boss->obj.id);
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
void Bolse_DrawDynamicGround(void) {
|
void Bolse_DrawDynamicGround(void) {
|
||||||
Vec3f spDC = { 0.0f, 0.0f, 0.0f };
|
Vec3f spDC = { 0.0f, 0.0f, 0.0f };
|
||||||
Vec3f spD0;
|
Vec3f spD0;
|
||||||
@ -2254,3 +2254,59 @@ void Bolse_DrawDynamicGround(void) {
|
|||||||
// @port Pop the transform id.
|
// @port Pop the transform id.
|
||||||
FrameInterpolation_RecordCloseChild();
|
FrameInterpolation_RecordCloseChild();
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
void Bolse_DrawDynamicGround(void) {
|
||||||
|
Vec3f spDC = { 0.0f, 0.0f, 0.0f };
|
||||||
|
Vec3f spD0;
|
||||||
|
f32 rnd;
|
||||||
|
f32 x;
|
||||||
|
f32 z;
|
||||||
|
|
||||||
|
gDPSetFogColor(gMasterDisp++, gFogRed, gFogGreen, gFogBlue, gFogAlpha);
|
||||||
|
gSPFogPosition(gMasterDisp++, gFogNear, gFogFar);
|
||||||
|
|
||||||
|
if (gBosses[1].obj.status == OBJ_ACTIVE) {
|
||||||
|
RCP_SetupDL(&gMasterDisp, SETUPDL_34);
|
||||||
|
if ((gGameFrameCount % 2) != 0) {
|
||||||
|
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 128, 160, 255);
|
||||||
|
} else {
|
||||||
|
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 192, 224, 255);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
RCP_SetupDL(&gMasterDisp, SETUPDL_33);
|
||||||
|
}
|
||||||
|
|
||||||
|
Matrix_Push(&gGfxMatrix);
|
||||||
|
Rand_SetSeed(1, 29100, 9786);
|
||||||
|
Matrix_Translate(gGfxMatrix, 0.0f, gCameraShakeY, 0.0f, MTXF_APPLY);
|
||||||
|
Matrix_RotateY(gGfxMatrix, gBosses[0].obj.rot.y * M_DTOR, MTXF_APPLY);
|
||||||
|
Matrix_Scale(gGfxMatrix, 5.0f, 1.0f, 5.0f, MTXF_APPLY);
|
||||||
|
|
||||||
|
for (int i = 0, z = -3200.0f; z <= 3200.0f; z += 800.0f, i++) {
|
||||||
|
for (int j = 100, x = -3200.0f; x <= 3200.0f; x += 800.0f, j++) {
|
||||||
|
// @port: Tag the transform.
|
||||||
|
FrameInterpolation_RecordOpenChild(i, j);
|
||||||
|
|
||||||
|
rnd = Rand_ZeroOneSeeded();
|
||||||
|
Matrix_Push(&gGfxMatrix);
|
||||||
|
Matrix_Translate(gGfxMatrix, x, 0.0f, z, MTXF_APPLY);
|
||||||
|
Matrix_MultVec3f(gGfxMatrix, &spDC, &spD0);
|
||||||
|
if ((spD0.z < 3000.0f) && (spD0.z > -13000.0f) && (fabsf(spD0.x) < (fabsf(spD0.z * 0.7f) + 9000.0f)) &&
|
||||||
|
(fabsf(spD0.y) < (fabsf(spD0.z * 0.5f) + 4000.0f))) {
|
||||||
|
if (rnd < 0.3f) {
|
||||||
|
gDPLoadTileTexture(gMasterDisp++, D_BO_6008BB8, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32);
|
||||||
|
} else {
|
||||||
|
gDPLoadTileTexture(gMasterDisp++, D_BO_600AD80, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32);
|
||||||
|
}
|
||||||
|
Matrix_SetGfxMtx(&gMasterDisp);
|
||||||
|
gSPDisplayList(gMasterDisp++, D_BO_600BEC0);
|
||||||
|
}
|
||||||
|
Matrix_Pop(&gGfxMatrix);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Matrix_Pop(&gGfxMatrix);
|
||||||
|
|
||||||
|
// @port Pop the transform id.
|
||||||
|
FrameInterpolation_RecordCloseChild();
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user