예제 #1
0
        protected void FixedUpdate()
        {
            // 将待加入动作加入dictionary执行
            foreach (SSAction ac in waitingAddAction)
            {
                dictionary[ac.GetInstanceID()] = ac;
            }
            waitingAddAction.Clear();

            // 如果要删除,加入要删除的list,否则更新
            foreach (KeyValuePair <int, SSAction> dic in dictionary)
            {
                SSAction ac = dic.Value;
                if (ac.destory)
                {
                    waitingDelete.Add(ac.GetInstanceID());
                }
                else if (ac.enable)
                {
                    ac.FixedUpdate();
                }
            }

            // 将deletelist中的动作删除
            foreach (int id in waitingDelete)
            {
                SSAction ac = dictionary[id];
                dictionary.Remove(id);
                DestroyObject(ac);
            }
            waitingDelete.Clear();
        }
예제 #2
0
        protected void FixedUpdate()
        {
            foreach (SSAction ac in watingAddAction)
            {
                dictionary[ac.GetInstanceID()] = ac;
            }
            watingAddAction.Clear();


            foreach (KeyValuePair <int, SSAction> dic in dictionary)
            {
                SSAction ac = dic.Value;
                if (ac.destory)
                {
                    watingDelete.Add(ac.GetInstanceID());
                }
                else if (ac.enable)
                {
                    ac.FixedUpdate();
                }
            }


            foreach (int id in watingDelete)
            {
                SSAction ac = dictionary[id];
                dictionary.Remove(id);
                DestroyObject(ac);
            }
            watingDelete.Clear();
        }