diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index c896fb769996..00057af5fa34 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -113,7 +113,7 @@ var/datum/global_hud/global_hud = new() var/obj/screen/movable/action_button/hide_toggle/hide_actions_toggle var/action_buttons_hidden = 0 -datum/hud/New(mob/owner) +/datum/hud/New(mob/owner) mymob = owner instantiate() ..() diff --git a/code/controllers/configuration.dm b/code/controllers/configuration.dm index 137c1625a106..c250dc1d2d9e 100644 --- a/code/controllers/configuration.dm +++ b/code/controllers/configuration.dm @@ -560,7 +560,7 @@ //world << "DEBUG: runnable_mode\[[runnable_modes.len]\] = [M.config_tag]" return runnable_modes -datum/configuration/proc/get_runnable_midround_modes(crew) +/datum/configuration/proc/get_runnable_midround_modes(crew) var/list/datum/game_mode/runnable_modes = new for(var/T in (typesof(/datum/game_mode) - /datum/game_mode - ticker.mode.type)) var/datum/game_mode/M = new T() diff --git a/code/datums/computerfiles.dm b/code/datums/computerfiles.dm index 14cd7e38612c..37ba1ec51e0d 100644 --- a/code/datums/computerfiles.dm +++ b/code/datums/computerfiles.dm @@ -1,4 +1,4 @@ -datum +/datum computer var/name folder diff --git a/code/game/communications.dm b/code/game/communications.dm index fe92b7778153..75155dff9143 100644 --- a/code/game/communications.dm +++ b/code/game/communications.dm @@ -182,7 +182,7 @@ var/const/RADIO_MAGNETS = "9" //If range > 0, only post to devices on the same z_level and within range //Use range = -1, to restrain to the same z_level without limiting range -datum/radio_frequency/proc/post_signal(obj/source as obj|null, datum/signal/signal, var/filter = null as text|null, var/range = null as num|null) +/datum/radio_frequency/proc/post_signal(obj/source as obj|null, datum/signal/signal, var/filter = null as text|null, var/range = null as num|null) //Apply filter to the signal. If none supply, broadcast to every devices //_default channel is always checked @@ -213,7 +213,7 @@ datum/radio_frequency/proc/post_signal(obj/source as obj|null, datum/signal/sign continue device.receive_signal(signal, TRANSMISSION_RADIO, frequency) -datum/radio_frequency/proc/add_listener(obj/device as obj, var/filter as text|null) +/datum/radio_frequency/proc/add_listener(obj/device as obj, var/filter as text|null) if (!filter) filter = "_default" @@ -224,7 +224,7 @@ datum/radio_frequency/proc/add_listener(obj/device as obj, var/filter as text|nu devices_line += device -datum/radio_frequency/proc/remove_listener(obj/device) +/datum/radio_frequency/proc/remove_listener(obj/device) for(var/devices_filter in devices) var/list/devices_line = devices[devices_filter] if(!devices_line) diff --git a/code/game/gamemodes/abduction/abduction.dm b/code/game/gamemodes/abduction/abduction.dm index 9276c1bb3315..2b3996270d6a 100644 --- a/code/game/gamemodes/abduction/abduction.dm +++ b/code/game/gamemodes/abduction/abduction.dm @@ -336,15 +336,15 @@ // OBJECTIVES -datum/objective/experiment +/datum/objective/experiment dangerrating = 10 target_amount = 6 var/team -datum/objective/experiment/New() +/datum/objective/experiment/New() explanation_text = "Experiment on [target_amount] humans" -datum/objective/experiment/check_completion() +/datum/objective/experiment/check_completion() if(!owner.current || !ishuman(owner.current)) return 0 var/mob/living/carbon/human/H = owner.current @@ -360,21 +360,21 @@ datum/objective/experiment/check_completion() return 0 return 0 -datum/objective/abductee +/datum/objective/abductee dangerrating = 5 completed = 1 -datum/objective/abductee/steal +/datum/objective/abductee/steal explanation_text = "Steal all" -datum/objective/abductee/steal/New() +/datum/objective/abductee/steal/New() var/target = pick(list("Pets","Lights","Monkeys","Fruits","Shoes","Soap Bars")) explanation_text+=" [target]" -datum/objective/abductee/capture +/datum/objective/abductee/capture explanation_text = "Capture" -datum/objective/abductee/capture/New() +/datum/objective/abductee/capture/New() var/list/jobs = SSjob.occupations for(var/datum/job/J in jobs) if(J.current_positions < 1) @@ -385,8 +385,8 @@ datum/objective/abductee/capture/New() else explanation_text += " someone." -datum/objective/abductee/shuttle +/datum/objective/abductee/shuttle explanation_text = "You must escape the station! Get the shuttle called!" -datum/objective/abductee/noclone +/datum/objective/abductee/noclone explanation_text = "Don't allow anyone to be cloned." \ No newline at end of file diff --git a/code/game/gamemodes/blob/blob_finish.dm b/code/game/gamemodes/blob/blob_finish.dm index a4fc04355230..743196fbb2a0 100644 --- a/code/game/gamemodes/blob/blob_finish.dm +++ b/code/game/gamemodes/blob/blob_finish.dm @@ -40,7 +40,7 @@ ..() return 1 -datum/game_mode/proc/auto_declare_completion_blob() +/datum/game_mode/proc/auto_declare_completion_blob() if(istype(ticker.mode,/datum/game_mode/blob) ) var/datum/game_mode/blob/blob_mode = src if(blob_mode.infected_crew.len) diff --git a/code/game/gamemodes/changeling/powers/adrenaline.dm b/code/game/gamemodes/changeling/powers/adrenaline.dm index 36c6f86dc5fd..ed7496be1d2b 100644 --- a/code/game/gamemodes/changeling/powers/adrenaline.dm +++ b/code/game/gamemodes/changeling/powers/adrenaline.dm @@ -22,14 +22,14 @@ feedback_add_details("changeling_powers","UNS") return 1 -datum/reagent/medicine/changelingAdrenaline +/datum/reagent/medicine/changelingAdrenaline name = "Adrenaline" id = "changelingAdrenaline" description = "Reduces stun times. Also deals toxin damage at high amounts." color = "#C8A5DC" overdose_threshold = 30 -datum/reagent/medicine/changelingAdrenaline/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/changelingAdrenaline/on_mob_life(var/mob/living/M as mob) M.AdjustParalysis(-1) M.AdjustStunned(-1) M.AdjustWeakened(-1) @@ -37,19 +37,19 @@ datum/reagent/medicine/changelingAdrenaline/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/changelingAdrenaline/overdose_process(var/mob/living/M as mob) +/datum/reagent/medicine/changelingAdrenaline/overdose_process(var/mob/living/M as mob) M.adjustToxLoss(1) ..() return -datum/reagent/medicine/changelingAdrenaline2 +/datum/reagent/medicine/changelingAdrenaline2 name = "Adrenaline" id = "changelingAdrenaline2" description = "Drastically increases movement speed." color = "#C8A5DC" metabolization_rate = 1 -datum/reagent/medicine/changelingAdrenaline2/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/changelingAdrenaline2/on_mob_life(var/mob/living/M as mob) M.status_flags |= GOTTAGOREALLYFAST M.adjustToxLoss(2) ..() diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 9f0eee8e8811..0d1dca77eacd 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -1,4 +1,4 @@ -datum/objective +/datum/objective var/datum/mind/owner = null //Who owns the objective. var/explanation_text = "Nothing" //What that person is supposed to do. var/datum/mind/target = null //If they are focused on a particular person. @@ -7,23 +7,23 @@ datum/objective var/dangerrating = 0 //How hard the objective is, essentially. Used for dishing out objectives and checking overall victory. var/martyr_compatible = 0 //If the objective is compatible with martyr objective, i.e. if you can still do it while dead. -datum/objective/New(var/text) +/datum/objective/New(var/text) if(text) explanation_text = text -datum/objective/proc/check_completion() +/datum/objective/proc/check_completion() return completed -datum/objective/proc/is_unique_objective(possible_target) +/datum/objective/proc/is_unique_objective(possible_target) for(var/datum/objective/O in owner.objectives) if(istype(O, type) && O.get_target() == possible_target) return 0 return 1 -datum/objective/proc/get_target() +/datum/objective/proc/get_target() return target -datum/objective/proc/find_target() +/datum/objective/proc/find_target() var/list/possible_targets = list() for(var/datum/mind/possible_target in ticker.minds) if(possible_target != owner && ishuman(possible_target.current) && (possible_target.current.stat != 2) && is_unique_objective(possible_target)) @@ -33,36 +33,36 @@ datum/objective/proc/find_target() update_explanation_text() return target -datum/objective/proc/find_target_by_role(role, role_type=0)//Option sets either to check assigned role or special role. Default to assigned. +/datum/objective/proc/find_target_by_role(role, role_type=0)//Option sets either to check assigned role or special role. Default to assigned. for(var/datum/mind/possible_target in ticker.minds) if((possible_target != owner) && ishuman(possible_target.current) && ((role_type ? possible_target.special_role : possible_target.assigned_role) == role) ) target = possible_target break update_explanation_text() -datum/objective/proc/update_explanation_text() +/datum/objective/proc/update_explanation_text() //Default does nothing, override where needed -datum/objective/assassinate +/datum/objective/assassinate var/target_role_type=0 dangerrating = 10 martyr_compatible = 1 -datum/objective/assassinate/find_target_by_role(role, role_type=0) +/datum/objective/assassinate/find_target_by_role(role, role_type=0) target_role_type = role_type ..(role, role_type) return target -datum/objective/assassinate/check_completion() +/datum/objective/assassinate/check_completion() if(target && target.current) if(target.current.stat == DEAD || issilicon(target.current) || isbrain(target.current) || target.current.z > 6 || !target.current.ckey) //Borgs/brains/AIs count as dead for traitor objectives. --NeoFite return 1 return 0 return 1 -datum/objective/assassinate/update_explanation_text() +/datum/objective/assassinate/update_explanation_text() ..() if(target && target.current) explanation_text = "Assassinate [target.name], the [!target_role_type ? target.assigned_role : target.special_role]." @@ -71,16 +71,16 @@ datum/objective/assassinate/update_explanation_text() -datum/objective/mutiny +/datum/objective/mutiny var/target_role_type=0 martyr_compatible = 1 -datum/objective/mutiny/find_target_by_role(role, role_type=0) +/datum/objective/mutiny/find_target_by_role(role, role_type=0) target_role_type = role_type ..(role, role_type) return target -datum/objective/mutiny/check_completion() +/datum/objective/mutiny/check_completion() if(target && target.current) if(target.current.stat == DEAD || !ishuman(target.current) || !target.current.ckey || !target.current.client) return 1 @@ -90,7 +90,7 @@ datum/objective/mutiny/check_completion() return 0 return 1 -datum/objective/mutiny/update_explanation_text() +/datum/objective/mutiny/update_explanation_text() ..() if(target && target.current) explanation_text = "Assassinate or exile [target.name], the [!target_role_type ? target.assigned_role : target.special_role]." @@ -99,17 +99,17 @@ datum/objective/mutiny/update_explanation_text() -datum/objective/maroon +/datum/objective/maroon var/target_role_type=0 dangerrating = 5 martyr_compatible = 1 -datum/objective/maroon/find_target_by_role(role, role_type=0) +/datum/objective/maroon/find_target_by_role(role, role_type=0) target_role_type = role_type ..(role, role_type) return target -datum/objective/maroon/check_completion() +/datum/objective/maroon/check_completion() if(target && target.current) if(target.current.stat == DEAD || issilicon(target.current) || isbrain(target.current) || target.current.z > 6 || !target.current.ckey) //Borgs/brains/AIs count as dead for traitor objectives. --NeoFite return 1 @@ -117,7 +117,7 @@ datum/objective/maroon/check_completion() return 0 return 1 -datum/objective/maroon/update_explanation_text() +/datum/objective/maroon/update_explanation_text() if(target && target.current) explanation_text = "Prevent [target.name], the [!target_role_type ? target.assigned_role : target.special_role], from escaping alive." else @@ -125,16 +125,16 @@ datum/objective/maroon/update_explanation_text() -datum/objective/debrain//I want braaaainssss +/datum/objective/debrain//I want braaaainssss var/target_role_type=0 dangerrating = 20 -datum/objective/debrain/find_target_by_role(role, role_type=0) +/datum/objective/debrain/find_target_by_role(role, role_type=0) target_role_type = role_type ..(role, role_type) return target -datum/objective/debrain/check_completion() +/datum/objective/debrain/check_completion() if(!target)//If it's a free objective. return 1 if( !owner.current || owner.current.stat==DEAD )//If you're otherwise dead. @@ -148,7 +148,7 @@ datum/objective/debrain/check_completion() return 1 return 0 -datum/objective/debrain/update_explanation_text() +/datum/objective/debrain/update_explanation_text() ..() if(target && target.current) explanation_text = "Steal the brain of [target.name], the [!target_role_type ? target.assigned_role : target.special_role]." @@ -157,17 +157,17 @@ datum/objective/debrain/update_explanation_text() -datum/objective/protect//The opposite of killing a dude. +/datum/objective/protect//The opposite of killing a dude. var/target_role_type=0 dangerrating = 10 martyr_compatible = 1 -datum/objective/protect/find_target_by_role(role, role_type=0) +/datum/objective/protect/find_target_by_role(role, role_type=0) target_role_type = role_type ..(role, role_type) return target -datum/objective/protect/check_completion() +/datum/objective/protect/check_completion() if(!target) //If it's a free objective. return 1 if(target.current) @@ -176,7 +176,7 @@ datum/objective/protect/check_completion() return 1 return 0 -datum/objective/protect/update_explanation_text() +/datum/objective/protect/update_explanation_text() ..() if(target && target.current) explanation_text = "Protect [target.name], the [!target_role_type ? target.assigned_role : target.special_role]." @@ -185,12 +185,12 @@ datum/objective/protect/update_explanation_text() -datum/objective/hijack +/datum/objective/hijack explanation_text = "Hijack the emergency shuttle by escaping alone." dangerrating = 25 martyr_compatible = 0 //Technically you won't get both anyway. -datum/objective/hijack/check_completion() +/datum/objective/hijack/check_completion() if(!owner.current || owner.current.stat) return 0 if(SSshuttle.emergency.mode < SHUTTLE_ENDGAME) @@ -213,12 +213,12 @@ datum/objective/hijack/check_completion() return 1 -datum/objective/block +/datum/objective/block explanation_text = "Do not allow any organic lifeforms to escape on the shuttle alive." dangerrating = 25 martyr_compatible = 1 -datum/objective/block/check_completion() +/datum/objective/block/check_completion() if(!istype(owner.current, /mob/living/silicon)) return 0 if(SSshuttle.emergency.mode < SHUTTLE_ENDGAME) @@ -237,11 +237,11 @@ datum/objective/block/check_completion() return 1 -datum/objective/escape +/datum/objective/escape explanation_text = "Escape on the shuttle or an escape pod alive and without being in custody." dangerrating = 5 -datum/objective/escape/check_completion() +/datum/objective/escape/check_completion() if(issilicon(owner.current)) return 0 if(isbrain(owner.current)) @@ -262,16 +262,16 @@ datum/objective/escape/check_completion() return 0 -datum/objective/escape/escape_with_identity +/datum/objective/escape/escape_with_identity dangerrating = 10 var/target_real_name // Has to be stored because the target's real_name can change over the course of the round var/target_missing_id -datum/objective/escape/escape_with_identity/find_target() +/datum/objective/escape/escape_with_identity/find_target() target = ..() update_explanation_text() -datum/objective/escape/escape_with_identity/update_explanation_text() +/datum/objective/escape/escape_with_identity/update_explanation_text() if(target && target.current) target_real_name = target.current.real_name explanation_text = "Escape on the shuttle or an escape pod with the identity of [target_real_name], the [target.assigned_role]" @@ -287,7 +287,7 @@ datum/objective/escape/escape_with_identity/update_explanation_text() else explanation_text = "Free Objective." -datum/objective/escape/escape_with_identity/check_completion() +/datum/objective/escape/escape_with_identity/check_completion() if(!target_real_name) return 1 if(!ishuman(owner.current)) @@ -300,11 +300,11 @@ datum/objective/escape/escape_with_identity/check_completion() return 0 -datum/objective/survive +/datum/objective/survive explanation_text = "Stay alive until the end." dangerrating = 3 -datum/objective/survive/check_completion() +/datum/objective/survive/check_completion() if(!owner.current || owner.current.stat == DEAD || isbrain(owner.current)) return 0 //Brains no longer win survive objectives. --NEO if(!is_special_character(owner.current)) //This fails borg'd traitors @@ -312,11 +312,11 @@ datum/objective/survive/check_completion() return 1 -datum/objective/martyr +/datum/objective/martyr explanation_text = "Die a glorious death." dangerrating = 1 -datum/objective/martyr/check_completion() +/datum/objective/martyr/check_completion() if(!owner.current) //Gibbed, etc. return 1 if(owner.current && owner.current.stat == DEAD) //You're dead! Yay! @@ -324,34 +324,34 @@ datum/objective/martyr/check_completion() return 0 -datum/objective/nuclear +/datum/objective/nuclear explanation_text = "Destroy the station with a nuclear device." martyr_compatible = 1 var/global/list/possible_items = list() -datum/objective/steal +/datum/objective/steal var/datum/objective_item/targetinfo = null //Save the chosen item datum so we can access it later. var/obj/item/steal_target = null //Needed for custom objectives (they're just items, not datums). dangerrating = 5 //Overridden by the individual item's difficulty, but defaults to 5 for custom objectives. martyr_compatible = 0 -datum/objective/steal/get_target() +/datum/objective/steal/get_target() return steal_target -datum/objective/steal/New() +/datum/objective/steal/New() ..() if(!possible_items.len)//Only need to fill the list when it's needed. init_subtypes(/datum/objective_item/steal,possible_items) -datum/objective/steal/find_target() +/datum/objective/steal/find_target() var/approved_targets = list() for(var/datum/objective_item/possible_item in possible_items) if(is_unique_objective(possible_item.targetitem)) approved_targets += possible_item return set_target(safepick(possible_items)) -datum/objective/steal/proc/set_target(var/datum/objective_item/item) +/datum/objective/steal/proc/set_target(var/datum/objective_item/item) if(item) targetinfo = item @@ -363,7 +363,7 @@ datum/objective/steal/proc/set_target(var/datum/objective_item/item) explanation_text = "Free objective" return -datum/objective/steal/proc/select_target() //For admins setting objectives manually. +/datum/objective/steal/proc/select_target() //For admins setting objectives manually. var/list/possible_items_all = possible_items+"custom" var/new_target = input("Select target:", "Objective target", steal_target) as null|anything in possible_items_all if (!new_target) return @@ -383,7 +383,7 @@ datum/objective/steal/proc/select_target() //For admins setting objectives manua set_target(new_target) return steal_target -datum/objective/steal/check_completion() +/datum/objective/steal/check_completion() if(!steal_target) return 1 if(!isliving(owner.current)) return 0 var/list/all_items = owner.current.GetAllContents() //this should get things in cheesewheels, books, etc. @@ -401,23 +401,23 @@ datum/objective/steal/check_completion() return 0 var/global/list/possible_items_special = list() -datum/objective/steal/special //ninjas are so special they get their own subtype good for them +/datum/objective/steal/special //ninjas are so special they get their own subtype good for them -datum/objective/steal/special/New() +/datum/objective/steal/special/New() ..() if(!possible_items_special.len) init_subtypes(/datum/objective_item/special,possible_items) init_subtypes(/datum/objective_item/stack,possible_items) -datum/objective/steal/special/find_target() +/datum/objective/steal/special/find_target() return set_target(pick(possible_items_special)) -datum/objective/steal/exchange +/datum/objective/steal/exchange dangerrating = 10 -datum/objective/steal/exchange/proc/set_faction(var/faction,var/otheragent) +/datum/objective/steal/exchange/proc/set_faction(var/faction,var/otheragent) target = otheragent if(faction == "red") targetinfo = new/datum/objective_item/unique/docs_blue @@ -427,7 +427,7 @@ datum/objective/steal/exchange/proc/set_faction(var/faction,var/otheragent) steal_target = targetinfo.targetitem -datum/objective/steal/exchange/update_explanation_text() +/datum/objective/steal/exchange/update_explanation_text() ..() if(target && target.current) explanation_text = "Acquire [targetinfo.name] held by [target.name], the [target.assigned_role] and syndicate agent" @@ -435,10 +435,10 @@ datum/objective/steal/exchange/update_explanation_text() explanation_text = "Free Objective" -datum/objective/steal/exchange/backstab +/datum/objective/steal/exchange/backstab dangerrating = 3 -datum/objective/steal/exchange/backstab/set_faction(var/faction) +/datum/objective/steal/exchange/backstab/set_faction(var/faction) if(faction == "red") targetinfo = new/datum/objective_item/unique/docs_red else if(faction == "blue") @@ -447,15 +447,15 @@ datum/objective/steal/exchange/backstab/set_faction(var/faction) steal_target = targetinfo.targetitem -datum/objective/download +/datum/objective/download dangerrating = 10 -datum/objective/download/proc/gen_amount_goal() +/datum/objective/download/proc/gen_amount_goal() target_amount = rand(10,20) explanation_text = "Download [target_amount] research level\s." return target_amount -datum/objective/download/check_completion()//NINJACODE +/datum/objective/download/check_completion()//NINJACODE if(!ishuman(owner.current)) return 0 @@ -483,15 +483,15 @@ datum/objective/download/check_completion()//NINJACODE -datum/objective/capture +/datum/objective/capture dangerrating = 10 -datum/objective/capture/proc/gen_amount_goal() +/datum/objective/capture/proc/gen_amount_goal() target_amount = rand(5,10) explanation_text = "Accumulate [target_amount] capture point\s. It is better if they remain relatively unharmed." return target_amount -datum/objective/capture/check_completion()//Basically runs through all the mobs in the area to determine how much they are worth. +/datum/objective/capture/check_completion()//Basically runs through all the mobs in the area to determine how much they are worth. var/captured_amount = 0 var/area/centcom/holding/A = locate() for(var/mob/living/carbon/human/M in A)//Humans. @@ -523,10 +523,10 @@ datum/objective/capture/check_completion()//Basically runs through all the mobs -datum/objective/absorb +/datum/objective/absorb dangerrating = 10 -datum/objective/absorb/proc/gen_amount_goal(var/lowbound = 4, var/highbound = 6) +/datum/objective/absorb/proc/gen_amount_goal(var/lowbound = 4, var/highbound = 6) target_amount = rand (lowbound,highbound) if (ticker) var/n_p = 1 //autowin @@ -543,7 +543,7 @@ datum/objective/absorb/proc/gen_amount_goal(var/lowbound = 4, var/highbound = 6) explanation_text = "Extract [target_amount] compatible genome\s." return target_amount -datum/objective/absorb/check_completion() +/datum/objective/absorb/check_completion() if(owner && owner.changeling && owner.changeling.absorbed_dna && (owner.changeling.absorbedcount >= target_amount)) return 1 else @@ -551,25 +551,25 @@ datum/objective/absorb/check_completion() -datum/objective/destroy +/datum/objective/destroy dangerrating = 10 martyr_compatible = 1 -datum/objective/destroy/find_target() +/datum/objective/destroy/find_target() var/list/possible_targets = active_ais(1) var/mob/living/silicon/ai/target_ai = pick(possible_targets) target = target_ai.mind update_explanation_text() return target -datum/objective/destroy/check_completion() +/datum/objective/destroy/check_completion() if(target && target.current) if(target.current.stat == DEAD || target.current.z > 6 || !target.current.ckey) //Borgs/brains/AIs count as dead for traitor objectives. --NeoFite return 1 return 0 return 1 -datum/objective/destroy/update_explanation_text() +/datum/objective/destroy/update_explanation_text() ..() if(target && target.current) explanation_text = "Destroy [target.name], the experimental AI." diff --git a/code/game/gamemodes/objective_items.dm b/code/game/gamemodes/objective_items.dm index ca69a926263d..44da2ef735d4 100644 --- a/code/game/gamemodes/objective_items.dm +++ b/code/game/gamemodes/objective_items.dm @@ -1,126 +1,126 @@ //Contains the target item datums for Steal objectives. -datum/objective_item +/datum/objective_item var/name = "A silly bike horn! Honk!" var/targetitem = /obj/item/weapon/bikehorn //typepath of the objective item var/difficulty = 9001 //vaguely how hard it is to do this objective var/list/excludefromjob = list() //If you don't want a job to get a certain objective (no captain stealing his own medal, etcetc) var/list/altitems = list() //Items which can serve as an alternative to the objective (darn you blueprints) -datum/proc/check_special_completion() //for objectives with special checks (is that slime extract unused? does that intellicard have an ai in it? etcetc) +/datum/proc/check_special_completion() //for objectives with special checks (is that slime extract unused? does that intellicard have an ai in it? etcetc) return 1 -datum/objective_item/steal/caplaser +/datum/objective_item/steal/caplaser name = "the captain's antique laser gun" targetitem = /obj/item/weapon/gun/energy/laser/captain difficulty = 5 excludefromjob = list("Captain") -datum/objective_item/steal/hoslaser +/datum/objective_item/steal/hoslaser name = "the head of security's personal laser gun" targetitem = /obj/item/weapon/gun/energy/gun/hos difficulty = 10 excludefromjob = list("Head Of Security") -datum/objective_item/steal/handtele +/datum/objective_item/steal/handtele name = "a hand teleporter" targetitem = /obj/item/weapon/hand_tele difficulty = 5 excludefromjob = list("Captain") -datum/objective_item/steal/rcd +/datum/objective_item/steal/rcd name = "a rapid-construction-device" targetitem = /obj/item/weapon/rcd difficulty = 3 excludefromjob = list("Chief Engineer", "Quartermaster", "Cargo Technician") -datum/objective_item/steal/jetpack +/datum/objective_item/steal/jetpack name = "a jetpack" targetitem = /obj/item/weapon/tank/jetpack difficulty = 3 excludefromjob = list("Chief Engineer") -datum/objective_item/steal/magboots +/datum/objective_item/steal/magboots name = "the chief engineer's advanced magnetic boots" targetitem = /obj/item/clothing/shoes/magboots/advance difficulty = 5 excludefromjob = list("Chief Engineer") -datum/objective_item/steal/corgimeat +/datum/objective_item/steal/corgimeat name = "a piece of corgi meat" targetitem = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/corgi difficulty = 5 excludefromjob = list("Head of Personnel", "Quartermaster", "Cargo Technician") //>hurting your little buddy ever -datum/objective_item/steal/capmedal +/datum/objective_item/steal/capmedal name = "the medal of captaincy" targetitem = /obj/item/clothing/tie/medal/gold/captain difficulty = 5 excludefromjob = list("Captain") -datum/objective_item/steal/hypo +/datum/objective_item/steal/hypo name = "the hypospray" targetitem = /obj/item/weapon/reagent_containers/hypospray/CMO difficulty = 5 excludefromjob = list("Chief Medical Officer") -datum/objective_item/steal/nukedisc +/datum/objective_item/steal/nukedisc name = "the nuclear authentication disk" targetitem = /obj/item/weapon/disk/nuclear difficulty = 5 excludefromjob = list("Captain") -datum/objective_item/steal/ablative +/datum/objective_item/steal/ablative name = "an ablative armor vest" targetitem = /obj/item/clothing/suit/armor/laserproof difficulty = 3 excludefromjob = list("Head of Security", "Warden") -datum/objective_item/steal/reactive +/datum/objective_item/steal/reactive name = "the reactive teleport armor" targetitem = /obj/item/clothing/suit/armor/reactive difficulty = 5 excludefromjob = list("Research Director") -datum/objective_item/steal/documents +/datum/objective_item/steal/documents name = "any set of secret documents of any organization" targetitem = /obj/item/documents //Any set of secret documents. Doesn't have to be NT's difficulty = 5 //Items with special checks! -datum/objective_item/steal/plasma +/datum/objective_item/steal/plasma name = "28 moles of plasma (full tank)" targetitem = /obj/item/weapon/tank difficulty = 3 excludefromjob = list("Chief Engineer","Research Director","Station Engineer","Scientist","Atmospheric Technician") -datum/objective_item/plasma/check_special_completion(var/obj/item/weapon/tank/T) +/datum/objective_item/plasma/check_special_completion(var/obj/item/weapon/tank/T) var/target_amount = text2num(name) var/found_amount = 0 found_amount += T.air_contents.toxins return found_amount>=target_amount -datum/objective_item/steal/functionalai +/datum/objective_item/steal/functionalai name = "a functional AI" targetitem = /obj/item/device/aicard difficulty = 20 //beyond the impossible -datum/objective_item/functionalai/check_special_completion(var/obj/item/device/aicard/C) +/datum/objective_item/functionalai/check_special_completion(var/obj/item/device/aicard/C) for(var/mob/living/silicon/ai/A in C) if(istype(A, /mob/living/silicon/ai) && A.stat != 2) //See if any AI's are alive inside that card. return 1 return 0 -datum/objective_item/steal/blueprints +/datum/objective_item/steal/blueprints name = "the station blueprints" targetitem = /obj/item/areaeditor/blueprints difficulty = 10 excludefromjob = list("Chief Engineer") altitems = list(/obj/item/weapon/photo) -datum/objective_item/blueprints/check_special_completion(var/obj/item/I) +/datum/objective_item/blueprints/check_special_completion(var/obj/item/I) if(istype(I, /obj/item/areaeditor/blueprints)) return 1 if(istype(I, /obj/item/weapon/photo)) @@ -129,66 +129,66 @@ datum/objective_item/blueprints/check_special_completion(var/obj/item/I) return 1 return 0 -datum/objective_item/steal/slime +/datum/objective_item/steal/slime name = "an unused sample of slime extract" targetitem = /obj/item/slime_extract difficulty = 3 excludefromjob = list("Research Director","Scientist") -datum/objective_item/slime/check_special_completion(var/obj/item/slime_extract/E) +/datum/objective_item/slime/check_special_completion(var/obj/item/slime_extract/E) if(E.Uses > 0) return 1 return 0 //Unique Objectives -datum/objective_item/unique/docs_red +/datum/objective_item/unique/docs_red name = "the \"Red\" secret documents" targetitem = /obj/item/documents/syndicate/red difficulty = 10 -datum/objective_item/unique/docs_blue +/datum/objective_item/unique/docs_blue name = "the \"Blue\" secret documents" targetitem = /obj/item/documents/syndicate/blue difficulty = 10 //Old ninja objectives. -datum/objective_item/special/pinpointer +/datum/objective_item/special/pinpointer name = "the captain's pinpointer" targetitem = /obj/item/weapon/pinpointer difficulty = 10 -datum/objective_item/special/aegun +/datum/objective_item/special/aegun name = "an advanced energy gun" targetitem = /obj/item/weapon/gun/energy/gun/nuclear difficulty = 10 -datum/objective_item/special/ddrill +/datum/objective_item/special/ddrill name = "a diamond drill" targetitem = /obj/item/weapon/pickaxe/drill/diamonddrill difficulty = 10 -datum/objective_item/special/boh +/datum/objective_item/special/boh name = "a bag of holding" targetitem = /obj/item/weapon/storage/backpack/holding difficulty = 10 -datum/objective_item/special/hypercell +/datum/objective_item/special/hypercell name = "a hyper-capacity cell" targetitem = /obj/item/weapon/stock_parts/cell/hyper difficulty = 5 -datum/objective_item/special/laserpointer +/datum/objective_item/special/laserpointer name = "a laser pointer" targetitem = /obj/item/device/laser_pointer difficulty = 5 //Stack objectives get their own subtype -datum/objective_item/stack +/datum/objective_item/stack name = "5 cardboards" targetitem = /obj/item/stack/sheet/cardboard difficulty = 9001 -datum/objective_item/stack/check_special_completion(var/obj/item/stack/S) +/datum/objective_item/stack/check_special_completion(var/obj/item/stack/S) var/target_amount = text2num(name) var/found_amount = 0 @@ -196,17 +196,17 @@ datum/objective_item/stack/check_special_completion(var/obj/item/stack/S) found_amount = S.amount return found_amount>=target_amount -datum/objective_item/stack/diamond +/datum/objective_item/stack/diamond name = "10 diamonds" targetitem = /obj/item/stack/sheet/mineral/diamond difficulty = 10 -datum/objective_item/stack/gold +/datum/objective_item/stack/gold name = "50 gold bars" targetitem = /obj/item/stack/sheet/mineral/gold difficulty = 15 -datum/objective_item/stack/uranium +/datum/objective_item/stack/uranium name = "25 refined uranium bars" targetitem = /obj/item/stack/sheet/mineral/uranium difficulty = 10 diff --git a/code/game/gamemodes/sandbox/airlock_maker.dm b/code/game/gamemodes/sandbox/airlock_maker.dm index 7a8f7beb7c74..81f99c6297cf 100644 --- a/code/game/gamemodes/sandbox/airlock_maker.dm +++ b/code/game/gamemodes/sandbox/airlock_maker.dm @@ -7,12 +7,12 @@ obj/structure/door_assembly var/datum/airlock_maker/maker = null -obj/structure/door_assembly/attack_hand() +/obj/structure/door_assembly/attack_hand() ..() if(maker) maker.interact() -datum/airlock_maker +/datum/airlock_maker var/obj/structure/door_assembly/linked = null var/list/access_used = null @@ -23,7 +23,7 @@ datum/airlock_maker var/doorname = "airlock" -datum/airlock_maker/New(var/atom/target_loc) +/datum/airlock_maker/New(var/atom/target_loc) linked = new(target_loc) linked.maker = src linked.anchored = 0 @@ -31,7 +31,7 @@ datum/airlock_maker/New(var/atom/target_loc) interact() -datum/airlock_maker/proc/linkpretty(href,desc,active) +/datum/airlock_maker/proc/linkpretty(href,desc,active) if(!desc) var/static/list/defaults = list("No","Yes") desc = defaults[active+1] @@ -39,7 +39,7 @@ datum/airlock_maker/proc/linkpretty(href,desc,active) return "[desc]" return "[desc]" -datum/airlock_maker/proc/interact() +/datum/airlock_maker/proc/interact() var/list/leftcolumn = list() var/list/rightcolumn = list() leftcolumn += "Required Access" @@ -68,7 +68,7 @@ datum/airlock_maker/proc/interact() dat += "
Finalize Airlock Construction | Cancel and Destroy Airlock" usr << browse(dat,"window=airlockmaker") -datum/airlock_maker/Topic(var/href,var/list/href_list) +/datum/airlock_maker/Topic(var/href,var/list/href_list) if(!usr) return if(!src || !linked || !linked.loc) usr << browse(null,"window=airlockmaker") diff --git a/code/game/gamemodes/sandbox/h_sandbox.dm b/code/game/gamemodes/sandbox/h_sandbox.dm index 976b992f2bed..92142cfe3942 100644 --- a/code/game/gamemodes/sandbox/h_sandbox.dm +++ b/code/game/gamemodes/sandbox/h_sandbox.dm @@ -4,19 +4,19 @@ var/hsboxspawn = 1 mob var/datum/hSB/sandbox = null -mob/proc/CanBuild() +/mob/proc/CanBuild() if(master_mode == "sandbox") sandbox = new/datum/hSB sandbox.owner = src.ckey if(src.client.holder) sandbox.admin = 1 verbs += new/mob/proc/sandbox_panel -mob/proc/sandbox_panel() +/mob/proc/sandbox_panel() set name = "Sandbox Panel" if(sandbox) sandbox.update() -datum/hSB +/datum/hSB var/owner = null var/admin = 0 @@ -32,7 +32,7 @@ datum/hSB /obj/item/device/uplink/hidden, /obj/item/smallDelivery, /obj/item/missile,/obj/item/projectile, /obj/item/borg/sight,/obj/item/borg/overdrive,/obj/item/borg/stun,/obj/item/weapon/robot_module) -datum/hSB/proc/update() +/datum/hSB/proc/update() var/global/list/hrefs = list( "Space Gear", "Suit Up (Space Travel Gear)" = "hsbsuit", @@ -101,7 +101,7 @@ datum/hSB/proc/update() usr << browse(hsbinfo, "window=hsbpanel") -datum/hSB/Topic(href, href_list) +/datum/hSB/Topic(href, href_list) if(!usr || !src || !(src.owner == usr.ckey)) if(usr) usr << browse(null,"window=sandbox") diff --git a/code/game/gamemodes/shadowling/shadowling_abilities.dm b/code/game/gamemodes/shadowling/shadowling_abilities.dm index a21f41baa545..d6abcab574fe 100644 --- a/code/game/gamemodes/shadowling/shadowling_abilities.dm +++ b/code/game/gamemodes/shadowling/shadowling_abilities.dm @@ -355,14 +355,14 @@ S.start() qdel(B) -datum/reagent/shadowling_blindness_smoke //Blinds non-shadowlings, heals shadowlings/thralls +/datum/reagent/shadowling_blindness_smoke //Blinds non-shadowlings, heals shadowlings/thralls name = "!(%@ ERROR )!@$" id = "blindness_smoke" description = "<::ERROR::> CANNOT ANALYZE REAGENT <::ERROR::>" color = "#000000" //Complete black (RGB: 0, 0, 0) metabolization_rate = 100 //lel -datum/reagent/shadowling_blindness_smoke/on_mob_life(var/mob/living/M as mob) +/datum/reagent/shadowling_blindness_smoke/on_mob_life(var/mob/living/M as mob) if(!M) M = holder.my_atom if(!is_shadow_or_thrall(M)) M << "You breathe in the black smoke, and your eyes burn horribly!" diff --git a/code/game/machinery/embedded_controller/airlock_controller.dm b/code/game/machinery/embedded_controller/airlock_controller.dm index 1e702ac8c242..6ef3d8e0dd61 100644 --- a/code/game/machinery/embedded_controller/airlock_controller.dm +++ b/code/game/machinery/embedded_controller/airlock_controller.dm @@ -5,7 +5,7 @@ #define AIRLOCK_STATE_DEPRESSURIZE 1 #define AIRLOCK_STATE_OUTOPEN 2 -datum/computer/file/embedded_program/airlock_controller +/datum/computer/file/embedded_program/airlock_controller var/id_tag var/exterior_door_tag var/interior_door_tag @@ -17,7 +17,7 @@ datum/computer/file/embedded_program/airlock_controller var/target_state = AIRLOCK_STATE_CLOSED var/sensor_pressure = null -datum/computer/file/embedded_program/airlock_controller/receive_signal(datum/signal/signal, receive_method, receive_param) +/datum/computer/file/embedded_program/airlock_controller/receive_signal(datum/signal/signal, receive_method, receive_param) var/receive_tag = signal.data["tag"] if(!receive_tag) return @@ -45,7 +45,7 @@ datum/computer/file/embedded_program/airlock_controller/receive_signal(datum/sig else target_state = AIRLOCK_STATE_INOPEN -datum/computer/file/embedded_program/airlock_controller/receive_user_command(command) +/datum/computer/file/embedded_program/airlock_controller/receive_user_command(command) switch(command) if("cycle_closed") target_state = AIRLOCK_STATE_CLOSED @@ -56,7 +56,7 @@ datum/computer/file/embedded_program/airlock_controller/receive_user_command(com if("abort") target_state = AIRLOCK_STATE_CLOSED -datum/computer/file/embedded_program/airlock_controller/process() +/datum/computer/file/embedded_program/airlock_controller/process() var/process_again = 1 while(process_again) process_again = 0 @@ -201,7 +201,7 @@ datum/computer/file/embedded_program/airlock_controller/process() return 1 -obj/machinery/embedded_controller/radio/airlock_controller +/obj/machinery/embedded_controller/radio/airlock_controller icon = 'icons/obj/airlock_machines.dmi' icon_state = "airlock_control_standby" @@ -219,7 +219,7 @@ obj/machinery/embedded_controller/radio/airlock_controller var/sensor_tag var/sanitize_external -obj/machinery/embedded_controller/radio/airlock_controller/initialize() +/obj/machinery/embedded_controller/radio/airlock_controller/initialize() ..() var/datum/computer/file/embedded_program/airlock_controller/new_prog = new @@ -234,7 +234,7 @@ obj/machinery/embedded_controller/radio/airlock_controller/initialize() new_prog.master = src program = new_prog -obj/machinery/embedded_controller/radio/airlock_controller/update_icon() +/obj/machinery/embedded_controller/radio/airlock_controller/update_icon() if(on && program) if(program.memory["processing"]) icon_state = "airlock_control_process" @@ -244,7 +244,7 @@ obj/machinery/embedded_controller/radio/airlock_controller/update_icon() icon_state = "airlock_control_off" -obj/machinery/embedded_controller/radio/airlock_controller/return_text() +/obj/machinery/embedded_controller/radio/airlock_controller/return_text() var/state_options = null var/state = 0 diff --git a/code/game/machinery/embedded_controller/embedded_controller_base.dm b/code/game/machinery/embedded_controller/embedded_controller_base.dm index 6f9b91169b02..ac2b9b6ff7d7 100644 --- a/code/game/machinery/embedded_controller/embedded_controller_base.dm +++ b/code/game/machinery/embedded_controller/embedded_controller_base.dm @@ -1,23 +1,23 @@ -datum/computer/file/embedded_program +/datum/computer/file/embedded_program var/list/memory = list() var/state var/obj/machinery/embedded_controller/master -datum/computer/file/embedded_program/proc/post_signal(datum/signal/signal, comm_line) +/datum/computer/file/embedded_program/proc/post_signal(datum/signal/signal, comm_line) if(master) master.post_signal(signal, comm_line) else del(signal) -datum/computer/file/embedded_program/proc/receive_user_command(command) +/datum/computer/file/embedded_program/proc/receive_user_command(command) -datum/computer/file/embedded_program/proc/receive_signal(datum/signal/signal, receive_method, receive_param) +/datum/computer/file/embedded_program/proc/receive_signal(datum/signal/signal, receive_method, receive_param) return null -datum/computer/file/embedded_program/process() +/datum/computer/file/embedded_program/process() return 0 -obj/machinery/embedded_controller +/obj/machinery/embedded_controller var/datum/computer/file/embedded_program/program name = "embedded controller" @@ -26,7 +26,7 @@ obj/machinery/embedded_controller var/on = 1 -obj/machinery/embedded_controller/interact(mob/user as mob) +/obj/machinery/embedded_controller/interact(mob/user as mob) //user << browse(return_text(), "window=computer") //onclose(user, "computer") user.set_machine(src) @@ -35,24 +35,24 @@ obj/machinery/embedded_controller/interact(mob/user as mob) popup.set_content(return_text()) popup.open() -obj/machinery/embedded_controller/attack_hand(mob/user as mob) +/obj/machinery/embedded_controller/attack_hand(mob/user as mob) interact(user) -obj/machinery/embedded_controller/update_icon() +/obj/machinery/embedded_controller/update_icon() -obj/machinery/embedded_controller/proc/return_text() +/obj/machinery/embedded_controller/proc/return_text() -obj/machinery/embedded_controller/proc/post_signal(datum/signal/signal, comm_line) +/obj/machinery/embedded_controller/proc/post_signal(datum/signal/signal, comm_line) return 0 -obj/machinery/embedded_controller/receive_signal(datum/signal/signal, receive_method, receive_param) +/obj/machinery/embedded_controller/receive_signal(datum/signal/signal, receive_method, receive_param) if(!signal || signal.encryption) return if(program) program.receive_signal(signal, receive_method, receive_param) //spawn(5) program.process() //no, program.process sends some signals and machines respond and we here again and we lag -rastaf0 -obj/machinery/embedded_controller/Topic(href, href_list) +/obj/machinery/embedded_controller/Topic(href, href_list) if(..()) return 0 @@ -63,33 +63,33 @@ obj/machinery/embedded_controller/Topic(href, href_list) usr.set_machine(src) spawn(5) src.updateDialog() -obj/machinery/embedded_controller/process() +/obj/machinery/embedded_controller/process() if(program) program.process() update_icon() src.updateDialog() -obj/machinery/embedded_controller/radio +/obj/machinery/embedded_controller/radio var/frequency var/datum/radio_frequency/radio_connection -obj/machinery/embedded_controller/radio/Destroy() +/obj/machinery/embedded_controller/radio/Destroy() if(radio_controller) radio_controller.remove_object(src,frequency) ..() -obj/machinery/embedded_controller/radio/initialize() +/obj/machinery/embedded_controller/radio/initialize() set_frequency(frequency) -obj/machinery/embedded_controller/radio/post_signal(datum/signal/signal) +/obj/machinery/embedded_controller/radio/post_signal(datum/signal/signal) signal.transmission_method = TRANSMISSION_RADIO if(radio_connection) return radio_connection.post_signal(src, signal) else signal = null -obj/machinery/embedded_controller/radio/proc/set_frequency(new_frequency) +/obj/machinery/embedded_controller/radio/proc/set_frequency(new_frequency) radio_controller.remove_object(src, frequency) frequency = new_frequency radio_connection = radio_controller.add_object(src, frequency) diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 54a982ced76b..2b18143eb8b6 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -709,7 +709,7 @@ -obj/item/toy/cards +/obj/item/toy/cards var/parentdeck = null var/deckstyle = "nanotrasen" var/card_hitsound = null @@ -719,14 +719,14 @@ obj/item/toy/cards var/card_throw_range = 7 var/list/card_attack_verb = list("attacked") -obj/item/toy/cards/New() +/obj/item/toy/cards/New() ..() -obj/item/toy/cards/proc/apply_card_vars(obj/item/toy/cards/newobj, obj/item/toy/cards/sourceobj) // Applies variables for supporting multiple types of card deck +/obj/item/toy/cards/proc/apply_card_vars(obj/item/toy/cards/newobj, obj/item/toy/cards/sourceobj) // Applies variables for supporting multiple types of card deck if(!istype(sourceobj)) return -obj/item/toy/cards/deck +/obj/item/toy/cards/deck name = "deck of cards" desc = "A deck of space-grade playing cards." icon = 'icons/obj/toy.dmi' @@ -736,7 +736,7 @@ obj/item/toy/cards/deck var/cooldown = 0 var/list/cards = list() -obj/item/toy/cards/deck/New() +/obj/item/toy/cards/deck/New() ..() icon_state = "deck_[deckstyle]_full" for(var/i = 2; i <= 10; i++) @@ -762,7 +762,7 @@ obj/item/toy/cards/deck/New() cards += "Ace of Diamonds" -obj/item/toy/cards/deck/attack_hand(mob/user as mob) +/obj/item/toy/cards/deck/attack_hand(mob/user as mob) if(user.lying) return var/choice = null @@ -787,14 +787,14 @@ obj/item/toy/cards/deck/attack_hand(mob/user as mob) else if(cards.len > 1) src.icon_state = "deck_[deckstyle]_low" -obj/item/toy/cards/deck/attack_self(mob/user as mob) +/obj/item/toy/cards/deck/attack_self(mob/user as mob) if(cooldown < world.time - 50) cards = shuffle(cards) playsound(user, 'sound/items/cardshuffle.ogg', 50, 1) user.visible_message("[user] shuffles the deck.", "You shuffle the deck.") cooldown = world.time -obj/item/toy/cards/deck/attackby(obj/item/toy/cards/singlecard/C, mob/living/user, params) +/obj/item/toy/cards/deck/attackby(obj/item/toy/cards/singlecard/C, mob/living/user, params) ..() if(istype(C)) if(C.parentdeck == src) @@ -814,7 +814,7 @@ obj/item/toy/cards/deck/attackby(obj/item/toy/cards/singlecard/C, mob/living/use src.icon_state = "deck_[deckstyle]_low" -obj/item/toy/cards/deck/attackby(obj/item/toy/cards/cardhand/C, mob/living/user, params) +/obj/item/toy/cards/deck/attackby(obj/item/toy/cards/cardhand/C, mob/living/user, params) ..() if(istype(C)) if(C.parentdeck == src) @@ -854,7 +854,7 @@ obj/item/toy/cards/deck/attackby(obj/item/toy/cards/cardhand/C, mob/living/user, -obj/item/toy/cards/cardhand +/obj/item/toy/cards/cardhand name = "hand of cards" desc = "A number of cards not in a deck, customarily held in ones hand." icon = 'icons/obj/toy.dmi' @@ -864,11 +864,11 @@ obj/item/toy/cards/cardhand var/choice = null -obj/item/toy/cards/cardhand/attack_self(mob/user as mob) +/obj/item/toy/cards/cardhand/attack_self(mob/user as mob) user.set_machine(src) interact(user) -obj/item/toy/cards/cardhand/interact(mob/user) +/obj/item/toy/cards/cardhand/interact(mob/user) var/dat = "You have:
" for(var/t in currenthand) dat += "A [t].
" @@ -879,7 +879,7 @@ obj/item/toy/cards/cardhand/interact(mob/user) popup.open() -obj/item/toy/cards/cardhand/Topic(href, href_list) +/obj/item/toy/cards/cardhand/Topic(href, href_list) if(..()) return if(usr.stat || !ishuman(usr) || !usr.canmove) @@ -918,7 +918,7 @@ obj/item/toy/cards/cardhand/Topic(href, href_list) qdel(src) return -obj/item/toy/cards/cardhand/attackby(obj/item/toy/cards/singlecard/C, mob/living/user, params) +/obj/item/toy/cards/cardhand/attackby(obj/item/toy/cards/singlecard/C, mob/living/user, params) if(istype(C)) if(C.parentdeck == src.parentdeck) src.currenthand += C.cardname @@ -935,7 +935,7 @@ obj/item/toy/cards/cardhand/attackby(obj/item/toy/cards/singlecard/C, mob/living else user << "You can't mix cards from other decks!" -obj/item/toy/cards/cardhand/apply_card_vars(obj/item/toy/cards/newobj,obj/item/toy/cards/sourceobj) +/obj/item/toy/cards/cardhand/apply_card_vars(obj/item/toy/cards/newobj,obj/item/toy/cards/sourceobj) ..() newobj.deckstyle = sourceobj.deckstyle newobj.icon_state = "[deckstyle]_hand2" // Another dumb hack, without this the hand is invisible (or has the default deckstyle) until another card is added. @@ -947,7 +947,7 @@ obj/item/toy/cards/cardhand/apply_card_vars(obj/item/toy/cards/newobj,obj/item/t newobj.card_attack_verb = sourceobj.card_attack_verb -obj/item/toy/cards/singlecard +/obj/item/toy/cards/singlecard name = "card" desc = "a card" icon = 'icons/obj/toy.dmi' @@ -958,7 +958,7 @@ obj/item/toy/cards/singlecard pixel_x = -5 -obj/item/toy/cards/singlecard/examine(mob/user) +/obj/item/toy/cards/singlecard/examine(mob/user) if(ishuman(user)) var/mob/living/carbon/human/cardUser = user if(cardUser.get_item_by_slot(slot_l_hand) == src || cardUser.get_item_by_slot(slot_r_hand) == src) @@ -967,7 +967,7 @@ obj/item/toy/cards/singlecard/examine(mob/user) cardUser << "You need to have the card in your hand to check it!" -obj/item/toy/cards/singlecard/verb/Flip() +/obj/item/toy/cards/singlecard/verb/Flip() set name = "Flip Card" set category = "Object" set src in range(1) @@ -988,7 +988,7 @@ obj/item/toy/cards/singlecard/verb/Flip() src.name = "card" src.pixel_x = -5 -obj/item/toy/cards/singlecard/attackby(obj/item/I, mob/living/user, params) +/obj/item/toy/cards/singlecard/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/toy/cards/singlecard/)) var/obj/item/toy/cards/singlecard/C = I if(C.parentdeck == src.parentdeck) @@ -1024,12 +1024,12 @@ obj/item/toy/cards/singlecard/attackby(obj/item/I, mob/living/user, params) user << "You can't mix cards from other decks!" -obj/item/toy/cards/singlecard/attack_self(mob/user) +/obj/item/toy/cards/singlecard/attack_self(mob/user) if(usr.stat || !ishuman(usr) || !usr.canmove || usr.restrained()) return Flip() -obj/item/toy/cards/singlecard/apply_card_vars(obj/item/toy/cards/singlecard/newobj,obj/item/toy/cards/sourceobj) +/obj/item/toy/cards/singlecard/apply_card_vars(obj/item/toy/cards/singlecard/newobj,obj/item/toy/cards/sourceobj) ..() newobj.deckstyle = sourceobj.deckstyle newobj.icon_state = "singlecard_down_[deckstyle]" // Without this the card is invisible until flipped. It's an ugly hack, but it works. @@ -1051,7 +1051,7 @@ obj/item/toy/cards/singlecard/apply_card_vars(obj/item/toy/cards/singlecard/newo || Syndicate playing cards, for pretending you're Gambit and playing poker for the nuke disk. || */ -obj/item/toy/cards/deck/syndicate +/obj/item/toy/cards/deck/syndicate name = "suspicious looking deck of cards" desc = "A deck of space-grade playing cards. They seem unusually rigid." deckstyle = "syndicate" diff --git a/code/modules/admin/DB ban/functions.dm b/code/modules/admin/DB ban/functions.dm index 329fac62e988..31fa0254c7af 100644 --- a/code/modules/admin/DB ban/functions.dm +++ b/code/modules/admin/DB ban/functions.dm @@ -1,7 +1,7 @@ #define MAX_ADMIN_BANS_PER_ADMIN 1 //Either pass the mob you wish to ban in the 'banned_mob' attribute, or the banckey, banip and bancid variables. If both are passed, the mob takes priority! If a mob is not passed, banckey is the minimum that needs to be passed! banip and bancid are optional. -datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = -1, var/reason, var/job = "", var/rounds = 0, var/banckey = null, var/banip = null, var/bancid = null) +/datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = -1, var/reason, var/job = "", var/rounds = 0, var/banckey = null, var/banip = null, var/bancid = null) if(!check_rights(R_BAN)) return @@ -138,7 +138,7 @@ datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = del(banned_mob.client) -datum/admins/proc/DB_ban_unban(var/ckey, var/bantype, var/job = "") +/datum/admins/proc/DB_ban_unban(var/ckey, var/bantype, var/job = "") if(!check_rights(R_BAN)) return @@ -211,7 +211,7 @@ datum/admins/proc/DB_ban_unban(var/ckey, var/bantype, var/job = "") DB_ban_unban_by_id(ban_id) -datum/admins/proc/DB_ban_edit(var/banid = null, var/param = null) +/datum/admins/proc/DB_ban_edit(var/banid = null, var/param = null) if(!check_rights(R_BAN)) return @@ -271,7 +271,7 @@ datum/admins/proc/DB_ban_edit(var/banid = null, var/param = null) usr << "Cancelled" return -datum/admins/proc/DB_ban_unban_by_id(var/id) +/datum/admins/proc/DB_ban_unban_by_id(var/id) if(!check_rights(R_BAN)) return diff --git a/code/modules/admin/player_notes.dm b/code/modules/admin/player_notes.dm index c4a719767d32..af361a7895c5 100644 --- a/code/modules/admin/player_notes.dm +++ b/code/modules/admin/player_notes.dm @@ -26,11 +26,11 @@ popup.open() -datum/admins/proc/notes_show(var/ckey) +/datum/admins/proc/notes_show(var/ckey) usr << browse("Player Notes[notes_gethtml(ckey)]","window=player_notes;size=700x400") -datum/admins/proc/notes_gethtml(var/ckey) +/datum/admins/proc/notes_gethtml(var/ckey) var/savefile/notesfile = new(NOTESFILE) if(!notesfile) return "Error: Cannot access [NOTESFILE]" if(ckey) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index bd6ac94eb7e9..9aa3d14923ba 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -22,7 +22,7 @@ var/global/list/special_roles = list( //keep synced with the defines BE_* in set ) -datum/preferences +/datum/preferences //doohickeys for savefiles var/path var/default_slot = 1 //Holder so it doesn't default to slot 1, rather the last one used diff --git a/code/modules/food&drinks/recipes/tablecraft/recipes_burger.dm b/code/modules/food&drinks/recipes/tablecraft/recipes_burger.dm index feafb78594e5..ccdde3f66646 100644 --- a/code/modules/food&drinks/recipes/tablecraft/recipes_burger.dm +++ b/code/modules/food&drinks/recipes/tablecraft/recipes_burger.dm @@ -45,7 +45,7 @@ ) result = /obj/item/weapon/reagent_containers/food/snacks/burger/xeno -datum/table_recipe/bearger +/datum/table_recipe/bearger name = "Bearger" reqs = list( /obj/item/weapon/reagent_containers/food/snacks/meat/steak/bear = 1, diff --git a/code/modules/hydroponics/seed_extractor.dm b/code/modules/hydroponics/seed_extractor.dm index d3b7b030ea4b..00886646eb34 100644 --- a/code/modules/hydroponics/seed_extractor.dm +++ b/code/modules/hydroponics/seed_extractor.dm @@ -88,7 +88,7 @@ obj/machinery/seed_extractor/attackby(var/obj/item/O as obj, var/mob/user as mob else user << "You can't extract any seeds from \the [O.name]!" -datum/seed_pile +/datum/seed_pile var/name = "" var/lifespan = 0 //Saved stats var/endurance = 0 @@ -98,7 +98,7 @@ datum/seed_pile var/potency = 0 var/amount = 0 -datum/seed_pile/New(var/name, var/life, var/endur, var/matur, var/prod, var/yie, var/poten, var/am = 1) +/datum/seed_pile/New(var/name, var/life, var/endur, var/matur, var/prod, var/yie, var/poten, var/am = 1) src.name = name src.lifespan = life src.endurance = endur diff --git a/code/modules/library/lib_machines.dm b/code/modules/library/lib_machines.dm index 2bc127de6db3..254b383c7a4b 100644 --- a/code/modules/library/lib_machines.dm +++ b/code/modules/library/lib_machines.dm @@ -112,7 +112,7 @@ /* * Borrowbook datum */ -datum/borrowbook // Datum used to keep track of who has borrowed what when and for how long. +/datum/borrowbook // Datum used to keep track of who has borrowed what when and for how long. var/bookname var/mobname var/getdate @@ -121,7 +121,7 @@ datum/borrowbook // Datum used to keep track of who has borrowed what when and f /* * Cachedbook datum */ -datum/cachedbook // Datum used to cache the SQL DB books locally in order to achieve a performance gain. +/datum/cachedbook // Datum used to cache the SQL DB books locally in order to achieve a performance gain. var/id var/title var/author diff --git a/code/modules/reagents/Chemistry-Holder.dm b/code/modules/reagents/Chemistry-Holder.dm index 78aa677a4c6a..8167051c7adf 100644 --- a/code/modules/reagents/Chemistry-Holder.dm +++ b/code/modules/reagents/Chemistry-Holder.dm @@ -5,7 +5,7 @@ var/const/INGEST = 2 /////////////////////////////////////////////////////////////////////////////////// -datum/reagents +/datum/reagents var/list/datum/reagent/reagent_list = new/list() var/total_volume = 0 var/maximum_volume = 100 @@ -15,7 +15,7 @@ datum/reagents var/addiction_tick = 1 var/list/datum/reagent/addiction_list = new/list() -datum/reagents/New(maximum=100) +/datum/reagents/New(maximum=100) maximum_volume = maximum SSobj.processing |= src //I dislike having these here but map-objects are initialised before world/New() is called. >_> @@ -51,7 +51,7 @@ datum/reagents/New(maximum=100) chemical_reactions_list[id] += D break // Don't bother adding ourselves to other reagent ids, it is redundant. -datum/reagents/Destroy() +/datum/reagents/Destroy() ..() SSobj.processing.Remove(src) for(var/datum/reagent/R in reagent_list) @@ -61,7 +61,7 @@ datum/reagents/Destroy() if(my_atom && my_atom.reagents == src) my_atom.reagents = null -datum/reagents/proc/remove_any(var/amount=1) +/datum/reagents/proc/remove_any(var/amount=1) var/total_transfered = 0 var/current_list_element = 1 @@ -83,7 +83,7 @@ datum/reagents/proc/remove_any(var/amount=1) handle_reactions() return total_transfered -datum/reagents/proc/get_master_reagent_name() +/datum/reagents/proc/get_master_reagent_name() var/the_name = null var/the_volume = 0 for(var/datum/reagent/A in reagent_list) @@ -93,7 +93,7 @@ datum/reagents/proc/get_master_reagent_name() return the_name -datum/reagents/proc/get_master_reagent_id() +/datum/reagents/proc/get_master_reagent_id() var/the_id = null var/the_volume = 0 for(var/datum/reagent/A in reagent_list) @@ -103,7 +103,7 @@ datum/reagents/proc/get_master_reagent_id() return the_id -datum/reagents/proc/trans_to(var/obj/target, var/amount=1, var/multiplier=1, var/preserve_data=1)//if preserve_data=0, the reagents data will be lost. Usefull if you use data for some strange stuff and don't want it to be transferred. +/datum/reagents/proc/trans_to(var/obj/target, var/amount=1, var/multiplier=1, var/preserve_data=1)//if preserve_data=0, the reagents data will be lost. Usefull if you use data for some strange stuff and don't want it to be transferred. if (!target ) return var/datum/reagents/R @@ -133,7 +133,7 @@ datum/reagents/proc/trans_to(var/obj/target, var/amount=1, var/multiplier=1, var src.handle_reactions() return amount -datum/reagents/proc/copy_to(var/obj/target, var/amount=1, var/multiplier=1, var/preserve_data=1) +/datum/reagents/proc/copy_to(var/obj/target, var/amount=1, var/multiplier=1, var/preserve_data=1) if(!target) return if(!target.reagents || src.total_volume<=0) @@ -154,7 +154,7 @@ datum/reagents/proc/copy_to(var/obj/target, var/amount=1, var/multiplier=1, var/ src.handle_reactions() return amount -datum/reagents/proc/trans_id_to(var/obj/target, var/reagent, var/amount=1, var/preserve_data=1)//Not sure why this proc didn't exist before. It does now! /N +/datum/reagents/proc/trans_id_to(var/obj/target, var/reagent, var/amount=1, var/preserve_data=1)//Not sure why this proc didn't exist before. It does now! /N if (!target) return if (!target.reagents || src.total_volume<=0 || !src.get_reagent_amount(reagent)) @@ -211,7 +211,7 @@ datum/reagents/proc/trans_id_to(var/obj/target, var/reagent, var/amount=1, var/p return total_transfered */ -datum/reagents/proc/metabolize(var/mob/M) +/datum/reagents/proc/metabolize(var/mob/M) if(M) chem_temp = M.bodytemperature handle_reactions() @@ -265,22 +265,22 @@ datum/reagents/proc/metabolize(var/mob/M) addiction_tick++ update_total() -datum/reagents/process() +/datum/reagents/process() for(var/datum/reagent/R in reagent_list) R.on_tick() return -datum/reagents/proc/conditional_update_move(var/atom/A, var/Running = 0) +/datum/reagents/proc/conditional_update_move(var/atom/A, var/Running = 0) for(var/datum/reagent/R in reagent_list) R.on_move (A, Running) update_total() -datum/reagents/proc/conditional_update(var/atom/A) +/datum/reagents/proc/conditional_update(var/atom/A) for(var/datum/reagent/R in reagent_list) R.on_update (A) update_total() -datum/reagents/proc/handle_reactions() +/datum/reagents/proc/handle_reactions() if(my_atom.flags & NOREACT) return //Yup, no reactions here. No siree. var/reaction_occured = 0 @@ -367,14 +367,14 @@ datum/reagents/proc/handle_reactions() update_total() return 0 -datum/reagents/proc/isolate_reagent(var/reagent) +/datum/reagents/proc/isolate_reagent(var/reagent) for(var/A in reagent_list) var/datum/reagent/R = A if (R.id != reagent) del_reagent(R.id) update_total() -datum/reagents/proc/del_reagent(var/reagent) +/datum/reagents/proc/del_reagent(var/reagent) for(var/datum/reagent/R in reagent_list) if (R.id == reagent) if(istype(my_atom, /mob/living)) @@ -389,28 +389,28 @@ datum/reagents/proc/del_reagent(var/reagent) check_goreallyfast(my_atom) return 1 -datum/reagents/proc/check_ignoreslow(var/mob/M) +/datum/reagents/proc/check_ignoreslow(var/mob/M) if(istype(M, /mob)) if(M.reagents.has_reagent("morphine")||M.reagents.has_reagent("ephedrine")) return 1 else M.status_flags &= ~IGNORESLOWDOWN -datum/reagents/proc/check_gofast(var/mob/M) +/datum/reagents/proc/check_gofast(var/mob/M) if(istype(M, /mob)) if(M.reagents.has_reagent("unholywater")||M.reagents.has_reagent("nuka_cola")) return 1 else M.status_flags &= ~GOTTAGOFAST -datum/reagents/proc/check_goreallyfast(var/mob/M) +/datum/reagents/proc/check_goreallyfast(var/mob/M) if(istype(M, /mob)) if(M.reagents.has_reagent("methamphetamine")) return 1 else M.status_flags &= ~GOTTAGOREALLYFAST -datum/reagents/proc/update_total() +/datum/reagents/proc/update_total() total_volume = 0 for(var/datum/reagent/R in reagent_list) if(R.volume < 0.1) @@ -420,12 +420,12 @@ datum/reagents/proc/update_total() return 0 -datum/reagents/proc/clear_reagents() +/datum/reagents/proc/clear_reagents() for(var/datum/reagent/R in reagent_list) del_reagent(R.id) return 0 -datum/reagents/proc/reaction(var/atom/A, var/method=TOUCH, var/volume_modifier=1,var/show_message=1) +/datum/reagents/proc/reaction(var/atom/A, var/method=TOUCH, var/volume_modifier=1,var/show_message=1) for(var/datum/reagent/R in reagent_list) if(ismob(A)) R.reaction_mob(A, method, R.volume*volume_modifier, show_message) @@ -436,7 +436,7 @@ datum/reagents/proc/reaction(var/atom/A, var/method=TOUCH, var/volume_modifier=1 return -datum/reagents/proc/add_reagent(var/reagent, var/amount, var/list/data=null, var/reagtemp = 300) +/datum/reagents/proc/add_reagent(var/reagent, var/amount, var/list/data=null, var/reagtemp = 300) if(!isnum(amount)) return 1 update_total() if(total_volume + amount > maximum_volume) amount = (maximum_volume - total_volume) //Doesnt fit in. Make it disappear. Shouldnt happen. Will happen. @@ -480,12 +480,12 @@ datum/reagents/proc/add_reagent(var/reagent, var/amount, var/list/data=null, var return 1 -datum/reagents/proc/add_reagent_list(var/list/list_reagents, var/list/data=null) // Like add_reagent but you can enter a list. Format it like this: list("toxin" = 10, "beer" = 15) +/datum/reagents/proc/add_reagent_list(var/list/list_reagents, var/list/data=null) // Like add_reagent but you can enter a list. Format it like this: list("toxin" = 10, "beer" = 15) for(var/r_id in list_reagents) var/amt = list_reagents[r_id] add_reagent(r_id, amt, data) -datum/reagents/proc/remove_reagent(var/reagent, var/amount, var/safety)//Added a safety check for the trans_id_to +/datum/reagents/proc/remove_reagent(var/reagent, var/amount, var/safety)//Added a safety check for the trans_id_to if(!isnum(amount)) return 1 @@ -501,7 +501,7 @@ datum/reagents/proc/remove_reagent(var/reagent, var/amount, var/safety)//Added a return 1 -datum/reagents/proc/has_reagent(var/reagent, var/amount = -1) +/datum/reagents/proc/has_reagent(var/reagent, var/amount = -1) for(var/A in reagent_list) var/datum/reagent/R = A @@ -513,7 +513,7 @@ datum/reagents/proc/has_reagent(var/reagent, var/amount = -1) return 0 -datum/reagents/proc/get_reagent_amount(var/reagent) +/datum/reagents/proc/get_reagent_amount(var/reagent) for(var/A in reagent_list) var/datum/reagent/R = A if (R.id == reagent) @@ -521,7 +521,7 @@ datum/reagents/proc/get_reagent_amount(var/reagent) return 0 -datum/reagents/proc/get_reagents() +/datum/reagents/proc/get_reagents() var/res = "" for(var/datum/reagent/A in reagent_list) if (res != "") res += "," @@ -529,7 +529,7 @@ datum/reagents/proc/get_reagents() return res -datum/reagents/proc/remove_all_type(var/reagent_type, var/amount, var/strict = 0, var/safety = 1) // Removes all reagent of X type. @strict set to 1 determines whether the childs of the type are included. +/datum/reagents/proc/remove_all_type(var/reagent_type, var/amount, var/strict = 0, var/safety = 1) // Removes all reagent of X type. @strict set to 1 determines whether the childs of the type are included. if(!isnum(amount)) return 1 var/has_removed_reagent = 0 @@ -551,19 +551,19 @@ datum/reagents/proc/remove_all_type(var/reagent_type, var/amount, var/strict = 0 return has_removed_reagent //two helper functions to preserve data across reactions (needed for xenoarch) -datum/reagents/proc/get_data(var/reagent_id) +/datum/reagents/proc/get_data(var/reagent_id) for(var/datum/reagent/D in reagent_list) if(D.id == reagent_id) //world << "proffering a data-carrying reagent ([reagent_id])" return D.data -datum/reagents/proc/set_data(var/reagent_id, var/new_data) +/datum/reagents/proc/set_data(var/reagent_id, var/new_data) for(var/datum/reagent/D in reagent_list) if(D.id == reagent_id) //world << "reagent data set ([reagent_id])" D.data = new_data -datum/reagents/proc/copy_data(var/datum/reagent/current_reagent) +/datum/reagents/proc/copy_data(var/datum/reagent/current_reagent) if (!current_reagent || !current_reagent.data) return null if (!istype(current_reagent.data, /list)) return current_reagent.data diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index 899f13126704..2dede1c153de 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -12,7 +12,7 @@ //Toxin & acid reagents //Hydroponics stuff -datum/reagent +/datum/reagent var/name = "Reagent" var/id = "reagent" var/description = "" @@ -30,11 +30,11 @@ datum/reagent var/addiction_stage = 0 var/overdosed = 0 // You fucked up and this is now triggering it's overdose effects, purge that shit quick. -datum/reagent/Destroy() // This should only be called by the holder, so it's already handled clearing its references +/datum/reagent/Destroy() // This should only be called by the holder, so it's already handled clearing its references ..() holder = null -datum/reagent/proc/reaction_mob(var/mob/M, var/method=TOUCH, var/volume, var/show_message = 1) //By default we have a chance to transfer some +/datum/reagent/proc/reaction_mob(var/mob/M, var/method=TOUCH, var/volume, var/show_message = 1) //By default we have a chance to transfer some if(!istype(M, /mob/living)) return 0 var/datum/reagent/self = src @@ -67,17 +67,17 @@ datum/reagent/proc/reaction_mob(var/mob/M, var/method=TOUCH, var/volume, var/sho M.reagents.add_reagent(self.id,self.volume/2) return 1 -datum/reagent/proc/reaction_obj(var/obj/O, var/volume) //By default we transfer a small part of the reagent to the object +/datum/reagent/proc/reaction_obj(var/obj/O, var/volume) //By default we transfer a small part of the reagent to the object src = null //if it can hold reagents. nope! //if(O.reagents) // O.reagents.add_reagent(id,volume/3) return -datum/reagent/proc/reaction_turf(var/turf/T, var/volume) +/datum/reagent/proc/reaction_turf(var/turf/T, var/volume) src = null return -datum/reagent/proc/on_mob_life(var/mob/living/M as mob) +/datum/reagent/proc/on_mob_life(var/mob/living/M as mob) current_cycle++ if(!istype(M, /mob/living)) return //Noticed runtime errors from facid trying to damage ghosts, this should fix. --NEO @@ -85,55 +85,55 @@ datum/reagent/proc/on_mob_life(var/mob/living/M as mob) return // Called when this reagent is removed while inside a mob -datum/reagent/proc/on_mob_delete(mob/M) +/datum/reagent/proc/on_mob_delete(mob/M) return -datum/reagent/proc/on_move(var/mob/M) +/datum/reagent/proc/on_move(var/mob/M) return // Called after add_reagents creates a new reagent. -datum/reagent/proc/on_new(var/data) +/datum/reagent/proc/on_new(var/data) return // Called when two reagents of the same are mixing. -datum/reagent/proc/on_merge(var/data) +/datum/reagent/proc/on_merge(var/data) return -datum/reagent/proc/on_update(var/atom/A) +/datum/reagent/proc/on_update(var/atom/A) return // Called every time reagent containers process. -datum/reagent/proc/on_tick(var/data) +/datum/reagent/proc/on_tick(var/data) return // Called when the reagent container is hit by an explosion -datum/reagent/proc/on_ex_act(var/severity) +/datum/reagent/proc/on_ex_act(var/severity) return // Called if the reagent has passed the overdose threshold and is set to be triggering overdose effects -datum/reagent/proc/overdose_process(var/mob/living/M as mob) +/datum/reagent/proc/overdose_process(var/mob/living/M as mob) return -datum/reagent/proc/overdose_start(var/mob/living/M as mob) +/datum/reagent/proc/overdose_start(var/mob/living/M as mob) M << "You feel like you took too much of [name]!" return -datum/reagent/proc/addiction_act_stage1(var/mob/living/M as mob) +/datum/reagent/proc/addiction_act_stage1(var/mob/living/M as mob) if(prob(30)) M << "You feel like some [name] right about now." return -datum/reagent/proc/addiction_act_stage2(var/mob/living/M as mob) +/datum/reagent/proc/addiction_act_stage2(var/mob/living/M as mob) if(prob(30)) M << "You feel like you need [name]. You just can't get enough." return -datum/reagent/proc/addiction_act_stage3(var/mob/living/M as mob) +/datum/reagent/proc/addiction_act_stage3(var/mob/living/M as mob) if(prob(30)) M << "You have an intense craving for [name]." return -datum/reagent/proc/addiction_act_stage4(var/mob/living/M as mob) +/datum/reagent/proc/addiction_act_stage4(var/mob/living/M as mob) if(prob(30)) M << "You're not feeling good at all! You really need some [name]." return diff --git a/code/modules/reagents/Chemistry-Reagents/Blob-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Blob-Reagents.dm index eea1e052c968..a764dc654bfc 100644 --- a/code/modules/reagents/Chemistry-Reagents/Blob-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents/Blob-Reagents.dm @@ -1,17 +1,17 @@ // These can only be applied by blobs. They are what blobs are made out of. // The 4 damage -datum/reagent/blob +/datum/reagent/blob var/message = "The blob strikes you" //message sent to any mob hit by the blob var/message_living = null //extension to first mob sent to only living mobs i.e. silicons have no skin to be burnt -datum/reagent/blob/boiling_oil +/datum/reagent/blob/boiling_oil name = "Boiling Oil" id = "boiling_oil" description = "" color = "#B68D00" message = "The blob splashes you with burning oil" -datum/reagent/blob/boiling_oil/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/blob/boiling_oil/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(method == TOUCH) M.apply_damage(15, BURN) M.adjust_fire_stacks(2) @@ -21,27 +21,27 @@ datum/reagent/blob/boiling_oil/reaction_mob(var/mob/living/M as mob, var/method= if(isliving(M)) M.emote("scream") -datum/reagent/blob/toxic_goop +/datum/reagent/blob/toxic_goop name = "Toxic Goop" id = "toxic_goop" description = "" color = "#008000" message_living = ", and you feel sick and nauseated" -datum/reagent/blob/toxic_goop/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/blob/toxic_goop/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(method == TOUCH) M.apply_damage(20, TOX) if(show_message) send_message(M) -datum/reagent/blob/skin_ripper +/datum/reagent/blob/skin_ripper name = "Skin Ripper" id = "skin_ripper" description = "" color = "#FF4C4C" message_living = ", and you feel your skin ripping and tearing off" -datum/reagent/blob/skin_ripper/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/blob/skin_ripper/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(method == TOUCH) M.apply_damage(20, BRUTE) if(show_message) @@ -51,14 +51,14 @@ datum/reagent/blob/skin_ripper/reaction_mob(var/mob/living/M as mob, var/method= // Combo Reagents -datum/reagent/blob/skin_melter +/datum/reagent/blob/skin_melter name = "Skin Melter" id = "skin_melter" description = "" color = "#7F0000" message_living = ", and you feel your skin char and melt" -datum/reagent/blob/skin_melter/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/blob/skin_melter/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(method == TOUCH) M.apply_damage(10, BRUTE) M.apply_damage(10, BURN) @@ -69,14 +69,14 @@ datum/reagent/blob/skin_melter/reaction_mob(var/mob/living/M as mob, var/method= if(isliving(M)) M.emote("scream") -datum/reagent/blob/lung_destroying_toxin +/datum/reagent/blob/lung_destroying_toxin name = "Lung Destroying Toxin" id = "lung_destroying_toxin" description = "" color = "#00FFC5" message_living = ", and your lungs feel heavy and weak" -datum/reagent/blob/lung_destroying_toxin/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume,var/show_message = 1) +/datum/reagent/blob/lung_destroying_toxin/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume,var/show_message = 1) if(method == TOUCH) M.apply_damage(20, OXY) M.losebreath += 15 @@ -85,14 +85,14 @@ datum/reagent/blob/lung_destroying_toxin/reaction_mob(var/mob/living/M as mob, v send_message(M) // Special Reagents -datum/reagent/blob/radioactive_liquid +/datum/reagent/blob/radioactive_liquid name = "Radioactive Liquid" id = "radioactive_liquid" description = "" color = "#00EE00" message_living = ", and your skin feels papery and everything hurts" -datum/reagent/blob/radioactive_liquid/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume,var/show_message = 1) +/datum/reagent/blob/radioactive_liquid/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume,var/show_message = 1) if(method == TOUCH) if(istype(M, /mob/living/carbon/human)) M.apply_damage(10, BRUTE) @@ -106,28 +106,28 @@ datum/reagent/blob/radioactive_liquid/reaction_mob(var/mob/living/M as mob, var/ if(show_message) send_message(M) -datum/reagent/blob/dark_matter +/datum/reagent/blob/dark_matter name = "Dark Matter" id = "dark_matter" description = "" color = "#61407E" message = "You feel a thrum as the blob strikes you, and everything flies at you" -datum/reagent/blob/dark_matter/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/blob/dark_matter/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(method == TOUCH) M.apply_damage(15, BRUTE) reagent_vortex(M, 0) if(show_message) send_message(M) -datum/reagent/blob/b_sorium +/datum/reagent/blob/b_sorium name = "Sorium" id = "b_sorium" description = "" color = "#808000" message = "The blob slams into you, and sends you flying" -datum/reagent/blob/b_sorium/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/blob/b_sorium/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(method == TOUCH) M.apply_damage(15, BRUTE) if(show_message) @@ -135,21 +135,21 @@ datum/reagent/blob/b_sorium/reaction_mob(var/mob/living/M as mob, var/method=TOU reagent_vortex(M, 1) -datum/reagent/blob/explosive // I'm gonna burn in hell for this one +/datum/reagent/blob/explosive // I'm gonna burn in hell for this one name = "Explosive Gelatin" id = "explosive" description = "" color = "#FFA500" message = "The blob strikes you, and its tendrils explode" -datum/reagent/blob/explosive/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/blob/explosive/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(method == TOUCH) if(prob(75)) if(show_message) send_message(M) explosion(M.loc, 0, 0, 1, 0, 0) -datum/reagent/blob/omnizine +/datum/reagent/blob/omnizine name = "Omnizine" id = "b_omnizine" description = "" @@ -157,13 +157,13 @@ datum/reagent/blob/omnizine message = "The blob squirts something at you" message_living = ", and you feel great" -datum/reagent/blob/omnizine/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/blob/omnizine/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(method == TOUCH) if(show_message) send_message(M) M.reagents.add_reagent("omnizine", 11) -datum/reagent/blob/morphine +/datum/reagent/blob/morphine name = "Morphine" id = "b_morphine" description = "" @@ -171,13 +171,13 @@ datum/reagent/blob/morphine message = "The blob squirts something at you" message_living = ", and you feel numb" -datum/reagent/blob/morphine/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/blob/morphine/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(method == TOUCH) if(show_message) send_message(M) M.reagents.add_reagent("morphine", 16) -datum/reagent/blob/spacedrugs +/datum/reagent/blob/spacedrugs name = "Space drugs" id = "b_space_drugs" description = "" @@ -185,7 +185,7 @@ datum/reagent/blob/spacedrugs message = "The blob squirts something at you" message_living = ", and you feel funny" -datum/reagent/blob/spacedrugs/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/blob/spacedrugs/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(method == TOUCH) if(show_message) send_message(M) @@ -193,7 +193,7 @@ datum/reagent/blob/spacedrugs/reaction_mob(var/mob/living/M as mob, var/method=T M.apply_damage(10, TOX) -datum/reagent/blob/proc/reagent_vortex(var/mob/living/M as mob, var/setting_type) +/datum/reagent/blob/proc/reagent_vortex(var/mob/living/M as mob, var/setting_type) var/turf/pull = get_turf(M) for(var/atom/movable/X in range(4,pull)) if(istype(X, /atom/movable)) @@ -206,7 +206,7 @@ datum/reagent/blob/proc/reagent_vortex(var/mob/living/M as mob, var/setting_type else X.throw_at(pull) -datum/reagent/blob/proc/send_message(var/mob/living/M as mob) +/datum/reagent/blob/proc/send_message(var/mob/living/M as mob) var/totalmessage = message if(message_living && !issilicon(M)) totalmessage += message_living diff --git a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Alcohols.dm b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Alcohols.dm index d375a9dcd656..7a0b91da733a 100644 --- a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Alcohols.dm +++ b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Alcohols.dm @@ -13,7 +13,7 @@ <15 = deadly toxic */ -datum/reagent/consumable/ethanol +/datum/reagent/consumable/ethanol name = "Ethanol" id = "ethanol" description = "A well-known alcohol with a variety of applications." @@ -21,7 +21,7 @@ datum/reagent/consumable/ethanol nutriment_factor = 0 var/boozepwr = 10 //lower numbers mean the booze will have an effect faster. -datum/reagent/consumable/ethanol/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/on_mob_life(var/mob/living/M as mob) M.jitteriness = max(M.jitteriness-5,0) if(current_cycle >= boozepwr) if (!M.slurring) M.slurring = 1 @@ -34,7 +34,7 @@ datum/reagent/consumable/ethanol/on_mob_life(var/mob/living/M as mob) M.adjustToxLoss(2) ..() return -datum/reagent/consumable/ethanol/reaction_obj(var/obj/O, var/volume) +/datum/reagent/consumable/ethanol/reaction_obj(var/obj/O, var/volume) if(istype(O,/obj/item/weapon/paper)) var/obj/item/weapon/paper/paperaffected = O paperaffected.clearpaper() @@ -48,14 +48,14 @@ datum/reagent/consumable/ethanol/reaction_obj(var/obj/O, var/volume) usr << "It wasn't enough..." return -datum/reagent/consumable/ethanol/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with ethanol isn't quite as good as fuel. +/datum/reagent/consumable/ethanol/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with ethanol isn't quite as good as fuel. if(!istype(M, /mob/living)) return if(method == TOUCH) M.adjust_fire_stacks(volume / 15) return -datum/reagent/consumable/ethanol/beer +/datum/reagent/consumable/ethanol/beer name = "Beer" id = "beer" description = "An alcoholic beverage made from malted grains, hops, yeast, and water." @@ -63,20 +63,20 @@ datum/reagent/consumable/ethanol/beer nutriment_factor = 1 * REAGENTS_METABOLISM boozepwr = 55 -datum/reagent/consumable/ethanol/beer/greenbeer +/datum/reagent/consumable/ethanol/beer/greenbeer name = "Green Beer" id = "greenbeer" description = "An alcoholic beverage made from malted grains, hops, yeast, and water. Dyed a festive green." color = "#A8E61D" -datum/reagent/consumable/ethanol/kahlua +/datum/reagent/consumable/ethanol/kahlua name = "Kahlua" id = "kahlua" description = "A widely known, Mexican coffee-flavoured liqueur. In production since 1936!" color = "#664300" // rgb: 102, 67, 0 boozepwr = 45 -datum/reagent/consumable/ethanol/kahlua/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/kahlua/on_mob_life(var/mob/living/M as mob) M.dizziness = max(0,M.dizziness-5) M.drowsyness = max(0,M.drowsyness-3) M.sleeping = max(0,M.sleeping-2) @@ -84,14 +84,14 @@ datum/reagent/consumable/ethanol/kahlua/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/ethanol/whiskey +/datum/reagent/consumable/ethanol/whiskey name = "Whiskey" id = "whiskey" description = "A superb and well-aged single-malt whiskey. Damn." color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/thirteenloko +/datum/reagent/consumable/ethanol/thirteenloko name = "Thirteen Loko" id = "thirteenloko" description = "A potent mixture of caffeine and alcohol." @@ -99,7 +99,7 @@ datum/reagent/consumable/ethanol/thirteenloko nutriment_factor = 1 * REAGENTS_METABOLISM boozepwr = 35 -datum/reagent/consumable/ethanol/thirteenloko/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/thirteenloko/on_mob_life(var/mob/living/M as mob) M.drowsyness = max(0,M.drowsyness-7) M.sleeping = max(0,M.sleeping-2) if (M.bodytemperature > 310) @@ -108,19 +108,19 @@ datum/reagent/consumable/ethanol/thirteenloko/on_mob_life(var/mob/living/M as mo ..() return -datum/reagent/consumable/ethanol/vodka +/datum/reagent/consumable/ethanol/vodka name = "Vodka" id = "vodka" description = "Number one drink AND fueling choice for Russians worldwide." color = "#0064C8" // rgb: 0, 100, 200 boozepwr = 35 -datum/reagent/consumable/ethanol/vodka/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/vodka/on_mob_life(var/mob/living/M as mob) M.radiation = max(M.radiation-2,0) ..() return -datum/reagent/consumable/ethanol/bilk +/datum/reagent/consumable/ethanol/bilk name = "Bilk" id = "bilk" description = "This appears to be beer mixed with milk. Disgusting." @@ -128,185 +128,185 @@ datum/reagent/consumable/ethanol/bilk nutriment_factor = 2 * REAGENTS_METABOLISM boozepwr = 55 -datum/reagent/consumable/ethanol/bilk/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/bilk/on_mob_life(var/mob/living/M as mob) if(M.getBruteLoss() && prob(10)) M.heal_organ_damage(1,0) ..() return -datum/reagent/consumable/ethanol/threemileisland +/datum/reagent/consumable/ethanol/threemileisland name = "Three Mile Island Iced Tea" id = "threemileisland" description = "Made for a woman, strong enough for a man." color = "#666340" // rgb: 102, 99, 64 boozepwr = 15 -datum/reagent/consumable/ethanol/threemileisland/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/threemileisland/on_mob_life(var/mob/living/M as mob) M.druggy = max(M.druggy, 50) ..() return -datum/reagent/consumable/ethanol/gin +/datum/reagent/consumable/ethanol/gin name = "Gin" id = "gin" description = "It's gin. In space. I say, good sir." color = "#664300" // rgb: 102, 67, 0 boozepwr = 55 -datum/reagent/consumable/ethanol/rum +/datum/reagent/consumable/ethanol/rum name = "Rum" id = "rum" description = "Yohoho and all that." color = "#664300" // rgb: 102, 67, 0 boozepwr = 45 -datum/reagent/consumable/ethanol/tequila +/datum/reagent/consumable/ethanol/tequila name = "Tequila" id = "tequila" description = "A strong and mildly flavoured, mexican produced spirit. Feeling thirsty, hombre?" color = "#FFFF91" // rgb: 255, 255, 145 boozepwr = 35 -datum/reagent/consumable/ethanol/vermouth +/datum/reagent/consumable/ethanol/vermouth name = "Vermouth" id = "vermouth" description = "You suddenly feel a craving for a martini..." color = "#91FF91" // rgb: 145, 255, 145 boozepwr = 45 -datum/reagent/consumable/ethanol/wine +/datum/reagent/consumable/ethanol/wine name = "Wine" id = "wine" description = "An premium alchoholic beverage made from distilled grape juice." color = "#7E4043" // rgb: 126, 64, 67 boozepwr = 45 -datum/reagent/consumable/ethanol/cognac +/datum/reagent/consumable/ethanol/cognac name = "Cognac" id = "cognac" description = "A sweet and strongly alchoholic drink, made after numerous distillations and years of maturing. Classy as fornication." color = "#AB3C05" // rgb: 171, 60, 5 boozepwr = 45 -datum/reagent/consumable/ethanol/hooch +/datum/reagent/consumable/ethanol/hooch name = "Hooch" id = "hooch" description = "Either someone's failure at cocktail making or attempt in alchohol production. In any case, do you really want to drink that?" color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/ale +/datum/reagent/consumable/ethanol/ale name = "Ale" id = "ale" description = "A dark alchoholic beverage made by malted barley and yeast." color = "#664300" // rgb: 102, 67, 0 boozepwr = 55 -datum/reagent/consumable/ethanol/goldschlager +/datum/reagent/consumable/ethanol/goldschlager name = "Goldschlager" id = "goldschlager" description = "100 proof cinnamon schnapps, made for alcoholic teen girls on spring break." color = "#FFFF91" // rgb: 255, 255, 145 boozepwr = 25 -datum/reagent/consumable/ethanol/patron +/datum/reagent/consumable/ethanol/patron name = "Patron" id = "patron" description = "Tequila with silver in it, a favorite of alcoholic women in the club scene." color = "#585840" // rgb: 88, 88, 64 boozepwr = 45 -datum/reagent/consumable/ethanol/gintonic +/datum/reagent/consumable/ethanol/gintonic name = "Gin and Tonic" id = "gintonic" description = "An all time classic, mild cocktail." color = "#664300" // rgb: 102, 67, 0 boozepwr = 55 -datum/reagent/consumable/ethanol/cuba_libre +/datum/reagent/consumable/ethanol/cuba_libre name = "Cuba Libre" id = "cubalibre" description = "Rum, mixed with cola. Viva la revolution." color = "#3E1B00" // rgb: 62, 27, 0 boozepwr = 45 -datum/reagent/consumable/ethanol/whiskey_cola +/datum/reagent/consumable/ethanol/whiskey_cola name = "Whiskey Cola" id = "whiskeycola" description = "Whiskey, mixed with cola. Surprisingly refreshing." color = "#3E1B00" // rgb: 62, 27, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/martini +/datum/reagent/consumable/ethanol/martini name = "Classic Martini" id = "martini" description = "Vermouth with Gin. Not quite how 007 enjoyed it, but still delicious." color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/vodkamartini +/datum/reagent/consumable/ethanol/vodkamartini name = "Vodka Martini" id = "vodkamartini" description = "Vodka with Gin. Not quite how 007 enjoyed it, but still delicious." color = "#664300" // rgb: 102, 67, 0 boozepwr = 25 -datum/reagent/consumable/ethanol/white_russian +/datum/reagent/consumable/ethanol/white_russian name = "White Russian" id = "whiterussian" description = "That's just, like, your opinion, man..." color = "#A68340" // rgb: 166, 131, 64 boozepwr = 35 -datum/reagent/consumable/ethanol/screwdrivercocktail +/datum/reagent/consumable/ethanol/screwdrivercocktail name = "Screwdriver" id = "screwdrivercocktail" description = "Vodka, mixed with plain ol' orange juice. The result is surprisingly delicious." color = "#A68310" // rgb: 166, 131, 16 boozepwr = 35 -datum/reagent/consumable/ethanol/booger +/datum/reagent/consumable/ethanol/booger name = "Booger" id = "booger" description = "Ewww..." color = "#8CFF8C" // rgb: 140, 255, 140 boozepwr = 45 -datum/reagent/consumable/ethanol/bloody_mary +/datum/reagent/consumable/ethanol/bloody_mary name = "Bloody Mary" id = "bloodymary" description = "A strange yet pleasurable mixture made of vodka, tomato and lime juice. Or at least you THINK the red stuff is tomato juice." color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/brave_bull +/datum/reagent/consumable/ethanol/brave_bull name = "Brave Bull" id = "bravebull" description = "It's just as effective as Dutch-Courage!." color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/tequila_sunrise +/datum/reagent/consumable/ethanol/tequila_sunrise name = "Tequila Sunrise" id = "tequilasunrise" description = "Tequila and orange juice. Much like a Screwdriver, only Mexican~" color = "#FFE48C" // rgb: 255, 228, 140 boozepwr = 35 -datum/reagent/consumable/ethanol/toxins_special +/datum/reagent/consumable/ethanol/toxins_special name = "Toxins Special" id = "toxinsspecial" description = "This thing is ON FIRE! CALL THE DAMN SHUTTLE!" color = "#664300" // rgb: 102, 67, 0 boozepwr = 15 -datum/reagent/consumable/ethanol/toxins_special/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/toxins_special/on_mob_life(var/mob/living/M as mob) if (M.bodytemperature < 330) M.bodytemperature = min(330, M.bodytemperature + (15 * TEMPERATURE_DAMAGE_COEFFICIENT)) //310 is the normal bodytemp. 310.055 ..() return -datum/reagent/consumable/ethanol/beepsky_smash +/datum/reagent/consumable/ethanol/beepsky_smash name = "Beepsky Smash" id = "beepskysmash" description = "Deny drinking this and prepare for THE LAW." @@ -314,183 +314,183 @@ datum/reagent/consumable/ethanol/beepsky_smash boozepwr = 25 metabolization_rate = 0.8 -datum/reagent/consumable/ethanol/beepsky_smash/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/beepsky_smash/on_mob_life(var/mob/living/M as mob) M.Stun(1) ..() return -datum/reagent/consumable/ethanol/irish_cream +/datum/reagent/consumable/ethanol/irish_cream name = "Irish Cream" id = "irishcream" description = "Whiskey-imbued cream, what else would you expect from the Irish." color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/manly_dorf +/datum/reagent/consumable/ethanol/manly_dorf name = "The Manly Dorf" id = "manlydorf" description = "Beer and Ale, brought together in a delicious mix. Intended for true men only." color = "#664300" // rgb: 102, 67, 0 boozepwr = 45 //was 10, but really its only beer and ale, both weak alchoholic beverages -datum/reagent/consumable/ethanol/longislandicedtea +/datum/reagent/consumable/ethanol/longislandicedtea name = "Long Island Iced Tea" id = "longislandicedtea" description = "The liquor cabinet, brought together in a delicious mix. Intended for middle-aged alcoholic women only." color = "#664300" // rgb: 102, 67, 0 boozepwr = 25 -datum/reagent/consumable/ethanol/moonshine +/datum/reagent/consumable/ethanol/moonshine name = "Moonshine" id = "moonshine" description = "You've really hit rock bottom now... your liver packed its bags and left last night." color = "#664300" // rgb: 102, 67, 0 boozepwr = 25 -datum/reagent/consumable/ethanol/b52 +/datum/reagent/consumable/ethanol/b52 name = "B-52" id = "b52" description = "Coffee, Irish Cream, and cognac. You will get bombed." color = "#664300" // rgb: 102, 67, 0 boozepwr = 25 -datum/reagent/consumable/ethanol/irishcoffee +/datum/reagent/consumable/ethanol/irishcoffee name = "Irish Coffee" id = "irishcoffee" description = "Coffee, and alcohol. More fun than a Mimosa to drink in the morning." color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/margarita +/datum/reagent/consumable/ethanol/margarita name = "Margarita" id = "margarita" description = "On the rocks with salt on the rim. Arriba~!" color = "#8CFF8C" // rgb: 140, 255, 140 boozepwr = 35 -datum/reagent/consumable/ethanol/black_russian +/datum/reagent/consumable/ethanol/black_russian name = "Black Russian" id = "blackrussian" description = "For the lactose-intolerant. Still as classy as a White Russian." color = "#360000" // rgb: 54, 0, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/manhattan +/datum/reagent/consumable/ethanol/manhattan name = "Manhattan" id = "manhattan" description = "The Detective's undercover drink of choice. He never could stomach gin..." color = "#664300" // rgb: 102, 67, 0 boozepwr = 45 -datum/reagent/consumable/ethanol/manhattan_proj +/datum/reagent/consumable/ethanol/manhattan_proj name = "Manhattan Project" id = "manhattan_proj" description = "A scientist's drink of choice, for pondering ways to blow up the station." color = "#664300" // rgb: 102, 67, 0 boozepwr = 15 -datum/reagent/consumable/ethanol/manhattan_proj/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/manhattan_proj/on_mob_life(var/mob/living/M as mob) M.druggy = max(M.druggy, 30) ..() return -datum/reagent/consumable/ethanol/whiskeysoda +/datum/reagent/consumable/ethanol/whiskeysoda name = "Whiskey Soda" id = "whiskeysoda" description = "For the more refined griffon." color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/antifreeze +/datum/reagent/consumable/ethanol/antifreeze name = "Anti-freeze" id = "antifreeze" description = "Ultimate refreshment." color = "#664300" // rgb: 102, 67, 0 boozepwr = 25 -datum/reagent/consumable/ethanol/antifreeze/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/antifreeze/on_mob_life(var/mob/living/M as mob) if (M.bodytemperature < 330) M.bodytemperature = min(330, M.bodytemperature + (20 * TEMPERATURE_DAMAGE_COEFFICIENT)) //310 is the normal bodytemp. 310.055 ..() return -datum/reagent/consumable/ethanol/barefoot +/datum/reagent/consumable/ethanol/barefoot name = "Barefoot" id = "barefoot" description = "Barefoot and pregnant" color = "#664300" // rgb: 102, 67, 0 boozepwr = 45 -datum/reagent/consumable/ethanol/snowwhite +/datum/reagent/consumable/ethanol/snowwhite name = "Snow White" id = "snowwhite" description = "A cold refreshment" color = "#FFFFFF" // rgb: 255, 255, 255 boozepwr = 45 -datum/reagent/consumable/ethanol/demonsblood +/datum/reagent/consumable/ethanol/demonsblood name = "Demons Blood" id = "demonsblood" description = "AHHHH!!!!" color = "#820000" // rgb: 130, 0, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/vodkatonic +/datum/reagent/consumable/ethanol/vodkatonic name = "Vodka and Tonic" id = "vodkatonic" description = "For when a gin and tonic isn't russian enough." color = "#0064C8" // rgb: 0, 100, 200 boozepwr = 35 -datum/reagent/consumable/ethanol/ginfizz +/datum/reagent/consumable/ethanol/ginfizz name = "Gin Fizz" id = "ginfizz" description = "Refreshingly lemony, deliciously dry." color = "#664300" // rgb: 102, 67, 0 boozepwr = 45 -datum/reagent/consumable/ethanol/bahama_mama +/datum/reagent/consumable/ethanol/bahama_mama name = "Bahama mama" id = "bahama_mama" description = "Tropical cocktail." color = "#FF7F3B" // rgb: 255, 127, 59 boozepwr = 35 -datum/reagent/consumable/ethanol/singulo +/datum/reagent/consumable/ethanol/singulo name = "Singulo" id = "singulo" description = "A blue-space beverage!" color = "#2E6671" // rgb: 46, 102, 113 boozepwr = 15 -datum/reagent/consumable/ethanol/sbiten +/datum/reagent/consumable/ethanol/sbiten name = "Sbiten" id = "sbiten" description = "A spicy Vodka! Might be a little hot for the little guys!" color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/sbiten/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/sbiten/on_mob_life(var/mob/living/M as mob) if (M.bodytemperature < 360) M.bodytemperature = min(360, M.bodytemperature + (50 * TEMPERATURE_DAMAGE_COEFFICIENT)) //310 is the normal bodytemp. 310.055 ..() return -datum/reagent/consumable/ethanol/devilskiss +/datum/reagent/consumable/ethanol/devilskiss name = "Devils Kiss" id = "devilskiss" description = "Creepy time!" color = "#A68310" // rgb: 166, 131, 16 boozepwr = 35 -datum/reagent/consumable/ethanol/red_mead +/datum/reagent/consumable/ethanol/red_mead name = "Red Mead" id = "red_mead" description = "The true Viking drink! Even though it has a strange red color." color = "#C73C00" // rgb: 199, 60, 0 boozepwr = 45 -datum/reagent/consumable/ethanol/mead +/datum/reagent/consumable/ethanol/mead name = "Mead" id = "mead" description = "A Vikings drink, though a cheap one." @@ -498,90 +498,90 @@ datum/reagent/consumable/ethanol/mead nutriment_factor = 1 * REAGENTS_METABOLISM boozepwr = 45 -datum/reagent/consumable/ethanol/iced_beer +/datum/reagent/consumable/ethanol/iced_beer name = "Iced Beer" id = "iced_beer" description = "A beer which is so cold the air around it freezes." color = "#664300" // rgb: 102, 67, 0 boozepwr = 55 -datum/reagent/consumable/ethanol/iced_beer/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/iced_beer/on_mob_life(var/mob/living/M as mob) if(M.bodytemperature > 270) M.bodytemperature = max(270, M.bodytemperature - (20 * TEMPERATURE_DAMAGE_COEFFICIENT)) //310 is the normal bodytemp. 310.055 ..() return -datum/reagent/consumable/ethanol/grog +/datum/reagent/consumable/ethanol/grog name = "Grog" id = "grog" description = "Watered down rum, Nanotrasen approves!" color = "#664300" // rgb: 102, 67, 0 boozepwr = 90 -datum/reagent/consumable/ethanol/aloe +/datum/reagent/consumable/ethanol/aloe name = "Aloe" id = "aloe" description = "So very, very, very good." color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/andalusia +/datum/reagent/consumable/ethanol/andalusia name = "Andalusia" id = "andalusia" description = "A nice, strange named drink." color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/alliescocktail +/datum/reagent/consumable/ethanol/alliescocktail name = "Allies Cocktail" id = "alliescocktail" description = "A drink made from your allies, not as sweet as when made from your enemies." color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/acid_spit +/datum/reagent/consumable/ethanol/acid_spit name = "Acid Spit" id = "acidspit" description = "A drink for the daring, can be deadly if incorrectly prepared!" color = "#365000" // rgb: 54, 80, 0 boozepwr = 45 -datum/reagent/consumable/ethanol/amasec +/datum/reagent/consumable/ethanol/amasec name = "Amasec" id = "amasec" description = "Official drink of the Nanotrasen Gun-Club!" color = "#664300" // rgb: 102, 67, 0 boozepwr = 35 -datum/reagent/consumable/ethanol/changelingsting +/datum/reagent/consumable/ethanol/changelingsting name = "Changeling Sting" id = "changelingsting" description = "You take a tiny sip and feel a burning sensation..." color = "#2E6671" // rgb: 46, 102, 113 boozepwr = 15 -datum/reagent/consumable/ethanol/irishcarbomb +/datum/reagent/consumable/ethanol/irishcarbomb name = "Irish Car Bomb" id = "irishcarbomb" description = "Mmm, tastes like chocolate cake..." color = "#2E6671" // rgb: 46, 102, 113 boozepwr = 25 -datum/reagent/consumable/ethanol/syndicatebomb +/datum/reagent/consumable/ethanol/syndicatebomb name = "Syndicate Bomb" id = "syndicatebomb" description = "Tastes like terrorism!" color = "#2E6671" // rgb: 46, 102, 113 boozepwr = 15 -datum/reagent/consumable/ethanol/erikasurprise +/datum/reagent/consumable/ethanol/erikasurprise name = "Erika Surprise" id = "erikasurprise" description = "The surprise is, it's green!" color = "#2E6671" // rgb: 46, 102, 113 boozepwr = 35 -datum/reagent/consumable/ethanol/driestmartini +/datum/reagent/consumable/ethanol/driestmartini name = "Driest Martini" id = "driestmartini" description = "Only for the experienced. You think you see sand floating in the glass." @@ -589,7 +589,7 @@ datum/reagent/consumable/ethanol/driestmartini color = "#2E6671" // rgb: 46, 102, 113 boozepwr = 25 -datum/reagent/consumable/ethanol/bananahonk +/datum/reagent/consumable/ethanol/bananahonk name = "Banana Mama" id = "bananahonk" description = "A drink from Clown Heaven." @@ -597,13 +597,13 @@ datum/reagent/consumable/ethanol/bananahonk color = "#FFFF91" // rgb: 255, 255, 140 boozepwr = 25 -datum/reagent/consumable/ethanol/bananahonk/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/bananahonk/on_mob_life(var/mob/living/M as mob) if( ( istype(M, /mob/living/carbon/human) && M.job in list("Clown") ) || istype(M, /mob/living/carbon/monkey) ) M.heal_organ_damage(1,1) ..() return -datum/reagent/consumable/ethanol/silencer +/datum/reagent/consumable/ethanol/silencer name = "Silencer" id = "silencer" description = "A drink from Mime Heaven." @@ -611,13 +611,13 @@ datum/reagent/consumable/ethanol/silencer color = "#664300" // rgb: 102, 67, 0 boozepwr = 15 -datum/reagent/consumable/ethanol/silencer/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ethanol/silencer/on_mob_life(var/mob/living/M as mob) if(istype(M, /mob/living/carbon/human) && M.job in list("Mime")) M.heal_organ_damage(1,1) ..() return -datum/reagent/consumable/ethanol/drunkenblumpkin +/datum/reagent/consumable/ethanol/drunkenblumpkin name = "Drunken Blumpkin" id = "drunkenblumpkin" description = "A weird mix of whiskey and blumpkin juice." diff --git a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Drinks.dm b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Drinks.dm index 2ba1088cda7b..7ef486912eac 100644 --- a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Drinks.dm +++ b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Drink-Reagents/Drinks.dm @@ -4,49 +4,49 @@ /////////////////////// DRINKS BELOW, Beer is up there though, along with cola. Cap'n Pete's Cuban Spiced Rum//////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////////// -datum/reagent/consumable/orangejuice +/datum/reagent/consumable/orangejuice name = "Orange juice" id = "orangejuice" description = "Both delicious AND rich in Vitamin C, what more do you need?" color = "#E78108" // rgb: 231, 129, 8 -datum/reagent/consumable/orangejuice/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/orangejuice/on_mob_life(var/mob/living/M as mob) if(M.getOxyLoss() && prob(30)) M.adjustOxyLoss(-1) ..() return -datum/reagent/consumable/tomatojuice +/datum/reagent/consumable/tomatojuice name = "Tomato Juice" id = "tomatojuice" description = "Tomatoes made into juice. What a waste of big, juicy tomatoes, huh?" color = "#731008" // rgb: 115, 16, 8 -datum/reagent/consumable/tomatojuice/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/tomatojuice/on_mob_life(var/mob/living/M as mob) if(M.getFireLoss() && prob(20)) M.heal_organ_damage(0,1) ..() return -datum/reagent/consumable/limejuice +/datum/reagent/consumable/limejuice name = "Lime Juice" id = "limejuice" description = "The sweet-sour juice of limes." color = "#365E30" // rgb: 54, 94, 48 -datum/reagent/consumable/limejuice/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/limejuice/on_mob_life(var/mob/living/M as mob) if(M.getToxLoss() && prob(20)) M.adjustToxLoss(-1*REM) ..() return -datum/reagent/consumable/carrotjuice +/datum/reagent/consumable/carrotjuice name = "Carrot juice" id = "carrotjuice" description = "It is just like a carrot but without crunching." color = "#973800" // rgb: 151, 56, 0 -datum/reagent/consumable/carrotjuice/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/carrotjuice/on_mob_life(var/mob/living/M as mob) M.eye_blurry = max(M.eye_blurry-1 , 0) M.eye_blind = max(M.eye_blind-1 , 0) switch(current_cycle) @@ -58,70 +58,70 @@ datum/reagent/consumable/carrotjuice/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/berryjuice +/datum/reagent/consumable/berryjuice name = "Berry Juice" id = "berryjuice" description = "A delicious blend of several different kinds of berries." color = "#863333" // rgb: 134, 51, 51 -datum/reagent/consumable/poisonberryjuice +/datum/reagent/consumable/poisonberryjuice name = "Poison Berry Juice" id = "poisonberryjuice" description = "A tasty juice blended from various kinds of very deadly and toxic berries." color = "#863353" // rgb: 134, 51, 83 -datum/reagent/consumable/poisonberryjuice/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/poisonberryjuice/on_mob_life(var/mob/living/M as mob) M.adjustToxLoss(1) ..() return -datum/reagent/consumable/watermelonjuice +/datum/reagent/consumable/watermelonjuice name = "Watermelon Juice" id = "watermelonjuice" description = "Delicious juice made from watermelon." color = "#863333" // rgb: 134, 51, 51 -datum/reagent/consumable/lemonjuice +/datum/reagent/consumable/lemonjuice name = "Lemon Juice" id = "lemonjuice" description = "This juice is VERY sour." color = "#863333" // rgb: 175, 175, 0 -datum/reagent/consumable/banana +/datum/reagent/consumable/banana name = "Banana Juice" id = "banana" description = "The raw essence of a banana. HONK" color = "#863333" // rgb: 175, 175, 0 -datum/reagent/consumable/banana/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/banana/on_mob_life(var/mob/living/M as mob) if( ( istype(M, /mob/living/carbon/human) && M.job in list("Clown") ) || istype(M, /mob/living/carbon/monkey) ) M.heal_organ_damage(1,1) ..() -datum/reagent/consumable/nothing +/datum/reagent/consumable/nothing name = "Nothing" id = "nothing" description = "Absolutely nothing." -datum/reagent/consumable/nothing/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/nothing/on_mob_life(var/mob/living/M as mob) if(istype(M, /mob/living/carbon/human) && M.job in list("Mime")) M.heal_organ_damage(1,1) ..() -datum/reagent/consumable/potato_juice +/datum/reagent/consumable/potato_juice name = "Potato Juice" id = "potato" description = "Juice of the potato. Bleh." nutriment_factor = 2 * REAGENTS_METABOLISM color = "#302000" // rgb: 48, 32, 0 -datum/reagent/consumable/milk +/datum/reagent/consumable/milk name = "Milk" id = "milk" description = "An opaque white liquid produced by the mammary glands of mammals." color = "#DFDFDF" // rgb: 223, 223, 223 -datum/reagent/consumable/milk/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/milk/on_mob_life(var/mob/living/M as mob) if(M.getBruteLoss() && prob(20)) M.heal_organ_damage(1,0) if(holder.has_reagent("capsaicin")) @@ -129,31 +129,31 @@ datum/reagent/consumable/milk/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/soymilk +/datum/reagent/consumable/soymilk name = "Soy Milk" id = "soymilk" description = "An opaque white liquid made from soybeans." color = "#DFDFC7" // rgb: 223, 223, 199 -datum/reagent/consumable/soymilk/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/soymilk/on_mob_life(var/mob/living/M as mob) if(M.getBruteLoss() && prob(20)) M.heal_organ_damage(1,0) ..() return -datum/reagent/consumable/cream +/datum/reagent/consumable/cream name = "Cream" id = "cream" description = "The fatty, still liquid part of milk. Why don't you mix this with sum scotch, eh?" color = "#DFD7AF" // rgb: 223, 215, 175 -datum/reagent/consumable/cream/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/cream/on_mob_life(var/mob/living/M as mob) if(M.getBruteLoss() && prob(20)) M.heal_organ_damage(1,0) ..() return -datum/reagent/consumable/coffee +/datum/reagent/consumable/coffee name = "Coffee" id = "coffee" description = "Coffee is a brewed drink prepared from roasted seeds, commonly called coffee beans, of the coffee plant." @@ -161,11 +161,11 @@ datum/reagent/consumable/coffee nutriment_factor = 0 overdose_threshold = 80 -datum/reagent/consumable/coffee/overdose_process(var/mob/living/M as mob) +/datum/reagent/consumable/coffee/overdose_process(var/mob/living/M as mob) M.Jitter(5) ..() -datum/reagent/consumable/coffee/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/coffee/on_mob_life(var/mob/living/M as mob) M.dizziness = max(0,M.dizziness-5) M.drowsyness = max(0,M.drowsyness-3) M.sleeping = max(0,M.sleeping - 2) @@ -175,14 +175,14 @@ datum/reagent/consumable/coffee/on_mob_life(var/mob/living/M as mob) holder.remove_reagent("frostoil", 5) ..() -datum/reagent/consumable/tea +/datum/reagent/consumable/tea name = "Tea" id = "tea" description = "Tasty black tea, it has antioxidants, it's good for you!" color = "#101000" // rgb: 16, 16, 0 nutriment_factor = 0 -datum/reagent/consumable/tea/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/tea/on_mob_life(var/mob/living/M as mob) M.dizziness = max(0,M.dizziness-2) M.drowsyness = max(0,M.drowsyness-1) M.jitteriness = max(0,M.jitteriness-3) @@ -194,14 +194,14 @@ datum/reagent/consumable/tea/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/icecoffee +/datum/reagent/consumable/icecoffee name = "Iced Coffee" id = "icecoffee" description = "Coffee and ice, refreshing and cool." color = "#102838" // rgb: 16, 40, 56 nutriment_factor = 0 -datum/reagent/consumable/icecoffee/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/icecoffee/on_mob_life(var/mob/living/M as mob) M.dizziness = max(0,M.dizziness-5) M.drowsyness = max(0,M.drowsyness-3) M.sleeping = max(0,M.sleeping-2) @@ -211,14 +211,14 @@ datum/reagent/consumable/icecoffee/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/icetea +/datum/reagent/consumable/icetea name = "Iced Tea" id = "icetea" description = "No relation to a certain rap artist/ actor." color = "#104038" // rgb: 16, 64, 56 nutriment_factor = 0 -datum/reagent/consumable/icetea/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/icetea/on_mob_life(var/mob/living/M as mob) M.dizziness = max(0,M.dizziness-2) M.drowsyness = max(0,M.drowsyness-1) M.sleeping = max(0,M.sleeping-2) @@ -229,26 +229,26 @@ datum/reagent/consumable/icetea/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/space_cola +/datum/reagent/consumable/space_cola name = "Cola" id = "cola" description = "A refreshing beverage." color = "#100800" // rgb: 16, 8, 0 -datum/reagent/consumable/space_cola/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/space_cola/on_mob_life(var/mob/living/M as mob) M.drowsyness = max(0,M.drowsyness-5) if (M.bodytemperature > 310)//310 is the normal bodytemp. 310.055 M.bodytemperature = max(310, M.bodytemperature - (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) ..() return -datum/reagent/consumable/nuka_cola +/datum/reagent/consumable/nuka_cola name = "Nuka Cola" id = "nuka_cola" description = "Cola, cola never changes." color = "#100800" // rgb: 16, 8, 0 -datum/reagent/consumable/nuka_cola/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/nuka_cola/on_mob_life(var/mob/living/M as mob) M.Jitter(20) M.druggy = max(M.druggy, 30) M.dizziness +=5 @@ -260,13 +260,13 @@ datum/reagent/consumable/nuka_cola/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/spacemountainwind +/datum/reagent/consumable/spacemountainwind name = "Space Mountain Wind" id = "spacemountainwind" description = "Blows right through you like a space wind." color = "#102000" // rgb: 16, 32, 0 -datum/reagent/consumable/spacemountainwind/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/spacemountainwind/on_mob_life(var/mob/living/M as mob) M.drowsyness = max(0,M.drowsyness-7) M.sleeping = max(0,M.sleeping-1) if (M.bodytemperature > 310) @@ -275,50 +275,50 @@ datum/reagent/consumable/spacemountainwind/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/dr_gibb +/datum/reagent/consumable/dr_gibb name = "Dr. Gibb" id = "dr_gibb" description = "A delicious blend of 42 different flavours" color = "#102000" // rgb: 16, 32, 0 -datum/reagent/consumable/dr_gibb/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/dr_gibb/on_mob_life(var/mob/living/M as mob) M.drowsyness = max(0,M.drowsyness-6) if (M.bodytemperature > 310) M.bodytemperature = max(310, M.bodytemperature - (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) //310 is the normal bodytemp. 310.055 ..() return -datum/reagent/consumable/space_up +/datum/reagent/consumable/space_up name = "Space-Up" id = "space_up" description = "Tastes like a hull breach in your mouth." color = "#00FF00" // rgb: 0, 255, 0 -datum/reagent/consumable/space_up/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/space_up/on_mob_life(var/mob/living/M as mob) if (M.bodytemperature > 310) M.bodytemperature = max(310, M.bodytemperature - (8 * TEMPERATURE_DAMAGE_COEFFICIENT)) //310 is the normal bodytemp. 310.055 ..() return -datum/reagent/consumable/lemon_lime +/datum/reagent/consumable/lemon_lime name = "Lemon Lime" description = "A tangy substance made of 0.5% natural citrus!" id = "lemon_lime" color = "#8CFF00" // rgb: 135, 255, 0 -datum/reagent/consumable/lemon_lime/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/lemon_lime/on_mob_life(var/mob/living/M as mob) if (M.bodytemperature > 310) M.bodytemperature = max(310, M.bodytemperature - (8 * TEMPERATURE_DAMAGE_COEFFICIENT)) //310 is the normal bodytemp. 310.055 ..() return -datum/reagent/consumable/sodawater +/datum/reagent/consumable/sodawater name = "Soda Water" id = "sodawater" description = "A can of club soda. Why not make a scotch and soda?" color = "#619494" // rgb: 97, 148, 148 -datum/reagent/consumable/sodawater/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/sodawater/on_mob_life(var/mob/living/M as mob) M.dizziness = max(0,M.dizziness-5) M.drowsyness = max(0,M.drowsyness-3) if (M.bodytemperature > 310) @@ -326,13 +326,13 @@ datum/reagent/consumable/sodawater/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/tonic +/datum/reagent/consumable/tonic name = "Tonic Water" id = "tonic" description = "It tastes strange but at least the quinine keeps the Space Malaria at bay." color = "#0064C8" // rgb: 0, 100, 200 -datum/reagent/consumable/tonic/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/tonic/on_mob_life(var/mob/living/M as mob) M.dizziness = max(0,M.dizziness-5) M.drowsyness = max(0,M.drowsyness-3) M.sleeping = max(0,M.sleeping-2) @@ -341,25 +341,25 @@ datum/reagent/consumable/tonic/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/ice +/datum/reagent/consumable/ice name = "Ice" id = "ice" description = "Frozen water, your dentist wouldn't like you chewing this." reagent_state = SOLID color = "#619494" // rgb: 97, 148, 148 -datum/reagent/consumable/ice/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/ice/on_mob_life(var/mob/living/M as mob) M.bodytemperature -= 5 * TEMPERATURE_DAMAGE_COEFFICIENT ..() return -datum/reagent/consumable/soy_latte +/datum/reagent/consumable/soy_latte name = "Soy Latte" id = "soy_latte" description = "A nice and tasty beverage while you are reading your hippie books." color = "#664300" // rgb: 102, 67, 0 -datum/reagent/consumable/soy_latte/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/soy_latte/on_mob_life(var/mob/living/M as mob) M.dizziness = max(0,M.dizziness-5) M.drowsyness = max(0,M.drowsyness-3) M.sleeping = 0 @@ -371,13 +371,13 @@ datum/reagent/consumable/soy_latte/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/cafe_latte +/datum/reagent/consumable/cafe_latte name = "Cafe Latte" id = "cafe_latte" description = "A nice, strong and tasty beverage while you are reading." color = "#664300" // rgb: 102, 67, 0 -datum/reagent/consumable/cafe_latte/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/cafe_latte/on_mob_life(var/mob/living/M as mob) M.dizziness = max(0,M.dizziness-5) M.drowsyness = max(0,M.drowsyness-3) M.sleeping = 0 @@ -389,67 +389,67 @@ datum/reagent/consumable/cafe_latte/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/doctor_delight +/datum/reagent/consumable/doctor_delight name = "The Doctor's Delight" id = "doctorsdelight" description = "A gulp a day keeps the MediBot away. That's probably for the best." color = "#FF8CFF" // rgb: 255, 140, 255 -datum/reagent/consumable/chocolatepudding +/datum/reagent/consumable/chocolatepudding name = "Chocolate Pudding" id = "chocolatepudding" description = "A great dessert for chocolate lovers." color = "#800000" nutriment_factor = 4 * REAGENTS_METABOLISM -datum/reagent/consumable/vanillapudding +/datum/reagent/consumable/vanillapudding name = "Vanilla Pudding" id = "vanillapudding" description = "A great dessert for vanilla lovers." color = "#FAFAD2" nutriment_factor = 4 * REAGENTS_METABOLISM -datum/reagent/consumable/cherryshake +/datum/reagent/consumable/cherryshake name = "Cherry Shake" id = "cherryshake" description = "A cherry flavored milkshake." color = "#FFB6C1" nutriment_factor = 4 * REAGENTS_METABOLISM -datum/reagent/consumable/bluecherryshake +/datum/reagent/consumable/bluecherryshake name = "Blue Cherry Shake" id = "bluecherryshake" description = "An exotic milkshake." color = "#00F1FF" nutriment_factor = 4 * REAGENTS_METABOLISM -datum/reagent/consumable/pumpkin_latte +/datum/reagent/consumable/pumpkin_latte name = "Pumpkin Latte" id = "pumpkin_latte" description = "A mix of pumpkin juice and coffee." color = "#F4A460" nutriment_factor = 3 * REAGENTS_METABOLISM -datum/reagent/consumable/gibbfloats +/datum/reagent/consumable/gibbfloats name = "Gibb Floats" id = "gibbfloats" description = "Icecream on top of a Dr. Gibb glass." color = "#B22222" nutriment_factor = 3 * REAGENTS_METABOLISM -datum/reagent/consumable/pumpkinjuice +/datum/reagent/consumable/pumpkinjuice name = "Pumpkin Juice" id = "pumpkinjuice" description = "Juiced from real pumpkin." color = "#FFA500" -datum/reagent/consumable/blumpkinjuice +/datum/reagent/consumable/blumpkinjuice name = "Blumpkin Juice" id = "blumpkinjuice" description = "Juiced from real blumpkin." color = "#00BFFF" -datum/reagent/consumable/triple_citrus +/datum/reagent/consumable/triple_citrus name = "Triple Citrus" id = "triple_citrus" description = "A solution." @@ -458,13 +458,13 @@ datum/reagent/consumable/triple_citrus //////////////////////////////////////////////The ten friggen million reagents that get you drunk////////////////////////////////////////////// -datum/reagent/consumable/atomicbomb +/datum/reagent/consumable/atomicbomb name = "Atomic Bomb" id = "atomicbomb" description = "Nuclear proliferation never tasted so good." color = "#666300" // rgb: 102, 99, 0 -datum/reagent/consumable/atomicbomb/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/atomicbomb/on_mob_life(var/mob/living/M as mob) M.druggy = max(M.druggy, 50) M.confused = max(M.confused+2,0) M.Dizzy(10) @@ -480,13 +480,13 @@ datum/reagent/consumable/atomicbomb/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/gargle_blaster +/datum/reagent/consumable/gargle_blaster name = "Pan-Galactic Gargle Blaster" id = "gargleblaster" description = "Whoah, this stuff looks volatile!" color = "#664300" // rgb: 102, 67, 0 -datum/reagent/consumable/gargle_blaster/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/gargle_blaster/on_mob_life(var/mob/living/M as mob) M.dizziness +=6 switch(current_cycle) if(15 to 45) @@ -503,13 +503,13 @@ datum/reagent/consumable/gargle_blaster/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/neurotoxin +/datum/reagent/consumable/neurotoxin name = "Neurotoxin" id = "neurotoxin" description = "A strong neurotoxin that puts the subject into a death-like state." color = "#2E2E61" // rgb: 46, 46, 97 -datum/reagent/consumable/neurotoxin/on_mob_life(var/mob/living/carbon/M as mob) +/datum/reagent/consumable/neurotoxin/on_mob_life(var/mob/living/carbon/M as mob) M.weakened = max(M.weakened, 3) M.dizziness +=6 switch(current_cycle) @@ -527,7 +527,7 @@ datum/reagent/consumable/neurotoxin/on_mob_life(var/mob/living/carbon/M as mob) ..() return -datum/reagent/consumable/hippies_delight +/datum/reagent/consumable/hippies_delight name = "Hippie's Delight" id = "hippiesdelight" description = "You just don't get it maaaan." @@ -535,7 +535,7 @@ datum/reagent/consumable/hippies_delight nutriment_factor = 0 metabolization_rate = 0.2 * REAGENTS_METABOLISM -datum/reagent/consumable/hippies_delight/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/hippies_delight/on_mob_life(var/mob/living/M as mob) M.druggy = max(M.druggy, 50) switch(current_cycle) if(1 to 5) diff --git a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm index ac6cf69668fd..1ea2c600caac 100644 --- a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm @@ -7,17 +7,17 @@ // condiments, additives, and such go. -datum/reagent/consumable +/datum/reagent/consumable name = "Consumable" id = "consumable" var/nutriment_factor = 1 * REAGENTS_METABOLISM -datum/reagent/consumable/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/on_mob_life(var/mob/living/M as mob) current_cycle++ M.nutrition += nutriment_factor holder.remove_reagent(src.id, metabolization_rate) -datum/reagent/consumable/nutriment +/datum/reagent/consumable/nutriment name = "Nutriment" id = "nutriment" description = "All the vitamins, minerals, and carbohydrates the body needs in pure form." @@ -25,20 +25,20 @@ datum/reagent/consumable/nutriment nutriment_factor = 15 * REAGENTS_METABOLISM color = "#664330" // rgb: 102, 67, 48 -datum/reagent/consumable/nutriment/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/nutriment/on_mob_life(var/mob/living/M as mob) if(prob(50)) M.heal_organ_damage(1,0) ..() return -datum/reagent/consumable/vitamin +/datum/reagent/consumable/vitamin name = "Vitamin" id = "vitamin" description = "All the best vitamins, minerals, and carbohydrates the body needs in pure form." reagent_state = SOLID color = "#664330" // rgb: 102, 67, 48 -datum/reagent/consumable/vitamin/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/vitamin/on_mob_life(var/mob/living/M as mob) if(prob(50)) M.heal_organ_damage(1,1) if(M.satiety < 600) @@ -46,7 +46,7 @@ datum/reagent/consumable/vitamin/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/sugar +/datum/reagent/consumable/sugar name = "Sugar" id = "sugar" description = "The organic compound commonly known as table sugar and sometimes called saccharose. This white, odorless, crystalline powder has a pleasing, sweet taste." @@ -56,31 +56,31 @@ datum/reagent/consumable/sugar metabolization_rate = 2 * REAGENTS_METABOLISM overdose_threshold = 200 // Hyperglycaemic shock -datum/reagent/consumable/sugar/overdose_start(var/mob/living/M as mob) +/datum/reagent/consumable/sugar/overdose_start(var/mob/living/M as mob) M << "You go into hyperglycaemic shock! Lay off the twinkies!" M.sleeping += 30 return -datum/reagent/consumable/sugar/overdose_process(var/mob/living/M as mob) +/datum/reagent/consumable/sugar/overdose_process(var/mob/living/M as mob) M.sleeping += 3 ..() return -datum/reagent/consumable/virus_food +/datum/reagent/consumable/virus_food name = "Virus Food" id = "virusfood" description = "A mixture of water and milk. Virus cells can use this mixture to reproduce." nutriment_factor = 2 * REAGENTS_METABOLISM color = "#899613" // rgb: 137, 150, 19 -datum/reagent/consumable/soysauce +/datum/reagent/consumable/soysauce name = "Soysauce" id = "soysauce" description = "A salty sauce made from the soy plant." nutriment_factor = 2 * REAGENTS_METABOLISM color = "#792300" // rgb: 121, 35, 0 -datum/reagent/consumable/ketchup +/datum/reagent/consumable/ketchup name = "Ketchup" id = "ketchup" description = "Ketchup, catsup, whatever. It's tomato paste." @@ -88,13 +88,13 @@ datum/reagent/consumable/ketchup color = "#731008" // rgb: 115, 16, 8 -datum/reagent/consumable/capsaicin +/datum/reagent/consumable/capsaicin name = "Capsaicin Oil" id = "capsaicin" description = "This is what makes chilis hot." color = "#B31008" // rgb: 179, 16, 8 -datum/reagent/consumable/capsaicin/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/capsaicin/on_mob_life(var/mob/living/M as mob) switch(current_cycle) if(1 to 15) M.bodytemperature += 5 * TEMPERATURE_DAMAGE_COEFFICIENT @@ -117,13 +117,13 @@ datum/reagent/consumable/capsaicin/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/frostoil +/datum/reagent/consumable/frostoil name = "Frost Oil" id = "frostoil" description = "A special oil that noticably chills the body. Extraced from Icepeppers." color = "#B31008" // rgb: 139, 166, 233 -datum/reagent/consumable/frostoil/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/frostoil/on_mob_life(var/mob/living/M as mob) switch(current_cycle) if(1 to 15) M.bodytemperature -= 10 * TEMPERATURE_DAMAGE_COEFFICIENT @@ -150,20 +150,20 @@ datum/reagent/consumable/frostoil/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/frostoil/reaction_turf(var/turf/simulated/T, var/volume) +/datum/reagent/consumable/frostoil/reaction_turf(var/turf/simulated/T, var/volume) if(volume >= 5) for(var/mob/living/simple_animal/slime/M in T) M.adjustToxLoss(rand(15,30)) //if(istype(T)) // T.atmos_spawn_air(SPAWN_COLD) -datum/reagent/consumable/condensedcapsaicin +/datum/reagent/consumable/condensedcapsaicin name = "Condensed Capsaicin" id = "condensedcapsaicin" description = "A chemical agent used for self-defense and in police work." color = "#B31008" // rgb: 179, 16, 8 -datum/reagent/consumable/condensedcapsaicin/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) +/datum/reagent/consumable/condensedcapsaicin/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) if(!istype(M, /mob/living/carbon/human) && !istype(M, /mob/living/carbon/monkey)) return @@ -225,27 +225,27 @@ datum/reagent/consumable/condensedcapsaicin/reaction_mob(var/mob/living/M, var/m victim.Weaken(5) victim.drop_item() -datum/reagent/consumable/condensedcapsaicin/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/condensedcapsaicin/on_mob_life(var/mob/living/M as mob) if(prob(5)) M.visible_message("[M] [pick("dry heaves!","coughs!","splutters!")]") ..() return -datum/reagent/consumable/sodiumchloride +/datum/reagent/consumable/sodiumchloride name = "Table Salt" id = "sodiumchloride" description = "A salt made of sodium chloride. Commonly used to season food." reagent_state = SOLID color = "#FFFFFF" // rgb: 255,255,255 -datum/reagent/consumable/blackpepper +/datum/reagent/consumable/blackpepper name = "Black Pepper" id = "blackpepper" description = "A powder ground from peppercorns. *AAAACHOOO*" reagent_state = SOLID // no color (ie, black) -datum/reagent/consumable/coco +/datum/reagent/consumable/coco name = "Coco Powder" id = "cocoa" description = "A fatty, bitter paste made from coco beans." @@ -253,27 +253,27 @@ datum/reagent/consumable/coco nutriment_factor = 5 * REAGENTS_METABOLISM color = "#302000" // rgb: 48, 32, 0 -datum/reagent/consumable/hot_coco +/datum/reagent/consumable/hot_coco name = "Hot Chocolate" id = "hot_coco" description = "Made with love! And coco beans." nutriment_factor = 3 * REAGENTS_METABOLISM color = "#403010" // rgb: 64, 48, 16 -datum/reagent/consumable/hot_coco/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/hot_coco/on_mob_life(var/mob/living/M as mob) if (M.bodytemperature < 310)//310 is the normal bodytemp. 310.055 M.bodytemperature = min(310, M.bodytemperature + (5 * TEMPERATURE_DAMAGE_COEFFICIENT)) ..() return -datum/reagent/mushroomhallucinogen +/datum/reagent/mushroomhallucinogen name = "Mushroom Hallucinogen" id = "mushroomhallucinogen" description = "A strong hallucinogenic drug derived from certain species of mushroom." color = "#E700E7" // rgb: 231, 0, 231 metabolization_rate = 0.2 * REAGENTS_METABOLISM -datum/reagent/mushroomhallucinogen/on_mob_life(var/mob/living/M as mob) +/datum/reagent/mushroomhallucinogen/on_mob_life(var/mob/living/M as mob) M.druggy = max(M.druggy, 30) switch(current_cycle) if(1 to 5) @@ -301,27 +301,27 @@ datum/reagent/mushroomhallucinogen/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/consumable/sprinkles +/datum/reagent/consumable/sprinkles name = "Sprinkles" id = "sprinkles" description = "Multi-colored little bits of sugar, commonly found on donuts. Loved by cops." color = "#FF00FF" // rgb: 255, 0, 255 -datum/reagent/consumable/sprinkles/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/sprinkles/on_mob_life(var/mob/living/M as mob) if(istype(M, /mob/living/carbon/human) && M.job in list("Security Officer", "Head of Security", "Detective", "Warden")) M.heal_organ_damage(1,1) ..() return ..() -datum/reagent/consumable/cornoil +/datum/reagent/consumable/cornoil name = "Corn Oil" id = "cornoil" description = "An oil derived from various types of corn." nutriment_factor = 20 * REAGENTS_METABOLISM color = "#302000" // rgb: 48, 32, 0 -datum/reagent/consumable/cornoil/reaction_turf(var/turf/simulated/T, var/volume) +/datum/reagent/consumable/cornoil/reaction_turf(var/turf/simulated/T, var/volume) if (!istype(T)) return src = null @@ -335,70 +335,70 @@ datum/reagent/consumable/cornoil/reaction_turf(var/turf/simulated/T, var/volume) T.assume_air(lowertemp) hotspot.Kill() -datum/reagent/consumable/enzyme +/datum/reagent/consumable/enzyme name = "Universal Enzyme" id = "enzyme" description = "A universal enzyme used in the preperation of certain chemicals and foods." color = "#365E30" // rgb: 54, 94, 48 -datum/reagent/consumable/dry_ramen +/datum/reagent/consumable/dry_ramen name = "Dry Ramen" id = "dry_ramen" description = "Space age food, since August 25, 1958. Contains dried noodles, vegetables, and chemicals that boil in contact with water." reagent_state = SOLID color = "#302000" // rgb: 48, 32, 0 -datum/reagent/consumable/hot_ramen +/datum/reagent/consumable/hot_ramen name = "Hot Ramen" id = "hot_ramen" description = "The noodles are boiled, the flavors are artificial, just like being back in school." nutriment_factor = 5 * REAGENTS_METABOLISM color = "#302000" // rgb: 48, 32, 0 -datum/reagent/consumable/hot_ramen/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/hot_ramen/on_mob_life(var/mob/living/M as mob) if (M.bodytemperature < 310)//310 is the normal bodytemp. 310.055 M.bodytemperature = min(310, M.bodytemperature + (10 * TEMPERATURE_DAMAGE_COEFFICIENT)) ..() return -datum/reagent/consumable/hell_ramen +/datum/reagent/consumable/hell_ramen name = "Hell Ramen" id = "hell_ramen" description = "The noodles are boiled, the flavors are artificial, just like being back in school." nutriment_factor = 5 * REAGENTS_METABOLISM color = "#302000" // rgb: 48, 32, 0 -datum/reagent/consumable/hell_ramen/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/hell_ramen/on_mob_life(var/mob/living/M as mob) M.bodytemperature += 10 * TEMPERATURE_DAMAGE_COEFFICIENT ..() return -datum/reagent/consumable/flour +/datum/reagent/consumable/flour name = "Flour" id = "flour" description = "This is what you rub all over yourself to pretend to be a ghost." reagent_state = SOLID color = "#FFFFFF" // rgb: 0, 0, 0 -datum/reagent/consumable/flour/reaction_turf(var/turf/T, var/volume) +/datum/reagent/consumable/flour/reaction_turf(var/turf/T, var/volume) src = null if(!istype(T, /turf/space)) var/obj/effect/decal/cleanable/reagentdecal = new/obj/effect/decal/cleanable/flour(T) reagentdecal.reagents.add_reagent("flour", volume) -datum/reagent/consumable/cherryjelly +/datum/reagent/consumable/cherryjelly name = "Cherry Jelly" id = "cherryjelly" description = "Totally the best. Only to be spread on foods with excellent lateral symmetry." color = "#801E28" // rgb: 128, 30, 40 -datum/reagent/consumable/bluecherryjelly +/datum/reagent/consumable/bluecherryjelly name = "Blue Cherry Jelly" id = "bluecherryjelly" description = "Blue and tastier kind of cherry jelly." color = "#00F0FF" -datum/reagent/consumable/rice +/datum/reagent/consumable/rice name = "Rice" id = "rice" description = "tiny nutritious grains" @@ -406,7 +406,7 @@ datum/reagent/consumable/rice nutriment_factor = 3 * REAGENTS_METABOLISM color = "#FFFFFF" // rgb: 0, 0, 0 -datum/reagent/consumable/vanilla +/datum/reagent/consumable/vanilla name = "Vanilla Powder" id = "vanilla" description = "A fatty, bitter paste made from vanilla pods." @@ -414,25 +414,25 @@ datum/reagent/consumable/vanilla nutriment_factor = 5 * REAGENTS_METABOLISM color = "#FFFACD" -datum/reagent/consumable/eggyolk +/datum/reagent/consumable/eggyolk name = "Egg Yolk" id = "eggyolk" description = "It's full of protein." color = "#FFB500" -datum/reagent/consumable/corn_starch +/datum/reagent/consumable/corn_starch name = "Corn Starch" id = "corn_starch" description = "A slippery solution." color = "#C8A5DC" -datum/reagent/consumable/corn_syrup +/datum/reagent/consumable/corn_syrup name = "Corn Syrup" id = "corn_syrup" description = "Decays into sugar." color = "#C8A5DC" -datum/reagent/consumable/corn_syrup/on_mob_life(var/mob/living/M as mob) +/datum/reagent/consumable/corn_syrup/on_mob_life(var/mob/living/M as mob) M.reagents.add_reagent("sugar", 3) M.reagents.remove_reagent("corn_syrup", 1) ..() diff --git a/code/modules/reagents/Chemistry-Reagents/Drug-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Drug-Reagents.dm index 17fea97c5dde..0b9f8c708477 100644 --- a/code/modules/reagents/Chemistry-Reagents/Drug-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents/Drug-Reagents.dm @@ -1,18 +1,18 @@ -datum/reagent/drug +/datum/reagent/drug name = "Drug" id = "drug" metabolization_rate = 0.5 * REAGENTS_METABOLISM -datum/reagent/drug/space_drugs +/datum/reagent/drug/space_drugs name = "Space drugs" id = "space_drugs" description = "An illegal chemical compound used as drug." color = "#60A584" // rgb: 96, 165, 132 overdose_threshold = 25 -datum/reagent/drug/space_drugs/on_mob_life(var/mob/living/M as mob) +/datum/reagent/drug/space_drugs/on_mob_life(var/mob/living/M as mob) M.druggy = max(M.druggy, 15) if(isturf(M.loc) && !istype(M.loc, /turf/space)) if(M.canmove) @@ -22,7 +22,7 @@ datum/reagent/drug/space_drugs/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/drug/space_drugs/overdose_process(var/mob/living/M as mob) +/datum/reagent/drug/space_drugs/overdose_process(var/mob/living/M as mob) if(prob(20)) M.hallucination = max(M.hallucination, 5) M.adjustBrainLoss(0.25*REM) @@ -30,7 +30,7 @@ datum/reagent/drug/space_drugs/overdose_process(var/mob/living/M as mob) ..() return -datum/reagent/drug/nicotine +/datum/reagent/drug/nicotine name = "Nicotine" id = "nicotine" description = "Slightly reduces stun times. If overdosed it will deal toxin and oxygen damage." @@ -38,7 +38,7 @@ datum/reagent/drug/nicotine color = "#60A584" // rgb: 96, 165, 132 addiction_threshold = 30 -datum/reagent/drug/nicotine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/drug/nicotine/on_mob_life(var/mob/living/M as mob) var/smoke_message = pick("You can just feel your lungs dying!", "You feel relaxed.", "You feel calmed.", "You feel the lung cancer forming.", "You feel the money you wasted.", "You feel like a space cowboy.", "You feel rugged.") if(prob(5)) M << "[smoke_message]" @@ -46,7 +46,7 @@ datum/reagent/drug/nicotine/on_mob_life(var/mob/living/M as mob) M.adjustStaminaLoss(-0.5*REM) ..() -datum/reagent/drug/crank +/datum/reagent/drug/crank name = "Crank" id = "crank" description = "Reduces stun times by about 200%. If overdosed or addicted it will deal significant Toxin, Brute and Brain damage." @@ -55,7 +55,7 @@ datum/reagent/drug/crank overdose_threshold = 20 addiction_threshold = 10 -datum/reagent/drug/crank/on_mob_life(var/mob/living/M as mob) +/datum/reagent/drug/crank/on_mob_life(var/mob/living/M as mob) var/high_message = pick("You feel jittery.", "You feel like you gotta go fast.", "You feel like you need to step it up.") if(prob(5)) M << "[high_message]" @@ -64,25 +64,25 @@ datum/reagent/drug/crank/on_mob_life(var/mob/living/M as mob) M.AdjustWeakened(-1) ..() -datum/reagent/drug/crank/overdose_process(var/mob/living/M as mob) +/datum/reagent/drug/crank/overdose_process(var/mob/living/M as mob) M.adjustBrainLoss(2*REM) M.adjustToxLoss(2*REM) M.adjustBruteLoss(2*REM) ..() -datum/reagent/drug/crank/addiction_act_stage1(var/mob/living/M as mob) +/datum/reagent/drug/crank/addiction_act_stage1(var/mob/living/M as mob) M.adjustBrainLoss(5*REM) ..() -datum/reagent/drug/crank/addiction_act_stage2(var/mob/living/M as mob) +/datum/reagent/drug/crank/addiction_act_stage2(var/mob/living/M as mob) M.adjustToxLoss(5*REM) ..() -datum/reagent/drug/crank/addiction_act_stage3(var/mob/living/M as mob) +/datum/reagent/drug/crank/addiction_act_stage3(var/mob/living/M as mob) M.adjustBruteLoss(5*REM) ..() -datum/reagent/drug/crank/addiction_act_stage4(var/mob/living/M as mob) +/datum/reagent/drug/crank/addiction_act_stage4(var/mob/living/M as mob) M.adjustBrainLoss(5*REM) M.adjustToxLoss(5*REM) M.adjustBruteLoss(5*REM) diff --git a/code/modules/reagents/Chemistry-Reagents/Medicine-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Medicine-Reagents.dm index 2b8e06fac648..0a13c0d87c45 100644 --- a/code/modules/reagents/Chemistry-Reagents/Medicine-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents/Medicine-Reagents.dm @@ -5,34 +5,34 @@ // where all the reagents related to medicine go. -datum/reagent/medicine +/datum/reagent/medicine name = "Medicine" id = "medicine" -datum/reagent/medicine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/on_mob_life(var/mob/living/M as mob) current_cycle++ holder.remove_reagent(src.id, metabolization_rate / M.metabolism_efficiency) //medicine reagents stay longer if you have a better metabolism -datum/reagent/medicine/leporazine +/datum/reagent/medicine/leporazine name = "Leporazine" id = "leporazine" description = "Leporazine can be use to stabilize an individuals body temperature." color = "#C8A5DC" // rgb: 200, 165, 220 -datum/reagent/medicine/leporazine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/leporazine/on_mob_life(var/mob/living/M as mob) if(M.bodytemperature > 310) M.bodytemperature = max(310, M.bodytemperature - (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) else if(M.bodytemperature < 311) M.bodytemperature = min(310, M.bodytemperature + (40 * TEMPERATURE_DAMAGE_COEFFICIENT)) ..() -datum/reagent/medicine/adminordrazine //An OP chemical for admins +/datum/reagent/medicine/adminordrazine //An OP chemical for admins name = "Adminordrazine" id = "adminordrazine" description = "It's magic. We don't have to explain it." color = "#C8A5DC" // rgb: 200, 165, 220 -datum/reagent/medicine/adminordrazine/on_mob_life(var/mob/living/carbon/M as mob) +/datum/reagent/medicine/adminordrazine/on_mob_life(var/mob/living/carbon/M as mob) M.reagents.remove_all_type(/datum/reagent/toxin, 5*REM, 0, 1) M.setCloneLoss(0) M.setOxyLoss(0) @@ -65,18 +65,18 @@ datum/reagent/medicine/adminordrazine/on_mob_life(var/mob/living/carbon/M as mob ..() return -datum/reagent/medicine/adminordrazine/nanites +/datum/reagent/medicine/adminordrazine/nanites name = "Nanites" id = "nanites" description = "Tiny machines capable of rapid cellular regeneration." -datum/reagent/medicine/synaptizine +/datum/reagent/medicine/synaptizine name = "Synaptizine" id = "synaptizine" description = "Synaptizine is used to treat various diseases." color = "#C8A5DC" // rgb: 200, 165, 220 -datum/reagent/medicine/synaptizine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/synaptizine/on_mob_life(var/mob/living/M as mob) M.drowsyness = max(M.drowsyness-5, 0) M.AdjustParalysis(-1) M.AdjustStunned(-1) @@ -88,24 +88,24 @@ datum/reagent/medicine/synaptizine/on_mob_life(var/mob/living/M as mob) M.adjustToxLoss(1) ..() return -datum/reagent/medicine/inacusiate +/datum/reagent/medicine/inacusiate name = "Inacusiate" id = "inacusiate" description = "Heals ear damage." color = "#6600FF" // rgb: 100, 165, 255 -datum/reagent/medicine/inacusiate/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/inacusiate/on_mob_life(var/mob/living/M as mob) M.setEarDamage(0,0) ..() return -datum/reagent/medicine/cryoxadone +/datum/reagent/medicine/cryoxadone name = "Cryoxadone" id = "cryoxadone" description = "A chemical mixture with almost magical healing powers. Its main limitation is that the targets body temperature must be under 170K for it to metabolise correctly." color = "#0000C8" -datum/reagent/medicine/cryoxadone/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/cryoxadone/on_mob_life(var/mob/living/M as mob) if(M.stat != DEAD && M.bodytemperature < 270) M.adjustCloneLoss(-4) M.adjustOxyLoss(-10) @@ -117,14 +117,14 @@ datum/reagent/medicine/cryoxadone/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/rezadone +/datum/reagent/medicine/rezadone name = "Rezadone" id = "rezadone" description = "A powder derived from fish toxin, this substance can effectively treat cellular damage in humanoids, though excessive consumption has side effects." reagent_state = SOLID color = "#669900" // rgb: 102, 153, 0 -datum/reagent/medicine/rezadone/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/rezadone/on_mob_life(var/mob/living/M as mob) switch(current_cycle) if(1 to 15) M.adjustCloneLoss(-1) @@ -141,7 +141,7 @@ datum/reagent/medicine/rezadone/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/spaceacillin +/datum/reagent/medicine/spaceacillin name = "Spaceacillin" id = "spaceacillin" description = "An all-purpose antiviral agent." @@ -156,14 +156,14 @@ datum/reagent/medicine/spaceacillin //------------------------------------------------------------------------------------------------------ -datum/reagent/medicine/silver_sulfadiazine +/datum/reagent/medicine/silver_sulfadiazine name = "Silver Sulfadiazine" id = "silver_sulfadiazine" description = "On touch, quickly heals burn damage. Basic anti-burn healing drug. On ingestion, deals minor toxin damage." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/medicine/silver_sulfadiazine/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/medicine/silver_sulfadiazine/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(iscarbon(M)) if(method == TOUCH) M.adjustFireLoss(-volume) @@ -177,19 +177,19 @@ datum/reagent/medicine/silver_sulfadiazine/reaction_mob(var/mob/living/M as mob, ..() return -datum/reagent/medicine/silver_sulfadiazine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/silver_sulfadiazine/on_mob_life(var/mob/living/M as mob) M.adjustFireLoss(-2*REM) ..() return -datum/reagent/medicine/styptic_powder +/datum/reagent/medicine/styptic_powder name = "Styptic Powder" id = "styptic_powder" description = "On touch, quickly heals brute damage. Basic anti-brute healing drug. On ingestion, deals minor toxin damage." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/medicine/styptic_powder/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) +/datum/reagent/medicine/styptic_powder/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume, var/show_message = 1) if(iscarbon(M)) if(method == TOUCH) M.adjustBruteLoss(-volume) @@ -204,12 +204,12 @@ datum/reagent/medicine/styptic_powder/reaction_mob(var/mob/living/M as mob, var/ ..() return -datum/reagent/medicine/styptic_powder/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/styptic_powder/on_mob_life(var/mob/living/M as mob) M.adjustBruteLoss(-2*REM) ..() return -datum/reagent/medicine/salglu_solution +/datum/reagent/medicine/salglu_solution name = "Saline-Glucose Solution" id = "salglu_solution" description = "Has a 33% chance per metabolism cycle to heal brute and burn damage." @@ -217,21 +217,21 @@ datum/reagent/medicine/salglu_solution color = "#C8A5DC" metabolization_rate = 0.5 * REAGENTS_METABOLISM -datum/reagent/medicine/salglu_solution/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/salglu_solution/on_mob_life(var/mob/living/M as mob) if(prob(33)) M.adjustBruteLoss(-0.5*REM) M.adjustFireLoss(-0.5*REM) ..() return -datum/reagent/medicine/synthflesh +/datum/reagent/medicine/synthflesh name = "Synthflesh" id = "synthflesh" description = "Has a 100% chance of instantly healing brute and burn damage. One unit of the chemical will heal one point of damage. Touch application only." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/medicine/synthflesh/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume,var/show_message = 1) +/datum/reagent/medicine/synthflesh/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume,var/show_message = 1) if(iscarbon(M)) if(method == TOUCH) M.adjustBruteLoss(-1.5*volume) @@ -241,7 +241,7 @@ datum/reagent/medicine/synthflesh/reaction_mob(var/mob/living/M, var/method=TOUC ..() return -datum/reagent/medicine/charcoal +/datum/reagent/medicine/charcoal name = "Charcoal" id = "charcoal" description = "Heals toxin damage, and will also slowly remove any other chemicals." @@ -249,7 +249,7 @@ datum/reagent/medicine/charcoal color = "#C8A5DC" metabolization_rate = 0.5 * REAGENTS_METABOLISM -datum/reagent/medicine/charcoal/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/charcoal/on_mob_life(var/mob/living/M as mob) M.adjustToxLoss(-2*REM) for(var/datum/reagent/R in M.reagents.reagent_list) if(R != src) @@ -257,7 +257,7 @@ datum/reagent/medicine/charcoal/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/omnizine +/datum/reagent/medicine/omnizine name = "Omnizine" id = "omnizine" description = "Heals 1 of each damage type a cycle. If overdosed it will deal significant amounts of each damage type." @@ -266,7 +266,7 @@ datum/reagent/medicine/omnizine metabolization_rate = 0.25 * REAGENTS_METABOLISM overdose_threshold = 30 -datum/reagent/medicine/omnizine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/omnizine/on_mob_life(var/mob/living/M as mob) M.adjustToxLoss(-0.5*REM) M.adjustOxyLoss(-0.5*REM) M.adjustBruteLoss(-0.5*REM) @@ -274,7 +274,7 @@ datum/reagent/medicine/omnizine/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/omnizine/overdose_process(var/mob/living/M as mob) +/datum/reagent/medicine/omnizine/overdose_process(var/mob/living/M as mob) M.adjustToxLoss(1.5*REM) M.adjustOxyLoss(1.5*REM) M.adjustBruteLoss(1.5*REM) @@ -282,7 +282,7 @@ datum/reagent/medicine/omnizine/overdose_process(var/mob/living/M as mob) ..() return -datum/reagent/medicine/calomel +/datum/reagent/medicine/calomel name = "Calomel" id = "calomel" description = "Quickly purges the body of all chemicals. If your health is above 20, toxin damage is dealt. When you hit 20 health or lower, the damage will cease." @@ -290,7 +290,7 @@ datum/reagent/medicine/calomel color = "#C8A5DC" metabolization_rate = 0.5 * REAGENTS_METABOLISM -datum/reagent/medicine/calomel/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/calomel/on_mob_life(var/mob/living/M as mob) for(var/datum/reagent/R in M.reagents.reagent_list) if(R != src) M.reagents.remove_reagent(R.id,2.5) @@ -299,7 +299,7 @@ datum/reagent/medicine/calomel/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/potass_iodide +/datum/reagent/medicine/potass_iodide name = "Potassium Iodide" id = "potass_iodide" description = "Reduces low radiation damage very effectively." @@ -307,7 +307,7 @@ datum/reagent/medicine/potass_iodide color = "#C8A5DC" metabolization_rate = 2 * REAGENTS_METABOLISM -datum/reagent/medicine/potass_iodide/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/potass_iodide/on_mob_life(var/mob/living/M as mob) if(M.radiation > 0) M.radiation-- if(M.radiation < 0) @@ -315,7 +315,7 @@ datum/reagent/medicine/potass_iodide/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/pen_acid +/datum/reagent/medicine/pen_acid name = "Pentetic Acid" id = "pen_acid" description = "Reduces massive amounts of radiation and toxin damage while purging other chemicals from the body. Has a chance of dealing brute damage." @@ -323,7 +323,7 @@ datum/reagent/medicine/pen_acid color = "#C8A5DC" metabolization_rate = 0.5 * REAGENTS_METABOLISM -datum/reagent/medicine/pen_acid/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/pen_acid/on_mob_life(var/mob/living/M as mob) if(M.radiation > 0) M.radiation -= 4 M.adjustToxLoss(-2*REM) @@ -337,7 +337,7 @@ datum/reagent/medicine/pen_acid/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/sal_acid +/datum/reagent/medicine/sal_acid name = "Salicyclic Acid" id = "sal_acid" description = "If you have less than 50 brute damage, it heals 0.25 unit. If overdosed it will deal 0.5 brute damage if the patient has less than 50 brute damage already." @@ -346,19 +346,19 @@ datum/reagent/medicine/sal_acid metabolization_rate = 0.5 * REAGENTS_METABOLISM overdose_threshold = 25 -datum/reagent/medicine/sal_acid/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/sal_acid/on_mob_life(var/mob/living/M as mob) if(M.getBruteLoss() < 50) M.adjustBruteLoss(-0.25*REM) ..() return -datum/reagent/medicine/sal_acid/overdose_process(var/mob/living/M as mob) +/datum/reagent/medicine/sal_acid/overdose_process(var/mob/living/M as mob) if(M.getBruteLoss() < 50) M.adjustBruteLoss(0.5*REM) ..() return -datum/reagent/medicine/salbutamol +/datum/reagent/medicine/salbutamol name = "Salbutamol" id = "salbutamol" description = "Quickly heals oxygen damage while slowing down suffocation. Great for stabilizing critical patients!" @@ -366,14 +366,14 @@ datum/reagent/medicine/salbutamol color = "#C8A5DC" metabolization_rate = 0.25 * REAGENTS_METABOLISM -datum/reagent/medicine/salbutamol/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/salbutamol/on_mob_life(var/mob/living/M as mob) M.adjustOxyLoss(-3*REM) if(M.losebreath >= 4) M.losebreath -= 2 ..() return -datum/reagent/medicine/perfluorodecalin +/datum/reagent/medicine/perfluorodecalin name = "Perfluorodecalin" id = "perfluorodecalin" description = "Heals suffocation damage so quickly that you could have a spacewalk, but it mutes your voice. Has a 33% chance of healing brute and burn damage per cycle as well." @@ -381,7 +381,7 @@ datum/reagent/medicine/perfluorodecalin color = "#C8A5DC" metabolization_rate = 0.25 * REAGENTS_METABOLISM -datum/reagent/medicine/perfluorodecalin/on_mob_life(var/mob/living/carbon/human/M as mob) +/datum/reagent/medicine/perfluorodecalin/on_mob_life(var/mob/living/carbon/human/M as mob) M.adjustOxyLoss(-12*REM) M.silent = max(M.silent, 5) if(prob(33)) @@ -390,7 +390,7 @@ datum/reagent/medicine/perfluorodecalin/on_mob_life(var/mob/living/carbon/human/ ..() return -datum/reagent/medicine/ephedrine +/datum/reagent/medicine/ephedrine name = "Ephedrine" id = "ephedrine" description = "Reduces stun times, increases run speed. If overdosed it will deal toxin and oxyloss damage." @@ -400,7 +400,7 @@ datum/reagent/medicine/ephedrine overdose_threshold = 45 addiction_threshold = 30 -datum/reagent/medicine/ephedrine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/ephedrine/on_mob_life(var/mob/living/M as mob) M.status_flags |= GOTTAGOFAST M.AdjustParalysis(-1) M.AdjustStunned(-1) @@ -409,39 +409,39 @@ datum/reagent/medicine/ephedrine/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/ephedrine/overdose_process(var/mob/living/M as mob) +/datum/reagent/medicine/ephedrine/overdose_process(var/mob/living/M as mob) if(prob(33)) M.adjustToxLoss(0.5*REM) M.losebreath++ ..() return -datum/reagent/medicine/ephedrine/addiction_act_stage1(var/mob/living/M as mob) +/datum/reagent/medicine/ephedrine/addiction_act_stage1(var/mob/living/M as mob) if(prob(33)) M.adjustToxLoss(2*REM) M.losebreath += 2 ..() return -datum/reagent/medicine/ephedrine/addiction_act_stage2(var/mob/living/M as mob) +/datum/reagent/medicine/ephedrine/addiction_act_stage2(var/mob/living/M as mob) if(prob(33)) M.adjustToxLoss(3*REM) M.losebreath += 3 ..() return -datum/reagent/medicine/ephedrine/addiction_act_stage3(var/mob/living/M as mob) +/datum/reagent/medicine/ephedrine/addiction_act_stage3(var/mob/living/M as mob) if(prob(33)) M.adjustToxLoss(4*REM) M.losebreath += 4 ..() return -datum/reagent/medicine/ephedrine/addiction_act_stage4(var/mob/living/M as mob) +/datum/reagent/medicine/ephedrine/addiction_act_stage4(var/mob/living/M as mob) if(prob(33)) M.adjustToxLoss(5*REM) M.losebreath += 5 ..() return -datum/reagent/medicine/diphenhydramine +/datum/reagent/medicine/diphenhydramine name = "Diphenhydramine" id = "diphenhydramine" description = "Purges body of lethal Histamine and reduces jitteriness while causing minor drowsiness." @@ -449,7 +449,7 @@ datum/reagent/medicine/diphenhydramine color = "#C8A5DC" metabolization_rate = 0.5 * REAGENTS_METABOLISM -datum/reagent/medicine/diphenhydramine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/diphenhydramine/on_mob_life(var/mob/living/M as mob) if(prob(50)) M.drowsyness += 1 M.jitteriness -= 1 @@ -457,7 +457,7 @@ datum/reagent/medicine/diphenhydramine/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/morphine +/datum/reagent/medicine/morphine name = "Morphine" id = "morphine" description = "Will allow you to ignore slowdown from equipment and damage. Will eventually knock you out if you take too much. If overdosed it will cause jitteriness, dizziness, force the victim to drop items in their hands and eventually deal toxin damage." @@ -468,14 +468,14 @@ datum/reagent/medicine/morphine addiction_threshold = 25 -datum/reagent/medicine/morphine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/morphine/on_mob_life(var/mob/living/M as mob) M.status_flags |= IGNORESLOWDOWN if(current_cycle >= 12) M.sleeping += 1 ..() return -datum/reagent/medicine/morphine/overdose_process(var/mob/living/M as mob) +/datum/reagent/medicine/morphine/overdose_process(var/mob/living/M as mob) if(prob(33)) var/obj/item/I = M.get_active_hand() if(I) @@ -485,7 +485,7 @@ datum/reagent/medicine/morphine/overdose_process(var/mob/living/M as mob) ..() return -datum/reagent/medicine/morphine/addiction_act_stage1(var/mob/living/M as mob) +/datum/reagent/medicine/morphine/addiction_act_stage1(var/mob/living/M as mob) if(prob(33)) var/obj/item/I = M.get_active_hand() if(I) @@ -494,7 +494,7 @@ datum/reagent/medicine/morphine/addiction_act_stage1(var/mob/living/M as mob) M.Jitter(2) ..() return -datum/reagent/medicine/morphine/addiction_act_stage2(var/mob/living/M as mob) +/datum/reagent/medicine/morphine/addiction_act_stage2(var/mob/living/M as mob) if(prob(33)) var/obj/item/I = M.get_active_hand() if(I) @@ -504,7 +504,7 @@ datum/reagent/medicine/morphine/addiction_act_stage2(var/mob/living/M as mob) M.Jitter(3) ..() return -datum/reagent/medicine/morphine/addiction_act_stage3(var/mob/living/M as mob) +/datum/reagent/medicine/morphine/addiction_act_stage3(var/mob/living/M as mob) if(prob(33)) var/obj/item/I = M.get_active_hand() if(I) @@ -514,7 +514,7 @@ datum/reagent/medicine/morphine/addiction_act_stage3(var/mob/living/M as mob) M.Jitter(4) ..() return -datum/reagent/medicine/morphine/addiction_act_stage4(var/mob/living/M as mob) +/datum/reagent/medicine/morphine/addiction_act_stage4(var/mob/living/M as mob) if(prob(33)) var/obj/item/I = M.get_active_hand() if(I) @@ -525,7 +525,7 @@ datum/reagent/medicine/morphine/addiction_act_stage4(var/mob/living/M as mob) ..() return -datum/reagent/medicine/oculine +/datum/reagent/medicine/oculine name = "Oculine" id = "oculine" description = "Cures blindness and heals eye damage over time." @@ -533,7 +533,7 @@ datum/reagent/medicine/oculine color = "#C8A5DC" metabolization_rate = 0.25 * REAGENTS_METABOLISM -datum/reagent/medicine/oculine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/oculine/on_mob_life(var/mob/living/M as mob) if(M.eye_blind > 0 && current_cycle > 20) if(prob(30)) M.eye_blind = 0 @@ -546,7 +546,7 @@ datum/reagent/medicine/oculine/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/atropine +/datum/reagent/medicine/atropine name = "Atropine" id = "atropine" description = "If patients health is below -25 it will heal 1.5 brute and burn damage per cycle, as well as stop any oxyloss. Good for stabilising critical patients." @@ -555,7 +555,7 @@ datum/reagent/medicine/atropine metabolization_rate = 0.25 * REAGENTS_METABOLISM overdose_threshold = 35 -datum/reagent/medicine/atropine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/atropine/on_mob_life(var/mob/living/M as mob) if(M.health > -60) M.adjustToxLoss(0.5*REM) if(M.health < -25) @@ -571,14 +571,14 @@ datum/reagent/medicine/atropine/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/atropine/overdose_process(var/mob/living/M as mob) +/datum/reagent/medicine/atropine/overdose_process(var/mob/living/M as mob) M.adjustToxLoss(0.5*REM) M.Dizzy(1) M.Jitter(1) ..() return -datum/reagent/medicine/epinephrine +/datum/reagent/medicine/epinephrine name = "Epinephrine" id = "epinephrine" description = "Reduces most of the knockout/stun effects, minor stamina regeneration buff. Attempts to stop you taking too much oxygen damage. If the patient is in low to severe crit, heals toxins, brute, and burn very effectively. Will not heal patients who are almost dead. If overdosed will stun and deal toxin damage" @@ -587,7 +587,7 @@ datum/reagent/medicine/epinephrine metabolization_rate = 0.25 * REAGENTS_METABOLISM overdose_threshold = 30 -datum/reagent/medicine/epinephrine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/epinephrine/on_mob_life(var/mob/living/M as mob) if(M.health < -10 && M.health > -65) M.adjustToxLoss(-0.5*REM) M.adjustBruteLoss(-0.5*REM) @@ -606,7 +606,7 @@ datum/reagent/medicine/epinephrine/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/epinephrine/overdose_process(var/mob/living/M as mob) +/datum/reagent/medicine/epinephrine/overdose_process(var/mob/living/M as mob) if(prob(33)) M.adjustStaminaLoss(2.5*REM) M.adjustToxLoss(1*REM) @@ -614,7 +614,7 @@ datum/reagent/medicine/epinephrine/overdose_process(var/mob/living/M as mob) ..() return -datum/reagent/medicine/strange_reagent +/datum/reagent/medicine/strange_reagent name = "Strange Reagent" id = "strange_reagent" description = "A miracle drug that can bring a dead body back to life! If the corpse has suffered too much damage, however, no change will occur to the body. If used on a living person it will deal Brute and Burn damage." @@ -622,7 +622,7 @@ datum/reagent/medicine/strange_reagent color = "#C8A5DC" metabolization_rate = 0.5 * REAGENTS_METABOLISM -datum/reagent/medicine/strange_reagent/reaction_mob(var/mob/living/carbon/human/M as mob, var/method=TOUCH, var/volume) +/datum/reagent/medicine/strange_reagent/reaction_mob(var/mob/living/carbon/human/M as mob, var/method=TOUCH, var/volume) if(M.stat == DEAD) if(M.getBruteLoss() >= 100 || M.getFireLoss() >= 100) M.visible_message("[M]'s body convulses a bit, and then falls still once more.") @@ -644,7 +644,7 @@ datum/reagent/medicine/strange_reagent/reaction_mob(var/mob/living/carbon/human/ ..() return -datum/reagent/medicine/strange_reagent/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/strange_reagent/on_mob_life(var/mob/living/M as mob) M.adjustBruteLoss(0.5*REM) M.adjustFireLoss(0.5*REM) ..() @@ -674,13 +674,13 @@ datum/reagent/medicine/strange_reagent/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/medicine/antihol +/datum/reagent/medicine/antihol name = "Antihol" id = "antihol" description = "Helps remove Alcohol from someone's body, as well as eliminating its side effects." color = "#C8A5DC" -datum/reagent/medicine/antihol/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/antihol/on_mob_life(var/mob/living/M as mob) M.dizziness = 0 M.drowsyness = 0 M.slurring = 0 @@ -697,7 +697,7 @@ datum/reagent/medicine/antihol/on_mob_life(var/mob/living/M as mob) metabolization_rate = 0.5 * REAGENTS_METABOLISM overdose_threshold = 60 -datum/reagent/medicine/stimulants/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/stimulants/on_mob_life(var/mob/living/M as mob) M.status_flags |= GOTTAGOFAST if(M.health < 50 && M.health > 0) M.adjustOxyLoss(-1*REM) @@ -710,7 +710,7 @@ datum/reagent/medicine/stimulants/on_mob_life(var/mob/living/M as mob) M.adjustStaminaLoss(-1.5*REM) ..() -datum/reagent/medicine/stimulants/overdose_process(var/mob/living/M as mob) +/datum/reagent/medicine/stimulants/overdose_process(var/mob/living/M as mob) if(prob(33)) M.adjustStaminaLoss(2.5*REM) M.adjustToxLoss(1*REM) @@ -718,7 +718,7 @@ datum/reagent/medicine/stimulants/overdose_process(var/mob/living/M as mob) ..() return -datum/reagent/medicine/insulin +/datum/reagent/medicine/insulin name = "Insulin" id = "insulin" description = "Increases sugar depletion rates." @@ -726,7 +726,7 @@ datum/reagent/medicine/insulin color = "#C8A5DC" metabolization_rate = 0.5 * REAGENTS_METABOLISM -datum/reagent/medicine/insulin/on_mob_life(var/mob/living/M as mob) +/datum/reagent/medicine/insulin/on_mob_life(var/mob/living/M as mob) if(M.sleeping) M.sleeping-- M.reagents.remove_reagent("sugar", 3) diff --git a/code/modules/reagents/Chemistry-Reagents/Other-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Other-Reagents.dm index 84e9f5e10a25..270ddfdabb67 100644 --- a/code/modules/reagents/Chemistry-Reagents/Other-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents/Other-Reagents.dm @@ -1,11 +1,11 @@ -datum/reagent/blood +/datum/reagent/blood data = list("donor"=null,"viruses"=null,"blood_DNA"=null,"blood_type"=null,"resistances"=null,"trace_chem"=null,"mind"=null,"ckey"=null,"gender"=null,"real_name"=null,"cloneable"=null,"factions"=null) name = "Blood" id = "blood" color = "#C80000" // rgb: 200, 0, 0 -datum/reagent/blood/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) +/datum/reagent/blood/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) var/datum/reagent/blood/self = src src = null if(self.data && self.data["viruses"]) @@ -19,11 +19,11 @@ datum/reagent/blood/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) else //injected M.ForceContractDisease(D) -datum/reagent/blood/on_new(var/list/data) +/datum/reagent/blood/on_new(var/list/data) if(istype(data)) SetViruses(src, data) -datum/reagent/blood/on_merge(var/list/data) +/datum/reagent/blood/on_merge(var/list/data) if(src.data && data) src.data["cloneable"] = 0 //On mix, consider the genetic sampling unviable for pod cloning, or else we won't know who's even getting cloned, etc if(src.data["viruses"] || data["viruses"]) @@ -48,7 +48,7 @@ datum/reagent/blood/on_merge(var/list/data) src.data["viruses"] = preserve return 1 -datum/reagent/blood/reaction_turf(var/turf/simulated/T, var/volume)//splash the blood all over the place +/datum/reagent/blood/reaction_turf(var/turf/simulated/T, var/volume)//splash the blood all over the place if(!istype(T)) return var/datum/reagent/blood/self = src src = null @@ -87,13 +87,13 @@ datum/reagent/blood/reaction_turf(var/turf/simulated/T, var/volume)//splash the newVirus.holder = blood_prop return -datum/reagent/vaccine +/datum/reagent/vaccine //data must contain virus type name = "Vaccine" id = "vaccine" color = "#C81040" // rgb: 200, 16, 64 -datum/reagent/vaccine/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) +/datum/reagent/vaccine/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) var/datum/reagent/vaccine/self = src src = null if(islist(self.data) && method == INGEST) @@ -103,12 +103,12 @@ datum/reagent/vaccine/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) M.resistances |= self.data return -datum/reagent/vaccine/on_merge(var/list/data) +/datum/reagent/vaccine/on_merge(var/list/data) if(istype(data)) src.data |= data.Copy() -datum/reagent/water +/datum/reagent/water name = "Water" id = "water" description = "A ubiquitous chemical substance that is composed of hydrogen and oxygen." @@ -119,7 +119,7 @@ datum/reagent/water * Water reaction to turf */ -datum/reagent/water/reaction_turf(var/turf/simulated/T, var/volume) +/datum/reagent/water/reaction_turf(var/turf/simulated/T, var/volume) if (!istype(T)) return var/CT = cooling_temperature src = null @@ -142,7 +142,7 @@ datum/reagent/water/reaction_turf(var/turf/simulated/T, var/volume) * Water reaction to an object */ -datum/reagent/water/reaction_obj(var/obj/O, var/volume) +/datum/reagent/water/reaction_obj(var/obj/O, var/volume) src = null // Monkey cube if(istype(O,/obj/item/weapon/reagent_containers/food/snacks/monkeycube)) @@ -161,7 +161,7 @@ datum/reagent/water/reaction_obj(var/obj/O, var/volume) * Water reaction to a mob */ -datum/reagent/water/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with water can help put them out! +/datum/reagent/water/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with water can help put them out! if(!istype(M, /mob/living)) return if(method == TOUCH) @@ -170,13 +170,13 @@ datum/reagent/water/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) M.ExtinguishMob() return -datum/reagent/water/holywater +/datum/reagent/water/holywater name = "Holy Water" id = "holywater" description = "Water blessed by some deity." color = "#E0E8EF" // rgb: 224, 232, 239 -datum/reagent/water/holywater/on_mob_life(var/mob/living/M as mob) +/datum/reagent/water/holywater/on_mob_life(var/mob/living/M as mob) if(!data) data = 1 data++ M.jitteriness = max(M.jitteriness-5,0) @@ -198,7 +198,7 @@ datum/reagent/water/holywater/on_mob_life(var/mob/living/M as mob) holder.remove_reagent(src.id, 0.4) //fixed consumption to prevent balancing going out of whack return -datum/reagent/water/holywater/reaction_turf(var/turf/simulated/T, var/volume) +/datum/reagent/water/holywater/reaction_turf(var/turf/simulated/T, var/volume) ..() if(!istype(T)) return if(volume>=10) @@ -206,12 +206,12 @@ datum/reagent/water/holywater/reaction_turf(var/turf/simulated/T, var/volume) qdel(R) T.Bless() -datum/reagent/fuel/unholywater //if you somehow managed to extract this from someone, dont splash it on yourself and have a smoke +/datum/reagent/fuel/unholywater //if you somehow managed to extract this from someone, dont splash it on yourself and have a smoke name = "Unholy Water" id = "unholywater" description = "Something that shouldn't exist on this plane of existance." -datum/reagent/fuel/unholywater/on_mob_life(var/mob/living/M as mob) +/datum/reagent/fuel/unholywater/on_mob_life(var/mob/living/M as mob) M.adjustBrainLoss(3) if(iscultist(M)) M.status_flags |= GOTTAGOFAST @@ -226,12 +226,12 @@ datum/reagent/fuel/unholywater/on_mob_life(var/mob/living/M as mob) M.adjustBruteLoss(2) holder.remove_reagent(src.id, 1) -datum/reagent/hellwater //if someone has this in their system they've really pissed off an eldrich god +/datum/reagent/hellwater //if someone has this in their system they've really pissed off an eldrich god name = "Hell Water" id = "hell_water" description = "YOUR FLESH! IT BURNS!" -datum/reagent/hellwater/on_mob_life(var/mob/living/M as mob) +/datum/reagent/hellwater/on_mob_life(var/mob/living/M as mob) M.fire_stacks = min(5,M.fire_stacks + 3) M.IgniteMob() //Only problem with igniting people is currently the commonly availible fire suits make you immune to being on fire M.adjustToxLoss(1) @@ -239,32 +239,32 @@ datum/reagent/hellwater/on_mob_life(var/mob/living/M as mob) M.adjustBrainLoss(5) holder.remove_reagent(src.id, 1) -datum/reagent/lube +/datum/reagent/lube name = "Space Lube" id = "lube" description = "Lubricant is a substance introduced between two moving surfaces to reduce the friction and wear between them. giggity." color = "#009CA8" // rgb: 0, 156, 168 -datum/reagent/lube/reaction_turf(var/turf/simulated/T, var/volume) +/datum/reagent/lube/reaction_turf(var/turf/simulated/T, var/volume) if (!istype(T)) return src = null if(volume >= 1) T.MakeSlippery(2) -datum/reagent/slimetoxin +/datum/reagent/slimetoxin name = "Mutation Toxin" id = "mutationtoxin" description = "A corruptive toxin produced by slimes." color = "#13BC5E" // rgb: 19, 188, 94 -datum/reagent/unstableslimetoxin +/datum/reagent/unstableslimetoxin name = "Unstable Mutation Toxin" id = "unstablemutationtoxin" description = "An unstable and unpredictable corruptive toxin produced by slimes." color = "#5EFF3B" //RGB: 94, 255, 59 metabolization_rate = INFINITY //So it instantly removes all of itself -datum/reagent/unstableslimetoxin/on_mob_life(var/mob/living/carbon/human/H as mob) +/datum/reagent/unstableslimetoxin/on_mob_life(var/mob/living/carbon/human/H as mob) ..() H << "You crumple in agony as your flesh wildly morphs into new forms!" H.visible_message("[H] falls to the ground and screams as their skin bubbles and froths!") //'froths' sounds painful when used with SKIN. @@ -285,71 +285,71 @@ datum/reagent/unstableslimetoxin/on_mob_life(var/mob/living/carbon/human/H as mo H << "The pain vanishes suddenly. You feel no different." return 1 -datum/reagent/aslimetoxin +/datum/reagent/aslimetoxin name = "Advanced Mutation Toxin" id = "amutationtoxin" description = "An advanced corruptive toxin produced by slimes." color = "#13BC5E" // rgb: 19, 188, 94 -datum/reagent/aslimetoxin/reaction_mob(var/mob/M, var/volume) +/datum/reagent/aslimetoxin/reaction_mob(var/mob/M, var/volume) src = null M.ForceContractDisease(new /datum/disease/transformation/slime(0)) -datum/reagent/serotrotium +/datum/reagent/serotrotium name = "Serotrotium" id = "serotrotium" description = "A chemical compound that promotes concentrated production of the serotonin neurotransmitter in humans." color = "#202040" // rgb: 20, 20, 40 metabolization_rate = 0.25 * REAGENTS_METABOLISM -datum/reagent/serotrotium/on_mob_life(var/mob/living/M as mob) +/datum/reagent/serotrotium/on_mob_life(var/mob/living/M as mob) if(ishuman(M)) if(prob(7)) M.emote(pick("twitch","drool","moan","gasp")) ..() return -datum/reagent/oxygen +/datum/reagent/oxygen name = "Oxygen" id = "oxygen" description = "A colorless, odorless gas." reagent_state = GAS color = "#808080" // rgb: 128, 128, 128 -datum/reagent/copper +/datum/reagent/copper name = "Copper" id = "copper" description = "A highly ductile metal." reagent_state = SOLID color = "#6E3B08" // rgb: 110, 59, 8 -datum/reagent/nitrogen +/datum/reagent/nitrogen name = "Nitrogen" id = "nitrogen" description = "A colorless, odorless, tasteless gas." reagent_state = GAS color = "#808080" // rgb: 128, 128, 128 -datum/reagent/hydrogen +/datum/reagent/hydrogen name = "Hydrogen" id = "hydrogen" description = "A colorless, odorless, nonmetallic, tasteless, highly combustible diatomic gas." reagent_state = GAS color = "#808080" // rgb: 128, 128, 128 -datum/reagent/potassium +/datum/reagent/potassium name = "Potassium" id = "potassium" description = "A soft, low-melting solid that can easily be cut with a knife. Reacts violently with water." reagent_state = SOLID color = "#A0A0A0" // rgb: 160, 160, 160 -datum/reagent/mercury +/datum/reagent/mercury name = "Mercury" id = "mercury" description = "A chemical element." color = "#484848" // rgb: 72, 72, 72 -datum/reagent/mercury/on_mob_life(var/mob/living/M as mob) +/datum/reagent/mercury/on_mob_life(var/mob/living/M as mob) if(M.canmove && istype(M.loc, /turf/space)) step(M, pick(cardinal)) if(prob(5)) @@ -358,71 +358,71 @@ datum/reagent/mercury/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/sulfur +/datum/reagent/sulfur name = "Sulfur" id = "sulfur" description = "A chemical element." reagent_state = SOLID color = "#BF8C00" // rgb: 191, 140, 0 -datum/reagent/carbon +/datum/reagent/carbon name = "Carbon" id = "carbon" description = "A chemical element." reagent_state = SOLID color = "#1C1300" // rgb: 30, 20, 0 -datum/reagent/carbon/reaction_turf(var/turf/T, var/volume) +/datum/reagent/carbon/reaction_turf(var/turf/T, var/volume) src = null if(!istype(T, /turf/space)) new /obj/effect/decal/cleanable/dirt(T) -datum/reagent/chlorine +/datum/reagent/chlorine name = "Chlorine" id = "chlorine" description = "A chemical element." reagent_state = GAS color = "#808080" // rgb: 128, 128, 128 -datum/reagent/chlorine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/chlorine/on_mob_life(var/mob/living/M as mob) M.take_organ_damage(1*REM, 0) ..() return -datum/reagent/fluorine +/datum/reagent/fluorine name = "Fluorine" id = "fluorine" description = "A highly-reactive chemical element." reagent_state = GAS color = "#808080" // rgb: 128, 128, 128 -datum/reagent/fluorine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/fluorine/on_mob_life(var/mob/living/M as mob) M.adjustToxLoss(1*REM) ..() return -datum/reagent/sodium +/datum/reagent/sodium name = "Sodium" id = "sodium" description = "A chemical element." reagent_state = SOLID color = "#808080" // rgb: 128, 128, 128 -datum/reagent/phosphorus +/datum/reagent/phosphorus name = "Phosphorus" id = "phosphorus" description = "A chemical element." reagent_state = SOLID color = "#832828" // rgb: 131, 40, 40 -datum/reagent/lithium +/datum/reagent/lithium name = "Lithium" id = "lithium" description = "A chemical element." reagent_state = SOLID color = "#808080" // rgb: 128, 128, 128 -datum/reagent/lithium/on_mob_life(var/mob/living/M as mob) +/datum/reagent/lithium/on_mob_life(var/mob/living/M as mob) if(M.canmove && istype(M.loc, /turf/space)) step(M, pick(cardinal)) if(prob(5)) @@ -430,124 +430,124 @@ datum/reagent/lithium/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/glycerol +/datum/reagent/glycerol name = "Glycerol" id = "glycerol" description = "Glycerol is a simple polyol compound. Glycerol is sweet-tasting and of low toxicity." color = "#808080" // rgb: 128, 128, 128 -datum/reagent/radium +/datum/reagent/radium name = "Radium" id = "radium" description = "Radium is an alkaline earth metal. It is extremely radioactive." reagent_state = SOLID color = "#C7C7C7" // rgb: 199,199,199 -datum/reagent/radium/on_mob_life(var/mob/living/M as mob) +/datum/reagent/radium/on_mob_life(var/mob/living/M as mob) M.apply_effect(2*REM/M.metabolism_efficiency,IRRADIATE,0) ..() return -datum/reagent/radium/reaction_turf(var/turf/T, var/volume) +/datum/reagent/radium/reaction_turf(var/turf/T, var/volume) src = null if(volume >= 3) if(!istype(T, /turf/space)) var/obj/effect/decal/cleanable/reagentdecal = new/obj/effect/decal/cleanable/greenglow(T) reagentdecal.reagents.add_reagent("uranium", volume) -datum/reagent/sterilizine +/datum/reagent/sterilizine name = "Sterilizine" id = "sterilizine" description = "Sterilizes wounds in preparation for surgery." color = "#C8A5DC" // rgb: 200, 165, 220 -datum/reagent/iron +/datum/reagent/iron name = "Iron" id = "iron" description = "Pure iron is a metal." reagent_state = SOLID color = "#C8A5DC" // rgb: 200, 165, 220 -datum/reagent/gold +/datum/reagent/gold name = "Gold" id = "gold" description = "Gold is a dense, soft, shiny metal and the most malleable and ductile metal known." reagent_state = SOLID color = "#F7C430" // rgb: 247, 196, 48 -datum/reagent/silver +/datum/reagent/silver name = "Silver" id = "silver" description = "A soft, white, lustrous transition metal, it has the highest electrical conductivity of any element and the highest thermal conductivity of any metal." reagent_state = SOLID color = "#D0D0D0" // rgb: 208, 208, 208 -datum/reagent/uranium +/datum/reagent/uranium name ="Uranium" id = "uranium" description = "A silvery-white metallic chemical element in the actinide series, weakly radioactive." reagent_state = SOLID color = "#B8B8C0" // rgb: 184, 184, 192 -datum/reagent/uranium/on_mob_life(var/mob/living/M as mob) +/datum/reagent/uranium/on_mob_life(var/mob/living/M as mob) M.apply_effect(1/M.metabolism_efficiency,IRRADIATE,0) ..() return -datum/reagent/uranium/reaction_turf(var/turf/T, var/volume) +/datum/reagent/uranium/reaction_turf(var/turf/T, var/volume) src = null if(volume >= 3) if(!istype(T, /turf/space)) var/obj/effect/decal/cleanable/reagentdecal = new/obj/effect/decal/cleanable/greenglow(T) reagentdecal.reagents.add_reagent("uranium", volume) -datum/reagent/aluminium +/datum/reagent/aluminium name = "Aluminium" id = "aluminium" description = "A silvery white and ductile member of the boron group of chemical elements." reagent_state = SOLID color = "#A8A8A8" // rgb: 168, 168, 168 -datum/reagent/silicon +/datum/reagent/silicon name = "Silicon" id = "silicon" description = "A tetravalent metalloid, silicon is less reactive than its chemical analog carbon." reagent_state = SOLID color = "#A8A8A8" // rgb: 168, 168, 168 -datum/reagent/fuel +/datum/reagent/fuel name = "Welding fuel" id = "welding_fuel" description = "Required for welders. Flamable." color = "#660000" // rgb: 102, 0, 0 -datum/reagent/fuel/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with welding fuel to make them easy to ignite! +/datum/reagent/fuel/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with welding fuel to make them easy to ignite! if(!istype(M, /mob/living)) return if(method == TOUCH) M.adjust_fire_stacks(volume / 10) return -datum/reagent/fuel/on_mob_life(var/mob/living/M as mob) +/datum/reagent/fuel/on_mob_life(var/mob/living/M as mob) M.adjustToxLoss(1) ..() return -datum/reagent/space_cleaner +/datum/reagent/space_cleaner name = "Space cleaner" id = "cleaner" description = "A compound used to clean things. Now with 50% more sodium hypochlorite!" color = "#A5F0EE" // rgb: 165, 240, 238 -datum/reagent/space_cleaner/reaction_obj(var/obj/O, var/volume) +/datum/reagent/space_cleaner/reaction_obj(var/obj/O, var/volume) if(istype(O,/obj/effect/decal/cleanable)) qdel(O) else if(O) O.clean_blood() -datum/reagent/space_cleaner/reaction_turf(var/turf/T, var/volume) +/datum/reagent/space_cleaner/reaction_turf(var/turf/T, var/volume) if(volume >= 1) T.clean_blood() for(var/obj/effect/decal/cleanable/C in T) @@ -560,7 +560,7 @@ datum/reagent/space_cleaner/reaction_turf(var/turf/T, var/volume) if(volume >= 1) F.dirt = 0 -datum/reagent/space_cleaner/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) +/datum/reagent/space_cleaner/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) if(iscarbon(M)) var/mob/living/carbon/C = M if(istype(M,/mob/living/carbon/human)) @@ -591,14 +591,14 @@ datum/reagent/space_cleaner/reaction_mob(var/mob/M, var/method=TOUCH, var/volume H.update_inv_shoes(0) M.clean_blood() -datum/reagent/cryptobiolin +/datum/reagent/cryptobiolin name = "Cryptobiolin" id = "cryptobiolin" description = "Cryptobiolin causes confusion and dizzyness." color = "#C8A5DC" // rgb: 200, 165, 220 metabolization_rate = 1.5 * REAGENTS_METABOLISM -datum/reagent/cryptobiolin/on_mob_life(var/mob/living/M as mob) +/datum/reagent/cryptobiolin/on_mob_life(var/mob/living/M as mob) M.Dizzy(1) if(!M.confused) M.confused = 1 @@ -606,13 +606,13 @@ datum/reagent/cryptobiolin/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/impedrezene +/datum/reagent/impedrezene name = "Impedrezene" id = "impedrezene" description = "Impedrezene is a narcotic that impedes one's ability by slowing down the higher brain cell functions." color = "#C8A5DC" // rgb: 200, 165, 220 -datum/reagent/impedrezene/on_mob_life(var/mob/living/M as mob) +/datum/reagent/impedrezene/on_mob_life(var/mob/living/M as mob) M.jitteriness = max(M.jitteriness-5,0) if(prob(80)) M.adjustBrainLoss(1*REM) if(prob(50)) M.drowsyness = max(M.drowsyness, 3) @@ -620,49 +620,49 @@ datum/reagent/impedrezene/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/nanites +/datum/reagent/nanites name = "Nanomachines" id = "nanomachines" description = "Microscopic construction robots." color = "#535E66" // rgb: 83, 94, 102 -datum/reagent/nanites/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) +/datum/reagent/nanites/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) src = null if( (prob(10) && method==TOUCH) || method==INGEST) M.ForceContractDisease(new /datum/disease/transformation/robot(0)) -datum/reagent/xenomicrobes +/datum/reagent/xenomicrobes name = "Xenomicrobes" id = "xenomicrobes" description = "Microbes with an entirely alien cellular structure." color = "#535E66" // rgb: 83, 94, 102 -datum/reagent/xenomicrobes/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) +/datum/reagent/xenomicrobes/reaction_mob(var/mob/M, var/method=TOUCH, var/volume) src = null if( (prob(10) && method==TOUCH) || method==INGEST) M.ContractDisease(new /datum/disease/transformation/xeno(0)) -datum/reagent/fluorosurfactant//foam precursor +/datum/reagent/fluorosurfactant//foam precursor name = "Fluorosurfactant" id = "fluorosurfactant" description = "A perfluoronated sulfonic acid that forms a foam when mixed with water." color = "#9E6B38" // rgb: 158, 107, 56 -datum/reagent/foaming_agent// Metal foaming agent. This is lithium hydride. Add other recipes (e.g. LiH + H2O -> LiOH + H2) eventually. +/datum/reagent/foaming_agent// Metal foaming agent. This is lithium hydride. Add other recipes (e.g. LiH + H2O -> LiOH + H2) eventually. name = "Foaming agent" id = "foaming_agent" description = "A agent that yields metallic foam when mixed with light metal and a strong acid." reagent_state = SOLID color = "#664B63" // rgb: 102, 75, 99 -datum/reagent/ammonia +/datum/reagent/ammonia name = "Ammonia" id = "ammonia" description = "A caustic substance commonly used in fertilizer or household cleaners." reagent_state = GAS color = "#404030" // rgb: 64, 64, 48 -datum/reagent/diethylamine +/datum/reagent/diethylamine name = "Diethylamine" id = "diethylamine" description = "A secondary amine, mildly corrosive." @@ -674,7 +674,7 @@ datum/reagent/diethylamine //For colouring in /proc/mix_color_from_reagents -datum/reagent/crayonpowder +/datum/reagent/crayonpowder name = "Crayon Powder" id = "crayon powder" var/colorname = "none" @@ -682,46 +682,46 @@ datum/reagent/crayonpowder reagent_state = SOLID color = "#FFFFFF" // rgb: 207, 54, 0 -datum/reagent/crayonpowder/New() +/datum/reagent/crayonpowder/New() description = "\an [colorname] powder made by grinding down crayons, good for colouring chemical reagents." -datum/reagent/crayonpowder/red +/datum/reagent/crayonpowder/red name = "Red Crayon Powder" id = "redcrayonpowder" colorname = "red" -datum/reagent/crayonpowder/orange +/datum/reagent/crayonpowder/orange name = "Orange Crayon Powder" id = "orangecrayonpowder" colorname = "orange" color = "#FF9300" // orange -datum/reagent/crayonpowder/yellow +/datum/reagent/crayonpowder/yellow name = "Yellow Crayon Powder" id = "yellowcrayonpowder" colorname = "yellow" color = "#FFF200" // yellow -datum/reagent/crayonpowder/green +/datum/reagent/crayonpowder/green name = "Green Crayon Powder" id = "greencrayonpowder" colorname = "green" color = "#A8E61D" // green -datum/reagent/crayonpowder/blue +/datum/reagent/crayonpowder/blue name = "Blue Crayon Powder" id = "bluecrayonpowder" colorname = "blue" color = "#00B7EF" // blue -datum/reagent/crayonpowder/purple +/datum/reagent/crayonpowder/purple name = "Purple Crayon Powder" id = "purplecrayonpowder" colorname = "purple" color = "#DA00FF" // purple -datum/reagent/crayonpowder/invisible +/datum/reagent/crayonpowder/invisible name = "Invisible Crayon Powder" id = "invisiblecrayonpowder" colorname = "invisible" @@ -732,34 +732,34 @@ datum/reagent/crayonpowder/invisible //////////////////////////////////Hydroponics stuff/////////////////////////////// -datum/reagent/plantnutriment +/datum/reagent/plantnutriment name = "Generic nutriment" id = "plantnutriment" description = "Some kind of nutriment. You can't really tell what it is. You should probably report it, along with how you obtained it." color = "#000000" // RBG: 0, 0, 0 var/tox_prob = 0 -datum/reagent/plantnutriment/on_mob_life(var/mob/living/M as mob) +/datum/reagent/plantnutriment/on_mob_life(var/mob/living/M as mob) if(prob(tox_prob)) M.adjustToxLoss(1*REM) ..() return -datum/reagent/plantnutriment/eznutriment +/datum/reagent/plantnutriment/eznutriment name = "E-Z-Nutrient" id = "eznutriment" description = "Cheap and extremely common type of plant nutriment." color = "#376400" // RBG: 50, 100, 0 tox_prob = 10 -datum/reagent/plantnutriment/left4zednutriment +/datum/reagent/plantnutriment/left4zednutriment name = "Left 4 Zed" id = "left4zednutriment" description = "Unstable nutriment that makes plants mutate more often than usual." color = "#1A1E4D" // RBG: 26, 30, 77 tox_prob = 25 -datum/reagent/plantnutriment/robustharvestnutriment +/datum/reagent/plantnutriment/robustharvestnutriment name = "Robust Harvest" id = "robustharvestnutriment" description = "Very potent nutriment that prevents plants from mutating." @@ -776,35 +776,35 @@ datum/reagent/plantnutriment/robustharvestnutriment -datum/reagent/oil +/datum/reagent/oil name = "Oil" id = "oil" description = "Burns in a small smoky fire, mostly used to get Ash." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/stable_plasma +/datum/reagent/stable_plasma name = "Stable Plasma" id = "stable_plasma" description = "Non-flammable plasma locked into a liquid form that cannot ignite or become gaseous/solid." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/iodine +/datum/reagent/iodine name = "Iodine" id = "iodine" description = "A slippery solution." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/fluorine +/datum/reagent/fluorine name = "Fluorine" id = "fluorine" description = "A slippery solution." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/carpet +/datum/reagent/carpet name = "Carpet" id = "carpet" description = "A slippery solution." @@ -818,35 +818,35 @@ datum/reagent/carpet ..() return -datum/reagent/bromine +/datum/reagent/bromine name = "Bromine" id = "bromine" description = "A slippery solution." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/phenol +/datum/reagent/phenol name = "Phenol" id = "phenol" description = "Used for certain medical recipes." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/ash +/datum/reagent/ash name = "Ash" id = "ash" description = "Basic ingredient in a couple of recipes." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/acetone +/datum/reagent/acetone name = "Acetone" id = "acetone" description = "Common ingredient in other recipes." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/colorful_reagent +/datum/reagent/colorful_reagent name = "Colorful Reagent" id = "colorful_reagent" description = "A solution." @@ -855,29 +855,29 @@ datum/reagent/colorful_reagent var/list/random_color_list = list("#00aedb","#a200ff","#f47835","#d41243","#d11141","#00b159","#00aedb","#f37735","#ffc425","#008744","#0057e7","#d62d20","#ffa700") -datum/reagent/colorful_reagent/on_mob_life(var/mob/living/M as mob) +/datum/reagent/colorful_reagent/on_mob_life(var/mob/living/M as mob) if(M && isliving(M)) M.color = pick(random_color_list) ..() return -datum/reagent/colorful_reagent/reaction_mob(var/mob/living/M, var/volume) +/datum/reagent/colorful_reagent/reaction_mob(var/mob/living/M, var/volume) if(M && isliving(M)) M.color = pick(random_color_list) ..() return -datum/reagent/colorful_reagent/reaction_obj(var/obj/O, var/volume) +/datum/reagent/colorful_reagent/reaction_obj(var/obj/O, var/volume) if(O) O.color = pick(random_color_list) ..() return -datum/reagent/colorful_reagent/reaction_turf(var/turf/T, var/volume) +/datum/reagent/colorful_reagent/reaction_turf(var/turf/T, var/volume) if(T) T.color = pick(random_color_list) ..() return -datum/reagent/hair_dye +/datum/reagent/hair_dye name = "Quantum Hair Dye" id = "hair_dye" description = "A solution." @@ -885,7 +885,7 @@ datum/reagent/hair_dye color = "#C8A5DC" var/list/potential_colors = list("0ad","a0f","f73","d14","d14","0b5","0ad","f73","fc2","084","05e","d22","fa0") // fucking hair code -datum/reagent/hair_dye/reaction_mob(var/mob/living/M, var/volume) +/datum/reagent/hair_dye/reaction_mob(var/mob/living/M, var/volume) if(M && ishuman(M)) var/mob/living/carbon/human/H = M H.hair_color = pick(potential_colors) @@ -894,14 +894,14 @@ datum/reagent/hair_dye/reaction_mob(var/mob/living/M, var/volume) ..() return -datum/reagent/barbers_aid +/datum/reagent/barbers_aid name = "Barber's Aid" id = "barbers_aid" description = "A solution to hair loss across the world." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/barbers_aid/reaction_mob(var/mob/living/M, var/volume) +/datum/reagent/barbers_aid/reaction_mob(var/mob/living/M, var/volume) if(M && ishuman(M)) var/mob/living/carbon/human/H = M var/datum/sprite_accessory/hair/picked_hair = pick(hair_styles_list) @@ -912,14 +912,14 @@ datum/reagent/barbers_aid/reaction_mob(var/mob/living/M, var/volume) ..() return -datum/reagent/concentrated_barbers_aid +/datum/reagent/concentrated_barbers_aid name = "Concentrated Barber's Aid" id = "concentrated_barbers_aid" description = "A concentrated solution to hair loss across the world." reagent_state = LIQUID color = "#C8A5DC" -datum/reagent/concentrated_barbers_aid/reaction_mob(var/mob/living/M, var/volume) +/datum/reagent/concentrated_barbers_aid/reaction_mob(var/mob/living/M, var/volume) if(M && ishuman(M)) var/mob/living/carbon/human/H = M H.hair_style = "Very Long Hair" diff --git a/code/modules/reagents/Chemistry-Reagents/Pyrotechnic-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Pyrotechnic-Reagents.dm index 82327767644f..02dfce9ea140 100644 --- a/code/modules/reagents/Chemistry-Reagents/Pyrotechnic-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents/Pyrotechnic-Reagents.dm @@ -1,12 +1,12 @@ -datum/reagent/thermite +/datum/reagent/thermite name = "Thermite" id = "thermite" description = "Thermite produces an aluminothermic reaction known as a thermite reaction. Can be used to melt walls." reagent_state = SOLID color = "#673910" // rgb: 103, 57, 16 -datum/reagent/thermite/reaction_turf(var/turf/T, var/volume) +/datum/reagent/thermite/reaction_turf(var/turf/T, var/volume) src = null if(volume >= 1 && istype(T, /turf/simulated/wall)) var/turf/simulated/wall/Wall = T @@ -17,11 +17,11 @@ datum/reagent/thermite/reaction_turf(var/turf/T, var/volume) Wall.overlays = list() Wall.overlays += image('icons/effects/effects.dmi',"thermite") -datum/reagent/thermite/on_mob_life(var/mob/living/M as mob) +/datum/reagent/thermite/on_mob_life(var/mob/living/M as mob) M.adjustFireLoss(1) ..() -datum/reagent/nitroglycerin +/datum/reagent/nitroglycerin name = "Nitroglycerin" id = "nitroglycerin" description = "Nitroglycerin is a heavy, colorless, oily, explosive liquid obtained by nitrating glycerol." @@ -150,7 +150,7 @@ datum/reagent/nitroglycerin if(method == TOUCH && isliving(M)) M.adjust_fire_stacks(7) -datum/reagent/cryostylane +/datum/reagent/cryostylane name = "Cryostylane" id = "cryostylane" description = "Comes into existence at 20K. As long as there is sufficient oxygen for it to react with, Cryostylane slowly cools all other reagents in the mob down to 0K." @@ -158,38 +158,38 @@ datum/reagent/cryostylane metabolization_rate = 0.5 * REAGENTS_METABOLISM -datum/reagent/cryostylane/on_mob_life(var/mob/living/M as mob) //TODO: code freezing into an ice cube +/datum/reagent/cryostylane/on_mob_life(var/mob/living/M as mob) //TODO: code freezing into an ice cube if(M.reagents.has_reagent("oxygen")) M.reagents.remove_reagent("oxygen", 0.5) M.bodytemperature -= 15 ..() -datum/reagent/cryostylane/on_tick() +/datum/reagent/cryostylane/on_tick() if(holder.has_reagent("oxygen")) holder.remove_reagent("oxygen", 1) holder.chem_temp -= 10 holder.handle_reactions() ..() -datum/reagent/cryostylane/reaction_turf(var/turf/simulated/T, var/volume) +/datum/reagent/cryostylane/reaction_turf(var/turf/simulated/T, var/volume) if(volume >= 5) for(var/mob/living/simple_animal/slime/M in T) M.adjustToxLoss(rand(15,30)) -datum/reagent/pyrosium +/datum/reagent/pyrosium name = "Pyrosium" id = "pyrosium" description = "Comes into existence at 20K. As long as there is sufficient oxygen for it to react with, Pyrosium slowly cools all other reagents in the mob down to 0K." color = "#B20000" // rgb: 139, 166, 233 metabolization_rate = 0.5 * REAGENTS_METABOLISM -datum/reagent/pyrosium/on_mob_life(var/mob/living/M as mob) +/datum/reagent/pyrosium/on_mob_life(var/mob/living/M as mob) if(M.reagents.has_reagent("oxygen")) M.reagents.remove_reagent("oxygen", 0.5) M.bodytemperature += 15 ..() -datum/reagent/pyrosium/on_tick() +/datum/reagent/pyrosium/on_tick() if(holder.has_reagent("oxygen")) holder.remove_reagent("oxygen", 1) holder.chem_temp += 10 diff --git a/code/modules/reagents/Chemistry-Reagents/Toxin-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Toxin-Reagents.dm index 75b77db092d1..e65a5e81de40 100644 --- a/code/modules/reagents/Chemistry-Reagents/Toxin-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents/Toxin-Reagents.dm @@ -1,34 +1,34 @@ //////////////////////////Poison stuff (Toxins & Acids)/////////////////////// -datum/reagent/toxin +/datum/reagent/toxin name = "Toxin" id = "toxin" description = "A toxic chemical." color = "#CF3600" // rgb: 207, 54, 0 var/toxpwr = 1.5 -datum/reagent/toxin/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/on_mob_life(var/mob/living/M as mob) if(toxpwr) M.adjustToxLoss(toxpwr*REM) ..() return -datum/reagent/toxin/amatoxin +/datum/reagent/toxin/amatoxin name = "Amatoxin" id = "amatoxin" description = "A powerful poison derived from certain species of mushroom." color = "#792300" // rgb: 121, 35, 0 toxpwr = 1 -datum/reagent/toxin/mutagen +/datum/reagent/toxin/mutagen name = "Unstable mutagen" id = "mutagen" description = "Might cause unpredictable mutations. Keep away from children." color = "#13BC5E" // rgb: 19, 188, 94 toxpwr = 0 -datum/reagent/toxin/mutagen/reaction_mob(var/mob/living/carbon/M, var/method=TOUCH, var/volume) +/datum/reagent/toxin/mutagen/reaction_mob(var/mob/living/carbon/M, var/method=TOUCH, var/volume) if(!..()) return if(!istype(M) || !M.dna) @@ -44,26 +44,26 @@ datum/reagent/toxin/mutagen/reaction_mob(var/mob/living/carbon/M, var/method=TOU updateappearance(M) return -datum/reagent/toxin/mutagen/on_mob_life(var/mob/living/carbon/M) +/datum/reagent/toxin/mutagen/on_mob_life(var/mob/living/carbon/M) if(istype(M)) M.apply_effect(5,IRRADIATE,0) ..() return -datum/reagent/toxin/plasma +/datum/reagent/toxin/plasma name = "Plasma" id = "plasma" description = "Plasma in its liquid form." color = "#500064" // rgb: 80, 0, 100 toxpwr = 3 -datum/reagent/toxin/plasma/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/plasma/on_mob_life(var/mob/living/M as mob) if(holder.has_reagent("epinephrine")) holder.remove_reagent("epinephrine", 2*REM) ..() return -datum/reagent/toxin/plasma/reaction_obj(var/obj/O, var/volume) +/datum/reagent/toxin/plasma/reaction_obj(var/obj/O, var/volume) src = null /*if(istype(O,/obj/item/weapon/reagent_containers/food/snacks/egg/slime)) var/obj/item/weapon/reagent_containers/food/snacks/egg/slime/egg = O @@ -72,27 +72,27 @@ datum/reagent/toxin/plasma/reaction_obj(var/obj/O, var/volume) if((!O) || (!volume)) return 0 O.atmos_spawn_air(SPAWN_TOXINS|SPAWN_20C, volume) -datum/reagent/toxin/plasma/reaction_turf(var/turf/simulated/T, var/volume) +/datum/reagent/toxin/plasma/reaction_turf(var/turf/simulated/T, var/volume) src = null if(istype(T)) T.atmos_spawn_air(SPAWN_TOXINS|SPAWN_20C, volume) return -datum/reagent/toxin/plasma/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with plasma is stronger than fuel! +/datum/reagent/toxin/plasma/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume)//Splashing people with plasma is stronger than fuel! if(!istype(M, /mob/living)) return if(method == TOUCH) M.adjust_fire_stacks(volume / 5) return -datum/reagent/toxin/lexorin +/datum/reagent/toxin/lexorin name = "Lexorin" id = "lexorin" description = "Lexorin temporarily stops respiration. Causes tissue damage." color = "#C8A5DC" // rgb: 200, 165, 220 toxpwr = 0 -datum/reagent/toxin/lexorin/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/lexorin/on_mob_life(var/mob/living/M as mob) if(M.stat != DEAD) if(prob(33)) M.take_organ_damage(1*REM, 0) @@ -102,14 +102,14 @@ datum/reagent/toxin/lexorin/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/toxin/slimejelly +/datum/reagent/toxin/slimejelly name = "Slime Jelly" id = "slimejelly" description = "A gooey semi-liquid produced from one of the deadliest lifeforms in existence. SO REAL." color = "#801E28" // rgb: 128, 30, 40 toxpwr = 0 -datum/reagent/toxin/slimejelly/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/slimejelly/on_mob_life(var/mob/living/M as mob) if(prob(10)) M << "Your insides are burning!" M.adjustToxLoss(rand(20,60)*REM) @@ -118,27 +118,27 @@ datum/reagent/toxin/slimejelly/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/toxin/minttoxin +/datum/reagent/toxin/minttoxin name = "Mint Toxin" id = "minttoxin" description = "Useful for dealing with undesirable customers." color = "#CF3600" // rgb: 207, 54, 0 toxpwr = 0 -datum/reagent/toxin/minttoxin/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/minttoxin/on_mob_life(var/mob/living/M as mob) if (FAT in M.mutations) M.gib() ..() return -datum/reagent/toxin/carpotoxin +/datum/reagent/toxin/carpotoxin name = "Carpotoxin" id = "carpotoxin" description = "A deadly neurotoxin produced by the dreaded spess carp." color = "#003333" // rgb: 0, 51, 51 toxpwr = 2 -datum/reagent/toxin/zombiepowder +/datum/reagent/toxin/zombiepowder name = "Zombie Powder" id = "zombiepowder" description = "A strong neurotoxin that puts the subject into a death-like state." @@ -146,7 +146,7 @@ datum/reagent/toxin/zombiepowder color = "#669900" // rgb: 102, 153, 0 toxpwr = 0.5 -datum/reagent/toxin/zombiepowder/on_mob_life(var/mob/living/carbon/M as mob) +/datum/reagent/toxin/zombiepowder/on_mob_life(var/mob/living/carbon/M as mob) M.status_flags |= FAKEDEATH M.adjustOxyLoss(0.5*REM) M.Weaken(5) @@ -155,30 +155,30 @@ datum/reagent/toxin/zombiepowder/on_mob_life(var/mob/living/carbon/M as mob) ..() return -datum/reagent/toxin/zombiepowder/on_mob_delete(mob/M) +/datum/reagent/toxin/zombiepowder/on_mob_delete(mob/M) M.status_flags &= ~FAKEDEATH ..() -datum/reagent/toxin/mindbreaker +/datum/reagent/toxin/mindbreaker name = "Mindbreaker Toxin" id = "mindbreaker" description = "A powerful hallucinogen. Not a thing to be messed with." color = "#B31008" // rgb: 139, 166, 233 toxpwr = 0 -datum/reagent/toxin/mindbreaker/on_mob_life(var/mob/living/M) +/datum/reagent/toxin/mindbreaker/on_mob_life(var/mob/living/M) M.hallucination += 10 ..() return -datum/reagent/toxin/plantbgone +/datum/reagent/toxin/plantbgone name = "Plant-B-Gone" id = "plantbgone" description = "A harmful toxic mixture to kill plantlife. Do not ingest!" color = "#49002E" // rgb: 73, 0, 46 toxpwr = 1 -datum/reagent/toxin/plantbgone/reaction_obj(var/obj/O, var/volume) +/datum/reagent/toxin/plantbgone/reaction_obj(var/obj/O, var/volume) if(istype(O,/obj/structure/alien/weeds/)) var/obj/structure/alien/weeds/alien_weeds = O alien_weeds.health -= rand(15,35) // Kills alien weeds pretty fast @@ -189,61 +189,61 @@ datum/reagent/toxin/plantbgone/reaction_obj(var/obj/O, var/volume) var/obj/effect/spacevine/SV = O SV.on_chem_effect(src) -datum/reagent/toxin/plantbgone/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) +/datum/reagent/toxin/plantbgone/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) src = null if(iscarbon(M)) var/mob/living/carbon/C = M if(!C.wear_mask) // If not wearing a mask C.adjustToxLoss(2) // 4 toxic damage per application, doubled for some reason -datum/reagent/toxin/plantbgone/weedkiller +/datum/reagent/toxin/plantbgone/weedkiller name = "Weed Killer" id = "weedkiller" description = "A harmful toxic mixture to kill weeds. Do not ingest!" color = "#4B004B" // rgb: 75, 0, 75 -datum/reagent/toxin/pestkiller +/datum/reagent/toxin/pestkiller name = "Pest Killer" id = "pestkiller" description = "A harmful toxic mixture to kill pests. Do not ingest!" color = "#4B004B" // rgb: 75, 0, 75 toxpwr = 1 -datum/reagent/toxin/pestkiller/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) +/datum/reagent/toxin/pestkiller/reaction_mob(var/mob/living/M, var/method=TOUCH, var/volume) src = null if(iscarbon(M)) var/mob/living/carbon/C = M if(!C.wear_mask) // If not wearing a mask C.adjustToxLoss(2) // 4 toxic damage per application, doubled for some reason -datum/reagent/toxin/spore +/datum/reagent/toxin/spore name = "Spore Toxin" id = "spore" description = "A toxic spore cloud which blocks vision when ingested." color = "#9ACD32" toxpwr = 0.5 -datum/reagent/toxin/spore/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/spore/on_mob_life(var/mob/living/M as mob) M.damageoverlaytemp = 60 M.eye_blurry = max(M.eye_blurry, 3) ..() return -datum/reagent/toxin/spore_burning +/datum/reagent/toxin/spore_burning name = "Burning Spore Toxin" id = "spore_burning" description = "A burning spore cloud." color = "#9ACD32" toxpwr = 0.5 -datum/reagent/toxin/spore_burning/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/spore_burning/on_mob_life(var/mob/living/M as mob) ..() M.adjust_fire_stacks(2) M.IgniteMob() -datum/reagent/toxin/chloralhydrate +/datum/reagent/toxin/chloralhydrate name = "Chloral Hydrate" id = "chloralhydrate" description = "A powerful sedative." @@ -252,7 +252,7 @@ datum/reagent/toxin/chloralhydrate toxpwr = 0 metabolization_rate = 1.5 * REAGENTS_METABOLISM -datum/reagent/toxin/chloralhydrate/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/chloralhydrate/on_mob_life(var/mob/living/M as mob) switch(current_cycle) if(1 to 10) M.confused += 2 @@ -265,14 +265,14 @@ datum/reagent/toxin/chloralhydrate/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/toxin/beer2 //disguised as normal beer for use by emagged brobots +/datum/reagent/toxin/beer2 //disguised as normal beer for use by emagged brobots name = "Beer" id = "beer2" description = "An alcoholic beverage made from malted grains, hops, yeast, and water." color = "#664300" // rgb: 102, 67, 0 metabolization_rate = 1.5 * REAGENTS_METABOLISM -datum/reagent/toxin/beer2/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/beer2/on_mob_life(var/mob/living/M as mob) switch(current_cycle) if(1 to 50) M.sleeping += 1 @@ -282,7 +282,7 @@ datum/reagent/toxin/beer2/on_mob_life(var/mob/living/M as mob) ..() return -datum/reagent/toxin/coffeepowder +/datum/reagent/toxin/coffeepowder name = "Coffee Grounds" id = "coffeepowder" description = "Finely ground coffee beans, used to make coffee." @@ -290,7 +290,7 @@ datum/reagent/toxin/coffeepowder color = "#5B2E0D" // rgb: 91, 46, 13 toxpwr = 0.5 -datum/reagent/toxin/teapowder +/datum/reagent/toxin/teapowder name = "Ground Tea Leaves" id = "teapowder" description = "Finely shredded tea leaves, used for making tea." @@ -298,18 +298,18 @@ datum/reagent/toxin/teapowder color = "#7F8400" // rgb: 127, 132, 0 toxpwr = 0.5 -datum/reagent/toxin/mutetoxin //the new zombie powder. +/datum/reagent/toxin/mutetoxin //the new zombie powder. name = "Mute Toxin" id = "mutetoxin" description = "A toxin that temporarily paralyzes the vocal cords." color = "#F0F8FF" // rgb: 240, 248, 255 toxpwr = 0 -datum/reagent/toxin/mutetoxin/on_mob_life(mob/living/carbon/M) +/datum/reagent/toxin/mutetoxin/on_mob_life(mob/living/carbon/M) M.silent = max(M.silent, 3) ..() -datum/reagent/toxin/staminatoxin +/datum/reagent/toxin/staminatoxin name = "Tirizene" id = "tirizene" description = "A toxin that affects the stamina of a person when injected into the bloodstream." @@ -317,12 +317,12 @@ datum/reagent/toxin/staminatoxin data = 13 toxpwr = 0 -datum/reagent/toxin/staminatoxin/on_mob_life(mob/living/carbon/M) +/datum/reagent/toxin/staminatoxin/on_mob_life(mob/living/carbon/M) M.adjustStaminaLoss(REM * data) data = max(data - 1, 3) ..() -datum/reagent/toxin/polonium +/datum/reagent/toxin/polonium name = "Polonium" id = "polonium" description = "Cause significant Radiation damage over time." @@ -331,11 +331,11 @@ datum/reagent/toxin/polonium metabolization_rate = 0.125 * REAGENTS_METABOLISM toxpwr = 0 -datum/reagent/toxin/polonium/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/polonium/on_mob_life(var/mob/living/M as mob) M.radiation += 4 ..() -datum/reagent/toxin/histamine +/datum/reagent/toxin/histamine name = "Histamine" id = "histamine" description = "A dose-dependent toxin, ranges from annoying to incredibly lethal." @@ -345,7 +345,7 @@ datum/reagent/toxin/histamine overdose_threshold = 30 toxpwr = 0 -datum/reagent/toxin/histamine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/histamine/on_mob_life(var/mob/living/M as mob) if(prob(50)) switch(pick(1, 2, 3, 4)) if(1) @@ -361,13 +361,13 @@ datum/reagent/toxin/histamine/on_mob_life(var/mob/living/M as mob) M.adjustBruteLoss(2*REM) ..() -datum/reagent/toxin/histamine/overdose_process(var/mob/living/M as mob) +/datum/reagent/toxin/histamine/overdose_process(var/mob/living/M as mob) M.adjustOxyLoss(1*REM) M.adjustBruteLoss(1*REM) M.adjustToxLoss(1*REM) ..() -datum/reagent/toxin/formaldehyde +/datum/reagent/toxin/formaldehyde name = "Formaldehyde" id = "formaldehyde" description = "Deals a moderate amount of Toxin damage over time. 10% chance to decay into 10-15 histamine." @@ -376,13 +376,13 @@ datum/reagent/toxin/formaldehyde metabolization_rate = 0.5 * REAGENTS_METABOLISM toxpwr = 0.5 -datum/reagent/toxin/formaldehyde/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/formaldehyde/on_mob_life(var/mob/living/M as mob) if(prob(5)) M.reagents.add_reagent("histamine",pick(5,15)) M.reagents.remove_reagent("formaldehyde",1) ..() -datum/reagent/toxin/venom +/datum/reagent/toxin/venom name = "Venom" id = "venom" description = "Will deal scaling amounts of Toxin and Brute damage over time. 15% chance to decay into 5-10 histamine." @@ -391,7 +391,7 @@ datum/reagent/toxin/venom metabolization_rate = 0.25 * REAGENTS_METABOLISM toxpwr = 0 -datum/reagent/toxin/venom/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/venom/on_mob_life(var/mob/living/M as mob) toxpwr = 0.05*volume M.adjustBruteLoss((0.1*volume)*REM) if(prob(15)) @@ -399,7 +399,7 @@ datum/reagent/toxin/venom/on_mob_life(var/mob/living/M as mob) M.reagents.remove_reagent("venom",1) ..() -datum/reagent/toxin/neurotoxin2 +/datum/reagent/toxin/neurotoxin2 name = "Neurotoxin" id = "neurotoxin2" description = "Deals toxin and brain damage up to 60 before it slows down, causing confusion and a knockout after 18 elapsed cycles." @@ -408,7 +408,7 @@ datum/reagent/toxin/neurotoxin2 metabolization_rate = 0.5 * REAGENTS_METABOLISM toxpwr = 0 -datum/reagent/toxin/neurotoxin2/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/neurotoxin2/on_mob_life(var/mob/living/M as mob) if(M.brainloss + M.toxloss <= 60) M.adjustBrainLoss(1*REM) M.adjustToxLoss(1*REM) @@ -416,7 +416,7 @@ datum/reagent/toxin/neurotoxin2/on_mob_life(var/mob/living/M as mob) M.sleeping += 1 ..() -datum/reagent/toxin/cyanide +/datum/reagent/toxin/cyanide name = "Cyanide" id = "cyanide" description = "Deals toxin damage, alongside some oxygen loss. 8% chance of stun and some extra toxin damage." @@ -425,7 +425,7 @@ datum/reagent/toxin/cyanide metabolization_rate = 0.125 * REAGENTS_METABOLISM toxpwr = 0.75 -datum/reagent/toxin/cyanide/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/cyanide/on_mob_life(var/mob/living/M as mob) if(prob(5)) M.losebreath += 1 if(prob(4)) @@ -443,7 +443,7 @@ datum/reagent/toxin/cyanide/on_mob_life(var/mob/living/M as mob) metabolization_rate = 0.25 * REAGENTS_METABOLISM toxpwr = 0.5 -datum/reagent/toxin/itching_powder +/datum/reagent/toxin/itching_powder name = "Itching Powder" id = "itching_powder" description = "Lots of annoying random effects, chances to do some brute damage from scratching. 6% chance to decay into 1-3 units of histamine." @@ -457,7 +457,7 @@ datum/reagent/toxin/itching_powder M.reagents.add_reagent("itching_powder", volume) return -datum/reagent/toxin/itching_powder/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/itching_powder/on_mob_life(var/mob/living/M as mob) if(prob(15)) M << "You scratch at your head." M.adjustBruteLoss(0.2*REM) @@ -472,7 +472,7 @@ datum/reagent/toxin/itching_powder/on_mob_life(var/mob/living/M as mob) M.reagents.remove_reagent("itching_powder",1) ..() -datum/reagent/toxin/initropidril +/datum/reagent/toxin/initropidril name = "Initropidril" id = "initropidril" description = "Causes some toxin damage, 5% chances to cause stunning, suffocation, or immediate heart failure." @@ -481,7 +481,7 @@ datum/reagent/toxin/initropidril metabolization_rate = 0.5 * REAGENTS_METABOLISM toxpwr = 2.5 -datum/reagent/toxin/initropidril/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/initropidril/on_mob_life(var/mob/living/M as mob) if(prob(5)) var/picked_option = rand(1,3) switch(picked_option) @@ -501,7 +501,7 @@ datum/reagent/toxin/initropidril/on_mob_life(var/mob/living/M as mob) H.adjustOxyLoss(rand(5,25)) ..() -datum/reagent/toxin/pancuronium +/datum/reagent/toxin/pancuronium name = "Pancuronium" id = "pancuronium" description = "Knocks you out after 10 seconds, 7% chance to cause some oxygen loss." @@ -510,14 +510,14 @@ datum/reagent/toxin/pancuronium metabolization_rate = 0.25 * REAGENTS_METABOLISM toxpwr = 0 -datum/reagent/toxin/pancuronium/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/pancuronium/on_mob_life(var/mob/living/M as mob) if(current_cycle >= 10) M.SetParalysis(1) if(prob(7)) M.losebreath += 4 ..() -datum/reagent/toxin/sodium_thiopental +/datum/reagent/toxin/sodium_thiopental name = "Sodium Thiopental" id = "sodium_thiopental" description = "Puts you to sleep after 30 seconds, along with some major stamina loss." @@ -526,13 +526,13 @@ datum/reagent/toxin/sodium_thiopental metabolization_rate = 0.75 * REAGENTS_METABOLISM toxpwr = 0 -datum/reagent/toxin/sodium_thiopental/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/sodium_thiopental/on_mob_life(var/mob/living/M as mob) if(current_cycle >= 10) M.sleeping += 1 M.adjustStaminaLoss(5*REM) ..() -datum/reagent/toxin/sulfonal +/datum/reagent/toxin/sulfonal name = "Sulfonal" id = "sulfonal" description = "Deals some toxin damage, and puts you to sleep after 66 seconds." @@ -541,12 +541,12 @@ datum/reagent/toxin/sulfonal metabolization_rate = 0.125 * REAGENTS_METABOLISM toxpwr = 0.5 -datum/reagent/toxin/sulfonal/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/sulfonal/on_mob_life(var/mob/living/M as mob) if(current_cycle >= 22) M.sleeping += 1 ..() -datum/reagent/toxin/amanitin +/datum/reagent/toxin/amanitin name = "Amanitin" id = "amanitin" description = "On the last second that it's in you, it hits you with a stack of toxin damage based on how long it's been in you. The more you use, the longer it takes before anything happens, but the harder it hits when it does." @@ -555,11 +555,11 @@ datum/reagent/toxin/amanitin toxpwr = 0 metabolization_rate = 0.5 * REAGENTS_METABOLISM -datum/reagent/toxin/amanitin/on_mob_delete(var/mob/living/M as mob) +/datum/reagent/toxin/amanitin/on_mob_delete(var/mob/living/M as mob) M.adjustToxLoss(current_cycle*3*REM) ..() -datum/reagent/toxin/lipolicide +/datum/reagent/toxin/lipolicide name = "Lipolicide" id = "lipolicide" description = "Deals some toxin damage unless they keep eating food. Will reduce nutrition values." @@ -568,7 +568,7 @@ datum/reagent/toxin/lipolicide metabolization_rate = 0.5 * REAGENTS_METABOLISM toxpwr = 0.5 -datum/reagent/toxin/lipolicide/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/lipolicide/on_mob_life(var/mob/living/M as mob) if(!holder.has_reagent("nutriment")) M.adjustToxLoss(0.5*REM) M.nutrition -= 5 * REAGENTS_METABOLISM @@ -577,7 +577,7 @@ datum/reagent/toxin/lipolicide/on_mob_life(var/mob/living/M as mob) M.nutrition = 0 ..() -datum/reagent/toxin/coniine +/datum/reagent/toxin/coniine name = "Coniine" id = "coniine" description = "Does moderate toxin damage and oxygen loss." @@ -586,11 +586,11 @@ datum/reagent/toxin/coniine metabolization_rate = 0.06 * REAGENTS_METABOLISM toxpwr = 1 -datum/reagent/toxin/coniine/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/coniine/on_mob_life(var/mob/living/M as mob) M.losebreath += 3 ..() -datum/reagent/toxin/curare +/datum/reagent/toxin/curare name = "Curare" id = "curare" description = "Does some oxygen and toxin damage, weakens you after 11 seconds." @@ -599,7 +599,7 @@ datum/reagent/toxin/curare metabolization_rate = 0.125 * REAGENTS_METABOLISM toxpwr = 0.5 -datum/reagent/toxin/curare/on_mob_life(var/mob/living/M as mob) +/datum/reagent/toxin/curare/on_mob_life(var/mob/living/M as mob) if(current_cycle >= 11) M.Weaken(1) M.adjustOxyLoss(0.5*REM) @@ -609,7 +609,7 @@ datum/reagent/toxin/curare/on_mob_life(var/mob/living/M as mob) //ACID -datum/reagent/toxin/acid +/datum/reagent/toxin/acid name = "Sulphuric acid" id = "sacid" description = "A strong mineral acid with the molecular formula H2SO4." @@ -617,7 +617,7 @@ datum/reagent/toxin/acid toxpwr = 1 var/acidpwr = 10 //the amount of protection removed from the armour -datum/reagent/toxin/acid/reaction_mob(var/mob/living/carbon/C, var/method=TOUCH, var/volume) +/datum/reagent/toxin/acid/reaction_mob(var/mob/living/carbon/C, var/method=TOUCH, var/volume) if(!istype(C)) return if(method != TOUCH) @@ -626,12 +626,12 @@ datum/reagent/toxin/acid/reaction_mob(var/mob/living/carbon/C, var/method=TOUCH, C.acid_act(acidpwr, toxpwr, volume) -datum/reagent/toxin/acid/reaction_obj(var/obj/O, var/volume) +/datum/reagent/toxin/acid/reaction_obj(var/obj/O, var/volume) if(istype(O.loc, /mob)) //handled in human acid_act() return O.acid_act(acidpwr, toxpwr, volume) -datum/reagent/toxin/acid/fluacid +/datum/reagent/toxin/acid/fluacid name = "Fluorosulfuric acid" id = "facid" description = "Fluorosulfuric acid is a an extremely corrosive chemical substance." diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm index 2368fbfc3c38..2d8045bd78fa 100644 --- a/code/modules/research/designs.dm +++ b/code/modules/research/designs.dm @@ -29,7 +29,7 @@ other types of metals and chemistry for reagents). - Add the AUTOLATHE tag to */ -datum/design //Datum for object designs, used in construction +/datum/design //Datum for object designs, used in construction var/name = "Name" //Name of the created object. var/desc = "Desc" //Description of the created object. var/id = "id" //ID of the created object for easy refernece. Alphanumeric, lower-case, no symbols @@ -44,7 +44,7 @@ datum/design //Datum for object designs, used in construction //A proc to calculate the reliability of a design based on tech levels and innate modifiers. //Input: A list of /datum/tech; Output: The new reliabilty. -datum/design/proc/CalcReliability(var/list/temp_techs) +/datum/design/proc/CalcReliability(var/list/temp_techs) var/new_reliability for(var/datum/tech/T in temp_techs) if(T.id in req_tech) diff --git a/code/modules/research/designs/mecha_designs.dm b/code/modules/research/designs/mecha_designs.dm index b0d78c3fb036..c8383a6bbdad 100644 --- a/code/modules/research/designs/mecha_designs.dm +++ b/code/modules/research/designs/mecha_designs.dm @@ -2,7 +2,7 @@ //////////Mecha Module Disks/////// /////////////////////////////////// -datum/design/ripley_main +/datum/design/ripley_main name = "Exosuit Module (APLU \"Ripley\" Central Control module)" desc = "Allows for the construction of a \"Ripley\" Central Control module." id = "ripley_main" @@ -12,7 +12,7 @@ datum/design/ripley_main build_path = /obj/item/weapon/circuitboard/mecha/ripley/main category = list("Exosuit Modules") -datum/design/ripley_peri +/datum/design/ripley_peri name = "Exosuit Module (APLU \"Ripley\" Peripherals Control module)" desc = "Allows for the construction of a \"Ripley\" Peripheral Control module." id = "ripley_peri" @@ -22,7 +22,7 @@ datum/design/ripley_peri build_path = /obj/item/weapon/circuitboard/mecha/ripley/peripherals category = list("Exosuit Modules") -datum/design/odysseus_main +/datum/design/odysseus_main name = "Exosuit Module (\"Odysseus\" Central Control module)" desc = "Allows for the construction of a \"Odysseus\" Central Control module." id = "odysseus_main" @@ -32,7 +32,7 @@ datum/design/odysseus_main build_path = /obj/item/weapon/circuitboard/mecha/odysseus/main category = list("Exosuit Modules") -datum/design/odysseus_peri +/datum/design/odysseus_peri name = "Exosuit Module (\"Odysseus\" Peripherals Control module)" desc = "Allows for the construction of a \"Odysseus\" Peripheral Control module." id = "odysseus_peri" @@ -42,7 +42,7 @@ datum/design/odysseus_peri build_path = /obj/item/weapon/circuitboard/mecha/odysseus/peripherals category = list("Exosuit Modules") -datum/design/gygax_main +/datum/design/gygax_main name = "Exosuit Module (\"Gygax\" Central Control module)" desc = "Allows for the construction of a \"Gygax\" Central Control module." id = "gygax_main" @@ -52,7 +52,7 @@ datum/design/gygax_main build_path = /obj/item/weapon/circuitboard/mecha/gygax/main category = list("Exosuit Modules") -datum/design/gygax_peri +/datum/design/gygax_peri name = "Exosuit Module (\"Gygax\" Peripherals Control module)" desc = "Allows for the construction of a \"Gygax\" Peripheral Control module." id = "gygax_peri" @@ -62,7 +62,7 @@ datum/design/gygax_peri build_path = /obj/item/weapon/circuitboard/mecha/gygax/peripherals category = list("Exosuit Modules") -datum/design/gygax_targ +/datum/design/gygax_targ name = "Exosuit Module (\"Gygax\" Weapons & Targeting Control module)" desc = "Allows for the construction of a \"Gygax\" Weapons & Targeting Control module." id = "gygax_targ" @@ -72,7 +72,7 @@ datum/design/gygax_targ build_path = /obj/item/weapon/circuitboard/mecha/gygax/targeting category = list("Exosuit Modules") -datum/design/durand_main +/datum/design/durand_main name = "Exosuit Module (\"Durand\" Central Control module)" desc = "Allows for the construction of a \"Durand\" Central Control module." id = "durand_main" @@ -82,7 +82,7 @@ datum/design/durand_main build_path = /obj/item/weapon/circuitboard/mecha/durand/main category = list("Exosuit Modules") -datum/design/durand_peri +/datum/design/durand_peri name = "Exosuit Module (\"Durand\" Peripherals Control module)" desc = "Allows for the construction of a \"Durand\" Peripheral Control module." id = "durand_peri" @@ -92,7 +92,7 @@ datum/design/durand_peri build_path = /obj/item/weapon/circuitboard/mecha/durand/peripherals category = list("Exosuit Modules") -datum/design/durand_targ +/datum/design/durand_targ name = "Exosuit Module (\"Durand\" Weapons & Targeting Control module)" desc = "Allows for the construction of a \"Durand\" Weapons & Targeting Control module." id = "durand_targ" @@ -102,7 +102,7 @@ datum/design/durand_targ build_path = /obj/item/weapon/circuitboard/mecha/durand/targeting category = list("Exosuit Modules") -datum/design/honker_main +/datum/design/honker_main name = "Exosuit Module (\"H.O.N.K\" Central Control module)" desc = "Allows for the construction of a \"H.O.N.K\" Central Control module." id = "honker_main" @@ -112,7 +112,7 @@ datum/design/honker_main build_path = /obj/item/weapon/circuitboard/mecha/honker/main category = list("Exosuit Modules") -datum/design/honker_peri +/datum/design/honker_peri name = "Exosuit Module (\"H.O.N.K\" Peripherals Control module)" desc = "Allows for the construction of a \"H.O.N.K\" Peripheral Control module." id = "honker_peri" @@ -122,7 +122,7 @@ datum/design/honker_peri build_path = /obj/item/weapon/circuitboard/mecha/honker/peripherals category = list("Exosuit Modules") -datum/design/honker_targ +/datum/design/honker_targ name = "Exosuit Module (\"H.O.N.K\" Weapons & Targeting Control module)" desc = "Allows for the construction of a \"H.O.N.K\" Weapons & Targeting Control module." id = "honker_targ" @@ -132,7 +132,7 @@ datum/design/honker_targ build_path = /obj/item/weapon/circuitboard/mecha/honker/targeting category = list("Exosuit Modules") -datum/design/phazon_main +/datum/design/phazon_main name = "Exosuit Module (\"Phazon\" Central Control module)" desc = "Allows for the construction of a \"Phazon\" Central Control module." id = "phazon_main" @@ -142,7 +142,7 @@ datum/design/phazon_main build_path = /obj/item/weapon/circuitboard/mecha/phazon/main category = list("Exosuit Modules") -datum/design/phazon_peri +/datum/design/phazon_peri name = "Exosuit Module (\"Phazon\" Peripherals Control module)" desc = "Allows for the construction of a \"Phazon\" Peripheral Control module." id = "phazon_peri" @@ -152,7 +152,7 @@ datum/design/phazon_peri build_path = /obj/item/weapon/circuitboard/mecha/phazon/peripherals category = list("Exosuit Modules") -datum/design/phazon_targ +/datum/design/phazon_targ name = "Exosuit Module (\"Phazon\" Weapons & Targeting Control module)" desc = "Allows for the construction of a \"Phazon\" Weapons & Targeting Control module." id = "phazon_targ" @@ -166,7 +166,7 @@ datum/design/phazon_targ /////////// Mecha Equpment ///////////// //////////////////////////////////////// -datum/design/mech_scattershot +/datum/design/mech_scattershot name = "Exosuit Weapon (LBX AC 10 \"Scattershot\")" desc = "Allows for the construction of LBX AC 10." id = "mech_scattershot" @@ -177,7 +177,7 @@ datum/design/mech_scattershot construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_carbine +/datum/design/mech_carbine name = "Exosuit Weapon (FNX-99 \"Hades\" Carbine)" desc = "Allows for the construction of FNX-99 \"Hades\" Carbine." id = "mech_carbine" @@ -188,7 +188,7 @@ datum/design/mech_carbine construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_ion +/datum/design/mech_ion name = "Exosuit Weapon (MKIV Ion Heavy Cannon)" desc = "Allows for the construction of MKIV Ion Heavy Cannon." id = "mech_ion" @@ -199,7 +199,7 @@ datum/design/mech_ion construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_laser +/datum/design/mech_laser name = "Exosuit Weapon (CH-PS \"Immolator\" Laser)" desc = "Allows for the construction of CH-PS Laser." id = "mech_laser" @@ -210,7 +210,7 @@ datum/design/mech_laser construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_laser_heavy +/datum/design/mech_laser_heavy name = "Exosuit Weapon (CH-LC \"Solaris\" Laser Cannon)" desc = "Allows for the construction of CH-LC Laser Cannon." id = "mech_laser_heavy" @@ -221,7 +221,7 @@ datum/design/mech_laser_heavy construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_grenade_launcher +/datum/design/mech_grenade_launcher name = "Exosuit Weapon (SGL-6 Grenade Launcher)" desc = "Allows for the construction of SGL-6 Grenade Launcher." id = "mech_grenade_launcher" @@ -232,7 +232,7 @@ datum/design/mech_grenade_launcher construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_missile_rack +/datum/design/mech_missile_rack name = "Exosuit Weapon (SRM-8 Missile Rack)" desc = "Allows for the construction of SRM-8 Missile Rack." id = "mech_missile_rack" @@ -243,7 +243,7 @@ datum/design/mech_missile_rack construction_time = 100 category = list("Exosuit Equipment") -datum/design/clusterbang_launcher +/datum/design/clusterbang_launcher name = "Exosuit Module (SOB-3 Clusterbang Launcher)" desc = "A weapon that violates the Geneva Convention at 3 rounds per minute" id = "clusterbang_launcher" @@ -254,7 +254,7 @@ datum/design/clusterbang_launcher construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_wormhole_gen +/datum/design/mech_wormhole_gen name = "Exosuit Module (Localized Wormhole Generator)" desc = "An exosuit module that allows generating of small quasi-stable wormholes." id = "mech_wormhole_gen" @@ -265,7 +265,7 @@ datum/design/mech_wormhole_gen construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_teleporter +/datum/design/mech_teleporter name = "Exosuit Module (Teleporter Module)" desc = "An exosuit module that allows exosuits to teleport to any position in view." id = "mech_teleporter" @@ -276,7 +276,7 @@ datum/design/mech_teleporter construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_rcd +/datum/design/mech_rcd name = "Exosuit Module (RCD Module)" desc = "An exosuit-mounted Rapid Construction Device." id = "mech_rcd" @@ -287,7 +287,7 @@ datum/design/mech_rcd construction_time = 1200 category = list("Exosuit Equipment") -datum/design/mech_gravcatapult +/datum/design/mech_gravcatapult name = "Exosuit Module (Gravitational Catapult Module)" desc = "An exosuit mounted Gravitational Catapult." id = "mech_gravcatapult" @@ -298,7 +298,7 @@ datum/design/mech_gravcatapult construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_repair_droid +/datum/design/mech_repair_droid name = "Exosuit Module (Repair Droid Module)" desc = "Automated Repair Droid. BEEP BOOP" id = "mech_repair_droid" @@ -309,7 +309,7 @@ datum/design/mech_repair_droid construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_energy_relay +/datum/design/mech_energy_relay name = "Exosuit Module (Tesla Energy Relay)" desc = "Tesla Energy Relay" id = "mech_energy_relay" @@ -320,7 +320,7 @@ datum/design/mech_energy_relay construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_ccw_armor +/datum/design/mech_ccw_armor name = "Exosuit Module (Reactive Armor Booster Module)" desc = "Exosuit-mounted armor booster." id = "mech_ccw_armor" @@ -331,7 +331,7 @@ datum/design/mech_ccw_armor construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_proj_armor +/datum/design/mech_proj_armor name = "Exosuit Module (Reflective Armor Booster Module)" desc = "Exosuit-mounted armor booster." id = "mech_proj_armor" @@ -342,7 +342,7 @@ datum/design/mech_proj_armor construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_diamond_drill +/datum/design/mech_diamond_drill name = "Exosuit Module (Diamond Mining Drill)" desc = "An upgraded version of the standard drill." id = "mech_diamond_drill" @@ -353,7 +353,7 @@ datum/design/mech_diamond_drill construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_generator_nuclear +/datum/design/mech_generator_nuclear name = "Exosuit Module (ExoNuclear Reactor)" desc = "Compact nuclear reactor module." id = "mech_generator_nuclear" @@ -364,7 +364,7 @@ datum/design/mech_generator_nuclear construction_time = 100 category = list("Exosuit Equipment") -datum/design/mech_plasma_cutter +/datum/design/mech_plasma_cutter name = "Exosuit Module Design (217-D Heavy Plasma Cutter)" desc = "A device that shoots resonant plasma bursts at extreme velocity. The blasts are capable of crushing rock and demolishing solid obstacles." id = "mech_plasma_cutter" diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm index 22bf227cd59d..b8d71cc1dca3 100644 --- a/code/modules/research/designs/medical_designs.dm +++ b/code/modules/research/designs/medical_designs.dm @@ -2,7 +2,7 @@ ////////////Medical Tools//////////////// ///////////////////////////////////////// -datum/design/mass_spectrometer +/datum/design/mass_spectrometer name = "Mass-Spectrometer" desc = "A device for analyzing chemicals in the blood." id = "mass_spectrometer" @@ -13,7 +13,7 @@ datum/design/mass_spectrometer build_path = /obj/item/device/mass_spectrometer category = list("Medical Designs") -datum/design/adv_mass_spectrometer +/datum/design/adv_mass_spectrometer name = "Advanced Mass-Spectrometer" desc = "A device for analyzing chemicals in the blood and their quantities." id = "adv_mass_spectrometer" @@ -24,7 +24,7 @@ datum/design/adv_mass_spectrometer build_path = /obj/item/device/mass_spectrometer/adv category = list("Medical Designs") -datum/design/mmi +/datum/design/mmi name = "Man-Machine Interface" desc = "The Warrior's bland acronym, MMI, obscures the true horror of this monstrosity." id = "mmi" @@ -36,7 +36,7 @@ datum/design/mmi build_path = /obj/item/device/mmi category = list("Misc","Medical Designs") -datum/design/mmi_radio +/datum/design/mmi_radio name = "Radio-enabled Man-Machine Interface" desc = "The Warrior's bland acronym, MMI, obscures the true horror of this monstrosity. This one comes with a built-in radio." id = "mmi_radio" @@ -48,7 +48,7 @@ datum/design/mmi_radio build_path = /obj/item/device/mmi/radio_enabled category = list("Misc","Medical Designs") -datum/design/posibrain +/datum/design/posibrain name = "Positronic Brain" desc = "The latest in Artificial Intelligences." id = "mmi_posi" @@ -61,7 +61,7 @@ datum/design/posibrain category = list("Misc", "Medical Designs") -datum/design/synthetic_flash +/datum/design/synthetic_flash name = "Flash" desc = "When a problem arises, SCIENCE is the solution." id = "sflash" @@ -73,7 +73,7 @@ datum/design/synthetic_flash build_path = /obj/item/device/flash/handheld category = list("Misc") -datum/design/bluespacebeaker +/datum/design/bluespacebeaker name = "Bluespace Beaker" desc = "A bluespace beaker, powered by experimental bluespace technology and Element Cuban combined with the Compound Pete. Can hold up to 300 units." id = "bluespacebeaker" @@ -84,7 +84,7 @@ datum/design/bluespacebeaker build_path = /obj/item/weapon/reagent_containers/glass/beaker/bluespace category = list("Misc","Medical Designs") -datum/design/noreactbeaker +/datum/design/noreactbeaker name = "Cryostasis Beaker" desc = "A cryostasis beaker that allows for chemical storage without reactions. Can hold up to 50 units." id = "splitbeaker" @@ -95,7 +95,7 @@ datum/design/noreactbeaker build_path = /obj/item/weapon/reagent_containers/glass/beaker/noreact category = list("Medical Designs") -datum/design/bluespacebodybag +/datum/design/bluespacebodybag name = "Bluespace body bag" desc = "A bluespace body bag, powered by experimental bluespace technology. It can hold loads of bodies and the largest of creatures." id = "bluespacebodybag" diff --git a/code/modules/research/designs/power_designs.dm b/code/modules/research/designs/power_designs.dm index 807541815a7d..ddf3ff047de4 100644 --- a/code/modules/research/designs/power_designs.dm +++ b/code/modules/research/designs/power_designs.dm @@ -2,7 +2,7 @@ //////////////////Power///////////////// //////////////////////////////////////// -datum/design/basic_cell +/datum/design/basic_cell name = "Basic Power Cell" desc = "A basic power cell that holds 1000 units of energy." id = "basic_cell" @@ -13,7 +13,7 @@ datum/design/basic_cell build_path = /obj/item/weapon/stock_parts/cell category = list("Misc","Power Designs") -datum/design/high_cell +/datum/design/high_cell name = "High-Capacity Power Cell" desc = "A power cell that holds 10000 units of energy." id = "high_cell" @@ -24,7 +24,7 @@ datum/design/high_cell build_path = /obj/item/weapon/stock_parts/cell/high category = list("Misc","Power Designs") -datum/design/super_cell +/datum/design/super_cell name = "Super-Capacity Power Cell" desc = "A power cell that holds 20000 units of energy." id = "super_cell" @@ -36,7 +36,7 @@ datum/design/super_cell build_path = /obj/item/weapon/stock_parts/cell/super category = list("Misc","Power Designs") -datum/design/hyper_cell +/datum/design/hyper_cell name = "Hyper-Capacity Power Cell" desc = "A power cell that holds 30000 units of energy." id = "hyper_cell" @@ -48,7 +48,7 @@ datum/design/hyper_cell build_path = /obj/item/weapon/stock_parts/cell/hyper category = list("Misc","Power Designs") -datum/design/light_replacer +/datum/design/light_replacer name = "Light Replacer" desc = "A device to automatically replace lights. Refill with working lightbulbs." id = "light_replacer" @@ -58,7 +58,7 @@ datum/design/light_replacer build_path = /obj/item/device/lightreplacer category = list("Power Designs") -datum/design/pacman +/datum/design/pacman name = "Machine Design (PACMAN-type Generator Board)" desc = "The circuit board that for a PACMAN-type portable generator." id = "pacman" @@ -69,7 +69,7 @@ datum/design/pacman build_path = /obj/item/weapon/circuitboard/pacman category = list("Engineering Machinery") -datum/design/superpacman +/datum/design/superpacman name = "Machine Design (SUPERPACMAN-type Generator Board)" desc = "The circuit board that for a SUPERPACMAN-type portable generator." id = "superpacman" @@ -80,7 +80,7 @@ datum/design/superpacman build_path = /obj/item/weapon/circuitboard/pacman/super category = list("Engineering Machinery") -datum/design/mrspacman +/datum/design/mrspacman name = "Machine Design (MRSPACMAN-type Generator Board)" desc = "The circuit board that for a MRSPACMAN-type portable generator." id = "mrspacman" diff --git a/code/modules/research/designs/stock_parts_designs.dm b/code/modules/research/designs/stock_parts_designs.dm index 638ef2d97ab9..117722ecb4eb 100644 --- a/code/modules/research/designs/stock_parts_designs.dm +++ b/code/modules/research/designs/stock_parts_designs.dm @@ -120,7 +120,7 @@ build_path = /obj/item/weapon/stock_parts/micro_laser category = list("Stock Parts") -datum/design/high_micro_laser +/datum/design/high_micro_laser name = "High-Power Micro-Laser" desc = "A stock part used in the construction of various devices." id = "high_micro_laser" @@ -130,7 +130,7 @@ datum/design/high_micro_laser build_path = /obj/item/weapon/stock_parts/micro_laser/high category = list("Stock Parts") -datum/design/ultra_micro_laser +/datum/design/ultra_micro_laser name = "Ultra-High-Power Micro-Laser" desc = "A stock part used in the construction of various devices." id = "ultra_micro_laser" @@ -141,7 +141,7 @@ datum/design/ultra_micro_laser build_path = /obj/item/weapon/stock_parts/micro_laser/ultra category = list("Stock Parts") -datum/design/basic_matter_bin +/datum/design/basic_matter_bin name = "Basic Matter Bin" desc = "A stock part used in the construction of various devices." id = "basic_matter_bin" @@ -151,7 +151,7 @@ datum/design/basic_matter_bin build_path = /obj/item/weapon/stock_parts/matter_bin category = list("Stock Parts") -datum/design/adv_matter_bin +/datum/design/adv_matter_bin name = "Advanced Matter Bin" desc = "A stock part used in the construction of various devices." id = "adv_matter_bin" @@ -161,7 +161,7 @@ datum/design/adv_matter_bin build_path = /obj/item/weapon/stock_parts/matter_bin/adv category = list("Stock Parts") -datum/design/super_matter_bin +/datum/design/super_matter_bin name = "Super Matter Bin" desc = "A stock part used in the construction of various devices." id = "super_matter_bin" @@ -173,7 +173,7 @@ datum/design/super_matter_bin category = list("Stock Parts") //T-Comms devices -datum/design/subspace_ansible +/datum/design/subspace_ansible name = "Subspace Ansible" desc = "A compact module capable of sensing extradimensional activity." id = "s-ansible" @@ -183,7 +183,7 @@ datum/design/subspace_ansible build_path = /obj/item/weapon/stock_parts/subspace/ansible category = list("Stock Parts") -datum/design/hyperwave_filter +/datum/design/hyperwave_filter name = "Hyperwave Filter" desc = "A tiny device capable of filtering and converting super-intense radiowaves." id = "s-filter" @@ -193,7 +193,7 @@ datum/design/hyperwave_filter build_path = /obj/item/weapon/stock_parts/subspace/filter category = list("Stock Parts") -datum/design/subspace_amplifier +/datum/design/subspace_amplifier name = "Subspace Amplifier" desc = "A compact micro-machine capable of amplifying weak subspace transmissions." id = "s-amplifier" @@ -203,7 +203,7 @@ datum/design/subspace_amplifier build_path = /obj/item/weapon/stock_parts/subspace/amplifier category = list("Stock Parts") -datum/design/subspace_treatment +/datum/design/subspace_treatment name = "Subspace Treatment Disk" desc = "A compact micro-machine capable of stretching out hyper-compressed radio waves." id = "s-treatment" @@ -213,7 +213,7 @@ datum/design/subspace_treatment build_path = /obj/item/weapon/stock_parts/subspace/treatment category = list("Stock Parts") -datum/design/subspace_analyzer +/datum/design/subspace_analyzer name = "Subspace Analyzer" desc = "A sophisticated analyzer capable of analyzing cryptic subspace wavelengths." id = "s-analyzer" @@ -223,7 +223,7 @@ datum/design/subspace_analyzer build_path = /obj/item/weapon/stock_parts/subspace/analyzer category = list("Stock Parts") -datum/design/subspace_crystal +/datum/design/subspace_crystal name = "Ansible Crystal" desc = "A sophisticated analyzer capable of analyzing cryptic subspace wavelengths." id = "s-crystal" @@ -233,7 +233,7 @@ datum/design/subspace_crystal build_path = /obj/item/weapon/stock_parts/subspace/crystal category = list("Stock Parts") -datum/design/subspace_transmitter +/datum/design/subspace_transmitter name = "Subspace Transmitter" desc = "A large piece of equipment used to open a window into the subspace dimension." id = "s-transmitter" diff --git a/code/modules/research/research.dm b/code/modules/research/research.dm index 6fa8bb0536a9..b699a034a3a5 100644 --- a/code/modules/research/research.dm +++ b/code/modules/research/research.dm @@ -185,7 +185,7 @@ research holder datum. ** Includes all the various technoliges and what they make. ** ***************************************************************/ -datum/tech //Datum of individual technologies. +/datum/tech //Datum of individual technologies. var/name = "name" //Name of the technology. var/desc = "description" //General description of what it does and what it makes. var/id = "id" //An easily referenced ID. Must be alphanumeric, lower-case, and no symbols. @@ -195,77 +195,77 @@ datum/tech //Datum of individual technologies. //Trunk Technologies (don't require any other techs and you start knowning them). -datum/tech/materials +/datum/tech/materials name = "Materials Research" desc = "Development of new and improved materials." id = "materials" -datum/tech/engineering +/datum/tech/engineering name = "Engineering Research" desc = "Development of new and improved engineering parts and." id = "engineering" -datum/tech/plasmatech +/datum/tech/plasmatech name = "Plasma Research" desc = "Research into the mysterious substance colloqually known as 'plasma'." id = "plasmatech" -datum/tech/powerstorage +/datum/tech/powerstorage name = "Power Manipulation Technology" desc = "The various technologies behind the storage and generation of electicity." id = "powerstorage" -datum/tech/bluespace +/datum/tech/bluespace name = "'Blue-space' Research" desc = "Research into the sub-reality known as 'blue-space'" id = "bluespace" -datum/tech/biotech +/datum/tech/biotech name = "Biological Technology" desc = "Research into the deeper mysteries of life and organic substances." id = "biotech" -datum/tech/combat +/datum/tech/combat name = "Combat Systems Research" desc = "The development of offensive and defensive systems." id = "combat" -datum/tech/magnets +/datum/tech/magnets name = "Electromagnetic Spectrum Research" desc = "Research into the electromagnetic spectrum. No clue how they actually work, though." id = "magnets" -datum/tech/programming +/datum/tech/programming name = "Data Theory Research" desc = "The development of new computer and artificial intelligence and data storage systems." id = "programming" -datum/tech/syndicate +/datum/tech/syndicate name = "Illegal Technologies Research" desc = "The study of technologies that violate Nanotrassen regulations." id = "syndicate" /* -datum/tech/arcane +/datum/tech/arcane name = "Arcane Research" desc = "Research into the occult and arcane field for use in practical science" id = "arcane" level = 0 //It didn't become "secret" as advertised. //Branch Techs -datum/tech/explosives +/datum/tech/explosives name = "Explosives Research" desc = "The creation and application of explosive materials." id = "explosives" req_tech = list("materials" = 3) -datum/tech/generators +/datum/tech/generators name = "Power Generation Technology" desc = "Research into more powerful and more reliable sources." id = "generators" req_tech = list("powerstorage" = 2) -datum/tech/robotics +/datum/tech/robotics name = "Robotics Technology" desc = "The development of advanced automated, autonomous machines." id = "robotics" diff --git a/code/modules/scripting/Implementations/Telecomms.dm b/code/modules/scripting/Implementations/Telecomms.dm index 42c5c7aec409..5e5733c74cd6 100644 --- a/code/modules/scripting/Implementations/Telecomms.dm +++ b/code/modules/scripting/Implementations/Telecomms.dm @@ -253,7 +253,7 @@ var/list/allowed_custom_spans = list(SPAN_ROBOT,SPAN_YELL,SPAN_ITALICS,SPAN_SANS var/const/SIGNAL_COOLDOWN = 20 // 2 seconds -datum/signal +/datum/signal proc/mem(var/address, var/value)