护甲伤害

This commit is contained in:
GL 2024-12-29 17:44:10 +08:00
parent 44483bcb6a
commit 6426d91be8

View File

@ -568,6 +568,7 @@ public class Role : Fun
} }
hurt *= (1 + WuxingDamage(Target.gameObject.GetComponent<enemy>()));//计算五行属性伤害 hurt *= (1 + WuxingDamage(Target.gameObject.GetComponent<enemy>()));//计算五行属性伤害
hurt *= HujiaDamage(Target.gameObject.GetComponent<enemy>());//计算破甲伤害
if (GetComponent<enemy>()) if (GetComponent<enemy>())
{ {
GetComponent<enemy>().HarmNumber += Mathf.Round(hurt); GetComponent<enemy>().HarmNumber += Mathf.Round(hurt);
@ -601,8 +602,31 @@ public class Role : Fun
// 如果是正数,表示加成,增加伤害 // 如果是正数,表示加成,增加伤害
// 如果是负数,表示减成,减少伤害 // 如果是负数,表示减成,减少伤害
UnityEngine.Debug.Log("属性关系:"+"萌妖"+ GetComponent<enemy>().elementType+"::"+"敌人"+ Target.elementType+"伤害加成"+relation); // UnityEngine.Debug.Log("属性关系:"+"萌妖"+ GetComponent<enemy>().elementType+"::"+"敌人"+ Target.elementType+"伤害加成"+relation);
return relation; return relation;
} }
public float HujiaDamage(enemy Target)//护甲伤害计算 返回倍率减伤或增加伤害
{
// 克制关系表(使用二维数组表示,行表示攻击类型,列表示防御类型)
float[,] attackDefenseRelations = new float[5, 4]
{
// 轻甲 重甲 魔盾 灵体
{ 1f, 0.5f, 1f, 0.35f }, // 普通攻击
{ 0.6f, 1.5f, 1f, 0.35f }, // 破甲攻击
{ 1.5f, 0.75f, 1f, 0.35f }, // 刺穿攻击
{ 1.25f, 1.5f, 0.5f, 2f }, // 魔法攻击
{ 1f, 1f, 1f, 1f } // 真实攻击
};
// 获取克制关系
float relation = attackDefenseRelations[int.Parse(AttackType), (int)Target.defenseType];
// 如果是正数,表示加成,增加伤害
// 如果是负数,表示减成,减少伤害
//UnityEngine.Debug.Log("破甲关系:" + "萌妖" + AttackType + "::" + "敌人" + Target.defenseType + "伤害加成" + relation);
return relation;
}
} }