public BasicTimedDamageInfo(DamageTyp damageTyp, float damage, float runTime, float frequency, AddingBehaivior addingBehaivior)
 {
     this.damageTyp       = damageTyp;
     this.damage          = damage;
     this.runTime         = runTime;
     this.frequency       = frequency;
     this.addingBehaivior = addingBehaivior;
 }
示例#2
0
    public int[] GetDamage(DamageTyp typ, int value = 0)
    {
        var result = new int[2];

        switch (typ)
        {
        case DamageTyp.耐力:
            result[0] = Hp;
            Hp       -= value;
            result[1] = Hp;
            if (Hp <= 0)
            {
                Status = BattlerStatus.耐力;
            }
            break;

        case DamageTyp.斗性:
            result[0] = Sp;
            Sp       -= value;
            result[1] = Sp;
            if (Sp <= 0)
            {
                Status = BattlerStatus.斗性;
            }
            break;

        case DamageTyp.耐久:
            result[0]   = Durability;
            Durability -= value;
            result[1]   = Durability;
            if (Durability <= 0)
            {
                Status = BattlerStatus.耐久;
            }
            break;

        case DamageTyp.属性:
            AddInjury();
            break;
        }
        return(result);
    }
        public static ConflictResolve StandartDamageTypEliminates(DamageTyp typ1, DamageTyp typ2)
        {
            switch (typ1)
            {
            case DamageTyp.Water:
                switch (typ2)
                {
                case DamageTyp.Fire:
                    return(ConflictResolve.Substract);

                default:
                    return(ConflictResolve.DoNothing);
                }

            case DamageTyp.Healing:
                return(ConflictResolve.EliminateOther);

            default:
                return(ConflictResolve.DoNothing);
            }
        }
 public override ConflictResolve DamageTypEliminates(DamageTyp typ2)
 {
     return(StandartDamageTypEliminates(damageTyp, typ2));
 }
 public BasicDamageInfo(DamageTyp damageTyp, float damage)
 {
     this.damageTyp = damageTyp;
     this.damage    = damage;
 }
 public abstract ConflictResolve DamageTypEliminates(DamageTyp typ2);