////////////////////////////////////////////////////////////////////////////////////////////////
        /*--------------------------------------------------------------------------------------------*/
        public void Set(string pValueName, ISettingsController pController, int pExpirationCount=1)
        {
            if ( !Application.isEditor ) {
                return;
            }

            var expCont = new ExpirableController();
            expCont.Controller = pController;
            expCont.ExpireCount = pExpirationCount;

            if ( vMap.ContainsKey(pValueName) ) {
                vMap[pValueName] = expCont;
            }
            else {
                vMap.Add(pValueName, expCont);
                vKeys.Add(pValueName);
            }
        }
示例#2
0
        /*--------------------------------------------------------------------------------------------*/
        public void TryExpireControllers()
        {
            if (!Application.isEditor)
            {
                return;
            }

            for (int i = 0; i < vKeys.Count; i++)
            {
                ExpirableController expCont = vMap[vKeys[i]];

                if (--expCont.ExpireCount >= 0)
                {
                    continue;
                }

                vMap.Remove(vKeys[i]);
                vKeys.RemoveAt(i);
                i--;
            }
        }
示例#3
0
        ////////////////////////////////////////////////////////////////////////////////////////////////
        /*--------------------------------------------------------------------------------------------*/
        public void Set(string pValueName, ISettingsController pController, int pExpirationCount = 1)
        {
            if (!Application.isEditor)
            {
                return;
            }

            ExpirableController expCont;

            if (vMap.ContainsKey(pValueName))
            {
                expCont = vMap[pValueName];
            }
            else
            {
                expCont = new ExpirableController();
                vMap.Add(pValueName, expCont);
                vKeys.Add(pValueName);
            }

            expCont.Controller  = pController;
            expCont.ExpireCount = pExpirationCount;
        }