private void MakeCurrent()
        {
            Vector3 oldAngles = _viewAngles;

            if (this.Inhibited == false)
            {
                // update toggled key states
                // TODO: toggled

                /*toggled_crouch.SetKeyState( ButtonState( UB_DOWN ), in_toggleCrouch.GetBool() );
                 * toggled_run.SetKeyState( ButtonState( UB_SPEED ), in_toggleRun.GetBool() && idAsyncNetwork::IsActive() );
                 * toggled_zoom.SetKeyState( ButtonState( UB_ZOOM ), in_toggleZoom.GetBool() );*/

                // TODO: keyboard gen
                // keyboard angle adjustment

                /*AdjustAngles();
                 *
                 * // set button bits
                 * CmdButtons();
                 *
                 * // get basic movement from keyboard
                 * KeyMove();*/

                // get basic movement from mouse
                // TODO: MouseMove();

                // get basic movement from joystick

                /*JoystickMove();
                 *
                 * // check to make sure the angles haven't wrapped
                 * if ( viewangles[PITCH] - oldAngles[PITCH] > 90 ) {
                 *      viewangles[PITCH] = oldAngles[PITCH] + 90;
                 * } else if ( oldAngles[PITCH] - viewangles[PITCH] > 90 ) {
                 *      viewangles[PITCH] = oldAngles[PITCH] - 90;
                 * } */
            }
            else
            {
                _mouseDeltaX = 0;
                _mouseDeltaY = 0;
            }

            // TODO: input

            /*for ( i = 0; i < 3; i++ ) {
             *      cmd.angles[i] = ANGLE2SHORT( viewangles[i] );
             * }*/

            _currentCommand.MouseX = (short)_mouseX;
            _currentCommand.MouseY = (short)_mouseY;

            _flags   = _currentCommand.Flags;
            _impulse = _currentCommand.Impulse;
        }
        public void InitForNewMap()
        {
            _flags   = 0;
            _impulse = 0;

            // TODO

            /*toggled_crouch.Clear();
             * toggled_run.Clear();
             * toggled_zoom.Clear();
             * toggled_run.on = in_alwaysRun.GetBool();*/

            Clear();
            // TODO: ClearAngles();
        }
		private void MakeCurrent()
		{
			Vector3 oldAngles = _viewAngles;

			if(this.Inhibited == false)
			{
				// update toggled key states
				// TODO: toggled
				/*toggled_crouch.SetKeyState( ButtonState( UB_DOWN ), in_toggleCrouch.GetBool() );
				toggled_run.SetKeyState( ButtonState( UB_SPEED ), in_toggleRun.GetBool() && idAsyncNetwork::IsActive() );
				toggled_zoom.SetKeyState( ButtonState( UB_ZOOM ), in_toggleZoom.GetBool() );*/

				// TODO: keyboard gen
				// keyboard angle adjustment
				/*AdjustAngles();

				// set button bits
				CmdButtons();

				// get basic movement from keyboard
				KeyMove();*/

				// get basic movement from mouse
				// TODO: MouseMove();

				// get basic movement from joystick
				/*JoystickMove();

				// check to make sure the angles haven't wrapped
				if ( viewangles[PITCH] - oldAngles[PITCH] > 90 ) {
					viewangles[PITCH] = oldAngles[PITCH] + 90;
				} else if ( oldAngles[PITCH] - viewangles[PITCH] > 90 ) {
					viewangles[PITCH] = oldAngles[PITCH] - 90;
				} */
			}
			else
			{
				_mouseDeltaX = 0;
				_mouseDeltaY = 0;
			}

			// TODO: input
			/*for ( i = 0; i < 3; i++ ) {
				cmd.angles[i] = ANGLE2SHORT( viewangles[i] );
			}*/

			_currentCommand.MouseX = (short) _mouseX;
			_currentCommand.MouseY = (short) _mouseY;

			_flags = _currentCommand.Flags;
			_impulse = _currentCommand.Impulse;
		}
		public void InitForNewMap()
		{
			_flags = 0;
			_impulse = 0;

			// TODO
			/*toggled_crouch.Clear();
			toggled_run.Clear();
			toggled_zoom.Clear();
			toggled_run.on = in_alwaysRun.GetBool();*/

			Clear();
			// TODO: ClearAngles();
		}