public bool GiveUp(Quest quest)
{
if (!this.Has(quest))
throw new ArgumentException("Quest not found in this manager.");
var success = this.EndQuest(quest, -1, false);
// Remove quest item on success, which will also remove the
// quest from the manager.
if (success)
{
quest.State = QuestState.Complete;
_creature.Inventory.Remove(quest.QuestItem);
}
return success;
}