예제 #1
0
 protected override DamageInfo _BuildDamageInfo()
 {
     var dmgInfo = new DamageInfo();
     dmgInfo.Targets.Add(target);
     dmgInfo.AddDamage(DamageTypeName.Physical, 2, 1, 2);
     return dmgInfo;
 }
예제 #2
0
        protected override DamageInfo _BuildDamageInfo()
        {
            var rank    = GetSkillRank();
            var minDmg  = GetSkillDataValue <int>(rank, "Min");
            var maxDmg  = GetSkillDataValue <int>(rank, "Max");
            var final   = Random.Range(minDmg, maxDmg + 1);
            var dmgInfo = new DamageInfo();

            dmgInfo.Targets.Add(target);
            dmgInfo.AddDamage(DamageTypeName.Physical, final, minDmg, maxDmg);
            return(dmgInfo);
        }
예제 #3
0
        protected override DamageInfo _BuildDamageInfo()
        {
            var rank = hero.Character.Allocations.GetPoints(Core.Entities.AllocationType.Skill, "Bash");

            rank = Mathf.Max(rank - 1, 0);
            var minDmg  = GetSkillDataValue <int>(rank, "Min");
            var maxDmg  = GetSkillDataValue <int>(rank, "Max");
            var final   = Random.Range(minDmg, maxDmg + 1);
            var dmgInfo = new DamageInfo();

            dmgInfo.Targets.Add(target);
            dmgInfo.AddDamage(DamageTypeName.Physical, final, minDmg, maxDmg);
            return(dmgInfo);
        }
예제 #4
0
        protected override void BeginCast()
        {
            hero.QueueDamage(BuildDamageInfo());

            var buffController = target.GetComponent <BuffController>();

            if (buffController != null)
            {
                var rank = hero.Character.Allocations.GetPoints(Core.Entities.AllocationType.Skill, "Flay");
                rank = Mathf.Max(rank - 1, 0);
                var bleedDamage   = GetSkillDataValue <int>(rank, "BleedDamage");
                var bleedDuration = GetSkillDataValue <int>(rank, "BleedDuration");
                var dmgInfo       = new DamageInfo();
                dmgInfo.AddDamage(DamageTypeName.Bleeding, bleedDamage);
                hero.PostProcessDamage(dmgInfo);
                buffController.AddDamageOverTime(bleedDuration, dmgInfo);
            }
        }