private static void tmrHideMouse_Tick(object sender, EventArgs e) { if (InteropEmu.IsRunning() && !InteropEmu.IsPaused()) { HideMouse(); _tmrHideMouse.Stop(); } else { ShowMouse(); _tmrHideMouse.Stop(); } }
public static void OnMouseMove(Control ctrl) { if (_mouseCaptured && AllowMouseCapture) { HideMouse(); _tmrHideMouse.Stop(); Form frm = Application.OpenForms[0]; Point centerPos = frm.PointToScreen(new Point(frm.Width / 2, frm.Height / 2)); Point diff = new Point(Cursor.Position.X - centerPos.X, Cursor.Position.Y - centerPos.Y); if (diff.X != 0 || diff.Y != 0) { InteropEmu.SetMouseMovement((Int16)diff.X, (Int16)diff.Y); Cursor.Position = centerPos; } } else { _mouseCaptured = false; if (!InteropEmu.IsRunning() || InteropEmu.IsPaused()) { ShowMouse(); } else if (ConfigManager.Config.InputInfo.HideMousePointerForZapper && CursorManager.IsLightGun) { //Keep mouse hidden when using zapper if option to hide mouse is enabled HideMouse(); return; } _tmrHideMouse.Stop(); if (!CursorManager.NeedMouseIcon) { //Only hide mouse if no zapper (otherwise this could be pretty annoying) ctrl.Cursor = Cursors.Default; if (InteropEmu.IsRunning() && !InteropEmu.IsPaused()) { _tmrHideMouse.Start(); } } } }
private static void tmrCheckMouseMove_Tick(object sender, EventArgs e) { //Rarely the cursor becomes hidden despite leaving the window or moving //Have not been able to find a reliable way to reproduce it yet //This is a patch to prevent that bug from having any negative impact if (!_mouseCaptured && _lastPosition != Cursor.Position) { _lastPosition = Cursor.Position; bool running = InteropEmu.IsRunning() && !InteropEmu.IsPaused(); if (running && ConfigManager.Config.InputInfo.HideMousePointerForZapper && CursorManager.IsLightGun) { //Keep mouse hidden when using zapper if option to hide mouse is enabled return; } ShowMouse(); } }
public static void OnMouseMove(Control ctrl) { if (!InteropEmu.IsRunning() || InteropEmu.IsPaused() || !InteropEmu.HasArkanoidPaddle()) { ShowMouse(); } else if (InteropEmu.HasArkanoidPaddle() && !CursorManager.NeedMouseIcon) { HideMouse(); } _tmrHideMouse.Stop(); if (!CursorManager.NeedMouseIcon) { //Only hide mouse if no zapper (otherwise this could be pretty annoying) ctrl.Cursor = Cursors.Default; if (InteropEmu.IsRunning() && !InteropEmu.IsPaused()) { _tmrHideMouse.Start(); } } }