private void OnPlayerEquipsItem(Creature creature, Item item)
{
if (creature == null || !creature.IsPlayer || item == null || !item.Info.Pocket.IsEquip())
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.Equip) return;
var equipObjective = (objective as QuestObjectiveEquip);
if (!progress.Done && item.HasTag(equipObjective.Tag))
{
quest.SetDone(progress.Ident);
UpdateQuest(creature, quest);
}
}
}