From bc4e4ca9f33b7c04cb66dc2c2d4ec2ee8b69cfce Mon Sep 17 00:00:00 2001 From: Ghom <42542238+Ghommie@users.noreply.github.com> Date: Thu, 28 May 2020 09:35:40 +0200 Subject: [PATCH 01/10] Fixing an issue with wooden barricades / wood sheets interaction (#12360) --- code/game/machinery/deployable.dm | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index 67113fcf78..a2d3cccc35 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -70,14 +70,13 @@ if(W.amount < 5) to_chat(user, "You need at least five wooden planks to make a wall!") return - else - to_chat(user, "You start adding [I] to [src]...") - if(do_after(user, 50, target=src)) - W.use(5) - var/turf/T = get_turf(src) - T.PlaceOnTop(/turf/closed/wall/mineral/wood/nonmetal) - qdel(src) - return + to_chat(user, "You start adding [I] to [src]...") + if(do_after(user, 50, target=src)) + W.use(5) + var/turf/T = get_turf(src) + T.PlaceOnTop(/turf/closed/wall/mineral/wood/nonmetal) + qdel(src) + return return ..() From 8e945bca4ded78fe5595932d7b5a02ad04d93e6e Mon Sep 17 00:00:00 2001 From: Putnam3145 Date: Thu, 28 May 2020 00:36:51 -0700 Subject: [PATCH 02/10] Made restoring roundstart air restore the archive too (#12367) --- 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 93927f4420..58e826b36d 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -244,6 +244,7 @@ GLOBAL_LIST_INIT(meta_gas_fusions, meta_gas_fusion_list()) if(!ispath(path)) path = gas_id2path(path) //a lot of these strings can't have embedded expressions (especially for mappers), so support for IDs needs to stick around gases[path] = text2num(gas[id]) + archive() return 1 /datum/gas_mixture/share(datum/gas_mixture/sharer, atmos_adjacent_turfs = 4) From cea958f822e38dadebe0416ea1420a38ac46215c Mon Sep 17 00:00:00 2001 From: Ghom <42542238+Ghommie@users.noreply.github.com> Date: Thu, 28 May 2020 09:36:57 +0200 Subject: [PATCH 03/10] Fixing various issues. (#12368) * Fixing various issues. * Lights. --- code/datums/dna.dm | 22 +++++----- code/datums/wires/apc.dm | 2 + code/game/machinery/doors/airlock.dm | 10 ++++- code/game/objects/items/devices/paicard.dm | 2 +- .../items/implants/implant_abductor.dm | 44 ++++++++----------- code/modules/power/apc.dm | 1 + code/modules/power/lighting.dm | 7 ++- 7 files changed, 47 insertions(+), 41 deletions(-) diff --git a/code/datums/dna.dm b/code/datums/dna.dm index 747db3d6ce..ed5104e296 100644 --- a/code/datums/dna.dm +++ b/code/datums/dna.dm @@ -391,16 +391,6 @@ /mob/living/carbon/human/proc/hardset_dna(ui, list/mutation_index, newreal_name, newblood_type, datum/species/mrace, newfeatures) - if(newfeatures) - var/old_size = dna.features["body_size"] - dna.features = newfeatures - dna.update_body_size(old_size) - - if(mrace) - var/datum/species/newrace = new mrace.type - newrace.copy_properties_from(mrace) - set_species(newrace, icon_update=0) - if(newreal_name) real_name = newreal_name dna.generate_unique_enzymes() @@ -410,7 +400,17 @@ if(ui) dna.uni_identity = ui - updateappearance(icon_update=0) + updateappearance(icon_update=FALSE) + + if(newfeatures) + var/old_size = dna.features["body_size"] + dna.features = newfeatures + dna.update_body_size(old_size) + + if(mrace) + var/datum/species/newrace = new mrace.type + newrace.copy_properties_from(mrace) + set_species(newrace, icon_update=FALSE) if(LAZYLEN(mutation_index)) dna.mutation_index = mutation_index.Copy() diff --git a/code/datums/wires/apc.dm b/code/datums/wires/apc.dm index 997c77aa51..19b2b8dda8 100644 --- a/code/datums/wires/apc.dm +++ b/code/datums/wires/apc.dm @@ -30,6 +30,7 @@ if(WIRE_POWER1, WIRE_POWER2) // Short for a long while. if(!A.shorted) A.shorted = TRUE + A.update() addtimer(CALLBACK(A, /obj/machinery/power/apc.proc/reset, wire), 1200) if(WIRE_IDSCAN) // Unlock for a little while. A.locked = FALSE @@ -49,6 +50,7 @@ else A.shorted = TRUE A.shock(usr, 50) + A.update() if(WIRE_AI) // Disable AI control. if(mend) A.aidisabled = FALSE diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 4c12809184..477cd69746 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -577,11 +577,17 @@ cut_overlays() add_overlay(frame_overlay) add_overlay(filling_overlay) - add_overlay(lights_overlay) + if(lights_overlay) + add_overlay(lights_overlay) + var/mutable_appearance/lights_vis = mutable_appearance(lights_overlay.icon, lights_overlay.icon_state) + add_overlay(lights_vis) add_overlay(panel_overlay) add_overlay(weld_overlay) add_overlay(sparks_overlay) - add_overlay(damag_overlay) + if(damag_overlay) + add_overlay(damag_overlay) + var/mutable_appearance/damage_vis = mutable_appearance(damag_overlay.icon, damag_overlay.icon_state) + add_overlay(damage_vis) add_overlay(note_overlay) check_unres() diff --git a/code/game/objects/items/devices/paicard.dm b/code/game/objects/items/devices/paicard.dm index 5b332cda46..7450cb937c 100644 --- a/code/game/objects/items/devices/paicard.dm +++ b/code/game/objects/items/devices/paicard.dm @@ -99,7 +99,7 @@ if(href_list["reset_radio_short"]) pai.unshort_radio() if(href_list["setlaws"]) - var/newlaws = stripped_multiline_input("Enter any additional directives you would like your pAI personality to follow. Note that these directives will not override the personality's allegiance to its imprinted master. Conflicting directives will be ignored.", "pAI Directive Configuration", MAX_MESSAGE_LEN) + var/newlaws = stripped_multiline_input(usr, "Enter any additional directives you would like your pAI personality to follow. Note that these directives will not override the personality's allegiance to its imprinted master. Conflicting directives will be ignored.", "pAI Directive Configuration", "", MAX_MESSAGE_LEN) if(newlaws && pai) pai.add_supplied_law(0,newlaws) if(href_list["toggle_holo"]) diff --git a/code/game/objects/items/implants/implant_abductor.dm b/code/game/objects/items/implants/implant_abductor.dm index 0c50beadea..e0765e7951 100644 --- a/code/game/objects/items/implants/implant_abductor.dm +++ b/code/game/objects/items/implants/implant_abductor.dm @@ -5,36 +5,30 @@ icon_state = "implant" activated = 1 var/obj/machinery/abductor/pad/home - var/cooldown = 30 + var/next_use = 0 /obj/item/implant/abductor/activate() . = ..() - if(cooldown == initial(cooldown)) + if(next_use <= world.time) home.Retrieve(imp_in,1) - cooldown = 0 - START_PROCESSING(SSobj, src) + next_use = world.time + 60 SECONDS else - to_chat(imp_in, "You must wait [30 - cooldown] seconds to use [src] again!") - -/obj/item/implant/abductor/process() - if(cooldown < initial(cooldown)) - cooldown++ - if(cooldown == initial(cooldown)) - STOP_PROCESSING(SSobj, src) + to_chat(imp_in, "You must wait [DisplayTimeText(next_use - world.time)] to use [src] again!") /obj/item/implant/abductor/implant(mob/living/target, mob/user) - if(..()) - var/obj/machinery/abductor/console/console - if(ishuman(target)) - var/datum/antagonist/abductor/A = target.mind.has_antag_datum(/datum/antagonist/abductor) - if(A) - console = get_abductor_console(A.team.team_number) - home = console.pad - - if(!home) - var/list/consoles = list() - for(var/obj/machinery/abductor/console/C in GLOB.machines) - consoles += C - console = pick(consoles) + . = ..() + if(!.) + return + var/obj/machinery/abductor/console/console + if(ishuman(target)) + var/datum/antagonist/abductor/A = target.mind.has_antag_datum(/datum/antagonist/abductor) + if(A) + console = get_abductor_console(A.team.team_number) home = console.pad - return TRUE + + if(!home) + var/list/consoles = list() + for(var/obj/machinery/abductor/console/C in GLOB.machines) + consoles += C + console = pick(consoles) + home = console.pad diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index f1108189c7..dc091cb451 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -1411,6 +1411,7 @@ if(WIRE_POWER1, WIRE_POWER2) if(!wires.is_cut(WIRE_POWER1) && !wires.is_cut(WIRE_POWER2)) shorted = FALSE + update() if(WIRE_AI) if(!wires.is_cut(WIRE_AI)) aidisabled = FALSE diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 344d41071d..3c3f3c9541 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -314,8 +314,11 @@ . = ..() SSvis_overlays.remove_vis_overlay(src, managed_vis_overlays) if(on && status == LIGHT_OK) - SSvis_overlays.add_vis_overlay(src, overlayicon, base_state, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE, dir, clamp(light_power*250, 30, 200)) - + var/overlay_alpha = clamp(light_power*250, 30, 200) + SSvis_overlays.add_vis_overlay(src, overlayicon, base_state, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE, dir, overlay_alpha) + var/mutable_appearance/M = mutable_appearance(overlayicon, base_state) + M.alpha = overlay_alpha + . += M // update the icon_state and luminosity of the light depending on its state /obj/machinery/light/proc/update(trigger = TRUE) From 8be491f32fae1610d546e92beab23d7e22eb5f98 Mon Sep 17 00:00:00 2001 From: Lin Date: Thu, 28 May 2020 07:37:09 +0000 Subject: [PATCH 04/10] change layer (#12377) --- code/game/machinery/doors/airlock.dm | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 477cd69746..2a45267c65 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -470,15 +470,15 @@ if(welded) weld_overlay = get_airlock_overlay("welded", overlays_file) if(obj_integrity < integrity_failure * max_integrity) - damag_overlay = get_airlock_overlay("sparks_broken", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + damag_overlay = get_airlock_overlay("sparks_broken", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) else if(obj_integrity < (0.75 * max_integrity)) - damag_overlay = get_airlock_overlay("sparks_damaged", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + damag_overlay = get_airlock_overlay("sparks_damaged", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) if(lights && hasPower()) if(locked) - lights_overlay = get_airlock_overlay("lights_bolts", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + lights_overlay = get_airlock_overlay("lights_bolts", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) else if(emergency) - lights_overlay = get_airlock_overlay("lights_emergency", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + lights_overlay = get_airlock_overlay("lights_emergency", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) if(note) note_overlay = get_airlock_overlay(notetype, note_overlay_file) @@ -496,18 +496,18 @@ else panel_overlay = get_airlock_overlay("panel_closed", overlays_file) if(obj_integrity < integrity_failure * max_integrity) - damag_overlay = get_airlock_overlay("sparks_broken", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + damag_overlay = get_airlock_overlay("sparks_broken", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) else if(obj_integrity < (0.75 * max_integrity)) - damag_overlay = get_airlock_overlay("sparks_damaged", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + damag_overlay = get_airlock_overlay("sparks_damaged", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) if(welded) weld_overlay = get_airlock_overlay("welded", overlays_file) - lights_overlay = get_airlock_overlay("lights_denied", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + lights_overlay = get_airlock_overlay("lights_denied", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) if(note) note_overlay = get_airlock_overlay(notetype, note_overlay_file) if(AIRLOCK_EMAG) frame_overlay = get_airlock_overlay("closed", icon) - sparks_overlay = get_airlock_overlay("sparks", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + sparks_overlay = get_airlock_overlay("sparks", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) if(airlock_material) filling_overlay = get_airlock_overlay("[airlock_material]_closed", overlays_file) else @@ -518,9 +518,9 @@ else panel_overlay = get_airlock_overlay("panel_closed", overlays_file) if(obj_integrity < integrity_failure * max_integrity) - damag_overlay = get_airlock_overlay("sparks_broken", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + damag_overlay = get_airlock_overlay("sparks_broken", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) else if(obj_integrity < (0.75 * max_integrity)) - damag_overlay = get_airlock_overlay("sparks_damaged", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + damag_overlay = get_airlock_overlay("sparks_damaged", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) if(welded) weld_overlay = get_airlock_overlay("welded", overlays_file) if(note) @@ -533,7 +533,7 @@ else filling_overlay = get_airlock_overlay("fill_closing", icon) if(lights && hasPower()) - lights_overlay = get_airlock_overlay("lights_closing", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + lights_overlay = get_airlock_overlay("lights_closing", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) if(panel_open) if(security_level) panel_overlay = get_airlock_overlay("panel_closing_protected", overlays_file) @@ -554,7 +554,7 @@ else panel_overlay = get_airlock_overlay("panel_open", overlays_file) if(obj_integrity < (0.75 * max_integrity)) - damag_overlay = get_airlock_overlay("sparks_open", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + damag_overlay = get_airlock_overlay("sparks_open", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) if(note) note_overlay = get_airlock_overlay("[notetype]_open", note_overlay_file) @@ -565,7 +565,7 @@ else filling_overlay = get_airlock_overlay("fill_opening", icon) if(lights && hasPower()) - lights_overlay = get_airlock_overlay("lights_opening", overlays_file, EMISSIVE_UNBLOCKABLE_LAYER, EMISSIVE_UNBLOCKABLE_PLANE) + lights_overlay = get_airlock_overlay("lights_opening", overlays_file, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE) if(panel_open) if(security_level) panel_overlay = get_airlock_overlay("panel_opening_protected", overlays_file) From ae62566dce949de6d47d1005d6abaedfc37a00ad Mon Sep 17 00:00:00 2001 From: Ghom <42542238+Ghommie@users.noreply.github.com> Date: Thu, 28 May 2020 09:37:22 +0200 Subject: [PATCH 05/10] Fixing some issues with the now unneeded hack for looms. (#12350) --- .../items/stacks/sheets/sheet_types.dm | 9 +++------ .../objects/items/stacks/sheets/sheets.dm | 3 --- code/game/objects/structures/loom.dm | 20 +++++++++---------- 3 files changed, 13 insertions(+), 19 deletions(-) diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index f26f3587a4..41822491f8 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -404,8 +404,6 @@ GLOBAL_LIST_INIT(cloth_recipes, list ( \ resistance_flags = FLAMMABLE force = 0 throwforce = 0 - pull_effort = 90 - is_fabric = TRUE merge_type = /obj/item/stack/sheet/cloth /obj/item/stack/sheet/cloth/get_main_recipes() @@ -426,7 +424,7 @@ GLOBAL_LIST_INIT(durathread_recipes, list ( \ new/datum/stack_recipe("durathread beret", /obj/item/clothing/head/beret/durathread, 2, time = 40), \ new/datum/stack_recipe("durathread beanie", /obj/item/clothing/head/beanie/durathread, 2, time = 40), \ new/datum/stack_recipe("durathread bandana", /obj/item/clothing/mask/bandana/durathread, 1, time = 25), \ - new/datum/stack_recipe("durathread string", /obj/item/weaponcrafting/durathread_string, 1, time = 40) \ + new/datum/stack_recipe("durathread string", /obj/item/weaponcrafting/durathread_string, 1, time = 40), \ )) /obj/item/stack/sheet/durathread @@ -818,13 +816,12 @@ new /datum/stack_recipe("paper frame door", /obj/structure/mineral_door/paperfra max_amount = 80 singular_name = "raw cotton ball" icon_state = "sheet-cotton" - is_fabric = TRUE resistance_flags = FLAMMABLE force = 0 throwforce = 0 merge_type = /obj/item/stack/sheet/cotton - pull_effort = 30 - loom_result = /obj/item/stack/sheet/cloth + var/pull_effort = 30 + var/loom_result = /obj/item/stack/sheet/cloth /obj/item/stack/sheet/cotton/ten amount = 10 diff --git a/code/game/objects/items/stacks/sheets/sheets.dm b/code/game/objects/items/stacks/sheets/sheets.dm index 378855707e..dfba533247 100644 --- a/code/game/objects/items/stacks/sheets/sheets.dm +++ b/code/game/objects/items/stacks/sheets/sheets.dm @@ -13,9 +13,6 @@ mats_per_stack = MINERAL_MATERIAL_AMOUNT var/sheettype = null //this is used for girders in the creation of walls/false walls var/point_value = 0 //turn-in value for the gulag stacker - loosely relative to its rarity - var/is_fabric = FALSE //is this a valid material for the loom? - var/loom_result //result from pulling on the loom - var/pull_effort = 0 //amount of delay when pulling on the loom var/shard_type // the shard debris typepath left over by solar panels and windows etc. /obj/item/stack/sheet/Initialize(mapload, new_amount, merge) diff --git a/code/game/objects/structures/loom.dm b/code/game/objects/structures/loom.dm index ad128b01c2..164e597117 100644 --- a/code/game/objects/structures/loom.dm +++ b/code/game/objects/structures/loom.dm @@ -21,21 +21,21 @@ return TRUE ///Handles the weaving. -/obj/structure/loom/proc/weave(obj/item/stack/sheet/S, mob/user) - if(!istype(S) || !S.is_fabric) +/obj/structure/loom/proc/weave(obj/item/stack/sheet/cotton/W, mob/user) + if(!istype(W)) return FALSE if(!anchored) user.show_message("The loom needs to be wrenched down.", MSG_VISUAL) return FALSE - if(S.amount < FABRIC_PER_SHEET) - user.show_message("You need at least [FABRIC_PER_SHEET] units of fabric before using this.", 1) + if(W.amount < FABRIC_PER_SHEET) + user.show_message("You need at least [FABRIC_PER_SHEET] units of fabric before using this.", MSG_VISUAL) return FALSE - user.show_message("You start weaving \the [S.name] through the loom..", MSG_VISUAL) - if(S.use_tool(src, user, S.pull_effort)) - if(S.amount >= FABRIC_PER_SHEET) - new S.loom_result(drop_location()) - S.use(FABRIC_PER_SHEET) - user.show_message("You weave \the [S.name] into a workable fabric.", MSG_VISUAL) + user.show_message("You start weaving \the [W.name] through the loom..", MSG_VISUAL) + if(W.use_tool(src, user, W.pull_effort)) + if(W.amount >= FABRIC_PER_SHEET) + new W.loom_result(drop_location()) + W.use(FABRIC_PER_SHEET) + user.show_message("You weave \the [W.name] into a workable fabric.", MSG_VISUAL) return TRUE #undef FABRIC_PER_SHEET \ No newline at end of file From 55a58ba76c760aadf79a256e791704d2be818649 Mon Sep 17 00:00:00 2001 From: MrJWhit <48370570+MrJWhit@users.noreply.github.com> Date: Thu, 28 May 2020 03:37:36 -0400 Subject: [PATCH 06/10] Fixes pipe to turbine (#12346) --- .../map_files/IceBoxStation/IceBoxStation.dmm | 48 ++++++++++++++----- 1 file changed, 37 insertions(+), 11 deletions(-) diff --git a/_maps/map_files/IceBoxStation/IceBoxStation.dmm b/_maps/map_files/IceBoxStation/IceBoxStation.dmm index 7859d735d6..201418eba1 100644 --- a/_maps/map_files/IceBoxStation/IceBoxStation.dmm +++ b/_maps/map_files/IceBoxStation/IceBoxStation.dmm @@ -41663,7 +41663,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/green/visible, -/obj/machinery/atmospherics/pipe/simple/dark/visible{ +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ dir = 4 }, /turf/open/floor/plasteel/white/corner, @@ -44797,7 +44797,7 @@ /area/engine/engineering) "ccy" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/machinery/atmospherics/pipe/simple/dark/visible{ +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ dir = 4 }, /turf/open/floor/plasteel, @@ -45150,7 +45150,7 @@ "cdB" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible, /obj/effect/spawner/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/simple/dark/visible{ +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ dir = 4 }, /turf/open/floor/plating, @@ -54054,6 +54054,13 @@ }, /turf/open/floor/wood, /area/crew_quarters/bar) +"emX" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/floor/plating/asteroid/snow/icemoon, +/area/icemoon/surface/outdoors) "ene" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -55773,6 +55780,12 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness/pool) +"iBR" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 6 + }, +/turf/open/floor/plating/asteroid/snow/icemoon, +/area/icemoon/surface/outdoors) "iEJ" = ( /obj/machinery/door/airlock/external{ name = "Escape Pod One" @@ -56517,6 +56530,12 @@ /obj/structure/window, /turf/open/floor/wood, /area/crew_quarters/bar) +"krn" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 9 + }, +/turf/open/floor/plating/asteroid/snow/icemoon, +/area/icemoon/surface/outdoors) "ksp" = ( /obj/machinery/atmospherics/pipe/simple/orange/visible, /turf/closed/wall, @@ -57370,6 +57389,13 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/fore) +"mAU" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/floor/plating/asteroid/snow/icemoon, +/area/icemoon/surface/outdoors) "mCy" = ( /obj/machinery/space_heater{ anchored = 1 @@ -97640,14 +97666,14 @@ bFJ bvd bKH bzs -avm -ayF -avm -ayF -avB -ayF -avm -ayF +iBR +avx +mAU +avx +emX +avx +mAU +krn avB awd awe From 811b80156915aa0fac75a07bf2fd8ecefcf6bcc9 Mon Sep 17 00:00:00 2001 From: Putnam3145 Date: Thu, 28 May 2020 05:11:42 -0700 Subject: [PATCH 07/10] fixes ghost role eligibility delay (#12379) --- code/modules/mob/dead/observer/observer.dm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index 838de24b60..5364486b04 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -287,12 +287,12 @@ Works together with spawning an observer, noted above. var/maximumRoundEnd = SSautotransfer.starttime + SSautotransfer.voteinterval * SSautotransfer.maxvotes if(penalty - SSshuttle.realtimeofstart > maximumRoundEnd + SSshuttle.emergencyCallTime + SSshuttle.emergencyDockTime + SSshuttle.emergencyEscapeTime) penalty = CANT_REENTER_ROUND - if(!(ckey in GLOB.client_ghost_timeouts)) - GLOB.client_ghost_timeouts += ckey - GLOB.client_ghost_timeouts[ckey] = 0 - else if(GLOB.client_ghost_timeouts[ckey] == CANT_REENTER_ROUND) + if(!(ghost.ckey in GLOB.client_ghost_timeouts)) + GLOB.client_ghost_timeouts += ghost.ckey + GLOB.client_ghost_timeouts[ghost.ckey] = 0 + else if(GLOB.client_ghost_timeouts[ghost.ckey] == CANT_REENTER_ROUND) return - GLOB.client_ghost_timeouts[ckey] = max(GLOB.client_ghost_timeouts[ckey],penalty) + GLOB.client_ghost_timeouts[ghost.ckey] = max(GLOB.client_ghost_timeouts[ghost.ckey],penalty) // needs to be done AFTER the ckey transfer, too return ghost From 2857a13933dbcc55dd7a3d8d6f336012f6abd9a2 Mon Sep 17 00:00:00 2001 From: Rohesie Date: Thu, 28 May 2020 09:12:58 -0300 Subject: [PATCH 08/10] nested (#12381) --- code/game/area/areas/centcom.dm | 3 ++- code/game/turfs/simulated/floor/plating/misc_plating.dm | 3 +-- .../food_and_drinks/recipes/tablecraft/recipes_frozen.dm | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/code/game/area/areas/centcom.dm b/code/game/area/areas/centcom.dm index 1241b7a240..96b621acd8 100644 --- a/code/game/area/areas/centcom.dm +++ b/code/game/area/areas/centcom.dm @@ -32,7 +32,8 @@ /area/centcom/vip name = "VIP Zone" dynamic_lighting = DYNAMIC_LIGHTING_DISABLED - /area/centcom/winterball + +/area/centcom/winterball name = "winterball Zone" dynamic_lighting = DYNAMIC_LIGHTING_DISABLED diff --git a/code/game/turfs/simulated/floor/plating/misc_plating.dm b/code/game/turfs/simulated/floor/plating/misc_plating.dm index 23e32ebfe3..5323db001f 100644 --- a/code/game/turfs/simulated/floor/plating/misc_plating.dm +++ b/code/game/turfs/simulated/floor/plating/misc_plating.dm @@ -198,8 +198,7 @@ /turf/open/floor/plating/ice/smooth icon_state = "smooth" smooth = SMOOTH_MORE | SMOOTH_BORDER - canSmoothWith = list(/turf/open/floor/plating/ice/smooth, /turf/open/floor/plating/ice) - /turf/open/floor/plating/ice/colder + canSmoothWith = list(/turf/open/floor/plating/ice/smooth, /turf/open/floor/plating/ice, /turf/open/floor/plating/ice/colder) /turf/open/floor/plating/ice/colder temperature = 140 diff --git a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm index 3e47904e6e..5b81c54bc5 100644 --- a/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm +++ b/code/modules/food_and_drinks/recipes/tablecraft/recipes_frozen.dm @@ -15,7 +15,7 @@ result = /obj/item/reagent_containers/food/snacks/banana_split subcategory = CAT_ICE - /datum/crafting_recipe/food/bluecharrie_float +/datum/crafting_recipe/food/bluecharrie_float name = "Blue Cherry Shake" always_availible = FALSE reqs = list( @@ -276,4 +276,4 @@ /datum/reagent/consumable/laughter = 5 ) result = /obj/item/reagent_containers/food/snacks/snowcones/clown - subcategory = CAT_ICE \ No newline at end of file + subcategory = CAT_ICE From 9d169fc43e465c2ba484b11a328b0b614ff5123e Mon Sep 17 00:00:00 2001 From: TheFakeElon <59686430+TheFakeElon@users.noreply.github.com> Date: Thu, 28 May 2020 23:47:44 +1000 Subject: [PATCH 09/10] Adds unum (#12369) * unoo * bracket * COMMA * Update toys.dm * fixes icons * Update code/game/objects/items/toys.dm Thanks ghommie Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> * pool noodle and viro * removes dupes Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> --- code/game/objects/items/toys.dm | 7 ++++--- code/modules/games/unum.dm | 22 ++++++++++++++++++++++ code/modules/vending/games.dm | 3 ++- icons/obj/toy.dmi | Bin 33646 -> 37317 bytes tgstation.dme | 1 + 5 files changed, 29 insertions(+), 4 deletions(-) create mode 100644 code/modules/games/unum.dm diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index ff59b85332..bc0c1328af 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -777,6 +777,7 @@ var/cooldown = 0 var/obj/machinery/computer/holodeck/holo = null // Holodeck cards should not be infinite var/list/cards = list() + var/original_size = 52 /obj/item/toy/cards/deck/Initialize() . = ..() @@ -834,11 +835,11 @@ /obj/item/toy/cards/deck/update_icon_state() switch(cards.len) - if(27 to INFINITY) + if(INFINITY to original_size/2) icon_state = "deck_[deckstyle]_full" - if(11 to 27) + if(original_size/2 to original_size/4) icon_state = "deck_[deckstyle]_half" - if(1 to 11) + if(original_size/4 to 1) icon_state = "deck_[deckstyle]_low" else icon_state = "deck_[deckstyle]_empty" diff --git a/code/modules/games/unum.dm b/code/modules/games/unum.dm new file mode 100644 index 0000000000..9820fa6754 --- /dev/null +++ b/code/modules/games/unum.dm @@ -0,0 +1,22 @@ +/// A deck of unum cards. Classic. +/obj/item/toy/cards/deck/unum + name = "\improper UNUM deck" + desc = "A deck of unum cards. House rules to argue over not included." + icon = 'icons/obj/toy.dmi' + icon_state = "deck_unum_full" + deckstyle = "unum" + original_size = 108 + +//Populate the deck. +/obj/item/toy/cards/deck/unum/populate_deck() + for(var/colour in list("Red","Yellow","Green","Blue")) + cards += "[colour] 0" //Uno, i mean, cough cough, Unum decks have only one colour of each 0, weird huh? + for(var/k in 0 to 1) //two of each colour of number + cards += "[colour] skip" + cards += "[colour] reverse" + cards += "[colour] draw 2" + for(var/i in 1 to 9) + cards += "[colour] [i]" + for(var/k in 0 to 3) //4 wilds and draw 4s + cards += "Wildcard" + cards += "Draw 4" diff --git a/code/modules/vending/games.dm b/code/modules/vending/games.dm index efd9aad673..641e52dd13 100644 --- a/code/modules/vending/games.dm +++ b/code/modules/vending/games.dm @@ -6,7 +6,8 @@ products = list(/obj/item/toy/cards/deck = 5, /obj/item/storage/pill_bottle/dice = 10, /obj/item/toy/cards/deck/cas = 3, - /obj/item/toy/cards/deck/cas/black = 3) + /obj/item/toy/cards/deck/cas/black = 3, + /obj/item/toy/cards/deck/unum = 3) contraband = list(/obj/item/dice/fudge = 9) premium = list(/obj/item/melee/skateboard/pro = 3, /obj/item/melee/skateboard/hoverboard = 1) diff --git a/icons/obj/toy.dmi b/icons/obj/toy.dmi index 698c1f7a34ea2b70fed293ba6599fc04a90019d3..e8106905b7c89cee345dc878fc00fd505afd8980 100644 GIT binary patch literal 37317 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 literal 33646 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 Date: Thu, 28 May 2020 15:48:01 +0200 Subject: [PATCH 10/10] Skewers no longer cause deadchat spam (#12376) * removes deadchat spam Yikes * Ghom's requested change Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> --- .../clockcult/clock_structures/traps/brass_skewer.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/antagonists/clockcult/clock_structures/traps/brass_skewer.dm b/code/modules/antagonists/clockcult/clock_structures/traps/brass_skewer.dm index a4b19f2d40..f1ce13a90f 100644 --- a/code/modules/antagonists/clockcult/clock_structures/traps/brass_skewer.dm +++ b/code/modules/antagonists/clockcult/clock_structures/traps/brass_skewer.dm @@ -113,6 +113,8 @@ "You start tenderly lifting [skewee] off of [src]...") if(!do_after(user, 60, target = skewee)) skewee.visible_message("[skewee] painfully slides back down [src].") + if(skewee.stat >= UNCONSCIOUS) + return //by ratvar, no more spamming my deadchat, holy fuck skewee.say("Oof, ouch owwie!!", forced = "fail brass skewer removal") return skewee.visible_message("[skewee] comes free of [src] with a squelching pop!", \