mirror of
https://github.com/HarbourMasters/Starship.git
synced 2025-02-03 00:33:55 +03:00
Merge remote-tracking branch 'origin' into independence
This commit is contained in:
commit
9e1da7c485
@ -1,5 +1,14 @@
|
||||
# Supported Star Fox 64 Versions: US, JP
|
||||
|
||||
09f0d105f476b00efa5303a3ebc42e60a7753b7a:
|
||||
name: Star Fox 64 (U) (V1.1) (Compressed)
|
||||
preprocess:
|
||||
decompress_mio0:
|
||||
method: mio0-comptool
|
||||
type: decompress
|
||||
target: f7475fb11e7e6830f82883412638e8390791ab87
|
||||
restart: true
|
||||
|
||||
f7475fb11e7e6830f82883412638e8390791ab87:
|
||||
name: Star Fox 64 (U) (V1.1)
|
||||
path: assets/yaml/us/rev1
|
||||
|
@ -96,8 +96,8 @@ void RamMod_Update(void);
|
||||
void Spawner(void);
|
||||
#endif
|
||||
|
||||
#define DEBUG_SKIP_BRIEFING 1
|
||||
#define DEBUG_BOSS_KILLER 0
|
||||
#define DEBUG_VERSUS 0
|
||||
|
||||
/*
|
||||
|
||||
|
@ -1237,7 +1237,7 @@ void PlayerShot_DrawShot(PlayerShot* shot) {
|
||||
Matrix_MultVec3f(gGfxMatrix, &sp11C, &sShotViewPos);
|
||||
if ((sShotViewPos.z < 0.0f) && (sShotViewPos.z > -10000.0f)) {
|
||||
var_fv1 = fabsf(sShotViewPos.x); // probably fake. The use of temps was likely different
|
||||
if (var_fv1 < (fabsf(sShotViewPos.z * 0.5f) + 500.0f)) {
|
||||
if (var_fv1 < (fabsf(sShotViewPos.z * /* 0.5f */ 1.5f) + 500.0f)) {
|
||||
if (fabsf(sShotViewPos.y) < (fabsf(sShotViewPos.z * 0.5f) + 500.0f)) {
|
||||
isDrawn = true;
|
||||
}
|
||||
|
@ -35,7 +35,7 @@ void KillBoss(void);
|
||||
#endif
|
||||
|
||||
void Display_DrawHelpAlert(void) {
|
||||
bool sp7C;
|
||||
bool centered; // Enemy pos is centered, so both help arrows should be displayed
|
||||
f32 sp78;
|
||||
f32 sp74;
|
||||
Vec3f sp68;
|
||||
@ -44,11 +44,13 @@ void Display_DrawHelpAlert(void) {
|
||||
if ((gPlayState == PLAY_PAUSE) || (gTeamHelpActor == NULL)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ((gTeamHelpActor->obj.status != OBJ_ACTIVE) || (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_ACTIVE)) {
|
||||
gTeamHelpActor = NULL;
|
||||
gTeamHelpTimer = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
if (gTeamHelpTimer != 0) {
|
||||
gTeamHelpTimer--;
|
||||
if (gTeamHelpTimer == 0) {
|
||||
@ -67,9 +69,9 @@ void Display_DrawHelpAlert(void) {
|
||||
|
||||
Matrix_MultVec3f(gCalcMatrix, &sp68, &sp5C);
|
||||
|
||||
sp7C = false;
|
||||
centered = false;
|
||||
if ((sp5C.z < 0.0f) && (sp5C.z > -12000.0f) && (fabsf(sp5C.x) < fabsf(sp5C.z * 0.4f))) {
|
||||
sp7C = true;
|
||||
centered = true;
|
||||
}
|
||||
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_12);
|
||||
@ -86,19 +88,19 @@ void Display_DrawHelpAlert(void) {
|
||||
break;
|
||||
}
|
||||
|
||||
switch (sp7C) {
|
||||
switch (centered) {
|
||||
case false:
|
||||
if (gTeamHelpActor->sfxSource[0] > 0.0f) {
|
||||
sp78 = 20.0f;
|
||||
sp78 = 20.0f * OTRGetAspectRatio()-8;
|
||||
sp74 = M_PI / 2;
|
||||
} else {
|
||||
sp78 = -20.0f;
|
||||
sp78 = -20.0f * OTRGetAspectRatio()+8;
|
||||
sp74 = -M_PI / 2;
|
||||
}
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
|
||||
// @port: Tag the transform.
|
||||
FrameInterpolation_RecordOpenChild("Display_DrawHelpAlert", sp7C);
|
||||
FrameInterpolation_RecordOpenChild("Display_DrawHelpAlert", centered);
|
||||
|
||||
Matrix_Translate(gGfxMatrix, sp78, 0.0f, -50.0f, MTXF_APPLY);
|
||||
Matrix_RotateZ(gGfxMatrix, sp74, MTXF_APPLY);
|
||||
@ -112,20 +114,22 @@ void Display_DrawHelpAlert(void) {
|
||||
break;
|
||||
|
||||
case true:
|
||||
// right arrow (both at the same time)
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
|
||||
// @port: Tag the transform.
|
||||
FrameInterpolation_RecordOpenChild("Display_DrawHelpAlert", sp7C);
|
||||
|
||||
Matrix_Translate(gGfxMatrix, 20.0f, 0.0f, -50.0f, MTXF_APPLY);
|
||||
FrameInterpolation_RecordOpenChild("Display_DrawHelpAlert", centered);
|
||||
Matrix_Translate(gGfxMatrix, 20.0f * OTRGetAspectRatio() - 8, 0.0f, -50.0f, MTXF_APPLY);
|
||||
Matrix_RotateZ(gGfxMatrix, -M_PI / 2, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, 0.03f, 0.03f, 0.03f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_1023700);
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
sp78 = -20.0f;
|
||||
|
||||
// left arrow (both in simultaneous)
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, -20.0f, 0.0f, -50.0f, MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, -20.0f * OTRGetAspectRatio() + 8, 0.0f, -50.0f, MTXF_APPLY);
|
||||
Matrix_RotateZ(gGfxMatrix, M_PI / 2, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, 0.03f, 0.03f, 0.03f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
@ -136,23 +140,23 @@ void Display_DrawHelpAlert(void) {
|
||||
FrameInterpolation_RecordCloseChild();
|
||||
break;
|
||||
}
|
||||
|
||||
switch (sp7C) {
|
||||
|
||||
switch (centered) {
|
||||
case false:
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT);
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255);
|
||||
if (sp78 < 0.0f) {
|
||||
Graphics_DisplaySmallText(43 - 19, 106, 1.0f, 1.0f, "HELP!!");
|
||||
Graphics_DisplaySmallText(OTRGetRectDimensionFromLeftEdge(38.0f), 106, 1.0f, 1.0f, "HELP!!");
|
||||
} else {
|
||||
Graphics_DisplaySmallText(SCREEN_WIDTH - 43 - 19, 106, 1.0f, 1.0f, "HELP!!");
|
||||
Graphics_DisplaySmallText(OTRGetRectDimensionFromRightEdge(248), 106, 1.0f, 1.0f, "HELP!!");
|
||||
}
|
||||
break;
|
||||
|
||||
case true:
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT);
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255);
|
||||
Graphics_DisplaySmallText(43 - 19, 106, 1.0f, 1.0f, "HELP!!");
|
||||
Graphics_DisplaySmallText(SCREEN_WIDTH - 43 - 19, 106, 1.0f, 1.0f, "HELP!!");
|
||||
Graphics_DisplaySmallText(OTRGetRectDimensionFromLeftEdge(38.0f) , 106, 1.0f, 1.0f, "HELP!!");
|
||||
Graphics_DisplaySmallText(OTRGetRectDimensionFromRightEdge(248), 106, 1.0f, 1.0f, "HELP!!");
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -1361,7 +1365,7 @@ bool Display_CheckPlayerVisible(s32 index, s32 reflectY) {
|
||||
Matrix_MultVec3f(gGfxMatrix, &src, &dest);
|
||||
|
||||
if ((dest.z < 200.0f) && (dest.z > -12000.0f)) {
|
||||
if (fabsf(dest.x) < (fabsf(dest.z * 0.5f) + 500.0f)) {
|
||||
if (fabsf(dest.x) < (fabsf(dest.z * /*0.5f*/ 1.5f) + 500.0f)) {
|
||||
if (fabsf(dest.y) < (fabsf(dest.z * 0.5f) + 500.0f)) {
|
||||
if (reflectY == 0) {
|
||||
sPlayersVisible[index] = true;
|
||||
@ -2133,11 +2137,11 @@ void Display_Update(void) {
|
||||
#if 0
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_83);
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 0, 255);
|
||||
Graphics_DisplaySmallText(10, 210, 1.0f, 1.0f, "PATH1:");
|
||||
Graphics_DisplaySmallNumber(60, 210, (int) ABS(path1));
|
||||
Graphics_DisplaySmallText(10, 220, 1.0f, 1.0f, "PATH2:");
|
||||
Graphics_DisplaySmallNumber(60, 220, (int) ABS(path2));
|
||||
if (path1 < 0.0f) Graphics_DisplaySmallText(110, 210, 1.0f, 1.0f, "NEG:");
|
||||
if (path2 < 0.0f) Graphics_DisplaySmallText(110, 220, 1.0f, 1.0f, "NEG:");
|
||||
Graphics_DisplaySmallText(10, 210, 1.0f, 1.0f, "STICK_X:");
|
||||
Graphics_DisplaySmallNumber(60, 210, (int) ABS(gInputPress->stick_x));
|
||||
Graphics_DisplaySmallText(10, 220, 1.0f, 1.0f, "STICK_Y:");
|
||||
Graphics_DisplaySmallNumber(60, 220, (int) ABS(gInputPress->stick_y));
|
||||
if (gInputPress->stick_x < 0) Graphics_DisplaySmallText(110, 210, 1.0f, 1.0f, "NEG:");
|
||||
if (gInputPress->stick_y < 0) Graphics_DisplaySmallText(110, 220, 1.0f, 1.0f, "NEG:");
|
||||
#endif
|
||||
}
|
||||
|
@ -117,10 +117,15 @@ Gfx sRadioDamageDL[] = {
|
||||
gsSPEndDisplayList(),
|
||||
};
|
||||
|
||||
void HUD_MatrixTranslateCoordLeft(f32* transX, f32* transY) {
|
||||
*transX = OTRGetRectDimensionFromLeftEdge(*transX) - (SCREEN_WIDTH / 2.0f);
|
||||
*transY = (SCREEN_HEIGHT / 2.0f) - *transY;
|
||||
}
|
||||
|
||||
// Used in the status screen, and when losing a life
|
||||
void HUD_LivesCount1_Draw(f32 xPos, f32 yPos, s32 lifeCount) {
|
||||
u8* sLifeIconTex[] = { aArwingLifeIconTex, aBlueMarineLifeIconTex, aLandmasterLifeIconTex };
|
||||
u16* sLifeIconTLUT[] = { aArwingLifeIconTLUT, aBlueMarineLifeIconTLUT, aLandmasterLifeIconTLUT };
|
||||
u8* sLifeIconTex[] = { aArwingLifeIconTex, aLandmasterLifeIconTex, aBlueMarineLifeIconTex };
|
||||
u16* sLifeIconTLUT[] = { aArwingLifeIconTLUT, aLandmasterLifeIconTLUT, aBlueMarineLifeIconTLUT };
|
||||
Player* player;
|
||||
s32 lifeIconIdx;
|
||||
s32 maxLives;
|
||||
@ -203,16 +208,22 @@ void HUD_TeamDownWrench_Draw(s32 arg0) {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
f32 x = 48.0f;
|
||||
f32 y = 0.0f;
|
||||
HUD_MatrixTranslateCoordLeft(&x, &y);
|
||||
y = -81.0f;
|
||||
Lib_InitOrtho(&gMasterDisp);
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, -234.0f, -167.0f, -600.0f, MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, x, y, -600.0f, MTXF_APPLY);
|
||||
Matrix_RotateZ(gGfxMatrix, M_PI / 4, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, 0.68f, 0.68f, 1.0f, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, 0.31f, 0.31f, 1.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, aDownWrenchDL);
|
||||
Matrix_RotateZ(gGfxMatrix, 3 * M_PI / 2, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, aDownWrenchDL);
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
Lib_InitPerspective(&gMasterDisp);
|
||||
}
|
||||
}
|
||||
|
||||
@ -304,11 +315,6 @@ void HUD_BoostGaugeCool_Draw(f32 xPos, f32 yPos, f32 xScale, f32 yScale) {
|
||||
}
|
||||
}
|
||||
|
||||
void HUD_MatrixTranslateCoord(f32* transX, f32* transY) {
|
||||
*transX = OTRGetRectDimensionFromLeftEdge(*transX) - (SCREEN_WIDTH / 2.0f);
|
||||
*transY = (SCREEN_HEIGHT / 2.0f) - *transY;
|
||||
}
|
||||
|
||||
void HUD_GoldRings_Draw(void) {
|
||||
Gfx* sGoldRingDLs[] = {
|
||||
aGoldRingFrame1DL, aGoldRingFrame2DL, aGoldRingFrame3DL, aGoldRingFrame4DL,
|
||||
@ -381,7 +387,7 @@ void HUD_GoldRings_Draw(void) {
|
||||
scale += 0.06f;
|
||||
}
|
||||
|
||||
HUD_MatrixTranslateCoord(&x, &y);
|
||||
HUD_MatrixTranslateCoordLeft(&x, &y);
|
||||
Matrix_Translate(gGfxMatrix, x, y, -100.0f, MTXF_NEW);
|
||||
Matrix_Scale(gGfxMatrix, scale, scale, scale, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, ringScale, ringScale, ringScale, MTXF_APPLY);
|
||||
@ -403,7 +409,7 @@ void HUD_GoldRings_Draw(void) {
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_62);
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255);
|
||||
|
||||
HUD_MatrixTranslateCoord(&D_800D1AC4[i + 1], &D_800D1AD8[i + 1]);
|
||||
HUD_MatrixTranslateCoordLeft(&D_800D1AC4[i + 1], &D_800D1AD8[i + 1]);
|
||||
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, D_800D1AC4[i + 1], D_800D1AD8[i + 1], -100.0f, MTXF_NEW);
|
||||
@ -436,7 +442,7 @@ void HUD_GoldRings_Draw(void) {
|
||||
scale += 0.06f;
|
||||
}
|
||||
|
||||
HUD_MatrixTranslateCoord(&x, &y);
|
||||
HUD_MatrixTranslateCoordLeft(&x, &y);
|
||||
Matrix_Translate(gGfxMatrix, x, y, -100.0f, MTXF_NEW);
|
||||
Matrix_Scale(gGfxMatrix, scale, scale, scale, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, ringScale, ringScale, ringScale, MTXF_APPLY);
|
||||
@ -913,8 +919,8 @@ void HUD_DrawLevelClearScreen(void) {
|
||||
|
||||
// Used in gameplay hud
|
||||
void HUD_LivesCount2_Draw(f32 x, f32 y, s32 number) {
|
||||
u8* sLivesCounterTexs[] = { aArwingLifeIconTex, aBlueMarineLifeIconTex, aLandmasterLifeIconTex };
|
||||
u16* sLivesCounterTLUTs[] = { aArwingLifeIconTLUT, aBlueMarineLifeIconTLUT, aLandmasterLifeIconTLUT };
|
||||
u8* sLivesCounterTexs[] = { aArwingLifeIconTex, aLandmasterLifeIconTex, aBlueMarineLifeIconTex };
|
||||
u16* sLivesCounterTLUTs[] = { aArwingLifeIconTLUT, aLandmasterLifeIconTLUT, aBlueMarineLifeIconTLUT };
|
||||
Player* player = &gPlayer[0];
|
||||
f32 x0;
|
||||
f32 x1;
|
||||
@ -1492,8 +1498,7 @@ void HUD_PauseScreen_Update(void) {
|
||||
|
||||
case 3:
|
||||
Graphics_FillRectangle(&gMasterDisp, OTRGetRectDimensionFromLeftEdge(0), 0,
|
||||
OTRGetRectDimensionFromRightEdge(SCREEN_WIDTH), SCREEN_HEIGHT, 0, 0, 0,
|
||||
255);
|
||||
OTRGetRectDimensionFromRightEdge(SCREEN_WIDTH), SCREEN_HEIGHT, 0, 0, 0, 255);
|
||||
|
||||
gFillScreenAlphaTarget = 0;
|
||||
|
||||
@ -1543,8 +1548,7 @@ void HUD_PauseScreen_Update(void) {
|
||||
|
||||
case 4:
|
||||
Graphics_FillRectangle(&gMasterDisp, OTRGetRectDimensionFromLeftEdge(0), 0,
|
||||
OTRGetRectDimensionFromRightEdge(SCREEN_WIDTH), SCREEN_HEIGHT, 0, 0, 0,
|
||||
255);
|
||||
OTRGetRectDimensionFromRightEdge(SCREEN_WIDTH), SCREEN_HEIGHT, 0, 0, 0, 255);
|
||||
if (sPauseScreenTimer[0] < 140) {
|
||||
break;
|
||||
}
|
||||
@ -1563,8 +1567,7 @@ void HUD_PauseScreen_Update(void) {
|
||||
|
||||
case 5:
|
||||
Graphics_FillRectangle(&gMasterDisp, OTRGetRectDimensionFromLeftEdge(0), 0,
|
||||
OTRGetRectDimensionFromRightEdge(SCREEN_WIDTH ), SCREEN_HEIGHT, 0, 0, 0,
|
||||
255);
|
||||
OTRGetRectDimensionFromRightEdge(SCREEN_WIDTH), SCREEN_HEIGHT, 0, 0, 0, 255);
|
||||
|
||||
for (i = 0; i < 6; i++) {
|
||||
if (gPrevPlanetTeamShields[i] == -1) {
|
||||
@ -2012,6 +2015,9 @@ void HUD_RadarMarks_Setup(void) {
|
||||
}
|
||||
}
|
||||
|
||||
static f32 gHudOffsetRect = 0.0f;
|
||||
static f32 gHudOffsetPers = 0.0f;
|
||||
|
||||
s32 HUD_RadarMarks_Update(void) {
|
||||
s32 i;
|
||||
f32 scale;
|
||||
@ -2020,11 +2026,32 @@ s32 HUD_RadarMarks_Update(void) {
|
||||
f32 z1;
|
||||
f32 x = 0;
|
||||
f32 y = 0;
|
||||
s32 pad;
|
||||
f32 temp;
|
||||
f32 temp2;
|
||||
f32 temp3;
|
||||
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_CORNERIA:
|
||||
gHudOffsetRect = OTRGetDimensionFromRightEdge(0.0f);
|
||||
gHudOffsetPers = gHudOffsetRect * 2.15f;
|
||||
break;
|
||||
|
||||
case LEVEL_SECTOR_Z:
|
||||
gHudOffsetRect = OTRGetDimensionFromRightEdge(0.0f);
|
||||
gHudOffsetPers = gHudOffsetRect * 5.50f;
|
||||
break;
|
||||
|
||||
case LEVEL_BOLSE:
|
||||
gHudOffsetRect = OTRGetDimensionFromRightEdge(0.0f);
|
||||
gHudOffsetPers = gHudOffsetRect * 2.70f;
|
||||
break;
|
||||
|
||||
default:
|
||||
gHudOffsetRect = OTRGetDimensionFromRightEdge(0.0f);
|
||||
gHudOffsetPers = gHudOffsetRect * 3.35f;
|
||||
break;
|
||||
}
|
||||
|
||||
if (!gVersusMode) {
|
||||
if (gLevelMode != LEVELMODE_ALL_RANGE) {
|
||||
return 0;
|
||||
@ -2098,7 +2125,7 @@ s32 HUD_RadarMarks_Update(void) {
|
||||
}
|
||||
|
||||
HUD_RadarMarks_Setup();
|
||||
HUD_RadarWindow_Draw(x, y);
|
||||
HUD_RadarWindow_Draw(x + gHudOffsetRect, y);
|
||||
|
||||
if (!gVersusMode &&
|
||||
((gCurrentLevel == LEVEL_SECTOR_Z) || (gCurrentLevel == LEVEL_FORTUNA) || (gCurrentLevel == LEVEL_VENOM_2) ||
|
||||
@ -2109,15 +2136,18 @@ s32 HUD_RadarMarks_Update(void) {
|
||||
|
||||
switch (gCurrentLevel) {
|
||||
case LEVEL_SECTOR_Z:
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_SZ_60012D0, 16, 9, 251.0f + D_800D1E10, 181.0f, 1.00f, 1.00f);
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_SZ_60012D0, 16, 9, gHudOffsetRect + 251.0f + D_800D1E10, 181.0f,
|
||||
1.00f, 1.00f);
|
||||
break;
|
||||
|
||||
case LEVEL_FORTUNA:
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_FO_6001260, 16, 16, 251.0f + D_800D1E10, 178.0f, 1.00f, 1.00f);
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_FO_6001260, 16, 16, gHudOffsetRect + 251.0f + D_800D1E10, 178.0f,
|
||||
1.00f, 1.00f);
|
||||
break;
|
||||
|
||||
case LEVEL_BOLSE:
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_BO_6000C80, 16, 16, 251.0f + D_800D1E10, 178.0f, 1.00f, 1.00f);
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_BO_6000C80, 16, 16, gHudOffsetRect + (251.0f + D_800D1E10), 178.0f,
|
||||
1.00f, 1.00f);
|
||||
break;
|
||||
|
||||
case LEVEL_SECTOR_Y:
|
||||
@ -2128,22 +2158,25 @@ s32 HUD_RadarMarks_Update(void) {
|
||||
if ((y < 150.0f) || (y > 206.0f)) {
|
||||
break;
|
||||
}
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_SY_6000840, 64, 64, 250.0f + D_800D1E10, temp, 0.25f, 0.25f);
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_SY_6000840, 64, 64, gHudOffsetRect + 250.0f + D_800D1E10, temp,
|
||||
0.25f, 0.25f);
|
||||
}
|
||||
break;
|
||||
|
||||
case LEVEL_KATINA:
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_KA_6001260, 8, 8, 254.0f + D_800D1E10, 182.0f, 1.00f, 1.00f);
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_KA_6001260, 8, 8, 254.0f + D_800D1E10 + gHudOffsetRect, 182.0f,
|
||||
1.00f, 1.00f);
|
||||
break;
|
||||
|
||||
case LEVEL_VENOM_2:
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_VE2_6002890, 16, 16, 251.0f + D_800D1E10, 178.0f, 1.00f, 1.00f);
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_VE2_6002890, 16, 16, gHudOffsetRect + 251.0f + D_800D1E10, 178.0f,
|
||||
1.00f, 1.00f);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, x1, y1, z1, MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, x1 + gHudOffsetPers, y1, z1, MTXF_APPLY);
|
||||
|
||||
if ((gCurrentLevel == LEVEL_SECTOR_Z) && (D_hud_80161710 != 0)) {
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
@ -2215,49 +2248,51 @@ void HUD_RadioCharacterName_Draw(void) {
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT);
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 0, 255);
|
||||
|
||||
f32 xPos = OTRGetRectDimensionFromLeftEdge(73.0f);
|
||||
|
||||
switch ((s32) gRadioMsgRadioId) {
|
||||
case RCID_FOX:
|
||||
Graphics_DisplaySmallText(73, 173, 1.0f, 1.0f, "FOX");
|
||||
Graphics_DisplaySmallText(xPos, 173, 1.0f, 1.0f, "FOX");
|
||||
break;
|
||||
|
||||
case RCID_FALCO:
|
||||
Graphics_DisplaySmallText(73, 173, 1.0f, 1.0f, "FALCO");
|
||||
Graphics_DisplaySmallText(xPos, 173, 1.0f, 1.0f, "FALCO");
|
||||
break;
|
||||
|
||||
case RCID_SLIPPY:
|
||||
Graphics_DisplaySmallText(73, 173, 1.0f, 1.0f, "SLIPPY");
|
||||
Graphics_DisplaySmallText(xPos, 173, 1.0f, 1.0f, "SLIPPY");
|
||||
break;
|
||||
|
||||
case RCID_PEPPY:
|
||||
Graphics_DisplaySmallText(73, 173, 1.0f, 1.0f, "PEPPY");
|
||||
Graphics_DisplaySmallText(xPos, 173, 1.0f, 1.0f, "PEPPY");
|
||||
break;
|
||||
|
||||
case RCID_WOLF:
|
||||
case RCID_WOLF_2:
|
||||
Graphics_DisplaySmallText(73, 173, 1.0f, 1.0f, "WOLF");
|
||||
Graphics_DisplaySmallText(xPos, 173, 1.0f, 1.0f, "WOLF");
|
||||
break;
|
||||
|
||||
case RCID_LEON:
|
||||
case RCID_LEON_2:
|
||||
Graphics_DisplaySmallText(73, 173, 1.0f, 1.0f, "LEON");
|
||||
Graphics_DisplaySmallText(xPos, 173, 1.0f, 1.0f, "LEON");
|
||||
break;
|
||||
|
||||
case RCID_PIGMA:
|
||||
case RCID_PIGMA_2:
|
||||
Graphics_DisplaySmallText(73, 173, 1.0f, 1.0f, "PIGMA");
|
||||
Graphics_DisplaySmallText(xPos, 173, 1.0f, 1.0f, "PIGMA");
|
||||
break;
|
||||
|
||||
case RCID_ANDREW:
|
||||
case RCID_ANDREW_2:
|
||||
Graphics_DisplaySmallText(73, 173, 1.0f, 1.0f, "ANDREW");
|
||||
Graphics_DisplaySmallText(xPos, 173, 1.0f, 1.0f, "ANDREW");
|
||||
break;
|
||||
|
||||
case RCID_BILL:
|
||||
Graphics_DisplaySmallText(73, 173, 1.0f, 1.0f, "BILL");
|
||||
Graphics_DisplaySmallText(xPos, 173, 1.0f, 1.0f, "BILL");
|
||||
break;
|
||||
|
||||
case RCID_KATT:
|
||||
Graphics_DisplaySmallText(73, 173, 1.0f, 1.0f, "KATT");
|
||||
Graphics_DisplaySmallText(xPos, 173, 1.0f, 1.0f, "KATT");
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -2588,12 +2623,18 @@ void HUD_RadioDamage_Draw(void) {
|
||||
if ((D_80161788 != 0) || (D_8016178C != 0)) {
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_12);
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, r, g, b, alpha);
|
||||
f32 x = 48.0f;
|
||||
f32 y = 0.0f;
|
||||
HUD_MatrixTranslateCoordLeft(&x, &y);
|
||||
y = -81.0f;
|
||||
Lib_InitOrtho(&gMasterDisp);
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, -53.9f, -38.5f, -139.4f, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, 1.0f, 1.0f, 1.0f, MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, x, y, -139.4f, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, 2.25f, 2.25f, 2.25f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, sRadioDamageDL);
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
Lib_InitPerspective(&gMasterDisp);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2751,7 +2792,6 @@ void HUD_VsModePortraitTex_Draw(f32 xPos, f32 yPos, f32 scale, s32 idx) {
|
||||
Lib_TextureRect_RGBA16(&gMasterDisp, sVsModeFaceDL[idx], 44, 44, xPos, yPos, scale, scale);
|
||||
}
|
||||
|
||||
// LTODO: Align these
|
||||
void HUD_EdgeArrows_Draw(s32 idx, bool arg1) {
|
||||
f32 D_800D1EF8[] = { 0.0f, 0.0f, -9.0f, 9.0f, 10.0f, 10.0f, 10.0f, 10.0f, 0.0f, 0.0f, -8.0f, 8.0f };
|
||||
f32 D_800D1F28[] = { -7.0f, 7.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 8.0f, -8.0f, 0.0f, 0.0f };
|
||||
@ -2773,11 +2813,20 @@ void HUD_EdgeArrows_Draw(s32 idx, bool arg1) {
|
||||
Matrix_RotateZ(gGfxMatrix, M_DTOR * D_800D1F88[idx], MTXF_APPLY);
|
||||
}
|
||||
|
||||
// Simplified perspective alignment based on X position
|
||||
f32 xPos = D_800D1EF8[idx];
|
||||
|
||||
if (xPos < 0.0f) {
|
||||
xPos = xPos * OTRGetAspectRatio() + 1;
|
||||
} else if (xPos > 0.0f) {
|
||||
xPos = xPos * OTRGetAspectRatio() - 1;
|
||||
}
|
||||
|
||||
if (arg1) {
|
||||
Matrix_Translate(gGfxMatrix, D_800D1EF8[idx] + D_800D1FE8[idx], D_800D1F28[idx] + D_800D2018[idx],
|
||||
D_800D1F58[idx], MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, xPos + D_800D1FE8[idx], D_800D1F28[idx] + D_800D2018[idx], D_800D1F58[idx],
|
||||
MTXF_APPLY);
|
||||
} else {
|
||||
Matrix_Translate(gGfxMatrix, D_800D1EF8[idx], D_800D1F28[idx], D_800D1F58[idx], MTXF_APPLY);
|
||||
Matrix_Translate(gGfxMatrix, xPos, D_800D1F28[idx], D_800D1F58[idx], MTXF_APPLY);
|
||||
}
|
||||
|
||||
Matrix_RotateZ(gGfxMatrix, M_DTOR * D_800D1FB8[idx], MTXF_APPLY);
|
||||
@ -2897,8 +2946,7 @@ void HUD_KillCountStars_Update(void) {
|
||||
}
|
||||
|
||||
void HUD_VS_ShieldGaugeFrame_Draw(f32 xPos, f32 yPos, f32 xScale, f32 yScale) {
|
||||
Lib_TextureRect_IA8(&gMasterDisp, aVsShieldGaugeFrameTex, 80, 26, xPos, yPos, xScale,
|
||||
yScale);
|
||||
Lib_TextureRect_IA8(&gMasterDisp, aVsShieldGaugeFrameTex, 80, 26, xPos, yPos, xScale, yScale);
|
||||
}
|
||||
|
||||
void HUD_VS_ShieldGaugeTex_Draw(f32 xPos, f32 yPos, f32 xScale, f32 yScale, f32 width) {
|
||||
|
@ -19,8 +19,8 @@ u16 Message_IdFromPtr(u16* msgPtr) {
|
||||
MsgLookup* lookup = (MsgLookup*) LOAD_ASSET(gMsgLookup);
|
||||
|
||||
while (lookup->msgPtr != NULL) {
|
||||
if(GameEngine_OTRSigCheck(msgPtr)){
|
||||
if(strcmp(((char*) msgPtr) + 7, lookup->path) == 0){
|
||||
if (GameEngine_OTRSigCheck(msgPtr)) {
|
||||
if (strcmp(((char*) msgPtr) + 7, lookup->path) == 0) {
|
||||
return lookup->msgId;
|
||||
}
|
||||
} else {
|
||||
@ -65,7 +65,7 @@ void Message_DisplayChar(Gfx** gfxPtr, u16 msgChar, s32 xpos, s32 ypos) {
|
||||
gDPLoadTextureBlock_4b((*gfxPtr)++, gTextCharTextures[msgChar >> 2], G_IM_FMT_CI, 16, 13, msgChar % 4U,
|
||||
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
|
||||
G_TX_NOLOD);
|
||||
gSPTextureRectangle((*gfxPtr)++, xpos << 2, ypos << 2, (xpos + 13) << 2, (ypos + 13) << 2, G_TX_RENDERTILE, 64, 0,
|
||||
gSPWideTextureRectangle((*gfxPtr)++, xpos << 2, ypos << 2, (xpos + 13) << 2, (ypos + 13) << 2, G_TX_RENDERTILE, 64, 0,
|
||||
1024, 1024);
|
||||
}
|
||||
|
||||
|
@ -125,9 +125,18 @@ void Radio_PlayMessage(u16* msg, RadioCharacterId character) {
|
||||
|
||||
switch (gGameState) {
|
||||
case GSTATE_TITLE:
|
||||
gRadioPrintPosY = 176;
|
||||
gRadioPrintPosX = OTRGetRectDimensionFromLeftEdge(85.0f);
|
||||
gRadioTextBoxPosX = OTRGetRectDimensionFromLeftEdge(80.0f);
|
||||
gRadioTextBoxPosY = 174.0f;
|
||||
gRadioTextBoxScaleX = 4.63f;
|
||||
gRadioPortraitPosX = OTRGetRectDimensionFromLeftEdge(32.0f);
|
||||
gRadioPortraitPosY = 174.0f;
|
||||
break;
|
||||
|
||||
case GSTATE_ENDING:
|
||||
gRadioPrintPosY = 176;
|
||||
gRadioPrintPosX = 85;
|
||||
gRadioPrintPosX = 85.0f;
|
||||
gRadioTextBoxPosX = 80.0f;
|
||||
gRadioTextBoxPosY = 174.0f;
|
||||
gRadioTextBoxScaleX = 4.63f;
|
||||
@ -137,11 +146,11 @@ void Radio_PlayMessage(u16* msg, RadioCharacterId character) {
|
||||
|
||||
case GSTATE_PLAY:
|
||||
gRadioPrintPosY = 180;
|
||||
gRadioPrintPosX = 79;
|
||||
gRadioTextBoxPosX = 74.0f;
|
||||
gRadioPrintPosX = OTRGetRectDimensionFromLeftEdge(79.0f);
|
||||
gRadioTextBoxPosX = OTRGetRectDimensionFromLeftEdge(74.0f);
|
||||
gRadioTextBoxPosY = 178.0f;
|
||||
gRadioTextBoxScaleX = 4.53f;
|
||||
gRadioPortraitPosX = 26.0f;
|
||||
gRadioPortraitPosX = OTRGetRectDimensionFromLeftEdge(26.0f);
|
||||
gRadioPortraitPosY = 178.0f;
|
||||
break;
|
||||
}
|
||||
@ -428,10 +437,12 @@ void func_radio_800BAAE8(void) {
|
||||
|
||||
if (mirror) {
|
||||
Lib_TextureRect_RGBA16_MirX(&gMasterDisp, radioPortraitTex, 44, 44, gRadioPortraitPosX,
|
||||
gRadioPortraitPosY + 20.0f + sp38 + gRadioPortraitScaleY, 1.0f, gRadioPortraitScaleY);
|
||||
gRadioPortraitPosY + 20.0f + sp38 + gRadioPortraitScaleY, 1.0f,
|
||||
gRadioPortraitScaleY);
|
||||
} else {
|
||||
Lib_TextureRect_RGBA16(&gMasterDisp, radioPortraitTex, 44, 44, gRadioPortraitPosX,
|
||||
gRadioPortraitPosY + 20.0f + sp38 + gRadioPortraitScaleY, 1.0f, gRadioPortraitScaleY);
|
||||
gRadioPortraitPosY + 20.0f + sp38 + gRadioPortraitScaleY, 1.0f,
|
||||
gRadioPortraitScaleY);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -602,13 +613,12 @@ void Radio_Draw(void) {
|
||||
if (!(fakeTemp)) {
|
||||
ret = Audio_GetCurrentVoiceStatus();
|
||||
|
||||
if (gRadioMsgCharIndex < 60) {
|
||||
if (gRadioMsg[gRadioMsgCharIndex + 1] == MSGCHAR_NXT && *gRadioMsg != 38) {
|
||||
if (gRadioMsg[gRadioMsgCharIndex + 1] != MSGCHAR_END) {
|
||||
if (gRadioMsg[gRadioMsgCharIndex + 1] == MSGCHAR_NXT) {
|
||||
if (ret == 0) {
|
||||
gRadioState = 31;
|
||||
}
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
gRadioMsgCharIndex++;
|
||||
}
|
||||
}
|
||||
@ -700,12 +710,12 @@ void Radio_Draw(void) {
|
||||
(gCurrentRadioPortrait != RCID_1000)) {
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT);
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255);
|
||||
Graphics_DisplaySmallText(31, 167, 1.0f, 1.0f, "DOWN");
|
||||
Graphics_DisplaySmallText(OTRGetRectDimensionFromLeftEdge(31.0f), 167, 1.0f, 1.0f, "DOWN");
|
||||
HUD_TeamDownWrench_Draw(1);
|
||||
}
|
||||
if (((gCurrentRadioPortrait != RCID_STATIC) && (gCurrentRadioPortrait != RCID_STATIC + 1)) &&
|
||||
(gCurrentRadioPortrait != RCID_1000)) {
|
||||
HUD_TeamShields_Draw(22.0f, 165.0f, gTeamShields[idx]);
|
||||
HUD_TeamShields_Draw(OTRGetRectDimensionFromLeftEdge(22.0f), 165.0f, gTeamShields[idx]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -749,11 +759,11 @@ void Radio_Draw(void) {
|
||||
(gCurrentRadioPortrait != RCID_STATIC + 1) && (gCurrentRadioPortrait != RCID_1000)) {
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_76_POINT);
|
||||
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255);
|
||||
Graphics_DisplaySmallText(31, 167, 1.0f, 1.0f, "DOWN");
|
||||
Graphics_DisplaySmallText(OTRGetRectDimensionFromLeftEdge(31.0f), 167, 1.0f, 1.0f, "DOWN");
|
||||
}
|
||||
if (((gCurrentRadioPortrait != RCID_STATIC) && (gCurrentRadioPortrait != RCID_STATIC + 1)) &&
|
||||
(gCurrentRadioPortrait != RCID_1000)) {
|
||||
HUD_TeamShields_Draw(22.0f, 165.0f, gActors[idx].health * 2.55f);
|
||||
HUD_TeamShields_Draw(OTRGetRectDimensionFromLeftEdge(22.0f), 165.0f, gActors[idx].health * 2.55f);
|
||||
}
|
||||
}
|
||||
if (((gCurrentRadioPortrait != RCID_STATIC) && (gCurrentRadioPortrait != RCID_STATIC + 1)) &&
|
||||
|
@ -971,6 +971,11 @@ void Option_MainMenu_Update(void) {
|
||||
}
|
||||
|
||||
if (gControllerPress[gMainController].button & (A_BUTTON | START_BUTTON)) {
|
||||
#if DEBUG_VERSUS == 0
|
||||
if (sMainMenuCursor == 2) {
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
AUDIO_PLAY_SFX(NA_SE_ARWING_DECIDE, gDefaultSfxSource, 4);
|
||||
sLightningYpos = sOptionCardPosY[sMainMenuCursor];
|
||||
sDrawCursor = false;
|
||||
@ -2158,6 +2163,7 @@ void Option_RankingMenu_Draw(void) {
|
||||
Option_Color_FlashRed(&D_menu_801B93F0);
|
||||
colorGB = D_menu_801B93F0;
|
||||
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, colorGB, colorGB, 255);
|
||||
// Selection arrow
|
||||
Lib_TextureRect_IA8(&gMasterDisp, D_VS_MENU_7004010, 8, 8, 70.0f, (D_menu_801B93E4 * 17.0f) + 55.0f, 1.0f,
|
||||
1.0f);
|
||||
}
|
||||
@ -2240,13 +2246,19 @@ void Option_80197914(void) {
|
||||
|
||||
for (i = 0, vec1 = D_menu_801AF100, vec2 = D_menu_801AF118; i < 2; i++, vec1++, vec2++) {
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
Matrix_Translate(gGfxMatrix, vec1->x, vec1->y, -500.0f, MTXF_APPLY);
|
||||
// @port: Tag the transform.
|
||||
FrameInterpolation_RecordOpenChild("RANKING_BORDERS", i);
|
||||
|
||||
Matrix_Translate(gGfxMatrix, vec1->x, vec1->y, -500.0f, MTXF_APPLY);
|
||||
|
||||
// @port: Increase the scale by 2.5f to compensate for missing borders
|
||||
Matrix_Scale(gGfxMatrix, vec2->x * 4, vec2->y + 2.5f, 1.0f, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, D_menu_801AEF30);
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
|
||||
// @port Pop the transform id.
|
||||
FrameInterpolation_RecordCloseChild();
|
||||
}
|
||||
}
|
||||
|
||||
@ -2605,11 +2617,17 @@ f32 D_menu_801AF144 = 2.7f;
|
||||
void Option_RankingRouteMedal_Draw(f32 xPos, f32 yPos, f32 zPos) {
|
||||
RCP_SetupDL(&gMasterDisp, SETUPDL_53);
|
||||
Matrix_Push(&gGfxMatrix);
|
||||
// @port: Tag the transform.
|
||||
FrameInterpolation_RecordOpenChild("Option_RankingRouteMedal_Draw", (u32) xPos << 8 | (u32) yPos);
|
||||
|
||||
Matrix_Translate(gGfxMatrix, xPos - D_menu_801AF140, yPos + D_menu_801AF144, zPos, MTXF_APPLY);
|
||||
Matrix_Scale(gGfxMatrix, D_menu_801AF13C, D_menu_801AF13C, D_menu_801AF13C, MTXF_APPLY);
|
||||
Matrix_SetGfxMtx(&gMasterDisp);
|
||||
gSPDisplayList(gMasterDisp++, aMapMedalDL);
|
||||
Matrix_Pop(&gGfxMatrix);
|
||||
|
||||
// @port Pop the transform id.
|
||||
FrameInterpolation_RecordCloseChild();
|
||||
}
|
||||
|
||||
s32 Option_GetRouteLineColor(PlanetId start, PlanetId end) {
|
||||
|
@ -3629,21 +3629,21 @@ void Title_Radio_PlayMessage(u16** msgList, RadioCharacterId character) {
|
||||
switch (gGameState) {
|
||||
case GSTATE_TITLE:
|
||||
gRadioPrintPosY = 176;
|
||||
gRadioPrintPosX = 85;
|
||||
gRadioTextBoxPosX = 80.0f;
|
||||
gRadioPrintPosX = OTRGetRectDimensionFromLeftEdge(85);
|
||||
gRadioTextBoxPosX = OTRGetRectDimensionFromLeftEdge(80.0f);
|
||||
gRadioTextBoxPosY = 174.0f;
|
||||
gRadioTextBoxScaleX = 4.63f;
|
||||
gRadioPortraitPosX = 32.0f;
|
||||
gRadioPortraitPosX = OTRGetRectDimensionFromLeftEdge(32.0f);
|
||||
gRadioPortraitPosY = 174.0f;
|
||||
break;
|
||||
|
||||
case GSTATE_PLAY:
|
||||
gRadioPrintPosY = 179;
|
||||
gRadioPrintPosX = 79;
|
||||
gRadioTextBoxPosX = 74.0f;
|
||||
gRadioPrintPosX = OTRGetRectDimensionFromLeftEdge(79);
|
||||
gRadioTextBoxPosX = OTRGetRectDimensionFromLeftEdge(74.0f);
|
||||
gRadioTextBoxPosY = 178.0f;
|
||||
gRadioTextBoxScaleX = 4.53f;
|
||||
gRadioPortraitPosX = 26.0f;
|
||||
gRadioPortraitPosX = OTRGetRectDimensionFromLeftEdge(26.0f);
|
||||
gRadioPortraitPosY = 178.0f;
|
||||
}
|
||||
|
||||
|
@ -100,24 +100,24 @@ void DrawSettingsMenu(){
|
||||
.isPercentage = true,
|
||||
})) {
|
||||
float val = CVarGetFloat("gMainMusicVolume", 1.0f) * 100;
|
||||
gSaveFile.save.data.musicVolume = val;
|
||||
Audio_SetVolume(AUDIO_TYPE_MUSIC, val);
|
||||
gSaveFile.save.data.musicVolume = (u8) val;
|
||||
Audio_SetVolume(AUDIO_TYPE_MUSIC, (u8) val);
|
||||
}
|
||||
if (UIWidgets::CVarSliderFloat("Voice Volume", "gVoiceVolume", 0.0f, 1.0f, 1.0f, {
|
||||
.format = "%.0f%%",
|
||||
.isPercentage = true,
|
||||
})) {
|
||||
float val = CVarGetFloat("gVoiceVolume", 1.0f) * 100;
|
||||
gSaveFile.save.data.voiceVolume = val;
|
||||
Audio_SetVolume(AUDIO_TYPE_VOICE, val);
|
||||
gSaveFile.save.data.voiceVolume = (u8) val;
|
||||
Audio_SetVolume(AUDIO_TYPE_VOICE, (u8) val);
|
||||
}
|
||||
if (UIWidgets::CVarSliderFloat("Sound Effects Volume", "gSFXMusicVolume", 0.0f, 1.0f, 1.0f, {
|
||||
.format = "%.0f%%",
|
||||
.isPercentage = true,
|
||||
})) {
|
||||
float val = CVarGetFloat("gSFXMusicVolume", 1.0f) * 100;
|
||||
gSaveFile.save.data.sfxVolume = val;
|
||||
Audio_SetVolume(AUDIO_TYPE_SFX, val);
|
||||
gSaveFile.save.data.sfxVolume = (u8) val;
|
||||
Audio_SetVolume(AUDIO_TYPE_SFX, (u8) val);
|
||||
}
|
||||
|
||||
static std::unordered_map<Ship::AudioBackend, const char*> audioBackendNames = {
|
||||
@ -543,7 +543,7 @@ void DrawDebugMenu() {
|
||||
});
|
||||
|
||||
UIWidgets::CVarCheckbox("SFX Jukebox", "gSfxJukebox", {
|
||||
.tooltip = "Allows you to play sound effects from the game"
|
||||
.tooltip = "Press L in the Expert Sound options to play sound effects from the game"
|
||||
});
|
||||
|
||||
UIWidgets::CVarCheckbox("Spawner Mod", "gSpawnerMod", {
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit c7d12dadb52c69bf2ada005006cfd0da5a14f615
|
||||
Subproject commit ed4ee26fe6d6ec113efc54d188c5864f44c1e14d
|
Loading…
Reference in New Issue
Block a user