| | |
| | | |
| | | public class BattleObjectBuffMgr |
| | | { |
| | | |
| | | public Action onBuffChanged; |
| | | |
| | | private Dictionary<int/*EffectId*/, KeyValuePair<BattleEffectPlayer, HashSet<uint/*BuffID*/>>> buffEffectDict = new Dictionary<int, KeyValuePair<BattleEffectPlayer, HashSet<uint>>>(); |
| | | |
| | | private Dictionary<uint, HB428_tagSCBuffRefresh> buffDataDict = new Dictionary<uint, HB428_tagSCBuffRefresh>(); |
| | |
| | | |
| | | public void Release() |
| | | { |
| | | |
| | | onBuffChanged = null; |
| | | } |
| | | |
| | | public void Run() |
| | |
| | | buffDataDict.Clear(); |
| | | |
| | | battleObject.heroInfoBar.RefreshBuff(buffDataDict.Values.ToList()); |
| | | onBuffChanged?.Invoke(); |
| | | } |
| | | |
| | | // 删除buff |
| | |
| | | |
| | | // 不做表现 |
| | | battleObject.heroInfoBar.RefreshBuff(buffDataDict.Values.ToList()); |
| | | onBuffChanged?.Invoke(); |
| | | } |
| | | |
| | | // 刷新buff |
| | |
| | | } |
| | | } |
| | | battleObject.heroInfoBar.RefreshBuff(buffDataDict.Values.ToList()); |
| | | onBuffChanged?.Invoke(); |
| | | }); |
| | | if (insert) |
| | | { |
| | |
| | | { |
| | | // 已经存在的buff 刷新 |
| | | battleObject.heroInfoBar.RefreshBuff(buffDataDict.Values.ToList()); |
| | | onBuffChanged?.Invoke(); |
| | | } |
| | | } |
| | | |