Esempio n. 1
0
        private int AddQuailty(CrowdQuality q, bool isCheckExist)
        {
            if (m_Mgr == null)
            {
                return(-1);
            }
            int key = (int)q;
            int value;

            if (isCheckExist)
            {
                if (m_QualiyHash.TryGetValue(key, out value))
                {
                    return(value);
                }
            }
            CrowdAvoidanceParams param;

            switch (q)
            {
            case CrowdQuality.High:
                param = CrowdAvoidanceParams.CreateStandardHigh();
                break;

            case CrowdQuality.Good:
                param = CrowdAvoidanceParams.CreateStandardGood();
                break;

            case CrowdQuality.Mid:
                param = CrowdAvoidanceParams.CreateStandardMedium();
                break;

            case CrowdQuality.Low:
                param = CrowdAvoidanceParams.CreateStandardLow();
                break;

            default:
                return(-1);
            }

            int index = m_QualiyHash.Count;

            if (!m_Mgr.SetAvoidanceConfig(index, param))
            {
#if UNITY_EDITOR
                Debug.LogError("SetAvoidanceConfig error~!");
#endif
                return(-1);
            }

            if (!m_QualiyHash.ContainsKey(key))
            {
                m_QualiyHash.Add(key, index);
            }
            return(index);
        }
Esempio n. 2
0
 public int AddQuailty(CrowdQuality q)
 {
     return(this.AddQuailty(q, true));
 }