Aura.Channel.Scripting.Scripts.QuestScript.OnPlayerUsedSkill C# (CSharp) Метод

OnPlayerUsedSkill() приватный Метод

Updates UseSkill objectives.
private OnPlayerUsedSkill ( Creature creature, Skill skill ) : void
creature Aura.Channel.World.Entities.Creature
skill Aura.Channel.Skills.Skill
Результат void
		private void OnPlayerUsedSkill(Creature creature, Skill skill)
		{
			if (creature == null || skill == null)
				return;

			var quests = creature.Quests.GetAllIncomplete(this.Id);
			foreach (var quest in quests)
			{
				if (!this.CanMakeProgress(creature, quest))
					continue;

				var progress = quest.CurrentObjectiveOrLast;
				if (progress == null) return;

				var objective = this.Objectives[progress.Ident];
				if (objective == null || objective.Type != ObjectiveType.UseSkill) return;

				var useSkillObjective = (objective as QuestObjectiveUseSkill);
				if (!progress.Done && skill.Info.Id == useSkillObjective.Id)
				{
					quest.SetDone(progress.Ident);
					UpdateQuest(creature, quest);
				}
			}
		}