From e864f4d3b84c1efe09175652a9830dddbc0bd6a5 Mon Sep 17 00:00:00 2001 From: j-p-e-g Date: Sun, 30 Dec 2007 20:31:38 +0000 Subject: A completely reworked version of Zin as per the lengthy discussion in October/November. Zin effects: - protection from harm (like all good gods) - feeding when starving (as before) - mutation resistance (chance of piety/200) Zin restrictions: - no cannibalism (like all good gods) - no attacking friends - no eating of intelligent beings' corpses - no deliberate mutating Zin invocations: - Smiting (general priestly ability?) - Revitalisation (Minor Healing + 5 mp) - Sanctuary (protection from attacks) git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3164 c06c8d41-db1a-0410-9941-cceddc491573 --- crawl-ref/source/fight.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'crawl-ref/source/fight.cc') diff --git a/crawl-ref/source/fight.cc b/crawl-ref/source/fight.cc index df3bf61b6a..1019d862a0 100644 --- a/crawl-ref/source/fight.cc +++ b/crawl-ref/source/fight.cc @@ -3645,7 +3645,13 @@ bool you_attack(int monster_attacked, bool unarmed_attacks) // check if the player is fighting with something unsuitable wielded_weapon_check(attk.weapon); - return attk.attack(); + bool attack = attk.attack(); + if (attack && (is_sanctuary(you.x_pos, you.y_pos) + || is_sanctuary(defender->x, defender->y))) + { + remove_sanctuary(true); + } + return attack; } // Lose attack energy for attacking with a weapon. The monster has already lost -- cgit v1.2.3-54-g00ecf