private static void ProcessCursor(Point axis) { var axisInput = new Vector2(axis.X, axis.Y); if (axisInput.Magnitude > Settings.Default.CursorDeadzone) { axisInput = Vector2.Normalize(axisInput) * ((axisInput.Magnitude - Settings.Default.CursorDeadzone) / (127 - Settings.Default.CursorDeadzone)); var curve = 0.05 * Settings.Default.CursorCurve; var xSpeed = (axisInput.X < 0 ? -axisInput.X : axisInput.X) * Settings.Default.CursorSpeed; var ySpeed = (axisInput.Y < 0 ? -axisInput.Y : axisInput.Y) * Settings.Default.CursorSpeed; var xMath = Math.Pow(curve * xSpeed, 2) + curve * xSpeed; var yMath = Math.Pow(curve * ySpeed, 2) + curve * ySpeed; var mouseMovement = new Vector2(xMath, yMath); if (axis.X < 0) { mouseMovement.X = -mouseMovement.X; } if (axis.Y < 0) { mouseMovement.Y = -mouseMovement.Y; } HardwareInput.MoveMouse((int)mouseMovement.X, (int)mouseMovement.Y); } }
private static void ProcessCursor(Point axis) { var axisInput = new Vector2(axis.X, axis.Y); if (axisInput.Magnitude > Settings.Default.CursorDeadzone) { axisInput = Vector2.Normalize(axisInput) * ((axisInput.Magnitude - Settings.Default.CursorDeadzone) / (127 - Settings.Default.CursorDeadzone)); var curve = 0.05 * Settings.Default.CursorCurve; var xSpeed = (axisInput.X < 0 ? -axisInput.X : axisInput.X) * Settings.Default.CursorSpeed; var ySpeed = (axisInput.Y < 0 ? -axisInput.Y : axisInput.Y) * Settings.Default.CursorSpeed; var xMath = Math.Pow(curve * xSpeed, 2) + curve * xSpeed; var yMath = Math.Pow(curve * ySpeed, 2) + curve * ySpeed; //xMath *= MemoryManager.ReadAoeState() ? 0.5 : 1; //yMath *= MemoryManager.ReadAoeState() ? 0.5 : 1; var mouseMovement = new Vector2(xMath, yMath); if (axis.X < 0) { mouseMovement.X = -mouseMovement.X; } if (axis.Y < 0) { mouseMovement.Y = -mouseMovement.Y; } if (Settings.Default.InputHardwareMouse) { HardwareInput.MoveMouse((int)mouseMovement.X, (int)mouseMovement.Y); } else { var m = Cursor.Position; m.X += (int)mouseMovement.X; m.Y += (int)mouseMovement.Y; Cursor.Position = m; } } }