From 329ba4d823d4c4311f1c359a5261a61215bb94ff Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Fri, 17 Jul 2020 12:53:43 -0700 Subject: [PATCH 01/20] Update gas_mixture.dm --- code/modules/atmospherics/gasmixtures/gas_mixture.dm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index 7af823e8a9..d4f571af6b 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -43,6 +43,11 @@ GLOBAL_LIST_INIT(meta_gas_fusions, meta_gas_fusion_list()) var/list/dummy = get_gases() for(var/gas in dummy) dummy[gas] = get_moles(gas) + dummy["TEMP"] = return_temperature() + dummy["PRESSURE"] = return_pressure() + dummy["HEAT CAPACITY"] = heat_capacity() + dummy["TOTAL MOLES"] = total_moles() + dummy["VOLUME"] = return_volume() return debug_variable("gases (READ ONLY)", dummy, 0, src) /datum/gas_mixture/vv_get_dropdown() From f1abe0651bc0b81a08899e81dcbb9468177e90af Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Fri, 17 Jul 2020 12:54:48 -0700 Subject: [PATCH 02/20] Update gas_mixture.dm --- code/modules/atmospherics/gasmixtures/gas_mixture.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index d4f571af6b..069a91ce13 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -48,6 +48,7 @@ GLOBAL_LIST_INIT(meta_gas_fusions, meta_gas_fusion_list()) dummy["HEAT CAPACITY"] = heat_capacity() dummy["TOTAL MOLES"] = total_moles() dummy["VOLUME"] = return_volume() + dummy["THERMAL ENERGY"] = themral_energy() return debug_variable("gases (READ ONLY)", dummy, 0, src) /datum/gas_mixture/vv_get_dropdown() From 20381927e4177d35d5facc240bb9fd6ea6957725 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sat, 18 Jul 2020 19:18:42 -0700 Subject: [PATCH 03/20] Update projectile.dm --- code/modules/projectiles/projectile.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index 7c988ca730..d0c8a1e8d6 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -49,7 +49,7 @@ var/pixel_move_interrupted = FALSE /// Pixels moved per second. - var/pixels_per_second = TILES_TO_PIXELS(12.5) + var/pixels_per_second = TILES_TO_PIXELS(17.5) /// The number of pixels we increment by. THIS IS NOT SPEED, DO NOT TOUCH THIS UNLESS YOU KNOW WHAT YOU ARE DOING. In general, lower values means more linetrace accuracy up to a point at cost of performance. var/pixel_increment_amount From 512174b782c156a0a976708f0beef5f8b8d282b9 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 19 Jul 2020 20:07:16 -0700 Subject: [PATCH 04/20] Update subsystems.dm --- code/__DEFINES/subsystems.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/__DEFINES/subsystems.dm b/code/__DEFINES/subsystems.dm index bf76f8a523..4792f16ef3 100644 --- a/code/__DEFINES/subsystems.dm +++ b/code/__DEFINES/subsystems.dm @@ -152,11 +152,11 @@ var/list/po = A.priority_overlays;\ if(LAZYLEN(rm)){\ A.overlays -= rm;\ - rm.Cut();\ + rm = null;\ }\ if(LAZYLEN(ad)){\ A.overlays |= ad;\ - ad.Cut();\ + ad = null;\ }\ if(LAZYLEN(po)){\ A.overlays |= po;\ From 6ac765eca5d492427181c04b457e20eba6202b3c Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 19 Jul 2020 20:08:56 -0700 Subject: [PATCH 05/20] Update subsystems.dm --- code/__DEFINES/subsystems.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/__DEFINES/subsystems.dm b/code/__DEFINES/subsystems.dm index 4792f16ef3..88f34e7080 100644 --- a/code/__DEFINES/subsystems.dm +++ b/code/__DEFINES/subsystems.dm @@ -161,5 +161,8 @@ if(LAZYLEN(po)){\ A.overlays |= po;\ }\ + else{\ + A.priority_overlays = null;\ + }\ A.flags_1 &= ~OVERLAY_QUEUED_1;\ } From 5c189b310e95159beb9257c6ee5a58ed5c18cc9b Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Mon, 20 Jul 2020 15:43:48 -0700 Subject: [PATCH 06/20] ok, snaxi --- code/modules/power/apc.dm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 19e32bae0b..3f9ca4f1b7 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -935,6 +935,9 @@ return "[area.name] : [equipment]/[lighting]/[environ] ([lastused_equip+lastused_light+lastused_environ]) : [cell? cell.percent() : "N/C"] ([charging])" /obj/machinery/power/apc/proc/update() + var/old_light = area.power_light + var/old_equip = area.power_equip + var/old_environ = area.power_environ if(operating && !shorted && !failure_timer) area.power_light = (lighting > 1) area.power_equip = (equipment > 1) @@ -943,7 +946,8 @@ area.power_light = FALSE area.power_equip = FALSE area.power_environ = FALSE - area.power_change() + if(old_light != area.power_light || old_equip != area.power_equip || old_environ != area.power_environ) + area.power_change() /obj/machinery/power/apc/proc/can_use(mob/user, loud = 0) //used by attack_hand() and Topic() if(IsAdminGhost(user)) From 944a91e44dd179a4c7f6df2aba5d3b3569303135 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Mon, 20 Jul 2020 15:55:41 -0700 Subject: [PATCH 07/20] Update subsystems.dm --- code/__DEFINES/subsystems.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/__DEFINES/subsystems.dm b/code/__DEFINES/subsystems.dm index 88f34e7080..a6bd7a1c8e 100644 --- a/code/__DEFINES/subsystems.dm +++ b/code/__DEFINES/subsystems.dm @@ -152,11 +152,11 @@ var/list/po = A.priority_overlays;\ if(LAZYLEN(rm)){\ A.overlays -= rm;\ - rm = null;\ + A.remove_overlays = null;\ }\ if(LAZYLEN(ad)){\ A.overlays |= ad;\ - ad = null;\ + A.add_overlays = null;\ }\ if(LAZYLEN(po)){\ A.overlays |= po;\ From 6e08865b367406e10e5442f6a3ae3f64dd97ff98 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Mon, 20 Jul 2020 17:30:35 -0700 Subject: [PATCH 08/20] Update topic.dm --- code/modules/admin/topic.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 042a6e0fe9..1e3d1e93e3 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -863,7 +863,7 @@ if(jobban_isbanned(M, ROLE_TRAITOR) || isbanned_dept) dat += "Traitor" else - dat += "Traitor" + dat += "Traitor" //Changeling if(jobban_isbanned(M, ROLE_CHANGELING) || isbanned_dept) From 4832069181b63b1f2901a87df77a3c6a23828540 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Mon, 20 Jul 2020 18:57:09 -0700 Subject: [PATCH 09/20] Update preferences_savefile.dm --- code/modules/client/preferences_savefile.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 440ee1fbc1..27019df500 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -224,6 +224,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car var/needs_update = savefile_needs_update(S) if(needs_update == -2) //fatal, can't load any data return 0 + + . = TRUE //general preferences S["ooccolor"] >> ooccolor @@ -440,6 +442,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car if(needs_update == -2) //fatal, can't load any data return 0 + . = TRUE + //Species var/species_id S["species"] >> species_id From 87d53957bf1f0af3adff96d9e2ff86681c0614e8 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Mon, 20 Jul 2020 20:09:13 -0700 Subject: [PATCH 10/20] sigh --- code/modules/client/preferences.dm | 56 +++++++++---------- code/modules/client/preferences_savefile.dm | 26 ++++----- .../modules/client/preferences_savefile.dm | 8 +-- 3 files changed, 45 insertions(+), 45 deletions(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 8b4c28a1f4..5607654d5c 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -83,24 +83,24 @@ GLOBAL_LIST_EMPTY(preferences_datums) var/gender = MALE //gender of character (well duh) var/age = 30 //age of character var/underwear = "Nude" //underwear type - var/undie_color = "FFF" + var/undie_color = "FFFFFF" var/undershirt = "Nude" //undershirt type - var/shirt_color = "FFF" + var/shirt_color = "FFFFFF" var/socks = "Nude" //socks type - var/socks_color = "FFF" + var/socks_color = "FFFFFF" var/backbag = DBACKPACK //backpack type var/jumpsuit_style = PREF_SUIT //suit/skirt var/hair_style = "Bald" //Hair type - var/hair_color = "000" //Hair color + var/hair_color = "000000" //Hair color var/facial_hair_style = "Shaved" //Face hair type - var/facial_hair_color = "000" //Facial hair color + var/facial_hair_color = "000000" //Facial hair color var/skin_tone = "caucasian1" //Skin color var/use_custom_skin_tone = FALSE - var/eye_color = "000" //Eye color + var/eye_color = "000000" //Eye color var/datum/species/pref_species = new /datum/species/human() //Mutant race - var/list/features = list("mcolor" = "FFF", - "mcolor2" = "FFF", - "mcolor3" = "FFF", + var/list/features = list("mcolor" = "FFFFFF", + "mcolor2" = "FFFFFF", + "mcolor3" = "FFFFFF", "tail_lizard" = "Smooth", "tail_human" = "None", "snout" = "Round", @@ -131,23 +131,23 @@ GLOBAL_LIST_EMPTY(preferences_datums) "cock_shape" = DEF_COCK_SHAPE, "cock_length" = COCK_SIZE_DEF, "cock_diameter_ratio" = COCK_DIAMETER_RATIO_DEF, - "cock_color" = "fff", + "cock_color" = "ffffff", "cock_taur" = FALSE, "has_balls" = FALSE, - "balls_color" = "fff", + "balls_color" = "ffffff", "balls_shape" = DEF_BALLS_SHAPE, "balls_size" = BALLS_SIZE_DEF, "balls_cum_rate" = CUM_RATE, "balls_cum_mult" = CUM_RATE_MULT, "balls_efficiency" = CUM_EFFICIENCY, "has_breasts" = FALSE, - "breasts_color" = "fff", + "breasts_color" = "ffffff", "breasts_size" = BREASTS_SIZE_DEF, "breasts_shape" = DEF_BREASTS_SHAPE, "breasts_producing" = FALSE, "has_vag" = FALSE, "vag_shape" = DEF_VAGINA_SHAPE, - "vag_color" = "fff", + "vag_color" = "ffffff", "has_womb" = FALSE, "balls_visibility" = GEN_VISIBLE_NO_UNDIES, "breasts_visibility"= GEN_VISIBLE_NO_UNDIES, @@ -1697,7 +1697,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if("hair") var/new_hair = input(user, "Choose your character's hair colour:", "Character Preference","#"+hair_color) as color|null if(new_hair) - hair_color = sanitize_hexcolor(new_hair) + hair_color = sanitize_hexcolor(new_hair, 6) if("hair_style") var/new_hair_style @@ -1714,7 +1714,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if("facial") var/new_facial = input(user, "Choose your character's facial-hair colour:", "Character Preference","#"+facial_hair_color) as color|null if(new_facial) - facial_hair_color = sanitize_hexcolor(new_facial) + facial_hair_color = sanitize_hexcolor(new_facial, 6) if("facial_hair_style") var/new_facial_hair_style @@ -1739,7 +1739,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if("undie_color") var/n_undie_color = input(user, "Choose your underwear's color.", "Character Preference", "#[undie_color]") as color|null if(n_undie_color) - undie_color = sanitize_hexcolor(n_undie_color) + undie_color = sanitize_hexcolor(n_undie_color, 6) if("undershirt") var/new_undershirt = input(user, "Choose your character's undershirt:", "Character Preference") as null|anything in GLOB.undershirt_list @@ -1749,7 +1749,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if("shirt_color") var/n_shirt_color = input(user, "Choose your undershirt's color.", "Character Preference", "#[shirt_color]") as color|null if(n_shirt_color) - shirt_color = sanitize_hexcolor(n_shirt_color) + shirt_color = sanitize_hexcolor(n_shirt_color, 6) if("socks") var/new_socks = input(user, "Choose your character's socks:", "Character Preference") as null|anything in GLOB.socks_list @@ -1759,12 +1759,12 @@ GLOBAL_LIST_EMPTY(preferences_datums) if("socks_color") var/n_socks_color = input(user, "Choose your socks' color.", "Character Preference", "#[socks_color]") as color|null if(n_socks_color) - socks_color = sanitize_hexcolor(n_socks_color) + socks_color = sanitize_hexcolor(n_socks_color, 6) if("eyes") var/new_eyes = input(user, "Choose your character's eye colour:", "Character Preference","#"+eye_color) as color|null if(new_eyes) - eye_color = sanitize_hexcolor(new_eyes) + eye_color = sanitize_hexcolor(new_eyes, 6) if("species") var/result = input(user, "Select a species", "Species Selection") as null|anything in GLOB.roundstart_race_names @@ -1809,7 +1809,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(new_mutantcolor == "#000000") features["mcolor"] = pref_species.default_color else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin - features["mcolor"] = sanitize_hexcolor(new_mutantcolor) + features["mcolor"] = sanitize_hexcolor(new_mutantcolor, 6) else to_chat(user, "Invalid color. Your color is not bright enough.") @@ -1820,7 +1820,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(new_mutantcolor == "#000000") features["mcolor2"] = pref_species.default_color else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin - features["mcolor2"] = sanitize_hexcolor(new_mutantcolor) + features["mcolor2"] = sanitize_hexcolor(new_mutantcolor, 6) else to_chat(user, "Invalid color. Your color is not bright enough.") @@ -1831,7 +1831,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(new_mutantcolor == "#000000") features["mcolor3"] = pref_species.default_color else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin - features["mcolor3"] = sanitize_hexcolor(new_mutantcolor) + features["mcolor3"] = sanitize_hexcolor(new_mutantcolor, 6) else to_chat(user, "Invalid color. Your color is not bright enough.") @@ -1959,7 +1959,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if (new_horn_color == "#000000") features["horns_color"] = "85615A" else - features["horns_color"] = sanitize_hexcolor(new_horn_color) + features["horns_color"] = sanitize_hexcolor(new_horn_color, 6) if("wings") var/new_wings @@ -1973,7 +1973,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if (new_wing_color == "#000000") features["wings_color"] = "#FFFFFF" else - features["wings_color"] = sanitize_hexcolor(new_wing_color) + features["wings_color"] = sanitize_hexcolor(new_wing_color, 6) if("frills") var/new_frills @@ -2147,7 +2147,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(new_cockcolor == "#000000") features["cock_color"] = pref_species.default_color else if(ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) - features["cock_color"] = sanitize_hexcolor(new_cockcolor) + features["cock_color"] = sanitize_hexcolor(new_cockcolor, 6) else to_chat(user,"Invalid color. Your color is not bright enough.") @@ -2187,7 +2187,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(new_ballscolor == "#000000") features["balls_color"] = pref_species.default_color else if(ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) - features["balls_color"] = sanitize_hexcolor(new_ballscolor) + features["balls_color"] = sanitize_hexcolor(new_ballscolor, 6) else to_chat(user,"Invalid color. Your color is not bright enough.") @@ -2214,7 +2214,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(new_breasts_color == "#000000") features["breasts_color"] = pref_species.default_color else if(ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) - features["breasts_color"] = sanitize_hexcolor(new_breasts_color) + features["breasts_color"] = sanitize_hexcolor(new_breasts_color, 6) else to_chat(user,"Invalid color. Your color is not bright enough.") @@ -2236,7 +2236,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(new_vagcolor == "#000000") features["vag_color"] = pref_species.default_color else if(ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) - features["vag_color"] = sanitize_hexcolor(new_vagcolor) + features["vag_color"] = sanitize_hexcolor(new_vagcolor, 6) else to_chat(user,"Invalid color. Your color is not bright enough.") diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 440ee1fbc1..943be5dbf3 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -623,14 +623,14 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car facial_hair_style = sanitize_inlist(facial_hair_style, GLOB.facial_hair_styles_list) underwear = sanitize_inlist(underwear, GLOB.underwear_list) undershirt = sanitize_inlist(undershirt, GLOB.undershirt_list) - undie_color = sanitize_hexcolor(undie_color, 3, FALSE, initial(undie_color)) - shirt_color = sanitize_hexcolor(shirt_color, 3, FALSE, initial(shirt_color)) + undie_color = sanitize_hexcolor(undie_color, 6, FALSE, initial(undie_color)) + shirt_color = sanitize_hexcolor(shirt_color, 6, FALSE, initial(shirt_color)) socks = sanitize_inlist(socks, GLOB.socks_list) - socks_color = sanitize_hexcolor(socks_color, 3, FALSE, initial(socks_color)) + socks_color = sanitize_hexcolor(socks_color, 6, FALSE, initial(socks_color)) age = sanitize_integer(age, AGE_MIN, AGE_MAX, initial(age)) - hair_color = sanitize_hexcolor(hair_color, 3, 0) - facial_hair_color = sanitize_hexcolor(facial_hair_color, 3, 0) - eye_color = sanitize_hexcolor(eye_color, 3, 0) + hair_color = sanitize_hexcolor(hair_color, 6, FALSE) + facial_hair_color = sanitize_hexcolor(facial_hair_color, 6, FALSE) + eye_color = sanitize_hexcolor(eye_color, 6, FALSE) var/static/allow_custom_skintones if(isnull(allow_custom_skintones)) @@ -641,12 +641,12 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car else skin_tone = sanitize_inlist(skin_tone, GLOB.skin_tones - GLOB.nonstandard_skin_tones, initial(skin_tone)) - features["horns_color"] = sanitize_hexcolor(features["horns_color"], 3, FALSE, "85615a") - features["wings_color"] = sanitize_hexcolor(features["wings_color"], 3, FALSE, "FFFFFF") + features["horns_color"] = sanitize_hexcolor(features["horns_color"], 6, FALSE, "85615a") + features["wings_color"] = sanitize_hexcolor(features["wings_color"], 6, FALSE, "FFFFFF") backbag = sanitize_inlist(backbag, GLOB.backbaglist, initial(backbag)) jumpsuit_style = sanitize_inlist(jumpsuit_style, GLOB.jumpsuitlist, initial(jumpsuit_style)) uplink_spawn_loc = sanitize_inlist(uplink_spawn_loc, GLOB.uplink_spawn_loc_list, initial(uplink_spawn_loc)) - features["mcolor"] = sanitize_hexcolor(features["mcolor"], 3, 0) + features["mcolor"] = sanitize_hexcolor(features["mcolor"], 6, FALSE) features["tail_lizard"] = sanitize_inlist(features["tail_lizard"], GLOB.tails_list_lizard) features["tail_human"] = sanitize_inlist(features["tail_human"], GLOB.tails_list_human) features["snout"] = sanitize_inlist(features["snout"], GLOB.snouts_list) @@ -690,10 +690,10 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car features["cock_shape"] = sanitize_inlist(features["cock_shape"], GLOB.cock_shapes_list, DEF_COCK_SHAPE) features["balls_shape"] = sanitize_inlist(features["balls_shape"], GLOB.balls_shapes_list, DEF_BALLS_SHAPE) features["vag_shape"] = sanitize_inlist(features["vag_shape"], GLOB.vagina_shapes_list, DEF_VAGINA_SHAPE) - features["breasts_color"] = sanitize_hexcolor(features["breasts_color"], 3, FALSE, "FFF") - features["cock_color"] = sanitize_hexcolor(features["cock_color"], 3, FALSE, "FFF") - features["balls_color"] = sanitize_hexcolor(features["balls_color"], 3, FALSE, "FFF") - features["vag_color"] = sanitize_hexcolor(features["vag_color"], 3, FALSE, "FFF") + features["breasts_color"] = sanitize_hexcolor(features["breasts_color"], 6, FALSE, "FFFFFF") + features["cock_color"] = sanitize_hexcolor(features["cock_color"], 6, FALSE, "FFFFFF") + features["balls_color"] = sanitize_hexcolor(features["balls_color"], 6, FALSE, "FFFFFF") + features["vag_color"] = sanitize_hexcolor(features["vag_color"], 6, FALSE, "FFFFFF") features["breasts_visibility"] = sanitize_inlist(features["breasts_visibility"], safe_visibilities, GEN_VISIBLE_NO_UNDIES) features["cock_visibility"] = sanitize_inlist(features["cock_visibility"], safe_visibilities, GEN_VISIBLE_NO_UNDIES) features["balls_visibility"] = sanitize_inlist(features["balls_visibility"], safe_visibilities, GEN_VISIBLE_NO_UNDIES) diff --git a/modular_citadel/code/modules/client/preferences_savefile.dm b/modular_citadel/code/modules/client/preferences_savefile.dm index c747c4cf32..bbd71d22e3 100644 --- a/modular_citadel/code/modules/client/preferences_savefile.dm +++ b/modular_citadel/code/modules/client/preferences_savefile.dm @@ -7,12 +7,12 @@ features["ipc_antenna"] = sanitize_inlist(features["ipc_antenna"], GLOB.ipc_antennas_list) //Citadel features["flavor_text"] = sanitize_text(features["flavor_text"], initial(features["flavor_text"])) - if(!features["mcolor2"] || features["mcolor"] == "#000") + if(!features["mcolor2"] || features["mcolor"] == "#000000") features["mcolor2"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F") - if(!features["mcolor3"] || features["mcolor"] == "#000") + if(!features["mcolor3"] || features["mcolor"] == "#000000") features["mcolor3"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F") - features["mcolor2"] = sanitize_hexcolor(features["mcolor2"], 3, 0) - features["mcolor3"] = sanitize_hexcolor(features["mcolor3"], 3, 0) + features["mcolor2"] = sanitize_hexcolor(features["mcolor2"], 6, FALSE) + features["mcolor3"] = sanitize_hexcolor(features["mcolor3"], 6, FALSE) /datum/preferences/proc/cit_character_pref_save(savefile/S) From 5347b9f6a5e19b8623fe9e0ed7a1e233c42307af Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Mon, 20 Jul 2020 21:33:03 -0700 Subject: [PATCH 11/20] Update keybindings.dm --- code/__DEFINES/admin/keybindings.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/__DEFINES/admin/keybindings.dm b/code/__DEFINES/admin/keybindings.dm index 3efc26c7d5..fcfe7c5e58 100644 --- a/code/__DEFINES/admin/keybindings.dm +++ b/code/__DEFINES/admin/keybindings.dm @@ -1,6 +1,6 @@ // Defines for managed input/keybinding system. /// Max length of a keypress command before it's considered to be a forged packet/bogus command -#define MAX_KEYPRESS_COMMANDLENGTH 16 +#define MAX_KEYPRESS_COMMANDLENGTH 32 /// Maximum keys that can be bound to one button #define MAX_COMMANDS_PER_KEY 5 /// Maximum keys per keybind From 9fc669b4ea7725f99256a6ae6966d55f601187f1 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 22 Jul 2020 02:09:49 -0700 Subject: [PATCH 12/20] Update changeling.dm --- code/modules/antagonists/changeling/changeling.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/antagonists/changeling/changeling.dm b/code/modules/antagonists/changeling/changeling.dm index 3267f2bdc1..d06ebe9d9d 100644 --- a/code/modules/antagonists/changeling/changeling.dm +++ b/code/modules/antagonists/changeling/changeling.dm @@ -20,6 +20,8 @@ var/datum/changelingprofile/first_prof = null var/dna_max = 6 //How many extra DNA strands the changeling can store for transformation. var/absorbedcount = 0 + /// did we get succed by another changeling + var/hostile_absorbed = FALSE var/trueabsorbs = 0//dna gained using absorb, not dna sting var/chem_charges = 20 var/chem_storage = 75 From 30e7483e893e51fbbaa9f2b6d88d9d6418fa322d Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 22 Jul 2020 02:10:24 -0700 Subject: [PATCH 13/20] Update absorb.dm --- code/modules/antagonists/changeling/powers/absorb.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/antagonists/changeling/powers/absorb.dm b/code/modules/antagonists/changeling/powers/absorb.dm index 3e2ff6f3dd..208fefee70 100644 --- a/code/modules/antagonists/changeling/powers/absorb.dm +++ b/code/modules/antagonists/changeling/powers/absorb.dm @@ -92,7 +92,7 @@ var/datum/antagonist/changeling/target_ling = target.mind.has_antag_datum(/datum/antagonist/changeling) - if(target_ling)//If the target was a changeling, suck out their extra juice and objective points! + if(target_ling && !target_ling.hostile_absorbed)//If the target was a changeling, suck out their extra juice and objective points! to_chat(user, "[target] was one of us. We have absorbed their power.") target_ling.remove_changeling_powers() changeling.geneticpoints += round(target_ling.geneticpoints/2) @@ -102,6 +102,7 @@ changeling.chem_storage += round(target_ling.chem_storage/2) changeling.chem_charges += min(target_ling.chem_charges, changeling.chem_storage) target_ling.chem_charges = 0 + target_ling.hostile_absorbed = TRUE target_ling.chem_storage = 0 changeling.absorbedcount += (target_ling.absorbedcount) target_ling.stored_profiles.len = 1 From 919edfa2fd08cf940d0d6218466d892381415821 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 22 Jul 2020 02:11:20 -0700 Subject: [PATCH 14/20] Update revive.dm --- code/modules/antagonists/changeling/powers/revive.dm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/code/modules/antagonists/changeling/powers/revive.dm b/code/modules/antagonists/changeling/powers/revive.dm index 6c2220648d..f98c2e8ee4 100644 --- a/code/modules/antagonists/changeling/powers/revive.dm +++ b/code/modules/antagonists/changeling/powers/revive.dm @@ -36,8 +36,10 @@ . = ..() if(!.) return - - if(HAS_TRAIT(user, CHANGELING_DRAIN) || ((user.stat != DEAD) && !(HAS_TRAIT(user, TRAIT_DEATHCOMA)))) + var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist_changeling) + if(!changeling) + return FALSE + if(changeling.hostile_absorbed || ((user.stat != DEAD) && !(HAS_TRAIT(user, TRAIT_DEATHCOMA)))) var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist/changeling) changeling.purchasedpowers -= src return FALSE From 0acf7b82d5a35f852fad55b6522fe7dcd5e228f1 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 22 Jul 2020 02:20:10 -0700 Subject: [PATCH 15/20] Update revive.dm --- code/modules/antagonists/changeling/powers/revive.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/antagonists/changeling/powers/revive.dm b/code/modules/antagonists/changeling/powers/revive.dm index f98c2e8ee4..e7e83a6796 100644 --- a/code/modules/antagonists/changeling/powers/revive.dm +++ b/code/modules/antagonists/changeling/powers/revive.dm @@ -36,7 +36,7 @@ . = ..() if(!.) return - var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist_changeling) + var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist/changeling) if(!changeling) return FALSE if(changeling.hostile_absorbed || ((user.stat != DEAD) && !(HAS_TRAIT(user, TRAIT_DEATHCOMA)))) From e0e2cd561a6d59d776ee6d69cab3615a0303ee08 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 22 Jul 2020 11:38:26 -0700 Subject: [PATCH 16/20] Update revive.dm --- code/modules/antagonists/changeling/powers/revive.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/antagonists/changeling/powers/revive.dm b/code/modules/antagonists/changeling/powers/revive.dm index e7e83a6796..f193fb6736 100644 --- a/code/modules/antagonists/changeling/powers/revive.dm +++ b/code/modules/antagonists/changeling/powers/revive.dm @@ -40,7 +40,6 @@ if(!changeling) return FALSE if(changeling.hostile_absorbed || ((user.stat != DEAD) && !(HAS_TRAIT(user, TRAIT_DEATHCOMA)))) - var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist/changeling) changeling.purchasedpowers -= src return FALSE From 66e4d98141fdb6d7b6155ba3a7a023dc8c959954 Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Wed, 22 Jul 2020 16:59:51 -0700 Subject: [PATCH 17/20] Update datacore.dm --- code/datums/datacore.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 94940b3855..cf942f077f 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -78,6 +78,8 @@ /datum/datacore/proc/manifest() for(var/mob/dead/new_player/N in GLOB.player_list) + if(!N?.client) + continue if(N.new_character) log_manifest(N.ckey,N.new_character.mind,N.new_character) if(ishuman(N.new_character)) From 55754023baf97174c479d119da9b9267182ed1bb Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Thu, 23 Jul 2020 10:32:21 -0700 Subject: [PATCH 18/20] Update gas_mixture.dm --- code/modules/atmospherics/gasmixtures/gas_mixture.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index 069a91ce13..e86b249be6 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -48,7 +48,7 @@ GLOBAL_LIST_INIT(meta_gas_fusions, meta_gas_fusion_list()) dummy["HEAT CAPACITY"] = heat_capacity() dummy["TOTAL MOLES"] = total_moles() dummy["VOLUME"] = return_volume() - dummy["THERMAL ENERGY"] = themral_energy() + dummy["THERMAL ENERGY"] = thermal_energy() return debug_variable("gases (READ ONLY)", dummy, 0, src) /datum/gas_mixture/vv_get_dropdown() From 2c4ed01b756c475a0c0f7f08c193f0981d211325 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 23 Jul 2020 13:28:54 -0500 Subject: [PATCH 19/20] Automatic changelog generation for PR #12848 [ci skip] --- html/changelogs/AutoChangeLog-pr-12848.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12848.yml diff --git a/html/changelogs/AutoChangeLog-pr-12848.yml b/html/changelogs/AutoChangeLog-pr-12848.yml new file mode 100644 index 0000000000..0e9bc70dbb --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12848.yml @@ -0,0 +1,4 @@ +author: "silicons" +delete-after: True +changes: + - tweak: "sanitization now doesn't cut off 15.7 or something million possible colors from character preferences (instead of only allowing 16 values for R G and B, it now allows 256 each)" From 464402ec6d729a3d0b93ba6b247ca2522b7a4375 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 23 Jul 2020 13:41:20 -0500 Subject: [PATCH 20/20] Automatic changelog generation for PR #12821 [ci skip] --- html/changelogs/AutoChangeLog-pr-12821.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-12821.yml diff --git a/html/changelogs/AutoChangeLog-pr-12821.yml b/html/changelogs/AutoChangeLog-pr-12821.yml new file mode 100644 index 0000000000..7861bbc536 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-12821.yml @@ -0,0 +1,4 @@ +author: "silicons" +delete-after: True +changes: + - balance: "projectiles are by default 17.5 tiles per second instead of 12.5"