private void OnCreatureGathered(CollectEventArgs args)
{
var skill = args.Creature.Skills.Get(SkillId.Herbalism);
if (skill == null) return;
if (skill.Info.Rank == SkillRank.Novice)
{
if (args.CollectData.Target.Contains("/baseherb"))
skill.Train(1); // Try to pick a Base Herb.
if (args.ItemId == 51104)
{
if (args.Success)
skill.Train(2); // Succeed at picking a Base Herb.
}
}
else if (skill.Info.Rank == SkillRank.RF)
{
if (args.CollectData.Target.Contains("/baseherb"))
skill.Train(1); // Try to pick a Base Herb.
else if (args.CollectData.Target.Contains("/bloodyherb"))
skill.Train(3); // Try to pick a Bloody Herb.
else if (args.CollectData.Target.Contains("/sunlightherb"))
skill.Train(5); // Try to pick a Sunlight Herb.
if (args.Success)
{
if (args.ItemId == 51104)
skill.Train(2); // Succeed at picking a Base Herb.
else if (args.ItemId == 51101)
skill.Train(4); // Succeed at picking a Bloody Herb.
else if (args.ItemId == 51103)
skill.Train(6); // Succeed at picking a Sunlight Herb.
}
}
else if (skill.Info.Rank == SkillRank.RE || skill.Info.Rank == SkillRank.RD)
{
if (args.CollectData.Target.Contains("/bloodyherb"))
skill.Train(2); // Try to pick a Bloody Herb.
else if (args.CollectData.Target.Contains("/sunlightherb"))
skill.Train(4); // Try to pick a Sunlight Herb.
else if (args.CollectData.Target.Contains("/manaherb"))
skill.Train(6); // Try to pick a Mana Herb.
else if (args.CollectData.Target.Contains("/goldherb") && skill.Info.Rank == SkillRank.RD)
skill.Train(8); // Try to pick a Golden Herb.
if (args.Success)
{
if (args.ItemId == 51104)
skill.Train(1); // Succeed at picking a Base Herb.
else if (args.ItemId == 51101)
skill.Train(3); // Succeed at picking a Bloody Herb.
else if (args.ItemId == 51103)
skill.Train(5); // Succeed at picking a Sunlight Herb.
else if (args.ItemId == 51102)
skill.Train(7); // Succeed at picking a Mana Herb.
}
}
else if (skill.Info.Rank == SkillRank.RC)
{
if (args.Success)
{
if (args.ItemId == 51104)
skill.Train(1); // Succeed at picking a Base Herb.
else if (args.ItemId == 51101)
skill.Train(2); // Succeed at picking a Bloody Herb.
else if (args.ItemId == 51103)
skill.Train(3); // Succeed at picking a Sunlight Herb.
else if (args.ItemId == 51102)
skill.Train(4); // Succeed at picking a Mana Herb.
else if (args.ItemId == 51105)
skill.Train(5); // Succeed at picking a Golden Herb.
else if (args.ItemId == 51107)
skill.Train(6); // Succeed at picking a White Herb.
}
}
else if (skill.Info.Rank == SkillRank.RB)
{
if (args.CollectData.Target.Contains("/sunlightherb"))
skill.Train(1); // Try to pick a Sunlight Herb.
else if (args.CollectData.Target.Contains("/manaherb"))
skill.Train(3); // Try to pick a Mana Herb.
else if (args.CollectData.Target.Contains("/goldherb"))
skill.Train(5); // Try to pick a Golden Herb.
if (args.Success)
{
if (args.ItemId == 51103)
skill.Train(2); // Succeed at picking a Sunlight Herb.
else if (args.ItemId == 51102)
skill.Train(4); // Succeed at picking a Mana Herb.
else if (args.ItemId == 51105)
skill.Train(6); // Succeed at picking a Golden Herb.
else if (args.ItemId == 51107)
skill.Train(7); // Succeed at picking a White Herb.
}
}
else if (skill.Info.Rank == SkillRank.RA)
{
if (args.CollectData.Target.Contains("/manaherb"))
skill.Train(2); // Try to pick a Mana Herb.
else if (args.CollectData.Target.Contains("/goldherb"))
skill.Train(4); // Try to pick a Golden Herb.
if (args.Success)
{
if (args.ItemId == 51103)
skill.Train(1); // Succeed at picking a Sunlight Herb.
else if (args.ItemId == 51102)
skill.Train(3); // Succeed at picking a Mana Herb.
else if (args.ItemId == 51105)
skill.Train(5); // Succeed at picking a Golden Herb.
else if (args.ItemId == 51107)
skill.Train(6); // Succeed at picking a White Herb.
}
}
else if (skill.Info.Rank == SkillRank.R9)
{
if (args.CollectData.Target.Contains("/manaherb"))
skill.Train(2); // Try to pick a Mana Herb.
if (args.Success)
{
if (args.ItemId == 51103)
skill.Train(1); // Succeed at picking a Sunlight Herb.
else if (args.ItemId == 51102)
skill.Train(3); // Succeed at picking a Mana Herb.
else if (args.ItemId == 51105)
skill.Train(4); // Succeed at picking a Golden Herb.
else if (args.ItemId == 51107)
skill.Train(5); // Succeed at picking a White Herb.
else if (args.ItemId == 51110)
skill.Train(6); // Succeed at picking a Mandrake.
}
}
else if (skill.Info.Rank >= SkillRank.R8 && skill.Info.Rank <= SkillRank.R6)
{
if (args.CollectData.Target.Contains("/orangeherb"))
skill.Train(5); // Try to pick a Mandrake.
if (args.Success)
{
if (args.ItemId == 51103)
skill.Train(1); // Succeed at picking a Sunlight Herb.
else if (args.ItemId == 51102)
skill.Train(2); // Succeed at picking a Mana Herb.
else if (args.ItemId == 51105)
skill.Train(3); // Succeed at picking a Golden Herb.
else if (args.ItemId == 51107)
skill.Train(4); // Succeed at picking a White Herb.
else if (args.ItemId == 51110)
skill.Train(6); // Succeed at picking a Mandrake.
}
}
else if (skill.Info.Rank == SkillRank.R5 || skill.Info.Rank == SkillRank.R4)
{
if (args.CollectData.Target.Contains("/ivoryherb"))
skill.Train(4); // Try to pick an Antidote Herb.
if (args.Success)
{
if (args.ItemId == 51102)
skill.Train(1); // Succeed at picking a Mana Herb.
else if (args.ItemId == 51105)
skill.Train(2); // Succeed at picking a Golden Herb.
else if (args.ItemId == 51110)
skill.Train(3); // Succeed at picking a Mandrake.
else if (args.ItemId == 51108)
skill.Train(5); // Succeed at picking an Antidote Herb.
}
}
else if (skill.Info.Rank >= SkillRank.R3 && skill.Info.Rank <= SkillRank.R1)
{
if (args.CollectData.Target.Contains("/purpleherb"))
skill.Train(3); // Try to pick a Poison Herb.
if (args.Success)
{
if (args.ItemId == 51105)
skill.Train(1); // Succeed at picking a Golden Herb.
else if (args.ItemId == 51110)
skill.Train(2); // Succeed at picking a Mandrake.
else if (args.ItemId == 51109)
skill.Train(4); // Succeed at picking a Poison Herb.
}
}
}
}