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(); }
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(); }