예제 #1
0
        public Aura(IAbility ability, ICharacter source, AuraModifiers modifier, int amount, AmountOperators amountOperator, int totalSeconds)
        {
            StartTime = DependencyContainer.Instance.GetInstance <IServer>().CurrentTime;

            Ability        = ability;
            Source         = source;
            Modifier       = modifier;
            Amount         = amount;
            AmountOperator = amountOperator;
            TotalSeconds   = totalSeconds;
        }
예제 #2
0
        public PeriodicAura(IAbility ability, PeriodicAuraTypes auraType, ICharacter source, int amount, AmountOperators amountOperator, bool tickVisible, int tickDelay, int totalTicks)
        {
            _startTime       = DependencyContainer.Instance.GetInstance <IServer>().CurrentTime;
            _lastTickElapsed = DependencyContainer.Instance.GetInstance <IServer>().CurrentTime;

            Ability        = ability;
            AuraType       = auraType;
            Source         = source;
            Amount         = amount;
            AmountOperator = amountOperator;
            TickVisible    = tickVisible;
            TickDelay      = tickDelay;
            TicksLeft      = totalTicks;
            TotalTicks     = totalTicks;
        }
예제 #3
0
파일: Ability.cs 프로젝트: csecong/Mud.Net
        }                                           // IReadOnlyCollection

        #endregion

        public Ability(int id, string name, AbilityTargets target, AbilityBehaviors behavior, AbilityKinds kind, ResourceKinds resourceKind, AmountOperators costType, int costAmount, int globalCooldown, int cooldown, int duration, SchoolTypes school, AbilityMechanics mechanic, DispelTypes dispelType, AbilityFlags flags, params AbilityEffect[] effects)
        {
            Id             = id;
            Name           = name;
            Target         = target;
            Behavior       = behavior;
            Kind           = kind;
            ResourceKind   = resourceKind;
            CostType       = costType;
            CostAmount     = costAmount;
            GlobalCooldown = globalCooldown;
            Cooldown       = cooldown;
            Duration       = duration;
            School         = school;
            Mechanic       = mechanic;
            DispelType     = dispelType;
            Flags          = flags;
            Effects        = effects?.ToList();
        }
예제 #4
0
 public IPeriodicAura AddPeriodicAura(ICharacter victim, IAbility ability, ICharacter source, SchoolTypes school, int amount, AmountOperators amountOperator, bool tickVisible, int tickDelay, int totalTicks)
 {
     throw new NotImplementedException();
 }
예제 #5
0
 public IAura AddAura(ICharacter victim, IAbility ability, ICharacter source, AuraModifiers modifier, int amount, AmountOperators amountOperator, int totalSeconds, bool visible)
 {
     throw new NotImplementedException();
 }
예제 #6
0
        public IPeriodicAura AddPeriodicAura(ICharacter victim, IAbility ability, ICharacter source, SchoolTypes school, int amount, AmountOperators amountOperator, bool tickVisible, int tickDelay, int totalTicks)
        {
            IPeriodicAura periodicAura = new PeriodicAura(ability, PeriodicAuraTypes.Damage, source, school, amount, amountOperator, tickVisible, tickDelay, totalTicks);

            victim.AddPeriodicAura(periodicAura);
            return(periodicAura);
        }
예제 #7
0
        public IAura AddAura(ICharacter victim, IAbility ability, ICharacter source, AuraModifiers modifier, int amount, AmountOperators amountOperator, int totalSeconds, bool recompute)
        {
            IAura aura = new Aura.Aura(ability, source, modifier, amount, amountOperator, totalSeconds);

            victim.AddAura(aura, recompute);
            return(aura);
        }
예제 #8
0
 public PeriodicAura(IAbility ability, PeriodicAuraTypes auraType, ICharacter source, SchoolTypes school, int amount, AmountOperators amountOperator, bool tickVisible, int tickDelay, int totalTicks)
     : this(ability, auraType, source, amount, amountOperator, tickVisible, tickDelay, totalTicks)
 {
     School = school;
 }
예제 #9
0
 public AuraAbilityEffect(AuraModifiers modifier, int amount, AmountOperators op)
 {
     Modifier       = modifier;
     Amount         = amount;
     AmountOperator = op;
 }