public void Update() { for (int i = 0; i < effectdic.Count; i++) { CActionEffect ae = effectdic[i]; if (ae == null) { effectdic.RemoveAt(i); break; } ae.Update(); } OnUpdate(); //防止同一帧执行StopEvent和DoEvent if (isDoEvent) { isDoEvent = false; return; } if (bornTime > 0 && this.config.EndTime > 0 && !GameTimer.Within(bornTime, this.config.EndTime)) { StopEvent(); Dispose(); } }