public virtual void AddSkillEffect(ISkillEffect effct) { ISkillEffect old = this.effects[effct.GetSource()]; if (old == null || old.GetLevel() <= effct.GetLevel()) { this.effects[effct.GetSource()] = effct; this.key = effct.GetKey(); this.timeMap[GetEffectKey(effct)] = Runtime.CurrentTimeMillis(); } }
public virtual void RemoveEffect(ISkillEffect effect) { long source = effect.GetSource(); string key = effect.GetKey(); RemoveEffect(source, key); }
private string GetEffectKey(ISkillEffect effct) { return(effct.GetKey() + "_" + effct.GetSource() + "_" + effct.GetLevel()); }