예제 #1
0
        private void CheckForWeaponTraining()
        {
            if (AdvancedWeaponTraining.WieldsWeaponFromFighterGroup(base.Owner, WeaponTraining))
            {
                int WeaponTrainingValue = AdvancedWeaponTraining.GetWeaponTrainingRank(base.Owner, WeaponTraining);

                int acBonus = 1;
                if (WeaponTrainingValue >= 4)
                {
                    acBonus += 1;
                }

                int weaponEnhancementBonus = AdvancedWeaponTraining.GetWeaponEnhancementBonus(base.Owner);
                acBonus += weaponEnhancementBonus / 2;

                if (OldValue != acBonus)
                {
                    Deactivate();
                    Activate(acBonus);
                }
            }
            else
            {
                Deactivate();
            }
        }
예제 #2
0
 private void CheckForWeaponTraining()
 {
     if (AdvancedWeaponTraining.WieldsWeaponFromFighterGroup(base.Owner, WeaponTraining))
     {
         int newValue = AdvancedWeaponTraining.GetWeaponTrainingRank(base.Owner, WeaponTraining);
         if (OldValue != newValue)
         {
             Deactivate();
             Activate(newValue);
         }
     }
     else
     {
         Deactivate();
     }
 }
예제 #3
0
 private void ManageModifier()
 {
     if (AdvancedWeaponTraining.WieldsWeaponFromFighterGroup(base.Owner, WeaponTraining))
     {
         int value = AdvancedWeaponTraining.GetWeaponTrainingRank(base.Owner, WeaponTraining);
         if (Modifier == null || Modifier.ModValue != value)
         {
             Deactivate();
             Activate(value);
         }
     }
     else
     {
         if (Modifier != null)
         {
             base.Owner.Stats.SaveReflex.RemoveModifier(Modifier);
         }
     }
 }
            private static bool Prefix(BlueprintAbilityResource __instance, UnitDescriptor unit, ref int __result)
            {
                if (__instance.GetType() == typeof(WarriorSpiritPoolLogic))
                {
                    __result = 0;
                    if (unit.Progression.GetClassLevel(Helpers.fighterClass) >= 5)
                    {
                        int basePool = 1;

                        int weaponTrainingValue = AdvancedWeaponTraining.GetWeaponTrainingRank(unit, ((WarriorSpiritPoolLogic)__instance).WeaponTraining);

                        __result = basePool + weaponTrainingValue;
                    }

                    return(false);
                }

                return(true);
            }