1
0
forked from mirrors/0ad

Make configurable mouse edge distance for view scroll.

Differential Revision: https://code.wildfiregames.com/D4552
This was SVN commit r26665.
This commit is contained in:
vladislavbelov
2022-03-17 18:25:54 +00:00
parent 2ed2e9de0c
commit 2a66c783ee
3 changed files with 11 additions and 6 deletions
+7 -5
View File
@@ -58,6 +58,7 @@ CCameraController::CCameraController(CCamera& camera)
// Dummy values (these will be filled in by the config file)
m_ViewScrollSpeed(0),
m_ViewScrollSpeedModifier(1),
m_ViewScrollMouseDetectDistance(3),
m_ViewRotateXSpeed(0),
m_ViewRotateXMin(0),
m_ViewRotateXMax(0),
@@ -104,6 +105,7 @@ void CCameraController::LoadConfig()
{
CFG_GET_VAL("view.scroll.speed", m_ViewScrollSpeed);
CFG_GET_VAL("view.scroll.speed.modifier", m_ViewScrollSpeedModifier);
CFG_GET_VAL("view.scroll.mouse.detectdistance", m_ViewScrollMouseDetectDistance);
CFG_GET_VAL("view.rotate.x.speed", m_ViewRotateXSpeed);
CFG_GET_VAL("view.rotate.x.min", m_ViewRotateXMin);
CFG_GET_VAL("view.rotate.x.max", m_ViewRotateXMax);
@@ -182,16 +184,16 @@ void CCameraController::Update(const float deltaRealTime)
moveForward += m_ViewDragSpeed * -mouse_dy;
}
if (g_mouse_active)
if (g_mouse_active && m_ViewScrollMouseDetectDistance > 0)
{
if (g_mouse_x >= g_xres - 2 && g_mouse_x < g_xres)
if (g_mouse_x >= g_xres - m_ViewScrollMouseDetectDistance && g_mouse_x < g_xres)
moveRightward += m_ViewScrollSpeed * deltaRealTime;
else if (g_mouse_x <= 3 && g_mouse_x >= 0)
else if (g_mouse_x < m_ViewScrollMouseDetectDistance && g_mouse_x >= 0)
moveRightward -= m_ViewScrollSpeed * deltaRealTime;
if (g_mouse_y >= g_yres - 2 && g_mouse_y < g_yres)
if (g_mouse_y >= g_yres - m_ViewScrollMouseDetectDistance && g_mouse_y < g_yres)
moveForward -= m_ViewScrollSpeed * deltaRealTime;
else if (g_mouse_y <= 3 && g_mouse_y >= 0)
else if (g_mouse_y < m_ViewScrollMouseDetectDistance && g_mouse_y >= 0)
moveForward += m_ViewScrollSpeed * deltaRealTime;
}