AcTools.Processes.Showroom.ClassicShooter.RotateCam C# (CSharp) Method

RotateCam() private method

private RotateCam ( double x, double y ) : void
x double
y double
return void
            private void RotateCam(double x, double y) {
                PressKey(Keys.F7);

                User32.BringProcessWindowToFront(_process);
                _inputSimulator.Mouse.MoveMouseTo(32767 - 32767 * x / Screen.PrimaryScreen.Bounds.Width,
                    32767 - 32767 * y / Screen.PrimaryScreen.Bounds.Height);
                _inputSimulator.Mouse.RightButtonDown();
                Wait(WaitTimeoutIteration);

                var lx = 0.0;
                var ly = 0.0;
                var px = 0;
                var py = 0;

                for (var i = 0; i < IterationCount; i++) {
                    lx += x / IterationCount;
                    ly += y / IterationCount;

                    var dx = (int)Math.Round(lx) - px;
                    var dy = (int)Math.Round(ly) - py;

                    User32.BringProcessWindowToFront(_process);
                    _inputSimulator.Mouse.MoveMouseBy(dx, dy);
                    px += dx;
                    py += dy;

                    Wait(WaitTimeoutIteration);
                }

                User32.BringProcessWindowToFront(_process);
                _inputSimulator.Mouse.RightButtonUp();
                PressKey(Keys.F7);
                Wait(WaitTimeoutEnsure);
            }