| | |
| | | public List<long> damageList; |
| | | public List<long> suckHpList; |
| | | public List<long> reflectHpList; |
| | | |
| | | public long fromShieldValue; |
| | | public long toShieldValue; |
| | | public long fromHp; |
| | | public long toHp; |
| | | |
| | | public BattleDrops battleDrops; |
| | | public HB427_tagSCUseSkill.tagSCUseSkillHurt hurt; |
| | | public int hitIndex; |
| | |
| | | public SkillConfig skillConfig; |
| | | public long maxHp; |
| | | |
| | | #region Shield Value Calculations |
| | | // 护盾值的变化应该从护盾2开始变化 也就是说 如果护盾2有值 则从护盾2开始变化 否则从护盾1开始变化 |
| | | // 再考虑护盾1 如果护盾1有值 则从护盾1开始变化 否则没有护盾变化 |
| | | // 但是其实可以从总血量下手 也就是说 |
| | | // from护盾值 + from血量 = 表现的开始 |
| | | // to护盾值 + to血量 = 表现的结束 |
| | | // 这样就不需要区分护盾1和护盾2了 只要在表现上做好就行 |
| | | |
| | | public long MaxSheildValue |
| | | public long fromShieldValue; |
| | | public long toShieldValue; |
| | | |
| | | public long fromHp; |
| | | |
| | | public long toHp; |
| | | |
| | | // 未被护盾抵消前的伤害 |
| | | public long totalDamage |
| | | { |
| | | get |
| | | { |
| | | return hurtObj == null ? 0 : hurtObj.teamHero.maxHp; |
| | | long total = 0; |
| | | if (damageList != null) |
| | | { |
| | | foreach (var dmg in damageList) |
| | | { |
| | | total += dmg; |
| | | } |
| | | } |
| | | |
| | | public long phase1FromShieldValue |
| | | { |
| | | get |
| | | { |
| | | if (fromShieldValue > 0) |
| | | { |
| | | return Mathf.Min((int)fromShieldValue, (int)MaxSheildValue); |
| | | } |
| | | else |
| | | { |
| | | return 0; |
| | | return total; |
| | | } |
| | | } |
| | | } |
| | | |
| | | public long phase1ToShieldValue |
| | | { |
| | | get |
| | | { |
| | | if (toShieldValue > 0) |
| | | { |
| | | return Mathf.Min((int)toShieldValue, (int)MaxSheildValue); |
| | | } |
| | | else |
| | | { |
| | | return 0; |
| | | } |
| | | } |
| | | } |
| | | |
| | | public long phase2FromShieldValue |
| | | { |
| | | get |
| | | { |
| | | if (fromShieldValue > MaxSheildValue) |
| | | { |
| | | return fromShieldValue - MaxSheildValue; |
| | | } |
| | | else |
| | | { |
| | | return 0; |
| | | } |
| | | } |
| | | } |
| | | |
| | | public long phase2ToShieldValue |
| | | { |
| | | get |
| | | { |
| | | if (toShieldValue > MaxSheildValue) |
| | | { |
| | | return toShieldValue - MaxSheildValue; |
| | | } |
| | | else |
| | | { |
| | | return 0; |
| | | } |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | } |