protected override bool OnSetWaitBuffEnd(EnumBuffLast lastType) { int lastVal = (int)lastType; IBoostEffect item = null; for (int i = lstBoost.Count - 1; i >= 0; i--) { item = lstBoost[i]; if (item.InvalidFlag || item.TimeEnd <= (short)EnumBuffLast.TillWaitEnd && item.TimeEnd == lastVal) { lstBoost.RemoveAt(i); if (this._syncFlag) { this._syncFlag = false; } } } ISkill skill = null; for (int i = lstToSkill.Count - 1; i >= 0; i--) { skill = lstToSkill[i]; ((IBoostCore)skill).SetWaitBuffEnd(lastType); if (!skill.WaitingFlag) { lstToSkill.RemoveAt(i); } } return(true); }
public bool GetWaitingFlag(EnumBuffLast lastType) { int lastVal = (int)lastType; if (lastVal >= 0) { return(false); } return((_waitIndex >> (-lastVal) & 1) == 1); }
protected override bool OnSetWaitBuffEnd(EnumBuffLast lastType) { foreach (var kvp in dicBuff) { if (null != kvp.Value) { kvp.Value.SetWaitBuffEnd(lastType); } } return(true); }
public bool SetWaitBuffEnd(EnumBuffLast lastType) { if (!GetWaitingFlag(lastType)) { return(false); } bool val = this.OnSetWaitBuffEnd(lastType); if (val) { SetWaitingFlag(lastType, false); } return(val); }
protected bool SetWaitingFlag(EnumBuffLast lastType, bool waitingFlag) { int lastVal = (int)lastType; if (lastVal >= 0) { return(false); } if (waitingFlag) { this._waitIndex |= 1 << (-lastVal); } else { this._waitIndex &= ~(1 << (-lastVal)); } return(true); }
protected override bool OnSetWaitBuffEnd(EnumBuffLast lastType) { int lastVal = (int)lastType; foreach (var item in dicBuff.Values) { if (item.InvalidFlag || item.TimeEnd <= (short)EnumBuffLast.TillWaitEnd && item.TimeEnd == lastVal) { item.TimeEnd = 0; if (this._syncFlag) { this._syncFlag = false; } } } return(true); }
public bool SetWaitBuffEnd(EnumBuffLast lastType) { return(this.boostCore.SetWaitBuffEnd(lastType)); }
protected abstract bool OnSetWaitBuffEnd(EnumBuffLast lastType);