Mobile: use extended view range instead full (#230)
parent
91b4202e56
commit
986eb94494
|
@ -489,13 +489,11 @@ void Camera::updateViewingRange()
|
|||
{
|
||||
f32 viewing_range = g_settings->getFloat("viewing_range");
|
||||
f32 near_plane = g_settings->getFloat("near_plane");
|
||||
if (m_draw_control.extended_range)
|
||||
viewing_range *= 3;
|
||||
m_draw_control.wanted_range = viewing_range;
|
||||
m_cameranode->setNearValue(rangelim(near_plane, 0.0f, 0.5f) * BS);
|
||||
if (m_draw_control.range_all) {
|
||||
m_cameranode->setFarValue(100000.0);
|
||||
return;
|
||||
}
|
||||
m_cameranode->setFarValue((viewing_range < 2000) ? 2000 * BS : viewing_range * BS);
|
||||
m_cameranode->setFarValue(m_draw_control.range_all ? 100000.0 : std::max(2000.0f, viewing_range) * BS);
|
||||
}
|
||||
|
||||
void Camera::setDigging(s32 button)
|
||||
|
|
|
@ -40,6 +40,7 @@ struct MapDrawControl
|
|||
}
|
||||
// Overrides limits by drawing everything
|
||||
bool range_all;
|
||||
bool extended_range = false;
|
||||
// Wanted drawing range
|
||||
float wanted_range;
|
||||
// Maximum number of blocks to draw
|
||||
|
|
20
src/game.cpp
20
src/game.cpp
|
@ -1291,6 +1291,7 @@ protected:
|
|||
|
||||
void increaseViewRange();
|
||||
void decreaseViewRange();
|
||||
void toggleExtendedViewRange();
|
||||
void toggleFullViewRange();
|
||||
|
||||
void updateCameraDirection(CameraOrientation *cam, float dtime);
|
||||
|
@ -2624,7 +2625,11 @@ void Game::processKeyInput()
|
|||
} else if (wasKeyDown(KeyType::DECREASE_VIEWING_RANGE)) {
|
||||
decreaseViewRange();
|
||||
} else if (wasKeyDown(KeyType::RANGESELECT)) {
|
||||
#if defined(__ANDROID__) || defined(__IOS__)
|
||||
toggleExtendedViewRange();
|
||||
#else
|
||||
toggleFullViewRange();
|
||||
#endif
|
||||
} else if (wasKeyDown(KeyType::QUICKTUNE_NEXT)) {
|
||||
quicktune->next();
|
||||
} else if (wasKeyDown(KeyType::QUICKTUNE_PREV)) {
|
||||
|
@ -3028,19 +3033,26 @@ void Game::decreaseViewRange()
|
|||
}
|
||||
|
||||
|
||||
void Game::toggleFullViewRange()
|
||||
void Game::toggleExtendedViewRange()
|
||||
{
|
||||
#if defined(__ANDROID__) || defined(__IOS__)
|
||||
static const wchar_t *msg[] = {
|
||||
L"Disabled far viewing range",
|
||||
L"Enabled far viewing range"
|
||||
};
|
||||
#else
|
||||
|
||||
draw_control->extended_range = !draw_control->extended_range;
|
||||
infostream << msg[draw_control->extended_range] << std::endl;
|
||||
m_statustext = msg[draw_control->extended_range];
|
||||
runData.statustext_time = 0;
|
||||
}
|
||||
|
||||
|
||||
void Game::toggleFullViewRange()
|
||||
{
|
||||
static const wchar_t *msg[] = {
|
||||
L"Normal view range",
|
||||
L"Infinite view range"
|
||||
};
|
||||
#endif
|
||||
|
||||
draw_control->range_all = !draw_control->range_all;
|
||||
infostream << msg[draw_control->range_all] << std::endl;
|
||||
|
|
Loading…
Reference in New Issue