Exemplo n.º 1
0
        private static void overlay_TickEvent(object sender, SharpDXOverlay.DeltaEventArgs e)
        {
            var overlay = (SharpDXOverlay)sender;

            input.Update();
            if (input.Keys.KeyWentUp(WinAPI.VirtualKeyShort.F5))
            {
                overlay.ChangeHandle(WinAPI.GetForegroundWindow());
            }
            overlay.UpdateControls(e.SecondsElapsed, input);

            if (input.Keys.KeyIsDown(WinAPI.VirtualKeyShort.END))
            {
                e.Overlay.Close();
            }
            // e.Overlay.ShowInactiveTopmost();
        }
        private static void overlay_TickEvent(object sender, SharpDXOverlay.DeltaEventArgs e)
        {
            seconds += e.SecondsElapsed;
            //Update logic
            KeyUtils.Update();
            Framework.Update();
            SHDXOverlay.UpdateControls(e.SecondsElapsed, KeyUtils);

            //Process input
            if (KeyUtils.KeyWentUp(WinAPI.VirtualKeyShort.DELETE))
            {
                SHDXOverlay.Kill();
            }
            if (KeyUtils.KeyWentUp(WinAPI.VirtualKeyShort.INSERT))
            {
                Framework.MouseEnabled = !Framework.MouseEnabled;
            }
            if (KeyUtils.KeyWentUp(WinAPI.VirtualKeyShort.HOME))
            {
                windowMenu.Visible = !windowMenu.Visible;
            }

            //Update UI
            cursor.Visible = !Framework.MouseEnabled;

            if (seconds >= 1)
            {
                seconds = 0;
                graphMemRead.AddValue(MemUtils.BytesRead);
                graphMemWrite.AddValue(MemUtils.BytesWritten);
            }

            ctrlRadar.X     = SHDXOverlay.Width - ctrlRadar.Width;
            ctrlCrosshair.X = SHDXOverlay.Width / 2f;
            ctrlCrosshair.Y = SHDXOverlay.Height / 2f;


            for (int i = 0; i < ctrlPlayerESP.Length; i++)
            {
                ctrlPlayerESP[i].Visible = false;
            }

            labelAimbot.Text          = string.Format("Aimbot: {0}", Framework.AimbotActive ? "ON" : "OFF");
            labelAimbot.ForeColor     = Framework.AimbotActive ? SharpDX.Color.Green : windowBots.Caption.ForeColor;
            labelTriggerbot.Text      = string.Format("Triggerbot: {0}", Framework.TriggerbotActive ? "ON" : "OFF");
            labelTriggerbot.ForeColor = Framework.TriggerbotActive ? SharpDX.Color.Green : windowBots.Caption.ForeColor;

            windowGraphs.Visible     = ConfigUtils.GetValue <bool>("windowPerformanceEnabled");
            windowBots.Visible       = ConfigUtils.GetValue <bool>("windowBotsEnabled");
            windowSpectators.Visible = ConfigUtils.GetValue <bool>("windowSpectatorsEnabled");
            ctrlRadar.Visible        = ConfigUtils.GetValue <bool>("radarEnabled");
            ctrlRadar.Width          = ConfigUtils.GetValue <float>("radarWidth");
            ctrlRadar.Height         = ConfigUtils.GetValue <float>("radarHeight");
            if (ctrlCrosshair.PrimaryColor.ToRgba() != colorControlCrosshairPrimary.SDXColor.ToRgba())
            {
                ctrlCrosshair.PrimaryColor = colorControlCrosshairPrimary.SDXColor;
            }
            if (ctrlCrosshair.SecondaryColor.ToRgba() != colorControlCrosshairSecondary.SDXColor.ToRgba())
            {
                ctrlCrosshair.SecondaryColor = colorControlCrosshairSecondary.SDXColor;
            }
            ctrlCrosshair.Type        = (Crosshair.Types)ConfigUtils.GetValue <int>("crosshairType");
            ctrlCrosshair.Visible     = ConfigUtils.GetValue <bool>("crosshairEnabled");
            ctrlCrosshair.Outline     = ConfigUtils.GetValue <bool>("crosshairOutline");
            ctrlCrosshair.Radius      = ConfigUtils.GetValue <float>("crosshairRadius");
            ctrlCrosshair.Width       = ConfigUtils.GetValue <float>("crosshairWidth");
            ctrlCrosshair.SpreadScale = ConfigUtils.GetValue <float>("crosshairSpreadScale");

            if (Framework.LocalPlayer != null)
            {
                Weapon wpn = Framework.LocalPlayer.GetActiveWeapon();
                if (wpn != null)
                {
                    ctrlCrosshair.Spread = wpn.m_fAccuracyPenalty * 10000;
                }
                else
                {
                    ctrlCrosshair.Spread = 1f;
                }
            }
            else
            {
                ctrlCrosshair.Spread = 1f;
            }
            if (Framework.IsPlaying())
            {
                #region ESP
                for (int i = 0; i < ctrlPlayerESP.Length && i < Framework.Players.Length; i++)
                {
                    if (Framework.Players[i].Item2.m_iDormant != 1 &&
                        (ConfigUtils.GetValue <bool>("espEnemies") && Framework.Players[i].Item2.m_iTeamNum != Framework.LocalPlayer.m_iTeamNum) ||
                        (ConfigUtils.GetValue <bool>("espAllies") && Framework.Players[i].Item2.m_iTeamNum == Framework.LocalPlayer.m_iTeamNum))
                    {
                        ctrlPlayerESP[i].Visible = true;
                    }
                    ctrlPlayerESP[i].Player = Framework.Players[i].Item2;
                }
                #endregion
                #region Spectators
                if (Framework.LocalPlayer != null)
                {
                    var           spectators = Framework.Players.Where(x => x.Item2.m_hObserverTarget == Framework.LocalPlayer.m_iID && x.Item2.m_iHealth == 0 && x.Item2.m_iDormant != 1);
                    StringBuilder builder    = new StringBuilder();
                    foreach (Tuple <int, CSPlayer> spec in spectators)
                    {
                        CSPlayer player = spec.Item2;
                        builder.AppendFormat("{0} [{1}]{2}", Framework.Names[player.m_iID], (SpectatorView)player.m_iObserverMode, builder.Length > 0 ? "\n" : "");
                    }
                    if (builder.Length > 0)
                    {
                        labelSpectators.Text = builder.ToString();
                    }
                    else
                    {
                        labelSpectators.Text = "<none>";
                    }
                }
                else
                {
                    labelSpectators.Text = "<none>";
                }
                #endregion
            }
            else
            {
                labelSpectators.Text = "<none>";
                //ctrlRadar.Visible = false;
            }
        }