125 战斗 吸血反转为伤害&治疗反转成伤害 处理
| | |
| | | break; |
| | | |
| | | case ServerDamageType.SuckHpReverse: |
| | | convertedAttackTypes |= (int)DamageType.Damage; |
| | | convertedAttackTypes |= (int)DamageType.SuckHpReverse; |
| | | break; |
| | | |
| | | case ServerDamageType.SelfHarm: |
| | |
| | | Debug.LogError($"[BattleDmgInfo] 未知的服务器伤害类型: {serverDamageType}({serverValue})"); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | // 如果源类型包含ServerDamageType.DamageReverse:的话 则需要去掉 DamageType.Recovery |
| | | if ((originalAttackTypes & (int)ServerDamageType.DamageReverse) != 0) |
| | | { |
| | | convertedAttackTypes &= ~(int)DamageType.Recovery; |
| | | } |
| | | |
| | | // DOT技能特殊处理(SkillType == 3 或 4) |
| | |
| | | targetDamageList.Add(new BattleDmg |
| | | { |
| | | damage = suckHp, |
| | | attackType = (int)DamageType.SuckHP |
| | | attackType = IsType(DamageType.SuckHpReverse) ? (int)DamageType.Damage : (int)DamageType.SuckHP |
| | | }); |
| | | } |
| | | else |
| | |
| | | casterDamageList.Add(new BattleDmg |
| | | { |
| | | damage = suckHp, |
| | | attackType = (int)DamageType.SuckHP |
| | | attackType = IsType(DamageType.SuckHpReverse) ? (int)DamageType.Damage : (int)DamageType.SuckHP |
| | | }); |
| | | } |
| | | } |
| | |
| | | |
| | | Dodge = 512, //闪避 |
| | | |
| | | DamageReverse = 1024,//伤害反转为治疗 |
| | | DamageReverse = 1024,//治疗反转成伤害 |
| | | |
| | | SuckHpReverse = 2048,//吸血反转为伤害 |
| | | SelfHarm = 4096,//自残 |
| | |
| | | CritHeal = Crit + Recovery, //暴击回血 |
| | | |
| | | CritRealdamage = Crit + Realdamage, //暴击真伤 |
| | | |
| | | SuckHpReverse, //吸血反转为伤害 |
| | | } |
| | | |