Esempio n. 1
0
        public override void ChangeModifierConfig(ConfigAbilityModifier modifier)
        {
            AvatarTiedMixin element = new AvatarTiedMixin {
                UntieSteerAmount = this.UntieSteerAmount
            };

            Miscs.ArrayAppend <ConfigAbilityMixin>(ref modifier.ModifierMixins, element);
        }
Esempio n. 2
0
        public override void ChangeModifierConfig(ConfigAbilityModifier modifier)
        {
            ModifyDamageByAttackeeMixin element = new ModifyDamageByAttackeeMixin {
                AddedDamageTakeRatio = this.TakeExtraDamageRatio,
                Predicates           = new ConfigAbilityPredicate[0]
            };

            Miscs.ArrayAppend <ConfigAbilityMixin>(ref modifier.ModifierMixins, element);
        }
Esempio n. 3
0
        public override void ChangeModifierConfig(ConfigAbilityModifier modifier)
        {
            modifier.ThinkInterval = this.BleedCD;
            DamageByAttackValue element = new DamageByAttackValue {
                Target           = AbilityTargetting.Self,
                DamagePercentage = this.DamagePercentage,
                AddedDamageValue = this.BleedDamage
            };

            Miscs.ArrayAppend <ConfigAbilityAction>(ref modifier.OnThinkInterval, element);
        }
Esempio n. 4
0
 public override void ChangeModifierConfig(ConfigAbilityModifier modifier)
 {
     modifier.Properties.Add("Animator_MoveSpeedRatio", this.MoveSpeedRatio);
 }
Esempio n. 5
0
 public override void ChangeModifierConfig(ConfigAbilityModifier modifier)
 {
     modifier.Properties.Add("Actor_CriticalChanceDelta", this.CritChanceDelta);
 }
Esempio n. 6
0
 public override void ChangeModifierConfig(ConfigAbilityModifier modifier)
 {
     modifier.Properties.Add("Entity_AttackSpeed", this.AttackSpeedRatio);
 }
Esempio n. 7
0
 public override void ChangeModifierConfig(ConfigAbilityModifier modifier)
 {
     modifier.Properties.Add("Actor_AddedAttackRatio", this.AttackRatio);
     modifier.Properties.Add("Actor_AniDamageDelta", this.AniDamageRatio);
 }
Esempio n. 8
0
 public abstract void ChangeModifierConfig(ConfigAbilityModifier modifier);
Esempio n. 9
0
 public void OnLoaded()
 {
     if (this.AbilitySpecials != ConfigDynamicArguments.EMPTY)
     {
         List <string> list = new List <string>(this.AbilitySpecials.Keys);
         foreach (string str in list)
         {
             if (this.AbilitySpecials[str] is int)
             {
                 this.AbilitySpecials[str] = (int)this.AbilitySpecials[str];
             }
         }
     }
     foreach (KeyValuePair <string, ConfigAbilityModifier> pair in this.Modifiers)
     {
         pair.Value.ModifierName = pair.Key;
         ConfigAbilityModifier modifier = pair.Value;
         if ((AbilityState.Undamagable | AbilityState.MaxMoveSpeed | AbilityState.Immune | AbilityState.CritUp | AbilityState.Shielded | AbilityState.PowerUp | AbilityState.AttackSpeedUp | AbilityState.MoveSpeedUp | AbilityState.Endure).ContainsState(modifier.State))
         {
             modifier.IsBuff = true;
         }
         else if ((AbilityState.Tied | AbilityState.TargetLocked | AbilityState.Fragile | AbilityState.Weak | AbilityState.AttackSpeedDown | AbilityState.MoveSpeedDown | AbilityState.Frozen | AbilityState.Poisoned | AbilityState.Burn | AbilityState.Paralyze | AbilityState.Stun | AbilityState.Bleed).ContainsState(modifier.State))
         {
             modifier.IsDebuff = true;
         }
         if (modifier.IsBuff)
         {
             if (modifier.Stacking == ConfigAbilityModifier.ModifierStacking.Unique)
             {
                 modifier.Stacking = ConfigAbilityModifier.ModifierStacking.Refresh;
             }
         }
         else if (modifier.IsDebuff)
         {
         }
         if ((modifier.State != AbilityState.None) && (modifier.StateOption != null))
         {
             modifier.StateOption.ChangeModifierConfig(modifier);
         }
     }
     if (this.DefaultModifier != null)
     {
         if (this.Modifiers == EMPTY_MODIFIERS)
         {
             this.Modifiers = new Dictionary <string, ConfigAbilityModifier>();
         }
         this.DefaultModifier.ModifierName = "__DEFAULT_MODIFIER";
         this.Modifiers.Add("__DEFAULT_MODIFIER", this.DefaultModifier);
         List <ConfigAbilityAction> list2 = new List <ConfigAbilityAction>(this.OnAdded);
         ApplyModifier item = new ApplyModifier {
             ModifierName = "__DEFAULT_MODIFIER",
             Target       = AbilityTargetting.Caster
         };
         list2.Insert(0, item);
         this.OnAdded         = list2.ToArray();
         this.DefaultModifier = null;
     }
     this.InvokeSites = new List <BaseActionContainer>();
     this.AddSubActions(this.OnAdded);
     this.AddSubActions(this.OnRemoved);
     this.AddSubActions(this.OnAbilityStart);
     this.AddSubActions(this.OnKilled);
     this.AddSubActions(this.OnDestroy);
     this.AddSubActions(this.OnFieldEnter);
     this.AddSubActions(this.OnFieldExit);
     this.AddMixins(this.AbilityMixins);
     string[] array = new string[this.Modifiers.Count];
     this.Modifiers.Keys.CopyTo(array, 0);
     Array.Sort <string>(array);
     this.ModifierIDMap = new ConfigAbilityModifier[array.Length];
     for (int i = 0; i < array.Length; i++)
     {
         ConfigAbilityModifier modifier2 = this.Modifiers[array[i]];
         modifier2.localID     = i;
         this.ModifierIDMap[i] = modifier2;
         this.AddSubActions(modifier2.OnAdded);
         this.AddSubActions(modifier2.OnRemoved);
         this.AddSubActions(modifier2.OnBeingHit);
         this.AddSubActions(modifier2.OnBeingHitResolved);
         this.AddSubActions(modifier2.OnAttackLanded);
         this.AddSubActions(modifier2.OnThinkInterval);
         this.AddSubActions(modifier2.OnEvadeStart);
         this.AddSubActions(modifier2.OnEvadeSuccess);
         this.AddSubActions(modifier2.OnMonsterCreated);
         this.AddSubActions(modifier2.OnAvatarCreated);
         this.AddSubActions(modifier2.OnKilled);
         this.AddMixins(modifier2.ModifierMixins);
     }
 }
Esempio n. 10
0
 public override void ChangeModifierConfig(ConfigAbilityModifier modifier)
 {
     modifier.Properties.Add("Actor_DefenceRatio", this.DefenceRatio);
     modifier.Properties.Add("Actor_AniDefenceDelta", this.AniDefenceRatio);
 }