// Token: 0x06000056 RID: 86 RVA: 0x00006E38 File Offset: 0x00005038
        public static void SmoothAim(GameObject obj)
        {
            Vector3 aimPosition = AimbotCoroutines.GetAimPosition(obj.transform, "Skull");

            if (aimPosition == AimbotCoroutines.PiVector)
            {
                return;
            }
            Transform transform  = Player.player.transform;
            Transform transform2 = OptimizationVariables.MainCam.transform;
            float     num        = Time.deltaTime * AimbotOptions.AimSpeed;

            transform.rotation       = Quaternion.Slerp(Quaternion.RotateTowards(transform.rotation, Quaternion.LookRotation(aimPosition - transform.position), num), Quaternion.LookRotation(aimPosition - transform.position), num);
            transform.eulerAngles    = new Vector3(0f, transform.eulerAngles.y, 0f);
            transform2.localRotation = Quaternion.Slerp(Quaternion.RotateTowards(transform2.localRotation, Quaternion.LookRotation(aimPosition - transform2.position), num), Quaternion.LookRotation(aimPosition - transform2.position), num);
            float num2 = transform2.localRotation.eulerAngles.x;

            if (num2 <= 90f && num2 <= 270f)
            {
                num2 += 90f;
            }
            else if (num2 >= 270f && num2 <= 360f)
            {
                num2 -= 270f;
            }
            AimbotCoroutines.Pitch = num2;
            AimbotCoroutines.Yaw   = transform.eulerAngles.y;
        }
Exemple #2
0
        // Token: 0x06000236 RID: 566 RVA: 0x0001526C File Offset: 0x0001346C
        public static bool WallCheck(Transform transform)
        {
            Vector3    direction = AimbotCoroutines.GetAimPosition(transform, "Skull") - Player.player.look.aim.position;
            RaycastHit raycastHit;

            return(PhysicsUtility.raycast(new Ray(Player.player.look.aim.position, direction), out raycastHit, direction.magnitude + 1f, RayMasks.DAMAGE_CLIENT, QueryTriggerInteraction.UseGlobal) && raycastHit.transform.IsChildOf(transform));
        }
        // Token: 0x06000055 RID: 85 RVA: 0x00006DAC File Offset: 0x00004FAC
        public static void Aim(GameObject obj)
        {
            Vector3 aimPosition = AimbotCoroutines.GetAimPosition(obj.transform, "Skull");

            if (aimPosition == AimbotCoroutines.PiVector)
            {
                return;
            }
            Transform transform = OptimizationVariables.MainCam.transform;

            transform.LookAt(aimPosition);
            Vector3 eulerAngles = transform.eulerAngles;
            float   num         = eulerAngles.x;

            if (num <= 90f && num <= 270f)
            {
                num += 90f;
            }
            else if (num >= 270f && num <= 360f)
            {
                num -= 270f;
            }
            AimbotCoroutines.Pitch = num;
            AimbotCoroutines.Yaw   = eulerAngles.y;
        }
        public void OV_ballistics()
        {
            if (Provider.isServer || MiscOptions.PanicMode)
            {
                OverrideUtilities.CallOriginal(this, Array.Empty <object>());
                return;
            }
            if (Time.realtimeSinceStartup - PlayerLifeUI.hitmarkers[0].lastHit > PlayerUI.HIT_TIME)
            {
                PlayerLifeUI.hitmarkers[0].hitBuildImage.isVisible    = false;
                PlayerLifeUI.hitmarkers[0].hitCriticalImage.isVisible = false;
                PlayerLifeUI.hitmarkers[0].hitEntitiyImage.isVisible  = false;
            }
            ItemGunAsset itemGunAsset = (ItemGunAsset)Player.player.equipment.asset;
            PlayerLook   look         = Player.player.look;

            if (itemGunAsset.projectile != null)
            {
                return;
            }
            List <BulletInfo> list = (List <BulletInfo>)OV_UseableGun.BulletsField.GetValue(this);

            if (list.Count == 0)
            {
                return;
            }
            RaycastInfo raycastInfo = null;

            if (RaycastOptions.Enabled)
            {
                RaycastUtilities.GenerateRaycast(out raycastInfo);
            }
            if (Provider.modeConfigData.Gameplay.Ballistics)
            {
                if (raycastInfo == null)
                {
                    if (AimbotCoroutines.IsAiming && AimbotCoroutines.LockedObject != null)
                    {
                        Vector3    aimPosition = AimbotCoroutines.GetAimPosition(AimbotCoroutines.LockedObject.transform, "Skull");
                        Ray        aimRay      = VectorUtilities.GetAimRay(look.aim.position, aimPosition);
                        float      maxDistance = Vector3.Distance(look.aim.position, aimPosition);
                        RaycastHit raycastHit;
                        if (!Physics.Raycast(aimRay, out raycastHit, maxDistance, RayMasks.DAMAGE_SERVER))
                        {
                            raycastInfo = RaycastUtilities.GenerateOriginalRaycast(aimRay, itemGunAsset.range, RayMasks.ENEMY, null);
                        }
                    }
                    if (raycastInfo == null)
                    {
                        OverrideUtilities.CallOriginal(this, Array.Empty <object>());
                        return;
                    }
                }
                for (int i = 0; i < list.Count; i++)
                {
                    BulletInfo bulletInfo = list[i];
                    float      num        = Vector3.Distance(Player.player.transform.position, raycastInfo.point);
                    if ((float)bulletInfo.steps * itemGunAsset.ballisticTravel >= num)
                    {
                        EPlayerHit newHit = OV_UseableGun.CalcHitMarker(itemGunAsset, ref raycastInfo);
                        PlayerUI.hitmark(0, Vector3.zero, false, newHit);
                        Player.player.input.sendRaycast(raycastInfo);
                        bulletInfo.steps = 254;
                    }
                }
                for (int j = list.Count - 1; j >= 0; j--)
                {
                    BulletInfo bulletInfo2 = list[j];
                    bulletInfo2.steps += 1;
                    if (bulletInfo2.steps >= itemGunAsset.ballisticSteps)
                    {
                        list.RemoveAt(j);
                    }
                }
                return;
            }
            if (raycastInfo == null)
            {
                OverrideUtilities.CallOriginal(this, Array.Empty <object>());
                return;
            }
            for (int k = 0; k < list.Count; k++)
            {
                EPlayerHit newHit2 = OV_UseableGun.CalcHitMarker(itemGunAsset, ref raycastInfo);
                PlayerUI.hitmark(0, Vector3.zero, false, newHit2);
                Player.player.input.sendRaycast(raycastInfo);
            }
            list.Clear();
        }
 // Token: 0x0600004D RID: 77 RVA: 0x0000371F File Offset: 0x0000191F
 public void Start()
 {
     base.StartCoroutine(RaycastCoroutines.UpdateObjects());
     base.StartCoroutine(AimbotCoroutines.SetLockedObject());
     base.StartCoroutine(AimbotCoroutines.AimToObject());
 }