hch
2025-07-08 109af8a8a6be90183cafd2cf2a4e59e445e9aedc
Main/System/Battle/BattleObject/BattleObject.cs
@@ -40,7 +40,11 @@
    protected MotionBase motionBase;
    protected GameObject heroGo;
    public GameObject heroGo
    {
        get;
        private set;
    }
    public BattleObject(BattleField _battleField)
    {
@@ -175,7 +179,7 @@
        return true;
    }
    public virtual void TakeDamage(List<int> damageValues)
    {
        if (IsDead())
@@ -192,6 +196,7 @@
            totalDamage += damage;
        }
        //  扣血
        teamHero.curHp -= totalDamage;
@@ -200,6 +205,7 @@
        // {
        //     OnDeath();
        // }
    }
    //  闪避开始
@@ -251,6 +257,8 @@
        {
            Debug.Log($"Damage: {damage}");
        }
        EventBroadcast.Instance.Broadcast<BattleObject, List<int>>(EventName.BATTLE_DAMAGE_TAKEN, this, damageValues);
    }
    public void PlaySkill(SkillConfig skillConfig, List<Dictionary<int, List<int>>> damageList, Action _onComplete)
@@ -376,9 +384,17 @@
    {
        List<int> damageList = new List<int>();
        int totalDamage = teamHero.attack - obj.teamHero.defense;
        int totalDamage = 100;
        damageList.Add(totalDamage);
        int damage1 = (int)((float)totalDamage * 0.3f);
        int damage2 = (int)((float)totalDamage * 0.25f);
        int damage3 = totalDamage - damage1 - damage2;
        damageList.Add(damage1);
        damageList.Add(damage2);
        damageList.Add(damage3);
        return damageList;
    }