From 59edd0f0d8b4570387835c477bb2a18af6efaab5 Mon Sep 17 00:00:00 2001 From: ZomgPonies Date: Sat, 14 Nov 2015 10:55:56 -0500 Subject: [PATCH] Fixes bug allowing player to multiclick WG --- code/game/machinery/wishgranter.dm | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/code/game/machinery/wishgranter.dm b/code/game/machinery/wishgranter.dm index b2d131cc274..8f662dab107 100644 --- a/code/game/machinery/wishgranter.dm +++ b/code/game/machinery/wishgranter.dm @@ -9,6 +9,7 @@ density = 1 var/datum/mind/target var/list/types = list() + var/inuse = 0 /obj/machinery/wish_granter/New() for(var/supname in all_superheroes) @@ -24,22 +25,30 @@ else if(is_special_character(user)) user << "Even to a heart as dark as yours, you know nothing good will come of this. Something instinctual makes you pull away." + return + + else if(inuse) + user << "Someone is already communing with the Wish Granter." + return else user << "The power of the Wish Granter have turned you into the superhero the station deserves. You are a masked vigilante, and answer to no man. Will you use your newfound strength to protect the innocent, or will you hunt the guilty?" - + inuse = 1 var/wish if(types.len == 1) wish = pick(types) else wish = input("You want to become...","Wish") as null|anything in types - if(!wish) return + if(!wish) + inuse=0 + return types -= wish var/mob/living/carbon/human/M = user var/datum/superheroes/S = all_superheroes[wish] if(S) S.create(M) + inuse=0 //Remove the wishgranter or teleport it randomly on the station if(!types.len)