From 61b4c4694e97ca608bfd7642a28a279ac17e5cd2 Mon Sep 17 00:00:00 2001 From: Heroman3003 <31296024+Heroman3003@users.noreply.github.com> Date: Mon, 29 Apr 2019 08:59:34 +1000 Subject: [PATCH] Adds exploration equipment vendor --- .../modules/catalogue/rewards/construction.dm | 12 ++ .../catalogue/rewards/equipment_vendor.dm | 162 ++++++++++++++++++ .../catalogue/rewards/exp_point_items.dm | 23 +++ vorestation.dme | 3 + 4 files changed, 200 insertions(+) create mode 100644 code/modules/catalogue/rewards/construction.dm create mode 100644 code/modules/catalogue/rewards/equipment_vendor.dm create mode 100644 code/modules/catalogue/rewards/exp_point_items.dm diff --git a/code/modules/catalogue/rewards/construction.dm b/code/modules/catalogue/rewards/construction.dm new file mode 100644 index 0000000000..8bfca1f79d --- /dev/null +++ b/code/modules/catalogue/rewards/construction.dm @@ -0,0 +1,12 @@ +#ifndef T_BOARD +#error T_BOARD macro is not defined but we need it! +#endif + +/obj/item/weapon/circuitboard/exploration_equipment_vendor + name = T_BOARD("Exploration Equipment Vendor") + board_type = new /datum/frame/frame_types/machine + build_path = /obj/machinery/equipment_vendor/exploration + origin_tech = list(TECH_DATA = 1, TECH_ENGINEERING = 2) + req_components = list( + /obj/item/weapon/stock_parts/console_screen = 1, + /obj/item/weapon/stock_parts/matter_bin = 3) diff --git a/code/modules/catalogue/rewards/equipment_vendor.dm b/code/modules/catalogue/rewards/equipment_vendor.dm new file mode 100644 index 0000000000..929eac4972 --- /dev/null +++ b/code/modules/catalogue/rewards/equipment_vendor.dm @@ -0,0 +1,162 @@ +/**********************Exploration Equipment Vendor**************************/ + +/obj/machinery/equipment_vendor/exploration + name = "exploration equipment vendor" + desc = "An equipment vendor for explorers, points collected with cataloguers can be spent here." + icon = 'icons/obj/machines/mining_machines.dmi' + icon_state = "mining" + density = TRUE + anchored = TRUE + circuit = /obj/item/weapon/circuitboard/exploration_equipment_vendor + var/icon_deny = "mining-deny" + var/obj/item/device/cataloguer/inserted_cataloguer + var/list/prize_list = list( + new /datum/data/exploration_equipment("1 Marker Beacon", /obj/item/stack/marker_beacon, 10), + new /datum/data/exploration_equipment("10 Marker Beacons", /obj/item/stack/marker_beacon/ten, 100), + new /datum/data/exploration_equipment("30 Marker Beacons", /obj/item/stack/marker_beacon/thirty, 300), + new /datum/data/exploration_equipment("Whiskey", /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey, 125), + new /datum/data/exploration_equipment("Absinthe", /obj/item/weapon/reagent_containers/food/drinks/bottle/absinthe, 125), + new /datum/data/exploration_equipment("Cigar", /obj/item/clothing/mask/smokable/cigarette/cigar/havana, 150), + new /datum/data/exploration_equipment("Soap", /obj/item/weapon/soap/nanotrasen, 200), + new /datum/data/exploration_equipment("Laser Pointer", /obj/item/device/laser_pointer, 900), + new /datum/data/exploration_equipment("Plush Toy", /obj/random/plushie, 300), + new /datum/data/exploration_equipment("Shelter Capsule", /obj/item/device/survivalcapsule, 500), + new /datum/data/exploration_equipment("Point Transfer Card", /obj/item/weapon/card/exploration_point_card, 500), + new /datum/data/exploration_equipment("Survival Medipen", /obj/item/weapon/reagent_containers/hypospray/autoinjector/miner, 500), + new /datum/data/exploration_equipment("Mini-Translocator", /obj/item/device/perfect_tele/one_beacon, 1200), + new /datum/data/exploration_equipment("Space Cash", /obj/item/weapon/spacecash/c100, 1000), + new /datum/data/exploration_equipment("Jump Boots", /obj/item/clothing/shoes/bhop, 2500), + new /datum/data/exploration_equipment("Luxury Shelter Capsule", /obj/item/device/survivalcapsule/luxury, 3100) + ) + +/datum/data/exploration_equipment + var/equipment_name = "generic" + var/equipment_path = null + var/cost = 0 + +/datum/data/exploration_equipment/New(name, path, cost) + src.equipment_name = name + src.equipment_path = path + src.cost = cost + +/obj/machinery/equipment_vendor/exploration/power_change() + var/old_stat = stat + ..() + if(old_stat != stat) + update_icon() + if(inserted_cataloguer && !powered()) + visible_message("The cataloguer slot indicator light flickers on \the [src] as it spits out the device before powering down.") + inserted_cataloguer.forceMove(get_turf(src)) + +/obj/machinery/equipment_vendor/exploration/update_icon() + if(panel_open) + icon_state = "[initial(icon_state)]-open" + else if(powered()) + icon_state = initial(icon_state) + else + icon_state = "[initial(icon_state)]-off" + +/obj/machinery/equipment_vendor/exploration/attack_hand(mob/user) + if(..()) + return + interact(user) + +/obj/machinery/equipment_vendor/exploration/attack_ghost(mob/user) + interact(user) + +/obj/machinery/equipment_vendor/exploration/interact(mob/user) + user.set_machine(src) + + var/dat + dat +="
| [prize.equipment_name] | [prize.cost] | Purchase |