From d66624e7bdbe3975f65e9a3aed4e303c081ea426 Mon Sep 17 00:00:00 2001 From: FalseIncarnate Date: Sat, 27 Feb 2016 11:06:42 -0500 Subject: [PATCH] Prize Counter and Toy Fixes Prize counters now spend your tickets when you purchase something - Had removed the ticket spending during my testing, forgot to re-add it before submit Toy Crossbows now properly display the name of their user when they "start scrounging for ammo" Water balloons can now be filled from sinks, ANY reagent dispenser structure (not just watertanks), and drinking glasses in addition to beakers and buckets. - Watch out for security hurling pepper-spray balloons! --- code/game/objects/items/toys.dm | 14 +++++++++++--- code/modules/arcade/prize_datums.dm | 1 + 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 57bcd3d1625..64bc3e61181 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -49,15 +49,23 @@ /obj/item/toy/balloon/afterattack(atom/A as mob|obj, mob/user as mob, proximity) if(!proximity) return - if (istype(A, /obj/structure/reagent_dispensers/watertank) && get_dist(src,A) <= 1) + if (istype(A, /obj/structure/reagent_dispensers) && get_dist(src,A) <= 1) A.reagents.trans_to(src, 10) user << "You fill the balloon with the contents of [A]." desc = "A translucent balloon with some form of liquid sloshing around in it." update_icon() return +/obj/item/toy/balloon/wash(mob/user, atom/source) + if(reagents.total_volume < 10) + reagents.add_reagent("water", min(10-reagents.total_volume, 10)) + user << "You fill the balloon from the [source]." + desc = "A translucent balloon with some form of liquid sloshing around in it." + update_icon() + return + /obj/item/toy/balloon/attackby(obj/O as obj, mob/user as mob, params) - if(istype(O, /obj/item/weapon/reagent_containers/glass)) + if(istype(O, /obj/item/weapon/reagent_containers/glass) || istype(O, /obj/item/weapon/reagent_containers/food/drinks/drinkingglass)) if(O.reagents) if(O.reagents.total_volume < 1) user << "The [O] is empty." @@ -200,7 +208,7 @@ return else if (bullets == 0) user.Weaken(5) - user.visible_message("[] realized they were out of ammo and starting scrounging for some!") + user.visible_message("[user] realized they were out of ammo and starting scrounging for some!") diff --git a/code/modules/arcade/prize_datums.dm b/code/modules/arcade/prize_datums.dm index 879efe1c3ce..0cd3c308330 100644 --- a/code/modules/arcade/prize_datums.dm +++ b/code/modules/arcade/prize_datums.dm @@ -16,6 +16,7 @@ var/global/datum/prizes/global_prizes = new return 0 if(prize_counter.tickets >= item.cost) new item.typepath(prize_counter.loc) + prize_counter.tickets -= item.cost prize_counter.visible_message("Enjoy your prize!") return 1 else