From 626c782ff286869a49fde5fe080960f8aea9d549 Mon Sep 17 00:00:00 2001 From: Cael_Aislinn Date: Sat, 11 Aug 2012 02:37:01 +1000 Subject: [PATCH] new xenoarchaeology tools, basic datum for xenoarch work (WIP stuff) Signed-off-by: Cael_Aislinn --- .../xenoarchaeology/analysis_machinery.dm | 119 ++++++++++++++++++ .../research/xenoarchaeology/core_sampler.dm | 68 ++++++++++ .../research/xenoarchaeology/geosample.dm | 39 ++++++ .../modules/research/xenoarchaeology/tools.dm | 36 ++++++ 4 files changed, 262 insertions(+) create mode 100644 code/modules/research/xenoarchaeology/analysis_machinery.dm create mode 100644 code/modules/research/xenoarchaeology/core_sampler.dm create mode 100644 code/modules/research/xenoarchaeology/geosample.dm create mode 100644 code/modules/research/xenoarchaeology/tools.dm diff --git a/code/modules/research/xenoarchaeology/analysis_machinery.dm b/code/modules/research/xenoarchaeology/analysis_machinery.dm new file mode 100644 index 00000000000..c0534a43a65 --- /dev/null +++ b/code/modules/research/xenoarchaeology/analysis_machinery.dm @@ -0,0 +1,119 @@ +obj/machinery/gas_chromatography + name = "Gas Chromatography Spectrometer" + desc = "A specialised mass spectrometer." + icon = 'virology.dmi' + icon_state = "analyser" + +obj/machinery/gas_chromatography/Topic(href, href_list) + if(href_list["close"]) + usr << browse(null, "window=artanalyser") + usr.machine = null + + updateDialog() + +obj/machinery/gas_chromatography/attack_hand(var/mob/user as mob) + if(stat & (NOPOWER|BROKEN)) + return + user.machine = src + var/dat = "Gas Chromatography Spectrometer
" + dat += "
" + dat += "Refresh
" + dat += "
Close
" + user << browse(dat, "window=artanalyser;size=450x500") + onclose(user, "artanalyser") + +obj/machinery/accelerator + name = "Accelerator Spectrometer" + desc = "A specialised mass spectrometer." + icon = 'virology.dmi' + icon_state = "analyser" + +obj/machinery/accelerator/Topic(href, href_list) + if(href_list["close"]) + usr << browse(null, "window=artanalyser") + usr.machine = null + + updateDialog() + +obj/machinery/accelerator/attack_hand(var/mob/user as mob) + if(stat & (NOPOWER|BROKEN)) + return + user.machine = src + var/dat = "Accelerator Spectrometer
" + dat += "
" + dat += "
Refresh
" + dat += "
Close
" + user << browse(dat, "window=artanalyser;size=450x500") + onclose(user, "artanalyser") + +obj/machinery/fourier_transform + name = "Fourier Transform Spectroscope" + desc = "A specialised geochemical analysis device." + icon = 'virology.dmi' + icon_state = "analyser" + +obj/machinery/fourier_transform/Topic(href, href_list) + if(href_list["close"]) + usr << browse(null, "window=artanalyser") + usr.machine = null + + updateDialog() + +obj/machinery/fourier_transform/attack_hand(var/mob/user as mob) + if(stat & (NOPOWER|BROKEN)) + return + user.machine = src + var/dat = "Fourier Transform Spectroscope
" + dat += "
" + dat += "
Refresh
" + dat += "
Close
" + user << browse(dat, "window=artanalyser;size=450x500") + onclose(user, "artanalyser") + +obj/machinery/radiometric + name = "Radiometric Exposure Spectrometer" + desc = "A specialised mass spectrometer, able to radiometrically date inserted materials." + icon = 'virology.dmi' + icon_state = "analyser" + +obj/machinery/radiometric/Topic(href, href_list) + if(href_list["close"]) + usr << browse(null, "window=artanalyser") + usr.machine = null + + updateDialog() + +obj/machinery/radiometric/attack_hand(var/mob/user as mob) + if(stat & (NOPOWER|BROKEN)) + return + user.machine = src + var/dat = "Radiometric Exposure Spectrometer
" + dat += "
" + dat += "
Refresh
" + dat += "
Close
" + user << browse(dat, "window=artanalyser;size=450x500") + onclose(user, "artanalyser") + +obj/machinery/ion_mobility + name = "Ion Mobility Spectrometer" + desc = "A specialised mass spectrometer." + icon = 'virology.dmi' + icon_state = "analyser" + +obj/machinery/ion_mobility/Topic(href, href_list) + if(href_list["close"]) + usr << browse(null, "window=artanalyser") + usr.machine = null + + updateDialog() + +obj/machinery/ion_mobility/attack_hand(var/mob/user as mob) + if(stat & (NOPOWER|BROKEN)) + return + user.machine = src + var/dat = "Ion Mobility Spectrometer
" + dat += "
" + dat += "
Refresh
" + dat += "
Close
" + user << browse(dat, "window=artanalyser;size=450x500") + onclose(user, "artanalyser") diff --git a/code/modules/research/xenoarchaeology/core_sampler.dm b/code/modules/research/xenoarchaeology/core_sampler.dm new file mode 100644 index 00000000000..5bd59edc656 --- /dev/null +++ b/code/modules/research/xenoarchaeology/core_sampler.dm @@ -0,0 +1,68 @@ +//device to take core samples from mineral turfs - used for various types of analysis + +/obj/item/weapon/storage/samplebag + name = "sample bag" + desc = "A geological sample bag." + icon_state = "evidenceobj" + w_class = 1 + max_w_class = 1 + max_combined_w_class = 7 + storage_slots = 7 + +////////////////////////////////////////////////////////////////// + +/obj/item/device/core_sampler + name = "core sampler" + desc = "Used to extract geological core samples." + icon = 'device.dmi' + icon_state = "sampler0" + item_state = "screwdriver_brown" + w_class = 1.0 + flags = FPRINT | TABLEPASS + //slot_flags = SLOT_BELT + var/sampled_turf = "" + var/num_stored_bags = 10 + var/obj/item/weapon/storage/samplebag/filled_bag + +/obj/item/device/core_sampler/New() + /*for(var/i=0, i