port: add centered HUD mode

set Game.CenterHUD=1 in pd.ini to enable
This commit is contained in:
fgsfds committed 2023-09-22 20:26:32 +02:00
1 parent 205032c626
commit ca8851789a
6 files changed
+21 -9

No files matched your search

+6 -1
View File
@@ -72,9 +72,14 @@ static void gameLoadConfig(void)
g_PlayerMouseAimMode = configGetIntClamped("Game.MouseAimMode", g_PlayerMouseAimMode, 0, 1);
g_PlayerMouseAimSpeedX = configGetFloatClamped("Game.MouseAimSpeedX", g_PlayerMouseAimSpeedX, 0.f, 10.f);
g_PlayerMouseAimSpeedY = configGetFloatClamped("Game.MouseAimSpeedY", g_PlayerMouseAimSpeedY, 0.f, 10.f);
g_ViShakeIntensityMult = configGetFloatClamped("Game.ScreenShakeIntensity", 1.f, 0.f, 100.f);
g_PlayerFovAffectsZoom = configGetIntClamped("Game.FovAffectsZoom", g_PlayerFovAffectsZoom, 0, 1);
g_PlayerFovZoomMultiplier = g_PlayerFovAffectsZoom ? g_PlayerDefaultFovY / 60.0f : 1.0f;
g_ViShakeIntensityMult = configGetFloatClamped("Game.ScreenShakeIntensity", 1.f, 0.f, 100.f);
const s32 center = configGetIntClamped("Game.CenterHUD", 0, 0, 1);
if (center) {
g_HudAlignModeL = G_ASPECT_CENTER_EXT;
g_HudAlignModeR = G_ASPECT_CENTER_EXT;
}
}
int main(int argc, const char **argv)
+3 -3
View File
@@ -12741,7 +12741,7 @@ Gfx *bgunDrawHud(Gfx *gdl)
#ifndef PLATFORM_N64
if (playercount < 2) {
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, G_ASPECT_RIGHT_EXT);
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, g_HudAlignModeR);
}
#endif
@@ -12995,7 +12995,7 @@ Gfx *bgunDrawHud(Gfx *gdl)
#ifndef PLATFORM_N64
if (playercount < 2) {
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, G_ASPECT_LEFT_EXT);
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, g_HudAlignModeL);
}
#endif
@@ -13035,7 +13035,7 @@ Gfx *bgunDrawHud(Gfx *gdl)
#ifndef PLATFORM_N64
if (playercount < 2) {
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, G_ASPECT_RIGHT_EXT);
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, g_HudAlignModeR);
}
#endif
+5
View File
@@ -142,6 +142,11 @@ u32 var8007fbbc = 0x0000003c;
u32 var8007fbc0 = 0x44444400;
u32 var8007fbc4 = 0xffffff00;
#ifndef PLATFORM_N64
u32 g_HudAlignModeL = G_ASPECT_LEFT_EXT;
u32 g_HudAlignModeR = G_ASPECT_RIGHT_EXT;
#endif
void textInit(void)
{
// empty
+3 -3
View File
@@ -191,7 +191,7 @@ Gfx *hudmsgRenderMissionTimer(Gfx *gdl, u32 alpha)
#ifndef PLATFORM_N64
if (PLAYERCOUNT() < 2) {
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, G_ASPECT_LEFT_EXT);
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, g_HudAlignModeL);
}
#endif
@@ -1456,9 +1456,9 @@ Gfx *hudmsgsRender(Gfx *gdl)
#ifndef PLATFORM_N64
if (playercount < 2 && msg->state >= HUDMSGSTATE_FADINGIN) {
if (msg->alignh == HUDMSGALIGN_SCREENLEFT || msg->alignh == HUDMSGALIGN_LEFT) {
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, G_ASPECT_LEFT_EXT);
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, g_HudAlignModeL);
} else if (msg->alignh == HUDMSGALIGN_RIGHT) {
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, G_ASPECT_RIGHT_EXT);
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, g_HudAlignModeR);
} else {
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, G_ASPECT_CENTER_EXT);
}
+1 -1
View File
@@ -323,7 +323,7 @@ Gfx *radarRender(Gfx *gdl)
g_RadarY -= 6;
}
#ifndef PLATFORM_N64
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, G_ASPECT_RIGHT_EXT);
gSPExtraGeometryModeEXT(gdl++, G_ASPECT_MODE_EXT, g_HudAlignModeR);
#endif
}
+3 -1
View File
@@ -536,10 +536,12 @@ extern f32 g_PlayerDefaultFovY;
extern s32 g_PlayerMouseAimMode;
extern f32 g_PlayerMouseAimSpeedX;
extern f32 g_PlayerMouseAimSpeedY;
extern f32 g_ViShakeIntensityMult;
extern s32 g_PlayerFovAffectsZoom;
extern f32 g_PlayerFovZoomMultiplier;
extern f32 g_ViShakeIntensityMult;
extern u32 g_TexFilter2D;
extern u32 g_HudAlignModeL;
extern u32 g_HudAlignModeR;
#define TEX_FILTER_2D g_TexFilter2D
#define ADJUST_ZOOM_FOV(x) ((x) * g_PlayerFovZoomMultiplier)