ref: 32cdd54be55325983a087e3bd9461c1069b3a43c
parent: bde39eee6442e697fdc37bd7ee1334551c86af8c
author: Simon Howard <fraggle@gmail.com>
date: Sun Sep 28 12:38:17 EDT 2008
Move novert support into common i_video.c code. Subversion-branch: /branches/raven-branch Subversion-revision: 1302
--- a/src/doom/d_main.c
+++ b/src/doom/d_main.c
@@ -1424,24 +1424,6 @@
startloadgame = -1;
}
- //!
- // @category video
- //
- // Disable vertical mouse movement.
- //
-
- if (M_CheckParm("-novert"))
- novert = true;
-
- //!
- // @category video
- //
- // Enable vertical mouse movement.
- //
-
- if (M_CheckParm("-nonovert"))
- novert = false;
-
if (W_CheckNumForName("SS_START") >= 0
|| W_CheckNumForName("FF_END") >= 0)
{
--- a/src/doom/doomstat.h
+++ b/src/doom/doomstat.h
@@ -94,9 +94,6 @@
// If non-zero, exit the level after this number of minutes
extern int timelimit;
-// vertical movement from mouse/joystick disabled
-extern int novert;
-
// Nightmare mode flag, single player.
extern boolean respawnmonsters;
--- a/src/doom/g_game.c
+++ b/src/doom/g_game.c
@@ -527,12 +527,7 @@
}
}
- // fraggle: allow disabling mouse y movement
-
- if (!novert)
- {
- forward += mousey;
- }
+ forward += mousey;
if (strafe)
side += mousex*2;
--- a/src/i_video.c
+++ b/src/i_video.c
@@ -101,6 +101,12 @@
static boolean nomouse = false;
int usemouse = 1;
+// Disallow mouse and joystick movement to cause forward/backward
+// motion. Specified with the '-novert' command line parameter.
+// This is an int to allow saving to config file
+
+int novert = 0;
+
// if true, I_VideoBuffer is screen->pixels
static boolean native_surface;
@@ -607,7 +613,15 @@
ev.type = ev_mouse;
ev.data1 = MouseButtonState();
ev.data2 = AccelerateMouse(x);
- ev.data3 = -AccelerateMouse(y);
+
+ if (!novert)
+ {
+ ev.data3 = -AccelerateMouse(y);
+ }
+ else
+ {
+ ev.data3 = 0;
+ }
D_PostEvent(&ev);
}
@@ -1344,6 +1358,28 @@
{
SetScaleFactor(3);
}
+
+ //!
+ // @category video
+ //
+ // Disable vertical mouse movement.
+ //
+
+ if (M_CheckParm("-novert"))
+ {
+ novert = true;
+ }
+
+ //!
+ // @category video
+ //
+ // Enable vertical mouse movement.
+ //
+
+ if (M_CheckParm("-nonovert"))
+ {
+ novert = false;
+ }
}
// Check if we have been invoked as a screensaver by xscreensaver.
@@ -1667,5 +1703,6 @@
M_BindVariable("video_driver", &video_driver);
M_BindVariable("usegamma", &usegamma);
M_BindVariable("vanilla_keyboard_mapping", &vanilla_keyboard_mapping);
+ M_BindVariable("novert", &novert);
}
--- a/src/m_controls.c
+++ b/src/m_controls.c
@@ -88,12 +88,6 @@
int dclick_use = 1;
-// Disallow mouse and joystick movement to cause forward/backward
-// motion. Specified with the '-novert' command line parameter.
-// This is an int to allow saving to config file
-
-int novert = 0;
-
//
// Bind all of the common controls used by Doom and all other games.
//
@@ -129,7 +123,6 @@
M_BindVariable("mouseb_use", &mousebuse);
M_BindVariable("mouseb_backward", &mousebbackward);
M_BindVariable("dclick_use", &dclick_use);
- M_BindVariable("novert", &novert);
}
void M_BindHereticControls(void)
--- a/src/m_controls.h
+++ b/src/m_controls.h
@@ -63,7 +63,6 @@
extern int joybstraferight;
extern int dclick_use;
-extern int novert;
void M_BindBaseControls(void);
void M_BindHereticControls(void);