Aura.Channel.Skills.Life.PotionMaking.SkillTraining C# (CSharp) Метод

SkillTraining() защищенный Метод

protected SkillTraining ( Creature creature, Skill skill, ProductionData data, bool success ) : void
creature Aura.Channel.World.Entities.Creature
skill Skill
data ProductionData
success bool
Результат void
		protected override void SkillTraining(Creature creature, Skill skill, ProductionData data, bool success)
		{
			if (skill.Info.Rank == SkillRank.Novice)
			{
				if (data.ItemData.HasTag("/potion/hp/"))
				{
					skill.Train(1); // Attempt to concoct a HP Potion.
					if (success)
						skill.Train(2); // Successful in concocting a HP Potion.
				}

				return;
			}

			if (!success)
				return;

			if (skill.Info.Rank >= SkillRank.RF && skill.Info.Rank <= SkillRank.RE)
			{
				if (data.ItemData.HasTag("/potion/hp/"))
					skill.Train(2); // Successful in concocting a HP Potion.
				else if (data.ItemData.HasTag("/potion/mana/"))
					skill.Train(4); // Successful in concocting an MP Potion.
				else if (data.ItemData.HasTag("/potion/stamina/"))
					skill.Train(6); // Successful in concocting a Stamina Potion.

				return;
			}

			if (skill.Info.Rank >= SkillRank.RD && skill.Info.Rank <= SkillRank.RA)
			{
				if (data.Materials.Any(a => a.Tag == "*/bloodyherb/*"))
					skill.Train(1); // Successful in concocting a potion using a Bloody Herb.

				if (data.Materials.Any(a => a.Tag == "*/sunlightherb/*"))
					skill.Train(2); // Successful in concocting a potion using a Sunlight Herb.

				if (data.Materials.Any(a => a.Tag == "*/manaherb/*"))
					skill.Train(3); // Successful in concocting a potion using a Mana Herb.

				if (data.ItemData.HasTag("/potion/mana/hp/"))
					skill.Train(4); // Successful in concocting a HP & MP Potion.

				if (data.Materials.Any(a => a.Tag == "*/goldenherb/*"))
					skill.Train(5); // Successful in concocting a potion using a Golden Herb.

				if (skill.Info.Rank == SkillRank.RA)
				{
					if (data.Materials.Any(a => a.Tag == "*/whiteherb/*"))
						skill.Train(6); // Successful in concocting a potion using a White Herb.
				}

				return;
			}

			if (skill.Info.Rank == SkillRank.R9)
			{
				if (data.Materials.Any(a => a.Tag == "*/sunlightherb/*"))
					skill.Train(1); // Successful in concocting a potion using a Sunlight Herb.

				if (data.Materials.Any(a => a.Tag == "*/manaherb/*"))
					skill.Train(2); // Successful in concocting a potion using a Mana Herb.

				if (data.ItemData.HasTag("/potion/mana/hp/"))
					skill.Train(3); // Successful in concocting a HP & MP Potion.

				if (data.Materials.Any(a => a.Tag == "*/goldenherb/*"))
					skill.Train(4); // Successful in concocting a potion using a Golden Herb.

				if (data.Materials.Any(a => a.Tag == "*/whiteherb/*"))
					skill.Train(5); // Successful in concocting a potion using a White Herb.

				if (data.Materials.Any(a => a.Tag == "*/mandrake/*"))
					skill.Train(6); // Successful in concocting a potion using a Mandrake.

				return;
			}

			if (skill.Info.Rank == SkillRank.R8)
			{
				if (data.Materials.Any(a => a.Tag == "*/sunlightherb/*"))
					skill.Train(1); // Successful in concocting a potion using a Sunlight Herb.

				if (data.Materials.Any(a => a.Tag == "*/manaherb/*"))
					skill.Train(2); // Successful in concocting a potion using a Mana Herb.

				if (data.Materials.Any(a => a.Tag == "*/goldenherb/*"))
					skill.Train(3); // Successful in concocting a potion using a Golden Herb.

				if (data.ItemData.HasTag("/potion/wound/"))
					skill.Train(4); // Successful in concocting a Wound Remedy Potion.

				if (data.Materials.Any(a => a.Tag == "*/whiteherb/*"))
					skill.Train(5); // Successful in concocting a potion using a White Herb.

				if (data.Materials.Any(a => a.Tag == "*/mandrake/*"))
					skill.Train(6); // Successful in concocting a potion using a Mandrake.

				return;
			}

			if (skill.Info.Rank == SkillRank.R7)
			{
				if (data.Materials.Any(a => a.Tag == "*/manaherb/*"))
					skill.Train(1); // Successful in concocting a potion using a Mana Herb.

				if (data.Materials.Any(a => a.Tag == "*/goldenherb/*"))
					skill.Train(2); // Successful in concocting a potion using a Golden Herb.

				if (data.ItemData.HasTag("/potion/wound/"))
					skill.Train(3); // Successful in concocting a Wound Remedy Potion.

				if (data.Materials.Any(a => a.Tag == "*/whiteherb/*"))
					skill.Train(4); // Successful in concocting a potion using a White Herb.

				if (data.Materials.Any(a => a.Tag == "*/mandrake/*"))
					skill.Train(5); // Successful in concocting a potion using a Mandrake.

				return;
			}

			if (skill.Info.Rank == SkillRank.R6)
			{
				if (data.Materials.Any(a => a.Tag == "*/goldenherb/*"))
					skill.Train(1); // Successful in concocting a potion using a Golden Herb.

				if (data.ItemData.HasTag("/potion/wound/"))
					skill.Train(2); // Successful in concocting a Wound Remedy Potion.

				if (data.Materials.Any(a => a.Tag == "*/whiteherb/*"))
					skill.Train(3); // Successful in concocting a potion using a White Herb.

				if (data.Materials.Any(a => a.Tag == "*/mandrake/*"))
					skill.Train(4); // Successful in concocting a potion using a Mandrake.

				return;
			}

			if (skill.Info.Rank >= SkillRank.R5 && skill.Info.Rank <= SkillRank.R4)
			{
				if (data.ItemData.HasTag("/potion/wound/"))
					skill.Train(1); // Successful in concocting a Wound Remedy Potion.

				if (data.Materials.Any(a => a.Tag == "*/mandrake/*"))
					skill.Train(2); // Successful in concocting a potion using a Mandrake.

				if (data.Materials.Any(a => a.Tag == "*/antidoteherb/*"))
					skill.Train(3); // Successful in concocting a potion using an Antidote Herb.

				return;
			}

			if (skill.Info.Rank >= SkillRank.R3 && skill.Info.Rank <= SkillRank.R1)
			{
				if (data.ItemData.HasTag("/potion/wound/"))
					skill.Train(1); // Successful in concocting a Wound Remedy Potion.

				if (data.Materials.Any(a => a.Tag == "*/mandrake/*"))
					skill.Train(2); // Successful in concocting a potion using a Mandrake.

				if (data.Materials.Any(a => a.Tag == "*/poisonherb/*"))
					skill.Train(3); // Successful in concocting a potion using a Poison Herb.

				return;
			}
		}