예제 #1
0
    public void Init(HeroContainer _heroContainer, int _id, float _buffTime)
    {
        heroContainer = _heroContainer;

        csv = StaticData.GetData <BuffCsv> (_id);

        buffText.text = csv.buffName;

        img.color = csv.harm ? Color.red : Color.green;

        buffTime = _buffTime;

        BuffAdd();
    }
예제 #2
0
    public void Hit()
    {
        if (isBlood > 0)
        {
            BeDamageWithoutFix((int)(hp * BattleConstData.BLOOD_VALUE));
        }

        HitCsv hitCsv = StaticData.GetData <HitCsv> (csv.hitID[nextHitIndex]);

        float fix = 1 + (combo * BattleConstData.COMBO_VALUE);

        battleControl.BeDamage(index, (int)(hitCsv.damage * fix));

        if (hitCsv.interrupt)
        {
            battleControl.BeInterrupt(index);
        }

        for (int i = 0; i < hitCsv.buff.Length; i++)
        {
            BuffCsv buffCsv = StaticData.GetData <BuffCsv>(hitCsv.buff[i]);

            if (buffCsv.harm)
            {
                battleControl.AddBuff(index, buffCsv.ID, hitCsv.buffTime[i]);
            }
            else
            {
                AddBuff(buffCsv.ID, hitCsv.buffTime[i]);
            }
        }

        nextHitIndex++;

        SetNextHitPercent();
    }