Beispiel #1
0
    // Token: 0x06000E7E RID: 3710 RVA: 0x000679D0 File Offset: 0x00065BD0
    public static bool CheckAccess(Vector3 point, float radius = 0f, bool flash = true, bool wardCheck = false)
    {
        List <PrivateArea> list = new List <PrivateArea>();
        bool flag = true;

        if (wardCheck)
        {
            flag = true;
            using (List <PrivateArea> .Enumerator enumerator = PrivateArea.m_allAreas.GetEnumerator())
            {
                while (enumerator.MoveNext())
                {
                    PrivateArea privateArea = enumerator.Current;
                    if (privateArea.IsEnabled() && privateArea.IsInside(point, radius) && !privateArea.HaveLocalAccess())
                    {
                        flag = false;
                        list.Add(privateArea);
                    }
                }
                goto IL_B8;
            }
        }
        flag = false;
        foreach (PrivateArea privateArea2 in PrivateArea.m_allAreas)
        {
            if (privateArea2.IsEnabled() && privateArea2.IsInside(point, radius))
            {
                if (privateArea2.HaveLocalAccess())
                {
                    flag = true;
                }
                else
                {
                    list.Add(privateArea2);
                }
            }
        }
IL_B8:
        if (!flag && list.Count > 0)
        {
            if (flash)
            {
                foreach (PrivateArea privateArea3 in list)
                {
                    privateArea3.FlashShield(false);
                }
            }
            return(false);
        }
        return(true);
    }