/obj/machinery/prize_counter name = "Prize Counter" desc = "A machine which exchanges tickets for a variety of fabulous prizes!" icon = 'icons/obj/arcade.dmi' icon_state = "prize_counter-on" density = 1 anchored = 1 use_power = IDLE_POWER_USE idle_power_usage = 40 var/tickets = 0 /obj/machinery/prize_counter/New() ..() component_parts = list() component_parts += new /obj/item/circuitboard/prize_counter(null) component_parts += new /obj/item/stock_parts/matter_bin(null) component_parts += new /obj/item/stock_parts/manipulator(null) component_parts += new /obj/item/stack/cable_coil(null, 1) component_parts += new /obj/item/stack/sheet/glass(null) RefreshParts() /obj/machinery/prize_counter/update_icon() if(stat & BROKEN) icon_state = "prize_counter-broken" else if(panel_open) icon_state = "prize_counter-open" else if(stat & NOPOWER) icon_state = "prize_counter-off" else icon_state = "prize_counter-on" return /obj/machinery/prize_counter/attackby(var/obj/item/O as obj, var/mob/user as mob, params) if(istype(O, /obj/item/stack/tickets)) var/obj/item/stack/tickets/T = O if(user.unEquip(T)) //Because if you can't drop it for some reason, you shouldn't be increasing the tickets var tickets += T.amount qdel(T) else to_chat(user, "\The [T] seems stuck to your hand!") return if(istype(O, /obj/item/screwdriver) && anchored) playsound(src.loc, O.usesound, 50, 1) panel_open = !panel_open to_chat(user, "You [panel_open ? "open" : "close"] the maintenance panel.") update_icon() return if(panel_open) if(istype(O, /obj/item/wrench)) default_unfasten_wrench(user, O) if(component_parts && istype(O, /obj/item/crowbar)) if(tickets) //save the tickets! print_tickets() default_deconstruction_crowbar(user, O) return return ..() /obj/machinery/prize_counter/attack_hand(mob/user as mob) if(..()) return add_fingerprint(user) interact(user) /obj/machinery/prize_counter/interact(mob/user as mob) user.set_machine(src) if(stat & (BROKEN|NOPOWER)) return var/dat = {"
Tickets: [tickets] | Eject Tickets
Exchange that pile of tickets for a pile of cool prizes!
| # | Name/Description | Tickets | "} for(var/datum/prize_item/item in GLOB.global_prizes.prizes) var/cost_class="affordable" if(item.cost>tickets) cost_class="toomuch" var/itemID = GLOB.global_prizes.prizes.Find(item) var/row_color="light" if(itemID%2 == 0) row_color="dark" dat += {"
|---|---|---|
| [itemID] |
[item.name] [item.desc] |
"}
dat += {"
[item.cost] |