forked from Mirrorlandia_minetest/minetest
View range: Set maximum to 4000 nodes
The network protocol does not support larger than 255 mapblocks.
This commit is contained in:
parent
38abc91802
commit
02112f84e2
@ -418,8 +418,7 @@ fps_max (Maximum FPS) int 60
|
|||||||
pause_fps_max (FPS in pause menu) int 20
|
pause_fps_max (FPS in pause menu) int 20
|
||||||
|
|
||||||
# View distance in nodes.
|
# View distance in nodes.
|
||||||
# Min = 20
|
viewing_range (Viewing range) int 100 20 4000
|
||||||
viewing_range (Viewing range) int 100
|
|
||||||
|
|
||||||
# Width component of the initial window size.
|
# Width component of the initial window size.
|
||||||
screenW (Screen width) int 800
|
screenW (Screen width) int 800
|
||||||
|
@ -473,8 +473,7 @@
|
|||||||
# pause_fps_max = 20
|
# pause_fps_max = 20
|
||||||
|
|
||||||
# View distance in nodes.
|
# View distance in nodes.
|
||||||
# Min = 20
|
# type: int min: 20 max: 4000
|
||||||
# type: int
|
|
||||||
# viewing_range = 100
|
# viewing_range = 100
|
||||||
|
|
||||||
# Width component of the initial window size.
|
# Width component of the initial window size.
|
||||||
|
@ -940,7 +940,8 @@ void writePlayerPos(LocalPlayer *myplayer, ClientMap *clientMap, NetworkPacket *
|
|||||||
u32 keyPressed = myplayer->keyPressed;
|
u32 keyPressed = myplayer->keyPressed;
|
||||||
// scaled by 80, so that pi can fit into a u8
|
// scaled by 80, so that pi can fit into a u8
|
||||||
u8 fov = clientMap->getCameraFov() * 80;
|
u8 fov = clientMap->getCameraFov() * 80;
|
||||||
u8 wanted_range = std::ceil(clientMap->getControl().wanted_range / MAP_BLOCKSIZE);
|
u8 wanted_range = MYMIN(255,
|
||||||
|
std::ceil(clientMap->getControl().wanted_range / MAP_BLOCKSIZE));
|
||||||
|
|
||||||
v3s32 position(pf.X, pf.Y, pf.Z);
|
v3s32 position(pf.X, pf.Y, pf.Z);
|
||||||
v3s32 speed(sf.X, sf.Y, sf.Z);
|
v3s32 speed(sf.X, sf.Y, sf.Z);
|
||||||
|
18
src/game.cpp
18
src/game.cpp
@ -3277,9 +3277,16 @@ void Game::increaseViewRange(float *statustext_time)
|
|||||||
{
|
{
|
||||||
s16 range = g_settings->getS16("viewing_range");
|
s16 range = g_settings->getS16("viewing_range");
|
||||||
s16 range_new = range + 10;
|
s16 range_new = range + 10;
|
||||||
g_settings->set("viewing_range", itos(range_new));
|
|
||||||
|
if (range_new > 4000) {
|
||||||
|
range_new = 4000;
|
||||||
|
statustext = utf8_to_wide("Viewing range is at maximum: "
|
||||||
|
+ itos(range_new));
|
||||||
|
} else {
|
||||||
statustext = utf8_to_wide("Viewing range changed to "
|
statustext = utf8_to_wide("Viewing range changed to "
|
||||||
+ itos(range_new));
|
+ itos(range_new));
|
||||||
|
}
|
||||||
|
g_settings->set("viewing_range", itos(range_new));
|
||||||
*statustext_time = 0;
|
*statustext_time = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3289,12 +3296,15 @@ void Game::decreaseViewRange(float *statustext_time)
|
|||||||
s16 range = g_settings->getS16("viewing_range");
|
s16 range = g_settings->getS16("viewing_range");
|
||||||
s16 range_new = range - 10;
|
s16 range_new = range - 10;
|
||||||
|
|
||||||
if (range_new < 20)
|
if (range_new < 20) {
|
||||||
range_new = 20;
|
range_new = 20;
|
||||||
|
statustext = utf8_to_wide("Viewing range is at minimum: "
|
||||||
g_settings->set("viewing_range", itos(range_new));
|
+ itos(range_new));
|
||||||
|
} else {
|
||||||
statustext = utf8_to_wide("Viewing range changed to "
|
statustext = utf8_to_wide("Viewing range changed to "
|
||||||
+ itos(range_new));
|
+ itos(range_new));
|
||||||
|
}
|
||||||
|
g_settings->set("viewing_range", itos(range_new));
|
||||||
*statustext_time = 0;
|
*statustext_time = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user