aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/Common/Consoles_App.cpp
diff options
context:
space:
mode:
authorMijaeLio <87155057+MijaeLio@users.noreply.github.com>2026-03-06 20:14:06 -0500
committerGitHub <noreply@github.com>2026-03-06 19:14:06 -0600
commit16446265d555d21f564b5989611a05918728d643 (patch)
treead4ed8918f0090cf64bda4ac604d883a23ab1b48 /Minecraft.Client/Common/Consoles_App.cpp
parent216943716b8797fa1b9014f337b8ce7bbe50af4d (diff)
Add Render Distance option. (#675)
* FOV option without debug menu Now located in Graphics section. Based on the FOV thing from discord idk * language * render distance option for graphics menu * oop * swf files on media * revert changes on language selector * nvm it was actually easy to fix * forgot this * Final probably Fixed visual bug and made the chunk updates depend to your view distance.
Diffstat (limited to 'Minecraft.Client/Common/Consoles_App.cpp')
-rw-r--r--Minecraft.Client/Common/Consoles_App.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/Minecraft.Client/Common/Consoles_App.cpp b/Minecraft.Client/Common/Consoles_App.cpp
index 7c57776c..43cf73e1 100644
--- a/Minecraft.Client/Common/Consoles_App.cpp
+++ b/Minecraft.Client/Common/Consoles_App.cpp
@@ -835,6 +835,7 @@ int CMinecraftApp::SetDefaultOptions(C_4JProfile::PROFILESETTINGS *pSettings,con
{
SetGameSettings(iPad,eGameSetting_MusicVolume,DEFAULT_VOLUME_LEVEL);
SetGameSettings(iPad,eGameSetting_SoundFXVolume,DEFAULT_VOLUME_LEVEL);
+ SetGameSettings(iPad,eGameSetting_RenderDistance,16);
SetGameSettings(iPad,eGameSetting_Gamma,50);
SetGameSettings(iPad,eGameSetting_FOV,0);
@@ -1330,6 +1331,7 @@ void CMinecraftApp::ApplyGameSettingsChanged(int iPad)
{
ActionGameSettings(iPad,eGameSetting_MusicVolume );
ActionGameSettings(iPad,eGameSetting_SoundFXVolume );
+ ActionGameSettings(iPad,eGameSetting_RenderDistance );
ActionGameSettings(iPad,eGameSetting_Gamma );
ActionGameSettings(iPad,eGameSetting_FOV );
ActionGameSettings(iPad,eGameSetting_Difficulty );
@@ -1379,6 +1381,15 @@ void CMinecraftApp::ActionGameSettings(int iPad,eGameSetting eVal)
pMinecraft->options->set(Options::Option::SOUND,((float)GameSettingsA[iPad]->ucSoundFXVolume)/100.0f);
}
break;
+ case eGameSetting_RenderDistance:
+ if(iPad == ProfileManager.GetPrimaryPad())
+ {
+ int dist = (GameSettingsA[iPad]->uiBitmaskValues >> 16) & 0xFF;
+
+ int level = UIScene_SettingsGraphicsMenu::DistanceToLevel(dist);
+ pMinecraft->options->set(Options::Option::RENDER_DISTANCE, 3 - level);
+ }
+ break;
case eGameSetting_Gamma:
if(iPad==ProfileManager.GetPrimaryPad())
{
@@ -1848,6 +1859,17 @@ void CMinecraftApp::SetGameSettings(int iPad,eGameSetting eVal,unsigned char ucV
GameSettingsA[iPad]->bSettingsChanged=true;
}
break;
+ case eGameSetting_RenderDistance:
+ {
+ unsigned int val = ucVal & 0xFF;
+
+ GameSettingsA[iPad]->uiBitmaskValues &= ~(0xFF << 16);
+ GameSettingsA[iPad]->uiBitmaskValues |= val << 16;
+ if(iPad == ProfileManager.GetPrimaryPad())
+ ActionGameSettings(iPad,eVal);
+ GameSettingsA[iPad]->bSettingsChanged = true;
+ }
+ break;
case eGameSetting_Gamma:
if(GameSettingsA[iPad]->ucGamma!=ucVal)
{
@@ -2307,6 +2329,13 @@ unsigned char CMinecraftApp::GetGameSettings(int iPad,eGameSetting eVal)
case eGameSetting_SoundFXVolume:
return GameSettingsA[iPad]->ucSoundFXVolume;
break;
+ case eGameSetting_RenderDistance:
+ {
+ int val = (GameSettingsA[iPad]->uiBitmaskValues >> 16) & 0xFF;
+ if(val == 0) return val = 16; //brain
+ return val;
+ break;
+ }
case eGameSetting_Gamma:
return GameSettingsA[iPad]->ucGamma;
break;