| | |
| | | new SlowDown(), |
| | | new FireRateAdd(), |
| | | new SkillLevelUp(), |
| | | new DecreaseWoodChargeTime(), |
| | | new FrostProbabilityAdd(), |
| | | new FrostDamageAdd(), |
| | | new FrostTimeAdd() |
| | | }; |
| | | } |
| | | |
| | |
| | | EndlessBuffData.RemoveFromBuffPool(buff.Config.id); |
| | | |
| | | BuffList.Add(buff); |
| | | EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.PlayBuffPS, buff.Config.get_buff); |
| | | |
| | | |
| | | EndlessBuff endlessBuff = GetBuffInstanceByType((EndlessBuffEffectType)buff.Config.buff_effect[0]); |
| | | |
| | | if (endlessBuff != null) |
| | |
| | | { |
| | | List<EndlessBuffConfig> ret = new List<EndlessBuffConfig>(); |
| | | // 暂且先这么处理吧 如果1:火 2:水 3:木 |
| | | int attributeId = (int)Mathf.Floor(id / 10000f); |
| | | int attributeId = (int)Mathf.Floor(id / 100f); |
| | | |
| | | for (int i = 0; i < BuffList.Count; ++i) |
| | | { |
| | |
| | | |
| | | return instanceList[(int)type - 1]; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 处理PVE无尽模式buff增加的伤害 |
| | | /// </summary> |
| | | /// <param name="finalDamage"></param> |
| | | public float ProcessEndlessBuffAttack(float finalDamage, int elfId) |
| | | { |
| | | List<EndlessBuffConfig> list = EndlessBuffManager.instance.GetBuffListByEffectType(EndlessBuffEffectType.AttackAdd, elfId); |
| | | |
| | | if (list.Count == 0) return 0; |
| | | |
| | | float ratio = 0; |
| | | float add = 0; |
| | | |
| | | for (int i = 0; i < list.Count; ++i) |
| | | { |
| | | ratio += list[i].Config.buff_effect[1]; |
| | | add += list[i].Config.buff_effect[2]; |
| | | } |
| | | |
| | | return finalDamage * (ratio / 100f) + add; |
| | | } |
| | | } |
| | | } |