mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 10:12:45 +00:00
Merge remote-tracking branch 'upstream/dev-freeze' into dev
Conflicts: code/modules/mob/living/carbon/human/say.dm
This commit is contained in:
@@ -139,9 +139,9 @@
|
|||||||
mode_nice = design
|
mode_nice = design
|
||||||
mode = "whitebluegreencorners"
|
mode = "whitebluegreencorners"
|
||||||
tile_dir_mode = 2
|
tile_dir_mode = 2
|
||||||
else if(design == "delivery" || design == "bot")
|
else if(design == "delivery" || design == "bot" || design == "white-delivery" || design == "white-bot")
|
||||||
mode_nice = design
|
mode_nice = design
|
||||||
mode = design
|
mode = replacetext(design, "-", "")
|
||||||
tile_dir_mode = 0
|
tile_dir_mode = 0
|
||||||
else if(design == "loadingarea")
|
else if(design == "loadingarea")
|
||||||
mode_nice = design
|
mode_nice = design
|
||||||
|
|||||||
@@ -1,14 +1,17 @@
|
|||||||
|
#define SHOWER_OPEN_LAYER MOB_LAYER + 0.1
|
||||||
|
#define SHOWER_CLOSED_LAYER OBJ_LAYER + 0.4
|
||||||
|
|
||||||
/obj/structure/curtain
|
/obj/structure/curtain
|
||||||
name = "curtain"
|
name = "curtain"
|
||||||
icon = 'icons/obj/curtain.dmi'
|
icon = 'icons/obj/curtain.dmi'
|
||||||
icon_state = "closed"
|
icon_state = "closed"
|
||||||
layer = MOB_LAYER + 0.1
|
layer = SHOWER_OPEN_LAYER
|
||||||
opacity = 1
|
opacity = 1
|
||||||
density = 0
|
density = 0
|
||||||
|
|
||||||
/obj/structure/curtain/open
|
/obj/structure/curtain/open
|
||||||
icon_state = "open"
|
icon_state = "open"
|
||||||
layer = OBJ_LAYER
|
layer = SHOWER_CLOSED_LAYER
|
||||||
opacity = 0
|
opacity = 0
|
||||||
|
|
||||||
/obj/structure/curtain/bullet_act(obj/item/projectile/P, def_zone)
|
/obj/structure/curtain/bullet_act(obj/item/projectile/P, def_zone)
|
||||||
@@ -27,10 +30,10 @@
|
|||||||
opacity = !opacity
|
opacity = !opacity
|
||||||
if(opacity)
|
if(opacity)
|
||||||
icon_state = "closed"
|
icon_state = "closed"
|
||||||
layer = MOB_LAYER + 0.1
|
layer = SHOWER_CLOSED_LAYER
|
||||||
else
|
else
|
||||||
icon_state = "open"
|
icon_state = "open"
|
||||||
layer = OBJ_LAYER
|
layer = SHOWER_OPEN_LAYER
|
||||||
|
|
||||||
/obj/structure/curtain/black
|
/obj/structure/curtain/black
|
||||||
name = "black curtain"
|
name = "black curtain"
|
||||||
@@ -45,3 +48,12 @@
|
|||||||
name = "shower curtain"
|
name = "shower curtain"
|
||||||
color = "#ACD1E9"
|
color = "#ACD1E9"
|
||||||
alpha = 200
|
alpha = 200
|
||||||
|
|
||||||
|
/obj/structure/curtain/open/shower/engineering
|
||||||
|
color = "#FFA500"
|
||||||
|
|
||||||
|
/obj/structure/curtain/open/shower/security
|
||||||
|
color = "#AA0000"
|
||||||
|
|
||||||
|
#undef SHOWER_OPEN_LAYER
|
||||||
|
#undef SHOWER_CLOSED_LAYER
|
||||||
|
|||||||
@@ -4,12 +4,12 @@ datum/event/viral_infection
|
|||||||
datum/event/viral_infection/setup()
|
datum/event/viral_infection/setup()
|
||||||
announceWhen = rand(0, 3000)
|
announceWhen = rand(0, 3000)
|
||||||
endWhen = announceWhen + 1
|
endWhen = announceWhen + 1
|
||||||
|
|
||||||
//generate 1-3 viruses. This way there's an upper limit on how many individual diseases need to be cured if many people are initially infected
|
//generate 1-3 viruses. This way there's an upper limit on how many individual diseases need to be cured if many people are initially infected
|
||||||
var/num_diseases = rand(1,3)
|
var/num_diseases = rand(1,3)
|
||||||
for (var/i=0, i < num_diseases, i++)
|
for (var/i=0, i < num_diseases, i++)
|
||||||
var/datum/disease2/disease/D = new /datum/disease2/disease
|
var/datum/disease2/disease/D = new /datum/disease2/disease
|
||||||
|
|
||||||
var/strength = 1 //whether the disease is of the greater or lesser variety
|
var/strength = 1 //whether the disease is of the greater or lesser variety
|
||||||
if (severity >= EVENT_LEVEL_MAJOR && prob(75))
|
if (severity >= EVENT_LEVEL_MAJOR && prob(75))
|
||||||
strength = 2
|
strength = 2
|
||||||
@@ -24,7 +24,7 @@ datum/event/viral_infection/announce()
|
|||||||
level = pick("one", "two", "three", "four")
|
level = pick("one", "two", "three", "four")
|
||||||
else
|
else
|
||||||
level = "five"
|
level = "five"
|
||||||
|
|
||||||
if (severity == EVENT_LEVEL_MAJOR || prob(60))
|
if (severity == EVENT_LEVEL_MAJOR || prob(60))
|
||||||
command_announcement.Announce("Confirmed outbreak of level [level] biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", new_sound = 'sound/AI/outbreak5.ogg')
|
command_announcement.Announce("Confirmed outbreak of level [level] biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", new_sound = 'sound/AI/outbreak5.ogg')
|
||||||
|
|
||||||
@@ -33,8 +33,10 @@ datum/event/viral_infection/start()
|
|||||||
|
|
||||||
var/list/candidates = list() //list of candidate keys
|
var/list/candidates = list() //list of candidate keys
|
||||||
for(var/mob/living/carbon/human/G in player_list)
|
for(var/mob/living/carbon/human/G in player_list)
|
||||||
if(G.client && G.stat != DEAD)
|
if(G.stat != DEAD && G.is_client_active(5))
|
||||||
candidates += G
|
var/turf/T = get_turf(G)
|
||||||
|
if(T.z in config.station_levels)
|
||||||
|
candidates += G
|
||||||
if(!candidates.len) return
|
if(!candidates.len) return
|
||||||
candidates = shuffle(candidates)//Incorporating Donkie's list shuffle
|
candidates = shuffle(candidates)//Incorporating Donkie's list shuffle
|
||||||
|
|
||||||
|
|||||||
@@ -38,7 +38,7 @@
|
|||||||
seed_name = "berry"
|
seed_name = "berry"
|
||||||
display_name = "berry bush"
|
display_name = "berry bush"
|
||||||
mutants = list("glowberries","poisonberries")
|
mutants = list("glowberries","poisonberries")
|
||||||
chems = list("nutriment" = list(1,10), "berryjuice" = list(1,10))
|
chems = list("nutriment" = list(1,10), "berryjuice" = list(10,10))
|
||||||
kitchen_tag = "berries"
|
kitchen_tag = "berries"
|
||||||
|
|
||||||
/datum/seed/berry/New()
|
/datum/seed/berry/New()
|
||||||
@@ -76,7 +76,7 @@
|
|||||||
seed_name = "poison berry"
|
seed_name = "poison berry"
|
||||||
display_name = "poison berry bush"
|
display_name = "poison berry bush"
|
||||||
mutants = list("deathberries")
|
mutants = list("deathberries")
|
||||||
chems = list("nutriment" = list(1), "toxin" = list(3,5), "poisonberryjuice" = list(3,5))
|
chems = list("nutriment" = list(1), "toxin" = list(3,5), "poisonberryjuice" = list(10,5))
|
||||||
|
|
||||||
/datum/seed/berry/poison/New()
|
/datum/seed/berry/poison/New()
|
||||||
..()
|
..()
|
||||||
@@ -138,7 +138,7 @@
|
|||||||
seed_name = "tomato"
|
seed_name = "tomato"
|
||||||
display_name = "tomato plant"
|
display_name = "tomato plant"
|
||||||
mutants = list("bluetomato","bloodtomato")
|
mutants = list("bluetomato","bloodtomato")
|
||||||
chems = list("nutriment" = list(1,10), "tomatojuice" = list(1,10))
|
chems = list("nutriment" = list(1,10), "tomatojuice" = list(10,10))
|
||||||
kitchen_tag = "tomato"
|
kitchen_tag = "tomato"
|
||||||
|
|
||||||
/datum/seed/tomato/New()
|
/datum/seed/tomato/New()
|
||||||
@@ -196,7 +196,7 @@
|
|||||||
seed_name = "bluespace tomato"
|
seed_name = "bluespace tomato"
|
||||||
display_name = "bluespace tomato plant"
|
display_name = "bluespace tomato plant"
|
||||||
mutants = null
|
mutants = null
|
||||||
chems = list("nutriment" = list(1,20), "singulo" = list(1,5))
|
chems = list("nutriment" = list(1,20), "singulo" = list(10,5))
|
||||||
|
|
||||||
/datum/seed/tomato/blue/teleport/New()
|
/datum/seed/tomato/blue/teleport/New()
|
||||||
..()
|
..()
|
||||||
@@ -544,7 +544,7 @@
|
|||||||
seed_name = "grape"
|
seed_name = "grape"
|
||||||
display_name = "grapevines"
|
display_name = "grapevines"
|
||||||
mutants = list("greengrapes")
|
mutants = list("greengrapes")
|
||||||
chems = list("nutriment" = list(1,10), "sugar" = list(1,5), "grapejuice" = list(1,10))
|
chems = list("nutriment" = list(1,10), "sugar" = list(1,5), "grapejuice" = list(10,10))
|
||||||
|
|
||||||
/datum/seed/grapes/New()
|
/datum/seed/grapes/New()
|
||||||
..()
|
..()
|
||||||
@@ -563,7 +563,7 @@
|
|||||||
seed_name = "green grape"
|
seed_name = "green grape"
|
||||||
display_name = "green grapevines"
|
display_name = "green grapevines"
|
||||||
mutants = null
|
mutants = null
|
||||||
chems = list("nutriment" = list(1,10), "kelotane" = list(3,5), "grapejuice" = list(1,10))
|
chems = list("nutriment" = list(1,10), "kelotane" = list(3,5), "grapejuice" = list(10,10))
|
||||||
|
|
||||||
/datum/seed/grapes/green/New()
|
/datum/seed/grapes/green/New()
|
||||||
..()
|
..()
|
||||||
@@ -610,7 +610,7 @@
|
|||||||
name = "banana"
|
name = "banana"
|
||||||
seed_name = "banana"
|
seed_name = "banana"
|
||||||
display_name = "banana tree"
|
display_name = "banana tree"
|
||||||
chems = list("banana" = list(1,10))
|
chems = list("banana" = list(10,10))
|
||||||
trash_type = /obj/item/weapon/bananapeel
|
trash_type = /obj/item/weapon/bananapeel
|
||||||
kitchen_tag = "banana"
|
kitchen_tag = "banana"
|
||||||
|
|
||||||
@@ -648,7 +648,7 @@
|
|||||||
name = "potato"
|
name = "potato"
|
||||||
seed_name = "potato"
|
seed_name = "potato"
|
||||||
display_name = "potatoes"
|
display_name = "potatoes"
|
||||||
chems = list("nutriment" = list(1,10), "potato" = list(1,10))
|
chems = list("nutriment" = list(1,10), "potato" = list(10,10))
|
||||||
kitchen_tag = "potato"
|
kitchen_tag = "potato"
|
||||||
|
|
||||||
/datum/seed/potato/New()
|
/datum/seed/potato/New()
|
||||||
@@ -666,7 +666,7 @@
|
|||||||
name = "soybean"
|
name = "soybean"
|
||||||
seed_name = "soybean"
|
seed_name = "soybean"
|
||||||
display_name = "soybeans"
|
display_name = "soybeans"
|
||||||
chems = list("nutriment" = list(1,20), "soymilk" = list(1,20))
|
chems = list("nutriment" = list(1,20), "soymilk" = list(10,20))
|
||||||
kitchen_tag = "soybeans"
|
kitchen_tag = "soybeans"
|
||||||
|
|
||||||
/datum/seed/soybean/New()
|
/datum/seed/soybean/New()
|
||||||
@@ -720,7 +720,7 @@
|
|||||||
name = "carrot"
|
name = "carrot"
|
||||||
seed_name = "carrot"
|
seed_name = "carrot"
|
||||||
display_name = "carrots"
|
display_name = "carrots"
|
||||||
chems = list("nutriment" = list(1,20), "imidazoline" = list(3,5), "carrotjuice" = list(1,20))
|
chems = list("nutriment" = list(1,20), "imidazoline" = list(3,5), "carrotjuice" = list(10,20))
|
||||||
kitchen_tag = "carrot"
|
kitchen_tag = "carrot"
|
||||||
|
|
||||||
/datum/seed/carrots/New()
|
/datum/seed/carrots/New()
|
||||||
@@ -790,7 +790,7 @@
|
|||||||
name = "watermelon"
|
name = "watermelon"
|
||||||
seed_name = "watermelon"
|
seed_name = "watermelon"
|
||||||
display_name = "watermelon vine"
|
display_name = "watermelon vine"
|
||||||
chems = list("nutriment" = list(1,6), "watermelonjuice" = list(1,6))
|
chems = list("nutriment" = list(1,6), "watermelonjuice" = list(10,6))
|
||||||
|
|
||||||
/datum/seed/watermelon/New()
|
/datum/seed/watermelon/New()
|
||||||
..()
|
..()
|
||||||
@@ -828,7 +828,7 @@
|
|||||||
name = "lime"
|
name = "lime"
|
||||||
seed_name = "lime"
|
seed_name = "lime"
|
||||||
display_name = "lime trees"
|
display_name = "lime trees"
|
||||||
chems = list("nutriment" = list(1,20), "limejuice" = list(1,20))
|
chems = list("nutriment" = list(1,20), "limejuice" = list(10,20))
|
||||||
kitchen_tag = "lime"
|
kitchen_tag = "lime"
|
||||||
|
|
||||||
/datum/seed/citrus/New()
|
/datum/seed/citrus/New()
|
||||||
@@ -847,7 +847,7 @@
|
|||||||
name = "lemon"
|
name = "lemon"
|
||||||
seed_name = "lemon"
|
seed_name = "lemon"
|
||||||
display_name = "lemon trees"
|
display_name = "lemon trees"
|
||||||
chems = list("nutriment" = list(1,20), "lemonjuice" = list(1,20))
|
chems = list("nutriment" = list(1,20), "lemonjuice" = list(10,20))
|
||||||
kitchen_tag = "lemon"
|
kitchen_tag = "lemon"
|
||||||
|
|
||||||
/datum/seed/citrus/lemon/New()
|
/datum/seed/citrus/lemon/New()
|
||||||
@@ -860,7 +860,7 @@
|
|||||||
seed_name = "orange"
|
seed_name = "orange"
|
||||||
display_name = "orange trees"
|
display_name = "orange trees"
|
||||||
kitchen_tag = "orange"
|
kitchen_tag = "orange"
|
||||||
chems = list("nutriment" = list(1,20), "orangejuice" = list(1,20))
|
chems = list("nutriment" = list(1,20), "orangejuice" = list(10,20))
|
||||||
|
|
||||||
/datum/seed/citrus/orange/New()
|
/datum/seed/citrus/orange/New()
|
||||||
..()
|
..()
|
||||||
@@ -906,7 +906,7 @@
|
|||||||
seed_name = "cherry"
|
seed_name = "cherry"
|
||||||
seed_noun = "pits"
|
seed_noun = "pits"
|
||||||
display_name = "cherry tree"
|
display_name = "cherry tree"
|
||||||
chems = list("nutriment" = list(1,15), "sugar" = list(1,15), "cherryjelly" = list(1,15))
|
chems = list("nutriment" = list(1,15), "sugar" = list(1,15), "cherryjelly" = list(10,15))
|
||||||
kitchen_tag = "cherries"
|
kitchen_tag = "cherries"
|
||||||
|
|
||||||
/datum/seed/cherries/New()
|
/datum/seed/cherries/New()
|
||||||
|
|||||||
@@ -128,12 +128,10 @@
|
|||||||
|
|
||||||
return verb
|
return verb
|
||||||
|
|
||||||
/mob/living/carbon/human/handle_speech_problems(var/message, var/verb)
|
/mob/living/carbon/human/proc/handle_speech_problems(var/message, var/verb = "says")
|
||||||
if(!speech_problem_flag)
|
|
||||||
return ..()
|
|
||||||
|
|
||||||
var/list/returns[3]
|
var/list/returns[3]
|
||||||
speech_problem_flag = 0
|
var/handled = 0
|
||||||
if(silent || (sdisabilities & MUTE))
|
if(silent || (sdisabilities & MUTE))
|
||||||
message = ""
|
message = ""
|
||||||
speech_problem_flag = 1
|
speech_problem_flag = 1
|
||||||
|
|||||||
@@ -615,3 +615,7 @@ proc/is_blind(A)
|
|||||||
|
|
||||||
eyeobj.setLoc(C)
|
eyeobj.setLoc(C)
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
|
// Returns true if the mob has a client which has been active in the last given X minutes.
|
||||||
|
/mob/proc/is_client_active(var/active = 1)
|
||||||
|
return client && client.inactivity < active MINUTES
|
||||||
|
|||||||
5
html/changelogs/PsiOmegaDelta-DirtyEngineers.yml
Normal file
5
html/changelogs/PsiOmegaDelta-DirtyEngineers.yml
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
author: PsiOmegaDelta
|
||||||
|
delete-after: True
|
||||||
|
|
||||||
|
changes:
|
||||||
|
- bugfix: "Shower curtains no longer lose their default color upon being washed."
|
||||||
5
html/changelogs/PsiOmegaDelta-GoingViral.yml
Normal file
5
html/changelogs/PsiOmegaDelta-GoingViral.yml
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
author: PsiOmegaDelta
|
||||||
|
delete-after: True
|
||||||
|
|
||||||
|
changes:
|
||||||
|
- bugfix: "The virus event will now only infect mobs on the station, currently controlled by player that has been active in the last 5 minutes."
|
||||||
5
html/changelogs/Yoshax-MoreFruitJuice.yml
Normal file
5
html/changelogs/Yoshax-MoreFruitJuice.yml
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
author: Yoshax
|
||||||
|
delete-after: True
|
||||||
|
|
||||||
|
changes:
|
||||||
|
- tweak: "Adjusts fruits and other stuff to have a minmum of 10 units of juice and stuff."
|
||||||
1706
maps/exodus-1.dmm
1706
maps/exodus-1.dmm
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user