diff --git a/code/WorkInProgress/Chemistry-Reagents.dm b/code/WorkInProgress/Chemistry-Reagents.dm
index f3fe4ce8842..3332d67b598 100644
--- a/code/WorkInProgress/Chemistry-Reagents.dm
+++ b/code/WorkInProgress/Chemistry-Reagents.dm
@@ -14,6 +14,7 @@ datum
var/reagent_state = SOLID
var/data = null
var/volume = 0
+ var/nutriment_factor = 0
proc
reaction_mob(var/mob/M, var/method=TOUCH, var/volume) //By default we have a chance to transfer some
@@ -42,7 +43,7 @@ datum
return
on_mob_life(var/mob/M)
- holder.remove_reagent(src.id, 0.4) //By default it slowly disappears.
+ holder.remove_reagent(src.id, REAGENTS_METABOLISM) //By default it slowly disappears.
return
on_move(var/mob/M)
@@ -1154,10 +1155,24 @@ datum
id = "nutriment"
description = "All the vitamins, minerals, and carbohydrates the body needs in pure form."
reagent_state = SOLID
+ nutriment_factor = 25 * REAGENTS_METABOLISM
on_mob_life(var/mob/M)
if(!M) M = holder.my_atom
if(prob(50)) M:bruteloss--
- M:nutrition += 10 // For hunger and fatness
+ M:nutrition += nutriment_factor // For hunger and fatness
+/*
+ // If overeaten - vomit and fall down
+ // Makes you feel bad but removes reagents and some effects
+ // from your body
+ if (M.nutrition > 650)
+ M.nutrition = rand (250, 400)
+ M.weakened += rand(2, 10)
+ M.jitteriness += rand(0, 5)
+ M.dizziness = max (0, (M.dizziness - rand(0, 15)))
+ M.druggy = max (0, (M.druggy - rand(0, 15)))
+ M.toxloss = max (0, (M.toxloss - rand(5, 15)))
+ M.updatehealth()
+*/
..()
return
@@ -1166,18 +1181,21 @@ datum
id = "soysauce"
description = "A salty sauce made from the soy plant."
reagent_state = LIQUID
+ nutriment_factor = 2 * REAGENTS_METABOLISM
ketchup
name = "Ketchup"
id = "ketchup"
description = "Ketchup, catsup, whatever. It's tomato paste."
reagent_state = LIQUID
+ nutriment_factor = 5 * REAGENTS_METABOLISM
capsaicin
name = "Capsaicin Oil"
id = "capsaicin"
description = "This is what makes chilis hot."
reagent_state = LIQUID
+ nutriment_factor = 5 * REAGENTS_METABOLISM
on_mob_life(var/mob/M)
if(!M) M = holder.my_atom
M:bodytemperature += 5
@@ -1190,6 +1208,7 @@ datum
id = "frostoil"
description = "A special oil that noticably chills the body. Extraced from Icepeppers."
reagent_state = LIQUID
+ nutriment_factor = 5 * REAGENTS_METABOLISM
on_mob_life(var/mob/M)
if(!M) M = holder.my_atom
M:bodytemperature -= 5
@@ -1202,12 +1221,14 @@ datum
id = "sodiumchloride"
description = "A salt made of sodium chloride. Commonly used to season food."
reagent_state = SOLID
+ nutriment_factor = 1 * REAGENTS_METABOLISM
blackpepper
name = "Black Pepper"
id = "blackpepper"
description = "A power ground from peppercorns. *AAAACHOOO*"
reagent_state = SOLID
+ nutriment_factor = 1 * REAGENTS_METABOLISM
amatoxin
name = "Amatoxin"
@@ -1236,22 +1257,26 @@ datum
name = "Sprinkles"
id = "sprinkles"
description = "Multi-colored little bits of sugar, commonly found on donuts. Loved by cops."
+ nutriment_factor = 1 * REAGENTS_METABOLISM
on_mob_life(var/mob/M)
+ M:nutrition += nutriment_factor
if(istype(M, /mob/living/carbon/human) && M.job in list("Security Officer", "Head of Security", "Detective"))
if(!M) M = holder.my_atom
M:bruteloss--
M:fireloss--
- M:nutrition++
+ M:nutrition += nutriment_factor
..()
return
+ ..()
oliveoil
name = "Olive Oil"
id = "oliveoil"
description = "An oil derived from various types of olives. A famous export of Space Italy."
reagent_state = LIQUID
+ nutriment_factor = 20 * REAGENTS_METABOLISM
on_mob_life(var/mob/M)
- M:nutrition += 20
+ M:nutrition += nutriment_factor
..()
return
reaction_turf(var/turf/T, var/volume)
@@ -1290,9 +1315,10 @@ datum
id = "berryjuice"
description = "A delicious blend of several different kinds of berries."
reagent_state = LIQUID
+ nutriment_factor = 1 * REAGENTS_METABOLISM
on_mob_life(var/mob/M)
if(!M) M = holder.my_atom
- M:nutrition++
+ M:nutrition += nutriment_factor
..()
return
diff --git a/code/WorkInProgress/Chemistry-Tools.dm b/code/WorkInProgress/Chemistry-Tools.dm
index 305641a71d3..c5bc4a52fee 100644
--- a/code/WorkInProgress/Chemistry-Tools.dm
+++ b/code/WorkInProgress/Chemistry-Tools.dm
@@ -729,7 +729,6 @@
playsound(M.loc,'drink.ogg', rand(10,50), 1)
return 1
-
return 0
attackby(obj/item/I as obj, mob/user as mob)
@@ -754,7 +753,6 @@
if(!reagents.total_volume)
user << "\red [src] is empty."
return
-
if(target.reagents.total_volume >= target.reagents.maximum_volume)
user << "\red you can't add anymore to [target]."
return
@@ -782,23 +780,26 @@
return 0
if(istype(M, /mob/living/carbon/human))
if(M == user) //If you're eating it yourself.
- if (M.nutrition <= 50)
+ var/fullness = M.nutrition + (M.reagents.get_reagent_amount("nutriment") * 25)
+ if (fullness <= 50)
M << "\red You hungrily chew out a piece of [src] and gobble it!"
- if (M.nutrition > 50 && M.nutrition <= 150)
+ if (fullness > 50 && fullness <= 150)
M << "\blue You hungrily begin to eat [src]."
- if (M.nutrition > 150 && M.nutrition <= 350)
+ if (fullness > 150 && fullness <= 350)
M << "\blue You take a bite of [src]."
- if (M.nutrition > 350 && M.nutrition <= 550)
+ if (fullness > 350 && fullness <= 550)
M << "\blue You unwillingly chew a bit of [src]."
- if (M.nutrition > (550 * (1 + M.overeatduration / 1000))) // The more he eats - the more he can eat
+ if (fullness > (550 * (1 + M.overeatduration / 1000))) // The more he eats - the more he can eat
M << "\red You cannot force any more of [src] to go down your throat."
return 0
else //If you're feeding it to someone else.
- for(var/mob/O in viewers(world.view, user))
- if (M.nutrition <= (550 * (1 + M.overeatduration / 1000)))
+ var/fullness = M.nutrition + (M.reagents.get_reagent_amount("nutriment") * 10)
+ if (fullness <= (550 * (1 + M.overeatduration / 1000)))
+ for(var/mob/O in viewers(world.view, user))
O.show_message("\red [user] attempts to feed [M] [src].", 1)
- else
- O.show_message("\red [user] cannot force anymore of [src] down [M] throat.", 1)
+ else
+ for(var/mob/O in viewers(world.view, user))
+ O.show_message("\red [user] cannot force anymore of [src] down [M]'s throat.", 1)
return 0
if(!do_mob(user, M)) return
@@ -1024,7 +1025,7 @@
amount_per_transfer_from_this = 20
flags = FPRINT | OPENCONTAINER
New()
- var/datum/reagents/R = new/datum/reagents(90)
+ var/datum/reagents/R = new/datum/reagents(70)
reagents = R
R.my_atom = src
@@ -1051,7 +1052,6 @@
amount_per_transfer_from_this = 10
flags = FPRINT | TABLEPASS | OPENCONTAINER
-
/obj/item/weapon/reagent_containers/glass/dispenser/surfactant
name = "reagent glass (surfactant)"
icon_state = "liquid"
@@ -1362,7 +1362,7 @@
icon_state = "donut1"
New()
..()
- reagents.add_reagent("nutriment", 2)
+ reagents.add_reagent("nutriment", 3)
reagents.add_reagent("sprinkles", 1)
if(prob(30))
src.icon_state = "donut2"
diff --git a/code/defines/obj/clothing.dm b/code/defines/obj/clothing.dm
index a63d35a694f..52ccfba8d7f 100644
--- a/code/defines/obj/clothing.dm
+++ b/code/defines/obj/clothing.dm
@@ -259,6 +259,9 @@
name = "rig helmet"
icon_state = "rig"
item_state = "rig_helm"
+ flags = FPRINT | TABLEPASS | HEADSPACE | HEADCOVERSEYES | HEADCOVERSMOUTH
+ see_face = 0.0
+ permeability_coefficient = 0.01
/obj/item/clothing/head/helmet/space/syndicate
name = "red space helmet"
@@ -695,6 +698,13 @@
desc = "A special suit that protects against hazardous, low pressure environments."
icon_state = "rig"
item_state = "rig_suit"
+ gas_transfer_coefficient = 0.01
+ w_class = 4//bulky item
+ flags = FPRINT | TABLEPASS | SUITSPACE
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
+ permeability_coefficient = 0.02
+ protective_temperature = 1000
+ heat_transfer_coefficient = 0.02
/obj/item/clothing/suit/space/syndicate
name = "red space suit"
diff --git a/code/game/machinery/microwave.dm b/code/game/machinery/microwave.dm
index 76381f03ee5..942aadc14cf 100644
--- a/code/game/machinery/microwave.dm
+++ b/code/game/machinery/microwave.dm
@@ -600,5 +600,4 @@ Please clean it before use!
new /obj/item/weapon/reagent_containers/food/snacks/cheesewedge (src.loc)
new /obj/item/weapon/reagent_containers/food/snacks/cheesewedge (src.loc)
del(src)
- return
-
+ return
\ No newline at end of file
diff --git a/code/game/objects/cleaner.dm b/code/game/objects/cleaner.dm
index 86fc543231d..c3d76f54d40 100644
--- a/code/game/objects/cleaner.dm
+++ b/code/game/objects/cleaner.dm
@@ -1,5 +1,5 @@
/obj/mopbucket/New()
- var/datum/reagents/R = new/datum/reagents(50)
+ var/datum/reagents/R = new/datum/reagents(100)
reagents = R
R.my_atom = src
diff --git a/code/game/objects/closets/firecloset.dm b/code/game/objects/closets/firecloset.dm
index 465518d4339..cad3dca4210 100644
--- a/code/game/objects/closets/firecloset.dm
+++ b/code/game/objects/closets/firecloset.dm
@@ -5,7 +5,7 @@
del(src)
return
- switch (pickweight(list("extinguisher" = 50, "toolbox" = 30, "nothing" = 20)))
+ switch (pickweight(list("extinguisher" = 40, "toolbox" = 40, "nothing" = 20)))
if ("extinguisher")
new /obj/item/weapon/extinguisher(src)
if ("toolbox")
diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm
index 2d0a612f78f..81ce4a34ea6 100644
--- a/code/modules/admin/admin_verbs.dm
+++ b/code/modules/admin/admin_verbs.dm
@@ -32,6 +32,7 @@
src.verbs += /client/proc/admin_cancel_shuttle // -- Skie
src.verbs += /client/proc/air_report
src.verbs += /client/proc/air_status
+ src.verbs += /client/proc/radio_report
src.verbs += /client/proc/callproc
src.verbs += /client/proc/Cell
src.verbs += /client/proc/cmd_admin_alienize
@@ -131,6 +132,7 @@
src.verbs += /client/proc/admin_cancel_shuttle // -- Skie
src.verbs += /client/proc/air_report
src.verbs += /client/proc/air_status
+ src.verbs += /client/proc/radio_report
src.verbs += /client/proc/callproc
src.verbs += /client/proc/Cell
src.verbs += /client/proc/cmd_admin_alienize
@@ -287,6 +289,7 @@
src.verbs += /client/proc/general_report
src.verbs += /client/proc/air_report
src.verbs += /client/proc/air_status
+ src.verbs += /client/proc/radio_report
src.verbs += /client/proc/fix_next_move
src.verbs += /client/proc/toggle_view_range
@@ -581,6 +584,7 @@
src.verbs -= /client/proc/general_report
src.verbs -= /client/proc/air_report
src.verbs -= /client/proc/air_status
+ src.verbs -= /client/proc/radio_report
src.verbs -= /client/proc/toggle_view_range
src.verbs -= /obj/admins/proc/toggle_aliens
@@ -764,7 +768,7 @@
message_admins("\blue [src.ckey] warned [M.ckey], resulting in a 10 minute autoban.")
del(M.client)
- del(M)
+ //del(M)
/client/proc/drop_bomb() // Some admin dickery that can probably be done better -- TLE
set category = "Special Verbs"
@@ -965,6 +969,7 @@
src.verbs += /client/proc/general_report
src.verbs += /client/proc/air_report
src.verbs += /client/proc/air_status
+ src.verbs += /client/proc/radio_report
src.verbs += /client/proc/fix_next_move
src.verbs += /client/proc/toggle_view_range
@@ -1047,6 +1052,7 @@
src.verbs += /client/proc/general_report
src.verbs += /client/proc/air_report
src.verbs += /client/proc/air_status
+ src.verbs += /client/proc/radio_report
src.verbs += /client/proc/fix_next_move
src.verbs += /obj/admins/proc/spawn_atom
@@ -1115,6 +1121,7 @@
src.verbs += /client/proc/general_report
src.verbs += /client/proc/air_report
src.verbs += /client/proc/air_status
+ src.verbs += /client/proc/radio_report
src.verbs += /client/proc/fix_next_move
src.verbs += /client/proc/toggle_view_range
@@ -1382,6 +1389,7 @@
src.verbs -= /client/proc/general_report
src.verbs -= /client/proc/air_report
src.verbs -= /client/proc/air_status
+ src.verbs -= /client/proc/radio_report
src.verbs += /client/proc/fix_next_move
src.verbs += /client/proc/toggle_view_range
@@ -1464,6 +1472,7 @@
src.verbs -= /client/proc/general_report
src.verbs -= /client/proc/air_report
src.verbs -= /client/proc/air_status
+ src.verbs -= /client/proc/radio_report
src.verbs += /client/proc/fix_next_move
src.verbs += /obj/admins/proc/spawn_atom
@@ -1532,6 +1541,7 @@
src.verbs -= /client/proc/general_report
src.verbs -= /client/proc/air_report
src.verbs -= /client/proc/air_status
+ src.verbs -= /client/proc/radio_report
src.verbs -= /client/proc/fix_next_move
src.verbs += /client/proc/toggle_view_range
diff --git a/code/modules/admin/verbs/diagnostics.dm b/code/modules/admin/verbs/diagnostics.dm
index 20883ea631d..ed9ec32f675 100644
--- a/code/modules/admin/verbs/diagnostics.dm
+++ b/code/modules/admin/verbs/diagnostics.dm
@@ -109,4 +109,24 @@
message_admins("[key_name_admin(largest_move_mob)] had the largest move delay with [largest_move_time] frames / [largest_move_time/10] seconds!", 1)
message_admins("[key_name_admin(largest_click_mob)] had the largest click delay with [largest_click_time] frames / [largest_click_time/10] seconds!", 1)
message_admins("world.time = [world.time]", 1)
- return
\ No newline at end of file
+ return
+
+ radio_report()
+ set category = "Debug"
+ set name = "Radio report"
+
+ var/output = "Radio Report
| Body"
- dat += " (®) " // Random look + dat += "
|