From ad8f3a720af874eb125cdde21dced78a93ae7fe3 Mon Sep 17 00:00:00 2001 From: jacob1 Date: Fri, 27 Mar 2015 14:51:30 -0400 Subject: [PATCH] fix crash when shaman exchanges roles with themselves --- modules/wolfgame.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/modules/wolfgame.py b/modules/wolfgame.py index 8b4e5b9..5c81d21 100644 --- a/modules/wolfgame.py +++ b/modules/wolfgame.py @@ -3923,11 +3923,14 @@ def choose_target(actor, nick): # returns true if a swap happened # check for that to short-circuit the nightrole def check_exchange(cli, actor, nick): + #some roles can act on themselves, ignore this + if actor == nick: + return False if nick in var.EXCHANGED: var.EXCHANGED.remove(nick) actor_role = var.get_role(actor) nick_role = var.get_role(nick) - + if actor_role == "amnesiac": actor_role = var.FINAL_ROLES[actor] elif actor_role == "clone": @@ -4047,7 +4050,7 @@ def check_exchange(cli, actor, nick): if nick in var.ALPHA_WOLVES: var.ALPHA_WOLVES.remove(nick) - + var.FINAL_ROLES[actor] = nick_role var.FINAL_ROLES[nick] = actor_role var.ROLES[actor_role].append(nick)