forked from Mirrorlandia_minetest/minetest
Zoom: Correctly verify client passed zoom at the server (#7526)
Fixes generation of distant world when not zooming in creative mode (in creative mode zoom FOV is 15 degrees).
This commit is contained in:
parent
1ff15d3a46
commit
03edcafdda
@ -199,7 +199,10 @@ void RemoteClient::GetNextBlocks (
|
|||||||
// Distrust client-sent FOV and get server-set player object property
|
// Distrust client-sent FOV and get server-set player object property
|
||||||
// zoom FOV (degrees) as a check to avoid hacked clients using FOV to load
|
// zoom FOV (degrees) as a check to avoid hacked clients using FOV to load
|
||||||
// distant world.
|
// distant world.
|
||||||
float prop_zoom_fov = sao->getZoomFOV() * core::DEGTORAD;
|
// (zoom is disabled by value 0)
|
||||||
|
float prop_zoom_fov = sao->getZoomFOV() < 0.001f ?
|
||||||
|
0.0f :
|
||||||
|
std::max(camera_fov, sao->getZoomFOV() * core::DEGTORAD);
|
||||||
|
|
||||||
const s16 full_d_max = std::min(adjustDist(m_max_send_distance, prop_zoom_fov),
|
const s16 full_d_max = std::min(adjustDist(m_max_send_distance, prop_zoom_fov),
|
||||||
wanted_range);
|
wanted_range);
|
||||||
|
Loading…
Reference in New Issue
Block a user