コード例 #1
0
ファイル: MeleeAim.cs プロジェクト: dogfood1/UServer3
        public override void OnUpdate()
        {
            if (Settings.Aimbot_Melee_Silent && BasePlayer.IsHaveLocalPlayer && BasePlayer.LocalPlayer.CanInteract())
            {
                if (!BasePlayer.LocalPlayer.HasActiveItem || !BasePlayer.LocalPlayer.ActiveItem.IsMelee())
                {
                    // При отсутсвии в руках оружия ближнего боя, ставим кд 1, чтобы при смене оружия не было CooldownHack
                    SetCooldown(1f);
                    return;
                }
                m_Interval += DeltaTime;
                m_Cooldown -= DeltaTime;
                var prefabId = (EPrefabUID)BasePlayer.LocalPlayer.ActiveItem.PrefabID;
                var speed    = GetMeleeSpeed(prefabId);

                // Если меняем оружие ближнего боя, то ставим кд 1, чтобы при смене оружие не было CooldownHack
                if (LastMeleePrefabUID != BasePlayer.LocalPlayer.ActiveItem.PrefabID)
                {
                    LastMeleePrefabUID = BasePlayer.LocalPlayer.ActiveItem.PrefabID;
                    SetCooldown(1f);
                    return;
                }
                if (m_Interval > speed && m_Cooldown < 0)
                {
                    m_Interval = 0;
                    var        maxDistance = OpCodes.GetMeleeMaxDistance(prefabId);
                    BasePlayer target      = BasePlayer.FindEnemy(maxDistance);
                    if (target != null)
                    {
                        // При успешной атаке, ставим кд равное максимальной скорости атаки данного оружия
                        SetCooldown(speed);

                        var bone       = OpCodes.GetTargetHit(0, Settings.Aimbot_Melee_Silent_AutoHeadshot);
                        var attackInfo = OpCodes.GetTargetHitInfo(bone);

                        var closestPoint = target.ClosestPoint(BasePlayer.LocalPlayer.EyePos);
                        var offset       = BasePlayer.LocalPlayer.GetForward(closestPoint) * 1.4f;
                        DDraw.DrawBox(target.WorldSpaceBounds().position, target.WorldSpaceBounds().extents * 2, Color.magenta, 1f);
                        DDraw.Arrow(closestPoint, closestPoint - offset, 0.1f, Color.blue, 1f);
                        var position = closestPoint - offset;
                        BasePlayer.LocalPlayer.ActiveItem.SendMeleeAttack(target, bone, position);
                    }
                }
            }
        }
コード例 #2
0
        public override void OnUpdate()
        {
            if (BasePlayer.LocalPlayer?.CanInteract() == true)
            {
                m_Interval += DeltaTime;

                // Every 0.1s
                if (m_Interval < 0.2f)
                {
                    return;
                }
                m_Interval = 0;
                //ConsoleSystem.Log($"Storage Count => { StorageContainer.Containers}");
                foreach (var player in BasePlayer.ListPlayers)
                {
                    if (player == BasePlayer.LocalPlayer)
                    {
                        continue;
                    }
                    DDraw.DrawBox(player.Position + player.GetCenterVector(), new Vector3(1, 1.8f, 1), Color.magenta, .2f);
                    DDraw.Text(player.Position + new Vector3(0, 1.8f, 0), $"PLAYER", Color.red, .2f);
                }
            }
        }
コード例 #3
0
        public override void OnUpdate()
        {
            this.m_interval_update_tick += DeltaTime;
            if (this.m_interval_update_tick >= 0.1f)
            {
                this.m_interval_update_tick = 0f;
                ///
                if (BasePlayer.IsHaveLocalPlayer)
                {
                    if (this.m_no_target_time >= 0.5f)
                    {
                        this.m_no_target_time = 0f;
                        this.TargetPlayer     = null;
                    }

                    #region [Section] Find Target
                    for (int i = 0; i < BasePlayer.ListPlayers.Count; ++i)
                    {
                        if (BasePlayer.ListPlayers[i].IsLocalPlayer == false && BasePlayer.ListPlayers[i].IsAlive)
                        {
                            float distance = Vector3.Distance(BasePlayer.ListPlayers[i].Position, BasePlayer.LocalPlayer.Position);
                            if ((BasePlayer.LocalPlayer.HasActiveItem && OpCodes.IsFireWeapon_Prefab((EPrefabUID)BasePlayer.LocalPlayer.ActiveItem.PrefabID) && distance < 150) || distance < 50)
                            {
                                #region [Section] Range and Radius check
                                Vector3 forward        = BasePlayer.LocalPlayer.GetForward() * distance + BasePlayer.LocalPlayer.EyePos;
                                float   distance_check = 5f;

                                if (distance < 10)
                                {
                                    distance_check = distance / 2;
                                }
                                else if (distance > 30)
                                {
                                    distance_check = 9;
                                }

                                distance_check = 100;
                                float distance_point_and_playuer = Vector3.Distance(forward, BasePlayer.ListPlayers[i].Position + new Vector3(0, BasePlayer.ListPlayers[i].GetHeight() * 0.5f, 0));
                                if (distance_point_and_playuer < distance_check)
                                {
                                    m_list_players.Push(new TargetAimInformation {
                                        Player = BasePlayer.ListPlayers[i], DistanceCursor = distance_point_and_playuer
                                    });
                                }
                                #endregion
                            }
                        }
                    }
                    if (this.m_list_players.Count > 0)
                    {
                        BasePlayer target = null;
                        float      dist   = float.MaxValue;
                        while (this.m_list_players.Count > 0)
                        {
                            TargetAimInformation player = this.m_list_players.Pop();
                            if (dist > player.DistanceCursor)
                            {
                                dist   = player.DistanceCursor;
                                target = player.Player;
                            }
                        }
                        this.TargetPlayer = target;
                    }
                    else if (this.TargetPlayer != null)
                    {
                        m_no_target_time += 0.1f;
                    }

                    #endregion

                    if (this.TargetPlayer != null)
                    {
                        DDraw.Text(this.TargetPlayer.Position + new Vector3(0, this.TargetPlayer.GetHeight(), 0), $"<size=32>.</size>", Color.red, 0.1f);
                    }
//                    if (this.TargetPlayer != null)
//                        DDraw.DrawBox(this.TargetPlayer.Position + new Vector3(0, this.TargetPlayer.GetHeight()*0.5f, 0), this.TargetPlayer.Rotation.ToQuaternion(), new Vector3(1,this.TargetPlayer.GetHeight(), 1), Color.red, 0.05f);
                }

                ///
            }
        }
コード例 #4
0
ファイル: Visual.cs プロジェクト: xXTurnerLP/UFOHacks
 public static void Players()
 {
     foreach (BasePlayer pl in BasePlayer.VisiblePlayerList)
     {
         if (pl != null && pl != LocalPlayer.Entity)
         {
             Vector3 screenPos = GetScreenPos(pl.transform.position);
             if (screenPos.z > 0f)
             {
                 if (!pl.IsSleeping() && Manager.Players)
                 {
                     int distance = (int)Vector3.Distance(LocalPlayer.Entity.transform.position, pl.transform.position);
                     if (distance <= Manager.playerdist)
                     {
                         Vector3 screenPos2 = GetScreenPos(GetPositionBone(pl.GetModel(), "headCenter") + new Vector3(0f, 0.3f, 0f));
                         float   num        = Mathf.Abs(screenPos.y - screenPos2.y);
                         Render.Box(screenPos.x, (float)Screen.height - screenPos.y, num / 2f, num, Color.white, 1f);
                         if (Manager.Tracers)
                         {
                             DDraw.Line(LocalPlayer.Entity.transform.position, pl.transform.position, Color.white, 0f, true, false);
                         }
                         if (Manager.Nicknames)
                         {
                             Render.String(screenPos.x, (float)Screen.height - screenPos.y, String.Format("{0}", pl.displayName), Color.white, true);
                         }
                         if (Manager.Health)
                         {
                             Render.String(screenPos.x, (float)Screen.height - screenPos.y, String.Format("\n [{0} HP]", (int)pl.health), Color.white, true);
                         }
                         if (Manager.Distance)
                         {
                             Render.String(screenPos.x, (float)Screen.height - screenPos.y, String.Format("\n [{0} M]", distance), Color.white, true);
                         }
                         if (Manager.HPBar)
                         {
                             Render.Health(screenPos2.x, (float)Screen.height - screenPos2.y - 4f, pl.health, 100f, 50f, 5f, 1f);
                         }
                     }
                 }
                 if (pl.IsSleeping() && Manager.Sleeper)
                 {
                     int distance = (int)Vector3.Distance(LocalPlayer.Entity.transform.position, pl.transform.position);
                     if (distance <= Manager.sleepdist)
                     {
                         Vector3 screenPos2 = GetScreenPos(GetPositionBone(pl.GetModel(), "headCenter") + new Vector3(0f, 0.3f, 0f));
                         float   num        = Mathf.Abs(screenPos.y - screenPos2.y);
                         if (Manager.Nicknames)
                         {
                             Render.String(screenPos.x, (float)Screen.height - screenPos.y, String.Format("{0}", pl.displayName), Color.gray, true);
                         }
                         if (Manager.Health)
                         {
                             Render.String(screenPos.x, (float)Screen.height - screenPos.y, String.Format("\n [{0} HP]", (int)pl.health), Color.gray, true);
                         }
                         if (Manager.Distance)
                         {
                             Render.String(screenPos.x, (float)Screen.height - screenPos.y, String.Format("\n [{0} M]", distance), Color.gray, true);
                         }
                     }
                 }
             }
         }
     }
 }
コード例 #5
0
ファイル: RangeAim.cs プロジェクト: OBTestCoder/gamecoder
        // Token: 0x06000127 RID: 295 RVA: 0x00009D78 File Offset: 0x00007F78
        public override void OnUpdate()
        {
            this.m_interval_update_tick += SapphireType.DeltaTime;
            bool flag = this.m_interval_update_tick >= 0.1f;

            if (flag)
            {
                this.m_interval_update_tick = 0f;
                bool isHaveLocalPlayer = BasePlayer.IsHaveLocalPlayer;
                if (isHaveLocalPlayer)
                {
                    bool flag2 = this.m_no_target_time >= 0.5f;
                    if (flag2)
                    {
                        this.m_no_target_time = 0f;
                        this.TargetPlayer     = null;
                    }
                    for (int i = 0; i < BasePlayer.ListPlayers.Count; i++)
                    {
                        bool flag3 = !BasePlayer.ListPlayers[i].IsLocalPlayer && BasePlayer.ListPlayers[i].IsAlive;
                        if (flag3)
                        {
                            float distance = Vector3.Distance(BasePlayer.ListPlayers[i].Position, BasePlayer.LocalPlayer.Position);
                            bool  flag4    = (BasePlayer.LocalPlayer.HasActiveItem && OpCodes.IsFireWeapon_Prefab((EPrefabUID)BasePlayer.LocalPlayer.ActiveItem.PrefabID) && distance < 150f) || distance < 70f;
                            if (flag4)
                            {
                                Vector3 forward = BasePlayer.LocalPlayer.GetForward() * distance + BasePlayer.LocalPlayer.EyePos;
                                bool    flag5   = distance < 10f;
                                float   distance_check;
                                if (flag5)
                                {
                                    distance_check = distance / 2f;
                                }
                                else
                                {
                                    bool flag6 = distance > 30f;
                                    if (flag6)
                                    {
                                    }
                                }
                                distance_check = 100f;
                                float distance_point_and_playuer = Vector3.Distance(forward, BasePlayer.ListPlayers[i].Position + new Vector3(0f, BasePlayer.ListPlayers[i].GetHeight() * 0.5f, 0f));
                                bool  flag7 = distance_point_and_playuer < distance_check;
                                if (flag7)
                                {
                                    this.m_list_players.Push(new TargetAimInformation
                                    {
                                        Player         = BasePlayer.ListPlayers[i],
                                        DistanceCursor = distance_point_and_playuer
                                    });
                                }
                            }
                        }
                    }
                    bool flag8 = this.m_list_players.Count > 0;
                    if (flag8)
                    {
                        BasePlayer target = null;
                        float      dist   = float.MaxValue;
                        while (this.m_list_players.Count > 0)
                        {
                            TargetAimInformation player = this.m_list_players.Pop();
                            bool flag9 = dist > player.DistanceCursor;
                            if (flag9)
                            {
                                dist   = player.DistanceCursor;
                                target = player.Player;
                            }
                        }
                        this.TargetPlayer = target;
                    }
                    else
                    {
                        bool flag10 = this.TargetPlayer != null;
                        if (flag10)
                        {
                            this.m_no_target_time += 0.1f;
                        }
                    }
                    bool flag11 = this.TargetPlayer != null;
                    if (flag11)
                    {
                        DDraw.Text(this.TargetPlayer.Position + new Vector3(0f, this.TargetPlayer.GetHeight(), 0f), "<size=32>.</size>", Color.red, 0.1f);
                    }
                }
            }
        }