From 87ad3ade1625b4e5ea9e0e62cbaf4ccbe4bd9bda Mon Sep 17 00:00:00 2001 From: Rygzengrho Date: Mon, 6 Dec 2010 23:30:18 +0000 Subject: [PATCH] Tweaked hunger values once more. Added check if you already ate something but it was not yet metabolized. It's harder to overeat now. Improved the random look generator. Now it takes in account real-life statistics of skin tone and blood group distribution, and has different colors. Fixed bug that sprinkles did not metabolized in non-security body. Made rig suit to be proper space suit. Cleaned some code Made mopbucket to have 100 volume. Added radio report diagnostic verb (but with no effect for now) git-svn-id: http://tgstation13.googlecode.com/svn/trunk@551 316c924e-a436-60f5-8080-3fe189b3f50e --- code/WorkInProgress/Chemistry-Reagents.dm | 36 +++++- code/WorkInProgress/Chemistry-Tools.dm | 28 ++-- code/defines/obj/clothing.dm | 10 ++ code/game/machinery/microwave.dm | 3 +- code/game/objects/cleaner.dm | 2 +- code/game/objects/closets/firecloset.dm | 2 +- code/modules/admin/admin_verbs.dm | 12 +- code/modules/admin/verbs/diagnostics.dm | 22 +++- .../living/carbon/alien/humanoid/life_new.dm | 2 +- code/modules/mob/living/carbon/human/life.dm | 7 +- code/modules/mob/new_player/preferences.dm | 120 ++++++++++-------- code/setup.dm | 4 +- 12 files changed, 168 insertions(+), 80 deletions(-) diff --git a/code/WorkInProgress/Chemistry-Reagents.dm b/code/WorkInProgress/Chemistry-Reagents.dm index f3fe4ce884..3332d67b59 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 305641a71d..c5bc4a52fe 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 a63d35a694..52ccfba8d7 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 76381f03ee..942aadc14c 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 86fc543231..c3d76f54d4 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 465518d433..cad3dca421 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 2d0a612f78..81ce4a34ea 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 20883ea631..ed9ec32f67 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
"/* + for (var/fq in radio_controller.frequencies) + output += "Freq: [fq]
" + var/list/datum/radio_frequency/fqs = radio_controller.frequencies[fq] + output += "  Voice: [fqs.voice.len]
" + output += "  Broadcast: [fqs.broadcast.len]
" + output += "  Tags:
" + for (var/tag in fqs.tags) + var/list/ctag = fqs.tags[tag] + output += "    [tag]: [ctag.len]
" + output += "  Groups:
" + for (var/group in fqs.groups) + var/list/cgroup = fqs.groups[group] + output += "    [group]: [cgroup.len]
"*/ + usr << browse(output,"window=radioreport") diff --git a/code/modules/mob/living/carbon/alien/humanoid/life_new.dm b/code/modules/mob/living/carbon/alien/humanoid/life_new.dm index a1638c8870..dc8688149b 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/life_new.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/life_new.dm @@ -341,7 +341,7 @@ if(reagents) reagents.metabolize(src) - if(src.nutrition > 400 && !(src.mutations & 32)) + if(src.nutrition > 500 && !(src.mutations & 32)) if(prob(5 + round((src.nutrition - 200) / 2))) src << "\red You suddenly feel blubbery!" src.mutations |= 32 diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index a411065281..5a82fb5b69 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -857,9 +857,12 @@ // Commented out so hunger system won't be such shock // Damage and effects from not eating if(src.nutrition <= 50) - src.bruteloss++ + if (prob (0.1)) + src << "\red Your stomach rumbles." if (prob (10)) - src << "You feel very weak" + src.bruteloss++ + if (prob (5)) + src << "You feel very weak." src.weakened += rand(2, 3) */ /* diff --git a/code/modules/mob/new_player/preferences.dm b/code/modules/mob/new_player/preferences.dm index 00f54ec995..3f2666b913 100644 --- a/code/modules/mob/new_player/preferences.dm +++ b/code/modules/mob/new_player/preferences.dm @@ -8,7 +8,6 @@ datum/preferences var/midis = 1 var/ooccolor = "#b82e00" var/be_random_name = 0 - var/be_random_look = 0 var/underwear = 1 var/occupation1 = "No Preference" @@ -46,8 +45,28 @@ datum/preferences else real_name = capitalize(pick(first_names_female) + " " + capitalize(pick(last_names))) + proc/randomize_skin_tone() + var/tone + + var/tmp = pickweight ( list ("caucasian" = 55, "afroamerican" = 15, "african" = 10, "latino" = 10, "albino" = 5, "weird" = 5)) + switch (tmp) + if ("caucasian") + tone = -45 + 35 + if ("afroamerican") + tone = -150 + 35 + if ("african") + tone = -200 + 35 + if ("latino") + tone = -90 + 35 + if ("albino") + tone = -1 + 35 + if ("weird") + tone = -(rand (1, 220)) + 35 + + src.s_tone = min(max(tone + rand (-25, 25), -185), 34) + proc/randomize_hair_color(var/target = "hair") - if (prob (50) && target == "facial") // Chance to inherit head color + if (prob (75) && target == "facial") // Chance to inherit hair color r_facial = r_hair g_facial = g_hair b_facial = b_hair @@ -60,29 +79,29 @@ datum/preferences var/col = pick ("blonde", "black", "chestnut", "copper", "brown", "wheat", "old", "punk") switch (col) if ("blonde") - red = 226 - green = 209 - blue = 140 + red = 255 + green = 255 + blue = 0 if ("black") red = 0 green = 0 blue = 0 if ("chestnut") - red = 98 - green = 77 - blue = 60 + red = 153 + green = 102 + blue = 51 if ("copper") - red = 152 - green = 81 - blue = 63 + red = 255 + green = 153 + blue = 0 if ("brown") - red = 73 - green = 52 - blue = 39 + red = 102 + green = 51 + blue = 0 if ("wheat") - red = 210 - green = 191 - blue = 158 + red = 255 + green = 255 + blue = 153 if ("old") red = rand (100, 255) green = red @@ -92,9 +111,9 @@ datum/preferences green = rand (0, 255) blue = rand (0, 255) - red = max(min(red + rand (-10, 10), 255), 0) - green = max(min(green + rand (-10, 10), 255), 0) - blue = max(min(blue + rand (-10, 10), 255), 0) + red = max(min(red + rand (-25, 25), 255), 0) + green = max(min(green + rand (-25, 25), 255), 0) + blue = max(min(blue + rand (-25, 25), 255), 0) switch (target) if ("hair") @@ -122,37 +141,37 @@ datum/preferences green = red blue = red if ("brown") - red = 60 - green = 30 - blue = 19 - if ("chestnut") - red = 127 - green = 79 - blue = 31 - if ("blue") - red = 53 + red = 102 green = 51 - blue = 64 + blue = 0 + if ("chestnut") + red = 153 + green = 102 + blue = 0 + if ("blue") + red = 51 + green = 102 + blue = 204 if ("lightblue") - red = 94 - green = 101 - blue = 115 + red = 102 + green = 204 + blue = 255 if ("green") - red = 115 - green = 114 - blue = 84 + red = 0 + green = 102 + blue = 0 if ("albino") - red = rand (100, 255) - green = rand (0, 70) - blue = rand (0, 70) + red = rand (200, 255) + green = rand (0, 150) + blue = rand (0, 150) if ("weird") red = rand (0, 255) green = rand (0, 255) blue = rand (0, 255) - red = max(min(red + rand (-10, 10), 255), 0) - green = max(min(green + rand (-10, 10), 255), 0) - blue = max(min(blue + rand (-10, 10), 255), 0) + red = max(min(red + rand (-25, 25), 255), 0) + green = max(min(green + rand (-25, 25), 255), 0) + blue = max(min(blue + rand (-25, 25), 255), 0) r_eyes = red g_eyes = green @@ -303,8 +322,9 @@ datum/preferences else dat += "\tNo Preference
" - dat += "
Body" - dat += " (®)
" // Random look + dat += "
Body " + dat += "(®)" // Random look + dat += "
" dat += "Blood Type: [src.b_type]
" dat += "Skin Tone: [-src.s_tone + 35]/220
" @@ -517,7 +537,7 @@ datum/preferences if (new_b_type) src.b_type = new_b_type if ("random") - src.b_type = pick ("A+", "A-", "B+", "B-", "AB+", "AB-", "O+", "O-") + src.b_type = pickweight ( list ("A+" = 31, "A-" = 7, "B+" = 8, "B-" = 2, "AB+" = 2, "AB-" = 1, "O+" = 40, "O-" = 9)) if (link_tags["hair"]) @@ -614,7 +634,7 @@ datum/preferences if (link_tags["s_tone"]) switch(link_tags["s_tone"]) if ("random") - src.s_tone = (-(rand (1, 220))) -35 + randomize_skin_tone() if("input") var/new_tone = input(user, "Please select skin tone level: 1-220 (1=albino, 35=caucasian, 150=black, 220='very' black)", "Character Generation") as text if (new_tone) @@ -639,10 +659,10 @@ datum/preferences if (link_tags["f_style"]) switch(link_tags["f_style"]) if ("random") - if (src.gender == FEMALE && !prob (1)) - src.f_style = "Shaved" + if (src.gender == FEMALE) + src.f_style = pickweight ( list("Watson" = 1, "Chaplin" = 1, "Selleck" = 1, "Full Beard" = 1, "Long Beard" = 1, "Neckbeard" = 1, "Van Dyke" = 1, "Elvis" = 1, "Abe" = 1, "Chinstrap" = 1, "Hipster" = 1, "Goatee" = 1, "Hogan" = 1, "Shaved" = 100)) else - src.f_style = pick ("Watson", "Chaplin", "Selleck", "Full Beard", "Long Beard", "Neckbeard", "Van Dyke", "Elvis", "Abe", "Chinstrap", "Hipster", "Goatee", "Hogan") + src.f_style = pickweight ( list("Watson" = 1, "Chaplin" = 1, "Selleck" = 1, "Full Beard" = 1, "Long Beard" = 1, "Neckbeard" = 1, "Van Dyke" = 1, "Elvis" = 1, "Abe" = 1, "Chinstrap" = 1, "Hipster" = 1, "Goatee" = 1, "Hogan" = 1, "Shaved" = 10)) if("input") var/new_style = input(user, "Please select facial style", "Character Generation") as null|anything in list("Watson", "Chaplin", "Selleck", "Full Beard", "Long Beard", "Neckbeard", "Van Dyke", "Elvis", "Abe", "Chinstrap", "Hipster", "Goatee", "Hogan", "Shaved") if (new_style) @@ -670,7 +690,7 @@ datum/preferences if(!IsGuestKey(user.key)) switch(link_tags["underwear"]) if ("random") - if (prob (65)) + if (prob (75)) src.underwear = 1 else src.underwear = 0 diff --git a/code/setup.dm b/code/setup.dm index 4ffb1c7643..4200cda27b 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -19,8 +19,8 @@ //Amount of air needed before pass out/suffocation commences // Factor of how fast mob nutrition decreases -#define HUNGER_FACTOR 0.07 - +#define HUNGER_FACTOR 0.1 +#define REAGENTS_METABOLISM 0.4 #define MINIMUM_AIR_RATIO_TO_SUSPEND 0.05 //Minimum ratio of air that must move to/from a tile to suspend group processing