From dcabf4cb176f37007bb9688d58f31381172d0516 Mon Sep 17 00:00:00 2001
From: dg <dg@51575b47-30f0-44d4-a5cc-537603b46e54>
Date: Wed, 12 Dec 2012 22:49:37 +0000
Subject: [PATCH] New achievement for saving all escorts

git-svn-id: http://svn.net-core.org/repos/t-engine4@6062 51575b47-30f0-44d4-a5cc-537603b46e54
---
 game/modules/tome/data/achievements/kills.lua | 12 ++++++++++++
 game/modules/tome/data/quests/escort-duty.lua |  1 +
 2 files changed, 13 insertions(+)

diff --git a/game/modules/tome/data/achievements/kills.lua b/game/modules/tome/data/achievements/kills.lua
index 2d74ac7bc6..9e9cd8ef80 100644
--- a/game/modules/tome/data/achievements/kills.lua
+++ b/game/modules/tome/data/achievements/kills.lua
@@ -115,6 +115,18 @@ newAchievement{
 	track = function(self) return tstring{tostring(self.nb or 0)," / 9"} end,
 }
 
+newAchievement{
+	name = "Guiding Hand", id = "ESCORT_SAVED",
+	show = "full",
+	desc = [[Saved all escorted adventurers.]],
+	mode = "player",
+	can_gain = function(self, who, target)
+		self.nb = (self.nb or 0) + 1
+		if self.nb >= 9 then return true end
+	end,
+	track = function(self) return tstring{tostring(self.nb or 0)," / 9"} end,
+}
+
 newAchievement{
 	name = "Earth Master", id = "GEOMANCER",
 	show = "name",
diff --git a/game/modules/tome/data/quests/escort-duty.lua b/game/modules/tome/data/quests/escort-duty.lua
index 1c55e4364d..0e2ef50865 100644
--- a/game/modules/tome/data/quests/escort-duty.lua
+++ b/game/modules/tome/data/quests/escort-duty.lua
@@ -398,6 +398,7 @@ on_grant = function(self, who)
 		game.player:setQuestStatus(who.quest_id, engine.Quest.DONE)
 		local Chat = require "engine.Chat"
 		Chat.new("escort-quest", who, game.player, {npc=who}):invoke()
+		world:gainAchievement("ESCORT_SAVED", game.player)
 		who:disappear()
 		who:removed()
 		game.party:removeMember(who, true)
-- 
GitLab