Beispiel #1
0
 protected Ability(int x, int y, int sizeX, int sizeY, int visualX, int visualY,
                   int visualSizeX, int visualSizeY, int power, AbilityEffectEnum abilityEffect, IUnit caster)
     : base(x, y, sizeX, sizeY)
 {
     VisualX       = visualX;
     VisualY       = visualY;
     VisualSizeX   = visualSizeX;
     VisualSizeY   = visualSizeY;
     this.Power    = power;
     AbilityEffect = abilityEffect;
     this.Caster   = caster;
 }
Beispiel #2
0
        public virtual ReactionTypeEnum ReactToAbility(AbilityEffectEnum abilityEffect)
        {
            switch (abilityEffect)
            {
            case AbilityEffectEnum.DamagingAbility:
                return(ReactionTypeEnum.TakeDamage);

            case AbilityEffectEnum.HealingAbility:
                return(ReactionTypeEnum.TakeHeal);

            case AbilityEffectEnum.BuffingAbility:
                return(ReactionTypeEnum.TakeBuff);

            case AbilityEffectEnum.DebuffingAbility:
                return(ReactionTypeEnum.TakeDebuff);

            case AbilityEffectEnum.DisplacingAbility:
                throw new NotImplementedException("Displacing Ability");

            default:
                throw new ArgumentOutOfRangeException(nameof(abilityEffect), abilityEffect, null);
            }
        }
Beispiel #3
0
 protected MeleeAbility(int x, int y, int sizeX, int sizeY, int visualX, int visualY,
                        int visualSizeX, int visualSizeY, int power, AbilityEffectEnum abilityEffect, IUnit caster)
     : base(x, y, sizeX, sizeY, visualX, visualY, visualSizeX, visualSizeY, power, abilityEffect, caster)
 {
 }