public static void OnHeroHealedWhileWaiting(MobileParty mobileParty, int healingAmount)
{
float num = (float)Campaign.Current.Models.PartyHealingModel.GetSkillXpFromHealingTroop(mobileParty.Party);
num = num * (float)healingAmount * 0.01f;
SkillLevelingManager.OnPartySkillExercised(mobileParty, DefaultSkills.Medicine, num, SkillEffect.PerkRole.Surgeon);
}
public static void OnRegularTroopHealedWhileWaiting(MobileParty mobileParty, int troopCount)
{
float skillXp = (float)(Campaign.Current.Models.PartyHealingModel.GetSkillXpFromHealingTroop(mobileParty.Party) * troopCount);
SkillLevelingManager.OnPartySkillExercised(mobileParty, DefaultSkills.Medicine, skillXp, SkillEffect.PerkRole.Surgeon);
}
public override int GetSkillXpFromHealingTroop(PartyBase party)
{
return 10;
}
{
float num = (float)Campaign.Current.Models.PartyHealingModel.GetSkillXpFromHealingTroop(mobileParty.Party);
num = num * (float)healingAmount * 0.01f;
SkillLevelingManager.OnPartySkillExercised(mobileParty, DefaultSkills.Medicine, num, SkillEffect.PerkRole.Surgeon);
}
public static void OnRegularTroopHealedWhileWaiting(MobileParty mobileParty, int troopCount)
{
float skillXp = (float)(Campaign.Current.Models.PartyHealingModel.GetSkillXpFromHealingTroop(mobileParty.Party) * troopCount);
SkillLevelingManager.OnPartySkillExercised(mobileParty, DefaultSkills.Medicine, skillXp, SkillEffect.PerkRole.Surgeon);
}
public override int GetSkillXpFromHealingTroop(PartyBase party)
{
return 10;
}
(speculations)
For a Hero that has 0hp, the Surgeon/MainHero gets:
10x100?x0,01 = 10XP (without any multiplier factor=Learning Rate factor)
For 20 wounded Troops, the Surgeon/MainHero gets:
20x10=200XP (without any multiplier factor=Learning Rate factor)
Because both Methods are named "WhileWaiting" i think it will be only applied by waiting in town or stand still on Campaign map.
This Method seems only to be used by Simulated Battles
public static void OnSurgeryApplied(MobileParty party, float surgeryFactor)
{
SkillLevelingManager.OnPartySkillExercised(party, DefaultSkills.Medicine, (float)MBMath.Round(10f * surgeryFactor), SkillEffect.PerkRole.Surgeon);
}
{
SkillLevelingManager.OnPartySkillExercised(party, DefaultSkills.Medicine, (float)MBMath.Round(10f * surgeryFactor), SkillEffect.PerkRole.Surgeon);
}
Now we wanna hit the Medicine 275skill..... has someone an idea how? I would like to hear your suggestions since the Learning Rate factor will decrease. So we can give feedback to the TW devs.
Btw i haven´t found any Method for Medicine where it lvls up while traveling.
Last edited: