From 0015eac2c8462af8069170455e542add55a833e8 Mon Sep 17 00:00:00 2001 From: FalseIncarnate Date: Sun, 14 Feb 2016 01:58:36 -0500 Subject: [PATCH] Arcade Prize Counter --- code/game/machinery/computer/arcade.dm | 65 ++------- code/game/machinery/constructable_frame.dm | 15 +- code/game/objects/items/toys.dm | 133 +++++++++--------- .../stool_bed_chair_nest/wheelchair.dm | 9 +- code/modules/arcade/arcade_prize.dm | 6 +- code/modules/arcade/prize_counter.dm | 85 ++++++----- code/modules/arcade/prize_datums.dm | 15 +- .../research/designs/machine_designs.dm | 11 +- icons/obj/arcade.dmi | Bin 12445 -> 15583 bytes icons/vehicles/motorcycle.dmi | Bin 4017 -> 4885 bytes 10 files changed, 171 insertions(+), 168 deletions(-) diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index ff62e54d06a..445c0b743ab 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -6,41 +6,7 @@ icon_keyboard = null icon_screen = "invaders" light_color = "#00FF00" - - var/list/prizes = list( /obj/item/weapon/storage/box/snappops = 2, - /obj/item/toy/AI = 2, - /obj/item/clothing/under/syndicate/tacticool = 2, - /obj/item/toy/blink = 2, - /obj/item/weapon/storage/box/fakesyndiesuit = 2, - /obj/item/toy/sword = 2, - /obj/item/weapon/gun/projectile/revolver/capgun = 2, - /obj/item/toy/crossbow = 2, - /obj/item/weapon/storage/fancy/crayons = 2, - /obj/item/toy/spinningtoy = 2, - /obj/item/toy/crossbow/tommygun = 2, - /obj/random/mech = 5, - /obj/item/toy/nuke = 2, - /obj/item/toy/cards/deck = 2, - /obj/random/carp_plushie = 2, - /obj/item/toy/minimeteor = 2, - /obj/item/toy/redbutton = 2, - /obj/item/toy/owl = 2, - /obj/item/toy/griffin = 2, - /obj/item/clothing/head/blob = 2, - /obj/item/weapon/id_decal/gold = 2, - /obj/item/weapon/id_decal/silver = 2, - /obj/item/weapon/id_decal/prisoner = 2, - /obj/item/weapon/id_decal/centcom = 2, - /obj/item/weapon/id_decal/emag = 2, - /obj/item/weapon/spellbook/oneuse/fake_gib = 2, - /obj/item/toy/foamblade = 2, - /obj/item/toy/flash = 2, - /obj/item/toy/minigibber = 2, - /obj/item/toy/toy_xeno = 2, - /obj/random/figure = 16, - /obj/random/plushie = 7, - /obj/item/stack/tile/fakespace/loaded = 2, - ) + var/prize = /obj/item/stack/tickets /obj/machinery/computer/arcade/power_change() ..() @@ -56,28 +22,22 @@ qdel(src) -/obj/machinery/computer/arcade/proc/prizevend() +/obj/machinery/computer/arcade/proc/prizevend(var/score) if(!contents.len) - var/prizeselect = pickweight(prizes) - new prizeselect(src.loc) - - if(istype(prizeselect, /obj/item/weapon/gun/projectile/revolver/capgun)) //Ammo comes with the gun - new /obj/item/ammo_box/caps(src.loc) - - else if(istype(prizeselect, /obj/item/clothing/suit/syndicatefake)) //Helmet is part of the suit - new /obj/item/clothing/head/syndicatefake(src.loc) - + var/prize_amount + if(score) + prize_amount = score + else + prize_amount = rand(1, 10) + new prize(src.loc, prize_amount) else var/atom/movable/prize = pick(contents) prize.loc = src.loc /obj/machinery/computer/arcade/emp_act(severity) ..(severity) - if(stat & (NOPOWER|BROKEN)) return - - var/empprize = null var/num_of_prizes = 0 switch(severity) if(1) @@ -85,8 +45,7 @@ if(2) num_of_prizes = rand(0,2) for(var/i = num_of_prizes; i > 0; i--) - empprize = pickweight(prizes) - new empprize(src.loc) + prizevend() explosion(src.loc, -1, 0, 1+num_of_prizes, flame_range = 1+num_of_prizes) @@ -231,7 +190,8 @@ emagged = 0 else feedback_inc("arcade_win_normal") - prizevend() + var/score = src.player_hp + player_mp + 5 + prizevend(score) else if (emagged && (turtle >= 4)) var/boomamt = rand(5,10) @@ -988,7 +948,8 @@ message_admins("[key_name_admin(usr)] made it to Orion on an emagged machine and got an explosive toy ship.") log_game("[key_name(usr)] made it to Orion on an emagged machine and got an explosive toy ship.") else - prizevend() + var/score = alive + round(food/2) + round(fuel/5) + engine + hull + electronics - lings_aboard + prizevend(score) emagged = 0 name = "The Orion Trail" desc = "Learn how our ancestors got to Orion, and have fun in the process!" diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index f4c6cc90c57..c62c8131f25 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -844,7 +844,18 @@ obj/item/weapon/circuitboard/rdserver board_type = "machine" origin_tech = "programming=2" req_components = list( - /obj/item/weapon/stock_parts.matter_bin = 1, + /obj/item/weapon/stock_parts/matter_bin = 1, /obj/item/weapon/stock_parts/manipulator = 1, /obj/item/stack/cable_coil = 5, - /obj/item/stack/sheet/glass = 1) \ No newline at end of file + /obj/item/stack/sheet/glass = 1) + +/obj/item/weapon/circuitboard/prize_counter + name = "circuit board (Prize Counter)" + build_path = /obj/machinery/prize_counter + board_type = "machine" + origin_tech = "programming=2;materials=2" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/weapon/stock_parts/console_screen = 1, + /obj/item/stack/cable_coil = 1) \ No newline at end of file diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 4f818d7c8b7..e6626477d8f 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -200,7 +200,9 @@ return else if (bullets == 0) user.Weaken(5) - user.visible_message("[] realized they were out of ammo and started scrounging for some!") + user.visible_message("[] realized they were out of ammo and starting scrounging for some!") + + /obj/item/toy/crossbow/attack(mob/M as mob, mob/user as mob) src.add_fingerprint(user) @@ -277,27 +279,27 @@ flags = NOSHIELD attack_verb = list("attacked", "struck", "hit") - attack_self(mob/user as mob) - src.active = !( src.active ) - if (src.active) - user << "\blue You extend the plastic blade with a quick flick of your wrist." - playsound(user, 'sound/weapons/saberon.ogg', 50, 1) - src.icon_state = "swordblue" - src.item_state = "swordblue" - src.w_class = 4 - else - user << "\blue You push the plastic blade back down into the handle." - playsound(user, 'sound/weapons/saberoff.ogg', 50, 1) - src.icon_state = "sword0" - src.item_state = "sword0" - src.w_class = 2 +/obj/item/toy/sword/attack_self(mob/user as mob) + src.active = !( src.active ) + if (src.active) + user << "\blue You extend the plastic blade with a quick flick of your wrist." + playsound(user, 'sound/weapons/saberon.ogg', 50, 1) + src.icon_state = "swordblue" + src.item_state = "swordblue" + src.w_class = 4 + else + user << "\blue You push the plastic blade back down into the handle." + playsound(user, 'sound/weapons/saberoff.ogg', 50, 1) + src.icon_state = "sword0" + src.item_state = "sword0" + src.w_class = 2 - if(istype(user,/mob/living/carbon/human)) - var/mob/living/carbon/human/H = user - H.update_inv_l_hand() - H.update_inv_r_hand() - src.add_fingerprint(user) - return + if(istype(user,/mob/living/carbon/human)) + var/mob/living/carbon/human/H = user + H.update_inv_l_hand() + H.update_inv_r_hand() + src.add_fingerprint(user) + return // Copied from /obj/item/weapon/melee/energy/sword/attackby /obj/item/toy/sword/attackby(obj/item/weapon/W, mob/living/user, params) @@ -372,21 +374,15 @@ w_class = 1 - throw_impact(atom/hit_atom) - ..() - var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread - s.set_up(3, 1, src) - s.start() - new /obj/effect/decal/cleanable/ash(src.loc) - src.visible_message("\red The [src.name] explodes!","\red You hear a bang!") - - - playsound(src, 'sound/effects/snap.ogg', 50, 1) - qdel(src) - - - - +/obj/item/toy/snappop/virus/throw_impact(atom/hit_atom) + ..() + var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread + s.set_up(3, 1, src) + s.start() + new /obj/effect/decal/cleanable/ash(src.loc) + src.visible_message("\red The [src.name] explodes!","\red You hear a bang!") + playsound(src, 'sound/effects/snap.ogg', 50, 1) + qdel(src) /* * Snap pops @@ -427,13 +423,13 @@ /* * Mech prizes */ -/obj/item/toy/mech +/obj/item/toy/prize icon = 'icons/obj/toy.dmi' icon_state = "ripleytoy" var/cooldown = 0 //all credit to skasi for toy mech fun ideas -/obj/item/toy/mech/attack_self(mob/user as mob) +/obj/item/toy/prize/attack_self(mob/user as mob) if(cooldown < world.time - 8) user << "You play with [src]." playsound(user, 'sound/mecha/mechstep.ogg', 20, 1) @@ -457,37 +453,37 @@ /obj/random/mech/item_to_spawn() return pick(subtypesof(/obj/item/toy/prize)) //exclude the base type. -/obj/item/toy/mech/ripley +/obj/item/toy/prize/ripley name = "toy ripley" desc = "Mini-Mecha action figure! Collect them all! 1/11." -/obj/item/toy/mech/fireripley +/obj/item/toy/prize/fireripley name = "toy firefighting ripley" desc = "Mini-Mecha action figure! Collect them all! 2/11." icon_state = "fireripleytoy" -/obj/item/toy/mech/deathripley +/obj/item/toy/prize/deathripley name = "toy deathsquad ripley" desc = "Mini-Mecha action figure! Collect them all! 3/11." icon_state = "deathripleytoy" -/obj/item/toy/mech/gygax +/obj/item/toy/prize/gygax name = "toy gygax" desc = "Mini-Mecha action figure! Collect them all! 4/11." icon_state = "gygaxtoy" -/obj/item/toy/mech/durand +/obj/item/toy/prize/durand name = "toy durand" desc = "Mini-Mecha action figure! Collect them all! 5/11." icon_state = "durandprize" -/obj/item/toy/mech/honk +/obj/item/toy/prize/honk name = "toy H.O.N.K." desc = "Mini-Mecha action figure! Collect them all! 6/11." icon_state = "honkprize" -/obj/item/toy/mech/marauder +/obj/item/toy/prize/marauder name = "toy marauder" desc = "Mini-Mecha action figure! Collect them all! 7/11." icon_state = "marauderprize" @@ -497,17 +493,17 @@ desc = "Mini-Mecha action figure! Collect them all! 8/11." icon_state = "seraphprize" -/obj/item/toy/mech/mauler +/obj/item/toy/prize/mauler name = "toy mauler" desc = "Mini-Mecha action figure! Collect them all! 9/11." icon_state = "maulerprize" -/obj/item/toy/mech/odysseus +/obj/item/toy/prize/odysseus name = "toy odysseus" desc = "Mini-Mecha action figure! Collect them all! 10/11." icon_state = "odysseusprize" -/obj/item/toy/mech/phazon +/obj/item/toy/prize/phazon name = "toy phazon" desc = "Mini-Mecha action figure! Collect them all! 11/11." icon_state = "phazonprize" @@ -924,44 +920,55 @@ obj/item/toy/cards/deck/syndicate/black /obj/item/toy/therapy name = "therapy doll" desc = "A toy for therapeutic and recreational purposes." - icon = 'icons/obj/weapons.dmi' icon_state = "therapyred" - item_state = "egg4" // It's the red egg in items_left/righthand + item_state = "egg4" w_class = 1 - item_color = "red" + var/cooldown = 0 /obj/item/toy/therapy/New() - ..() - icon_state = "therapy[item_color]" - UpdateDesc() + if(item_color) + name = "[item_color] therapy doll" + desc += " This one is [item_color]." + icon_state = "therapy[item_color]" -/obj/item/toy/therapy/proc/UpdateDesc() - name = "[item_color] therapy doll" - desc += " This one is [item_color]." +/obj/item/toy/therapy/attack_self(mob/user) + if(cooldown < world.time - 8) + user << "You relieve some stress with /the [src]." + playsound(user, 'sound/items/squeaktoy.ogg', 20, 1) + cooldown = world.time + +/obj/random/therapy + name = "Random Therapy Doll" + desc = "This is a random therapy doll." + icon = 'icons/obj/toy.dmi' + icon_state = "therapyred" + +/obj/random/prize/item_to_spawn() + return pick(subtypesof(/obj/item/toy/therapy)) //exclude the base type. /obj/item/toy/therapy/red - item_color = "red" item_state = "egg4" // It's the red egg in items_left/righthand + item_color = "red" /obj/item/toy/therapy/purple - item_color = "purple" item_state = "egg1" // It's the magenta egg in items_left/righthand + item_color = "purple" /obj/item/toy/therapy/blue - item_color = "blue" item_state = "egg2" // It's the blue egg in items_left/righthand + item_color = "blue" /obj/item/toy/therapy/yellow - item_color = "yellow" item_state = "egg5" // It's the yellow egg in items_left/righthand + item_color = "yellow" /obj/item/toy/therapy/orange - item_color = "orange" item_state = "egg4" // It's the red one again, lacking an orange item_state and making a new one is pointless + item_color = "orange" /obj/item/toy/therapy/green - item_color = "green" item_state = "egg3" // It's the green egg in items_left/righthand + item_color = "green" /obj/item/weapon/toddler icon_state = "toddler" diff --git a/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm b/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm index 1bacc123e01..93e510b0641 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm @@ -148,4 +148,11 @@ . = 0 else - . = 1 \ No newline at end of file + . = 1 + +/obj/structure/stool/bed/chair/wheelchair/handle_rotation() + overlays = null + var/image/O = image(icon = 'icons/vehicles/motorcycle.dmi', icon_state = "motorcycle_overlay_4d", layer = FLY_LAYER, dir = src.dir) + overlays += O + if(buckled_mob) + buckled_mob.dir = dir \ No newline at end of file diff --git a/code/modules/arcade/arcade_prize.dm b/code/modules/arcade/arcade_prize.dm index 30bb457e196..b106a8ae7f4 100644 --- a/code/modules/arcade/arcade_prize.dm +++ b/code/modules/arcade/arcade_prize.dm @@ -25,7 +25,7 @@ var/prize_inside = pick(possible_contents) spawn(10) user.unEquip(src) - if(istype(/obj/item/stack)) + if(istype(prize_inside, /obj/item/stack)) var/amount = pick(5, 10, 15, 25, 50) new prize_inside(user.loc, amount) else @@ -55,7 +55,7 @@ /obj/item/toy/prizeball/therapy name = "therapy doll capsule" desc = "Contains one squishy therapy doll." - possible_contents = subtypesof(/obj/item/toy/therapy) + possible_contents = list(/obj/random/therapy) /obj/item/stack/tickets name = "prize ticket" @@ -64,7 +64,7 @@ icon = 'icons/obj/arcade.dmi' icon_state = "tickets_1" force = 1 - throw_force = 1 + throwforce = 1 throw_speed = 1 throw_range = 1 w_class = 1.0 diff --git a/code/modules/arcade/prize_counter.dm b/code/modules/arcade/prize_counter.dm index a8697956dc2..4190e50e6d3 100644 --- a/code/modules/arcade/prize_counter.dm +++ b/code/modules/arcade/prize_counter.dm @@ -25,38 +25,16 @@ for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts) prize_tier = B.rating -/obj/machinery/prize_counter/proc/UpdateListings() - var/dat = "" - for(var/datum/prize_item/item in global_prizes.prizes) - var/cost_class="affordable" - if(item.cost>tickets) - cost_class="toomuch" - var/itemID = global_prizes.prizes.Find(item) - dat += {" - - - [itemID] - - -

[item.name]

-

[item.desc]

- - "} - if(prize_tier >= item.tier_unlocked) - dat += {" - - [item.cost] Tickets - - - "} - else - dat += {" - - LOCKED. - - - "} - return dat +/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)) @@ -74,16 +52,18 @@ if(istype(O, /obj/item/weapon/wrench)) default_unfasten_wrench(user, O) if(component_parts && istype(O, /obj/item/weapon/crowbar)) + if(tickets) //save the tickets! + print_tickets() default_deconstruction_crowbar(O) /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) - add_fingerprint(user) if(stat & (BROKEN|NOPOWER)) return @@ -152,7 +132,37 @@ td.cost.toomuch { "} - dat += UpdateListings() + + for(var/datum/prize_item/item in global_prizes.prizes) + var/cost_class="affordable" + if(item.cost>tickets) + cost_class="toomuch" + var/itemID = global_prizes.prizes.Find(item) + dat += {" + + + [itemID] + + +

[item.name]

+

[item.desc]

+ + "} + if(prize_tier >= item.tier_unlocked) + dat += {" + + [item.cost] Tickets + + + "} + else + dat += {" + + LOCKED. + + + "} + dat += {" @@ -169,7 +179,7 @@ td.cost.toomuch { src.add_fingerprint(usr) if(href_list["eject"]) - print_tickets + print_tickets() if (href_list["buy"]) var/itemID = text2num(href_list["buy"]) @@ -183,7 +193,7 @@ td.cost.toomuch { else usr << "You've successfully purchased the item." - src.updateUsrDialog() + interact(usr) return /obj/machinery/prize_counter/proc/print_tickets() @@ -194,4 +204,5 @@ td.cost.toomuch { tickets -= 9999 print_tickets() else - new /obj/item/stack/tickets(src.loc, tickets) \ No newline at end of file + new /obj/item/stack/tickets(src.loc, tickets) + tickets = 0 \ No newline at end of file diff --git a/code/modules/arcade/prize_datums.dm b/code/modules/arcade/prize_datums.dm index 0b039e45537..8d1bd5da023 100644 --- a/code/modules/arcade/prize_datums.dm +++ b/code/modules/arcade/prize_datums.dm @@ -15,7 +15,7 @@ var/global/datum/prizes/global_prizes = new if(!item) return 0 if(prize_counter.tickets >= item.cost) - item.deliver(prize_counter) + new item.typepath(prize_counter.loc) prize_counter.visible_message("Enjoy your prize!") return 1 else @@ -23,7 +23,7 @@ var/global/datum/prizes/global_prizes = new return 0 ////////////////////////////////////// -// /datum/prize_item // +// prize_item datum // ////////////////////////////////////// /datum/prize_item @@ -33,9 +33,6 @@ var/global/datum/prizes/global_prizes = new var/cost = 0 var/tier_unlocked = 0 //minimum tier needed to unlock the ability to select this prize -/datum/prize_item/proc/deliver(var/obj/machinery/prize_counter/P_C) - var/thing = new typepath(P_C.loc) - ////////////////////////////////////// // Tier 1 Prizes // ////////////////////////////////////// @@ -54,7 +51,7 @@ var/global/datum/prizes/global_prizes = new cost = 35 tier_unlocked = 1 -/datum/prize_item/snap-pops +/datum/prize_item/snappops name = "Snap-Pops" desc = "A box of exploding snap-pop fireworks." typepath = /obj/item/weapon/storage/box/snappops @@ -85,7 +82,7 @@ var/global/datum/prizes/global_prizes = new /datum/prize_item/cards name = "Deck of cards" desc = "Anyone fancy a game of 52-card Pickup?" - typepath = obj/item/toy/cards/deck + typepath = /obj/item/toy/cards/deck cost = 25 tier_unlocked = 1 @@ -134,10 +131,10 @@ var/global/datum/prizes/global_prizes = new desc = "A sticker that can make any ID look like a golden ID." typepath = /obj/item/weapon/id_decal/gold -/datum/prize_item/id_sticker/centcomm +/datum/prize_item/id_sticker/centcom name = "Centcomm ID Sticker" desc = "A sticker that can make any ID look like a Central Command ID." - typepath = /obj/item/weapon/id_decal/centcomm + typepath = /obj/item/weapon/id_decal/centcom /datum/prize_item/id_sticker/emag name = "Suspicious ID Sticker" diff --git a/code/modules/research/designs/machine_designs.dm b/code/modules/research/designs/machine_designs.dm index fb97c2b693c..648193a316b 100644 --- a/code/modules/research/designs/machine_designs.dm +++ b/code/modules/research/designs/machine_designs.dm @@ -490,4 +490,13 @@ build_type = IMPRINTER materials = list(MAT_GLASS=1000, "sacid"=20) build_path = /obj/item/weapon/circuitboard/clawgame - category = list ("Misc. Machinery") \ No newline at end of file + category = list ("Misc. Machinery") + +/datum/design/prize_counter + name = "Machine Design (Prize Counter)" + desc = "The circuit board for an arcade Prize Counter." + req_tech = list("programming" = 2, "materials" = 2) + build_type = IMPRINTER + materials = list(MAT_GLASS=1000, "sacid"=20) + build_path = /obj/item/weapon/circuitboard/prize_counter + category = list("Misc. Machinery") \ No newline at end of file diff --git a/icons/obj/arcade.dmi b/icons/obj/arcade.dmi index 5fdaeb7c68229207901f707248d45e891ed83456..9861aea35c96d6330152e89a6f97fbca3b5889fa 100644 GIT binary patch literal 15583 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 XViFgkH4OaQ0Z3C#PqpHK&FlXMuTxk* diff --git a/icons/vehicles/motorcycle.dmi b/icons/vehicles/motorcycle.dmi index 8b5a004fa5deb72eb652683a06f6cae9ecb12c56..2f3c2d5517f8fcb755d44401a30d145c7b9843ac 100644 GIT binary patch literal 4885 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 ZcnKj2KFUi)0{?RXnyR`gl}PKz{{e-YM6mz> literal 4017 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