public bool IsInLaunchButtonRect(int x, int y) { if (launchButton.InBoundingRect(x, y)) { return(true); } else { return(false); } }
public bool IsInLaunchButtonRect(int x, int y) { return(launchButton.InBoundingRect(x, y)); }
void HandleMouseInput(MouseControls mc) { bool dbgtxt = true; string fnId = $"[{clsName}.HandleMouseInput]"; if (dbgtxt) { DbgFuncs.AddStr($"{fnId} mc.LeftButtonState: {mc.LeftButtonState}"); } if (dbgtxt) { DbgFuncs.AddStr($"{fnId} mc.LastLeftButtonState: {mc.LastLeftButtonState}"); } mousePos.Set(mc.X, mc.Y); // Reset game screen if (mc.RightButtonState == UpDownState.Down && mc.LastRightButtonState == UpDownState.Up) { Reset(); return; } // Prevents aim and spin boxes from continuing to drag if mouse is not down if (mc.LeftButtonState == UpDownState.Up && mc.LastLeftButtonState == UpDownState.Up && (adjustingAim || adjustingSpin || adjustingPosition)) { adjustingAim = adjustingSpin = adjustingPosition = false; return; } // Setting up the shot if (!launched) { // Building logic to move ball before the aim marker is placed (aimTraj.Placed) if (mc.LeftButtonState == UpDownState.Down && mc.LastLeftButtonState == UpDownState.Up && !aimTraj.Placed && InCircle(mc.Position.X, mc.Position.Y)) { adjustingPosition = true; return; } // Place aim marker if (!aimTraj.Placed && mc.LeftButtonState == UpDownState.Down && mc.LastLeftButtonState == UpDownState.Up) { aimTraj.SetStartPoint(position); aimTraj.SetEndPoint(mc.Position); spinTraj.SetStartPoint(position); PointD spinStartPos = new PointD(); spinStartPos = position.HalfWayTo(mc.Position.X, mc.Position.Y); spinTraj.SetEndPoint(spinStartPos); return; } // Adjust aim or spin if (aimTraj.Placed && (!adjustingAim || !adjustingSpin) && mc.LeftButtonState == UpDownState.Down && mc.LastLeftButtonState == UpDownState.Up) { if (aimTraj.InEndRect(mc.X, mc.Y)) { adjustingAim = true; return; } if (spinTraj.InEndRect(mc.X, mc.Y)) { adjustingSpin = true; return; } } // Stop adjusting aim or spin if ((adjustingAim || adjustingSpin) && mc.LeftButtonState == UpDownState.Up && mc.LastLeftButtonState == UpDownState.Down) { adjustingAim = adjustingSpin = false; return; } // Launch the ball and start the timer (when launch button is clicked) if ((!adjustingAim && !adjustingSpin) && mc.LastLeftButtonState == UpDownState.Up && mc.LeftButtonState == UpDownState.Down //&& InLaunchButtonRect(mc.X, mc.Y) && btnLaunch.InBoundingRect(mc.X, mc.Y)) { launched = true; gtimer.Start(); } } }