From 282c07cc2a4909435b01709df52464f4573b4bda Mon Sep 17 00:00:00 2001 From: Cael_Aislinn Date: Thu, 27 Dec 2012 01:34:38 +1000 Subject: [PATCH] xenoarch chemistry, tweaks to mine turfs and fossils Signed-off-by: Cael_Aislinn --- code/modules/mining/mine_turfs.dm | 5 +- .../research/xenoarchaeology/chemistry.dm | 123 ++++++++++++++++++ .../research/xenoarchaeology/fossils.dm | 4 +- 3 files changed, 128 insertions(+), 4 deletions(-) create mode 100644 code/modules/research/xenoarchaeology/chemistry.dm diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index a3d832dcc9a..52382341831 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -277,11 +277,12 @@ O = new /obj/item/weapon/ore/diamond(src) if (src.mineralName == "Archaeo") //spawn strange rocks here + new /obj/item/weapon/archaeological_find(src) //if(prob(10) || delicate) - if(prob(50)) //Don't have delicate tools (hand pick/excavation tool) yet, temporarily change to 50% instead of 10% -Mij + /*if(prob(50)) //Don't have delicate tools (hand pick/excavation tool) yet, temporarily change to 50% instead of 10% -Mij O = new /obj/item/weapon/ore/strangerock(src) else - destroyed = 1 + destroyed = 1*/ if (src.mineralName == "Clown") O = new /obj/item/weapon/ore/clown(src) if(O) diff --git a/code/modules/research/xenoarchaeology/chemistry.dm b/code/modules/research/xenoarchaeology/chemistry.dm new file mode 100644 index 00000000000..b8387470c34 --- /dev/null +++ b/code/modules/research/xenoarchaeology/chemistry.dm @@ -0,0 +1,123 @@ + +//chemistry stuff here so that it can be easily viewed/modified +datum + reagent + tungsten //purely used to make lith-sodi-tungs + name = "Tungsten" + id = "tungsten" + description = "A chemical element, and a strong oxidising agent." + reagent_state = SOLID + color = "#808080" // rgb: 128, 128, 128 + //todo: make this silvery grey + + neon //purely used as a carrier + name = "Neon" + id = "neon" + description = "A chemical element, commonly used in lighting." + reagent_state = LIQUID + color = "#808080" // rgb: 128, 128, 128, + //todo: make this fluro/bright purple + + beryllium //purely used as a carrier + name = "Beryllium" + id = "beryllium" + description = "A chemical element, prized for it's rigidity, thermal stability and low density when used in alloys." + reagent_state = LIQUID + color = "#808080" // rgb: 128, 128, 128, + //todo: make this dark grey + + calcium //purely used as a carrier + name = "Calcium" + id = "calcium" + description = "An extremely common chemical element found throughout living organisms." + reagent_state = LIQUID + color = "#808080" // rgb: 128, 128, 128, + //todo: make this bone-white colour + + lithiumsodiumtungstate + name = "Lithium Sodium Tungstate" + id = "lithiumsodiumtungstate" + description = "A reducing agent for geological compounds." + reagent_state = LIQUID + color = "#808080" // rgb: 128, 128, 128 + //todo: make this silvery grey + + ground_rock + name = "Ground Rock" + id = "ground_rock" + description = "A fine dust made of ground up rock." + reagent_state = SOLID + color = "#C81040" //rgb: 200, 16, 64 + //todo: make this brown + + density_separated_sample + name = "Analysis liquid" + id = "density_separated_sample" + description = "A watery paste used in chemical analysis." + reagent_state = LIQUID + color = "#C81040" //rgb: 200, 16, 64 + //todo: make this browny-white + + analysis_sample + name = "Analysis liquid" + id = "analysis_sample" + description = "A watery paste used in chemical analysis." + reagent_state = LIQUID + color = "#C81040" //rgb: 200, 16, 64 + //todo: make this white + + chemical_waste + name = "Chemical Waste" + id = "chemical_waste" + description = "A viscous, toxic liquid left over from many chemical processes." + reagent_state = LIQUID + color = "#C81040" //rgb: 200, 16, 64 + //todo: make this fluoro/bright green + +datum + chemical_reaction + lithiumsodiumtungstate //LiNa2WO4, not the easiest chem to mix + name = "Lithium Sodium Tungstate" + id = "lithiumsodiumtungstate" + result = "lithiumsodiumtungstate" + required_reagents = list("lithium" = 1, "sodium" = 2, "tungsten" = 1, "oxygen" = 4) + result_amount = 8 + + density_separated_liquid + name = "Density separated sample" + id = "density_separated_sample" + result = "density_separated_sample" + secondary_results = list("chemical_waste" = 1) + required_reagents = list("ground_rock" = 1, "lithiumsodiumtungstate" = 2) + result_amount = 2 + + analysis_liquid + name = "Analysis sample" + id = "analysis_sample" + result = "analysis_sample" + secondary_results = list("chemical_waste" = 1) + required_reagents = list("density_separated_sample" = 5) + result_amount = 4 + requires_heating = 1 + +/obj/item/weapon/reagent_containers/glass/solution_tray + name = "solution tray" + desc = "A small, open-topped glass container for delicate research samples. It sports a re-useable strip for labelling with a pen." + icon = 'icons/obj/device.dmi' + icon_state = "solution_tray" + m_amt = 0 + g_amt = 5 + w_class = 1.0 + amount_per_transfer_from_this = 1 + possible_transfer_amounts = list(1, 2) + volume = 2 + flags = FPRINT | OPENCONTAINER + +obj/item/weapon/reagent_containers/glass/solution_tray/attackby(obj/item/weapon/W as obj, mob/living/user as mob) + if(istype(W, /obj/item/weapon/pen)) + var/new_label = input("What should the new label be?","Label solution tray") + if(new_label) + name = "solution tray ([new_label])" + user << "\blue You write on the label of the solution tray." + else + ..(W, user) diff --git a/code/modules/research/xenoarchaeology/fossils.dm b/code/modules/research/xenoarchaeology/fossils.dm index cb8f88b6661..746a0beba3e 100644 --- a/code/modules/research/xenoarchaeology/fossils.dm +++ b/code/modules/research/xenoarchaeology/fossils.dm @@ -4,7 +4,7 @@ /obj/item/weapon/fossil name = "Fossil" - icon = 'fossil.dmi' + icon = 'xenoarchaeology.dmi' icon_state = "bone" desc = "It's a fossil." @@ -47,7 +47,7 @@ /obj/skeleton name = "Incomplete skeleton" - icon = 'fossil.dmi' + icon = 'xenoarchaeology.dmi' icon_state = "uskel" desc = "Incomplete skeleton." var/bnum = 1