From d372eee26181353af1837be2937c66bb2164924e Mon Sep 17 00:00:00 2001 From: Redbert <109347230+Deadgebert@users.noreply.github.com> Date: Fri, 20 Dec 2024 14:05:39 -0700 Subject: [PATCH 001/126] Reduces synthflesh required for unhusk. unhusk now depends on purity (#88542) ## About The Pull Request The amount of synthflesh required to unhusk now changes based on the purity of synthflesh 60u for 100% purity, 80u for 75% purity, 100u for 60% purity and below. ## Why It's Good For The Game Encourages people to interact with the purity system a bit more. Most of the time, players only use synthflesh for unhusking with no regard for the purity of the chem. ## Changelog :cl: balance: Synthflesh required for unhusking now between 60u and 100u depending on purity. /:cl: --------- Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> --- code/__DEFINES/reagents.dm | 3 ++- .../reagents/cat2_medicine_reagents.dm | 20 ++++++++++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/code/__DEFINES/reagents.dm b/code/__DEFINES/reagents.dm index 28172587e795a..bf3fd32918943 100644 --- a/code/__DEFINES/reagents.dm +++ b/code/__DEFINES/reagents.dm @@ -46,7 +46,8 @@ ///Health threshold for synthflesh and rezadone to unhusk someone #define UNHUSK_DAMAGE_THRESHOLD 50 ///Amount of synthflesh required to unhusk someone -#define SYNTHFLESH_UNHUSK_AMOUNT 100 +#define SYNTHFLESH_UNHUSK_AMOUNT 60 +#define SYNTHFLESH_UNHUSK_MAX 100 //used by chem masters and pill presses // The categories of reagent packaging diff --git a/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm index e359e301423e8..2093491015641 100644 --- a/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm @@ -524,7 +524,25 @@ to_chat(carbies, span_danger("You feel your burns and bruises healing! It stings like hell!")) carbies.add_mood_event("painful_medicine", /datum/mood_event/painful_medicine) - if(HAS_TRAIT_FROM(exposed_mob, TRAIT_HUSK, BURN) && carbies.getFireLoss() < UNHUSK_DAMAGE_THRESHOLD && (carbies.reagents.get_reagent_amount(/datum/reagent/medicine/c2/synthflesh) + reac_volume >= SYNTHFLESH_UNHUSK_AMOUNT)) + + //don't unhusked non husked mobs + if (!HAS_TRAIT_FROM(exposed_mob, TRAIT_HUSK, BURN)) + return + + //don't try to unhusk mobs above burn damage threshold + if (carbies.getFireLoss() > UNHUSK_DAMAGE_THRESHOLD) + return + + var/datum/reagent/synthflesh = carbies.reagents.has_reagent(/datum/reagent/medicine/c2/synthflesh) + var/current_volume = synthflesh ? synthflesh.volume : 0 + var/current_purity = synthflesh ? synthflesh.purity : 0 + + if (methods & TOUCH) //touch does not apply chems to blood, we want to combine the two volumes before attempting to unhusk + current_purity = current_volume > 0 ? (current_volume * current_purity + reac_volume * creation_purity) / (current_volume + reac_volume) : creation_purity + current_volume += reac_volume + + //when purity = 100%, 60u to unhusk, when purity = 60%, 100u to unhusk. + if(current_volume >= SYNTHFLESH_UNHUSK_MAX || current_volume * current_purity >= SYNTHFLESH_UNHUSK_AMOUNT) carbies.cure_husk(BURN) carbies.visible_message(span_nicegreen("A rubbery liquid coats [carbies]'s burns. [carbies] looks a lot healthier!")) //we're avoiding using the phrases "burnt flesh" and "burnt skin" here because carbies could be a skeleton or a golem or something From 469b5010ee3fd8468afa803048bf96ba137ff80a Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Fri, 20 Dec 2024 21:05:59 +0000 Subject: [PATCH 002/126] Automatic changelog for PR #88542 [ci skip] --- html/changelogs/AutoChangeLog-pr-88542.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88542.yml diff --git a/html/changelogs/AutoChangeLog-pr-88542.yml b/html/changelogs/AutoChangeLog-pr-88542.yml new file mode 100644 index 0000000000000..be34524f72ad4 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88542.yml @@ -0,0 +1,4 @@ +author: "Deadgebert" +delete-after: True +changes: + - balance: "Synthflesh required for unhusking now between 60u and 100u depending on purity." \ No newline at end of file From d224a7aec533c775969e6f9b188f1bebe9aee261 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 00:25:40 +0000 Subject: [PATCH 003/126] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-88542.yml | 4 ---- html/changelogs/AutoChangeLog-pr-88574.yml | 4 ---- html/changelogs/archive/2024-12.yml | 6 ++++++ 3 files changed, 6 insertions(+), 8 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-88542.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88574.yml diff --git a/html/changelogs/AutoChangeLog-pr-88542.yml b/html/changelogs/AutoChangeLog-pr-88542.yml deleted file mode 100644 index be34524f72ad4..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88542.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Deadgebert" -delete-after: True -changes: - - balance: "Synthflesh required for unhusking now between 60u and 100u depending on purity." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88574.yml b/html/changelogs/AutoChangeLog-pr-88574.yml deleted file mode 100644 index 7f7b8f9c8e78e..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88574.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Melbert" -delete-after: True -changes: - - bugfix: "Lobby button sprites" \ No newline at end of file diff --git a/html/changelogs/archive/2024-12.yml b/html/changelogs/archive/2024-12.yml index 7fdad3175732a..8a2acc276d298 100644 --- a/html/changelogs/archive/2024-12.yml +++ b/html/changelogs/archive/2024-12.yml @@ -471,3 +471,9 @@ - bugfix: Poultice works on dead people SmArtKar: - bugfix: Fixed an airlock unlocking runtime +2024-12-21: + Deadgebert: + - balance: Synthflesh required for unhusking now between 60u and 100u depending + on purity. + Melbert: + - bugfix: Lobby button sprites From 023c4116eed51aecc6b0b25d8c6f2743cc539848 Mon Sep 17 00:00:00 2001 From: Roxy <75404941+TealSeer@users.noreply.github.com> Date: Sat, 21 Dec 2024 05:47:51 -0500 Subject: [PATCH 004/126] Allow binary atmos devices to be renamed with a pen (#88522) ## About The Pull Request Add `UNIQUE_RENAME` flag to binary devices (pumps, valves, etc.) so you can rename them with a pen. Add a check to `/obj/machinery/atmospherics/update_name` to accommodate this. ## Why It's Good For The Game On a lot of maps the roundstart atmos pumps are labelled and if you end up swapping them you lose that. Also sometimes you just want to label your inscrutable atmos setup and while you can use a hand labeller it's kind of ugly. ## Changelog :cl: qol: Atmos devices like valves and pumps can now be renamed with a pen. /:cl: --- code/modules/atmospherics/machinery/atmosmachinery.dm | 2 +- .../machinery/components/binary_devices/binary_devices.dm | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/atmospherics/machinery/atmosmachinery.dm b/code/modules/atmospherics/machinery/atmosmachinery.dm index 9705246fa593c..f3877a1424d03 100644 --- a/code/modules/atmospherics/machinery/atmosmachinery.dm +++ b/code/modules/atmospherics/machinery/atmosmachinery.dm @@ -544,7 +544,7 @@ SSair.add_to_rebuild_queue(src) /obj/machinery/atmospherics/update_name() - if(!override_naming) + if(!override_naming && !HAS_TRAIT(src, TRAIT_WAS_RENAMED)) name = "[GLOB.pipe_color_name[pipe_color]] [initial(name)]" return ..() diff --git a/code/modules/atmospherics/machinery/components/binary_devices/binary_devices.dm b/code/modules/atmospherics/machinery/components/binary_devices/binary_devices.dm index b26f0c028d1af..c8cb2e849caec 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/binary_devices.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/binary_devices.dm @@ -7,6 +7,7 @@ device_type = BINARY layer = GAS_PUMP_LAYER pipe_flags = PIPING_BRIDGE + obj_flags = parent_type::obj_flags | UNIQUE_RENAME /obj/machinery/atmospherics/components/binary/set_init_directions() switch(dir) From 0d7837bda823463d25573025c1c4c3f2c178c923 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 10:48:12 +0000 Subject: [PATCH 005/126] Automatic changelog for PR #88522 [ci skip] --- html/changelogs/AutoChangeLog-pr-88522.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88522.yml diff --git a/html/changelogs/AutoChangeLog-pr-88522.yml b/html/changelogs/AutoChangeLog-pr-88522.yml new file mode 100644 index 0000000000000..84aa7e7ee8b81 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88522.yml @@ -0,0 +1,4 @@ +author: "TealSeer" +delete-after: True +changes: + - qol: "Atmos devices like valves and pumps can now be renamed with a pen." \ No newline at end of file From 5c1322e8c51d0ffc005d25b6dc051e61dadeb307 Mon Sep 17 00:00:00 2001 From: AnturK <AnturK@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:49:21 +0100 Subject: [PATCH 006/126] Fixes sass warnings (#88604) Stops sass from screaming about deprecated apis. --- .../tgui-panel/styles/tgchat/chat-dark.scss | 12 ++++++++++-- .../tgui-panel/styles/tgchat/chat-light.scss | 10 ++++++---- tgui/packages/tgui-say/styles/button.scss | 6 +++++- tgui/packages/tgui-say/styles/colors.scss | 2 +- tgui/packages/tgui-say/styles/main.scss | 14 +++++++------- tgui/packages/tgui/styles/layouts/TitleBar.scss | 2 +- 6 files changed, 30 insertions(+), 16 deletions(-) diff --git a/tgui/packages/tgui-panel/styles/tgchat/chat-dark.scss b/tgui/packages/tgui-panel/styles/tgchat/chat-dark.scss index 2308d720436c8..b3cdfa6e88074 100644 --- a/tgui/packages/tgui-panel/styles/tgchat/chat-dark.scss +++ b/tgui/packages/tgui-panel/styles/tgchat/chat-dark.scss @@ -1182,10 +1182,18 @@ $border-width-px: $border-width * 1px; } .chat_alert_#{$color-name} .minor_announcement_text { - background-color: darken(map.get($alert-stripe-colors, $color-name), 5); + background-color: color.adjust( + map.get($alert-stripe-colors, $color-name), + $lightness: -5%, + $space: hsl + ); } .chat_alert_#{$color-name} .major_announcement_text { - background-color: darken(map.get($alert-stripe-colors, $color-name), 5); + background-color: color.adjust( + map.get($alert-stripe-colors, $color-name), + $lightness: -5%, + $space: hsl + ); } } diff --git a/tgui/packages/tgui-panel/styles/tgchat/chat-light.scss b/tgui/packages/tgui-panel/styles/tgchat/chat-light.scss index a3d0688ce362c..e46cd52d5075f 100644 --- a/tgui/packages/tgui-panel/styles/tgchat/chat-light.scss +++ b/tgui/packages/tgui-panel/styles/tgchat/chat-light.scss @@ -1200,16 +1200,18 @@ $border-width-px: $border-width * 1px; } .chat_alert_#{$color-name} .minor_announcement_text { - background-color: lighten( + background-color: color.adjust( map.get($alert-stripe-alternate-colors, $color-name), - 5 + $lightness: 5%, + $space: hsl ); } .chat_alert_#{$color-name} .major_announcement_text { - background-color: lighten( + background-color: color.adjust( map.get($alert-stripe-alternate-colors, $color-name), - 5 + $lightness: 5%, + $space: hsl ); } } diff --git a/tgui/packages/tgui-say/styles/button.scss b/tgui/packages/tgui-say/styles/button.scss index 89e1cceca943a..69802c045ec5e 100644 --- a/tgui/packages/tgui-say/styles/button.scss +++ b/tgui/packages/tgui-say/styles/button.scss @@ -15,7 +15,11 @@ padding: 0; width: 2.6rem; &:hover { - background-color: lighten(colors.$button, 10%); + background-color: color.adjust( + colors.$button, + $lightness: 10%, + $space: hsl + ); } } diff --git a/tgui/packages/tgui-say/styles/colors.scss b/tgui/packages/tgui-say/styles/colors.scss index 5113af953e740..ce76ba10a1622 100644 --- a/tgui/packages/tgui-say/styles/colors.scss +++ b/tgui/packages/tgui-say/styles/colors.scss @@ -33,7 +33,7 @@ $channel_keys: map.keys($_channel_map) !default; $channel-map: (); @each $channel in $channel_keys { - $channel-map: map-merge( + $channel-map: map.merge( $channel-map, ( $channel: map.get($_channel_map, $channel), diff --git a/tgui/packages/tgui-say/styles/main.scss b/tgui/packages/tgui-say/styles/main.scss index 8e164aa21fa7f..bafc850e242a0 100644 --- a/tgui/packages/tgui-say/styles/main.scss +++ b/tgui/packages/tgui-say/styles/main.scss @@ -26,14 +26,14 @@ } @each $channel, $color in colors.$channel-map { - $darkened: darken($color, 20%); + $darkened: color.adjust($color, $lightness: -20%, $space: hsl); .button-#{$channel} { - border-color: darken($color, 10%); + border-color: color.adjust($color, $lightness: -10%, $space: hsl); color: $color; &:hover { - border-color: lighten($color, 10%); - color: lighten($color, 5%); + border-color: color.adjust($color, $lightness: 10%, $space: hsl); + color: color.adjust($color, $lightness: 5%, $space: hsl); } } @@ -50,11 +50,11 @@ animation: gradient 10s linear infinite; background: linear-gradient( to right, - darken($color, 35%), + color.adjust($color, $lightness: -35%, $space: hsl), $color, - lighten($color, 10%), + color.adjust($color, $lightness: 10%, $space: hsl), $color, - darken($color, 35%) + color.adjust($color, $lightness: -35%, $space: hsl) ); background-position: 0% 0%; background-size: 500% auto; diff --git a/tgui/packages/tgui/styles/layouts/TitleBar.scss b/tgui/packages/tgui/styles/layouts/TitleBar.scss index 517f2b8ad811e..8fd7239d55b1f 100644 --- a/tgui/packages/tgui/styles/layouts/TitleBar.scss +++ b/tgui/packages/tgui/styles/layouts/TitleBar.scss @@ -105,7 +105,7 @@ $shadow-color: hsla(0, 0%, 0%, 0.1) !default; min-width: base.rem(20px); padding: 2px 4px; padding: base.rem(2px) base.rem(4px); - background-color: darken(colors.$good, 10%); + background-color: color.adjust(colors.$good, $lightness: -10%, $space: hsl); color: hsl(120, 100%, 100%); text-align: center; } From ce84f71bafaad76e5ac008c79f26d4b85bbb6c99 Mon Sep 17 00:00:00 2001 From: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Date: Sun, 22 Dec 2024 02:19:44 +0530 Subject: [PATCH 007/126] Fixes access nesting for personal ordered crates (#88603) ## About The Pull Request - Fixes #87235 Nested access levels after you unlock the crate for the 2nd time was too much even for the captain to deal with ## Changelog :cl: fix: personal ordered crates can be unlocked & relocked as many times again after the 1st attempt /:cl: --- code/modules/cargo/packs/_packs.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/cargo/packs/_packs.dm b/code/modules/cargo/packs/_packs.dm index b6c533050f675..bfa95b2a7ed25 100644 --- a/code/modules/cargo/packs/_packs.dm +++ b/code/modules/cargo/packs/_packs.dm @@ -106,7 +106,7 @@ name = "mining order" hidden = TRUE crate_name = "shaft mining delivery crate" - access = list(ACCESS_MINING) + access = ACCESS_MINING /datum/supply_pack/custom/New(purchaser, cost, list/contains) . = ..() @@ -117,7 +117,7 @@ /datum/supply_pack/custom/minerals name = "materials order" crate_name = "galactic materials market delivery crate" - access = list() + access = FALSE crate_type = /obj/structure/closet/crate/cardboard /datum/supply_pack/custom/minerals/New(purchaser, cost, list/contains) From ed0cb867aa1a5936ed411f7a908fc1a00c7243a2 Mon Sep 17 00:00:00 2001 From: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Date: Sat, 21 Dec 2024 23:49:56 +0300 Subject: [PATCH 008/126] Adds a Condi-Master to Birdshot's bar (#88602) ## About The Pull Request Closes #88592  ## Why It's Good For The Game Map consistency, bartenders need it to do their job ## Changelog :cl: map: Added a Condi-Master to Birdshot's bar /:cl: --- _maps/map_files/Birdshot/birdshot.dmm | 30 ++++++++++++--------------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/_maps/map_files/Birdshot/birdshot.dmm b/_maps/map_files/Birdshot/birdshot.dmm index de9e1338f2939..125324bb07ea4 100644 --- a/_maps/map_files/Birdshot/birdshot.dmm +++ b/_maps/map_files/Birdshot/birdshot.dmm @@ -9394,10 +9394,9 @@ /obj/machinery/airalarm/directional/north, /obj/structure/table/wood, /obj/machinery/chem_dispenser/drinks, -/obj/effect/turf_decal/siding/wood{ - dir = 5 +/obj/effect/turf_decal/siding/wood/end{ + dir = 4 }, -/obj/effect/turf_decal/siding/wood, /turf/open/floor/iron/dark/diagonal, /area/station/service/bar) "dxZ" = ( @@ -10072,6 +10071,7 @@ }, /obj/structure/disposalpipe/segment, /obj/structure/cable, +/obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/stone, /area/station/service/bar) "dMm" = ( @@ -33247,11 +33247,10 @@ pixel_x = -7; pixel_y = 15 }, -/obj/effect/turf_decal/siding/wood{ - dir = 9 - }, -/obj/effect/turf_decal/siding/wood, /obj/structure/sign/warning/no_smoking/circle/directional/north, +/obj/effect/turf_decal/siding/wood/end{ + dir = 8 + }, /turf/open/floor/iron/dark/diagonal, /area/station/service/bar) "lnI" = ( @@ -50833,12 +50832,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/service/lawoffice) -"rrX" = ( -/obj/effect/turf_decal/siding/wood/corner{ - dir = 4 - }, -/turf/open/floor/stone, -/area/station/service/bar) "rrZ" = ( /obj/structure/closet/crate/trashcart, /obj/effect/spawner/random/trash/garbage, @@ -56445,11 +56438,14 @@ /turf/open/floor/eighties/red, /area/station/hallway/primary/central/fore) "tjT" = ( -/obj/structure/extinguisher_cabinet/directional/north, +/obj/machinery/chem_master/condimaster, +/obj/effect/turf_decal/siding/wood/end{ + dir = 8 + }, /obj/effect/turf_decal/siding/wood{ - dir = 5 + dir = 4 }, -/turf/open/floor/stone, +/turf/open/floor/iron/dark/diagonal, /area/station/service/bar) "tjY" = ( /obj/machinery/atmospherics/components/binary/pump/on{ @@ -100086,7 +100082,7 @@ iXW dRb sON tjT -rrX +xkV lAV fYJ eGU From 9d109030f08764d7d230efa6bd835ad355e3413c Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 20:50:05 +0000 Subject: [PATCH 009/126] Automatic changelog for PR #88603 [ci skip] --- html/changelogs/AutoChangeLog-pr-88603.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88603.yml diff --git a/html/changelogs/AutoChangeLog-pr-88603.yml b/html/changelogs/AutoChangeLog-pr-88603.yml new file mode 100644 index 0000000000000..363c021935304 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88603.yml @@ -0,0 +1,4 @@ +author: "SyncIt21" +delete-after: True +changes: + - bugfix: "personal ordered crates can be unlocked & relocked as many times again after the 1st attempt" \ No newline at end of file From 15d49160e416356849e33c23c07476d71972f79e Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 20:50:16 +0000 Subject: [PATCH 010/126] Automatic changelog for PR #88602 [ci skip] --- html/changelogs/AutoChangeLog-pr-88602.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88602.yml diff --git a/html/changelogs/AutoChangeLog-pr-88602.yml b/html/changelogs/AutoChangeLog-pr-88602.yml new file mode 100644 index 0000000000000..c9698b7f26b81 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88602.yml @@ -0,0 +1,4 @@ +author: "SmArtKar" +delete-after: True +changes: + - map: "Added a Condi-Master to Birdshot's bar" \ No newline at end of file From ad4108d6f3ec23a447dd1e0fef10f5ff4bad062a Mon Sep 17 00:00:00 2001 From: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Date: Sun, 22 Dec 2024 02:42:32 +0530 Subject: [PATCH 011/126] Adds better combined colour check for greyscale modify menu (#88598) ## About The Pull Request - Fixes #87829 Ensures we can't enter invalid values that actually run timed in this specific case ## Changelog :cl: fix: greyscale modify menu has better validation for player entered colours /:cl: --- code/modules/admin/greyscale_modify_menu.dm | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/code/modules/admin/greyscale_modify_menu.dm b/code/modules/admin/greyscale_modify_menu.dm index 0bc1ec01f5d4f..c87c424661fd2 100644 --- a/code/modules/admin/greyscale_modify_menu.dm +++ b/code/modules/admin/greyscale_modify_menu.dm @@ -241,14 +241,24 @@ This is highly likely to cause massive amounts of lag as every object in the gam config.EnableAutoRefresh(config_owner_type) /datum/greyscale_modify_menu/proc/ReadColorsFromString(colorString) - var/list/new_split_colors = list() + //length validation var/list/colors = splittext(colorString, "#") - for(var/index in 2 to min(length(colors), config.expected_colors + 1)) + if(length(colors) <= 1) //doesn't even begin with a # so isn't even a color + return FALSE + colors.Cut(1, 2) //removes the white space as a consequence of the string beginning with a # + if(colors.len != config.expected_colors) //not the expected length + return FALSE + + //value validation + var/list/new_split_colors = list() + for(var/index in 1 to config.expected_colors) var/color = "#[colors[index]]" if(!findtext(color, GLOB.is_color) && (!unlocked || !findtext(color, GLOB.is_alpha_color))) return FALSE new_split_colors += color split_colors = new_split_colors + + //all good return TRUE /datum/greyscale_modify_menu/proc/randomize_color(color_index) From dd0db8502fbd8be1c75562cad92aac7da3c5d935 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:12:50 +0000 Subject: [PATCH 012/126] Automatic changelog for PR #88598 [ci skip] --- html/changelogs/AutoChangeLog-pr-88598.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88598.yml diff --git a/html/changelogs/AutoChangeLog-pr-88598.yml b/html/changelogs/AutoChangeLog-pr-88598.yml new file mode 100644 index 0000000000000..6feb07ff376e8 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88598.yml @@ -0,0 +1,4 @@ +author: "SyncIt21" +delete-after: True +changes: + - bugfix: "greyscale modify menu has better validation for player entered colours" \ No newline at end of file From 188af3c2a91e18aab52c27faac2ec5f660766376 Mon Sep 17 00:00:00 2001 From: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Date: Sun, 22 Dec 2024 00:13:15 +0300 Subject: [PATCH 013/126] Fixes shoes slot being semi-transparent when you have digitigrade legs (#88600) ## About The Pull Request You can now wear shoes with digitigrade legs thanks to #88096, but UI slots weren't informed of this change. ## Changelog :cl: fix: Fixed shoes slot being semi-transparent when you have digitigrade legs /:cl: --- code/_onclick/hud/human.dm | 2 -- 1 file changed, 2 deletions(-) diff --git a/code/_onclick/hud/human.dm b/code/_onclick/hud/human.dm index 918f5f62a329b..e17757501cf9e 100644 --- a/code/_onclick/hud/human.dm +++ b/code/_onclick/hud/human.dm @@ -322,8 +322,6 @@ var/obj/item/organ/eyes/eyes = human_mob.get_organ_slot(ORGAN_SLOT_EYES) if(eyes?.no_glasses) blocked_slots |= ITEM_SLOT_EYES - if(human_mob.bodyshape & BODYSHAPE_DIGITIGRADE) - blocked_slots |= ITEM_SLOT_FEET for(var/atom/movable/screen/inventory/inv in (static_inventory + toggleable_inventory)) if(!inv.slot_id) From 7d821f8d2a107c830dc60c8005da4dc45ab21c60 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:13:35 +0000 Subject: [PATCH 014/126] Automatic changelog for PR #88600 [ci skip] --- html/changelogs/AutoChangeLog-pr-88600.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88600.yml diff --git a/html/changelogs/AutoChangeLog-pr-88600.yml b/html/changelogs/AutoChangeLog-pr-88600.yml new file mode 100644 index 0000000000000..f8f6ef99810f9 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88600.yml @@ -0,0 +1,4 @@ +author: "SmArtKar" +delete-after: True +changes: + - bugfix: "Fixed shoes slot being semi-transparent when you have digitigrade legs" \ No newline at end of file From 537ac104c4a398b63bd6ad8bd9b1f8fc1d1cd062 Mon Sep 17 00:00:00 2001 From: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Date: Sat, 21 Dec 2024 15:14:43 -0600 Subject: [PATCH 015/126] Nitroglycerin heals heart damage (#88571) ## About The Pull Request Nitroglycerin heals heart damage when metabolized ## Why It's Good For The Game - I thought it'd be a fun nod to one of the actual uses of Nitroglycerin. - "Plausible Deniability" to chemists making Nitroglycerin. - Adds more niche chem effects to the ecosystem chemists may experiment with. ## Changelog :cl: Melbert add: Nitroglycerin now heals heart damage. /:cl: --- .../reagents/chemistry/reagents/pyrotechnic_reagents.dm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm b/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm index c401d39f020ed..0ad3b55fb59d3 100644 --- a/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm @@ -19,11 +19,17 @@ /datum/reagent/nitroglycerin name = "Nitroglycerin" - description = "Nitroglycerin is a heavy, colorless, oily, explosive liquid obtained by nitrating glycerol." + description = "Nitroglycerin is a heavy, colorless, oily liquid obtained by nitrating glycerol. \ + It is commonly used to treat heart conditions, but also in the creation of explosives." color = COLOR_GRAY taste_description = "oil" chemical_flags = REAGENT_CAN_BE_SYNTHESIZED +/datum/reagent/nitroglycerin/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired) + . = ..() + if(affected_mob.adjustOrganLoss(ORGAN_SLOT_HEART, -1 * REM * seconds_per_tick * normalise_creation_purity(), required_organ_flag = affected_organ_flags)) + return UPDATE_MOB_HEALTH + /datum/reagent/stabilizing_agent name = "Stabilizing Agent" description = "Keeps unstable chemicals stable. This does not work on everything." From 43c46cc65091ddf6d8cda93f12bcb431f59bc4cc Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:15:05 +0000 Subject: [PATCH 016/126] Automatic changelog for PR #88571 [ci skip] --- html/changelogs/AutoChangeLog-pr-88571.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88571.yml diff --git a/html/changelogs/AutoChangeLog-pr-88571.yml b/html/changelogs/AutoChangeLog-pr-88571.yml new file mode 100644 index 0000000000000..f8895bb194691 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88571.yml @@ -0,0 +1,4 @@ +author: "Melbert" +delete-after: True +changes: + - rscadd: "Nitroglycerin now heals heart damage." \ No newline at end of file From 15a0a1754af79be66ad452e81ec8e49ae58e3293 Mon Sep 17 00:00:00 2001 From: Tim <timothymtorres@gmail.com> Date: Sat, 21 Dec 2024 15:15:34 -0600 Subject: [PATCH 017/126] Update teleporter description code (#88564) ## About The Pull Request Teleporter code is at least +15 years old. This no longer applies. ## Why It's Good For The Game Accuracy. ## Changelog :cl: spellcheck: Update teleporter machine desc to be accurate /:cl: --- code/game/machinery/teleporter.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/machinery/teleporter.dm b/code/game/machinery/teleporter.dm index c46f6b351543d..262e014ee0b79 100644 --- a/code/game/machinery/teleporter.dm +++ b/code/game/machinery/teleporter.dm @@ -33,7 +33,7 @@ /obj/machinery/teleport/hub/examine(mob/user) . = ..() if(in_range(user, src) || isobserver(user)) - . += span_notice("The status display reads: Probability of malfunction decreased by <b>[(accuracy*25)-25]%</b>.") + . += span_notice("The status display reads: Success chance is <b>[70 + (accuracy * 10)]%</b>.") /obj/machinery/teleport/hub/proc/link_power_station() if(power_station) From d0f78d689db37fe38f54c7ac8af8d9b68cec0e30 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:15:54 +0000 Subject: [PATCH 018/126] Automatic changelog for PR #88564 [ci skip] --- html/changelogs/AutoChangeLog-pr-88564.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88564.yml diff --git a/html/changelogs/AutoChangeLog-pr-88564.yml b/html/changelogs/AutoChangeLog-pr-88564.yml new file mode 100644 index 0000000000000..d9a83b2f69da3 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88564.yml @@ -0,0 +1,4 @@ +author: "timothymtorres" +delete-after: True +changes: + - spellcheck: "Update teleporter machine desc to be accurate" \ No newline at end of file From a0ffc1fd2c3027e95e7b8f0d34f2fd0d6f7bcc00 Mon Sep 17 00:00:00 2001 From: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Date: Sun, 22 Dec 2024 02:46:11 +0530 Subject: [PATCH 019/126] Fixes runtime for mecha air tank processing (#88601) ## About The Pull Request - Fixes #88103 ## Changelog :cl: fix: fixed runtime when sealing mecha cabin with air tank installed /:cl: --- code/modules/vehicles/mecha/equipment/tools/air_tank.dm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/code/modules/vehicles/mecha/equipment/tools/air_tank.dm b/code/modules/vehicles/mecha/equipment/tools/air_tank.dm index f00444ae598b0..6d9765e6b0588 100644 --- a/code/modules/vehicles/mecha/equipment/tools/air_tank.dm +++ b/code/modules/vehicles/mecha/equipment/tools/air_tank.dm @@ -79,11 +79,10 @@ var/datum/gas_mixture/tank_air = internal_tank.return_air() var/datum/gas_mixture/cabin_air = chassis.cabin_air var/release_pressure = internal_tank.release_pressure - var/cabin_pressure = cabin_air.return_pressure() - if(cabin_pressure < release_pressure) + if(cabin_air.return_pressure() < release_pressure) tank_air.release_gas_to(cabin_air, release_pressure) - if(cabin_pressure) - cabin_air.pump_gas_to(external_air, PUMP_MAX_PRESSURE, GAS_CO2) + if(cabin_air.has_gas(/datum/gas/carbon_dioxide)) + cabin_air.pump_gas_to(external_air, PUMP_MAX_PRESSURE, /datum/gas/carbon_dioxide) /obj/item/mecha_parts/mecha_equipment/air_tank/proc/process_pump(seconds_per_tick) if(!tank_pump_active) From d2297600cef3ec701c5f4dd45846813ed68857f5 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:16:31 +0000 Subject: [PATCH 020/126] Automatic changelog for PR #88601 [ci skip] --- html/changelogs/AutoChangeLog-pr-88601.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88601.yml diff --git a/html/changelogs/AutoChangeLog-pr-88601.yml b/html/changelogs/AutoChangeLog-pr-88601.yml new file mode 100644 index 0000000000000..b3e38d483d9ff --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88601.yml @@ -0,0 +1,4 @@ +author: "SyncIt21" +delete-after: True +changes: + - bugfix: "fixed runtime when sealing mecha cabin with air tank installed" \ No newline at end of file From c9d99e5ebe79ca85f80db21f1413fb50687f54f8 Mon Sep 17 00:00:00 2001 From: Kocma-san <112967882+Kocma-san@users.noreply.github.com> Date: Sun, 22 Dec 2024 04:16:47 +0700 Subject: [PATCH 021/126] fix radio sound output when receiving a message (#88596) ## About The Pull Request There were two variables mixed up. It was `SEND_SOUND(holder, radio_noise)`, though it should be `SEND_SOUND(holder, radio_receive)`. Now everything is in place And also added `COOLDOWN_START(src, audio_cooldown, 0.5 SECONDS)` so that you don't hear two sounds at the same time when you talk into the radio <details> <summary>Screenshots/Videos</summary> https://github.com/user-attachments/assets/1afc1b36-4b6e-41d0-825d-aab6d9bdf694 </details> ## Why It's Good For The Game it's just a code issue ## Changelog :cl: fix: fix radio sound output when receiving a message sound: the sound of receiving your own messages over the radio is no longer played /:cl: --- code/game/objects/items/devices/radio/radio.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index ac9cbfec8211f..f00ac8128960b 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -351,7 +351,8 @@ if(isliving(talking_movable)) var/mob/living/talking_living = talking_movable var/volume_modifier = (talking_living.client?.prefs.read_preference(/datum/preference/numeric/sound_radio_noise)) - if(radio_noise && talking_living.can_hear() && volume_modifier && signal.frequency != FREQ_COMMON && !LAZYACCESS(message_mods, MODE_SEQUENTIAL)) + if(radio_noise && talking_living.can_hear() && volume_modifier && signal.frequency != FREQ_COMMON && !LAZYACCESS(message_mods, MODE_SEQUENTIAL) && COOLDOWN_FINISHED(src, audio_cooldown)) + COOLDOWN_START(src, audio_cooldown, 0.5 SECONDS) var/sound/radio_noise = sound('sound/items/radio/radio_talk.ogg', volume = volume_modifier) radio_noise.frequency = get_rand_frequency_low_range() SEND_SOUND(talking_living, radio_noise) @@ -439,7 +440,7 @@ COOLDOWN_START(src, audio_cooldown, 0.5 SECONDS) var/sound/radio_receive = sound('sound/items/radio/radio_receive.ogg', volume = volume_modifier) radio_receive.frequency = get_rand_frequency_low_range() - SEND_SOUND(holder, radio_noise) + SEND_SOUND(holder, radio_receive) if((SPAN_COMMAND in spans) && COOLDOWN_FINISHED(src, important_audio_cooldown)) COOLDOWN_START(src, important_audio_cooldown, 0.5 SECONDS) var/sound/radio_important = sound('sound/items/radio/radio_important.ogg', volume = volume_modifier) From 42bd7434efde88b38d5dfa7e7a4140a98abb0543 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:17:09 +0000 Subject: [PATCH 022/126] Automatic changelog for PR #88596 [ci skip] --- html/changelogs/AutoChangeLog-pr-88596.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88596.yml diff --git a/html/changelogs/AutoChangeLog-pr-88596.yml b/html/changelogs/AutoChangeLog-pr-88596.yml new file mode 100644 index 0000000000000..d59028d86fc4e --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88596.yml @@ -0,0 +1,5 @@ +author: "Kocma-san" +delete-after: True +changes: + - bugfix: "fix radio sound output when receiving a message" + - sound: "the sound of receiving your own messages over the radio is no longer played" \ No newline at end of file From d1e437ee29ad5e171aa6a1a89bd0e11c4812fdcd Mon Sep 17 00:00:00 2001 From: grungussuss <96586172+Sadboysuss@users.noreply.github.com> Date: Sun, 22 Dec 2024 00:19:28 +0300 Subject: [PATCH 023/126] You will no longer die of motion sickness from gibtonite on icebox (#88608) ## About The Pull Request - if an explosion epicenter is not on a station area, then it will not screen shake all mobs on the z level if it was really far ## Why It's Good For The Game - why should a bomb from 100 tiles away screenshake the entire z level? - players have brought up their annoyance with icebox gitbtonite shaking the entire z level every time one explodes. ## Changelog :cl: grungussuss del: screenshake from explosions will no longer happen when it's really far and not on a station area (turf) /:cl: --- code/controllers/subsystem/explosions.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/controllers/subsystem/explosions.dm b/code/controllers/subsystem/explosions.dm index 20194e66626ca..2b61cabb86074 100644 --- a/code/controllers/subsystem/explosions.dm +++ b/code/controllers/subsystem/explosions.dm @@ -524,6 +524,7 @@ ADMIN_VERB(check_bomb_impacts, R_DEBUG, "Check Bomb Impact", "See what the effec /datum/controller/subsystem/explosions/proc/shake_the_room(turf/epicenter, near_distance, far_distance, quake_factor, echo_factor, creaking, sound/near_sound = sound(get_sfx(SFX_EXPLOSION)), sound/far_sound = sound('sound/effects/explosion/explosionfar.ogg'), sound/echo_sound = sound('sound/effects/explosion/explosion_distant.ogg'), sound/creaking_sound = sound(get_sfx(SFX_EXPLOSION_CREAKING)), hull_creaking_sound = sound(get_sfx(SFX_HULL_CREAKING))) var/frequency = get_rand_frequency() var/blast_z = epicenter.z + var/area/epicenter_area = get_area(epicenter) if(isnull(creaking)) // Autoset creaking. var/on_station = SSmapping.level_trait(epicenter.z, ZTRAIT_STATION) if(on_station && prob((quake_factor * QUAKE_CREAK_PROB) + (echo_factor * ECHO_CREAK_PROB))) // Huge explosions are near guaranteed to make the station creak and whine, smaller ones might. @@ -559,7 +560,7 @@ ADMIN_VERB(check_bomb_impacts, R_DEBUG, "Check Bomb Impact", "See what the effec base_shake_amount = max(base_shake_amount, quake_factor * 3, 0) // Devastating explosions rock the station and ground shake_camera(listener, FAR_SHAKE_DURATION, min(base_shake_amount, FAR_SHAKE_CAP)) - else if(!isspaceturf(listener_turf) && echo_factor) // Big enough explosions echo through the hull. + else if(!isspaceturf(listener_turf) && !(!(epicenter_area.type in GLOB.the_station_areas) && SSmapping.is_planetary()) && echo_factor) // Big enough explosions echo through the hull. Except on planetary maps if the epicenter is not on the station's area. var/echo_volume if(quake_factor) echo_volume = 60 From be8862b647e32084d03dd230018f0c72f08342da Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:20:06 +0000 Subject: [PATCH 024/126] Automatic changelog for PR #88608 [ci skip] --- html/changelogs/AutoChangeLog-pr-88608.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88608.yml diff --git a/html/changelogs/AutoChangeLog-pr-88608.yml b/html/changelogs/AutoChangeLog-pr-88608.yml new file mode 100644 index 0000000000000..e7ed3dd34af6a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88608.yml @@ -0,0 +1,4 @@ +author: "grungussuss" +delete-after: True +changes: + - rscdel: "screenshake from explosions will no longer happen when it's really far and not on a station area (turf)" \ No newline at end of file From 00fbea8748dbf53332774bf0df86d32b81e74e04 Mon Sep 17 00:00:00 2001 From: Tim <timothymtorres@gmail.com> Date: Sat, 21 Dec 2024 15:20:30 -0600 Subject: [PATCH 025/126] Add seconds define to teleporter (#88563) ## About The Pull Request `5 SECONDS` instead of `50` ## Why It's Good For The Game Better code. ## Changelog :cl: code: Improved teleporter SECONDS defines /:cl: --- code/game/machinery/computer/teleporter.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/machinery/computer/teleporter.dm b/code/game/machinery/computer/teleporter.dm index 8cd12610c748b..74e6d22e36355 100644 --- a/code/game/machinery/computer/teleporter.dm +++ b/code/game/machinery/computer/teleporter.dm @@ -116,7 +116,7 @@ say("Processing hub calibration to target...") calibrating = TRUE power_station.update_appearance() - addtimer(CALLBACK(src, PROC_REF(finish_calibration)), 50 * (3 - power_station.teleporter_hub.accuracy)) //Better parts mean faster calibration + addtimer(CALLBACK(src, PROC_REF(finish_calibration)), 5 SECONDS * (3 - power_station.teleporter_hub.accuracy)) //Better parts mean faster calibration return TRUE /obj/machinery/computer/teleporter/proc/set_teleport_target(new_target) From dd0893569c5630b6954592a6bac3da29d22f0712 Mon Sep 17 00:00:00 2001 From: Tim <timothymtorres@gmail.com> Date: Sat, 21 Dec 2024 15:21:02 -0600 Subject: [PATCH 026/126] Holodeck grammar tweak (#88566) ## About The Pull Request Apparently adding a tiny coffee machine worth of power to make this accurate: `to_chat(user, span_warning("You vastly increase projector power and override the safety and security protocols."))` was too much. So let's just do a grammar tweak to fix it. Is ## Why It's Good For The Game Accurate descriptions. ## Changelog :cl: spellcheck: Fix holodeck emag message claiming to increase power /:cl: --- code/game/objects/items/teleportation.dm | 12 +++++++++++- code/modules/holodeck/computer.dm | 4 ++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items/teleportation.dm b/code/game/objects/items/teleportation.dm index 6fca04c7a3f40..ad62f3c086735 100644 --- a/code/game/objects/items/teleportation.dm +++ b/code/game/objects/items/teleportation.dm @@ -179,7 +179,17 @@ var/area/computer_area = get_area(target) if(!computer_area || (computer_area.area_flags & NOTELEPORT)) continue - if(computer.power_station?.teleporter_hub && computer.power_station.engaged) + + if(!computer.power_station || !computer.power_station.teleporter_hub) + continue + + if((computer.power_station.machine_stat & (NOPOWER|BROKEN|MAINT)) || computer.power_station.panel_open) + continue + + if((computer.power_station.teleporter_hub.machine_stat & (NOPOWER|BROKEN|MAINT)) || computer.power_station.teleporter_hub.panel_open) + continue + + if(computer.power_station.engaged) locations["[get_area(target)] (Active)"] = computer else locations["[get_area(target)] (Inactive)"] = computer diff --git a/code/modules/holodeck/computer.dm b/code/modules/holodeck/computer.dm index 6d9c380112b7c..6d80e1683fbe1 100644 --- a/code/modules/holodeck/computer.dm +++ b/code/modules/holodeck/computer.dm @@ -434,8 +434,8 @@ GLOBAL_LIST_INIT(typecache_holodeck_linked_floorcheck_ok, typecacheof(list(/turf playsound(src, SFX_SPARKS, 75, TRUE) obj_flags |= EMAGGED if (user) - balloon_alert(user, "safety protocols destroyed") // im gonna keep this once since this perfectly describes it, and the to_chat is just flavor - to_chat(user, span_warning("You vastly increase projector power and override the safety and security protocols.")) + balloon_alert(user, "safety protocols destroyed") // im gonna keep this once since this perfectly describes it + to_chat(user, span_warning("You override the safety and security protocols.")) user.log_message("emagged the Holodeck Control Console.", LOG_GAME) message_admins("[ADMIN_LOOKUPFLW(user)] emagged the Holodeck Control Console.") From b82d15df0e75b0b0623a95987de714b9e60f7743 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:21:24 +0000 Subject: [PATCH 027/126] Automatic changelog for PR #88566 [ci skip] --- html/changelogs/AutoChangeLog-pr-88566.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88566.yml diff --git a/html/changelogs/AutoChangeLog-pr-88566.yml b/html/changelogs/AutoChangeLog-pr-88566.yml new file mode 100644 index 0000000000000..9e11b9250c684 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88566.yml @@ -0,0 +1,4 @@ +author: "timothymtorres" +delete-after: True +changes: + - spellcheck: "Fix holodeck emag message claiming to increase power" \ No newline at end of file From dc7cc0086c6016add94858c1e2b50b14ae5163eb Mon Sep 17 00:00:00 2001 From: Lucy <lucy@absolucy.moe> Date: Sat, 21 Dec 2024 16:22:24 -0500 Subject: [PATCH 028/126] Rust heretic healing now uses delta time (#88569) ## About The Pull Request This makes it so leeching walk and ascended rust heretic healing effects (the healing that occurs during life ticks) have the healing amount multiplied by `DELTA_WORLD_TIME(SSmobs)`, to compensate for skipped/delayed fires. ## Why It's Good For The Game Delays in SSmobs firing (i.e explosions pausing all non-ticker subsystems) can very easily get you killed if you're relying on the rust heretic healing mid-combat. ## Changelog :cl: qol: Rust heretic healing (leeching walk, rust ascension) now, so server lag shouldn't fuck you over nearly as much if you're relying on the healing. /:cl: --- code/datums/elements/leeching_walk.dm | 22 +++++++++---------- .../heretic/knowledge/rust_lore.dm | 13 ++++++----- 2 files changed, 18 insertions(+), 17 deletions(-) diff --git a/code/datums/elements/leeching_walk.dm b/code/datums/elements/leeching_walk.dm index c9f547189e699..f5148b43a5a52 100644 --- a/code/datums/elements/leeching_walk.dm +++ b/code/datums/elements/leeching_walk.dm @@ -24,9 +24,8 @@ var/turf/mover_turf = get_turf(source) if(HAS_TRAIT(mover_turf, TRAIT_RUSTY)) ADD_TRAIT(source, TRAIT_BATON_RESISTANCE, type) - return - - REMOVE_TRAIT(source, TRAIT_BATON_RESISTANCE, type) + else + REMOVE_TRAIT(source, TRAIT_BATON_RESISTANCE, type) /** * Signal proc for [COMSIG_LIVING_LIFE]. @@ -43,17 +42,18 @@ // Heals all damage + Stamina var/need_mob_update = FALSE - need_mob_update += source.adjustBruteLoss(-3, updating_health = FALSE) - need_mob_update += source.adjustFireLoss(-3, updating_health = FALSE) - need_mob_update += source.adjustToxLoss(-3, updating_health = FALSE, forced = TRUE) // Slimes are people to - need_mob_update += source.adjustOxyLoss(-1.5, updating_health = FALSE) - need_mob_update += source.adjustStaminaLoss(-10, updating_stamina = FALSE) + var/delta_time = DELTA_WORLD_TIME(SSmobs) * 0.5 // SSmobs.wait is 2 secs, so this should be halved. + need_mob_update += source.adjustBruteLoss(-3 * delta_time, updating_health = FALSE) + need_mob_update += source.adjustFireLoss(-3 * delta_time, updating_health = FALSE) + need_mob_update += source.adjustToxLoss(-3 * delta_time, updating_health = FALSE, forced = TRUE) // Slimes are people too + need_mob_update += source.adjustOxyLoss(-1.5 * delta_time, updating_health = FALSE) + need_mob_update += source.adjustStaminaLoss(-10 * delta_time, updating_stamina = FALSE) if(need_mob_update) source.updatehealth() // Reduces duration of stuns/etc - source.AdjustAllImmobility(-0.5 SECONDS) + source.AdjustAllImmobility((-0.5 SECONDS) * delta_time) // Heals blood loss if(source.blood_volume < BLOOD_VOLUME_NORMAL) - source.blood_volume += 2.5 * seconds_per_tick + source.blood_volume += 2.5 * delta_time // Slowly regulates your body temp - source.adjust_bodytemperature((source.get_body_temp_normal() - source.bodytemperature)/5) + source.adjust_bodytemperature((source.get_body_temp_normal() - source.bodytemperature) / 5) diff --git a/code/modules/antagonists/heretic/knowledge/rust_lore.dm b/code/modules/antagonists/heretic/knowledge/rust_lore.dm index 41db760f53ae6..4a60d372445e1 100644 --- a/code/modules/antagonists/heretic/knowledge/rust_lore.dm +++ b/code/modules/antagonists/heretic/knowledge/rust_lore.dm @@ -287,12 +287,13 @@ return var/need_mob_update = FALSE - need_mob_update += source.adjustBruteLoss(-5, updating_health = FALSE) - need_mob_update += source.adjustFireLoss(-5, updating_health = FALSE) - need_mob_update += source.adjustToxLoss(-5, updating_health = FALSE, forced = TRUE) - need_mob_update += source.adjustOxyLoss(-5, updating_health = FALSE) - need_mob_update += source.adjustStaminaLoss(-20, updating_stamina = FALSE) + var/base_heal_amt = 2.5 * DELTA_WORLD_TIME(SSmobs) + need_mob_update += source.adjustBruteLoss(-base_heal_amt, updating_health = FALSE) + need_mob_update += source.adjustFireLoss(-base_heal_amt, updating_health = FALSE) + need_mob_update += source.adjustToxLoss(-base_heal_amt, updating_health = FALSE, forced = TRUE) + need_mob_update += source.adjustOxyLoss(-base_heal_amt, updating_health = FALSE) + need_mob_update += source.adjustStaminaLoss(-base_heal_amt * 4, updating_stamina = FALSE) if(source.blood_volume < BLOOD_VOLUME_NORMAL) - source.blood_volume += 5 * seconds_per_tick + source.blood_volume += base_heal_amt if(need_mob_update) source.updatehealth() From c810ae6948a2d85dd913ec3d1aa80e64cda7dae3 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:22:58 +0000 Subject: [PATCH 029/126] Automatic changelog for PR #88569 [ci skip] --- html/changelogs/AutoChangeLog-pr-88569.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88569.yml diff --git a/html/changelogs/AutoChangeLog-pr-88569.yml b/html/changelogs/AutoChangeLog-pr-88569.yml new file mode 100644 index 0000000000000..f9db5c10ca6ff --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88569.yml @@ -0,0 +1,4 @@ +author: "Absolucy" +delete-after: True +changes: + - qol: "Rust heretic healing (leeching walk, rust ascension) now, so server lag shouldn't fuck you over nearly as much if you're relying on the healing." \ No newline at end of file From eaebd9d8ea7b0d42731d7b054d8d9a30f1d79bbf Mon Sep 17 00:00:00 2001 From: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Date: Sun, 22 Dec 2024 00:23:07 +0300 Subject: [PATCH 030/126] Bioscrambler no longer informs you about "your armor softening the blow!" (#88610) ## About The Pull Request Made bioscrabmle() proc's armor check silent and moved text from a successful block into its early return. ## Why It's Good For The Game Less than 100 protection from bioscramblers doesn't do anything, so text about "armor softening the blow" is nonsensical, both as there is no blow to soften, and as armor below 100 doesn't actually do anything. A bit of a nitpick, but its been annoying me to all hell every time I encounter one (as RD's coat provides some protection). Only other source of BIO armor checks is Phazon, but the text makes sense there and nothing runs armor checks against FIRE and ACID, so there's nothing else to fix. ## Changelog :cl: spellcheck: Bioscrambler no longer informs you about "your armor softening the blow!" /:cl: --- code/modules/mob/living/carbon/carbon_defense.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index ee06686faafee..b5bc0f4909edc 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -662,7 +662,8 @@ if (HAS_TRAIT(src, TRAIT_GENELESS)) return FALSE - if (run_armor_check(attack_flag = BIO, absorb_text = "Your armor protects you from [scramble_source]!") >= 100) + if (run_armor_check(attack_flag = BIO, silent = TRUE) >= 100) + to_chat(src, span_warning("Your armor shields you from [scramble_source]!")) return FALSE if (!length(GLOB.bioscrambler_valid_organs) || !length(GLOB.bioscrambler_valid_parts)) From ddf04e1a16d67a1a3692101ae6ce9799498192b0 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:23:29 +0000 Subject: [PATCH 031/126] Automatic changelog for PR #88610 [ci skip] --- html/changelogs/AutoChangeLog-pr-88610.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88610.yml diff --git a/html/changelogs/AutoChangeLog-pr-88610.yml b/html/changelogs/AutoChangeLog-pr-88610.yml new file mode 100644 index 0000000000000..958a64f99451b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88610.yml @@ -0,0 +1,4 @@ +author: "SmArtKar" +delete-after: True +changes: + - spellcheck: "Bioscrambler no longer informs you about \"your armor softening the blow!\"" \ No newline at end of file From 8c3b0a4f4bad4a5d28d0de8420ded78c3c0123c1 Mon Sep 17 00:00:00 2001 From: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Date: Sun, 22 Dec 2024 00:26:14 +0300 Subject: [PATCH 032/126] Chemmaster no longer rounds reagent amounts when trying to transfer a custom amount (#88590) ## About The Pull Request #82002 changed custom transfer amount into a TGUI popup, which has rounding on by default. This prevents players from being able to transfer decimal amounts of reagents like they could previously. ## Why It's Good For The Game This is useful for high-purity recipes, or when you REALLY want to microdose something. Right now the only way to do this is by printing tiny pills and dissolving those which is very bootleg. ## Changelog :cl: fix: Chemmaster no longer rounds reagent amounts when trying to transfer a custom amount /:cl: --- code/modules/reagents/chemistry/machinery/chem_master.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/reagents/chemistry/machinery/chem_master.dm b/code/modules/reagents/chemistry/machinery/chem_master.dm index bcb6cac2f183d..22abc46d04009 100644 --- a/code/modules/reagents/chemistry/machinery/chem_master.dm +++ b/code/modules/reagents/chemistry/machinery/chem_master.dm @@ -415,7 +415,7 @@ if(amount == -1) // Set custom amount var/mob/user = ui.user //Hold a reference of the user if the UI is closed - amount = tgui_input_number(user, "Enter amount to transfer", "Transfer amount") + amount = FLOOR(tgui_input_number(user, "Enter amount to transfer", "Transfer amount", round_value = FALSE), CHEMICAL_VOLUME_ROUNDING) if(!amount || !user.can_perform_action(src)) return FALSE From d0ba3918b8259a4cf044e2b284f313db31dbc94f Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:26:34 +0000 Subject: [PATCH 033/126] Automatic changelog for PR #88590 [ci skip] --- html/changelogs/AutoChangeLog-pr-88590.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88590.yml diff --git a/html/changelogs/AutoChangeLog-pr-88590.yml b/html/changelogs/AutoChangeLog-pr-88590.yml new file mode 100644 index 0000000000000..114a95b290c91 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88590.yml @@ -0,0 +1,4 @@ +author: "SmArtKar" +delete-after: True +changes: + - bugfix: "Chemmaster no longer rounds reagent amounts when trying to transfer a custom amount" \ No newline at end of file From bdca5fc2a3867dcdfb504cc83d1d867314b1f619 Mon Sep 17 00:00:00 2001 From: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Date: Sun, 22 Dec 2024 02:58:31 +0530 Subject: [PATCH 034/126] General maintenance for mecha RCD (#88614) ## About The Pull Request **1. Code Improvements** - Converted `rcd_range` from a var into a define to save memory - Removed var `rcd_type` as it was redundant with the type of `internal_rcd` var - Moved attack chain code from `attackby()` to `interact_with_atom()` when installing disk upgrade **2. Fixes** Fixes https://github.com/tgstation/tgstation/pull/88589#issuecomment-2552405018, https://github.com/tgstation/tgstation/pull/88589#issuecomment-2552294674. i.e. the RCD cancels it's construction & deconstruction action if - The mech rotates away from where its building - The mech moves ## Changelog :cl: code: improved code for mecha rcd fix: mecha rcd will cancel its action when the mech is rotated or moves during the action /:cl: --- code/game/objects/items/rcd/RCD.dm | 12 +++++ code/game/objects/items/rcd/RHD.dm | 2 + .../mecha/equipment/tools/work_tools.dm | 49 ++++++++++++------- 3 files changed, 46 insertions(+), 17 deletions(-) diff --git a/code/game/objects/items/rcd/RCD.dm b/code/game/objects/items/rcd/RCD.dm index 60f84e14651b9..3dab53cb8ff27 100644 --- a/code/game/objects/items/rcd/RCD.dm +++ b/code/game/objects/items/rcd/RCD.dm @@ -565,6 +565,18 @@ return owner.ui_status(user) return UI_CLOSE +/obj/item/construction/rcd/exosuit/build_delay(mob/user, delay, atom/target) + if(delay <= 0) + return TRUE + + var/obj/item/mecha_parts/mecha_equipment/rcd/module = loc + + //deconstruction can't be cancelled by ui changes + if(mode != RCD_DECONSTRUCT) + blueprint_changed = FALSE + + return module.do_after_mecha(target, user, delay) + /obj/item/construction/rcd/exosuit/get_matter(mob/user) if(silo_link) return ..() diff --git a/code/game/objects/items/rcd/RHD.dm b/code/game/objects/items/rcd/RHD.dm index ce9f211b6942e..85cdc21947b6d 100644 --- a/code/game/objects/items/rcd/RHD.dm +++ b/code/game/objects/items/rcd/RHD.dm @@ -63,6 +63,8 @@ return do_after(user, delay, target, extra_checks = CALLBACK(src, PROC_REF(blueprint_change))) /obj/item/construction/proc/blueprint_change() + PRIVATE_PROC(TRUE) + return !blueprint_changed ///used for examining the RCD and for its UI diff --git a/code/modules/vehicles/mecha/equipment/tools/work_tools.dm b/code/modules/vehicles/mecha/equipment/tools/work_tools.dm index c30e67a274633..f080675af4673 100644 --- a/code/modules/vehicles/mecha/equipment/tools/work_tools.dm +++ b/code/modules/vehicles/mecha/equipment/tools/work_tools.dm @@ -217,31 +217,32 @@ attempt_refill(usr) return TRUE +///Maximum range the RCD can construct at. +#define RCD_RANGE 3 + /obj/item/mecha_parts/mecha_equipment/rcd name = "mounted RCD" desc = "An exosuit-mounted Rapid Construction Device." icon_state = "mecha_rcd" equip_cooldown = 0 // internal RCD already handles it energy_drain = 0 // internal RCD handles power consumption based on matter use - range = MECHA_MELEE|MECHA_RANGED + range = MECHA_MELEE | MECHA_RANGED item_flags = NO_MAT_REDEMPTION - ///Maximum range the RCD can construct at. - var/rcd_range = 3 + + ///The location the mech was when it began using the rcd + var/atom/initial_location = FALSE ///Whether or not to deconstruct instead. var/deconstruct_active = FALSE - ///The type of internal RCD this equipment uses. - var/rcd_type = /obj/item/construction/rcd/exosuit ///The internal RCD item used by this equipment. - var/obj/item/construction/rcd/internal_rcd + var/obj/item/construction/rcd/exosuit/internal_rcd /obj/item/mecha_parts/mecha_equipment/rcd/Initialize(mapload) . = ..() - internal_rcd = new rcd_type(src) - GLOB.rcd_list += src + internal_rcd = new(src) /obj/item/mecha_parts/mecha_equipment/rcd/Destroy() - GLOB.rcd_list -= src - qdel(internal_rcd) + initial_location = null + QDEL_NULL(internal_rcd) return ..() /obj/item/mecha_parts/mecha_equipment/rcd/get_snowflake_data() @@ -277,16 +278,28 @@ internal_rcd.ui_interact(driver) return TRUE + +/obj/item/mecha_parts/mecha_equipment/rcd/do_after_checks(atom/target) + // Checks if mech moved during operation + if(chassis.loc != initial_location) + return FALSE + + // Cancel build if design changes + if(!deconstruct_active && internal_rcd.blueprint_changed) + return FALSE + + return ..() + /obj/item/mecha_parts/mecha_equipment/rcd/action(mob/source, atom/target, list/modifiers) if(!action_checks(target)) return - if(get_dist(chassis, target) > rcd_range) + if(get_dist(chassis, target) > RCD_RANGE) balloon_alert(source, "out of range!") return - if(!internal_rcd) // if it somehow went missing - internal_rcd = new rcd_type(src) - stack_trace("Exosuit-mounted RCD had no internal RCD!") + initial_location = chassis.loc + ..() // do this now because the do_after can take a while + var/construction_mode = internal_rcd.mode if(deconstruct_active) // deconstruct isn't in the RCD menu so switch it to deconstruct mode and set it back when it's done internal_rcd.mode = RCD_DECONSTRUCT @@ -294,11 +307,13 @@ internal_rcd.mode = construction_mode return TRUE -/obj/item/mecha_parts/mecha_equipment/rcd/attackby(obj/item/attacking_item, mob/user, params) +/obj/item/mecha_parts/mecha_equipment/rcd/interact_with_atom(obj/item/attacking_item, mob/living/user, list/modifiers) + . = NONE if(istype(attacking_item, /obj/item/rcd_upgrade)) internal_rcd.install_upgrade(attacking_item, user) - return - return ..() + return ITEM_INTERACT_SUCCESS + +#undef RCD_RANGE //Dunno where else to put this so shrug /obj/item/mecha_parts/mecha_equipment/ripleyupgrade From 529674bfabd176257e0de4dbafaeb23043e03cb2 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:28:50 +0000 Subject: [PATCH 035/126] Automatic changelog for PR #88614 [ci skip] --- html/changelogs/AutoChangeLog-pr-88614.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88614.yml diff --git a/html/changelogs/AutoChangeLog-pr-88614.yml b/html/changelogs/AutoChangeLog-pr-88614.yml new file mode 100644 index 0000000000000..fb92e384cb2da --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88614.yml @@ -0,0 +1,5 @@ +author: "SyncIt21" +delete-after: True +changes: + - code_imp: "improved code for mecha rcd" + - bugfix: "mecha rcd will cancel its action when the mech is rotated or moves during the action" \ No newline at end of file From d69bb900c6de9c0d03880bc54a5e020fe77dd8cc Mon Sep 17 00:00:00 2001 From: Kocma-san <112967882+Kocma-san@users.noreply.github.com> Date: Sun, 22 Dec 2024 04:29:13 +0700 Subject: [PATCH 036/126] enhancements for fax requests in request manager (#88391) ## About The Pull Request Addition to [#84910](https://github.com/tgstation/tgstation/pull/84910) Added a "print" button to the request manager. It simply prints at the centcom station the paper that was faxed to the admins. Also added "Auto-print Faxes" button to the request manager, which allows you to enable automatic printing of requests on the admin fax <details> <summary>Screenshots</summary>    </details> ## Why It's Good For The Game The message in the chat may get lost. In this case, it will no longer be possible to print the paper sent to the CC Changing the allow_exotic_faxes variable will allow you to fax something unusual to the station in (very rare) situations. No need to manually change this variable ## Changelog :cl: add: added a "print" button to the request manager add: admin fax can now send exotic items add: added "Auto-print Faxes" button to the request manager, which allows you to enable automatic printing of requests on the admin fax fix: fixed a bug where pressing the print button would cause the receive animation to appear on all admin faxes. /:cl: --- code/modules/admin/topic.dm | 2 +- code/modules/paperwork/fax.dm | 11 ++++++++++- code/modules/requests/request_manager.dm | 18 +++++++++++++++++- .../tgui/interfaces/RequestManager.tsx | 18 +++++++++++++++++- 4 files changed, 45 insertions(+), 4 deletions(-) diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 6a2666eef9bed..f517a7a7a51cb 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -1731,7 +1731,7 @@ if(FAX.fax_id != href_list["destination"]) continue FAX.receive(locate(href_list["print_fax"]), href_list["sender_name"]) - + return else if(href_list["play_internet"]) if(!check_rights(R_SOUND)) diff --git a/code/modules/paperwork/fax.dm b/code/modules/paperwork/fax.dm index f2935853a6db5..62a269d477e46 100644 --- a/code/modules/paperwork/fax.dm +++ b/code/modules/paperwork/fax.dm @@ -1,4 +1,5 @@ GLOBAL_VAR_INIT(nt_fax_department, pick("NT HR Department", "NT Legal Department", "NT Complaint Department", "NT Customer Relations", "Nanotrasen Tech Support", "NT Internal Affairs Dept")) +GLOBAL_VAR_INIT(fax_autoprinting, FALSE) /obj/machinery/fax name = "Fax Machine" @@ -325,7 +326,7 @@ GLOBAL_VAR_INIT(nt_fax_department, pick("NT HR Department", "NT Legal Department history_add("Send", params["name"]) - GLOB.requests.fax_request(usr.client, "sent a fax message from [fax_name]/[fax_id] to [params["name"]]", fax_paper) + GLOB.requests.fax_request(usr.client, "sent a fax message from [fax_name]/[fax_id] to [params["name"]]", list("paper" = fax_paper, "destination_id" = params["id"], "sender_name" = fax_name)) to_chat(GLOB.admins, span_adminnotice("[icon2html(src.icon, GLOB.admins)]<b><font color=green>FAX REQUEST: </font>[ADMIN_FULLMONTY(usr)]:</b> [span_linkify("sent a fax message from [fax_name]/[fax_id][ADMIN_FLW(src)] to [html_encode(params["name"])]")] [ADMIN_SHOW_PAPER(fax_paper)] [ADMIN_PRINT_FAX(fax_paper, fax_name, params["id"])]"), type = MESSAGE_TYPE_PRAYER, @@ -333,6 +334,14 @@ GLOBAL_VAR_INIT(nt_fax_department, pick("NT HR Department", "NT Legal Department for(var/client/staff as anything in GLOB.admins) if(staff?.prefs.read_preference(/datum/preference/toggle/comms_notification)) SEND_SOUND(staff, sound('sound/misc/server-ready.ogg')) + + if(GLOB.fax_autoprinting) + for(var/obj/machinery/fax/admin/FAX as anything in SSmachines.get_machines_by_type_and_subtypes(/obj/machinery/fax/admin)) + if(FAX.fax_id != params["id"]) + continue + FAX.receive(fax_paper, fax_name) + break + log_fax(fax_paper, params["id"], params["name"]) loaded_item_ref = null update_appearance() diff --git a/code/modules/requests/request_manager.dm b/code/modules/requests/request_manager.dm index 99a9bba1cc84f..3106a925acd2c 100644 --- a/code/modules/requests/request_manager.dm +++ b/code/modules/requests/request_manager.dm @@ -154,6 +154,10 @@ GLOBAL_DATUM_INIT(requests, /datum/request_manager, new) to_chat(usr, "You do not have permission to do this, you require +ADMIN", confidential = TRUE) return + if (action == "toggleprint") + GLOB.fax_autoprinting = !GLOB.fax_autoprinting + return TRUE + // Get the request this relates to var/id = params["id"] != null ? text2num(params["id"]) : null if (!id) @@ -228,9 +232,20 @@ GLOBAL_DATUM_INIT(requests, /datum/request_manager, new) if(request.req_type != REQUEST_FAX) to_chat(usr, "Request doesn't have a paper to read.", confidential = TRUE) return TRUE - var/obj/item/paper/request_message = request.additional_information + var/obj/item/paper/request_message = request.additional_information["paper"] request_message.ui_interact(usr) return TRUE + if ("print") + if (request.req_type != REQUEST_FAX) + to_chat(usr, "Request doesn't have a paper to print.", confidential = TRUE) + return TRUE + for(var/obj/machinery/fax/admin/FAX as anything in SSmachines.get_machines_by_type_and_subtypes(/obj/machinery/fax/admin)) + if(FAX.fax_id != request.additional_information["destination_id"]) + continue + var/obj/item/paper/request_message = request.additional_information["paper"] + var/sender_name = request.additional_information["sender_name"] + FAX.receive(request_message, sender_name) + return TRUE if ("play") if(request.req_type != REQUEST_INTERNET_SOUND) to_chat(usr, "Request doesn't have a sound to play.", confidential = TRUE) @@ -257,6 +272,7 @@ GLOBAL_DATUM_INIT(requests, /datum/request_manager, new) "timestamp" = request.timestamp, "timestamp_str" = gameTimestamp(wtime = request.timestamp) )) + data["fax_autoprinting"] = GLOB.fax_autoprinting return data #undef REQUEST_PRAYER diff --git a/tgui/packages/tgui/interfaces/RequestManager.tsx b/tgui/packages/tgui/interfaces/RequestManager.tsx index 9a009106788b7..5bc63512f3fbb 100644 --- a/tgui/packages/tgui/interfaces/RequestManager.tsx +++ b/tgui/packages/tgui/interfaces/RequestManager.tsx @@ -3,6 +3,7 @@ * @copyright 2021 bobbahbrown (https://github.com/bobbahbrown) * @license MIT */ +import { BooleanLike } from 'common/react'; import { createSearch, decodeHtmlEntities } from 'common/string'; import { useState } from 'react'; @@ -12,6 +13,7 @@ import { Window } from '../layouts'; type Data = { requests: Request[]; + fax_autoprinting: BooleanLike; }; type Request = { @@ -72,6 +74,15 @@ export const RequestManager = (props) => { buttons={ <Stack> <Stack.Item> + <Button.Checkbox + checked={data.fax_autoprinting} + onClick={() => act('toggleprint')} + tooltip={ + 'Enables automatic printing of fax requests to the admin fax machine. By default, this fax is located in the briefing room at the central command station' + } + > + Auto-print Faxes + </Button.Checkbox> <Input value={searchText} onInput={(_, value) => setSearchText(value)} @@ -146,7 +157,12 @@ const RequestControls = (props) => { </Button> )} {request.req_type === 'request_fax' && ( - <Button onClick={() => act('show', { id: request.id })}>SHOW</Button> + <> + <Button onClick={() => act('show', { id: request.id })}>SHOW</Button> + <Button onClick={() => act('print', { id: request.id })}> + PRINT + </Button> + </> )} {request.req_type === 'request_internet_sound' && ( <Button onClick={() => act('play', { id: request.id })}>PLAY</Button> From 3652c6ead935051500d54ef32659c89f1fd7933d Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:30:01 +0000 Subject: [PATCH 037/126] Automatic changelog for PR #88391 [ci skip] --- html/changelogs/AutoChangeLog-pr-88391.yml | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88391.yml diff --git a/html/changelogs/AutoChangeLog-pr-88391.yml b/html/changelogs/AutoChangeLog-pr-88391.yml new file mode 100644 index 0000000000000..12bfe4a8a99b2 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88391.yml @@ -0,0 +1,7 @@ +author: "Kocma-san" +delete-after: True +changes: + - rscadd: "added a \"print\" button to the request manager" + - rscadd: "admin fax can now send exotic items" + - rscadd: "added \"Auto-print Faxes\" button to the request manager, which allows you to enable automatic printing of requests on the admin fax" + - bugfix: "fixed a bug where pressing the print button would cause the receive animation to appear on all admin faxes." \ No newline at end of file From cdda52aba97fd5b18eb91d6e9ce70b4c2d5fdf29 Mon Sep 17 00:00:00 2001 From: Gaxeer <44334376+Gaxeer@users.noreply.github.com> Date: Sat, 21 Dec 2024 23:32:57 +0200 Subject: [PATCH 038/126] add laptop interact on RMB click, screentips (#88612) ## About The Pull Request <!-- Describe The Pull Request. Please be sure every change is documented or this can delay review and even discourage maintainers from merging your PR! --> Modular computer laptops can now be interacted with RMB when open, or opened with RMB when closed. Also screentips for this added. It was inteded for laptops to be interactable when open. but didn't work because old code was not adjusted for attack chains. ## Why It's Good For The Game Laptop usage is more user friendly :D <details> <summary>Demonstration :D</summary>  </details> ## Changelog :cl: fix: modular computer laptops can now be interacted with RMB, instead of picked up qol: modular computer laptops can now be interacted with RMB when open, or opened with RMB when closed. Also screentips for this added /:cl: --------- Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> --- .../computers/item/laptop.dm | 25 +++++++++++++------ 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/code/modules/modular_computers/computers/item/laptop.dm b/code/modules/modular_computers/computers/item/laptop.dm index 5053b6c6b2cbe..343a09a980d30 100644 --- a/code/modules/modular_computers/computers/item/laptop.dm +++ b/code/modules/modular_computers/computers/item/laptop.dm @@ -29,6 +29,16 @@ if(screen_on) . += span_notice("Alt-click to close it.") +/obj/item/modular_computer/laptop/add_context(atom/source, list/context, obj/item/held_item, mob/living/user) + . = ..() + if(screen_on) + context[SCREENTIP_CONTEXT_ALT_LMB] = "Close" + context[SCREENTIP_CONTEXT_RMB] = "Interact" + else + context[SCREENTIP_CONTEXT_RMB] = "Open" + + return CONTEXTUAL_SCREENTIP_SET + /obj/item/modular_computer/laptop/Initialize(mapload) . = ..() @@ -70,13 +80,6 @@ return user.put_in_hand(src, H.held_index) -/obj/item/modular_computer/laptop/attack_hand(mob/user, list/modifiers) - . = ..() - if(.) - return - if(screen_on && isturf(loc)) - return attack_self(user) - /obj/item/modular_computer/laptop/proc/try_toggle_open(mob/living/user) if(issilicon(user)) return @@ -94,6 +97,14 @@ try_toggle_open(user) // Close it. return CLICK_ACTION_SUCCESS +/obj/item/modular_computer/laptop/attack_hand_secondary(mob/user, list/modifiers) + . = ..() + if(. == SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN) + return + + attack_self(user) + return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN + /obj/item/modular_computer/laptop/proc/toggle_open(mob/living/user=null) if(screen_on) to_chat(user, span_notice("You close \the [src].")) From 6109e8e8e5464eb3fb6aa38ee97e013fc59c7fcf Mon Sep 17 00:00:00 2001 From: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Date: Sun, 22 Dec 2024 00:34:17 +0300 Subject: [PATCH 039/126] [NO GBP] Fixes floodlights not being affected by spraycan painting (#88531) ## About The Pull Request Missed that one ## Changelog :cl: fix: Fixed floodlights not being affected by spraycan painting /:cl: --- code/modules/power/floodlight.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/modules/power/floodlight.dm b/code/modules/power/floodlight.dm index 5b9d983cf1dd6..7db89987d2d44 100644 --- a/code/modules/power/floodlight.dm +++ b/code/modules/power/floodlight.dm @@ -173,6 +173,8 @@ var/light_color = NONSENSICAL_VALUE if(!isnull(color)) light_color = color + if (cached_color_filter) + light_color = apply_matrix_to_color(COLOR_WHITE, cached_color_filter["color"], cached_color_filter["space"] || COLORSPACE_RGB) set_light(light_setting_list[setting], light_power, light_color) /obj/machinery/power/floodlight/add_context( From f1696412d645f9ac328a132eac7edc9253198ae5 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:34:23 +0000 Subject: [PATCH 040/126] Automatic changelog for PR #88612 [ci skip] --- html/changelogs/AutoChangeLog-pr-88612.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88612.yml diff --git a/html/changelogs/AutoChangeLog-pr-88612.yml b/html/changelogs/AutoChangeLog-pr-88612.yml new file mode 100644 index 0000000000000..208928a92f3cb --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88612.yml @@ -0,0 +1,5 @@ +author: "Gaxeer" +delete-after: True +changes: + - bugfix: "modular computer laptops can now be interacted with RMB, instead of picked up" + - qol: "modular computer laptops can now be interacted with RMB when open, or opened with RMB when closed. Also screentips for this added" \ No newline at end of file From eefd4931bce93063648ed88d7b456f33aee2e3d3 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 21:38:21 +0000 Subject: [PATCH 041/126] Automatic changelog for PR #88531 [ci skip] --- html/changelogs/AutoChangeLog-pr-88531.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88531.yml diff --git a/html/changelogs/AutoChangeLog-pr-88531.yml b/html/changelogs/AutoChangeLog-pr-88531.yml new file mode 100644 index 0000000000000..7fbd94c9aed14 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88531.yml @@ -0,0 +1,4 @@ +author: "SmArtKar" +delete-after: True +changes: + - bugfix: "Fixed floodlights not being affected by spraycan painting" \ No newline at end of file From dbdcd69c1fd6994d89b150cf91c94f3dc96349b8 Mon Sep 17 00:00:00 2001 From: mcbalaam <104003807+mcbalaam@users.noreply.github.com> Date: Sun, 22 Dec 2024 05:09:20 +0700 Subject: [PATCH 042/126] Fixes the mail sorter runtiming processing assistant mail (#88562) ## About The Pull Request The mail sorter doesn't runtime when processing assistant mail now. Also now it properly ejects envelopes upon deconstruction. ## Why It's Good For The Game Because that caused the mail sorter to freeze, not even being able to get the mail back. Closes https://github.com/tgstation/tgstation/issues/88549. ## Changelog :cl: fix: The mail sorter no longer runtimes processing assistant mail /:cl: --- code/modules/vending/mail.dm | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/code/modules/vending/mail.dm b/code/modules/vending/mail.dm index 1e091a3128756..6bc3648b056d1 100644 --- a/code/modules/vending/mail.dm +++ b/code/modules/vending/mail.dm @@ -46,11 +46,13 @@ /obj/machinery/mailsorter/proc/get_unload_turf() return get_step(src, output_dir) +/// Opening the maintenance panel. /obj/machinery/mailsorter/screwdriver_act(mob/living/user, obj/item/tool) default_deconstruction_screwdriver(user, "[base_icon_state]-off", base_icon_state, tool) update_appearance(UPDATE_OVERLAYS) return ITEM_INTERACT_SUCCESS +/// Deconstructing the mail sorter. /obj/machinery/mailsorter/crowbar_act(mob/living/user, obj/item/tool) default_deconstruction_crowbar(tool) return ITEM_INTERACT_SUCCESS @@ -63,11 +65,15 @@ . += span_notice("Alt-click to rotate the output direction.") /obj/machinery/mailsorter/Destroy() + QDEL_LIST(mail_list) + . = ..() + +/obj/machinery/mailsorter/on_deconstruction(disassembled) drop_all_mail() . = ..() -/// Drops all enevlopes on the machine turf. Only occurs when the machine is broken. -/obj/machinery/mailsorter/proc/drop_all_mail(damage_flag) +/// Drops all enevlopes on the machine turf. +/obj/machinery/mailsorter/proc/drop_all_mail() if(!isturf(get_turf(src))) QDEL_LIST(mail_list) return @@ -90,10 +96,6 @@ /obj/machinery/mailsorter/proc/accept_check(obj/item/weapon) var/static/list/accepted_items = list( /obj/item/mail, - /obj/item/mail/envelope, - /obj/item/mail/junkmail, - /obj/item/mail/mail_strike, - /obj/item/mail/traitor, /obj/item/paper, ) return is_type_in_list(weapon, accepted_items) @@ -151,10 +153,13 @@ if (some_recipient) var/datum/job/recipient_job = some_recipient.assigned_role var/datum/job_department/primary_department = recipient_job.departments_list?[1] - var/datum/job_department/main_department = primary_department.department_name - if (main_department == sorting_dept) - sorted_mail.Add(some_mail) - sorted ++ + if (primary_department == null) // permabrig is temporary, tide is forever + unable_to_sort ++ + else + var/datum/job_department/main_department = primary_department.department_name + if (main_department == sorting_dept) + sorted_mail.Add(some_mail) + sorted ++ else unable_to_sort ++ if (length(sorted_mail) == 0) From 854b08a482d985af24ba6f36b2dba97da40a67db Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 22:09:57 +0000 Subject: [PATCH 043/126] Automatic changelog for PR #88562 [ci skip] --- html/changelogs/AutoChangeLog-pr-88562.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88562.yml diff --git a/html/changelogs/AutoChangeLog-pr-88562.yml b/html/changelogs/AutoChangeLog-pr-88562.yml new file mode 100644 index 0000000000000..9405b08a5a2d2 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88562.yml @@ -0,0 +1,4 @@ +author: "mcbalaam" +delete-after: True +changes: + - bugfix: "The mail sorter no longer runtimes processing assistant mail" \ No newline at end of file From 3a25ac7f941ede1667aec311f37ce184a8c78237 Mon Sep 17 00:00:00 2001 From: Cruix <ianjturk@gmail.com> Date: Sat, 21 Dec 2024 14:10:15 -0800 Subject: [PATCH 044/126] Nav computer icons (#88169) ## About The Pull Request To add context when placing a custom shuttle location, added additional icons to the shuttle navigation computer view for a few important objects: * The shuttle computer * The shuttle navigation computer * Turrets * <strike>The firing trajectory of the Yamato cannon</strike> * External airlocks <details> <summary>Images</summary> Old:  New:  </details> ## Why It's Good For The Game It's much easier to place the syndicate shuttle / white ship in a convenient location when you know exactly where the turrets and external airlocks are going to be when you land. Showing the shuttle computers also helps to communicate the orientation of the ship to anyone who is not already familiar with the outline, since the computers are usually placed right at the front, where the pilot is sitting. ## Changelog :cl: add: Shuttle navigation computers now show the location of airlocks, turrets, and the shuttle control consoles on the ship outline while placing a custom landing location. /:cl: --- code/__DEFINES/dcs/signals/signals_object.dm | 3 + code/datums/elements/nav_computer_icon.dm | 44 ++++++++++++++ code/game/machinery/doors/airlock.dm | 2 + code/game/machinery/doors/poddoor.dm | 6 ++ code/game/machinery/doors/shutters.dm | 1 + .../machinery/porta_turret/portable_turret.dm | 1 + .../shuttle_consoles/navigation_computer.dm | 57 +++++++++++++++++- .../shuttle_consoles/shuttle_console.dm | 1 + icons/effects/nav_computer_indicators.dmi | Bin 0 -> 1872 bytes tgstation.dme | 1 + 10 files changed, 114 insertions(+), 2 deletions(-) create mode 100644 code/datums/elements/nav_computer_icon.dm create mode 100644 icons/effects/nav_computer_indicators.dmi diff --git a/code/__DEFINES/dcs/signals/signals_object.dm b/code/__DEFINES/dcs/signals/signals_object.dm index 63ebfdf98b21f..a83badb9ee067 100644 --- a/code/__DEFINES/dcs/signals/signals_object.dm +++ b/code/__DEFINES/dcs/signals/signals_object.dm @@ -547,6 +547,9 @@ ///Sent from /obj/item/skillchip/on_remove() #define COMSIG_SKILLCHIP_REMOVED "skillchip_removed" +/// from /obj/machinery/computer/camera_advanced/shuttle_docker/gatherNavComputerOverlays() : (list/images_out) +#define COMSIG_SHUTTLE_NAV_COMPUTER_IMAGE_REQUESTED "shuttle_nav_computer_image_requested" + /// Sent from /obj/item/organ/wings/functional/proc/open_wings(): (mob/living/carbon/owner) #define COMSIG_WINGS_OPENED "wings_opened" /// Sent from /obj/item/organ/wings/functional/proc/close_wings(): (mob/living/carbon/owner) diff --git a/code/datums/elements/nav_computer_icon.dm b/code/datums/elements/nav_computer_icon.dm new file mode 100644 index 0000000000000..4e9b6a3a18893 --- /dev/null +++ b/code/datums/elements/nav_computer_icon.dm @@ -0,0 +1,44 @@ +/** + * element for atoms that have helper icons overlayed on their position in the shuttle navigation computer, such as airlocks + */ +/datum/element/nav_computer_icon + element_flags = ELEMENT_BESPOKE + argument_hash_start_idx = 2 + var/use_icon + var/use_icon_state + var/only_show_on_shuttle_edge + +/datum/element/nav_computer_icon/Attach(datum/target, use_icon, use_icon_state, only_show_on_shuttle_edge) + . = ..() + if(!isatom(target)) + return ELEMENT_INCOMPATIBLE + + src.use_icon = use_icon + src.use_icon_state = use_icon_state + src.only_show_on_shuttle_edge = only_show_on_shuttle_edge + + RegisterSignal(target, COMSIG_SHUTTLE_NAV_COMPUTER_IMAGE_REQUESTED, PROC_REF(provide_image)) + +/datum/element/nav_computer_icon/proc/provide_image(datum/source, list/images_out) + SIGNAL_HANDLER + var/obj/source_obj = source + var/turf/source_turf = get_turf(source_obj) + if(!source_turf) + return + if(only_show_on_shuttle_edge) + var/isOnEdge = FALSE + for(var/direction in GLOB.cardinals) + var/turf/turf = get_step(source_obj, direction) + if(!istype(turf?.loc, /area/shuttle)) + isOnEdge = TRUE + break + if(!isOnEdge) + return + + var/image/the_image = image(use_icon, source_turf, use_icon_state) + the_image.dir = source_obj.dir + images_out += the_image + +/datum/element/nav_computer_icon/Detach(datum/source) + . = ..() + UnregisterSignal(source, COMSIG_SHUTTLE_NAV_COMPUTER_IMAGE_REQUESTED) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 1be4325638d37..c3657c6cac391 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -181,6 +181,8 @@ // Click on the floor to close airlocks AddComponent(/datum/component/redirect_attack_hand_from_turf) + AddElement(/datum/element/nav_computer_icon, 'icons/effects/nav_computer_indicators.dmi', "airlock", TRUE) + RegisterSignal(src, COMSIG_MACHINERY_BROKEN, PROC_REF(on_break)) RegisterSignal(SSdcs, COMSIG_GLOB_GREY_TIDE, PROC_REF(grey_tide)) diff --git a/code/game/machinery/doors/poddoor.dm b/code/game/machinery/doors/poddoor.dm index cb33ed6c14f5a..b7ae0c9876a83 100644 --- a/code/game/machinery/doors/poddoor.dm +++ b/code/game/machinery/doors/poddoor.dm @@ -22,6 +22,12 @@ var/id = 1 /// The sound that plays when the door opens/closes var/animation_sound = 'sound/machines/blastdoor.ogg' + var/show_nav_computer_icon = TRUE + +/obj/machinery/door/poddoor/Initialize(mapload) + . = ..() + if(show_nav_computer_icon) + AddElement(/datum/element/nav_computer_icon, 'icons/effects/nav_computer_indicators.dmi', "airlock", TRUE) /datum/armor/door_poddoor melee = 50 diff --git a/code/game/machinery/doors/shutters.dm b/code/game/machinery/doors/shutters.dm index 56e2f5a9743b2..52c12835c2797 100644 --- a/code/game/machinery/doors/shutters.dm +++ b/code/game/machinery/doors/shutters.dm @@ -10,6 +10,7 @@ max_integrity = 100 recipe_type = /datum/crafting_recipe/shutters animation_sound = 'sound/machines/shutter.ogg' + show_nav_computer_icon = FALSE /obj/machinery/door/poddoor/shutters/animation_length(animation) switch(animation) diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index d1f785f9b53d5..796ee58984565 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -762,6 +762,7 @@ DEFINE_BITFIELD(turret_flags, list( /obj/machinery/porta_turret/syndicate/Initialize(mapload) . = ..() AddElement(/datum/element/empprotection, EMP_PROTECT_SELF | EMP_PROTECT_WIRES) + AddElement(/datum/element/nav_computer_icon, 'icons/effects/nav_computer_indicators.dmi', "turret", FALSE) /obj/machinery/porta_turret/syndicate/setup() return diff --git a/code/modules/shuttle/shuttle_consoles/navigation_computer.dm b/code/modules/shuttle/shuttle_consoles/navigation_computer.dm index 7c588e06dc005..3e9bf0cbe3be0 100644 --- a/code/modules/shuttle/shuttle_consoles/navigation_computer.dm +++ b/code/modules/shuttle/shuttle_consoles/navigation_computer.dm @@ -34,7 +34,7 @@ . = ..() actions += new /datum/action/innate/shuttledocker_rotate(src) actions += new /datum/action/innate/shuttledocker_place(src) - + AddElement(/datum/element/nav_computer_icon, 'icons/effects/nav_computer_indicators.dmi', "computer", FALSE) set_init_ports() if(connect_to_shuttle(mapload, SSshuttle.get_containing_shuttle(src))) @@ -124,6 +124,7 @@ SET_PLANE(I, ABOVE_GAME_PLANE, shuttle_turf) I.mouse_opacity = MOUSE_OPACITY_TRANSPARENT the_eye.placement_images[I] = list(x_off, y_off) + gatherNavComputerIcons() return TRUE @@ -134,6 +135,7 @@ var/list/to_add = list() to_add += the_eye.placement_images to_add += the_eye.placed_images + to_add += the_eye.extra_images if(!see_hidden) to_add += SSshuttle.hidden_shuttle_turf_images @@ -147,12 +149,55 @@ var/list/to_remove = list() to_remove += the_eye.placement_images to_remove += the_eye.placed_images + to_remove += the_eye.extra_images if(!see_hidden) to_remove += SSshuttle.hidden_shuttle_turf_images user.client.images -= to_remove user.client.view_size.resetToDefault() +/obj/machinery/computer/camera_advanced/shuttle_docker/proc/shuttle_turf_from_coords(list/coords) + var/mob/eye/camera/remote/shuttle_docker/the_eye = eyeobj + var/shuttleDir = shuttle_port.dir + var/curDir = the_eye.dir + var/list/adjustedCoords = coords.Copy() + + // Rotate coords so they match the current shuttle docking port's dir + if(turn(curDir, -90) == shuttleDir) + adjustedCoords[1] = coords[2] + y_offset + adjustedCoords[2] = -(coords[1] + x_offset) + else if(turn(curDir, 90) == shuttleDir) + adjustedCoords[1] = -(coords[2] + y_offset) + adjustedCoords[2] = coords[1] + x_offset + else if(turn(curDir, 180) == shuttleDir) + adjustedCoords[1] = -(coords[1] + x_offset) + adjustedCoords[2] = -(coords[2] + y_offset) + else + adjustedCoords[1] = coords[1] + x_offset + adjustedCoords[2] = coords[2] + y_offset + + return locate(shuttle_port.x + adjustedCoords[1], shuttle_port.y + adjustedCoords[2], shuttle_port.z) + +/obj/machinery/computer/camera_advanced/shuttle_docker/proc/gatherNavComputerIcons() + var/mob/eye/camera/remote/shuttle_docker/the_eye = eyeobj + var/list/placement_image_cache = the_eye.placement_images + var/list/extra_image_cache = the_eye.extra_images + for(var/i in 1 to placement_image_cache.len) + var/image/placement_image = placement_image_cache[i] + var/list/coords = placement_image_cache[placement_image] + var/turf/shuttle_turf = shuttle_turf_from_coords(coords) + var/list/images_to_add = list() + for(var/atom/atom as anything in shuttle_turf) + SEND_SIGNAL(atom, COMSIG_SHUTTLE_NAV_COMPUTER_IMAGE_REQUESTED, images_to_add) + for(var/i2 in 1 to images_to_add.len) + var/image/extra_image = images_to_add[i2] + extra_image.dir = turn(extra_image.dir, dir2angle(the_eye.dir) - dir2angle(shuttle_port.dir)) + extra_image.loc = locate(the_eye.x + coords[1], the_eye.y + coords[2], the_eye.z) + extra_image.layer = ABOVE_NORMAL_TURF_LAYER + SET_PLANE(extra_image, ABOVE_GAME_PLANE, the_eye) + extra_image.mouse_opacity = MOUSE_OPACITY_TRANSPARENT + extra_image_cache[extra_image] = coords.Copy() + /obj/machinery/computer/camera_advanced/shuttle_docker/proc/placeLandingSpot() if(designating_target_loc || !current_user) return @@ -226,7 +271,7 @@ /obj/machinery/computer/camera_advanced/shuttle_docker/proc/rotateLandingSpot() var/mob/eye/camera/remote/shuttle_docker/the_eye = eyeobj - var/list/image_cache = the_eye.placement_images + var/list/image_cache = the_eye.placement_images + the_eye.extra_images the_eye.setDir(turn(the_eye.dir, -90)) for(var/i in 1 to image_cache.len) var/image/pic = image_cache[i] @@ -235,6 +280,7 @@ coords[1] = coords[2] coords[2] = -Tmp pic.loc = locate(the_eye.x + coords[1], the_eye.y + coords[2], the_eye.z) + pic.dir = turn(pic.dir, -90) var/Tmp = x_offset x_offset = y_offset y_offset = -Tmp @@ -267,6 +313,12 @@ else I.icon_state = "red" . = SHUTTLE_DOCKER_BLOCKED + var/list/extra_image_cache = the_eye.extra_images + for(var/i in 1 to extra_image_cache.len) + var/image/image = extra_image_cache[i] + var/list/coords = extra_image_cache[image] + var/turf/turf = locate(eyeturf.x + coords[1], eyeturf.y + coords[2], eyeturf.z) + image.loc = turf /obj/machinery/computer/camera_advanced/shuttle_docker/proc/checkLandingTurf(turf/T, list/overlappers) // Too close to the map edge is never allowed @@ -322,6 +374,7 @@ use_visibility = FALSE var/list/image/placement_images = list() var/list/image/placed_images = list() + var/list/image/extra_images = list() /mob/eye/camera/remote/shuttle_docker/setLoc(turf/destination, force_update = FALSE) . = ..() diff --git a/code/modules/shuttle/shuttle_consoles/shuttle_console.dm b/code/modules/shuttle/shuttle_consoles/shuttle_console.dm index 5ce62f8c04226..df1922ae9daab 100644 --- a/code/modules/shuttle/shuttle_consoles/shuttle_console.dm +++ b/code/modules/shuttle/shuttle_consoles/shuttle_console.dm @@ -33,6 +33,7 @@ /obj/machinery/computer/shuttle/Initialize(mapload) . = ..() + AddElement(/datum/element/nav_computer_icon, 'icons/effects/nav_computer_indicators.dmi', "computer", FALSE) connect_to_shuttle(mapload, SSshuttle.get_containing_shuttle(src)) /obj/machinery/computer/shuttle/ui_interact(mob/user, datum/tgui/ui) diff --git a/icons/effects/nav_computer_indicators.dmi b/icons/effects/nav_computer_indicators.dmi new file mode 100644 index 0000000000000000000000000000000000000000..ff6a616c2968ccf90f048132672f477fddf057a1 GIT binary patch literal 1872 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 KMNUMnLSTXq@M?_! literal 0 HcmV?d00001 diff --git a/tgstation.dme b/tgstation.dme index 9bc4e18b10421..345b15060c4f7 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -1536,6 +1536,7 @@ #include "code\datums\elements\movement_turf_changer.dm" #include "code\datums\elements\movetype_handler.dm" #include "code\datums\elements\muffles_speech.dm" +#include "code\datums\elements\nav_computer_icon.dm" #include "code\datums\elements\nerfed_pulling.dm" #include "code\datums\elements\no_crit_hitting.dm" #include "code\datums\elements\noisy_movement.dm" From a77ec6e68db22687c225a3dbc2dc7b4af94b75f2 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 22:10:34 +0000 Subject: [PATCH 045/126] Automatic changelog for PR #88169 [ci skip] --- html/changelogs/AutoChangeLog-pr-88169.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88169.yml diff --git a/html/changelogs/AutoChangeLog-pr-88169.yml b/html/changelogs/AutoChangeLog-pr-88169.yml new file mode 100644 index 0000000000000..d7dcb2b749538 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88169.yml @@ -0,0 +1,4 @@ +author: "Cruix" +delete-after: True +changes: + - rscadd: "Shuttle navigation computers now show the location of airlocks, turrets, and the shuttle control consoles on the ship outline while placing a custom landing location." \ No newline at end of file From d8c18d803ae48012b076b7a4be9f3064fd8c8137 Mon Sep 17 00:00:00 2001 From: Echo <118005474+Darkened-Earth@users.noreply.github.com> Date: Sat, 21 Dec 2024 22:11:38 +0000 Subject: [PATCH 046/126] Fire Alarm In Meta's Customs (#88585) ## About The Pull Request Removes an obsolete (suspected to be misplaced) fire alarm at (055, 141) from MetaStation Fixes the following bug report: https://github.com/tgstation/tgstation/issues/88241#issue-2696529590 ## Why It's Good For The Game The alarm in question achieves nothing useful in its current state, and isn't even reachable without climbing up on the tables. A functional fire alarm sits next to it in the Arrival Shuttle Hallway, and opposite it in the Customs office. Hidden below a Space Law book, it appears to be a mapping issue that was missed due to object layering. Wrangling up this fire alarm would be Quite Good(TM) for cleaning up the station of unintentional electronics. ## Changelog :cl: fix: Alarm ranchers have wrangled up a rogue fire alarm in Meta class station custom offices and relocated it to a safe habitat /:cl: --- _maps/map_files/MetaStation/MetaStation.dmm | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 6b4adfe0d4896..e6aabf579de2a 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -67095,10 +67095,6 @@ }, /turf/open/floor/iron, /area/station/ai_monitored/command/storage/eva) -"xBX" = ( -/obj/machinery/firealarm/directional/east, -/turf/closed/wall, -/area/station/security/checkpoint/customs) "xCf" = ( /obj/item/clothing/suit/jacket/straight_jacket, /obj/item/electropack, @@ -83046,7 +83042,7 @@ wdr fcq xfI fcq -xBX +xjh qhW xjh yme From ce9e556d00844018feda531fa097b7341598af8a Mon Sep 17 00:00:00 2001 From: Sparex <87827746+JagOfTroy@users.noreply.github.com> Date: Sat, 21 Dec 2024 16:12:17 -0600 Subject: [PATCH 047/126] IceBoxStation.dmm - Added Fitness equipment to fitness room (#88588) ## About The Pull Request When playing on Icebox station with another player, we went to the fitness room to workout to only realize they don't have any actual fitness equipment in the room. Without totally tearing apart the layout, I added two lifting benches so that people can still get their muscles swole and still give the room the same ease of flow for people to move through it. ## Why It's Good For The Game This adds equipment to the map that needs to be there so that players can build up their fitness levels besides using the boxing ring and gives players more variety/flavor for roleplay.  ## Changelog :cl: Sparex map: Added lifting benches/workout benches to the fitness room for IceboxStation.dmm /:cl: --- _maps/map_files/IceBoxStation/IceBoxStation.dmm | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/_maps/map_files/IceBoxStation/IceBoxStation.dmm b/_maps/map_files/IceBoxStation/IceBoxStation.dmm index aa3df4dfd8a93..6ee4db7790ea9 100644 --- a/_maps/map_files/IceBoxStation/IceBoxStation.dmm +++ b/_maps/map_files/IceBoxStation/IceBoxStation.dmm @@ -46005,6 +46005,13 @@ dir = 4 }, /area/station/hallway/secondary/entry) +"nqI" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron, +/area/station/commons/fitness) "nqP" = ( /obj/machinery/camera/directional/north{ c_tag = "Research Division West"; @@ -53846,8 +53853,8 @@ /obj/effect/turf_decal/tile/neutral{ dir = 1 }, -/obj/item/kirbyplants/random, /obj/structure/sign/flag/terragov/directional/north, +/obj/structure/weightmachine/weightlifter, /turf/open/floor/iron, /area/station/commons/fitness) "pyn" = ( @@ -81087,6 +81094,10 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/security/detectives_office) +"xyg" = ( +/obj/structure/weightmachine, +/turf/open/floor/iron, +/area/station/commons/fitness) "xyl" = ( /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 1 @@ -249315,7 +249326,7 @@ cGB cGB gsI tLL -spy +nqI kKL kKL kKL @@ -250338,8 +250349,8 @@ dyA skl gaC vfW -eOl vfW +xyg vfW lvk crv From 322712bbb39709cd5e9b3e5384d44585f7ef5a00 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 22:12:19 +0000 Subject: [PATCH 048/126] Automatic changelog for PR #88585 [ci skip] --- html/changelogs/AutoChangeLog-pr-88585.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88585.yml diff --git a/html/changelogs/AutoChangeLog-pr-88585.yml b/html/changelogs/AutoChangeLog-pr-88585.yml new file mode 100644 index 0000000000000..c4e002241a6e1 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88585.yml @@ -0,0 +1,4 @@ +author: "Darkened-Earth" +delete-after: True +changes: + - bugfix: "Alarm ranchers have wrangled up a rogue fire alarm in Meta class station custom offices and relocated it to a safe habitat" \ No newline at end of file From 4799894cc4db66906ff04486f666b396f3183d05 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 22:13:10 +0000 Subject: [PATCH 049/126] Automatic changelog for PR #88588 [ci skip] --- html/changelogs/AutoChangeLog-pr-88588.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88588.yml diff --git a/html/changelogs/AutoChangeLog-pr-88588.yml b/html/changelogs/AutoChangeLog-pr-88588.yml new file mode 100644 index 0000000000000..84a9c268d1f1b --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88588.yml @@ -0,0 +1,4 @@ +author: "Sparex" +delete-after: True +changes: + - map: "Added lifting benches/workout benches to the fitness room for IceboxStation.dmm" \ No newline at end of file From 95ae128c8de856afd1f56e91bc9837a3bf6dfd29 Mon Sep 17 00:00:00 2001 From: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Date: Sun, 22 Dec 2024 01:41:17 +0300 Subject: [PATCH 050/126] Prevents mech RCD from being used with mesons, doubles R-wall deconstruction time (#88589) ## About The Pull Request Mech RCD has a unique quality of being usable at range, but does not check for LoS which allows you to instantly bore holes in multilayered walls with no warning. R-walls won't save you either, since they can be deconstructed by it just fine. Now, mech RCDs need LoS on turfs you click and deconstructs r-walls twice as slowly (the same time it'd take a normal RCD to deconstruct a normal wall). ## Why It's Good For The Game  Screen from a recent round - this can be done in 6 seconds, as with correct mech positioning that's as long as you need to deconstruct all the walls and doors. This is incredibly oppressive and I won't be surprised if this started getting abused like hell. This should prevent further issues while still keeping it a good (but not absurdly overpowered) option for when you need to breach into somewhere, since its still quicker (and safer) than thermite. ## Changelog :cl: balance: Mech-mounted RCD no longer has wallhacks balance: Reinforced walls now take double the time to get deconstructed when using an RCD /:cl: Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> --- code/__DEFINES/construction/rcd.dm | 3 +++ code/game/turfs/closed/wall/reinf_walls.dm | 8 ++++++-- code/modules/vehicles/mecha/equipment/tools/work_tools.dm | 3 +++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/code/__DEFINES/construction/rcd.dm b/code/__DEFINES/construction/rcd.dm index a8d98215af1dc..4f898d5ae86ec 100644 --- a/code/__DEFINES/construction/rcd.dm +++ b/code/__DEFINES/construction/rcd.dm @@ -51,3 +51,6 @@ #define RCD_MEMORY_COST_BUFF 8 /// If set to TRUE in rcd_vals, will bypass the cooldown on slowing down frequent use #define RCD_RESULT_BYPASS_FREQUENT_USE_COOLDOWN "bypass_frequent_use_cooldown" + +/// How much longer does it take to deconstruct rwalls? +#define RCD_RWALL_DELAY_MULT 2 diff --git a/code/game/turfs/closed/wall/reinf_walls.dm b/code/game/turfs/closed/wall/reinf_walls.dm index 739ee5aeae0f4..2a17160ae4c85 100644 --- a/code/game/turfs/closed/wall/reinf_walls.dm +++ b/code/game/turfs/closed/wall/reinf_walls.dm @@ -215,9 +215,13 @@ dismantle_wall() /turf/closed/wall/r_wall/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) - if(the_rcd.canRturf || the_rcd.construction_mode == RCD_WALLFRAME) + if (the_rcd.construction_mode == RCD_WALLFRAME) return ..() - + if(!the_rcd.canRturf) + return + . = ..() + if (.) + .["delay"] *= RCD_RWALL_DELAY_MULT /turf/closed/wall/r_wall/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) if(the_rcd.canRturf || rcd_data["[RCD_DESIGN_MODE]"] == RCD_WALLFRAME) diff --git a/code/modules/vehicles/mecha/equipment/tools/work_tools.dm b/code/modules/vehicles/mecha/equipment/tools/work_tools.dm index f080675af4673..651ccf999bb70 100644 --- a/code/modules/vehicles/mecha/equipment/tools/work_tools.dm +++ b/code/modules/vehicles/mecha/equipment/tools/work_tools.dm @@ -293,6 +293,9 @@ /obj/item/mecha_parts/mecha_equipment/rcd/action(mob/source, atom/target, list/modifiers) if(!action_checks(target)) return + // No meson action! + if (!(target in view(RCD_RANGE, get_turf(chassis)))) + return if(get_dist(chassis, target) > RCD_RANGE) balloon_alert(source, "out of range!") return From 97d04a383383d689976db867d6430363d9c218ed Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sat, 21 Dec 2024 22:41:56 +0000 Subject: [PATCH 051/126] Automatic changelog for PR #88589 [ci skip] --- html/changelogs/AutoChangeLog-pr-88589.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88589.yml diff --git a/html/changelogs/AutoChangeLog-pr-88589.yml b/html/changelogs/AutoChangeLog-pr-88589.yml new file mode 100644 index 0000000000000..afc96a8df3a3c --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88589.yml @@ -0,0 +1,5 @@ +author: "SmArtKar" +delete-after: True +changes: + - balance: "Mech-mounted RCD no longer has wallhacks" + - balance: "Reinforced walls now take double the time to get deconstructed when using an RCD" \ No newline at end of file From 97f54ecd89939865ac8a680d96e33f641ae957b0 Mon Sep 17 00:00:00 2001 From: UnokiAs <82665345+UnokiAs@users.noreply.github.com> Date: Sun, 22 Dec 2024 01:11:38 +0100 Subject: [PATCH 052/126] Restore Spear's Ability to Destroy Lockers (#88377) ## About The Pull Request This change make the lockers "electronics" weaker to the spear, restoring its ability to destroy lockers. While this functionality was not originally intended (throwing spears on lockers) ( #88141 ), it has been present for so long that it has effectively become a feature. This pull request rework that feature by making the spear do damage by hitting lockers in melee. https://github.com/user-attachments/assets/67058342-57e2-4670-9c68-df4c3b6d6193 ## Why It's Good For The Game Restoring the spear's ability to destroy lockers maintains its previous utility and aligns with player expectations, preserving and reworking feature that has become a staple of gameplay and lower the burden on antagonist to open security or command lockers. ## Changelog :cl: UnokiAs add: Make spears able to break open lockers in melee. /:cl: --- code/game/objects/structures/crates_lockers/closets.dm | 10 ++++++++++ strings/tips.txt | 1 + 2 files changed, 11 insertions(+) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 207b85122dd21..edfbe8e38c0e4 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -1222,4 +1222,14 @@ GLOBAL_LIST_EMPTY(roundstart_station_closets) /obj/structure/closet/proc/add_to_roundstart_list() GLOB.roundstart_station_closets += src +///Spears deal bonus damages to lockers +/obj/structure/closet/attacked_by(obj/item/attacking_item, mob/living/user) + if(istype(attacking_item, /obj/item/spear)) + take_damage(attacking_item.force * 2, attacking_item.damtype, MELEE, 1, get_dir(src, user)) + user.visible_message(span_danger("[user] stabs with precision [src]'s electronics with [attacking_item]!"), + span_danger("You stab with precision [src]'s electronics with [attacking_item]!"), null, COMBAT_MESSAGE_RANGE) + log_combat(user, src, "attacked", attacking_item) + return + return ..() + #undef LOCKER_FULL diff --git a/strings/tips.txt b/strings/tips.txt index 5f33cb87bc7fe..e6fc672c5c494 100644 --- a/strings/tips.txt +++ b/strings/tips.txt @@ -227,6 +227,7 @@ Basketball requires skill. Spinning drains stamina, reduces accuracy, but gives Basketball requires teamwork. Passing the ball with LMB is instant and costs no stamina. Clicking on a windoor rather then bumping into it will keep it open, you can click it again to close it. Different weapons have different strengths. Some weapons, such as spears, floor tiles, and throwing stars, deal more damage when thrown compared to when attacked normally. +Spears are capable of breaking into secure lockers by striking them in melee! Don't be afraid to ask for help, whether from your peers or from admins. Experiment with different setups of the Supermatter engine to maximize output, but don't risk the crew's safety to do so! Felinids get temporarily distracted by laser pointers. Use this to your advantage when being pursued by one. From c89ca103dbcc3a5eede7d855351358b0cd85fa67 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 00:17:51 +0000 Subject: [PATCH 053/126] Automatic changelog for PR #88377 [ci skip] --- html/changelogs/AutoChangeLog-pr-88377.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88377.yml diff --git a/html/changelogs/AutoChangeLog-pr-88377.yml b/html/changelogs/AutoChangeLog-pr-88377.yml new file mode 100644 index 0000000000000..7cb5b8629e4be --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88377.yml @@ -0,0 +1,4 @@ +author: "UnokiAs" +delete-after: True +changes: + - rscadd: "Make spears able to break open lockers in melee." \ No newline at end of file From 51f4127771036288bb6d6073c8f61d734c51015c Mon Sep 17 00:00:00 2001 From: Tim <timothymtorres@gmail.com> Date: Sat, 21 Dec 2024 18:23:38 -0600 Subject: [PATCH 054/126] Add power efficiency when stasis bed stock parts are upgraded (#88555) ## About The Pull Request Upgrading a stasis bed caused it to drain a massive amount of power without ANY benefit. The roundstart power draw is 300/3,000 when inactive/active. If you max upgrade the stock parts it results in 2,100/21,000 power draw which is insane since it does nothing! Seeing as how there is no other effects, I just made the upgrades divide power (instead of multiply) resultings in better efficiency. Roundstart is still 300/3,000 but now at max upgrade it is 30/300. ## Why It's Good For The Game Upgrading a machine should have some upside. --- code/game/machinery/stasis.dm | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/code/game/machinery/stasis.dm b/code/game/machinery/stasis.dm index 49f00741895fe..3e3fc5af30757 100644 --- a/code/game/machinery/stasis.dm +++ b/code/game/machinery/stasis.dm @@ -14,6 +14,9 @@ fair_market_price = 10 payment_department = ACCOUNT_MED interaction_flags_click = ALLOW_SILICON_REACH + use_power = IDLE_POWER_USE + idle_power_usage = BASE_MACHINE_IDLE_CONSUMPTION * 3 + active_power_usage = BASE_MACHINE_ACTIVE_CONSUMPTION * 3 var/stasis_enabled = TRUE var/last_stasis_sound = FALSE var/stasis_can_toggle = 0 @@ -25,6 +28,20 @@ AddElement(/datum/element/elevation, pixel_shift = 6) update_buckle_vars(dir) +/obj/machinery/stasis/RefreshParts() + . = ..() + + var/energy_rating = 0 + for(var/datum/stock_part/part in component_parts) + energy_rating += part.energy_rating() + + for(var/obj/item/stock_parts/part in component_parts) + energy_rating += part.energy_rating + + idle_power_usage = initial(idle_power_usage) / (energy_rating/2) + active_power_usage = initial(active_power_usage) / (energy_rating/2) + update_current_power_usage() + /obj/machinery/stasis/examine(mob/user) . = ..() . += span_notice("Alt-click to [stasis_enabled ? "turn off" : "turn on"] the machine.") From 7d63fdaa08242d9076ae921ee15b947348efffc5 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 00:23:57 +0000 Subject: [PATCH 055/126] Automatic changelog for PR #88555 [ci skip] --- html/changelogs/AutoChangeLog-pr-88555.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88555.yml diff --git a/html/changelogs/AutoChangeLog-pr-88555.yml b/html/changelogs/AutoChangeLog-pr-88555.yml new file mode 100644 index 0000000000000..97e1e9ef3267c --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88555.yml @@ -0,0 +1,4 @@ +author: "timothymtorres" +delete-after: True +changes: + - rscadd: "Add power efficiency when stasis bed stock parts are upgraded" \ No newline at end of file From ac6e5e7a91a1f0dd282b698862f7cfdee93d18af Mon Sep 17 00:00:00 2001 From: tonty <39193182+tontyGH@users.noreply.github.com> Date: Sat, 21 Dec 2024 19:24:27 -0500 Subject: [PATCH 056/126] Correctly unregisters COMSIG_QDELETED signal from old avatar_connection parent (#88524) --- code/modules/bitrunning/components/avatar_connection.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/bitrunning/components/avatar_connection.dm b/code/modules/bitrunning/components/avatar_connection.dm index 9fdfe1f629ec2..cefaeef91f3c3 100644 --- a/code/modules/bitrunning/components/avatar_connection.dm +++ b/code/modules/bitrunning/components/avatar_connection.dm @@ -107,8 +107,9 @@ COMSIG_BITRUNNER_ALERT_SEVER, COMSIG_BITRUNNER_CACHE_SEVER, COMSIG_BITRUNNER_LADDER_SEVER, - COMSIG_LIVING_DEATH, COMSIG_LIVING_PILL_CONSUMED, + COMSIG_LIVING_DEATH, + COMSIG_QDELETING, COMSIG_MOB_APPLY_DAMAGE, )) From 7d283d57914073e3ba92deca5af85c0671ace340 Mon Sep 17 00:00:00 2001 From: Lucy <lucy@absolucy.moe> Date: Sat, 21 Dec 2024 19:25:21 -0500 Subject: [PATCH 057/126] Add a notice to the stat panel for clients on 516 (#88622) ## About The Pull Request This adds a constant notice to the stat panel for clients on BYOND 516.  ## Why It's Good For The Game Best to make sure everyone knows that various UIs will likely be janky/borked on BYOND 516. Hopefully this is hard to miss. --- code/controllers/subsystem/statpanel.dm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/code/controllers/subsystem/statpanel.dm b/code/controllers/subsystem/statpanel.dm index 9d33e977e2b7f..382ff90cdc844 100644 --- a/code/controllers/subsystem/statpanel.dm +++ b/code/controllers/subsystem/statpanel.dm @@ -92,11 +92,14 @@ SUBSYSTEM_DEF(statpanels) return /datum/controller/subsystem/statpanels/proc/set_status_tab(client/target) +#if MIN_COMPILER_VERSION > 515 + #warn 516 is most certainly out of beta, remove this beta notice if you haven't already +#endif + var/static/list/beta_notice = list("", "You are on the BYOND 516 beta, various UIs and such may be broken!", "Please report issues, and switch back to BYOND 515 if things are causing too many issues for you.") if(!global_data)//statbrowser hasnt fired yet and we were called from immediate_send_stat_data() return - target.stat_panel.send_message("update_stat", list( - "global_data" = global_data, + "global_data" = (target.byond_version < 516) ? global_data : (global_data + beta_notice), "ping_str" = "Ping: [round(target.lastping, 1)]ms (Average: [round(target.avgping, 1)]ms)", "other_str" = target.mob?.get_status_tab_items(), )) From 5425d4df15fcacfbd7be218ab86a020686e8cf29 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 00:25:44 +0000 Subject: [PATCH 058/126] Automatic changelog for PR #88622 [ci skip] --- html/changelogs/AutoChangeLog-pr-88622.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88622.yml diff --git a/html/changelogs/AutoChangeLog-pr-88622.yml b/html/changelogs/AutoChangeLog-pr-88622.yml new file mode 100644 index 0000000000000..ff58b2b49f4e1 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88622.yml @@ -0,0 +1,4 @@ +author: "Absolucy" +delete-after: True +changes: + - rscadd: "Added a notice for clients on BYOND 516 that 516 is still in beta, and UI elements may not be fully compatible yet." \ No newline at end of file From d4363df781a98a85df90c42bf0b8aa5ff2e24d04 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 00:28:37 +0000 Subject: [PATCH 059/126] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-88169.yml | 4 -- html/changelogs/AutoChangeLog-pr-88377.yml | 4 -- html/changelogs/AutoChangeLog-pr-88391.yml | 7 --- html/changelogs/AutoChangeLog-pr-88522.yml | 4 -- html/changelogs/AutoChangeLog-pr-88531.yml | 4 -- html/changelogs/AutoChangeLog-pr-88555.yml | 4 -- html/changelogs/AutoChangeLog-pr-88562.yml | 4 -- html/changelogs/AutoChangeLog-pr-88564.yml | 4 -- html/changelogs/AutoChangeLog-pr-88566.yml | 4 -- html/changelogs/AutoChangeLog-pr-88569.yml | 4 -- html/changelogs/AutoChangeLog-pr-88571.yml | 4 -- html/changelogs/AutoChangeLog-pr-88585.yml | 4 -- html/changelogs/AutoChangeLog-pr-88588.yml | 4 -- html/changelogs/AutoChangeLog-pr-88589.yml | 5 -- html/changelogs/AutoChangeLog-pr-88590.yml | 4 -- html/changelogs/AutoChangeLog-pr-88596.yml | 5 -- html/changelogs/AutoChangeLog-pr-88598.yml | 4 -- html/changelogs/AutoChangeLog-pr-88600.yml | 4 -- html/changelogs/AutoChangeLog-pr-88601.yml | 4 -- html/changelogs/AutoChangeLog-pr-88602.yml | 4 -- html/changelogs/AutoChangeLog-pr-88603.yml | 4 -- html/changelogs/AutoChangeLog-pr-88608.yml | 4 -- html/changelogs/AutoChangeLog-pr-88610.yml | 4 -- html/changelogs/AutoChangeLog-pr-88612.yml | 5 -- html/changelogs/AutoChangeLog-pr-88614.yml | 5 -- html/changelogs/AutoChangeLog-pr-88622.yml | 4 -- html/changelogs/archive/2024-12.yml | 63 ++++++++++++++++++++++ 27 files changed, 63 insertions(+), 111 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-88169.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88377.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88391.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88522.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88531.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88555.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88562.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88564.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88566.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88569.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88571.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88585.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88588.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88589.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88590.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88596.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88598.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88600.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88601.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88602.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88603.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88608.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88610.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88612.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88614.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88622.yml diff --git a/html/changelogs/AutoChangeLog-pr-88169.yml b/html/changelogs/AutoChangeLog-pr-88169.yml deleted file mode 100644 index d7dcb2b749538..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88169.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Cruix" -delete-after: True -changes: - - rscadd: "Shuttle navigation computers now show the location of airlocks, turrets, and the shuttle control consoles on the ship outline while placing a custom landing location." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88377.yml b/html/changelogs/AutoChangeLog-pr-88377.yml deleted file mode 100644 index 7cb5b8629e4be..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88377.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "UnokiAs" -delete-after: True -changes: - - rscadd: "Make spears able to break open lockers in melee." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88391.yml b/html/changelogs/AutoChangeLog-pr-88391.yml deleted file mode 100644 index 12bfe4a8a99b2..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88391.yml +++ /dev/null @@ -1,7 +0,0 @@ -author: "Kocma-san" -delete-after: True -changes: - - rscadd: "added a \"print\" button to the request manager" - - rscadd: "admin fax can now send exotic items" - - rscadd: "added \"Auto-print Faxes\" button to the request manager, which allows you to enable automatic printing of requests on the admin fax" - - bugfix: "fixed a bug where pressing the print button would cause the receive animation to appear on all admin faxes." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88522.yml b/html/changelogs/AutoChangeLog-pr-88522.yml deleted file mode 100644 index 84aa7e7ee8b81..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88522.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "TealSeer" -delete-after: True -changes: - - qol: "Atmos devices like valves and pumps can now be renamed with a pen." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88531.yml b/html/changelogs/AutoChangeLog-pr-88531.yml deleted file mode 100644 index 7fbd94c9aed14..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88531.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SmArtKar" -delete-after: True -changes: - - bugfix: "Fixed floodlights not being affected by spraycan painting" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88555.yml b/html/changelogs/AutoChangeLog-pr-88555.yml deleted file mode 100644 index 97e1e9ef3267c..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88555.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "timothymtorres" -delete-after: True -changes: - - rscadd: "Add power efficiency when stasis bed stock parts are upgraded" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88562.yml b/html/changelogs/AutoChangeLog-pr-88562.yml deleted file mode 100644 index 9405b08a5a2d2..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88562.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "mcbalaam" -delete-after: True -changes: - - bugfix: "The mail sorter no longer runtimes processing assistant mail" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88564.yml b/html/changelogs/AutoChangeLog-pr-88564.yml deleted file mode 100644 index d9a83b2f69da3..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88564.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "timothymtorres" -delete-after: True -changes: - - spellcheck: "Update teleporter machine desc to be accurate" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88566.yml b/html/changelogs/AutoChangeLog-pr-88566.yml deleted file mode 100644 index 9e11b9250c684..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88566.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "timothymtorres" -delete-after: True -changes: - - spellcheck: "Fix holodeck emag message claiming to increase power" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88569.yml b/html/changelogs/AutoChangeLog-pr-88569.yml deleted file mode 100644 index f9db5c10ca6ff..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88569.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Absolucy" -delete-after: True -changes: - - qol: "Rust heretic healing (leeching walk, rust ascension) now, so server lag shouldn't fuck you over nearly as much if you're relying on the healing." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88571.yml b/html/changelogs/AutoChangeLog-pr-88571.yml deleted file mode 100644 index f8895bb194691..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88571.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Melbert" -delete-after: True -changes: - - rscadd: "Nitroglycerin now heals heart damage." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88585.yml b/html/changelogs/AutoChangeLog-pr-88585.yml deleted file mode 100644 index c4e002241a6e1..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88585.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Darkened-Earth" -delete-after: True -changes: - - bugfix: "Alarm ranchers have wrangled up a rogue fire alarm in Meta class station custom offices and relocated it to a safe habitat" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88588.yml b/html/changelogs/AutoChangeLog-pr-88588.yml deleted file mode 100644 index 84a9c268d1f1b..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88588.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Sparex" -delete-after: True -changes: - - map: "Added lifting benches/workout benches to the fitness room for IceboxStation.dmm" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88589.yml b/html/changelogs/AutoChangeLog-pr-88589.yml deleted file mode 100644 index afc96a8df3a3c..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88589.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "SmArtKar" -delete-after: True -changes: - - balance: "Mech-mounted RCD no longer has wallhacks" - - balance: "Reinforced walls now take double the time to get deconstructed when using an RCD" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88590.yml b/html/changelogs/AutoChangeLog-pr-88590.yml deleted file mode 100644 index 114a95b290c91..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88590.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SmArtKar" -delete-after: True -changes: - - bugfix: "Chemmaster no longer rounds reagent amounts when trying to transfer a custom amount" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88596.yml b/html/changelogs/AutoChangeLog-pr-88596.yml deleted file mode 100644 index d59028d86fc4e..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88596.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "Kocma-san" -delete-after: True -changes: - - bugfix: "fix radio sound output when receiving a message" - - sound: "the sound of receiving your own messages over the radio is no longer played" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88598.yml b/html/changelogs/AutoChangeLog-pr-88598.yml deleted file mode 100644 index 6feb07ff376e8..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88598.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SyncIt21" -delete-after: True -changes: - - bugfix: "greyscale modify menu has better validation for player entered colours" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88600.yml b/html/changelogs/AutoChangeLog-pr-88600.yml deleted file mode 100644 index f8f6ef99810f9..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88600.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SmArtKar" -delete-after: True -changes: - - bugfix: "Fixed shoes slot being semi-transparent when you have digitigrade legs" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88601.yml b/html/changelogs/AutoChangeLog-pr-88601.yml deleted file mode 100644 index b3e38d483d9ff..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88601.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SyncIt21" -delete-after: True -changes: - - bugfix: "fixed runtime when sealing mecha cabin with air tank installed" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88602.yml b/html/changelogs/AutoChangeLog-pr-88602.yml deleted file mode 100644 index c9698b7f26b81..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88602.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SmArtKar" -delete-after: True -changes: - - map: "Added a Condi-Master to Birdshot's bar" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88603.yml b/html/changelogs/AutoChangeLog-pr-88603.yml deleted file mode 100644 index 363c021935304..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88603.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SyncIt21" -delete-after: True -changes: - - bugfix: "personal ordered crates can be unlocked & relocked as many times again after the 1st attempt" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88608.yml b/html/changelogs/AutoChangeLog-pr-88608.yml deleted file mode 100644 index e7ed3dd34af6a..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88608.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "grungussuss" -delete-after: True -changes: - - rscdel: "screenshake from explosions will no longer happen when it's really far and not on a station area (turf)" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88610.yml b/html/changelogs/AutoChangeLog-pr-88610.yml deleted file mode 100644 index 958a64f99451b..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88610.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SmArtKar" -delete-after: True -changes: - - spellcheck: "Bioscrambler no longer informs you about \"your armor softening the blow!\"" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88612.yml b/html/changelogs/AutoChangeLog-pr-88612.yml deleted file mode 100644 index 208928a92f3cb..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88612.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "Gaxeer" -delete-after: True -changes: - - bugfix: "modular computer laptops can now be interacted with RMB, instead of picked up" - - qol: "modular computer laptops can now be interacted with RMB when open, or opened with RMB when closed. Also screentips for this added" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88614.yml b/html/changelogs/AutoChangeLog-pr-88614.yml deleted file mode 100644 index fb92e384cb2da..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88614.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "SyncIt21" -delete-after: True -changes: - - code_imp: "improved code for mecha rcd" - - bugfix: "mecha rcd will cancel its action when the mech is rotated or moves during the action" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88622.yml b/html/changelogs/AutoChangeLog-pr-88622.yml deleted file mode 100644 index ff58b2b49f4e1..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88622.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Absolucy" -delete-after: True -changes: - - rscadd: "Added a notice for clients on BYOND 516 that 516 is still in beta, and UI elements may not be fully compatible yet." \ No newline at end of file diff --git a/html/changelogs/archive/2024-12.yml b/html/changelogs/archive/2024-12.yml index 8a2acc276d298..5a594a7616886 100644 --- a/html/changelogs/archive/2024-12.yml +++ b/html/changelogs/archive/2024-12.yml @@ -477,3 +477,66 @@ on purity. Melbert: - bugfix: Lobby button sprites +2024-12-22: + Absolucy: + - rscadd: Added a notice for clients on BYOND 516 that 516 is still in beta, and + UI elements may not be fully compatible yet. + - qol: Rust heretic healing (leeching walk, rust ascension) now, so server lag shouldn't + fuck you over nearly as much if you're relying on the healing. + Cruix: + - rscadd: Shuttle navigation computers now show the location of airlocks, turrets, + and the shuttle control consoles on the ship outline while placing a custom + landing location. + Darkened-Earth: + - bugfix: Alarm ranchers have wrangled up a rogue fire alarm in Meta class station + custom offices and relocated it to a safe habitat + Gaxeer: + - bugfix: modular computer laptops can now be interacted with RMB, instead of picked + up + - qol: modular computer laptops can now be interacted with RMB when open, or opened + with RMB when closed. Also screentips for this added + Kocma-san: + - rscadd: added a "print" button to the request manager + - rscadd: admin fax can now send exotic items + - rscadd: added "Auto-print Faxes" button to the request manager, which allows you + to enable automatic printing of requests on the admin fax + - bugfix: fixed a bug where pressing the print button would cause the receive animation + to appear on all admin faxes. + - bugfix: fix radio sound output when receiving a message + - sound: the sound of receiving your own messages over the radio is no longer played + Melbert: + - rscadd: Nitroglycerin now heals heart damage. + SmArtKar: + - bugfix: Fixed floodlights not being affected by spraycan painting + - balance: Mech-mounted RCD no longer has wallhacks + - balance: Reinforced walls now take double the time to get deconstructed when using + an RCD + - map: Added a Condi-Master to Birdshot's bar + - bugfix: Fixed shoes slot being semi-transparent when you have digitigrade legs + - spellcheck: Bioscrambler no longer informs you about "your armor softening the + blow!" + - bugfix: Chemmaster no longer rounds reagent amounts when trying to transfer a + custom amount + Sparex: + - map: Added lifting benches/workout benches to the fitness room for IceboxStation.dmm + SyncIt21: + - bugfix: fixed runtime when sealing mecha cabin with air tank installed + - bugfix: personal ordered crates can be unlocked & relocked as many times again + after the 1st attempt + - bugfix: greyscale modify menu has better validation for player entered colours + - code_imp: improved code for mecha rcd + - bugfix: mecha rcd will cancel its action when the mech is rotated or moves during + the action + TealSeer: + - qol: Atmos devices like valves and pumps can now be renamed with a pen. + UnokiAs: + - rscadd: Make spears able to break open lockers in melee. + grungussuss: + - rscdel: screenshake from explosions will no longer happen when it's really far + and not on a station area (turf) + mcbalaam: + - bugfix: The mail sorter no longer runtimes processing assistant mail + timothymtorres: + - spellcheck: Update teleporter machine desc to be accurate + - spellcheck: Fix holodeck emag message claiming to increase power + - rscadd: Add power efficiency when stasis bed stock parts are upgraded From acb883cfec8aca5231cd763b42e77a7b1a99d0b5 Mon Sep 17 00:00:00 2001 From: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Date: Sat, 21 Dec 2024 18:36:13 -0600 Subject: [PATCH 060/126] Reduce Carpenter hammer force (this thing can open locked gun crates!) (#88380) ## About The Pull Request Carpenter hammer force 20 -> 17 Carpenter hammer throwforce 20 -> 14 Carpenter hammer demo mod 1.25 -> 1.15 ## Why It's Good For The Game You can buy this thing in the black market for 250 credits and it's strong enough to open gun crates from cargo  ## Changelog :cl: Melbert balance: Carpenter hammer force 20 -> 17 balance: Carpenter hammer throwforce 20 -> 14 balance: Carpenter hammer demo mod 1.25 -> 1.15 /:cl: --- code/game/objects/items/weaponry.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/game/objects/items/weaponry.dm b/code/game/objects/items/weaponry.dm index bc34783a853e1..4427294aef8ec 100644 --- a/code/game/objects/items/weaponry.dm +++ b/code/game/objects/items/weaponry.dm @@ -464,12 +464,12 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 lefthand_file = 'icons/mob/inhands/weapons/hammers_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/hammers_righthand.dmi' desc = "Uncanny looking hammer." - force = 20 - throwforce = 20 + force = 17 + throwforce = 14 throw_range = 4 w_class = WEIGHT_CLASS_NORMAL wound_bonus = 20 - demolition_mod = 1.25 + demolition_mod = 1.15 slot_flags = ITEM_SLOT_BELT /obj/item/carpenter_hammer/Initialize(mapload) From df1b7991d13a646e6dad13ed15bbdcf24f433056 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 00:36:35 +0000 Subject: [PATCH 061/126] Automatic changelog for PR #88380 [ci skip] --- html/changelogs/AutoChangeLog-pr-88380.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88380.yml diff --git a/html/changelogs/AutoChangeLog-pr-88380.yml b/html/changelogs/AutoChangeLog-pr-88380.yml new file mode 100644 index 0000000000000..27f47a64a6165 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88380.yml @@ -0,0 +1,6 @@ +author: "Melbert" +delete-after: True +changes: + - balance: "Carpenter hammer force 20 -> 17" + - balance: "Carpenter hammer throwforce 20 -> 14" + - balance: "Carpenter hammer demo mod 1.25 -> 1.15" \ No newline at end of file From c1a180c35d0fb89534571ba144c8071778847f0a Mon Sep 17 00:00:00 2001 From: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Date: Sun, 22 Dec 2024 12:39:59 +1100 Subject: [PATCH 062/126] Traitors can purchase weapon cases for the Makarov and Riot Toy Pistol. Basic ammo comes in ammo packs. Other stuff. (#88482) ## About The Pull Request Makarovs and Donksoft Riot Toy Pistols now come in weapon cases. These cases come with the gun, two spare magazines and a box of spare loose ammo. Basic ammunition for these guns come in case packs of three, with a spare box of loose ammo. The basic ammo for Makarovs is slightly more expensive. Donksoft Toy Pistols from the uplink (and given to clown ops) now deal substantially more damage. For riot darts, this goes from 25 to 35 stamina force. However, the case now costs 6 TC. Makarov and Donksoft toy pistols have had their magazines increased by 4 bullets, for a total of 12. The Ansem is still at 8. The pistol cases now have a unique sprite thanks to SmartKar.  All included cases come with a disposal bomb built into the case. Use Alt-Right-Click on the case to start the countdown, and stand back. Or chuck it at someone you don't like. ## Why It's Good For The Game >Makarovs and Donksoft Riot Toy Pistols now come in weapon cases. These cases come with the gun, two spare magazines and a box of spare loose ammo. >Basic ammunition for these guns come in case packs of three, with a spare box of loose ammo. The basic ammo for Makarovs is slightly more expensive. A long time ago, I proposed to a maintainer that maybe traitor weapons should be bundled together with some starting ammo, to give them a little bit of a necessary boost for longevity for their cost. This being in a state of the game with only 20 TC and no way to get more. I thought progtot may alleviate this issue somewhat, but I don't believe it has at all. I narrowed this down to just the Makarov and Toy Pistol as I think they're the ones in need of help, and my reasoning is thus; A) The TC value is extremely deceptive. The weapons themselves are not very good at doing anything without additionally putting in more TC to load up on ammunition or support equipment. While it does say 7 TC on the header for the Makarov, if you want it to be silent, you have to spend more TC on a suppressor (3 TC). Then, if you're not entirely sure that only 8+1 shots you get from the beginning is enough to take out a target (maybe they're known to have armor), then you may need to get either specialized ammo or additional ammunition. At a certain point, it begs the question 'why didn't I just buy the bigger stick and get more value out of my purchase as well as more reliability?' Particularly since drawing heat probably means all that TC is just going straight into more ammo, one way or another. Or a bigger stick if you're doing side objectives, making that early purchase redundant. B) Whenever you look at either, I want you to consider. 'Could I get better results by just getting a station weapon?' The answer is almost universally 'yes'. Even some improvised weapons can be more reliable. Even spending TC on getting that weapon (like C-4) is miles more worthwhile than spending TC to get either weapon upfront. C) It significantly overvalues autolathe access just to make the weapon feel less like a ripoff. If the uplink can't in of itself justify using the weapons, they're just flat out not good. and that's assuming players even know to keep magazines. It's just a bad value purchase and deceptive in just how expensive it can end up to use them. The weapon is overshadowed by fairly comparable items once you factor additional expenditures. Even the toy pistol is a bad value purchase and it's literally just 2 TC, because the damage it does is dogshit. It's worse than a disabler. It's worse than a sleepy pen for value to effect. It's so shit, people put them on maps for free grabs. Let's resolve that with the following. > Donksoft Toy Pistols from the uplink (and given to clown ops) now deal substantially more damage. For riot darts, this goes from 25 to 35 stamina force. However, the case now costs 6 TC. Subtle weapon, good, reliable damage. Fantastic for kidnapping at 40 damage. All without ever actually inflicting a real point of damage. Great for clowns, great for pacifist tots. Decent deniability. Silicons may have a harder time justifying an intervention. Genuinely a budget tool that increases the value of any TC you put into it. Since it has so much more value, this is why I've increased the price to offset this. It is actually competing with similar tools well enough to not go too overboard. > Makarov and Donksoft toy pistols have had their magazines increased by 4 bullets, for a total of 12. The Ansem is still at 8. Longevity is the only thing Makarovs seem to want to claim to have over the revolver, and it isn't much more longevity from just the gun itself (7 bullets on the revolver compared to 8+1 on the pistol). If we're talking real longevity, and particularly if you're considering getting a silencer, than the ebow is literally 3 TC more expensive, silent, and has endless ammunition with high damage output. You still need to dump a lot of TC into the Makarov to satiate its ammo needs if you happen to be skirmishing a lot. By comparison, just getting a single laser can often times do a much better job at skirmishing than the tot with a Makarov can. And do comparable damage no less. From experience, I've always done better with lasers than the Makarov. Making it more directly able to maintain a good ammo count during a fight hopefully makes the Makarov feel more like a value purchase for what I think should be its strength. Staying power and the ability to be aggressive with ammo expenditure. Particularly against larger numbers, which traitors are almost always expected to go up against. If those opponents have lasers, the Makarov just always gets outgunned by an absurd amount (lasers on their own have like 16 shots, so you can do the math if there are even two people with a laser each). Simply put; let's not make make tots feel like a dumbass for not just getting a laser themselves or buying a ebow to maintain firepower over long fights, especially with rechargers usually being in pretty nicely secluded locations for them to access. ## Changelog :cl: NecromancerAnne (code), SmArtKar (sprites) balance: Makarovs and Toy Pistols come in weapon cases. Complete with spare ammo. balance: Basic ammo for either weapon comes in weapon cases of three extra magazines at an affordable price. balance: Donksoft Toy Pistols from the uplink are much stronger than their standard counterparts, but now priced at 6 TC. balance: Makarovs and Toy pistols have a magazine capacity of 12 rounds. balance: Gun/Ammo cases from the traitor uplink can be destroyed by activating the disposal bomb. Press Alt-Right-Click on the case to start the timer. /:cl: --------- Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> --- code/game/objects/items/storage/toolbox.dm | 72 +++++++++++ code/modules/antagonists/clown_ops/outfits.dm | 1 + .../boxes_magazines/external/pistol.dm | 113 ++++++++++-------- .../boxes_magazines/external/toy.dm | 2 +- .../modules/projectiles/guns/ballistic/toy.dm | 4 + .../modules/uplink/uplink_items/ammunition.dm | 16 +-- code/modules/uplink/uplink_items/dangerous.dm | 21 ++-- icons/obj/storage/case.dmi | Bin 2111 -> 2410 bytes 8 files changed, 159 insertions(+), 70 deletions(-) diff --git a/code/game/objects/items/storage/toolbox.dm b/code/game/objects/items/storage/toolbox.dm index 0374b7a3744e7..b3fac29554de6 100644 --- a/code/game/objects/items/storage/toolbox.dm +++ b/code/game/objects/items/storage/toolbox.dm @@ -463,6 +463,78 @@ for(var/i in 1 to 3) new extra_to_spawn (src) +/obj/item/storage/toolbox/guncase/traitor + name = "makarov gun case" + desc = "A weapon's case. Has a blood-red 'S' stamped on the cover. There seems to be a strange switch along the side inside a plastic flap." + icon_state = "pistol_case" + base_icon_state = "pistol_case" + // What ammo box do we spawn in our case? + var/ammo_box_to_spawn = /obj/item/ammo_box/c9mm + // Timer for the bomb in the case. + var/explosion_timer + // Whether or not our case is exploding. Used for determining sprite changes. + var/currently_exploding = FALSE + +/obj/item/storage/toolbox/guncase/traitor/Initialize(mapload) + . = ..() + register_context() + +/obj/item/storage/toolbox/guncase/traitor/examine(mob/user) + . = ..() + . += span_notice("Activate the Evidence Disposal Explosive using Alt-Right-Click.") + +/obj/item/storage/toolbox/guncase/traitor/add_context(atom/source, list/context, obj/item/held_item, mob/user) + . = ..() + + context[SCREENTIP_CONTEXT_ALT_RMB] = "Activate Evidence Disposal Explosive" + return CONTEXTUAL_SCREENTIP_SET + +/obj/item/storage/toolbox/guncase/traitor/PopulateContents() + new weapon_to_spawn (src) + for(var/i in 1 to 2) + new extra_to_spawn (src) + new ammo_box_to_spawn(src) + +/obj/item/storage/toolbox/guncase/traitor/update_icon_state() + . = ..() + if(currently_exploding) + icon_state = "[base_icon_state]_exploding" + else + icon_state = "[base_icon_state]" + +/obj/item/storage/toolbox/guncase/traitor/click_alt_secondary(mob/user) + . = ..() + var/i_dont_even_think_once_about_blowing_stuff_up = tgui_alert(user, "Would you like to activate the evidence disposal bomb now?", "BYE BYE", list("Yes","No")) + if(i_dont_even_think_once_about_blowing_stuff_up == "No") + return + explosion_timer = addtimer(CALLBACK(src, PROC_REF(think_fast_chucklenuts)), 5 SECONDS, (TIMER_UNIQUE|TIMER_OVERRIDE)) + to_chat(user, span_warning("You prime [src]'s evidence disposal bomb!")) + log_bomber(user, "has activated a", src, "for detonation") + playsound(src, 'sound/items/weapons/armbomb.ogg', 50, TRUE) + currently_exploding = TRUE + update_appearance() + +/// proc to handle our detonation +/obj/item/storage/toolbox/guncase/traitor/proc/think_fast_chucklenuts() + explosion(src, devastation_range = 0, heavy_impact_range = 0, light_impact_range = 2, explosion_cause = src) + qdel(src) + +/obj/item/storage/toolbox/guncase/traitor/ammunition + name = "makarov 9mm magazine case" + weapon_to_spawn = /obj/item/ammo_box/magazine/m9mm + +/obj/item/storage/toolbox/guncase/traitor/donksoft + name = "\improper Donksoft riot pistol gun case" + weapon_to_spawn = /obj/item/gun/ballistic/automatic/pistol/toy/riot/clandestine + extra_to_spawn = /obj/item/ammo_box/magazine/toy/pistol/riot + ammo_box_to_spawn = /obj/item/ammo_box/foambox/riot + +/obj/item/storage/toolbox/guncase/traitor/ammunition/donksoft + name = "\improper Donksoft riot pistol magazine case" + weapon_to_spawn = /obj/item/ammo_box/magazine/toy/pistol/riot + extra_to_spawn = /obj/item/ammo_box/magazine/toy/pistol/riot + ammo_box_to_spawn = /obj/item/ammo_box/foambox/riot + /obj/item/storage/toolbox/guncase/bulldog name = "bulldog gun case" weapon_to_spawn = /obj/item/gun/ballistic/shotgun/bulldog diff --git a/code/modules/antagonists/clown_ops/outfits.dm b/code/modules/antagonists/clown_ops/outfits.dm index fb025e40dbd20..10793237c33c9 100644 --- a/code/modules/antagonists/clown_ops/outfits.dm +++ b/code/modules/antagonists/clown_ops/outfits.dm @@ -10,6 +10,7 @@ r_pocket = /obj/item/bikehorn id = /obj/item/card/id/advanced/chameleon backpack_contents = list( + /obj/item/gun/ballistic/automatic/pistol/toy/riot/clandestine = 1, //The clown op equivalent to the Ansem /obj/item/pen/edagger = 1, /obj/item/dnainjector/clumsymut = 1, //in case you want to be clumsy for the memes /obj/item/storage/box/syndie_kit/clownpins = 1, //for any guns that you get your grubby little clown op mitts on diff --git a/code/modules/projectiles/boxes_magazines/external/pistol.dm b/code/modules/projectiles/boxes_magazines/external/pistol.dm index 8b0bc1da7e5b8..05d4c4bf4c99e 100644 --- a/code/modules/projectiles/boxes_magazines/external/pistol.dm +++ b/code/modules/projectiles/boxes_magazines/external/pistol.dm @@ -1,44 +1,4 @@ -/obj/item/ammo_box/magazine/m10mm - name = "pistol magazine (10mm)" - desc = "A gun magazine." - icon_state = "9x19p" - base_icon_state = "9x19p" - ammo_type = /obj/item/ammo_casing/c10mm - caliber = CALIBER_10MM - max_ammo = 8 - multiple_sprites = AMMO_BOX_FULL_EMPTY - multiple_sprite_use_base = TRUE - -/obj/item/ammo_box/magazine/m10mm/fire - name = "pistol magazine (10mm incendiary)" - icon_state = "9x19pI" - base_icon_state = "9x19pI" - desc = "A 10mm pistol magazine. Loaded with rounds which ignite the target." - ammo_type = /obj/item/ammo_casing/c10mm/fire - -/obj/item/ammo_box/magazine/m10mm/hp - name = "pistol magazine (10mm HP)" - icon_state = "9x19pH" - base_icon_state = "9x19pH" - desc= "A 10mm pistol magazine. Loaded with hollow-point rounds, extremely effective against unarmored targets, but nearly useless against protective clothing." - ammo_type = /obj/item/ammo_casing/c10mm/hp - -/obj/item/ammo_box/magazine/m10mm/ap - name = "pistol magazine (10mm AP)" - icon_state = "9x19pA" - base_icon_state = "9x19pA" - desc= "A 10mm pistol magazine. Loaded with rounds which penetrate armour, but are less effective against normal targets." - ammo_type = /obj/item/ammo_casing/c10mm/ap - -/obj/item/ammo_box/magazine/m45 - name = "handgun magazine (.45)" - icon_state = "45-8" - base_icon_state = "45" - ammo_type = /obj/item/ammo_casing/c45 - caliber = CALIBER_45 - max_ammo = 8 - multiple_sprites = AMMO_BOX_PER_BULLET - multiple_sprite_use_base = TRUE +// Makarov (9mm) // /obj/item/ammo_box/magazine/m9mm name = "pistol magazine (9mm)" @@ -46,7 +6,7 @@ base_icon_state = "9x19p" ammo_type = /obj/item/ammo_casing/c9mm caliber = CALIBER_9MM - max_ammo = 8 + max_ammo = 12 multiple_sprites = AMMO_BOX_FULL_EMPTY multiple_sprite_use_base = TRUE @@ -71,6 +31,8 @@ desc= "A gun magazine. Loaded with rounds which penetrate armour, but are less effective against normal targets." ammo_type = /obj/item/ammo_casing/c9mm/ap +// Stechkin APS (9mm) // + /obj/item/ammo_box/magazine/m9mm_aps name = "stechkin pistol magazine (9mm)" icon_state = "9mmaps-15" @@ -86,25 +48,50 @@ /obj/item/ammo_box/magazine/m9mm_aps/fire name = "stechkin pistol magazine (9mm incendiary)" ammo_type = /obj/item/ammo_casing/c9mm/fire - max_ammo = 15 /obj/item/ammo_box/magazine/m9mm_aps/hp name = "stechkin pistol magazine (9mm HP)" ammo_type = /obj/item/ammo_casing/c9mm/hp - max_ammo = 15 /obj/item/ammo_box/magazine/m9mm_aps/ap name = "stechkin pistol magazine (9mm AP)" ammo_type = /obj/item/ammo_casing/c9mm/ap - max_ammo = 15 -/obj/item/ammo_box/magazine/m50 - name = "handgun magazine (.50ae)" - icon_state = "50ae" - ammo_type = /obj/item/ammo_casing/a50ae - caliber = CALIBER_50AE - max_ammo = 7 - multiple_sprites = AMMO_BOX_PER_BULLET +// Ansem (10mm) // + +/obj/item/ammo_box/magazine/m10mm + name = "pistol magazine (10mm)" + desc = "A gun magazine." + icon_state = "9x19p" + base_icon_state = "9x19p" + ammo_type = /obj/item/ammo_casing/c10mm + caliber = CALIBER_10MM + max_ammo = 8 + multiple_sprites = AMMO_BOX_FULL_EMPTY + multiple_sprite_use_base = TRUE + +/obj/item/ammo_box/magazine/m10mm/fire + name = "pistol magazine (10mm incendiary)" + icon_state = "9x19pI" + base_icon_state = "9x19pI" + desc = "A 10mm pistol magazine. Loaded with rounds which ignite the target." + ammo_type = /obj/item/ammo_casing/c10mm/fire + +/obj/item/ammo_box/magazine/m10mm/hp + name = "pistol magazine (10mm HP)" + icon_state = "9x19pH" + base_icon_state = "9x19pH" + desc= "A 10mm pistol magazine. Loaded with hollow-point rounds, extremely effective against unarmored targets, but nearly useless against protective clothing." + ammo_type = /obj/item/ammo_casing/c10mm/hp + +/obj/item/ammo_box/magazine/m10mm/ap + name = "pistol magazine (10mm AP)" + icon_state = "9x19pA" + base_icon_state = "9x19pA" + desc= "A 10mm pistol magazine. Loaded with rounds which penetrate armour, but are less effective against normal targets." + ammo_type = /obj/item/ammo_casing/c10mm/ap + +// Regal Condor (10mm) // /obj/item/ammo_box/magazine/r10mm name = "regal condor magazine (10mm Reaper)" @@ -115,3 +102,25 @@ max_ammo = 8 multiple_sprites = AMMO_BOX_PER_BULLET multiple_sprite_use_base = TRUE + +// M1911 (.45) // + +/obj/item/ammo_box/magazine/m45 + name = "handgun magazine (.45)" + icon_state = "45-8" + base_icon_state = "45" + ammo_type = /obj/item/ammo_casing/c45 + caliber = CALIBER_45 + max_ammo = 8 + multiple_sprites = AMMO_BOX_PER_BULLET + multiple_sprite_use_base = TRUE + +// Desert Eagle (.50 AE) // + +/obj/item/ammo_box/magazine/m50 + name = "handgun magazine (.50ae)" + icon_state = "50ae" + ammo_type = /obj/item/ammo_casing/a50ae + caliber = CALIBER_50AE + max_ammo = 7 + multiple_sprites = AMMO_BOX_PER_BULLET diff --git a/code/modules/projectiles/boxes_magazines/external/toy.dm b/code/modules/projectiles/boxes_magazines/external/toy.dm index 4f666e119b84d..695388280ebc4 100644 --- a/code/modules/projectiles/boxes_magazines/external/toy.dm +++ b/code/modules/projectiles/boxes_magazines/external/toy.dm @@ -20,7 +20,7 @@ /obj/item/ammo_box/magazine/toy/pistol name = "foam force pistol magazine" icon_state = "9x19p" - max_ammo = 8 + max_ammo = 12 multiple_sprites = AMMO_BOX_FULL_EMPTY /obj/item/ammo_box/magazine/toy/pistol/riot diff --git a/code/modules/projectiles/guns/ballistic/toy.dm b/code/modules/projectiles/guns/ballistic/toy.dm index bd84e5f794188..dae77b0936833 100644 --- a/code/modules/projectiles/guns/ballistic/toy.dm +++ b/code/modules/projectiles/guns/ballistic/toy.dm @@ -17,6 +17,7 @@ /obj/item/gun/ballistic/automatic/toy/riot spawn_magazine_type = /obj/item/ammo_box/magazine/toy/smg/riot + /obj/item/gun/ballistic/automatic/pistol/toy name = "foam force pistol" desc = "A small, easily concealable toy handgun. Ages 8 and up." @@ -31,6 +32,9 @@ magazine = new /obj/item/ammo_box/magazine/toy/pistol/riot(src) return ..() +/obj/item/gun/ballistic/automatic/pistol/toy/riot/clandestine + projectile_damage_multiplier = 1.4 + /obj/item/gun/ballistic/shotgun/toy name = "foam force shotgun" desc = "A toy shotgun with wood furniture and a four-shell capacity underneath. Ages 8 and up." diff --git a/code/modules/uplink/uplink_items/ammunition.dm b/code/modules/uplink/uplink_items/ammunition.dm index 2276485a2b7b5..7000fb7e9a766 100644 --- a/code/modules/uplink/uplink_items/ammunition.dm +++ b/code/modules/uplink/uplink_items/ammunition.dm @@ -7,19 +7,19 @@ surplus = 40 /datum/uplink_item/ammo/toydarts - name = "Box of Riot Darts" - desc = "A box of 40 Donksoft riot darts, for reloading any compatible foam dart magazine. Don't forget to share!" - item = /obj/item/ammo_box/foambox/riot + name = "Donksoft Riot Pistol Ammunition Case" + desc = "A case containing three spare magazines for the Donksoft riot pistol, along with a box of loose riot darts." + item = /obj/item/storage/toolbox/guncase/traitor/ammunition/donksoft cost = 2 - surplus = 0 uplink_item_flags = SYNDIE_TRIPS_CONTRABAND purchasable_from = ~UPLINK_SERIOUS_OPS /datum/uplink_item/ammo/pistol - name = "9mm Handgun Magazine" - desc = "An additional 8-round 9mm magazine, compatible with the Makarov pistol." - item = /obj/item/ammo_box/magazine/m9mm - cost = 1 + name = "9mm Magazine Case" + desc = "A case containing three additional 8-round 9mm magazines, compatible with the Makarov pistol, as well as \ + a box of loose 9mm ammunition." + item = /obj/item/storage/toolbox/guncase/traitor/ammunition + cost = 2 purchasable_from = ~UPLINK_ALL_SYNDIE_OPS uplink_item_flags = SYNDIE_TRIPS_CONTRABAND diff --git a/code/modules/uplink/uplink_items/dangerous.dm b/code/modules/uplink/uplink_items/dangerous.dm index 0c86d8731e00b..092ec4c384782 100644 --- a/code/modules/uplink/uplink_items/dangerous.dm +++ b/code/modules/uplink/uplink_items/dangerous.dm @@ -7,19 +7,22 @@ category = /datum/uplink_category/dangerous /datum/uplink_item/dangerous/foampistol - name = "Toy Pistol with Riot Darts" - desc = "An innocent-looking toy pistol designed to fire foam darts. Comes loaded with riot-grade \ - darts effective at incapacitating a target." - item = /obj/item/gun/ballistic/automatic/pistol/toy/riot - cost = 2 + name = "Donksoft Riot Pistol Case" + desc = "A case containing an innocent-looking toy pistol designed to fire foam darts at higher than normal velocity. \ + Comes loaded with riot-grade darts effective at incapacitating a target, two spare magazines and a box of loose \ + riot darts. Perfect for nonlethal takedowns at range, as well as deniability. While not included in the kit, the \ + pistol is compatible with suppressors, which can be purchased separately." + item = /obj/item/storage/toolbox/guncase/traitor/donksoft + cost = 6 surplus = 10 purchasable_from = ~UPLINK_SERIOUS_OPS /datum/uplink_item/dangerous/pistol - name = "Makarov Pistol" - desc = "A small, easily concealable handgun that uses 9mm auto rounds in 8-round magazines and is compatible \ - with suppressors." - item = /obj/item/gun/ballistic/automatic/pistol + name = "Makarov Pistol Case" + desc = "A weapon case containing an unknown variant of the Makarov pistol, along with two spare magazines and a box of loose 9mm ammunition. \ + Chambered in 9mm. Perfect for frequent skirmishes with security, as well as ensuring you have enough firepower to outlast the competition. \ + While not included in the kit, the pistol is compatible with suppressors, which can be purchased seperately." + item = /obj/item/storage/toolbox/guncase/traitor cost = 7 purchasable_from = ~UPLINK_ALL_SYNDIE_OPS diff --git a/icons/obj/storage/case.dmi b/icons/obj/storage/case.dmi index 94b7251f93f46c385563b007d6bc1b2609f4c234..65b40a403ea2e83307bbffd2b3dd66bd0e6141bf 100644 GIT binary patch delta 2184 zcmV;32zU3t5b6?;7Y@J(0{{R3WdfWv0003jktNMGEG;omQ(CvTw~dXBqYe|`;NVM3 zOZyf8udlDZ-RU#`0BUY^)YQ~)aBv(PA5&9PJU&F$*4C3K0Um!yN>ISSz=b$J-3btt zNKZ=7X4e1!00DGTPE!Ct=GbNc00A0$R9JLGWpiV4X>fFDZ*Bkpc$}5g!ES>v3;@tG zd<ANcTc?d}$6cmYQxEGeAOnV2m>4Bt?f!l+)^VyZ$|Z@OoEYqEllQ~N@s#X8kMS2e zPhyj|<mKTpj?RBn1~V+4(>O9nwF%S02M9P!H@PFM3h=mzqmrB-_MYOXa?s*5|Cb(% z-f3CJQZ!gD>XGGgxnr$VN6Z&xPQmrolC2fT&v;GT<x8|!0_(oOm8zk1XjkDi_f^te zExcR?6YUs$3rg&Xhg#R+MMbtE4i192Ow|nHYOtDrafN@ov$*DF^}G(d$nZV3?R`3p zIYvd^XwLd`S<XHB4hluHLSwAxQtrqH;ng<7OUF{)Og)`bACulDhtvM|CHn#K&TFYc zxpJKV00zcML_t(|ob8zlTN+0chS%Xz(bbB!kn}=?teB>erqY-ur6~>GFG+~88j_|D z=KueP&TW5}ot@j_E-tj^<#~2y{E$80nVCh;I1T^+0FWAU1cQzU3G_)bmm}yMpgchz zp-p!Rl!@px_qiNSAa<ab2bx<P9KT3;w(0EtMT$1U1p3?;n7MgWDwWVY8;J2OEG*>F zB1tj1;t?84cU(-NxI_}TR4kBDy880+^87OT65)TAT<38s=qoELiz~=QxFy#`+>WKY z#bUWwSSl=GaDxX$H%;AHB}p&&kin{y;f1`<f^r5-`r2CItHRpS8fA$N*3#4+l6ny_ zfIPx0J0HBrWh|X$FoZJ033O-m>nM>KpxZycSgBMN^R$nYI(;d0x@tuVY3j~uHHu;h zE#!Y)Y`~=}M74ylPG1V$y(8hKsmC<H7l_t?UU%=}dA}>*rm4p?5JqJ{ue*23-;|9R zE`Mv$D<*yN2JV)>D;qOh{@$WjO!_U%0A2#d3@6iXVFo1JG<9dS6eVIH9|eu2Py8vw z{um46q^i3`iRc$qB7Nc%)+7pP>Hq)$004gg008`_k^W^uC?~zCM$vyrQauUi-nz&= zRE;{Q)hXHtlIn>->-R*~Q8o0BYol?$QLB3-fnL3a2MzJplj^D!FqUpH(Aa2hHfvt3 zi6PBqb3=$AsqP@D>`}_0G4xml8jS`CfHcYg6X-~)J5_U~5{j+IF!11q2OAq34={hE z!GlPEiF6)cDY%gMs-yecbe)0GCdRAxVXgUNldNIVJgj*_*@EehnEptoZ!vvK(h-k} ztPI{04On#g9{DL0dI))~)@Hr=Q?uS`(Pp#N^1{E(^v6tptkbucz9s1>CsPd@u;}zX z#$E2U>i50oM$@a;X>-3G4KR_e+M<6rJ``6cZ~1vWN?0cW)IHB5k8#qd0!*O$OJsX{ zyXr5NDw3CwPABn82s#ZQgfhUJ>vWU0e|fUAv-7mwW)Y(3CT{=wOsA{kmkfAymchC% z!#CFHihcg%3BI;>p0fo^Vifgf&u*&U&J1jCKP4IFs{}8aTx$B{XP_Eg<2ZkSTzdNC zXP{J#fFCm{>No)MMMQYWo0{jPs3XOL-bqmh000000000W8L{f`(@dQD`&478zfV6F z1J?RI=C_Xd7QeqR>wk33`kyaNs@Z_Oevj!`47{)y=yuKe%bOdBQNPa|Q~f<o{XTO{ z_4hdS`^+)z(m3_|tTEQ#W7L1|v&LM1x7Y8p#!`Q0_4`UiTffg5R)4Ql%=LM_o;k_u z^BI%8KA$nk>+=}{^?3jQ00000004kY=o!d5wm9^54U8P@?d|XH?=fgE@-f-zAp-{o z2kd$v8Q42KY`5Eo4B8X#kfGiS#qXO490&%Ef)6-S-XJ5r7l}XUMh$-)9UmPYo}8TU zo^*q(^qwJp!NBqH@!`qo>FEjW$v23lpV{;?%jch+MfH&ZfANpvpQ#zx4eec}fvMdC zuMCU~yng-W&70Q@+Kb#EJH2oEBI^equ($X2?OXmFW<Bu++3EfBUHl^K2CrZ^GSKb5 zd-tx(puNZqveVfNkmY|8!XM7Y3=nXz=OO%Icn0tnIL`p>Ng2va?;8lGAd&$`Bx@Z2 z0000000000_<v$MoQQLHk-UC?adE+Q+6$Dw4Dk3YhZ8oP-rrWAKRv}iJ!R0Iq+ecM za-H^k{p!6yM;KiR0rJwmU*ePu=yczJu{N2O0nveAAUL1k5k`LvXmxJDTpdoyK&K-( zkPL*1{7M5#og3iweX0JQrU4wk*1+g!NNqr`-{K5(-s@*TI-igX=yY!27WP2LvIoQi z3V8`>bQ(bN`aOPla-H@R25|P(d%$uyVbf^<mg?|8(g#r;=be8A(4MbfeK5cbXpSg? z%B)SN1}ydYfuw&ARQkoozdv4x`jrtDpnoW_E1Xq~3|RDdGcdqE9WY2wnt=h%`{44^ zr%#u(H=2R>AMlItA$SGD&<uo5D0o+#0fWwGz*wIjNV+rwc=dF<ICkC>XMil15W$dV zm>o&<|G_<c;inU!88GX73e5HQL1YF7l1}o@pgmt;n;3t`Dm;Do@QO#s=)F4c_s?JT zq{9iDK3S|=AQY&a*s=8Nu_g946Au6Y000000KjYzr~W?8_~q;2a7ZshMdfR%;Rc4+ z*VjXGxgO4>fguT>n&1v*(f~Ixiw6AoS#LHCTnq8fngO<l*~4h&o<gkN{`vD~ef@o^ ziBo@{YT`81-=~^5_4lbJR{edd$+rHUBGX@gw=tuM2LJ#7ZpyzY=b=Y{wL6yp0000< KMNUMnLSTYN7%`Cm delta 1883 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 Vy7e9Q`v3p{07(Z$PDHLkV1k)bs_6g# From 8dba72fb5d7c63513f317f8dc3cda15c5cb23aab Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 01:40:21 +0000 Subject: [PATCH 063/126] Automatic changelog for PR #88482 [ci skip] --- html/changelogs/AutoChangeLog-pr-88482.yml | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88482.yml diff --git a/html/changelogs/AutoChangeLog-pr-88482.yml b/html/changelogs/AutoChangeLog-pr-88482.yml new file mode 100644 index 0000000000000..f94bf1b4da1fa --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88482.yml @@ -0,0 +1,8 @@ +author: "NecromancerAnne (code), SmArtKar (sprites)" +delete-after: True +changes: + - balance: "Makarovs and Toy Pistols come in weapon cases. Complete with spare ammo." + - balance: "Basic ammo for either weapon comes in weapon cases of three extra magazines at an affordable price." + - balance: "Donksoft Toy Pistols from the uplink are much stronger than their standard counterparts, but now priced at 6 TC." + - balance: "Makarovs and Toy pistols have a magazine capacity of 12 rounds." + - balance: "Gun/Ammo cases from the traitor uplink can be destroyed by activating the disposal bomb. Press Alt-Right-Click on the case to start the timer." \ No newline at end of file From 1116df9b98bca17653807f24ba4ba1863b4fb3d9 Mon Sep 17 00:00:00 2001 From: Aylong <69762909+AyIong@users.noreply.github.com> Date: Sun, 22 Dec 2024 03:42:28 +0200 Subject: [PATCH 064/126] [NO GBP] Fix 516 scrollbar and background image (#88617) ## About The Pull Request Ports - https://github.com/ParadiseSS13/Paradise/pull/26433 Fixes scrollbar color for Byond 516, and background position ## Why It's Good For The Game Colorfull scrollbar <details><summary> Videos </summary> https://github.com/user-attachments/assets/969b4f6f-f553-4786-86c7-df11c034675b </details> ## Changelog :cl: fix: Fixed scrollbar colors and background position in TGUI on Byond 516 /:cl: --- html/statbrowser.css | 23 ++++++++++++++++--- html/statbrowser.js | 2 ++ tgui/packages/tgui/layouts/Layout.tsx | 1 + tgui/packages/tgui/styles/layouts/Layout.scss | 18 ++++++++++++++- tgui/packages/tgui/styles/main.scss | 2 +- 5 files changed, 41 insertions(+), 5 deletions(-) diff --git a/html/statbrowser.css b/html/statbrowser.css index d8c0f92b626f4..d49cb3d6e2667 100644 --- a/html/statbrowser.css +++ b/html/statbrowser.css @@ -1,3 +1,13 @@ +.light:root { + --scrollbar-base: #f2f2f2; + --scrollbar-thumb: #a7a7a7; +} + +html, +body { + scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-base); +} + body { font-family: Verdana, Geneva, Tahoma, sans-serif; font-size: 12px; @@ -177,9 +187,16 @@ img { margin-bottom: 1em; } -/* Dark theme colors */ +/** + * MARK: Dark theme colors + */ +.dark:root { + --scrollbar-base: #151515; + --scrollbar-thumb: #363636; +} + body.dark { - background-color: #131313; + background-color: #151515; color: #b2c4dd; scrollbar-base-color: #1c1c1c; scrollbar-face-color: #3b3b3b; @@ -201,7 +218,7 @@ body.dark { } .dark #menu { - background-color: #131313; + background-color: #151515; } .dark #menu.tabs-classic .button.active { diff --git a/html/statbrowser.js b/html/statbrowser.js index 3fe115943a702..d33713f65f746 100644 --- a/html/statbrowser.js +++ b/html/statbrowser.js @@ -705,9 +705,11 @@ function draw_verbs(cat) { function set_theme(which) { if (which == "light") { document.body.className = ""; + document.documentElement.className = 'light'; set_style_sheet("browserOutput_white"); } else if (which == "dark") { document.body.className = "dark"; + document.documentElement.className = 'dark'; set_style_sheet("browserOutput"); } } diff --git a/tgui/packages/tgui/layouts/Layout.tsx b/tgui/packages/tgui/layouts/Layout.tsx index 173ed1cbb432d..f3f395e540eca 100644 --- a/tgui/packages/tgui/layouts/Layout.tsx +++ b/tgui/packages/tgui/layouts/Layout.tsx @@ -21,6 +21,7 @@ type Props = Partial<{ export function Layout(props: Props) { const { className, theme = 'nanotrasen', children, ...rest } = props; + document.documentElement.className = `theme-${theme}`; return ( <div className={'theme-' + theme}> diff --git a/tgui/packages/tgui/styles/layouts/Layout.scss b/tgui/packages/tgui/styles/layouts/Layout.scss index ecf750ecc0740..745112eab47c8 100644 --- a/tgui/packages/tgui/styles/layouts/Layout.scss +++ b/tgui/packages/tgui/styles/layouts/Layout.scss @@ -5,12 +5,28 @@ @use 'sass:color'; @use '../base'; +@use '../functions.scss' as *; +$luminance: luminance(base.$color-bg); $scrollbar-color-multiplier: 1 !default; +$scrollbar-base: color.scale( + base.$color-bg, + $lightness: -33% * $scrollbar-color-multiplier +); +$scrollbar-face: color.scale( + base.$color-bg, + $lightness: if($luminance > 0.05, 30%, 10%) * $scrollbar-color-multiplier +); +// Fancy scrollbar +html, +body { + scrollbar-color: $scrollbar-face $scrollbar-base; +} + +// Remove with 516, IE legacy code .Layout, .Layout * { - // Fancy scrollbar scrollbar-base-color: color.scale( base.$color-bg, $lightness: -25% * $scrollbar-color-multiplier diff --git a/tgui/packages/tgui/styles/main.scss b/tgui/packages/tgui/styles/main.scss index 64c54a9debf2a..a00d7cd973461 100644 --- a/tgui/packages/tgui/styles/main.scss +++ b/tgui/packages/tgui/styles/main.scss @@ -66,7 +66,7 @@ // NT Theme .Layout__content { background-image: url('../assets/bg-nanotrasen.svg'); - background-size: 70%; + background-size: 70% 70%; background-position: center; background-repeat: no-repeat; } From f20661e44ea9a8ebdc24e1ba5d2202622128a99a Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 01:42:49 +0000 Subject: [PATCH 065/126] Automatic changelog for PR #88617 [ci skip] --- html/changelogs/AutoChangeLog-pr-88617.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88617.yml diff --git a/html/changelogs/AutoChangeLog-pr-88617.yml b/html/changelogs/AutoChangeLog-pr-88617.yml new file mode 100644 index 0000000000000..530ff693e1eda --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88617.yml @@ -0,0 +1,4 @@ +author: "AyIong" +delete-after: True +changes: + - bugfix: "Fixed scrollbar colors and background position in TGUI on Byond 516" \ No newline at end of file From 4eab0a91d0b738aa8c90308942bb7e2226c58cb7 Mon Sep 17 00:00:00 2001 From: Ivory <distributivgesetz93@gmail.com> Date: Sun, 22 Dec 2024 02:43:05 +0100 Subject: [PATCH 066/126] [no gbp] Fixes an erroneous moved call (#88512)    oops --- code/game/atoms_movable.dm | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index 7c2840afde19a..e6fe68ea4c487 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -1137,7 +1137,6 @@ pulledby.stop_pulling() var/same_loc = oldloc == destination - var/movement_successful = TRUE var/area/old_area = get_area(oldloc) var/area/destarea = get_area(destination) var/movement_dir = get_dir(src, destination) @@ -1146,13 +1145,13 @@ loc = destination - if(!same_loc && loc == oldloc) - // when attempting to move an atom A into an atom B which already contains A, BYOND seems - // to silently refuse to move A to the new loc. This can really break stuff (see #77067) - stack_trace("Attempt to move [src] to [destination] was rejected by BYOND, possibly due to cyclic contents") - movement_successful = FALSE + if(!same_loc) + if(loc == oldloc) + // when attempting to move an atom A into an atom B which already contains A, BYOND seems + // to silently refuse to move A to the new loc. This can really break stuff (see #77067) + stack_trace("Attempt to move [src] to [destination] was rejected by BYOND, possibly due to cyclic contents") + return FALSE - if(movement_successful && !same_loc) if(is_multi_tile && isturf(destination)) var/list/new_locs = block( destination, @@ -1181,7 +1180,7 @@ if(destarea && old_area != destarea) destarea.Entered(src, old_area) - . = movement_successful + . = TRUE //If no destination, move the atom into nullspace (don't do this unless you know what you're doing) else From 165be8f3b02f82bba5b8ad63d39b92009712511b Mon Sep 17 00:00:00 2001 From: DATA <44149906+DATA-xPUNGED@users.noreply.github.com> Date: Sat, 21 Dec 2024 22:56:01 -0300 Subject: [PATCH 067/126] Removes the sec record computer from the icemoons agent (#88545) ## About The Pull Request it is gone, no more record deletion. ## Why It's Good For The Game i made this map but i'm pretty sure i didn't add this computer there, having the opwer to delete records just completely fucks over sec and isn't fun to go against ## Changelog :cl: map: removed the sec record computer from the Icemoon Listening Post. /:cl: --- _maps/RandomRuins/IceRuins/icemoon_underground_comms_agent.dmm | 3 --- 1 file changed, 3 deletions(-) diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent.dmm index d5c344e9cd31a..3553672b1080c 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent.dmm @@ -993,9 +993,6 @@ /area/ruin/comms_agent) "UI" = ( /obj/structure/table/reinforced, -/obj/machinery/computer/records/security/laptop/syndie{ - dir = 1 - }, /obj/item/paper/monitorkey{ pixel_x = -15; pixel_y = 7 From d39dd980b860c7f11f91c166b5c12434a1adce5f Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 01:56:20 +0000 Subject: [PATCH 068/126] Automatic changelog for PR #88545 [ci skip] --- html/changelogs/AutoChangeLog-pr-88545.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88545.yml diff --git a/html/changelogs/AutoChangeLog-pr-88545.yml b/html/changelogs/AutoChangeLog-pr-88545.yml new file mode 100644 index 0000000000000..971d526e305de --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88545.yml @@ -0,0 +1,4 @@ +author: "DATA-xPUNGED" +delete-after: True +changes: + - map: "removed the sec record computer from the Icemoon Listening Post." \ No newline at end of file From efe62c5a728a5135d5d92a058fbcb57ffffa90f3 Mon Sep 17 00:00:00 2001 From: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com> Date: Sun, 22 Dec 2024 04:05:30 +0200 Subject: [PATCH 069/126] Pet Commands QOL . makes pet commands easier to use (#88495) ## About The Pull Request this PR improves the UX of pet commands a bit. i decided to expand on their radial menu. You can now hold shift and hover over your pet to display a menu of commands which you can choose from. alternatively, you can still type out commands in chat https://github.com/user-attachments/assets/9da7f7ea-58a3-4fd6-b040-45cc05cda51d ## Why It's Good For The Game makes pet commands easier to give out when you're managing more than 1 pet. also fixes the fishing command not working. ## Changelog :cl: qol: holding shift and hovering over your pet will display a list of commands you can click from fix: fixes the fishing pet command not working /:cl: --- .../signals_atom/signals_atom_x_act.dm | 3 + code/__DEFINES/keybinding.dm | 4 + code/__DEFINES/radial_defines.dm | 6 + code/_onclick/hud/radial.dm | 55 +++++--- code/_onclick/hud/radial_persistent.dm | 2 +- code/datums/components/callouts.dm | 2 +- code/datums/components/pet_commands/fetch.dm | 23 +-- .../components/pet_commands/obeys_commands.dm | 82 ++++++++--- .../components/pet_commands/pet_command.dm | 131 ++++++++++-------- .../pet_commands/pet_commands_basic.dm | 109 ++++++++++----- code/datums/elements/pet_cult.dm | 3 +- code/datums/keybinding/_keybindings.dm | 2 + code/datums/keybinding/living.dm | 3 + code/datums/keybinding/mob.dm | 7 + code/game/atom/_atom.dm | 2 + .../heretic/knowledge/cosmic_lore.dm | 4 +- .../living/basic/bots/cleanbot/cleanbot.dm | 2 +- .../living/basic/bots/cleanbot/cleanbot_ai.dm | 7 +- .../mob/living/basic/farm_animals/bee/_bee.dm | 2 +- .../basic/farm_animals/bee/bee_ai_behavior.dm | 9 +- .../mob/living/basic/heretic/star_gazer.dm | 2 +- .../mob/living/basic/icemoon/wolf/wolf.dm | 5 +- .../mob/living/basic/jungle/leaper/leaper.dm | 7 +- .../living/basic/jungle/leaper/leaper_ai.dm | 12 +- .../living/basic/jungle/seedling/seedling.dm | 6 +- .../basic/jungle/seedling/seedling_ai.dm | 11 +- .../basic/lavaland/goldgrub/goldgrub.dm | 2 +- .../basic/lavaland/goldgrub/goldgrub_ai.dm | 5 + .../basic/lavaland/gutlunchers/gutlunchers.dm | 9 +- .../lavaland/gutlunchers/gutlunchers_ai.dm | 10 +- .../basic/lavaland/lobstrosity/lobstrosity.dm | 15 +- .../mob/living/basic/lavaland/mook/mook.dm | 4 +- .../mob/living/basic/lavaland/mook/mook_ai.dm | 8 +- .../living/basic/lavaland/raptor/_raptor.dm | 8 +- .../mob/living/basic/minebots/minebot.dm | 3 +- .../mob/living/basic/minebots/minebot_ai.dm | 16 ++- .../modules/mob/living/basic/pets/dog/_dog.dm | 9 +- code/modules/mob/living/basic/pets/fox.dm | 3 +- .../mob/living/basic/pets/orbie/orbie.dm | 3 +- .../mob/living/basic/pets/orbie/orbie_ai.dm | 18 ++- .../living/basic/pets/pet_cult/pet_cult_ai.dm | 3 + .../mob/living/basic/slime/ai/pet_command.dm | 4 +- code/modules/mob/living/basic/slime/slime.dm | 2 +- .../mob/living/basic/space_fauna/carp/carp.dm | 2 +- .../basic/space_fauna/carp/carp_ai_actions.dm | 2 +- .../living/basic/space_fauna/carp/magicarp.dm | 4 +- .../regal_rat/regal_rat_actions.dm | 8 +- icons/effects/mouse_pointers/pet_paw.dmi | Bin 0 -> 372 bytes icons/hud/radial_pets.dmi | Bin 0 -> 3317 bytes tgstation.dme | 1 + 50 files changed, 423 insertions(+), 217 deletions(-) create mode 100644 code/__DEFINES/radial_defines.dm create mode 100644 icons/effects/mouse_pointers/pet_paw.dmi create mode 100644 icons/hud/radial_pets.dmi diff --git a/code/__DEFINES/dcs/signals/signals_atom/signals_atom_x_act.dm b/code/__DEFINES/dcs/signals/signals_atom/signals_atom_x_act.dm index bedfaf2fa0374..bb5b344a89a48 100644 --- a/code/__DEFINES/dcs/signals/signals_atom/signals_atom_x_act.dm +++ b/code/__DEFINES/dcs/signals/signals_atom/signals_atom_x_act.dm @@ -92,3 +92,6 @@ /// from /obj/projectile/energy/fisher/on_hit() or /obj/item/gun/energy/recharge/fisher when striking a target #define COMSIG_ATOM_SABOTEUR_ACT "hit_by_saboteur" #define COMSIG_SABOTEUR_SUCCESS 1 + +/// signal sent when a mouse is hovering over us, sent by atom/proc/on_mouse_entered +#define COMSIG_ATOM_MOUSE_ENTERED "mouse_entered" diff --git a/code/__DEFINES/keybinding.dm b/code/__DEFINES/keybinding.dm index 5f025ad99cffb..8ae95933e646b 100644 --- a/code/__DEFINES/keybinding.dm +++ b/code/__DEFINES/keybinding.dm @@ -4,6 +4,9 @@ #define COMSIG_KB_ACTIVATED (1<<0) #define COMSIG_KB_EMOTE "keybinding_emote_down" +///Signal sent when a keybind is deactivated +#define DEACTIVATE_KEYBIND(A) "[A]_DEACTIVATED" + //Admin #define COMSIG_KB_ADMIN_ASAY_DOWN "keybinding_admin_asay_down" #define COMSIG_KB_ADMIN_DSAY_DOWN "keybinding_admin_dsay_down" @@ -54,6 +57,7 @@ #define COMSIG_KB_LIVING_DISABLE_COMBAT_DOWN "keybinding_living_disable_combat_down" #define COMSIG_KB_LIVING_TOGGLEMOVEINTENT_DOWN "keybinding_mob_togglemoveintent_down" #define COMSIG_KB_LIVING_TOGGLEMOVEINTENTALT_DOWN "keybinding_mob_togglemoveintentalt_down" +#define COMSIG_KB_LIVING_VIEW_PET_COMMANDS "keybinding_living_view_pet_commands" //Mob #define COMSIG_KB_MOB_FACENORTH_DOWN "keybinding_mob_facenorth_down" diff --git a/code/__DEFINES/radial_defines.dm b/code/__DEFINES/radial_defines.dm new file mode 100644 index 0000000000000..35ae6eebb5984 --- /dev/null +++ b/code/__DEFINES/radial_defines.dm @@ -0,0 +1,6 @@ +#define NEXT_PAGE_ID "__next__" +#define DEFAULT_CHECK_DELAY 2 SECONDS + +#define BUTTON_SLIDE_IN (1<<0) +#define BUTTON_FADE_IN (1<<1) +#define BUTTON_FADE_OUT (1<<2) diff --git a/code/_onclick/hud/radial.dm b/code/_onclick/hud/radial.dm index ab95d3bb392eb..041a16b12a132 100644 --- a/code/_onclick/hud/radial.dm +++ b/code/_onclick/hud/radial.dm @@ -1,6 +1,3 @@ -#define NEXT_PAGE_ID "__next__" -#define DEFAULT_CHECK_DELAY 20 - GLOBAL_LIST_EMPTY(radial_menus) /atom/movable/screen/radial @@ -113,7 +110,7 @@ GLOBAL_LIST_EMPTY(radial_menus) var/hudfix_method = TRUE //TRUE to change anchor to user, FALSE to shift by py_shift var/py_shift = 0 - var/entry_animation = TRUE + var/button_animation_flags = BUTTON_SLIDE_IN ///A replacement icon state for the generic radial slice bg icon. Doesn't affect the next page nor the center buttons var/radial_slice_icon @@ -163,6 +160,8 @@ GLOBAL_LIST_EMPTY(radial_menus) var/atom/movable/screen/radial/slice/new_element = new /atom/movable/screen/radial/slice new_element.tooltips = use_tooltips new_element.set_parent(src) + if(button_animation_flags & BUTTON_FADE_IN) + new_element.alpha = 0 elements += new_element var/page = 1 @@ -186,9 +185,9 @@ GLOBAL_LIST_EMPTY(radial_menus) page_data[page] = current pages = page current_page = clamp(set_page, 1, pages) - update_screen_objects(entry_animation, click_on_hover) + update_screen_objects(button_animation_flags, click_on_hover) -/datum/radial_menu/proc/update_screen_objects(anim = FALSE, click_on_hover = FALSE) +/datum/radial_menu/proc/update_screen_objects(anim_flag = NONE, click_on_hover = FALSE) var/list/page_choices = page_data[current_page] var/angle_per_element = round(zone / page_choices.len) for(var/i in 1 to elements.len) @@ -198,11 +197,11 @@ GLOBAL_LIST_EMPTY(radial_menus) HideElement(element) element.click_on_hover = FALSE else - SetElement(element,page_choices[i],angle,anim = anim,anim_order = i) + SetElement(element,page_choices[i],angle,anim_flag = anim_flag,anim_order = i) // Only activate click on hover after the animation plays if (!click_on_hover) continue - if (anim) + if (anim_flag) addtimer(VARSET_CALLBACK(element, click_on_hover, TRUE), i * 0.5) else element.click_on_hover = TRUE @@ -217,11 +216,11 @@ GLOBAL_LIST_EMPTY(radial_menus) E.choice = null E.next_page = FALSE -/datum/radial_menu/proc/SetElement(atom/movable/screen/radial/slice/E,choice_id,angle,anim,anim_order) +/datum/radial_menu/proc/SetElement(atom/movable/screen/radial/slice/E, choice_id, angle, anim_flag, anim_order) //Position var/py = round(cos(angle) * radius) + py_shift var/px = round(sin(angle) * radius) - if(anim) + if(anim_flag & BUTTON_SLIDE_IN) var/timing = anim_order * 0.5 var/matrix/starting = matrix() starting.Scale(0.1,0.1) @@ -232,8 +231,11 @@ GLOBAL_LIST_EMPTY(radial_menus) E.pixel_y = py E.pixel_x = px - //Visuals - E.alpha = 255 + if(anim_flag & BUTTON_FADE_IN) + animate(E, alpha = 255, time = 0.15 SECONDS, easing = EASE_OUT) + else + E.alpha = 255 + E.mouse_opacity = MOUSE_OPACITY_ICON E.cut_overlays() E.vis_contents.Cut() @@ -266,7 +268,9 @@ GLOBAL_LIST_EMPTY(radial_menus) info_button.layer = RADIAL_CONTENT_LAYER E.vis_contents += info_button -/datum/radial_menu/New() +/datum/radial_menu/New(display_close_button) + if(!display_close_button) + return close_button = new close_button.set_parent(src) @@ -327,7 +331,9 @@ GLOBAL_LIST_EMPTY(radial_menus) menu_holder = image(icon='icons/effects/effects.dmi',loc=anchor,icon_state="nothing", layer = RADIAL_BACKGROUND_LAYER, pixel_x = offset_x, pixel_y = offset_y) SET_PLANE_EXPLICIT(menu_holder, ABOVE_HUD_PLANE, M) menu_holder.appearance_flags |= KEEP_APART|RESET_ALPHA|RESET_COLOR|RESET_TRANSFORM - menu_holder.vis_contents += elements + close_button + menu_holder.vis_contents += elements + if(!isnull(close_button)) + menu_holder.vis_contents += close_button current_user.images += menu_holder /datum/radial_menu/proc/hide() @@ -345,6 +351,14 @@ GLOBAL_LIST_EMPTY(radial_menus) next_check = world.time + check_delay stoplag(1) +/datum/radial_menu/proc/remove_menu() + if(!(button_animation_flags & BUTTON_FADE_OUT)) + qdel(src) + return + for(var/atom/movable/element as anything in elements) + animate(element, alpha = 0, time = 0.15 SECONDS) + QDEL_IN(src, 0.5 SECONDS) + /datum/radial_menu/Destroy() Reset() hide() @@ -356,11 +370,11 @@ GLOBAL_LIST_EMPTY(radial_menus) Choices should be a list where list keys are movables or text used for element names and return value and list values are movables/icons/images used for element icons */ -/proc/show_radial_menu(mob/user, atom/anchor, list/choices, uniqueid, radius, datum/callback/custom_check, require_near = FALSE, tooltips = FALSE, no_repeat_close = FALSE, radial_slice_icon = "radial_slice", autopick_single_option = TRUE, entry_animation = TRUE, click_on_hover = FALSE, user_space = FALSE) +/proc/show_radial_menu(mob/user, atom/anchor, list/choices, uniqueid, radius, datum/callback/custom_check, require_near = FALSE, tooltips = FALSE, no_repeat_close = FALSE, radial_slice_icon = "radial_slice", autopick_single_option = TRUE, button_animation_flags = BUTTON_SLIDE_IN, click_on_hover = FALSE, user_space = FALSE, check_delay = DEFAULT_CHECK_DELAY, display_close_button = TRUE, radial_menu_offset = list(0, 0)) if(!user || !anchor || !length(choices)) return - if(length(choices)==1 && autopick_single_option) + if(length(choices) == 1 && autopick_single_option) return choices[1] if(!uniqueid) @@ -372,8 +386,9 @@ GLOBAL_LIST_EMPTY(radial_menus) menu.finished = TRUE return - var/datum/radial_menu/menu = new - menu.entry_animation = entry_animation + var/datum/radial_menu/menu = new(display_close_button) + menu.button_animation_flags = button_animation_flags + menu.check_delay = check_delay GLOB.radial_menus[uniqueid] = menu if(radius) menu.radius = radius @@ -390,10 +405,12 @@ GLOBAL_LIST_EMPTY(radial_menus) var/turf/anchor_turf = get_turf(anchor) offset_x = (anchor_turf.x - user_turf.x) * ICON_SIZE_X + anchor.pixel_x - user.pixel_x offset_y = (anchor_turf.y - user_turf.y) * ICON_SIZE_Y + anchor.pixel_y - user.pixel_y + offset_x += radial_menu_offset[1] + offset_y += radial_menu_offset[2] menu.show_to(user, offset_x, offset_y) menu.wait(user, anchor, require_near) var/answer = menu.selected_choice - qdel(menu) + menu.remove_menu() GLOB.radial_menus -= uniqueid if(require_near && !in_range(anchor, user)) return diff --git a/code/_onclick/hud/radial_persistent.dm b/code/_onclick/hud/radial_persistent.dm index 5fe81d005bd43..d48c8d9eb456c 100644 --- a/code/_onclick/hud/radial_persistent.dm +++ b/code/_onclick/hud/radial_persistent.dm @@ -43,7 +43,7 @@ /datum/radial_menu/persistent/proc/change_choices(list/newchoices, tooltips = FALSE, animate = FALSE, keep_same_page = FALSE) if(!newchoices.len) return - entry_animation = FALSE + button_animation_flags = NONE var/target_page = keep_same_page ? current_page : 1 //Stores the current_page value before it's set back to 1 on Reset() Reset() set_choices(newchoices,tooltips, set_page = target_page) diff --git a/code/datums/components/callouts.dm b/code/datums/components/callouts.dm index 52a3e007905c3..854f769f8a10a 100644 --- a/code/datums/components/callouts.dm +++ b/code/datums/components/callouts.dm @@ -111,7 +111,7 @@ for(var/datum/callout_option/callout_option as anything in callout_options) callout_items[callout_option] = image(icon = 'icons/hud/radial.dmi', icon_state = callout_option::icon_state) - var/datum/callout_option/selection = show_radial_menu(user, get_turf(clicked_atom), callout_items, entry_animation = FALSE, click_on_hover = TRUE, user_space = TRUE) + var/datum/callout_option/selection = show_radial_menu(user, get_turf(clicked_atom), callout_items, button_animation_flags = NONE, click_on_hover = TRUE, user_space = TRUE) if (!selection) return diff --git a/code/datums/components/pet_commands/fetch.dm b/code/datums/components/pet_commands/fetch.dm index 9a42c485d5c06..143ac9ca1014c 100644 --- a/code/datums/components/pet_commands/fetch.dm +++ b/code/datums/components/pet_commands/fetch.dm @@ -3,11 +3,11 @@ * Watch for someone throwing or pointing at something and then go get it and bring it back. * If it's food we might eat it instead. */ -/datum/pet_command/point_targeting/fetch +/datum/pet_command/fetch command_name = "Fetch" command_desc = "Command your pet to retrieve something you throw or point at." - radial_icon = 'icons/mob/actions/actions_spells.dmi' - radial_icon_state = "summons" + radial_icon_state = "fetch" + requires_pointing = TRUE speech_commands = list("fetch") command_feedback = "bounces" pointed_reaction = "with great interest" @@ -16,22 +16,25 @@ /// If true, this is a poorly trained pet who will eat food you throw instead of bringing it back var/will_eat_targets = TRUE -/datum/pet_command/point_targeting/fetch/New(mob/living/parent) +/datum/pet_command/fetch/New(mob/living/parent) . = ..() if(isnull(parent)) return parent.AddElement(/datum/element/ai_held_item) // We don't remove this on destroy because they might still be holding something -/datum/pet_command/point_targeting/fetch/add_new_friend(mob/living/tamer) +/datum/pet_command/fetch/add_new_friend(mob/living/tamer) . = ..() RegisterSignal(tamer, COMSIG_MOB_THROW, PROC_REF(listened_throw)) -/datum/pet_command/point_targeting/fetch/remove_friend(mob/living/unfriended) +/datum/pet_command/fetch/remove_friend(mob/living/unfriended) . = ..() UnregisterSignal(unfriended, COMSIG_MOB_THROW) +/datum/pet_command/fetch/retrieve_command_text(atom/living_pet, atom/target) + return isnull(target) ? null : "signals [living_pet] to fetch [target]!" + /// A friend has thrown something, if we're listening or at least not busy then go get it -/datum/pet_command/point_targeting/fetch/proc/listened_throw(mob/living/carbon/thrower) +/datum/pet_command/fetch/proc/listened_throw(mob/living/carbon/thrower) SIGNAL_HANDLER var/mob/living/parent = weak_parent.resolve() @@ -57,7 +60,7 @@ RegisterSignal(thrown_thing, COMSIG_MOVABLE_THROW_LANDED, PROC_REF(listen_throw_land)) /// A throw we were listening to has finished, see if it's in range for us to try grabbing it -/datum/pet_command/point_targeting/fetch/proc/listen_throw_land(obj/item/thrown_thing, datum/thrownthing/throwingdatum) +/datum/pet_command/fetch/proc/listen_throw_land(obj/item/thrown_thing, datum/thrownthing/throwingdatum) SIGNAL_HANDLER UnregisterSignal(thrown_thing, COMSIG_MOVABLE_THROW_LANDED) @@ -76,7 +79,7 @@ parent.ai_controller.set_blackboard_key(BB_FETCH_DELIVER_TO, thrower) // Don't try and fetch turfs or anchored objects if someone points at them -/datum/pet_command/point_targeting/fetch/look_for_target(mob/living/pointing_friend, obj/item/pointed_atom) +/datum/pet_command/fetch/look_for_target(mob/living/pointing_friend, obj/item/pointed_atom) if (!istype(pointed_atom)) return FALSE if (pointed_atom.anchored) @@ -89,7 +92,7 @@ parent.ai_controller.set_blackboard_key(BB_FETCH_DELIVER_TO, pointing_friend) // Finally, plan our actions -/datum/pet_command/point_targeting/fetch/execute_action(datum/ai_controller/controller) +/datum/pet_command/fetch/execute_action(datum/ai_controller/controller) controller.queue_behavior(/datum/ai_behavior/forget_failed_fetches) var/atom/target = controller.blackboard[BB_CURRENT_PET_TARGET] diff --git a/code/datums/components/pet_commands/obeys_commands.dm b/code/datums/components/pet_commands/obeys_commands.dm index 8aaa7e7179294..4a68574d6e08c 100644 --- a/code/datums/components/pet_commands/obeys_commands.dm +++ b/code/datums/components/pet_commands/obeys_commands.dm @@ -3,12 +3,23 @@ * Manages a list of pet command datums, allowing you to boss it around * Creates a radial menu of pet commands when this creature is alt-clicked, if it has any */ +#define DEFAULT_RADIAL_VIEWING_DISTANCE 9 /datum/component/obeys_commands /// List of commands you can give to the owner of this component var/list/available_commands = list() + ///Users currently viewing our radial options + var/list/radial_viewers = list() + ///radius of our radial menu + var/radial_menu_radius = 48 + ///after how long we shutdown radial menus + var/radial_menu_lifetime = 7 SECONDS + ///offset to display the radial menu + var/list/radial_menu_offset + ///should the commands move with the pet owner's screen? + var/radial_relative_to_user /// The available_commands parameter should be passed as a list of typepaths -/datum/component/obeys_commands/Initialize(list/command_typepaths = list()) +/datum/component/obeys_commands/Initialize(list/command_typepaths = list(), list/radial_menu_offset = list(0, 0), radial_relative_to_user = FALSE) . = ..() if (!isliving(parent)) return COMPONENT_INCOMPATIBLE @@ -17,7 +28,8 @@ return COMPONENT_INCOMPATIBLE if (!length(command_typepaths)) CRASH("Initialised obedience component with no commands.") - + src.radial_menu_offset = radial_menu_offset + src.radial_relative_to_user = radial_relative_to_user for (var/command_path in command_typepaths) var/datum/pet_command/new_command = new command_path(parent) available_commands[new_command.command_name] = new_command @@ -30,7 +42,6 @@ RegisterSignal(parent, COMSIG_LIVING_BEFRIENDED, PROC_REF(add_friend)) RegisterSignal(parent, COMSIG_LIVING_UNFRIENDED, PROC_REF(remove_friend)) RegisterSignal(parent, COMSIG_ATOM_EXAMINE, PROC_REF(on_examine)) - RegisterSignal(parent, COMSIG_CLICK_ALT, PROC_REF(display_menu)) /datum/component/obeys_commands/UnregisterFromParent() UnregisterSignal(parent, list(COMSIG_LIVING_BEFRIENDED, COMSIG_LIVING_UNFRIENDED, COMSIG_ATOM_EXAMINE, COMSIG_CLICK_ALT)) @@ -38,15 +49,26 @@ /// Add someone to our friends list /datum/component/obeys_commands/proc/add_friend(datum/source, mob/living/new_friend) SIGNAL_HANDLER - + RegisterSignal(new_friend, COMSIG_KB_LIVING_VIEW_PET_COMMANDS, PROC_REF(on_key_pressed)) + RegisterSignal(new_friend, DEACTIVATE_KEYBIND(COMSIG_KB_LIVING_VIEW_PET_COMMANDS), PROC_REF(on_key_unpressed)) for (var/command_name as anything in available_commands) var/datum/pet_command/command = available_commands[command_name] INVOKE_ASYNC(command, TYPE_PROC_REF(/datum/pet_command, add_new_friend), new_friend) +/datum/component/obeys_commands/proc/on_key_unpressed(mob/living/source) + SIGNAL_HANDLER + UnregisterSignal(source, COMSIG_ATOM_MOUSE_ENTERED) + +/datum/component/obeys_commands/proc/remove_from_viewers(mob/living/source) + radial_viewers -= REF(source) + /// Remove someone from our friends list /datum/component/obeys_commands/proc/remove_friend(datum/source, mob/living/old_friend) SIGNAL_HANDLER - + UnregisterSignal(old_friend, list( + COMSIG_KB_LIVING_VIEW_PET_COMMANDS, + DEACTIVATE_KEYBIND(COMSIG_KB_LIVING_VIEW_PET_COMMANDS), + )) for (var/command_name as anything in available_commands) var/datum/pet_command/command = available_commands[command_name] INVOKE_ASYNC(command, TYPE_PROC_REF(/datum/pet_command, remove_friend), old_friend) @@ -61,21 +83,34 @@ return examine_list += span_notice("[source.p_They()] seem[source.p_s()] happy to see you!") -/// Displays a radial menu of commands -/datum/component/obeys_commands/proc/display_menu(datum/source, mob/living/clicker) +/datum/component/obeys_commands/proc/on_key_pressed(mob/living/friend) + SIGNAL_HANDLER + RegisterSignal(friend, COMSIG_ATOM_MOUSE_ENTERED, PROC_REF(on_mouse_hover)) + +/datum/component/obeys_commands/proc/on_mouse_hover(mob/living/friend, atom/mouse_hovered) SIGNAL_HANDLER + if(mouse_hovered == parent) + display_menu(friend) + return + if(isliving(mouse_hovered)) + remove_from_viewers(friend) + +/// Displays a radial menu of commands +/datum/component/obeys_commands/proc/display_menu(mob/living/friend) var/mob/living/living_parent = parent - if (IS_DEAD_OR_INCAP(living_parent) || !clicker.can_perform_action(living_parent)) + if (IS_DEAD_OR_INCAP(living_parent) || friend.stat != CONSCIOUS) return - if (!(clicker in living_parent.ai_controller?.blackboard[BB_FRIENDS_LIST])) + if (!(friend in living_parent.ai_controller?.blackboard[BB_FRIENDS_LIST])) return // Not our friend, can't boss us around - - INVOKE_ASYNC(src, PROC_REF(display_radial_menu), clicker) - return CLICK_ACTION_SUCCESS + if(radial_viewers[REF(friend)]) + return + if(!can_see(friend, parent, DEFAULT_RADIAL_VIEWING_DISTANCE)) + return + INVOKE_ASYNC(src, PROC_REF(display_radial_menu), friend) /// Actually display the radial menu and then do something with the result -/datum/component/obeys_commands/proc/display_radial_menu(mob/living/clicker) +/datum/component/obeys_commands/proc/display_radial_menu(mob/living/friend) var/list/radial_options = list() for (var/command_name as anything in available_commands) var/datum/pet_command/command = available_commands[command_name] @@ -83,9 +118,22 @@ if (!choice) continue radial_options += choice - - var/pick = show_radial_menu(clicker, clicker, radial_options, tooltips = TRUE) - if (!pick) + radial_viewers[REF(friend)] = world.time + radial_menu_lifetime + var/pick = show_radial_menu(friend, parent, radial_options, radius = radial_menu_radius, button_animation_flags = BUTTON_FADE_IN | BUTTON_FADE_OUT, custom_check = CALLBACK(src, PROC_REF(check_menu_viewer), friend), check_delay = 0.15 SECONDS, display_close_button = FALSE, radial_menu_offset = radial_menu_offset, user_space = radial_relative_to_user) + remove_from_viewers(friend) + if(!pick) return var/datum/pet_command/picked_command = available_commands[pick] - picked_command.try_activate_command(clicker) + picked_command.try_activate_command(friend, radial_command = TRUE) + +/datum/component/obeys_commands/proc/check_menu_viewer(mob/living/user) + if(QDELETED(user) || !radial_viewers[REF(user)]) + return FALSE + if(world.time > radial_viewers[REF(user)]) + return FALSE + var/viewing_distance = DEFAULT_RADIAL_VIEWING_DISTANCE + if(!can_see(user, parent, viewing_distance)) + return FALSE + return TRUE + +#undef DEFAULT_RADIAL_VIEWING_DISTANCE diff --git a/code/datums/components/pet_commands/pet_command.dm b/code/datums/components/pet_commands/pet_command.dm index 52b4cc8834920..fab3de70b79f1 100644 --- a/code/datums/components/pet_commands/pet_command.dm +++ b/code/datums/components/pet_commands/pet_command.dm @@ -13,7 +13,7 @@ /// If true, command will not appear in radial menu and can only be accessed through speech var/hidden = FALSE /// Icon to display in radial menu - var/icon/radial_icon + var/icon/radial_icon = 'icons/hud/radial_pets.dmi' /// Icon state to display in radial menu var/radial_icon_state /// Speech strings to listen out for @@ -24,6 +24,12 @@ var/command_feedback /// How close a mob needs to be to a target to respond to a command var/sense_radius = 7 + /// does this pet command need a point to activate? + var/requires_pointing = FALSE + /// Blackboard key for targeting strategy, this is likely going to need it + var/targeting_strategy_key = BB_PET_TARGETING_STRATEGY + ///our pointed reaction we play + var/pointed_reaction /datum/pet_command/New(mob/living/parent) . = ..() @@ -34,10 +40,17 @@ RegisterSignal(tamer, COMSIG_MOB_SAY, PROC_REF(respond_to_command)) RegisterSignal(tamer, COMSIG_MOB_AUTOMUTE_CHECK, PROC_REF(waive_automute)) RegisterSignal(tamer, COMSIG_MOB_CREATED_CALLOUT, PROC_REF(respond_to_callout)) + if(requires_pointing) + RegisterSignal(tamer, COMSIG_MOVABLE_POINTED, PROC_REF(point_on_target)) /// Stop listening to a guy /datum/pet_command/proc/remove_friend(mob/living/unfriended) - UnregisterSignal(unfriended, list(COMSIG_MOB_SAY, COMSIG_MOB_AUTOMUTE_CHECK, COMSIG_MOB_CREATED_CALLOUT)) + UnregisterSignal(unfriended, list( + COMSIG_MOB_SAY, + COMSIG_MOB_AUTOMUTE_CHECK, + COMSIG_MOB_CREATED_CALLOUT, + COMSIG_MOVABLE_POINTED, + )) /// Stop the automute from triggering for commands (unless the spoken text is suspiciously longer than the command) /datum/pet_command/proc/waive_automute(mob/living/speaker, client/client, last_message, mute_type) @@ -49,7 +62,6 @@ /// Respond to something that one of our friends has asked us to do /datum/pet_command/proc/respond_to_command(mob/living/speaker, speech_args) SIGNAL_HANDLER - var/mob/living/parent = weak_parent.resolve() if (!parent) return @@ -60,7 +72,7 @@ if (!find_command_in_text(spoken_text)) return - try_activate_command(speaker) + try_activate_command(commander = speaker, radial_command = FALSE) /// Respond to a callout /datum/pet_command/proc/respond_to_callout(mob/living/caller, datum/callout_option/callout, atom/target) @@ -83,7 +95,7 @@ if (!found_new_target) return - if (try_activate_command(caller)) + if (try_activate_command(commander = caller, radial_command = FALSE)) look_for_target(parent, target) /// Does this callout with this target trigger this command? @@ -103,48 +115,77 @@ return TRUE return FALSE -/// Apply a command state if conditions are right, return command if successful -/datum/pet_command/proc/try_activate_command(mob/living/commander) +/datum/pet_command/proc/pet_able_to_respond() var/mob/living/parent = weak_parent.resolve() - if (!parent) + if(isnull(parent) || isnull(parent.ai_controller)) return FALSE - if (!parent.ai_controller) // We stopped having a brain at some point + if(IS_DEAD_OR_INCAP(parent)) // Probably can't hear them if we're dead return FALSE - if (IS_DEAD_OR_INCAP(parent)) // Probably can't hear them if we're dead - return FALSE - if (parent.ai_controller.blackboard[BB_ACTIVE_PET_COMMAND] == src) // We're already doing it + return TRUE + +/// Apply a command state if conditions are right, return command if successful +/datum/pet_command/proc/try_activate_command(mob/living/commander, radial_command) + if(!pet_able_to_respond()) return FALSE - set_command_active(parent, commander) + var/mob/living/parent = weak_parent.resolve() + set_command_active(parent, commander, radial_command) return TRUE +/datum/pet_command/proc/generate_emote_command(atom/target) + var/mob/living/living_pet = weak_parent?.resolve() + return isnull(living_pet) ? null : retrieve_command_text(living_pet, target) + +/datum/pet_command/proc/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to spring into action!" + /// Target the pointed atom for actions -/datum/pet_command/proc/look_for_target(mob/living/friend, atom/pointed_atom) +/datum/pet_command/proc/look_for_target(mob/living/friend, atom/potential_target) var/mob/living/parent = weak_parent.resolve() - if (!parent) - return FALSE - if (!parent.ai_controller) - return FALSE - if (IS_DEAD_OR_INCAP(parent)) + if(!pet_able_to_respond()) return FALSE - if (parent.ai_controller.blackboard[BB_ACTIVE_PET_COMMAND] != src) // We're not listening right now + if (parent.ai_controller.blackboard[BB_CURRENT_PET_TARGET] == potential_target) // That's already our target return FALSE - if (parent.ai_controller.blackboard[BB_CURRENT_PET_TARGET] == pointed_atom) // That's already our target - return FALSE - if (!can_see(parent, pointed_atom, sense_radius)) + if (!can_see(parent, potential_target, sense_radius)) return FALSE parent.ai_controller.CancelActions() - set_command_target(parent, pointed_atom) + set_command_target(parent, potential_target) return TRUE /// Activate the command, extend to add visible messages and the like -/datum/pet_command/proc/set_command_active(mob/living/parent, mob/living/commander) - set_command_target(parent, null) +/datum/pet_command/proc/set_command_active(mob/living/parent, mob/living/commander, radial_command = FALSE) + parent.ai_controller.clear_blackboard_key(BB_CURRENT_PET_TARGET) parent.ai_controller.CancelActions() // Stop whatever you're doing and do this instead parent.ai_controller.set_blackboard_key(BB_ACTIVE_PET_COMMAND, src) if (command_feedback) parent.balloon_alert_to_viewers("[command_feedback]") // If we get a nicer runechat way to do this, refactor this + if(!radial_command) + return + if(!requires_pointing) + var/manual_emote_text = generate_emote_command() + commander.manual_emote(manual_emote_text) + return + RegisterSignal(commander, COMSIG_MOB_CLICKON, PROC_REF(click_on_target)) + commander.client?.mouse_override_icon = 'icons/effects/mouse_pointers/pet_paw.dmi' + commander.update_mouse_pointer() + +/datum/pet_command/proc/click_on_target(mob/living/source, atom/target, list/modifiers) + SIGNAL_HANDLER + if(!can_see(source, target, 9)) + return COMSIG_MOB_CANCEL_CLICKON + on_target_set(source, target) + UnregisterSignal(source, COMSIG_MOB_CLICKON) + source.client?.mouse_override_icon = source.client::mouse_override_icon + source.update_mouse_pointer() + var/manual_emote_text = generate_emote_command(target) + if(!isnull(manual_emote_text)) + INVOKE_ASYNC(source, TYPE_PROC_REF(/atom, manual_emote), manual_emote_text) + return COMSIG_MOB_CANCEL_CLICKON + +/datum/pet_command/proc/point_on_target(mob/living/friend, atom/potential_target) + SIGNAL_HANDLER + on_target_set(friend, potential_target) /// Store the target for the AI blackboard /datum/pet_command/proc/set_command_target(mob/living/parent, atom/target) @@ -158,11 +199,6 @@ var/datum/radial_menu_choice/choice = new() choice.name = command_name choice.image = icon(icon = radial_icon, icon_state = radial_icon_state) - var/tooltip = command_desc - if (length(speech_commands)) - tooltip += "<br>Speak this command with the words [speech_commands.Join(", ")]." - choice.info = tooltip - return list("[command_name]" = choice) /** @@ -174,34 +210,15 @@ SHOULD_CALL_PARENT(FALSE) CRASH("Pet command execute action not implemented.") -/** - * # Point Targeting Pet Command - * As above but also listens for you pointing at something and marks it as a target - */ -/datum/pet_command/point_targeting - /// Text describing an action we perform upon receiving a new target - var/pointed_reaction - /// Blackboard key for targeting strategy, this is likely going to need it - var/targeting_strategy_key = BB_PET_TARGETING_STRATEGY - -/datum/pet_command/point_targeting/add_new_friend(mob/living/tamer) - . = ..() - RegisterSignal(tamer, COMSIG_MOVABLE_POINTED, PROC_REF(on_point)) - -/datum/pet_command/point_targeting/remove_friend(mob/living/unfriended) - . = ..() - UnregisterSignal(unfriended, COMSIG_MOVABLE_POINTED) - /// Target the pointed atom for actions -/datum/pet_command/point_targeting/proc/on_point(mob/living/friend, atom/pointed_atom, obj/effect/temp_visual/point/point) - SIGNAL_HANDLER - +/datum/pet_command/proc/on_target_set(mob/living/friend, atom/potential_target) var/mob/living/parent = weak_parent.resolve() if (!parent) - return FALSE + return parent.ai_controller.CancelActions() - if (look_for_target(friend, pointed_atom) && set_command_target(parent, pointed_atom)) - parent.visible_message(span_warning("[parent] follows [friend]'s gesture towards [pointed_atom] [pointed_reaction]!")) - return TRUE - return FALSE + if(!look_for_target(friend, potential_target) || !set_command_target(parent, potential_target)) + return + parent.visible_message(span_warning("[parent] follows [friend]'s gesture towards [potential_target] [pointed_reaction]!")) + + diff --git a/code/datums/components/pet_commands/pet_commands_basic.dm b/code/datums/components/pet_commands/pet_commands_basic.dm index fd4e1f922c8b4..06d11d353e8d5 100644 --- a/code/datums/components/pet_commands/pet_commands_basic.dm +++ b/code/datums/components/pet_commands/pet_commands_basic.dm @@ -7,14 +7,16 @@ /datum/pet_command/idle command_name = "Stay" command_desc = "Command your pet to stay idle in this location." - radial_icon = 'icons/obj/bed.dmi' - radial_icon_state = "dogbed" + radial_icon_state = "halt" speech_commands = list("sit", "stay", "stop") command_feedback = "sits" /datum/pet_command/idle/execute_action(datum/ai_controller/controller) return SUBTREE_RETURN_FINISH_PLANNING // This cancels further AI planning +/datum/pet_command/idle/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to stay idle!" + /** * # Pet Command: Stop * Tells a pet to exit command mode and resume its normal behaviour, which includes regular target-seeking and what have you @@ -22,8 +24,7 @@ /datum/pet_command/free command_name = "Loose" command_desc = "Allow your pet to resume its natural behaviours." - radial_icon = 'icons/mob/actions/actions_spells.dmi' - radial_icon_state = "repulse" + radial_icon_state = "free" speech_commands = list("free", "loose") command_feedback = "relaxes" @@ -31,6 +32,9 @@ controller.clear_blackboard_key(BB_ACTIVE_PET_COMMAND) return // Just move on to the next planning subtree. +/datum/pet_command/free/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to go free!" + /** * # Pet Command: Follow * Tells a pet to follow you until you tell it to do something else @@ -38,8 +42,7 @@ /datum/pet_command/follow command_name = "Follow" command_desc = "Command your pet to accompany you." - radial_icon = 'icons/testing/turf_analysis.dmi' - radial_icon_state = "red_arrow" + radial_icon_state = "follow" speech_commands = list("heel", "follow") callout_type = /datum/callout_option/move ///the behavior we use to follow @@ -49,6 +52,9 @@ . = ..() set_command_target(parent, commander) +/datum/pet_command/follow/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to follow!" + /datum/pet_command/follow/execute_action(datum/ai_controller/controller) controller.queue_behavior(follow_behavior, BB_CURRENT_PET_TARGET) return SUBTREE_RETURN_FINISH_PLANNING @@ -60,14 +66,16 @@ /datum/pet_command/play_dead command_name = "Play Dead" command_desc = "Play a macabre trick." - radial_icon = 'icons/mob/simple/pets.dmi' - radial_icon_state = "puppy_dead" + radial_icon_state = "play_dead" speech_commands = list("play dead") // Don't get too creative here, people talk about dying pretty often /datum/pet_command/play_dead/execute_action(datum/ai_controller/controller) controller.queue_behavior(/datum/ai_behavior/play_dead) return SUBTREE_RETURN_FINISH_PLANNING +/datum/pet_command/play_dead/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to play dead!" + /** * # Pet Command: Good Boy * React if complimented @@ -115,16 +123,18 @@ controller.clear_blackboard_key(BB_ACTIVE_PET_COMMAND) return SUBTREE_RETURN_FINISH_PLANNING +/datum/pet_command/untargeted_ability/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to use an ability!" + /** * # Pet Command: Attack * Tells a pet to chase and bite the next thing you point at */ -/datum/pet_command/point_targeting/attack +/datum/pet_command/attack command_name = "Attack" command_desc = "Command your pet to attack things that you point out to it." - radial_icon = 'icons/effects/effects.dmi' - radial_icon_state = "bite" - + radial_icon_state = "attack" + requires_pointing = TRUE callout_type = /datum/callout_option/attack speech_commands = list("attack", "sic", "kill") command_feedback = "growl" @@ -135,7 +145,7 @@ var/attack_behaviour = /datum/ai_behavior/basic_melee_attack // Refuse to target things we can't target, chiefly other friends -/datum/pet_command/point_targeting/attack/set_command_target(mob/living/parent, atom/target) +/datum/pet_command/attack/set_command_target(mob/living/parent, atom/target) if (!target) return var/mob/living/living_parent = parent @@ -149,28 +159,32 @@ return return ..() +/datum/pet_command/attack/retrieve_command_text(atom/living_pet, atom/target) + return isnull(target) ? null : "signals [living_pet] to attack [target]!" + /// Display feedback about not targeting something -/datum/pet_command/point_targeting/attack/proc/refuse_target(mob/living/parent, atom/target) +/datum/pet_command/attack/proc/refuse_target(mob/living/parent, atom/target) var/mob/living/living_parent = parent living_parent.balloon_alert_to_viewers("[refuse_reaction]") living_parent.visible_message(span_notice("[living_parent] refuses to attack [target].")) -/datum/pet_command/point_targeting/attack/execute_action(datum/ai_controller/controller) +/datum/pet_command/attack/execute_action(datum/ai_controller/controller) controller.queue_behavior(attack_behaviour, BB_CURRENT_PET_TARGET, targeting_strategy_key) return SUBTREE_RETURN_FINISH_PLANNING /** * # Breed command. breed with a partner! */ -/datum/pet_command/point_targeting/breed +/datum/pet_command/breed command_name = "Breed" command_desc = "Command your pet to attempt to breed with a partner." - radial_icon = 'icons/mob/simple/animal.dmi' - radial_icon_state = "heart" + requires_pointing = TRUE + radial_icon_state = "breed" speech_commands = list("breed", "consummate") + ///the behavior we use to make babies var/datum/ai_behavior/reproduce_behavior = /datum/ai_behavior/make_babies -/datum/pet_command/point_targeting/breed/set_command_target(mob/living/parent, atom/target) +/datum/pet_command/breed/set_command_target(mob/living/parent, atom/target) if(isnull(target) || !isliving(target)) return if(!HAS_TRAIT(parent, TRAIT_MOB_BREEDER) || !HAS_TRAIT(target, TRAIT_MOB_BREEDER)) @@ -184,21 +198,25 @@ return return ..() -/datum/pet_command/point_targeting/breed/execute_action(datum/ai_controller/controller) +/datum/pet_command/breed/execute_action(datum/ai_controller/controller) if(is_type_in_list(controller.blackboard[BB_CURRENT_PET_TARGET], controller.blackboard[BB_BABIES_PARTNER_TYPES])) controller.queue_behavior(reproduce_behavior, BB_CURRENT_PET_TARGET) controller.clear_blackboard_key(BB_ACTIVE_PET_COMMAND) return SUBTREE_RETURN_FINISH_PLANNING +/datum/pet_command/breed/retrieve_command_text(atom/living_pet, atom/target) + return isnull(target) ? null : "signals [living_pet] to breed with [target]!" + /** * # Pet Command: Targetted Ability * Tells a pet to use some kind of ability on the next thing you point at */ -/datum/pet_command/point_targeting/use_ability +/datum/pet_command/use_ability command_name = "Use ability" command_desc = "Command your pet to use one of its special skills on something that you point out to it." radial_icon = 'icons/mob/actions/actions_spells.dmi' radial_icon_state = "projectile" + requires_pointing = TRUE speech_commands = list("shoot", "blast", "cast") command_feedback = "growl" pointed_reaction = "and growls" @@ -207,7 +225,7 @@ /// The AI behavior to use for the ability var/ability_behavior = /datum/ai_behavior/pet_use_ability -/datum/pet_command/point_targeting/use_ability/execute_action(datum/ai_controller/controller) +/datum/pet_command/use_ability/execute_action(datum/ai_controller/controller) if (!pet_ability_key) return var/datum/action/cooldown/using_action = controller.blackboard[pet_ability_key] @@ -218,6 +236,9 @@ controller.queue_behavior(ability_behavior, pet_ability_key, BB_CURRENT_PET_TARGET) return SUBTREE_RETURN_FINISH_PLANNING +/datum/pet_command/use_ability/retrieve_command_text(atom/living_pet, atom/target) + return isnull(target) ? null : "signals [living_pet] to use an ability on [target]!" + /datum/pet_command/protect_owner command_name = "Protect owner" command_desc = "Your pet will run to your aid." @@ -278,25 +299,39 @@ /** * # Fish command: command the mob to fish at the next fishing spot you point at. Requires the profound fisher component */ -/datum/pet_command/point_targeting/fish +/datum/pet_command/fish command_name = "Fish" command_desc = "Command your pet to try fishing at a nearby fishing spot." - radial_icon = 'icons/obj/aquarium/fish.dmi' - radial_icon_state = "goldfish" + requires_pointing = TRUE + radial_icon_state = "fish" speech_commands = list("fish") -// Refuse to target things we can't target, chiefly other friends -/datum/pet_command/point_targeting/fish/set_command_target(mob/living/parent, atom/target) - if (!target) - return - if(!parent.ai_controller || !HAS_TRAIT(parent, TRAIT_PROFOUND_FISHER)) - return - var/datum/targeting_strategy/targeter = GET_TARGETING_STRATEGY(/datum/targeting_strategy/fishing) - if (!targeter?.can_attack(parent, target)) - parent.balloon_alert_to_viewers("shakes head!") - return +/datum/pet_command/fish/execute_action(datum/ai_controller/controller) + if(controller.blackboard_key_exists(BB_CURRENT_PET_TARGET)) + controller.queue_behavior(/datum/ai_behavior/interact_with_target/fishing, BB_CURRENT_PET_TARGET) + return SUBTREE_RETURN_FINISH_PLANNING + +/datum/pet_command/fish/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to go fish!" + +/datum/pet_command/move + command_name = "Move" + command_desc = "Command your pet to move to a location!" + requires_pointing = TRUE + radial_icon_state = "move" + speech_commands = list("move", "walk") + ///the behavior we use to walk towards targets + var/datum/ai_behavior/walk_behavior = /datum/ai_behavior/travel_towards + +/datum/pet_command/move/set_command_target(mob/living/parent, atom/target) + if(isnull(target) || !can_see(parent, target, 9)) + return FALSE return ..() -/datum/pet_command/point_targeting/fish/execute_action(datum/ai_controller/controller) - controller.queue_behavior(/datum/ai_behavior/hunt_target/interact_with_target/reset_target_combat_mode_off, BB_CURRENT_PET_TARGET) +/datum/pet_command/move/execute_action(datum/ai_controller/controller) + if(controller.blackboard_key_exists(BB_CURRENT_PET_TARGET)) + controller.queue_behavior(walk_behavior, BB_CURRENT_PET_TARGET) return SUBTREE_RETURN_FINISH_PLANNING + +/datum/pet_command/move/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to move!" diff --git a/code/datums/elements/pet_cult.dm b/code/datums/elements/pet_cult.dm index 36941e7b74299..f26e6e343e666 100644 --- a/code/datums/elements/pet_cult.dm +++ b/code/datums/elements/pet_cult.dm @@ -90,7 +90,8 @@ source.ai_controller.set_blackboard_key(BB_CULT_TEAM, team) var/static/list/new_pet_commands = list( - /datum/pet_command/point_targeting/attack, + /datum/pet_command/move, + /datum/pet_command/attack, /datum/pet_command/follow, /datum/pet_command/free, /datum/pet_command/idle, diff --git a/code/datums/keybinding/_keybindings.dm b/code/datums/keybinding/_keybindings.dm index dfcf492c1809f..a989d0d22a881 100644 --- a/code/datums/keybinding/_keybindings.dm +++ b/code/datums/keybinding/_keybindings.dm @@ -21,6 +21,8 @@ return SEND_SIGNAL(user.mob, keybind_signal) & COMSIG_KB_ACTIVATED /datum/keybinding/proc/up(client/user) + SHOULD_CALL_PARENT(TRUE) + SEND_SIGNAL(user.mob, DEACTIVATE_KEYBIND(keybind_signal)) return FALSE /datum/keybinding/proc/can_use(client/user) diff --git a/code/datums/keybinding/living.dm b/code/datums/keybinding/living.dm index 7e50e6928f9dd..61716ee6fe95a 100644 --- a/code/datums/keybinding/living.dm +++ b/code/datums/keybinding/living.dm @@ -46,6 +46,7 @@ return TRUE /datum/keybinding/living/look_up/up(client/user) + . = ..() var/mob/living/L = user.mob L.end_look_up() return TRUE @@ -66,6 +67,7 @@ return TRUE /datum/keybinding/living/look_down/up(client/user) + . = ..() var/mob/living/L = user.mob L.end_look_down() return TRUE @@ -144,6 +146,7 @@ return TRUE /datum/keybinding/living/toggle_move_intent/up(client/user) + . = ..() var/mob/living/M = user.mob M.toggle_move_intent() return TRUE diff --git a/code/datums/keybinding/mob.dm b/code/datums/keybinding/mob.dm index 4963e87266cbe..a1bd06742b555 100644 --- a/code/datums/keybinding/mob.dm +++ b/code/datums/keybinding/mob.dm @@ -191,3 +191,10 @@ if(.) return user.movement_locked = FALSE + +/datum/keybinding/living/view_pet_data + hotkey_keys = list("Shift") + name = "view_pet_commands" + full_name = "View Pet Commands" + description = "Hold down to see all the commands you can give your pets!" + keybind_signal = COMSIG_KB_LIVING_VIEW_PET_COMMANDS diff --git a/code/game/atom/_atom.dm b/code/game/atom/_atom.dm index 9afda5b0ddea5..c8c3111889eac 100644 --- a/code/game/atom/_atom.dm +++ b/code/game/atom/_atom.dm @@ -864,6 +864,8 @@ if (isnull(user)) return + SEND_SIGNAL(user, COMSIG_ATOM_MOUSE_ENTERED, src) + // Screentips var/datum/hud/active_hud = user.hud_used if(!active_hud) diff --git a/code/modules/antagonists/heretic/knowledge/cosmic_lore.dm b/code/modules/antagonists/heretic/knowledge/cosmic_lore.dm index d545e258a302e..d3e1765a0b92c 100644 --- a/code/modules/antagonists/heretic/knowledge/cosmic_lore.dm +++ b/code/modules/antagonists/heretic/knowledge/cosmic_lore.dm @@ -226,7 +226,7 @@ /datum/pet_command/idle, /datum/pet_command/free, /datum/pet_command/follow, - /datum/pet_command/point_targeting/attack/star_gazer + /datum/pet_command/attack/star_gazer ) /datum/heretic_knowledge/ultimate/cosmic_final/is_valid_sacrifice(mob/living/carbon/human/sacrifice) @@ -242,7 +242,7 @@ star_gazer_mob.maxHealth = INFINITY star_gazer_mob.health = INFINITY user.AddComponent(/datum/component/death_linked, star_gazer_mob) - star_gazer_mob.AddComponent(/datum/component/obeys_commands, star_gazer_commands) + star_gazer_mob.AddComponent(/datum/component/obeys_commands, star_gazer_commands, radial_menu_lifetime = 15 SECONDS, radial_relative_to_user = TRUE) star_gazer_mob.AddComponent(/datum/component/damage_aura, range = 7, burn_damage = 0.5, simple_damage = 0.5, immune_factions = list(FACTION_HERETIC), current_owner = user) star_gazer_mob.befriend(user) var/datum/action/cooldown/open_mob_commands/commands_action = new /datum/action/cooldown/open_mob_commands() diff --git a/code/modules/mob/living/basic/bots/cleanbot/cleanbot.dm b/code/modules/mob/living/basic/bots/cleanbot/cleanbot.dm index 68cd6a231e326..14de9f04068d2 100644 --- a/code/modules/mob/living/basic/bots/cleanbot/cleanbot.dm +++ b/code/modules/mob/living/basic/bots/cleanbot/cleanbot.dm @@ -127,7 +127,7 @@ var/static/list/pet_commands = list( /datum/pet_command/idle, /datum/pet_command/free, - /datum/pet_command/point_targeting/clean, + /datum/pet_command/clean, ) /mob/living/basic/bot/cleanbot/Initialize(mapload) diff --git a/code/modules/mob/living/basic/bots/cleanbot/cleanbot_ai.dm b/code/modules/mob/living/basic/bots/cleanbot/cleanbot_ai.dm index 1b6d840062208..0a6a4b03b4354 100644 --- a/code/modules/mob/living/basic/bots/cleanbot/cleanbot_ai.dm +++ b/code/modules/mob/living/basic/bots/cleanbot/cleanbot_ai.dm @@ -200,14 +200,15 @@ return return ..() -/datum/pet_command/point_targeting/clean +/datum/pet_command/clean command_name = "Clean" command_desc = "Command a cleanbot to clean the mess." + requires_pointing = TRUE radial_icon = 'icons/obj/service/janitor.dmi' radial_icon_state = "mop" speech_commands = list("clean", "mop") -/datum/pet_command/point_targeting/clean/set_command_target(mob/living/parent, atom/target) +/datum/pet_command/clean/set_command_target(mob/living/parent, atom/target) if(isnull(target) || !istype(target, /obj/effect/decal/cleanable)) return if(isnull(parent.ai_controller)) @@ -216,7 +217,7 @@ return return ..() -/datum/pet_command/point_targeting/clean/execute_action(datum/ai_controller/basic_controller/bot/controller) +/datum/pet_command/clean/execute_action(datum/ai_controller/basic_controller/bot/controller) if(controller.blackboard_key_exists(BB_CURRENT_PET_TARGET)) controller.queue_behavior(/datum/ai_behavior/execute_clean, BB_CURRENT_PET_TARGET) return SUBTREE_RETURN_FINISH_PLANNING diff --git a/code/modules/mob/living/basic/farm_animals/bee/_bee.dm b/code/modules/mob/living/basic/farm_animals/bee/_bee.dm index e9dd79fd5ef06..09bf3a5819592 100644 --- a/code/modules/mob/living/basic/farm_animals/bee/_bee.dm +++ b/code/modules/mob/living/basic/farm_animals/bee/_bee.dm @@ -57,7 +57,7 @@ /datum/pet_command/beehive/enter, /datum/pet_command/beehive/exit, /datum/pet_command/follow/bee, - /datum/pet_command/point_targeting/attack/swirl, + /datum/pet_command/attack/swirl, /datum/pet_command/scatter, ) diff --git a/code/modules/mob/living/basic/farm_animals/bee/bee_ai_behavior.dm b/code/modules/mob/living/basic/farm_animals/bee/bee_ai_behavior.dm index 1081c9b7b63b8..8472098662466 100644 --- a/code/modules/mob/living/basic/farm_animals/bee/bee_ai_behavior.dm +++ b/code/modules/mob/living/basic/farm_animals/bee/bee_ai_behavior.dm @@ -113,8 +113,9 @@ required_distance = 0 ///swirl around the owner in menacing fashion -/datum/pet_command/point_targeting/attack/swirl +/datum/pet_command/attack/swirl command_name = "Swirl" + requires_pointing = TRUE command_desc = "Your pets will swirl around you and attack whoever you point at!" speech_commands = list("swirl", "spiral", "swarm") pointed_reaction = null @@ -123,7 +124,7 @@ ///the owner we will swarm around var/key_to_swarm = BB_SWARM_TARGET -/datum/pet_command/point_targeting/attack/swirl/try_activate_command(mob/living/commander) +/datum/pet_command/attack/swirl/try_activate_command(mob/living/commander, radial_command) var/mob/living/living_pawn = weak_parent.resolve() if(isnull(living_pawn)) return @@ -134,7 +135,7 @@ controller.set_blackboard_key(key_to_swarm, commander) return ..() -/datum/pet_command/point_targeting/attack/swirl/execute_action(datum/ai_controller/controller) +/datum/pet_command/attack/swirl/execute_action(datum/ai_controller/controller) if(controller.blackboard_key_exists(BB_CURRENT_PET_TARGET)) return ..() controller.queue_behavior(/datum/ai_behavior/swirl_around_target, BB_SWARM_TARGET) @@ -186,7 +187,7 @@ radial_icon = 'icons/obj/service/hydroponics/equipment.dmi' radial_icon_state = "beebox" -/datum/pet_command/beehive/try_activate_command(mob/living/commander) +/datum/pet_command/beehive/try_activate_command(mob/living/commander, radial_command) var/mob/living/living_pawn = weak_parent.resolve() if(isnull(living_pawn)) return diff --git a/code/modules/mob/living/basic/heretic/star_gazer.dm b/code/modules/mob/living/basic/heretic/star_gazer.dm index 57a0ddfe322d8..7ffd7bc657ef6 100644 --- a/code/modules/mob/living/basic/heretic/star_gazer.dm +++ b/code/modules/mob/living/basic/heretic/star_gazer.dm @@ -103,7 +103,7 @@ can_attack_turfs = TRUE can_attack_dense_objects = TRUE -/datum/pet_command/point_targeting/attack/star_gazer +/datum/pet_command/attack/star_gazer speech_commands = list("attack", "sic", "kill", "slash them") command_feedback = "stares!" pointed_reaction = "stares intensely!" diff --git a/code/modules/mob/living/basic/icemoon/wolf/wolf.dm b/code/modules/mob/living/basic/icemoon/wolf/wolf.dm index b82092147f67d..6056b1919090b 100644 --- a/code/modules/mob/living/basic/icemoon/wolf/wolf.dm +++ b/code/modules/mob/living/basic/icemoon/wolf/wolf.dm @@ -43,11 +43,12 @@ //commands to give when tamed var/static/list/pet_commands = list( /datum/pet_command/idle, + /datum/pet_command/move, /datum/pet_command/free, /datum/pet_command/good_boy/wolf, /datum/pet_command/follow/wolf, - /datum/pet_command/point_targeting/attack, - /datum/pet_command/point_targeting/fetch, + /datum/pet_command/attack, + /datum/pet_command/fetch, /datum/pet_command/play_dead, /datum/pet_command/protect_owner, ) diff --git a/code/modules/mob/living/basic/jungle/leaper/leaper.dm b/code/modules/mob/living/basic/jungle/leaper/leaper.dm index 94babd0218e5b..d4f310d07aba1 100644 --- a/code/modules/mob/living/basic/jungle/leaper/leaper.dm +++ b/code/modules/mob/living/basic/jungle/leaper/leaper.dm @@ -40,13 +40,14 @@ ///list of pet commands we can issue var/list/pet_commands = list( /datum/pet_command/idle, + /datum/pet_command/move, /datum/pet_command/free, /datum/pet_command/follow, /datum/pet_command/untargeted_ability/blood_rain, /datum/pet_command/untargeted_ability/summon_toad, - /datum/pet_command/point_targeting/attack, - /datum/pet_command/point_targeting/use_ability/flop, - /datum/pet_command/point_targeting/use_ability/bubble, + /datum/pet_command/attack, + /datum/pet_command/use_ability/flop, + /datum/pet_command/use_ability/bubble, ) /mob/living/basic/leaper/Initialize(mapload) diff --git a/code/modules/mob/living/basic/jungle/leaper/leaper_ai.dm b/code/modules/mob/living/basic/jungle/leaper/leaper_ai.dm index e776117a3a596..b5c917bf2a46e 100644 --- a/code/modules/mob/living/basic/jungle/leaper/leaper_ai.dm +++ b/code/modules/mob/living/basic/jungle/leaper/leaper_ai.dm @@ -39,7 +39,7 @@ ability_key = BB_LEAPER_SUMMON finish_planning = FALSE -/datum/pet_command/point_targeting/use_ability/flop +/datum/pet_command/use_ability/flop command_name = "Flop" command_desc = "Command your pet to belly flop your target!" radial_icon = 'icons/mob/actions/actions_items.dmi' @@ -47,7 +47,7 @@ speech_commands = list("flop", "crush") pet_ability_key = BB_LEAPER_FLOP -/datum/pet_command/point_targeting/use_ability/bubble +/datum/pet_command/use_ability/bubble command_name = "Poison Bubble" command_desc = "Launch poisonous bubbles at your target!" radial_icon = 'icons/obj/weapons/guns/projectiles.dmi' @@ -55,6 +55,9 @@ speech_commands = list("bubble", "shoot") pet_ability_key = BB_LEAPER_BUBBLE +/datum/pet_command/use_ability/bubble/retrieve_command_text(atom/living_pet, atom/target) + return isnull(target) ? null : "signals [living_pet] to shoot a bubble towards [target]!" + /datum/pet_command/untargeted_ability/blood_rain command_name = "Blood Rain" command_desc = "Let it rain poisonous blood!" @@ -63,6 +66,8 @@ speech_commands = list("blood", "rain", "volley") ability_key = BB_LEAPER_VOLLEY +/datum/pet_command/untargeted_ability/blood_rain/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to unleash a volley of rain!" /datum/pet_command/untargeted_ability/summon_toad command_name = "Summon Toads" @@ -71,3 +76,6 @@ radial_icon_state = "frog_trash" speech_commands = list("frogs", "bombers") ability_key = BB_LEAPER_SUMMON + +/datum/pet_command/untargeted_ability/summon_toad/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to summon some explosive frogs!" diff --git a/code/modules/mob/living/basic/jungle/seedling/seedling.dm b/code/modules/mob/living/basic/jungle/seedling/seedling.dm index 0df19c5c27d31..9778aff8753df 100644 --- a/code/modules/mob/living/basic/jungle/seedling/seedling.dm +++ b/code/modules/mob/living/basic/jungle/seedling/seedling.dm @@ -214,9 +214,9 @@ /datum/pet_command/idle, /datum/pet_command/free, /datum/pet_command/follow, - /datum/pet_command/point_targeting/attack, - /datum/pet_command/point_targeting/use_ability/solarbeam, - /datum/pet_command/point_targeting/use_ability/rapidseeds, + /datum/pet_command/attack, + /datum/pet_command/use_ability/solarbeam, + /datum/pet_command/use_ability/rapidseeds, ) //abilities diff --git a/code/modules/mob/living/basic/jungle/seedling/seedling_ai.dm b/code/modules/mob/living/basic/jungle/seedling/seedling_ai.dm index ee93a9c12366f..ae4e7b75c92b0 100644 --- a/code/modules/mob/living/basic/jungle/seedling/seedling_ai.dm +++ b/code/modules/mob/living/basic/jungle/seedling/seedling_ai.dm @@ -166,7 +166,7 @@ finish_planning = FALSE ///pet commands -/datum/pet_command/point_targeting/use_ability/solarbeam +/datum/pet_command/use_ability/solarbeam command_name = "Launch solarbeam" command_desc = "Command your pet to launch a solarbeam at your target!" radial_icon = 'icons/effects/beam.dmi' @@ -174,10 +174,17 @@ speech_commands = list("beam", "solar") pet_ability_key = BB_SOLARBEAM_ABILITY -/datum/pet_command/point_targeting/use_ability/rapidseeds +/datum/pet_command/use_ability/solarbeam/retrieve_command_text(atom/living_pet, atom/target) + return isnull(target) ? null : "signals [living_pet] to use a solar beam on [target]!" + + +/datum/pet_command/use_ability/rapidseeds command_name = "Rapid seeds" command_desc = "Command your pet to launch a volley of seeds at your target!" radial_icon = 'icons/obj/weapons/guns/projectiles.dmi' radial_icon_state = "seedling" speech_commands = list("rapid", "seeds", "volley") pet_ability_key = BB_RAPIDSEEDS_ABILITY + +/datum/pet_command/use_ability/rapidseeds/retrieve_command_text(atom/living_pet, atom/target) + return isnull(target) ? null : "signals [living_pet] to unleash a volley of seeds on [target]!" diff --git a/code/modules/mob/living/basic/lavaland/goldgrub/goldgrub.dm b/code/modules/mob/living/basic/lavaland/goldgrub/goldgrub.dm index 5a1166962be55..ce1c4e7cf1982 100644 --- a/code/modules/mob/living/basic/lavaland/goldgrub/goldgrub.dm +++ b/code/modules/mob/living/basic/lavaland/goldgrub/goldgrub.dm @@ -36,7 +36,7 @@ /datum/pet_command/free, /datum/pet_command/grub_spit, /datum/pet_command/follow, - /datum/pet_command/point_targeting/fetch, + /datum/pet_command/fetch, ) /mob/living/basic/mining/goldgrub/Initialize(mapload) diff --git a/code/modules/mob/living/basic/lavaland/goldgrub/goldgrub_ai.dm b/code/modules/mob/living/basic/lavaland/goldgrub/goldgrub_ai.dm index 8ea2467a2a813..3d5d73a7343d1 100644 --- a/code/modules/mob/living/basic/lavaland/goldgrub/goldgrub_ai.dm +++ b/code/modules/mob/living/basic/lavaland/goldgrub/goldgrub_ai.dm @@ -211,6 +211,8 @@ /datum/pet_command/grub_spit command_name = "Spit" + radial_icon = 'icons/obj/ore.dmi' + radial_icon_state = "uranium" command_desc = "Ask your grub pet to spit out its ores." speech_commands = list("spit", "ores") @@ -222,4 +224,7 @@ controller.clear_blackboard_key(BB_ACTIVE_PET_COMMAND) return SUBTREE_RETURN_FINISH_PLANNING +/datum/pet_command/grub_spit/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to spit its ores!" + #undef BURROW_RANGE diff --git a/code/modules/mob/living/basic/lavaland/gutlunchers/gutlunchers.dm b/code/modules/mob/living/basic/lavaland/gutlunchers/gutlunchers.dm index 5bfbbb1051a7f..347e9a95b61ce 100644 --- a/code/modules/mob/living/basic/lavaland/gutlunchers/gutlunchers.dm +++ b/code/modules/mob/living/basic/lavaland/gutlunchers/gutlunchers.dm @@ -61,7 +61,7 @@ if(isnull(ore_food)) balloon_alert(src, "no food!") else - melee_attack(ore_food) + UnarmedAttack(ore_food, TRUE, modifiers) return FALSE /mob/living/basic/mining/gutlunch/proc/after_birth(mob/living/basic/mining/gutlunch/grub/baby, mob/living/partner) @@ -111,11 +111,12 @@ //pet commands when we tame the gutluncher var/static/list/pet_commands = list( /datum/pet_command/idle, + /datum/pet_command/move, /datum/pet_command/free, - /datum/pet_command/point_targeting/attack, - /datum/pet_command/point_targeting/breed/gutlunch, + /datum/pet_command/attack, + /datum/pet_command/breed/gutlunch, /datum/pet_command/follow, - /datum/pet_command/point_targeting/fetch, + /datum/pet_command/fetch, /datum/pet_command/mine_walls, ) diff --git a/code/modules/mob/living/basic/lavaland/gutlunchers/gutlunchers_ai.dm b/code/modules/mob/living/basic/lavaland/gutlunchers/gutlunchers_ai.dm index 261f6d22a021b..4b329a0003aa8 100644 --- a/code/modules/mob/living/basic/lavaland/gutlunchers/gutlunchers_ai.dm +++ b/code/modules/mob/living/basic/lavaland/gutlunchers/gutlunchers_ai.dm @@ -102,10 +102,11 @@ /datum/pet_command/mine_walls command_name = "Mine" + radial_icon_state = "mine" command_desc = "Command your pet to mine down walls." speech_commands = list("mine", "smash") -/datum/pet_command/mine_walls/try_activate_command(mob/living/commander) +/datum/pet_command/mine_walls/try_activate_command(mob/living/commander, radial_command) var/mob/living/parent = weak_parent.resolve() if(isnull(parent)) return @@ -121,10 +122,13 @@ return SUBTREE_RETURN_FINISH_PLANNING controller.queue_behavior(/datum/ai_behavior/find_mineral_wall, BB_CURRENT_PET_TARGET) +/datum/pet_command/mine_walls/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to start mining!" + //pet commands -/datum/pet_command/point_targeting/breed/gutlunch +/datum/pet_command/breed/gutlunch -/datum/pet_command/point_targeting/breed/gutlunch/set_command_target(mob/living/parent, atom/target) +/datum/pet_command/breed/gutlunch/set_command_target(mob/living/parent, atom/target) if(GLOB.gutlunch_count >= MAXIMUM_GUTLUNCH_POP) parent.balloon_alert_to_viewers("can't reproduce anymore!") return diff --git a/code/modules/mob/living/basic/lavaland/lobstrosity/lobstrosity.dm b/code/modules/mob/living/basic/lavaland/lobstrosity/lobstrosity.dm index 0b8babf82ec30..7e7d3e71819bf 100644 --- a/code/modules/mob/living/basic/lavaland/lobstrosity/lobstrosity.dm +++ b/code/modules/mob/living/basic/lavaland/lobstrosity/lobstrosity.dm @@ -32,7 +32,7 @@ /// The type of charging ability we give this mob var/charge_type = /datum/action/cooldown/mob_cooldown/charge/basic_charge/lobster /// The pet command for the charging ability we give this mob - var/charge_command = /datum/pet_command/point_targeting/use_ability/lob_charge + var/charge_command = /datum/pet_command/use_ability/lob_charge /// At which speed do we amputate limbs var/snip_speed = 5 SECONDS ///Lobstrosities are natural anglers. This rapresent their proficiency at fishing when not mindless @@ -72,10 +72,11 @@ var/list/pet_commands = list( /datum/pet_command/idle, /datum/pet_command/free, - /datum/pet_command/point_targeting/attack, + /datum/pet_command/move, + /datum/pet_command/attack, charge_command, /datum/pet_command/follow, - /datum/pet_command/point_targeting/fish, + /datum/pet_command/fish, ) AddComponent(/datum/component/happiness) AddComponent(/datum/component/obeys_commands, pet_commands) @@ -153,7 +154,7 @@ ai_controller = /datum/ai_controller/basic_controller/lobstrosity/juvenile snip_speed = 6.5 SECONDS charge_type = /datum/action/cooldown/mob_cooldown/charge/basic_charge/lobster/shrimp - charge_command = /datum/pet_command/point_targeting/use_ability/lob_charge/shrimp + charge_command = /datum/pet_command/use_ability/lob_charge/shrimp base_fishing_level = SKILL_LEVEL_NOVICE /// What do we become when we grow up? var/mob/living/basic/mining/lobstrosity/grow_type = /mob/living/basic/mining/lobstrosity @@ -254,7 +255,7 @@ charger.apply_status_effect(/datum/status_effect/tired_post_charge/lesser) ///Command the lobster to charge at someone. -/datum/pet_command/point_targeting/use_ability/lob_charge +/datum/pet_command/use_ability/lob_charge command_name = "Charge" command_desc = "Command your lobstrosity to charge against someone." radial_icon = 'icons/mob/actions/actions_items.dmi' @@ -265,7 +266,7 @@ pet_ability_key = BB_TARGETED_ACTION ability_behavior = /datum/ai_behavior/pet_use_ability/then_attack/long_ranged -/datum/pet_command/point_targeting/use_ability/lob_charge/set_command_target(mob/living/parent, atom/target) +/datum/pet_command/use_ability/lob_charge/set_command_target(mob/living/parent, atom/target) if (!target) return var/datum/targeting_strategy/targeter = GET_TARGETING_STRATEGY(parent.ai_controller.blackboard[targeting_strategy_key]) @@ -274,5 +275,5 @@ return FALSE return ..() -/datum/pet_command/point_targeting/use_ability/lob_charge/shrimp +/datum/pet_command/use_ability/lob_charge/shrimp ability_behavior = /datum/ai_behavior/pet_use_ability/then_attack/short_ranged diff --git a/code/modules/mob/living/basic/lavaland/mook/mook.dm b/code/modules/mob/living/basic/lavaland/mook/mook.dm index f492c83e74bac..539aa47cb287d 100644 --- a/code/modules/mob/living/basic/lavaland/mook/mook.dm +++ b/code/modules/mob/living/basic/lavaland/mook/mook.dm @@ -41,8 +41,8 @@ var/list/pet_commands = list( /datum/pet_command/idle, /datum/pet_command/free, - /datum/pet_command/point_targeting/attack, - /datum/pet_command/point_targeting/fetch, + /datum/pet_command/attack, + /datum/pet_command/fetch, ) /mob/living/basic/mining/mook/Initialize(mapload) diff --git a/code/modules/mob/living/basic/lavaland/mook/mook_ai.dm b/code/modules/mob/living/basic/lavaland/mook/mook_ai.dm index 15da812a0b237..2f374e2dda4b2 100644 --- a/code/modules/mob/living/basic/lavaland/mook/mook_ai.dm +++ b/code/modules/mob/living/basic/lavaland/mook/mook_ai.dm @@ -1,7 +1,7 @@ ///commands the chief can pick from GLOBAL_LIST_INIT(mook_commands, list( - new /datum/pet_command/point_targeting/attack, - new /datum/pet_command/point_targeting/fetch, + new /datum/pet_command/attack, + new /datum/pet_command/fetch, )) /datum/ai_controller/basic_controller/mook @@ -346,7 +346,7 @@ GLOBAL_LIST_INIT(mook_commands, list( if(!locate(/mob/living/basic/mining/mook) in oview(command_distance, controller.pawn)) return if(controller.blackboard_key_exists(BB_BASIC_MOB_CURRENT_TARGET)) - controller.queue_behavior(/datum/ai_behavior/issue_commands, BB_BASIC_MOB_CURRENT_TARGET, /datum/pet_command/point_targeting/attack) + controller.queue_behavior(/datum/ai_behavior/issue_commands, BB_BASIC_MOB_CURRENT_TARGET, /datum/pet_command/attack) return var/atom/ore_target = controller.blackboard[BB_ORE_TARGET] @@ -356,7 +356,7 @@ GLOBAL_LIST_INIT(mook_commands, list( if(get_dist(ore_target, living_pawn) <= 1) return - controller.queue_behavior(/datum/ai_behavior/issue_commands, BB_ORE_TARGET, /datum/pet_command/point_targeting/fetch) + controller.queue_behavior(/datum/ai_behavior/issue_commands, BB_ORE_TARGET, /datum/pet_command/fetch) /datum/ai_behavior/issue_commands action_cooldown = 5 SECONDS diff --git a/code/modules/mob/living/basic/lavaland/raptor/_raptor.dm b/code/modules/mob/living/basic/lavaland/raptor/_raptor.dm index 8bf54b7165b28..3909a392195a8 100644 --- a/code/modules/mob/living/basic/lavaland/raptor/_raptor.dm +++ b/code/modules/mob/living/basic/lavaland/raptor/_raptor.dm @@ -47,11 +47,13 @@ GLOBAL_LIST_EMPTY(raptor_population) var/ridable_component = /datum/component/riding/creature/raptor //pet commands when we tame the raptor var/static/list/pet_commands = list( + /datum/pet_command/breed, /datum/pet_command/idle, + /datum/pet_command/move, /datum/pet_command/free, - /datum/pet_command/point_targeting/attack, + /datum/pet_command/attack, /datum/pet_command/follow, - /datum/pet_command/point_targeting/fetch, + /datum/pet_command/fetch, ) ///things we inherited from our parent var/datum/raptor_inheritance/inherited_stats @@ -158,7 +160,7 @@ GLOBAL_LIST_EMPTY(raptor_population) if(isnull(ore_food)) balloon_alert(src, "no food!") else - melee_attack(ore_food) + UnarmedAttack(ore_food, TRUE, modifiers) return FALSE /mob/living/basic/raptor/melee_attack(mob/living/target, list/modifiers, ignore_cooldown) diff --git a/code/modules/mob/living/basic/minebots/minebot.dm b/code/modules/mob/living/basic/minebots/minebot.dm index c9edfb0471f27..b14d1469ccd1f 100644 --- a/code/modules/mob/living/basic/minebots/minebot.dm +++ b/code/modules/mob/living/basic/minebots/minebot.dm @@ -42,13 +42,14 @@ ///the commands our owner can give us var/static/list/pet_commands = list( /datum/pet_command/idle/minebot, + /datum/pet_command/move, /datum/pet_command/protect_owner/minebot, /datum/pet_command/minebot_ability/light, /datum/pet_command/minebot_ability/dump, /datum/pet_command/automate_mining, /datum/pet_command/free/minebot, /datum/pet_command/follow, - /datum/pet_command/point_targeting/attack/minebot, + /datum/pet_command/attack/minebot, ) ///possible colors the bot can have var/static/list/possible_colors= list( diff --git a/code/modules/mob/living/basic/minebots/minebot_ai.dm b/code/modules/mob/living/basic/minebots/minebot_ai.dm index 8043fda65d0a6..51a4e43f66ab5 100644 --- a/code/modules/mob/living/basic/minebots/minebot_ai.dm +++ b/code/modules/mob/living/basic/minebots/minebot_ai.dm @@ -281,14 +281,16 @@ /datum/pet_command/automate_mining command_name = "Automate mining" command_desc = "Make your minebot automatically mine!" - radial_icon = 'icons/obj/mining.dmi' - radial_icon_state = "pickaxe" + radial_icon_state = "mine" speech_commands = list("mine") callout_type = /datum/callout_option/mine /datum/pet_command/automate_mining/valid_callout_target(mob/living/caller, datum/callout_option/callout, atom/target) return ismineralturf(target) +/datum/pet_command/automate_mining/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to start mining!" + /datum/pet_command/automate_mining/execute_action(datum/ai_controller/controller) controller.set_blackboard_key(BB_AUTOMATED_MINING, TRUE) controller.clear_blackboard_key(BB_ACTIVE_PET_COMMAND) @@ -315,6 +317,9 @@ radial_icon_state = "mech_lights_off" ability_key = BB_MINEBOT_LIGHT_ABILITY +/datum/pet_command/minebot_ability/light/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to toggle its lights!" + /datum/pet_command/minebot_ability/dump command_name = "Dump ore" command_desc = "Make your minebot dump all its ore!" @@ -322,10 +327,13 @@ radial_icon_state = "mech_eject" ability_key = BB_MINEBOT_DUMP_ABILITY -/datum/pet_command/point_targeting/attack/minebot +/datum/pet_command/minebot_ability/light/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to dump its ore!" + +/datum/pet_command/attack/minebot attack_behaviour = /datum/ai_behavior/basic_ranged_attack/minebot -/datum/pet_command/point_targeting/attack/minebot/execute_action(datum/ai_controller/controller) +/datum/pet_command/attack/minebot/execute_action(datum/ai_controller/controller) controller.set_blackboard_key(BB_AUTOMATED_MINING, FALSE) var/mob/living/living_pawn = controller.pawn if(!living_pawn.combat_mode) diff --git a/code/modules/mob/living/basic/pets/dog/_dog.dm b/code/modules/mob/living/basic/pets/dog/_dog.dm index fd8920d2ca0e3..8fb053eef094c 100644 --- a/code/modules/mob/living/basic/pets/dog/_dog.dm +++ b/code/modules/mob/living/basic/pets/dog/_dog.dm @@ -7,10 +7,10 @@ speech_commands = list("good dog") // Set correct attack behaviour -/datum/pet_command/point_targeting/attack/dog +/datum/pet_command/attack/dog attack_behaviour = /datum/ai_behavior/basic_melee_attack/dog -/datum/pet_command/point_targeting/attack/dog/set_command_active(mob/living/parent, mob/living/commander) +/datum/pet_command/attack/dog/set_command_active(mob/living/parent, mob/living/commander) . = ..() parent.ai_controller.set_blackboard_key(BB_DOG_HARASS_HARM, TRUE) @@ -38,11 +38,12 @@ var/static/list/pet_commands = list( /datum/pet_command/idle, /datum/pet_command/free, + /datum/pet_command/move, /datum/pet_command/good_boy/dog, /datum/pet_command/follow/dog, /datum/pet_command/perform_trick_sequence, - /datum/pet_command/point_targeting/attack/dog, - /datum/pet_command/point_targeting/fetch, + /datum/pet_command/attack/dog, + /datum/pet_command/fetch, /datum/pet_command/play_dead, ) ///icon state of the collar we can wear diff --git a/code/modules/mob/living/basic/pets/fox.dm b/code/modules/mob/living/basic/pets/fox.dm index 737f7b21391fd..fab5e79a3134b 100644 --- a/code/modules/mob/living/basic/pets/fox.dm +++ b/code/modules/mob/living/basic/pets/fox.dm @@ -31,9 +31,10 @@ ///list of our pet commands we follow var/static/list/pet_commands = list( /datum/pet_command/idle, + /datum/pet_command/move, /datum/pet_command/free, /datum/pet_command/follow, - /datum/pet_command/point_targeting/attack, + /datum/pet_command/attack, /datum/pet_command/perform_trick_sequence, ) diff --git a/code/modules/mob/living/basic/pets/orbie/orbie.dm b/code/modules/mob/living/basic/pets/orbie/orbie.dm index b4099a8c6344c..202bc84d37eb1 100644 --- a/code/modules/mob/living/basic/pets/orbie/orbie.dm +++ b/code/modules/mob/living/basic/pets/orbie/orbie.dm @@ -39,8 +39,9 @@ var/static/list/pet_commands = list( /datum/pet_command/idle, /datum/pet_command/free, + /datum/pet_command/move, /datum/pet_command/untargeted_ability/pet_lights, - /datum/pet_command/point_targeting/use_ability/take_photo, + /datum/pet_command/use_ability/take_photo, /datum/pet_command/follow/orbie, /datum/pet_command/perform_trick_sequence, ) diff --git a/code/modules/mob/living/basic/pets/orbie/orbie_ai.dm b/code/modules/mob/living/basic/pets/orbie/orbie_ai.dm index a978b750d5036..aef780533795f 100644 --- a/code/modules/mob/living/basic/pets/orbie/orbie_ai.dm +++ b/code/modules/mob/living/basic/pets/orbie/orbie_ai.dm @@ -123,17 +123,24 @@ return SUBTREE_RETURN_FINISH_PLANNING return ..() -/datum/pet_command/point_targeting/use_ability/take_photo +/datum/pet_command/use_ability/pet_lights/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to toggle its lights!" + +/datum/pet_command/use_ability/take_photo command_name = "Photo" command_desc = "Make your pet take a photo!" - radial_icon = 'icons/mob/simple/pets.dmi' - radial_icon_state = "orbie_lights_action" + radial_icon = 'icons/obj/art/camera.dmi' + radial_icon_state = "camera" speech_commands = list("photo", "picture", "image") command_feedback = "Readys camera mode" pet_ability_key = BB_PHOTO_ABILITY targeting_strategy_key = BB_TARGETING_STRATEGY -/datum/pet_command/point_targeting/use_ability/take_photo/execute_action(datum/ai_controller/controller) +/datum/pet_command/use_ability/take_photo/retrieve_command_text(atom/living_pet, atom/target) + return isnull(target) ? null : "signals [living_pet] to take a photo of [target]!" + + +/datum/pet_command/use_ability/take_photo/execute_action(datum/ai_controller/controller) if(controller.blackboard[BB_VIRTUAL_PET_LEVEL] < 3) controller.clear_blackboard_key(BB_ACTIVE_PET_COMMAND) return SUBTREE_RETURN_FINISH_PLANNING @@ -152,6 +159,9 @@ return FALSE return findtext(spoken_text, text_command) +/datum/pet_command/perform_trick_sequence/light/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to dance!" + /datum/pet_command/perform_trick_sequence/execute_action(datum/ai_controller/controller) var/mob/living/living_pawn = controller.pawn var/list/trick_sequence = controller.blackboard[BB_TRICK_SEQUENCE] diff --git a/code/modules/mob/living/basic/pets/pet_cult/pet_cult_ai.dm b/code/modules/mob/living/basic/pets/pet_cult/pet_cult_ai.dm index 77263b1748963..41b928aa75103 100644 --- a/code/modules/mob/living/basic/pets/pet_cult/pet_cult_ai.dm +++ b/code/modules/mob/living/basic/pets/pet_cult/pet_cult_ai.dm @@ -236,3 +236,6 @@ radial_icon_state = "1" speech_commands = list("rune", "revival") ability_key = BB_RUNE_ABILITY + +/datum/pet_command/untargeted_ability/draw_rune/retrieve_command_text(atom/living_pet, atom/target) + return "signals [living_pet] to draw a rune!" diff --git a/code/modules/mob/living/basic/slime/ai/pet_command.dm b/code/modules/mob/living/basic/slime/ai/pet_command.dm index 211d7aa552cd8..4b50b2b32b9e8 100644 --- a/code/modules/mob/living/basic/slime/ai/pet_command.dm +++ b/code/modules/mob/living/basic/slime/ai/pet_command.dm @@ -1,4 +1,4 @@ -/datum/pet_command/point_targeting/attack/slime +/datum/pet_command/attack/slime speech_commands = list("attack", "sic", "kill", "eat", "feed") command_feedback = "blorbles" pointed_reaction = "and blorbles" @@ -6,7 +6,7 @@ var/hunting_behavior = /datum/ai_behavior/hunt_target/interact_with_target/slime -/datum/pet_command/point_targeting/attack/slime/execute_action(datum/ai_controller/controller) +/datum/pet_command/attack/slime/execute_action(datum/ai_controller/controller) var/mob/living/basic/slime/slime_pawn = controller.pawn if(isslime(slime_pawn) && slime_pawn.can_feed_on(controller.blackboard[BB_CURRENT_PET_TARGET], check_friendship = TRUE)) diff --git a/code/modules/mob/living/basic/slime/slime.dm b/code/modules/mob/living/basic/slime/slime.dm index 010913f44258b..8623f69b0e4cd 100644 --- a/code/modules/mob/living/basic/slime/slime.dm +++ b/code/modules/mob/living/basic/slime/slime.dm @@ -97,7 +97,7 @@ /datum/pet_command/idle, /datum/pet_command/free, /datum/pet_command/follow, - /datum/pet_command/point_targeting/attack/slime, + /datum/pet_command/attack/slime, ) /// Our evolve action diff --git a/code/modules/mob/living/basic/space_fauna/carp/carp.dm b/code/modules/mob/living/basic/space_fauna/carp/carp.dm index 6f843857578a6..0e0ba3b39a1ae 100644 --- a/code/modules/mob/living/basic/space_fauna/carp/carp.dm +++ b/code/modules/mob/living/basic/space_fauna/carp/carp.dm @@ -59,7 +59,7 @@ /datum/pet_command/idle, /datum/pet_command/free, /datum/pet_command/follow, - /datum/pet_command/point_targeting/attack + /datum/pet_command/attack ) /// Carp want to eat raw meat var/static/list/desired_food = list(/obj/item/food/meat/slab, /obj/item/food/meat/rawcutlet) diff --git a/code/modules/mob/living/basic/space_fauna/carp/carp_ai_actions.dm b/code/modules/mob/living/basic/space_fauna/carp/carp_ai_actions.dm index 810c45603862b..26894850b1989 100644 --- a/code/modules/mob/living/basic/space_fauna/carp/carp_ai_actions.dm +++ b/code/modules/mob/living/basic/space_fauna/carp/carp_ai_actions.dm @@ -1,6 +1,6 @@ #define MAGICARP_SPELL_TARGET_SEEK_RANGE 4 -/datum/pet_command/point_targeting/use_ability/magicarp +/datum/pet_command/use_ability/magicarp pet_ability_key = BB_MAGICARP_SPELL /datum/ai_planning_subtree/attack_obstacle_in_path/carp diff --git a/code/modules/mob/living/basic/space_fauna/carp/magicarp.dm b/code/modules/mob/living/basic/space_fauna/carp/magicarp.dm index 65d16cfb490dd..3b6d1e5e922fd 100644 --- a/code/modules/mob/living/basic/space_fauna/carp/magicarp.dm +++ b/code/modules/mob/living/basic/space_fauna/carp/magicarp.dm @@ -56,8 +56,8 @@ GLOBAL_LIST_INIT(magicarp_spell_colours, list( /datum/pet_command/idle, /datum/pet_command/free, /datum/pet_command/follow, - /datum/pet_command/point_targeting/attack, - /datum/pet_command/point_targeting/use_ability/magicarp, + /datum/pet_command/attack, + /datum/pet_command/use_ability/magicarp, ) /// List of all projectiles we can fire. /// Non-static, because subtypes can have their own lists. diff --git a/code/modules/mob/living/basic/space_fauna/regal_rat/regal_rat_actions.dm b/code/modules/mob/living/basic/space_fauna/regal_rat/regal_rat_actions.dm index f7997e589695d..74f6c76b459e7 100644 --- a/code/modules/mob/living/basic/space_fauna/regal_rat/regal_rat_actions.dm +++ b/code/modules/mob/living/basic/space_fauna/regal_rat/regal_rat_actions.dm @@ -65,7 +65,7 @@ /datum/pet_command/free, /datum/pet_command/protect_owner, /datum/pet_command/follow, - /datum/pet_command/point_targeting/attack/mouse + /datum/pet_command/attack/mouse ) /// Commands you can give to glockroaches var/static/list/glockroach_commands = list( @@ -73,7 +73,7 @@ /datum/pet_command/free, /datum/pet_command/protect_owner/glockroach, /datum/pet_command/follow, - /datum/pet_command/point_targeting/attack/glockroach + /datum/pet_command/attack/glockroach ) /datum/action/cooldown/mob_cooldown/riot/IsAvailable(feedback = FALSE) @@ -211,7 +211,7 @@ return TRUE // Command you can give to a mouse to make it kill someone -/datum/pet_command/point_targeting/attack/mouse +/datum/pet_command/attack/mouse speech_commands = list("attack", "sic", "kill", "cheese em") command_feedback = "squeak!" // Frogs and roaches can squeak too it's fine pointed_reaction = "and squeaks aggressively" @@ -219,7 +219,7 @@ attack_behaviour = /datum/ai_behavior/basic_melee_attack // Command you can give to a mouse to make it kill someone -/datum/pet_command/point_targeting/attack/glockroach +/datum/pet_command/attack/glockroach speech_commands = list("attack", "sic", "kill", "cheese em") command_feedback = "squeak!" pointed_reaction = "and cocks its gun" diff --git a/icons/effects/mouse_pointers/pet_paw.dmi b/icons/effects/mouse_pointers/pet_paw.dmi new file mode 100644 index 0000000000000000000000000000000000000000..a4443a6896721c22686c526c79991c7388b32792 GIT binary patch literal 372 zcmV-)0gL{LP)<h;3K|Lk000e1NJLTq002M$002M)0{{R3SVwH_0000IP)t-sz`(!& z00960|E{m**Vprmhr}~O?5_X-00DGTPE!Ct=GbNc003utR9JLGWpiV4X>fFDZ*Bkp zc$`yKaB_9`^iy#0_2eo`Eh^5;&r`5fFwryM;w;ZhDainG%uKjAGg33tGfE(w;*!LY zR3K9+F(*ffi!&v&s2IpI<l;;#O3Y1#u$2{D{anC?0s#308BRQVeANH|0G&xhK~zYI z?a)yQ!ypU>U~_|-tp{lE0wOzr#0&V)`(I@--J?<19ty)B1A<@M-#WLla${g?>jwaM zcsvGT1^_8~8B@#vcnnd;5CV7vTEi<wPrx_?pN6GmqbF!XBFe2s7jSIn6te8P-_YkJ zT>ICU0tZh$52;!|>H<6fMZ(DjkED57z`>rX-^~{^a0)nWAUEA~z6UESe~~wQkQ)MU S(jk-p0000<MNUMnLSTZCXOhVP literal 0 HcmV?d00001 diff --git a/icons/hud/radial_pets.dmi b/icons/hud/radial_pets.dmi new file mode 100644 index 0000000000000000000000000000000000000000..a9ce7a1d0062cd788bc059e385df5312c1dc8451 GIT binary patch literal 3317 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 literal 0 HcmV?d00001 diff --git a/tgstation.dme b/tgstation.dme index 345b15060c4f7..bec1ca1f5a46d 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -187,6 +187,7 @@ #include "code\__DEFINES\pronouns.dm" #include "code\__DEFINES\qdel.dm" #include "code\__DEFINES\quirks.dm" +#include "code\__DEFINES\radial_defines.dm" #include "code\__DEFINES\radiation.dm" #include "code\__DEFINES\radio.dm" #include "code\__DEFINES\radioactive_nebula.dm" From 0bee351680a8b74ec8d03200ce7471c89ec19405 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 02:05:56 +0000 Subject: [PATCH 070/126] Automatic changelog for PR #88495 [ci skip] --- html/changelogs/AutoChangeLog-pr-88495.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88495.yml diff --git a/html/changelogs/AutoChangeLog-pr-88495.yml b/html/changelogs/AutoChangeLog-pr-88495.yml new file mode 100644 index 0000000000000..05df567f9fb27 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88495.yml @@ -0,0 +1,5 @@ +author: "Ben10Omintrix" +delete-after: True +changes: + - qol: "holding shift and hovering over your pet will display a list of commands you can click from" + - bugfix: "fixes the fishing pet command not working" \ No newline at end of file From 6014464c8d7b0275fb86045bb50e60f30bfe234b Mon Sep 17 00:00:00 2001 From: grungussuss <96586172+Sadboysuss@users.noreply.github.com> Date: Sun, 22 Dec 2024 07:42:33 +0300 Subject: [PATCH 071/126] Removes an extra proc override in digitigrade pref logic (#88525) ## About The Pull Request they're doing the same thing and this one does a bitfield check when the value it's checking is a number, technically it works as intended right now but if we ever added more - it would break. ## Changelog :cl: grungussuss code: removed an extra proc override in digitigrade legs preference logic code /:cl: --- .../client/preferences/species_features/lizard.dm | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/code/modules/client/preferences/species_features/lizard.dm b/code/modules/client/preferences/species_features/lizard.dm index fbf27521365a3..3487edb78fdd4 100644 --- a/code/modules/client/preferences/species_features/lizard.dm +++ b/code/modules/client/preferences/species_features/lizard.dm @@ -128,17 +128,6 @@ var/datum/species/species_type = preferences.read_preference(/datum/preference/choiced/species) return initial(species_type.digitigrade_customization) == DIGITIGRADE_OPTIONAL - -/datum/preference/choiced/lizard_legs/is_accessible(datum/preferences/preferences) - . = ..() - - if(!.) - return - - var/datum/species/species_type = preferences.read_preference(/datum/preference/choiced/species) - - return initial(species_type.digitigrade_customization) & DIGITIGRADE_OPTIONAL - /datum/preference/choiced/lizard_snout savefile_key = "feature_lizard_snout" savefile_identifier = PREFERENCE_CHARACTER From c7dee65c75e5628887965e0587c19aeb1b693f6c Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 04:42:52 +0000 Subject: [PATCH 072/126] Automatic changelog for PR #88525 [ci skip] --- html/changelogs/AutoChangeLog-pr-88525.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88525.yml diff --git a/html/changelogs/AutoChangeLog-pr-88525.yml b/html/changelogs/AutoChangeLog-pr-88525.yml new file mode 100644 index 0000000000000..7946ba940d96f --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88525.yml @@ -0,0 +1,4 @@ +author: "grungussuss" +delete-after: True +changes: + - code_imp: "removed an extra proc override in digitigrade legs preference logic code" \ No newline at end of file From 78aad8fe29f57566b195e71c03ea3153a72ded24 Mon Sep 17 00:00:00 2001 From: grungussuss <96586172+Sadboysuss@users.noreply.github.com> Date: Sun, 22 Dec 2024 07:44:11 +0300 Subject: [PATCH 073/126] Obliterates the survivors of sound/voice from orbit (#88429) ## About The Pull Request merge skew from a pr before the sound file reorganization ## Changelog no player facing changes --- .../living/basic/bots/repairbot/repairbot.dm | 18 +++++++++--------- .../non-humanoids}/repairbot/brick.ogg | Bin .../non-humanoids}/repairbot/cantanymore.ogg | Bin .../non-humanoids}/repairbot/entropy.ogg | Bin .../non-humanoids}/repairbot/fixit.ogg | Bin .../non-humanoids}/repairbot/fixtouch.ogg | Bin .../repairbot/passionproject.ogg | Bin .../repairbot/patchingholes.ogg | Bin .../non-humanoids}/repairbot/pay.ogg | Bin .../non-humanoids}/repairbot/strings.ogg | Bin 10 files changed, 9 insertions(+), 9 deletions(-) rename sound/{voice => mobs/non-humanoids}/repairbot/brick.ogg (100%) rename sound/{voice => mobs/non-humanoids}/repairbot/cantanymore.ogg (100%) rename sound/{voice => mobs/non-humanoids}/repairbot/entropy.ogg (100%) rename sound/{voice => mobs/non-humanoids}/repairbot/fixit.ogg (100%) rename sound/{voice => mobs/non-humanoids}/repairbot/fixtouch.ogg (100%) rename sound/{voice => mobs/non-humanoids}/repairbot/passionproject.ogg (100%) rename sound/{voice => mobs/non-humanoids}/repairbot/patchingholes.ogg (100%) rename sound/{voice => mobs/non-humanoids}/repairbot/pay.ogg (100%) rename sound/{voice => mobs/non-humanoids}/repairbot/strings.ogg (100%) diff --git a/code/modules/mob/living/basic/bots/repairbot/repairbot.dm b/code/modules/mob/living/basic/bots/repairbot/repairbot.dm index 17b257d8c987b..775e22101bc17 100644 --- a/code/modules/mob/living/basic/bots/repairbot/repairbot.dm +++ b/code/modules/mob/living/basic/bots/repairbot/repairbot.dm @@ -49,18 +49,18 @@ ) ///our neutral voicelines var/static/list/neutral_voicelines = list( - REPAIRBOT_VOICED_BRICK = 'sound/voice/repairbot/brick.ogg', - REPAIRBOT_VOICED_ENTROPY = 'sound/voice/repairbot/entropy.ogg', - REPAIRBOT_VOICED_FIX_IT = 'sound/voice/repairbot/fixit.ogg', - REPAIRBOT_VOICED_FIX_TOUCH = 'sound/voice/repairbot/fixtouch.ogg', - REPAIRBOT_VOICED_HOLE = 'sound/voice/repairbot/patchingholes.ogg', - REPAIRBOT_VOICED_PAY = 'sound/voice/repairbot/pay.ogg', + REPAIRBOT_VOICED_BRICK = 'sound/mobs/non-humanoids/repairbot/brick.ogg', + REPAIRBOT_VOICED_ENTROPY = 'sound/mobs/non-humanoids/repairbot/entropy.ogg', + REPAIRBOT_VOICED_FIX_IT = 'sound/mobs/non-humanoids/repairbot/fixit.ogg', + REPAIRBOT_VOICED_FIX_TOUCH = 'sound/mobs/non-humanoids/repairbot/fixtouch.ogg', + REPAIRBOT_VOICED_HOLE = 'sound/mobs/non-humanoids/repairbot/patchingholes.ogg', + REPAIRBOT_VOICED_PAY = 'sound/mobs/non-humanoids/repairbot/pay.ogg', ) ///our emagged voicelines var/static/list/emagged_voicelines = list( - REPAIRBOT_VOICED_ENTROPY = 'sound/voice/repairbot/entropy.ogg', - REPAIRBOT_VOICED_STRINGS = 'sound/voice/repairbot/strings.ogg', - REPAIRBOT_VOICED_PASSION = 'sound/voice/repairbot/passionproject.ogg', + REPAIRBOT_VOICED_ENTROPY = 'sound/mobs/non-humanoids/repairbot/entropy.ogg', + REPAIRBOT_VOICED_STRINGS = 'sound/mobs/non-humanoids/repairbot/strings.ogg', + REPAIRBOT_VOICED_PASSION = 'sound/mobs/non-humanoids/repairbot/passionproject.ogg', ) ///types we can retrieve from our ui var/static/list/retrievable_types = list( diff --git a/sound/voice/repairbot/brick.ogg b/sound/mobs/non-humanoids/repairbot/brick.ogg similarity index 100% rename from sound/voice/repairbot/brick.ogg rename to sound/mobs/non-humanoids/repairbot/brick.ogg diff --git a/sound/voice/repairbot/cantanymore.ogg b/sound/mobs/non-humanoids/repairbot/cantanymore.ogg similarity index 100% rename from sound/voice/repairbot/cantanymore.ogg rename to sound/mobs/non-humanoids/repairbot/cantanymore.ogg diff --git a/sound/voice/repairbot/entropy.ogg b/sound/mobs/non-humanoids/repairbot/entropy.ogg similarity index 100% rename from sound/voice/repairbot/entropy.ogg rename to sound/mobs/non-humanoids/repairbot/entropy.ogg diff --git a/sound/voice/repairbot/fixit.ogg b/sound/mobs/non-humanoids/repairbot/fixit.ogg similarity index 100% rename from sound/voice/repairbot/fixit.ogg rename to sound/mobs/non-humanoids/repairbot/fixit.ogg diff --git a/sound/voice/repairbot/fixtouch.ogg b/sound/mobs/non-humanoids/repairbot/fixtouch.ogg similarity index 100% rename from sound/voice/repairbot/fixtouch.ogg rename to sound/mobs/non-humanoids/repairbot/fixtouch.ogg diff --git a/sound/voice/repairbot/passionproject.ogg b/sound/mobs/non-humanoids/repairbot/passionproject.ogg similarity index 100% rename from sound/voice/repairbot/passionproject.ogg rename to sound/mobs/non-humanoids/repairbot/passionproject.ogg diff --git a/sound/voice/repairbot/patchingholes.ogg b/sound/mobs/non-humanoids/repairbot/patchingholes.ogg similarity index 100% rename from sound/voice/repairbot/patchingholes.ogg rename to sound/mobs/non-humanoids/repairbot/patchingholes.ogg diff --git a/sound/voice/repairbot/pay.ogg b/sound/mobs/non-humanoids/repairbot/pay.ogg similarity index 100% rename from sound/voice/repairbot/pay.ogg rename to sound/mobs/non-humanoids/repairbot/pay.ogg diff --git a/sound/voice/repairbot/strings.ogg b/sound/mobs/non-humanoids/repairbot/strings.ogg similarity index 100% rename from sound/voice/repairbot/strings.ogg rename to sound/mobs/non-humanoids/repairbot/strings.ogg From 2603a4f3eeac6abb5e7457c1e07e1f3f256c9e3f Mon Sep 17 00:00:00 2001 From: Roxy <75404941+TealSeer@users.noreply.github.com> Date: Sat, 21 Dec 2024 23:46:09 -0500 Subject: [PATCH 074/126] Add reboot countdown to stat panel (#88438) ## About The Pull Request Rewrite ticker `Reboot` proc slightly to use a timer and callback for the delay before the reboot, tracks this timer in the stat panel for players to see. Also adds a verb to cancel a pending reboot independent of the delay round end verb. ## Why It's Good For The Game It's nice to be able to see exactly how much time is left until the server restarts, and it's even nicer to see that the round end has been delayed when the "admin has delayed round end" message gets buried in a fast moving chat. ## Changelog :cl: qol: The time until the server reboots is now visible in the status tab. admin: Added a cancel reboot verb to the server tab. /:cl: --- code/controllers/subsystem/statpanel.dm | 9 +++++++++ code/controllers/subsystem/ticker.dm | 25 +++++++++++++++++++++---- code/modules/admin/verbs/server.dm | 8 ++++++++ 3 files changed, 38 insertions(+), 4 deletions(-) diff --git a/code/controllers/subsystem/statpanel.dm b/code/controllers/subsystem/statpanel.dm index 382ff90cdc844..be89e7fa6271a 100644 --- a/code/controllers/subsystem/statpanel.dm +++ b/code/controllers/subsystem/statpanel.dm @@ -37,6 +37,15 @@ SUBSYSTEM_DEF(statpanels) var/ETA = SSshuttle.emergency.getModeStr() if(ETA) global_data += "[ETA] [SSshuttle.emergency.getTimerStr()]" + + if(SSticker.reboot_timer) + var/reboot_time = timeleft(SSticker.reboot_timer) + if(reboot_time) + global_data += "Reboot: [DisplayTimeText(reboot_time, 1)]" + // admin must have delayed round end + else if(SSticker.ready_for_reboot) + global_data += "Reboot: DELAYED" + src.currentrun = GLOB.clients.Copy() mc_data = null diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index bb18a45b72d9a..03e7b6dcbd885 100644 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -67,6 +67,9 @@ SUBSYSTEM_DEF(ticker) /// Why an emergency shuttle was called var/emergency_reason + /// ID of round reboot timer, if it exists + var/reboot_timer = null + /datum/controller/subsystem/ticker/Initialize() var/list/byond_sound_formats = list( "mid" = TRUE, @@ -698,11 +701,10 @@ SUBSYSTEM_DEF(ticker) var/start_wait = world.time UNTIL(round_end_sound_sent || (world.time - start_wait) > (delay * 2)) //don't wait forever - sleep(delay - (world.time - start_wait)) + reboot_timer = addtimer(CALLBACK(src, PROC_REF(reboot_callback), reason, end_string), delay - (world.time - start_wait), TIMER_STOPPABLE) - if(delay_end && !skip_delay) - to_chat(world, span_boldannounce("Reboot was cancelled by an admin.")) - return + +/datum/controller/subsystem/ticker/proc/reboot_callback(reason, end_string) if(end_string) end_state = end_string @@ -710,6 +712,21 @@ SUBSYSTEM_DEF(ticker) world.Reboot() +/** + * Deletes the current reboot timer and nulls the var + * + * Arguments: + * * user - the user that cancelled the reboot, may be null + */ +/datum/controller/subsystem/ticker/proc/cancel_reboot(mob/user) + if(!reboot_timer) + to_chat(user, span_warning("There is no pending reboot!")) + return FALSE + to_chat(world, span_boldannounce("An admin has delayed the round end.")) + deltimer(reboot_timer) + reboot_timer = null + return TRUE + /datum/controller/subsystem/ticker/Shutdown() gather_newscaster() //called here so we ensure the log is created even upon admin reboot if(!round_end_sound) diff --git a/code/modules/admin/verbs/server.dm b/code/modules/admin/verbs/server.dm index 5ac9fd272b45c..133d36c3dd0f0 100644 --- a/code/modules/admin/verbs/server.dm +++ b/code/modules/admin/verbs/server.dm @@ -66,6 +66,12 @@ ADMIN_VERB(restart, R_SERVER, "Reboot World", "Restarts the world immediately.", #undef HARDEST_RESTART #undef TGS_RESTART +ADMIN_VERB(cancel_reboot, R_SERVER, "Cancel Reboot", "Cancels a pending world reboot.", ADMIN_CATEGORY_SERVER) + if(!SSticker.cancel_reboot(user)) + return + log_admin("[key_name(user)] cancelled the pending world reboot.") + message_admins("[key_name_admin(user)] cancelled the pending world reboot.") + ADMIN_VERB(end_round, R_SERVER, "End Round", "Forcibly ends the round and allows the server to restart normally.", ADMIN_CATEGORY_SERVER) var/confirm = tgui_alert(user, "End the round and restart the game world?", "End Round", list("Yes", "Cancel")) if(confirm != "Yes") @@ -131,6 +137,8 @@ ADMIN_VERB(delay_round_end, R_SERVER, "Delay Round End", "Prevent the server fro SSticker.delay_end = TRUE SSticker.admin_delay_notice = delay_reason + if(SSticker.reboot_timer) + SSticker.cancel_reboot(user) log_admin("[key_name(user)] delayed the round end for reason: [SSticker.admin_delay_notice]") message_admins("[key_name_admin(user)] delayed the round end for reason: [SSticker.admin_delay_notice]") From 0c2ef51b146affd639db68e71b3576cf83ff3f0f Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 04:46:28 +0000 Subject: [PATCH 075/126] Automatic changelog for PR #88438 [ci skip] --- html/changelogs/AutoChangeLog-pr-88438.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88438.yml diff --git a/html/changelogs/AutoChangeLog-pr-88438.yml b/html/changelogs/AutoChangeLog-pr-88438.yml new file mode 100644 index 0000000000000..f76306a4b90a5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88438.yml @@ -0,0 +1,5 @@ +author: "TealSeer" +delete-after: True +changes: + - qol: "The time until the server reboots is now visible in the status tab." + - admin: "Added a cancel reboot verb to the server tab." \ No newline at end of file From c0b7ec5fbd731aff38bbce41ce26d5bc05b51f62 Mon Sep 17 00:00:00 2001 From: Rhials <28870487+Rhials@users.noreply.github.com> Date: Sun, 22 Dec 2024 13:16:43 -0500 Subject: [PATCH 076/126] Nuclear Operatives can buy a vintage pinpointer from the Badassery shop section (#88621) --- code/modules/uplink/uplink_items/badass.dm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/code/modules/uplink/uplink_items/badass.dm b/code/modules/uplink/uplink_items/badass.dm index 5c5e0390b5046..9a346da2d5351 100644 --- a/code/modules/uplink/uplink_items/badass.dm +++ b/code/modules/uplink/uplink_items/badass.dm @@ -106,3 +106,9 @@ Contains enough special solution to spray a single super-size seditious symbol, subjecting station staff to slippery suffering." item = /obj/item/traitor_spraycan cost = 1 + +/datum/uplink_item/badass/pinpointer + name = "Surplus Pinpointer" + desc = "Provides a surplus pinpointer, left over from the previous models that were abandoned in favor of a SAAS cloud-based PDA app." + item = /obj/item/pinpointer/nuke/syndicate + cost = 2 From 2ca491e194b59426337db60641020680ae8a37b6 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Sun, 22 Dec 2024 18:17:01 +0000 Subject: [PATCH 077/126] Automatic changelog for PR #88621 [ci skip] --- html/changelogs/AutoChangeLog-pr-88621.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88621.yml diff --git a/html/changelogs/AutoChangeLog-pr-88621.yml b/html/changelogs/AutoChangeLog-pr-88621.yml new file mode 100644 index 0000000000000..c326d59dfc745 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88621.yml @@ -0,0 +1,4 @@ +author: "Rhials" +delete-after: True +changes: + - rscadd: "Nukie uplinks now offer an OG-style nuke pinpointer in their Badassery shop section." \ No newline at end of file From 7d9386bdcecc30615727818725e458e708fac800 Mon Sep 17 00:00:00 2001 From: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com> Date: Mon, 23 Dec 2024 01:35:45 +0200 Subject: [PATCH 078/126] Turtles (#87493) ## About The Pull Request adds turtles to the game! but these aren't your typical turtles.  these are flora-turtles, with giant trees growing on their shells. These trees can emit fields which affects nearby hydroponic plants. Initially, the trees start out as young buds, from there the tree can evolve into different types depending on what you feed the turtle. Feeding them pesticides causes the tree to blossom to be purple. this tree's fields will help kill some pests and weeds in nearby plants. Feeding them nutrients gives you the green tree, the fields will heal nearby plants Feeding them mutators like uranium or left 4 zed gives you the yellow tree. the fields increase instability of plants The turtle will emit these fields every once in a while, ONLY when its feeling happy. therefore you'll have to pet it, clean it and feed it every once in a while to keep it satisfied. You can view the turtle's happiness by shift clicking it. https://github.com/user-attachments/assets/a47136a1-06a1-419e-acc2-2f6f4468e296 The turtle only eats seeds. after eating a seed, itll process it and spit out its corresponding fruit! (for example, feeding it an apple seed gives you an apple). itll also sometimes playfully headbutt your legs and it loves going around smelling the scent from nearby plants you can get these turtles by fishing the hydroponics tray or by ordering them through cargo. ## Why It's Good For The Game adds a new fun way for botanists to take care of their plants. While these turtles alone arent enough to fully replace plant dedicated nutrients, they add small extra support. ## Changelog :cl: add: adds flora-turtles. obtainable through cargo or by fishing from the hydroponics tray /:cl: --- code/__DEFINES/ai/ai_blackboard.dm | 8 + code/__DEFINES/ai/monsters.dm | 8 + .../basic_subtrees/express_happiness.dm | 6 +- code/datums/elements/basic_eating.dm | 6 +- code/modules/cargo/packs/livestock.dm | 7 + code/modules/fishing/sources/_fish_source.dm | 5 +- code/modules/fishing/sources/source_types.dm | 1 + code/modules/hydroponics/hydroponics.dm | 2 +- .../modules/mob/living/basic/turtle/turtle.dm | 240 ++++++++++++++++++ .../mob/living/basic/turtle/turtle_ability.dm | 140 ++++++++++ .../mob/living/basic/turtle/turtle_ai.dm | 92 +++++++ icons/mob/simple/pets.dmi | Bin 87208 -> 91503 bytes icons/mob/simple/turtle_trees.dmi | Bin 0 -> 1263 bytes tgstation.dme | 3 + 14 files changed, 511 insertions(+), 7 deletions(-) create mode 100644 code/modules/mob/living/basic/turtle/turtle.dm create mode 100644 code/modules/mob/living/basic/turtle/turtle_ability.dm create mode 100644 code/modules/mob/living/basic/turtle/turtle_ai.dm create mode 100644 icons/mob/simple/turtle_trees.dmi diff --git a/code/__DEFINES/ai/ai_blackboard.dm b/code/__DEFINES/ai/ai_blackboard.dm index b5a7ad1ddfaac..f7f77a7169ea2 100644 --- a/code/__DEFINES/ai/ai_blackboard.dm +++ b/code/__DEFINES/ai/ai_blackboard.dm @@ -195,6 +195,14 @@ #define BB_DRILLABLE_ICE "BB_drillable_ice" +//emotions we displays depending on our happiness +///emotions we display when happy +#define BB_HAPPY_EMOTIONS "happy_emotions" +///emotions we display when neutral +#define BB_MODERATE_EMOTIONS "moderate_emotions" +///emotions we display when depressed +#define BB_SAD_EMOTIONS "sad_emotions" + // Keys used by one and only one behavior // Used to hold state without making bigass lists /// For /datum/ai_behavior/find_potential_targets, what if any field are we using currently diff --git a/code/__DEFINES/ai/monsters.dm b/code/__DEFINES/ai/monsters.dm index 330e2d48eb226..d77817a203980 100644 --- a/code/__DEFINES/ai/monsters.dm +++ b/code/__DEFINES/ai/monsters.dm @@ -304,3 +304,11 @@ #define BB_DEER_RESTING "deer_resting" ///time till our next rest duration #define BB_DEER_NEXT_REST_TIMER "deer_next_rest_timer" + +//turtle +///our tree's ability +#define BB_TURTLE_TREE_ABILITY "turtle_tree_ability" +///people we headbutt! +#define BB_TURTLE_HEADBUTT_VICTIM "turtle_headbutt_victim" +///flore we must smell +#define BB_TURTLE_FLORA_TARGET "turtle_flora_target" diff --git a/code/datums/ai/basic_mobs/basic_subtrees/express_happiness.dm b/code/datums/ai/basic_mobs/basic_subtrees/express_happiness.dm index 6cae6132d3688..4d7a3e7ad3064 100644 --- a/code/datums/ai/basic_mobs/basic_subtrees/express_happiness.dm +++ b/code/datums/ai/basic_mobs/basic_subtrees/express_happiness.dm @@ -31,11 +31,11 @@ var/list/final_list switch(happiness_value) if(HIGH_HAPPINESS_THRESHOLD to INFINITY) - final_list = happy_emotions + final_list = controller.blackboard[BB_HAPPY_EMOTIONS] || happy_emotions if(MODERATE_HAPPINESS_THRESHOLD to HIGH_HAPPINESS_THRESHOLD) - final_list = moderate_emotions + final_list = controller.blackboard[BB_MODERATE_EMOTIONS] || moderate_emotions else - final_list = depressed_emotions + final_list = controller.blackboard[BB_SAD_EMOTIONS] || depressed_emotions if(!length(final_list)) return controller.queue_behavior(/datum/ai_behavior/perform_emote, pick(final_list)) diff --git a/code/datums/elements/basic_eating.dm b/code/datums/elements/basic_eating.dm index 75caa272ef9bd..4be983b32113c 100644 --- a/code/datums/elements/basic_eating.dm +++ b/code/datums/elements/basic_eating.dm @@ -46,8 +46,10 @@ SIGNAL_HANDLER if(user.combat_mode || !is_type_in_list(possible_food, food_types)) return NONE - - try_eating(source, possible_food, user) + var/mob/living/living_source = source + if(living_source.stat != CONSCIOUS) + return NONE + return try_eating(source, possible_food, user) ? ITEM_INTERACT_SUCCESS : NONE /datum/element/basic_eating/proc/on_unarm_attack(mob/living/eater, atom/target, proximity, modifiers) SIGNAL_HANDLER diff --git a/code/modules/cargo/packs/livestock.dm b/code/modules/cargo/packs/livestock.dm index 62008d8be48e0..da51ee497f66d 100644 --- a/code/modules/cargo/packs/livestock.dm +++ b/code/modules/cargo/packs/livestock.dm @@ -259,3 +259,10 @@ cost = CARGO_CRATE_VALUE * 2 contains = list(/obj/item/storage/fish_case/tiziran = 2) crate_name = "tiziran fish crate" + +/datum/supply_pack/critter/turtle + name = "Turtle Crate" + desc = "Cute flora turtles that'll emit good vibes to nearby plants!" + cost = CARGO_CRATE_VALUE * 2 + contains = list(/mob/living/basic/turtle) + crate_name = "flora-turtle crate" diff --git a/code/modules/fishing/sources/_fish_source.dm b/code/modules/fishing/sources/_fish_source.dm index abf3a298462cb..cb0eaecc9890d 100644 --- a/code/modules/fishing/sources/_fish_source.dm +++ b/code/modules/fishing/sources/_fish_source.dm @@ -367,7 +367,10 @@ GLOBAL_LIST_INIT(specific_fish_icons, generate_specific_fish_icons()) final_table[result] *= rod.hook.get_hook_bonus_multiplicative(result) final_table[result] += rod.hook.get_hook_bonus_additive(result)//Decide on order here so it can be multiplicative - if(ispath(result, /obj/item/fish) || isfish(result)) + if(ispath(result, /mob/living) && bait && (HAS_TRAIT(bait, TRAIT_GOOD_QUALITY_BAIT) || HAS_TRAIT(bait, TRAIT_GREAT_QUALITY_BAIT))) + final_table[result] = round(final_table[result] * result_multiplier, 1) + + else if(ispath(result, /obj/item/fish) || isfish(result)) if(bait) final_table[result] = round(final_table[result] * result_multiplier, 1) var/mult = bait.check_bait(result) diff --git a/code/modules/fishing/sources/source_types.dm b/code/modules/fishing/sources/source_types.dm index 6f2a38d4d6146..8177651973546 100644 --- a/code/modules/fishing/sources/source_types.dm +++ b/code/modules/fishing/sources/source_types.dm @@ -507,6 +507,7 @@ /obj/item/seeds/random = 1, /mob/living/basic/frog = 1, /mob/living/basic/axolotl = 1, + /mob/living/basic/turtle = 2, ) fish_counts = list( /obj/item/food/grown/grass = 10, diff --git a/code/modules/hydroponics/hydroponics.dm b/code/modules/hydroponics/hydroponics.dm index c8a3e10b8e931..ac2e0e3b767f6 100644 --- a/code/modules/hydroponics/hydroponics.dm +++ b/code/modules/hydroponics/hydroponics.dm @@ -559,7 +559,7 @@ if(weedlevel == new_weedlevel) return SEND_SIGNAL(src, COMSIG_HYDROTRAY_SET_WEEDLEVEL, new_weedlevel) - weedlevel = new_weedlevel + weedlevel = max(new_weedlevel, 0) if(update_icon) update_appearance() diff --git a/code/modules/mob/living/basic/turtle/turtle.dm b/code/modules/mob/living/basic/turtle/turtle.dm new file mode 100644 index 0000000000000..4d7c73edec6ca --- /dev/null +++ b/code/modules/mob/living/basic/turtle/turtle.dm @@ -0,0 +1,240 @@ +#define PATH_PEST_KILLER "path_pest_killer" +#define PATH_PLANT_HEALER "path_plant_healer" +#define PATH_PLANT_MUTATOR "path_plant_mutator" +#define REQUIRED_TREE_GROWTH 250 +#define UPPER_BOUND_VOLUME 50 +#define LOWER_BOUND_VOLUME 10 + +/mob/living/basic/turtle + name = "turtle" + desc = "Dog." + icon_state = "turtle" + icon_living = "turtle" + icon_dead = "turtle_dead" + base_icon_state = "turtle" + icon = 'icons/mob/simple/pets.dmi' + butcher_results = list(/obj/item/food/meat/slab = 3, /obj/item/food/pickle = 1, /obj/item/stack/sheet/mineral/wood = 10) + mob_biotypes = MOB_ORGANIC | MOB_PLANT + mobility_flags = MOBILITY_FLAGS_REST_CAPABLE_DEFAULT + health = 100 + maxHealth = 100 + speed = 5 + verb_say = "snaps" + verb_ask = "snaps curiously" + verb_exclaim = "snaps loudly" + verb_yell = "snaps loudly" + faction = list(FACTION_NEUTRAL) + ai_controller = /datum/ai_controller/basic_controller/turtle + ///our displayed tree + var/mutable_appearance/grown_tree + ///growth progress of our tree + var/list/path_growth_progress = list( + PATH_PLANT_HEALER = 0, + PATH_PLANT_MUTATOR = 0, + PATH_PEST_KILLER = 0, + ) + ///what nutrients leads to each evolution path + var/static/list/path_requirements = list( + //plant healers + /datum/reagent/plantnutriment/eznutriment = PATH_PLANT_HEALER, + /datum/reagent/plantnutriment/robustharvestnutriment = PATH_PLANT_HEALER, + /datum/reagent/plantnutriment/endurogrow = PATH_PLANT_HEALER, + //plant mutators + /datum/reagent/plantnutriment/left4zednutriment = PATH_PLANT_MUTATOR, + /datum/reagent/uranium = PATH_PLANT_MUTATOR, + //pest killers + /datum/reagent/toxin/pestkiller = PATH_PEST_KILLER, + ) + ///if we are fully grown, what is our path + var/developed_path + ///our last east/west direction + var/last_direction = WEST + +/mob/living/basic/turtle/Initialize(mapload) + . = ..() + + desc = pick( + "Likely Dog...", + "Praise the Dog!", + "Dog ahead.", + "Could this be a Dog?", + ) + var/static/list/eatable_food = list(/obj/item/seeds) + ai_controller.set_blackboard_key(BB_BASIC_FOODS, typecacheof(eatable_food)) + AddElement(/datum/element/basic_eating, food_types = eatable_food) + AddComponent(/datum/component/happiness) + RegisterSignal(src, COMSIG_MOB_PRE_EAT, PROC_REF(pre_eat_food)) + update_appearance() + create_reagents(150, REAGENT_HOLDER_ALIVE) + add_verb(src, /mob/living/proc/toggle_resting) + START_PROCESSING(SSprocessing, src) + +/mob/living/basic/turtle/setDir(newdir) + if(REVERSE_DIR(last_direction) & newdir) + transform = transform.Scale(-1, 1) + last_direction = REVERSE_DIR(last_direction) + return ..() + +/mob/living/basic/turtle/proc/retrieve_destined_path() + var/current_max_growth = 0 + var/destined_path + for(var/evolution_path in path_growth_progress) + if(path_growth_progress[evolution_path] > current_max_growth) + destined_path = evolution_path + current_max_growth = path_growth_progress[evolution_path] + if(isnull(destined_path)) + destined_path = PATH_PLANT_HEALER + return destined_path + +/mob/living/basic/turtle/process(seconds_per_tick) + if(isnull(reagents) || !length(reagents.reagent_list)) //if we have no reagents, default to our highest destined path + set_plant_growth(retrieve_destined_path(), 0.5) + return + + for(var/datum/reagent/existing_reagent as anything in reagents.reagent_list) + var/evolution_path = path_requirements[existing_reagent.type] + + switch(existing_reagent.volume) + if(UPPER_BOUND_VOLUME to INFINITY) + set_plant_growth(evolution_path, 3) + if(LOWER_BOUND_VOLUME to UPPER_BOUND_VOLUME) + set_plant_growth(evolution_path, 2) + if(1 to LOWER_BOUND_VOLUME) + set_plant_growth(evolution_path, 1) + + reagents.remove_reagent(existing_reagent.type, 0.5) + +/mob/living/basic/turtle/proc/set_plant_growth(evolution_path, amount) + path_growth_progress[evolution_path] += amount + if(path_growth_progress[evolution_path] >= REQUIRED_TREE_GROWTH) + evolve_turtle(evolution_path) + +/mob/living/basic/turtle/examine(mob/user) + . = ..() + + if(stat == DEAD) + . += span_notice("Its tree seems to be all withered...") + return + + var/destined_path = retrieve_destined_path() + var/current_max_growth = path_growth_progress[destined_path] + + var/text_to_display = "Its tree seems to be exuding " + switch(destined_path) + if(PATH_PEST_KILLER) + text_to_display += "pest killing" + if(PATH_PLANT_HEALER) + text_to_display += "plant healing" + if(PATH_PLANT_MUTATOR) + text_to_display += "plant mutating" + + text_to_display += " properties... which [current_max_growth >= REQUIRED_TREE_GROWTH ? "seems to be fully grown" : "is yet to develop"]." + . += span_notice(text_to_display) + + +/mob/living/basic/turtle/proc/evolve_turtle(evolution_path) + var/static/list/evolution_gains = list( + PATH_PLANT_HEALER = list( + "tree_appearance" = "healer_tree", + "tree_ability" = /datum/action/cooldown/mob_cooldown/turtle_tree/healer, + ), + PATH_PEST_KILLER = list( + "tree_appearance" = "killer_tree", + "tree_ability" = /datum/action/cooldown/mob_cooldown/turtle_tree/killer, + ), + PATH_PLANT_MUTATOR = list( + "tree_appearance" = "mutator_tree", + "tree_ability" = /datum/action/cooldown/mob_cooldown/turtle_tree/mutator, + ), + ) + + var/tree_icon_state = evolution_gains[evolution_path]["tree_appearance"] + grown_tree = mutable_appearance(icon = 'icons/mob/simple/turtle_trees.dmi', icon_state = tree_icon_state) + + var/new_ability_path = evolution_gains[evolution_path]["tree_ability"] + developed_path = evolution_path + var/datum/action/cooldown/tree_ability = new new_ability_path(src) + tree_ability?.Grant(src) + ai_controller?.set_blackboard_key(BB_TURTLE_TREE_ABILITY, tree_ability) + STOP_PROCESSING(SSprocessing, src) + update_appearance() + +/mob/living/basic/turtle/update_icon_state() + . = ..() + if(stat == DEAD) + return + icon_state = resting ? "[base_icon_state]_resting" : base_icon_state + +/mob/living/basic/turtle/update_overlays() + . = ..() + if(stat == DEAD) + var/mutable_appearance/dead_overlay = mutable_appearance(icon = 'icons/mob/simple/pets.dmi', icon_state = developed_path ? "dead_tree" : "growing_tree") + dead_overlay.pixel_y = -2 + . += dead_overlay + return + var/pixel_offset = resting ? -2 : 2 + var/mutable_appearance/living_tree = grown_tree ? grown_tree : mutable_appearance(icon = icon, icon_state = "growing_tree") + living_tree.pixel_y = pixel_offset + . += living_tree + +/mob/living/basic/turtle/update_resting() + . = ..() + if(stat == DEAD) + return + update_appearance() + +/mob/living/basic/turtle/item_interaction(mob/living/user, obj/item/used_item, list/modifiers) + if(!istype(used_item, /obj/item/reagent_containers)) + return NONE + + if(isnull(used_item.reagents)) + balloon_alert(user, "empty!") + return ITEM_INTERACT_SUCCESS + + if(stat == DEAD) + balloon_alert(user, "its dead!") + return ITEM_INTERACT_SUCCESS + + var/should_transfer = FALSE + for(var/reagent in path_requirements) + if(used_item.reagents.has_reagent(reagent)) + should_transfer = TRUE + break + + if(!should_transfer) + balloon_alert(user, "refuses to drink!") + return ITEM_INTERACT_SUCCESS + + if(!do_after(user, 1.5 SECONDS, target = src)) + return ITEM_INTERACT_SUCCESS + + used_item.reagents.trans_to(reagents, 5) + balloon_alert(user, "drinks happily") + playsound(src, 'sound/items/drink.ogg', vol = 25, vary = TRUE) + return ITEM_INTERACT_SUCCESS + +/mob/living/basic/turtle/proc/pre_eat_food(datum/source, obj/item/seeds/potential_food) + SIGNAL_HANDLER + + if(!istype(potential_food)) + return NONE + if(ispath(potential_food.product, /obj/item/food/grown)) + addtimer(CALLBACK(src, PROC_REF(process_food), potential_food.product), 30 SECONDS) + return NONE + +/mob/living/basic/turtle/proc/process_food(food_path) + if(QDELETED(src) || stat != CONSCIOUS) + return + new food_path(drop_location()) + balloon_alert_to_viewers("spits out some food") + +/mob/living/basic/turtle/death(gibbed) + . = ..() + STOP_PROCESSING(SSprocessing, src) + +#undef PATH_PEST_KILLER +#undef PATH_PLANT_HEALER +#undef PATH_PLANT_MUTATOR +#undef REQUIRED_TREE_GROWTH +#undef UPPER_BOUND_VOLUME +#undef LOWER_BOUND_VOLUME diff --git a/code/modules/mob/living/basic/turtle/turtle_ability.dm b/code/modules/mob/living/basic/turtle/turtle_ability.dm new file mode 100644 index 0000000000000..3c3172b8cd558 --- /dev/null +++ b/code/modules/mob/living/basic/turtle/turtle_ability.dm @@ -0,0 +1,140 @@ +#define TREE_FIELD_DURATION_EFFECT 10 SECONDS +#define WARP_ANIMATE_TIME 0.35 SECONDS + +/datum/action/cooldown/mob_cooldown/turtle_tree + name = "Tree Ability" + desc = "Invoke your tree's special ability." + cooldown_time = 2 MINUTES + click_to_activate = FALSE + button_icon = 'icons/mob/simple/pets.dmi' + button_icon_state = "turtle" + ///type of effect our tree releases + var/effect_path + ///how many times our ability affects surroundings + var/maximum_intervals = 5 + ///time between each interval + var/time_between_intervals = 3 SECONDS + ///range our tree affects + var/tree_range = 5 + ///warp effect to apply some distortion to our field + var/atom/movable/warp_effect/turtle_field/warp + +/datum/action/cooldown/mob_cooldown/turtle_tree/Activate(atom/target) + . = ..() + warp = new(owner) + RegisterSignal(warp, COMSIG_QDELETING, PROC_REF(remove_warp)) + warp.alpha = 0 + owner.vis_contents += warp + + for(var/index in 0 to maximum_intervals) + addtimer(CALLBACK(src, PROC_REF(tree_effect)), time_between_intervals * index) + + animate(warp, transform = matrix(), alpha = warp::alpha, time = WARP_ANIMATE_TIME) + addtimer(CALLBACK(src, PROC_REF(warp_extinguish)), (time_between_intervals * maximum_intervals) + 3 SECONDS) + +/datum/action/cooldown/mob_cooldown/turtle_tree/proc/warp_extinguish() + if(QDELETED(warp)) + return + animate(warp, alpha = 0, time = WARP_ANIMATE_TIME) + addtimer(CALLBACK(src, PROC_REF(remove_warp)), WARP_ANIMATE_TIME) + +/datum/action/cooldown/mob_cooldown/turtle_tree/proc/remove_warp() + SIGNAL_HANDLER + + UnregisterSignal(warp, COMSIG_QDELETING) + warp = null + +///effect we apply on our trees +/datum/action/cooldown/mob_cooldown/turtle_tree/proc/tree_effect() + SHOULD_CALL_PARENT(TRUE) + return (pre_effect_apply()) + +///things we should check for before applying our effects +/datum/action/cooldown/mob_cooldown/turtle_tree/proc/pre_effect_apply() + if(QDELETED(owner) || owner.stat == DEAD) + return FALSE + var/obj/effect/tree_effect = new effect_path + owner.vis_contents += tree_effect + return TRUE + +///healer tree, heals nearby plants by small amounts +/datum/action/cooldown/mob_cooldown/turtle_tree/healer + effect_path = /obj/effect/temp_visual/circle_wave/tree/healer + ///amount we heal plants by + var/heal_amount = 5 + +/datum/action/cooldown/mob_cooldown/turtle_tree/healer/tree_effect() + . = ..() + if(!.) + return + for(var/obj/machinery/hydroponics/hydro in oview(tree_range, owner)) + if(isnull(hydro.myseed)) + continue + hydro.adjust_plant_health(heal_amount) + +///killer tree, kills plant's pests and weeds, aswell as nearby vermin +/datum/action/cooldown/mob_cooldown/turtle_tree/killer + effect_path = /obj/effect/temp_visual/circle_wave/tree/killer + ///amount we heal plants by + var/vermin_damage_amount = 20 + ///type of vermin our field affects + var/static/list/vermin_mob_targets = typecacheof(list( + /mob/living/basic/cockroach, + /mob/living/basic/mouse/rat, + )) + ///how much we reduce weed levels + var/weed_level_reduce = 2 + +/datum/action/cooldown/mob_cooldown/turtle_tree/killer/tree_effect() + . = ..() + if(!.) + return + + for(var/atom/possible_target as anything in oview(tree_range, owner)) + + if(is_type_in_typecache(possible_target, vermin_mob_targets)) + var/mob/living/living_target = possible_target + living_target.apply_damage(vermin_damage_amount) + continue + + if(!istype(possible_target, /obj/machinery/hydroponics)) + continue + + var/obj/machinery/hydroponics/hydro = possible_target + if(isnull(hydro.myseed)) + continue + hydro.set_weedlevel(hydro.weedlevel - weed_level_reduce) + +///mutator tree, mutates nearby plants! +/datum/action/cooldown/mob_cooldown/turtle_tree/mutator + effect_path = /obj/effect/temp_visual/circle_wave/tree/mutator + ///how much we mutate plants + var/mutator_boost = 1 + +/datum/action/cooldown/mob_cooldown/turtle_tree/mutator/tree_effect() + . = ..() + if(!.) + return + for(var/obj/machinery/hydroponics/hydro in oview(tree_range, owner)) + hydro.myseed?.adjust_instability(mutator_boost) + +/atom/movable/warp_effect/turtle_field + alpha = 75 + +///effects we give our tree abilities depending on their type +/obj/effect/temp_visual/circle_wave/tree + vis_flags = VIS_INHERIT_DIR | VIS_INHERIT_PLANE + duration = 10 SECONDS + amount_to_scale = 3 + +/obj/effect/temp_visual/circle_wave/tree/healer + color = "#28a3bc" + +/obj/effect/temp_visual/circle_wave/tree/killer + color = "#ce3ebf" + +/obj/effect/temp_visual/circle_wave/tree/mutator + color = "#c49f26" + +#undef TREE_FIELD_DURATION_EFFECT +#undef WARP_ANIMATE_TIME diff --git a/code/modules/mob/living/basic/turtle/turtle_ai.dm b/code/modules/mob/living/basic/turtle/turtle_ai.dm new file mode 100644 index 0000000000000..1af7c3111f78c --- /dev/null +++ b/code/modules/mob/living/basic/turtle/turtle_ai.dm @@ -0,0 +1,92 @@ +/datum/ai_controller/basic_controller/turtle + blackboard = list( + BB_HAPPY_EMOTIONS = list( + "wiggles its tree in excitement!", + "raises its head up high!", + "wags its tail enthusiastically!", + ), + BB_MODERATE_EMOTIONS = list( + "keeps its head level, eyes half-closed.", + "basks in the light peacefully.", + ), + BB_SAD_EMOTIONS = list( + "looks towards the floor in dissapointment...", + "the leaves on its tree droop...", + ), + ) + ai_movement = /datum/ai_movement/basic_avoidance + idle_behavior = /datum/idle_behavior/idle_random_walk/less_walking + planning_subtrees = list( + /datum/ai_planning_subtree/find_food, + /datum/ai_planning_subtree/express_happiness, + /datum/ai_planning_subtree/use_mob_ability/turtle_tree, + /datum/ai_planning_subtree/find_and_hunt_target/headbutt_people, //playfully headbutt people's legs + /datum/ai_planning_subtree/find_and_hunt_target/sniff_flora, //mmm the aroma + ) + +/datum/ai_planning_subtree/use_mob_ability/turtle_tree + ability_key = BB_TURTLE_TREE_ABILITY + +/datum/ai_planning_subtree/use_mob_ability/turtle_tree/SelectBehaviors(datum/ai_controller/controller, seconds_per_tick) + var/happiness_count = controller.blackboard[BB_BASIC_HAPPINESS] * 100 + if(happiness_count > 75) + return ..() + if(!SPT_PROB(happiness_count / 50, seconds_per_tick)) + return + return ..() + +/datum/ai_planning_subtree/find_and_hunt_target/sniff_flora + target_key = BB_TURTLE_FLORA_TARGET + finding_behavior = /datum/ai_behavior/find_hunt_target/sniff_flora + hunting_behavior = /datum/ai_behavior/hunt_target/sniff_flora + hunt_targets = list( + /obj/machinery/hydroponics, + /obj/item/kirbyplants, + ) + hunt_range = 5 + hunt_chance = 45 + +/datum/ai_behavior/find_hunt_target/sniff_flora + action_cooldown = 1 MINUTES + behavior_flags = AI_BEHAVIOR_CAN_PLAN_DURING_EXECUTION + +/datum/ai_behavior/find_hunt_target/sniff_flora/valid_dinner(mob/living/source, obj/machinery/hydroponics/dinner, radius, datum/ai_controller/controller, seconds_per_tick) + if(!istype(dinner)) + return TRUE + if(isnull(dinner.myseed)) + return FALSE + if(dinner.weedlevel > 5 || dinner.pestlevel > 5) //too smelly + return FALSE + return can_see(source, dinner, radius) + +/datum/ai_behavior/hunt_target/sniff_flora + always_reset_target = TRUE + +/datum/ai_behavior/hunt_target/sniff_flora/target_caught(mob/living/hunter, atom/hunted) + hunter.manual_emote("Enjoys the sweet scent eminating from [hunted::name]!") + +/datum/ai_planning_subtree/find_and_hunt_target/headbutt_people + target_key = BB_TURTLE_HEADBUTT_VICTIM + finding_behavior = /datum/ai_behavior/find_hunt_target/human_to_headbutt + hunting_behavior = /datum/ai_behavior/hunt_target/headbutt_leg + hunt_targets = list(/mob/living/carbon/human) + hunt_range = 4 + hunt_chance = 45 + +/datum/ai_behavior/find_hunt_target/human_to_headbutt + action_cooldown = 2 MINUTES + behavior_flags = AI_BEHAVIOR_CAN_PLAN_DURING_EXECUTION + +/datum/ai_behavior/find_hunt_target/human_to_headbutt/valid_dinner(mob/living/source, mob/living/carbon/human/dinner, radius, datum/ai_controller/controller, seconds_per_tick) + if(dinner.stat != CONSCIOUS) + return FALSE + if(isnull(dinner.get_bodypart(BODY_ZONE_R_LEG)) && isnull(dinner.get_bodypart(BODY_ZONE_L_LEG))) //no legs to headbutt! + return FALSE + return can_see(source, dinner, radius) + +/datum/ai_behavior/hunt_target/headbutt_leg + always_reset_target = TRUE + +/datum/ai_behavior/hunt_target/headbutt_leg/target_caught(mob/living/hunter, atom/hunted) + hunter.manual_emote("playfully headbutts [hunted]'s legs!") + diff --git a/icons/mob/simple/pets.dmi b/icons/mob/simple/pets.dmi index b7e8642387228a2e5fb1eec39f69f13f509ad591..512a48e813b0d41075bc3753b557136bcde451a7 100644 GIT binary patch literal 91503 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 literal 87208 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 aJ(LzB^E<imlVLRo_)(NolP!}r4*nmY(vGwM diff --git a/icons/mob/simple/turtle_trees.dmi b/icons/mob/simple/turtle_trees.dmi new file mode 100644 index 0000000000000000000000000000000000000000..3e5cf1d4065fa1f22843a33228bd361f63f46897 GIT binary patch literal 1263 zcmV<L1Q7d)P)<h;3K|Lk000e1NJLTq003YB001xu0{{R3*~pLm0000*P)t-sz`(#N zhM5W(IDRUbI0`J8fGR6E3JOMEQwm;QR0@8sz_)(Dz_@;5p0T51v9Y9L;DK1KPD?5V zBq|{W1}Y+UKUGK~Hz!dd6951J0d!JMQvg8b*k%9#0DpQ^Sad{Xb7OL8aCB*JZU6vy zoKseCa&`CgQ*iP1<SI)oD$dN$Q?OMq(KF!UEYD0S$pCVUjkq{7QZv&tN<cCeT*W1c zC8<EBQbuZGPHItnNl|L55*KGmW>GOv)R2oattc@!6~czA&CbjrT5WDAkd=>Lv9f}z zp9|R404>Wmd$MyafdBvl%}GQ-R9J=Wmg{b#FcgHr7+)YjlJ4gHA9ZKu*j$oskv7^N zm1=<-VR}A$=J=SVQES`Qp>x*oK;725uJh=;H9SzawZ88Ix?l|t)a@GyHGYLW6Kebl zc_!5O74l2~Ajaq%ZxId@0a8ld^A_Pi5g_Lr0&fuxlwla08wL_$S;8UyIF8<rBMGT2 z;Sm3FxrA`JkdVs~w)l)RO+XBjqf`-HL|4ZdX`X=?XHTgTx`eKdGt#mEaajVT%IGq> z4UhS@6PtoFKKpG2m~S_;DLCV^-&TP6_6wVWGd}yBLIkv20cQ?O>!wMT?*JWFz?lQn z`FWP*J3!ABaOS}DVOeDP4&Vkg8az#a$mtkYfFIRp@H_(|r&C%1;i5)^mjw_xopUuf z5+EBS7O&W@@e!8**&wlarEZOnxCF=siN!1TYkUzneMdxV04KYPN+59ho`}u>UUnCi zK;ZNP5xoI|?5-*?&;%23xi(6o3E4`SR*7bqfXjDD63xg~%Ct(fzyw^O&yr|Cwo)dG zuN7eW_yJ+4KL}CVPVuz@OdmfW4D|;gY1=8jR)Fc_2ZW*iAY^U3YA|!CDr4d>O+hFI zGl!}&CJxgSgkmsrs48RPFio>uKpY6KERqFL8x2xLvjA}*ys}6ZByBWEmCORff$+*A zS&+5SAXTmwKn*!-CPONxEUgs-n>fi?GZ|8OWofM#*u+`Rn#qtVC`<EN^ql48M1VFK zAJo!H3oI{Z0<_8apq5rzV0pO^piRaHwX|9a5uhDx1gA>Tx+;+;Ks(q7UX`NrRiZ$E zcCZnGDn-8osP?eXN&g~IC8$myA`6}LFA`OP>I5RP&`JLy(MmvFmMAQ9Oic;Kbdt+h zL1Ut@%rP}37}H5EV+D<g!ZOFylweFJxvYJFXt5+d0gk2GRfW(HEtSM4z_V2Qst_8Y z<&yXW1eWTsDr5j>iD{eb`Q)6vrN2&_a-Qu^&Lvp->$EB7+41DG!b1z3tzvgTTd7dy zcUD37D=>l;9$FA=6}tm^1<2n5Fx+-5`|5827;Zb3L-n@+47WR$@x>BjIqcbME!&X^ zpUq!y09(s;WWs0jHyFUyvOhAL<|zE@cgs=u*YB32@SlCRm>#aV-fr%GZ(cr(Ob^d- z|MAhhd>EM?=<ve*SMv#={Jmapznf2*KN(-+{q2SQ_~VW7w*!0w!0q>2<7Y4Y=lIv# z1MB<u@v|2&{J{OyzkfM?_JW2VC;TtQ&tI^1$3}i<{QQOHJi?m+ns>*~U-)T1?WcXO Z_6Le)KI)p@`<4Iz002ovPDHLkV1gzjIT`=} literal 0 HcmV?d00001 diff --git a/tgstation.dme b/tgstation.dme index bec1ca1f5a46d..269325a558b54 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -5162,6 +5162,9 @@ #include "code\modules\mob\living\basic\trooper\syndicate.dm" #include "code\modules\mob\living\basic\trooper\trooper.dm" #include "code\modules\mob\living\basic\trooper\trooper_ai.dm" +#include "code\modules\mob\living\basic\turtle\turtle.dm" +#include "code\modules\mob\living\basic\turtle\turtle_ability.dm" +#include "code\modules\mob\living\basic\turtle\turtle_ai.dm" #include "code\modules\mob\living\basic\vermin\axolotl.dm" #include "code\modules\mob\living\basic\vermin\butterfly.dm" #include "code\modules\mob\living\basic\vermin\cockroach.dm" From e264e94d6ef5ec398d447611cf9f8a833418d510 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Mon, 23 Dec 2024 00:10:18 +0000 Subject: [PATCH 079/126] Automatic changelog for PR #87493 [ci skip] --- html/changelogs/AutoChangeLog-pr-87493.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-87493.yml diff --git a/html/changelogs/AutoChangeLog-pr-87493.yml b/html/changelogs/AutoChangeLog-pr-87493.yml new file mode 100644 index 0000000000000..03d0c7f827173 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-87493.yml @@ -0,0 +1,4 @@ +author: "Ben10Omintrix" +delete-after: True +changes: + - rscadd: "adds flora-turtles. obtainable through cargo or by fishing from the hydroponics tray" \ No newline at end of file From e4569598629d7ef9a87c609d1eb9e8613a3b1a2e Mon Sep 17 00:00:00 2001 From: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Date: Mon, 23 Dec 2024 06:03:42 +0530 Subject: [PATCH 080/126] Rolling tables can be rolled up again (#88628) --- code/game/objects/items/rollertable_dock.dm | 17 ----------------- code/game/objects/structures/tables_racks.dm | 17 +++++++++++++++++ 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/code/game/objects/items/rollertable_dock.dm b/code/game/objects/items/rollertable_dock.dm index d0067e8c67596..9b2c34bc61b41 100644 --- a/code/game/objects/items/rollertable_dock.dm +++ b/code/game/objects/items/rollertable_dock.dm @@ -9,23 +9,6 @@ . = ..() loaded = new(src) -/obj/structure/table/rolling/attackby(obj/item/wtable, mob/user, params) - if(!istype(wtable, /obj/item/rolling_table_dock)) - return ..() - var/obj/item/rolling_table_dock/rable = wtable - var/turf/target_table = get_turf(src) - if(rable.loaded) - to_chat(user, span_warning("You already have a roller table docked!")) - return - if(locate(/mob/living) in target_table) - to_chat(user, span_warning("You can't collect the table with that much on top!")) - return - else - rable.loaded = src - forceMove(rable) - user.visible_message(span_notice("[user] collects [src]."), balloon_alert(user, "you collect the [src].")) - return TRUE - /obj/item/rolling_table_dock/interact_with_atom(atom/interacting_with, mob/living/user, list/modifiers) var/turf/target_turf = get_turf(interacting_with) if(target_turf.is_blocked_turf(TRUE) || (locate(/mob/living) in target_turf)) diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 448c3eb5425a7..9adb4f75a2f94 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -390,6 +390,23 @@ LAZYNULL(attached_items) // safety return ..() +/obj/structure/table/rolling/item_interaction(mob/living/user, obj/item/rolling_table_dock/rable, list/modifiers) + . = NONE + if(!istype(rable)) + return + + if(rable.loaded) + to_chat(user, span_warning("You already have \a [rable.loaded] docked!")) + return ITEM_INTERACT_FAILURE + if(locate(/mob/living) in get_turf(src)) + to_chat(user, span_warning("You can't collect \the [src] with that much on top!")) + return ITEM_INTERACT_FAILURE + + rable.loaded = src + forceMove(rable) + user.visible_message(span_notice("[user] collects \the [src]."), span_notice("you collect \the [src].")) + return ITEM_INTERACT_SUCCESS + /obj/structure/table/rolling/AfterPutItemOnTable(obj/item/thing, mob/living/user) . = ..() LAZYADD(attached_items, thing) From c5e5db219abc440bd3a7944688b3ee50d5b9d0e6 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Mon, 23 Dec 2024 00:46:28 +0000 Subject: [PATCH 081/126] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-87493.yml | 4 --- html/changelogs/AutoChangeLog-pr-88380.yml | 6 ---- html/changelogs/AutoChangeLog-pr-88438.yml | 5 ---- html/changelogs/AutoChangeLog-pr-88482.yml | 8 ------ html/changelogs/AutoChangeLog-pr-88495.yml | 5 ---- html/changelogs/AutoChangeLog-pr-88525.yml | 4 --- html/changelogs/AutoChangeLog-pr-88545.yml | 4 --- html/changelogs/AutoChangeLog-pr-88617.yml | 4 --- html/changelogs/AutoChangeLog-pr-88621.yml | 4 --- html/changelogs/archive/2024-12.yml | 33 ++++++++++++++++++++++ 10 files changed, 33 insertions(+), 44 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-87493.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88380.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88438.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88482.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88495.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88525.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88545.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88617.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88621.yml diff --git a/html/changelogs/AutoChangeLog-pr-87493.yml b/html/changelogs/AutoChangeLog-pr-87493.yml deleted file mode 100644 index 03d0c7f827173..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-87493.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Ben10Omintrix" -delete-after: True -changes: - - rscadd: "adds flora-turtles. obtainable through cargo or by fishing from the hydroponics tray" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88380.yml b/html/changelogs/AutoChangeLog-pr-88380.yml deleted file mode 100644 index 27f47a64a6165..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88380.yml +++ /dev/null @@ -1,6 +0,0 @@ -author: "Melbert" -delete-after: True -changes: - - balance: "Carpenter hammer force 20 -> 17" - - balance: "Carpenter hammer throwforce 20 -> 14" - - balance: "Carpenter hammer demo mod 1.25 -> 1.15" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88438.yml b/html/changelogs/AutoChangeLog-pr-88438.yml deleted file mode 100644 index f76306a4b90a5..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88438.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "TealSeer" -delete-after: True -changes: - - qol: "The time until the server reboots is now visible in the status tab." - - admin: "Added a cancel reboot verb to the server tab." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88482.yml b/html/changelogs/AutoChangeLog-pr-88482.yml deleted file mode 100644 index f94bf1b4da1fa..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88482.yml +++ /dev/null @@ -1,8 +0,0 @@ -author: "NecromancerAnne (code), SmArtKar (sprites)" -delete-after: True -changes: - - balance: "Makarovs and Toy Pistols come in weapon cases. Complete with spare ammo." - - balance: "Basic ammo for either weapon comes in weapon cases of three extra magazines at an affordable price." - - balance: "Donksoft Toy Pistols from the uplink are much stronger than their standard counterparts, but now priced at 6 TC." - - balance: "Makarovs and Toy pistols have a magazine capacity of 12 rounds." - - balance: "Gun/Ammo cases from the traitor uplink can be destroyed by activating the disposal bomb. Press Alt-Right-Click on the case to start the timer." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88495.yml b/html/changelogs/AutoChangeLog-pr-88495.yml deleted file mode 100644 index 05df567f9fb27..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88495.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "Ben10Omintrix" -delete-after: True -changes: - - qol: "holding shift and hovering over your pet will display a list of commands you can click from" - - bugfix: "fixes the fishing pet command not working" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88525.yml b/html/changelogs/AutoChangeLog-pr-88525.yml deleted file mode 100644 index 7946ba940d96f..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88525.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "grungussuss" -delete-after: True -changes: - - code_imp: "removed an extra proc override in digitigrade legs preference logic code" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88545.yml b/html/changelogs/AutoChangeLog-pr-88545.yml deleted file mode 100644 index 971d526e305de..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88545.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "DATA-xPUNGED" -delete-after: True -changes: - - map: "removed the sec record computer from the Icemoon Listening Post." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88617.yml b/html/changelogs/AutoChangeLog-pr-88617.yml deleted file mode 100644 index 530ff693e1eda..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88617.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "AyIong" -delete-after: True -changes: - - bugfix: "Fixed scrollbar colors and background position in TGUI on Byond 516" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88621.yml b/html/changelogs/AutoChangeLog-pr-88621.yml deleted file mode 100644 index c326d59dfc745..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88621.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Rhials" -delete-after: True -changes: - - rscadd: "Nukie uplinks now offer an OG-style nuke pinpointer in their Badassery shop section." \ No newline at end of file diff --git a/html/changelogs/archive/2024-12.yml b/html/changelogs/archive/2024-12.yml index 5a594a7616886..3a7c86e40739d 100644 --- a/html/changelogs/archive/2024-12.yml +++ b/html/changelogs/archive/2024-12.yml @@ -540,3 +540,36 @@ - spellcheck: Update teleporter machine desc to be accurate - spellcheck: Fix holodeck emag message claiming to increase power - rscadd: Add power efficiency when stasis bed stock parts are upgraded +2024-12-23: + AyIong: + - bugfix: Fixed scrollbar colors and background position in TGUI on Byond 516 + Ben10Omintrix: + - rscadd: adds flora-turtles. obtainable through cargo or by fishing from the hydroponics + tray + - qol: holding shift and hovering over your pet will display a list of commands + you can click from + - bugfix: fixes the fishing pet command not working + DATA-xPUNGED: + - map: removed the sec record computer from the Icemoon Listening Post. + Melbert: + - balance: Carpenter hammer force 20 -> 17 + - balance: Carpenter hammer throwforce 20 -> 14 + - balance: Carpenter hammer demo mod 1.25 -> 1.15 + NecromancerAnne (code), SmArtKar (sprites): + - balance: Makarovs and Toy Pistols come in weapon cases. Complete with spare ammo. + - balance: Basic ammo for either weapon comes in weapon cases of three extra magazines + at an affordable price. + - balance: Donksoft Toy Pistols from the uplink are much stronger than their standard + counterparts, but now priced at 6 TC. + - balance: Makarovs and Toy pistols have a magazine capacity of 12 rounds. + - balance: Gun/Ammo cases from the traitor uplink can be destroyed by activating + the disposal bomb. Press Alt-Right-Click on the case to start the timer. + Rhials: + - rscadd: Nukie uplinks now offer an OG-style nuke pinpointer in their Badassery + shop section. + TealSeer: + - qol: The time until the server reboots is now visible in the status tab. + - admin: Added a cancel reboot verb to the server tab. + grungussuss: + - code_imp: removed an extra proc override in digitigrade legs preference logic + code From 6d65734d1ad3503c686d57ffd1dfe0f7d0ab7c34 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Mon, 23 Dec 2024 00:58:59 +0000 Subject: [PATCH 082/126] Automatic changelog for PR #88628 [ci skip] --- html/changelogs/AutoChangeLog-pr-88628.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88628.yml diff --git a/html/changelogs/AutoChangeLog-pr-88628.yml b/html/changelogs/AutoChangeLog-pr-88628.yml new file mode 100644 index 0000000000000..267a741b68ed0 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88628.yml @@ -0,0 +1,4 @@ +author: "SyncIt21" +delete-after: True +changes: + - bugfix: "rolling tables can be rolled up again" \ No newline at end of file From 2660e6f41286ced719371bbefc83dd3053090d94 Mon Sep 17 00:00:00 2001 From: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Date: Mon, 23 Dec 2024 08:01:07 +0300 Subject: [PATCH 083/126] Admins can now return the shuttle back to the station without ending the round (#88521) ## About The Pull Request Per DarkenedEarth's request on discord, adds a new Fun menu secret which makes the shuttle go back to the station after a configurable delay with an announcement (also configurable). After docking at the station it behaves like BYOS (still requiring to wait for it's arrival despite it being docked). ## Why It's Good For The Game Admins want it to hunt early EORGers or make events or something like that. ## Changelog :cl: admin: Admins can now return the shuttle back to the station without ending the round /:cl: --- code/modules/admin/verbs/secrets.dm | 49 +++++++++++++++++++++++ tgui/packages/tgui/interfaces/Secrets.jsx | 12 +++--- 2 files changed, 55 insertions(+), 6 deletions(-) diff --git a/code/modules/admin/verbs/secrets.dm b/code/modules/admin/verbs/secrets.dm index e43164419d59c..177d1f3172f7d 100644 --- a/code/modules/admin/verbs/secrets.dm +++ b/code/modules/admin/verbs/secrets.dm @@ -348,6 +348,34 @@ ADMIN_VERB(secrets, R_NONE, "Secrets", "Abuse harder than you ever have before w priority_announce("The NAP is now in full effect.", null, SSstation.announcer.get_rand_report_sound()) else priority_announce("The NAP has been revoked.", null, SSstation.announcer.get_rand_report_sound()) + if("send_shuttle_back") + if (!is_funmin) + return + if (SSshuttle.emergency.mode != SHUTTLE_ESCAPE) + to_chat(usr, span_warning("Emergency shuttle not currently in transit!"), confidential = TRUE) + return + var/make_announcement = tgui_alert(usr, "Make a CentCom announcement?", "Emergency shuttle return", list("Yes", "Custom Text", "No")) || "No" + var/announcement_text = "Emergency shuttle trajectory overriden, rerouting course back to [station_name()]." + if (make_announcement == "Custom Text") + announcement_text = tgui_input_text(usr, "Custom CentCom announcement", "Emergency shuttle return", multiline = TRUE) || announcement_text + var/new_timer = tgui_input_number(usr, "How long should the shuttle remain in transit?", "When are we droppin' boys?", 180, 600) + if (isnull(new_timer) || SSshuttle.emergency.mode != SHUTTLE_ESCAPE) + return + SSblackbox.record_feedback("nested tally", "admin_secrets_fun_used", 1, list("Send Shuttle Back")) + message_admins("[key_name_admin(holder)] sent the escape shuttle back to the station") + if (make_announcement != "No") + priority_announce( + text = announcement_text, + title = "Shuttle Trajectory Override", + sound = 'sound/announcer/announcement/announce_dig.ogg', + sender_override = "Emergency Shuttle Uplink Alert", + color_override = "grey", + ) + SSshuttle.emergency.timer = INFINITY + if (new_timer > 0) + addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(return_escape_shuttle), make_announcement), new_timer SECONDS) + else + INVOKE_ASYNC(GLOBAL_PROC, GLOBAL_PROC_REF(return_escape_shuttle), make_announcement) if("blackout") if(!is_funmin) return @@ -673,6 +701,27 @@ ADMIN_VERB(secrets, R_NONE, "Secrets", "Abuse harder than you ever have before w T.flick_overlay_static(portal_appearance[GET_TURF_PLANE_OFFSET(T) + 1], 15) playsound(T, 'sound/effects/magic/lightningbolt.ogg', rand(80, 100), TRUE) +/// Docks the emergency shuttle back to the station and resets its' state +/proc/return_escape_shuttle(make_announcement) + if (SSshuttle.emergency.initiate_docking(SSshuttle.getDock("emergency_home"), force = TRUE) != DOCKING_SUCCESS) + message_admins("Emergency shuttle was unable to dock back to the station!") + SSshuttle.emergency.timer = 1 // Prevents softlocks + return + if (make_announcement != "No") + priority_announce( + text = "[SSshuttle.emergency] has returned to the station.", + title = "Emergency Shuttle Override", + sound = ANNOUNCER_SHUTTLEDOCK, + sender_override = "Emergency Shuttle Uplink Alert", + color_override = "grey", + ) + SSshuttle.emergency.mode = SHUTTLE_IDLE + SSshuttle.emergency.timer = 0 + // Docks the pods back (don't ask about physics) + for (var/obj/docking_port/mobile/pod/pod in SSshuttle.mobile_docking_ports) + if (pod.previous) + pod.initiate_docking(pod.previous, force = TRUE) + /datum/everyone_is_an_antag_controller var/chosen_antag = "" var/objective = "" diff --git a/tgui/packages/tgui/interfaces/Secrets.jsx b/tgui/packages/tgui/interfaces/Secrets.jsx index 3e3ccd70cc0ff..fbe0f56a9124a 100644 --- a/tgui/packages/tgui/interfaces/Secrets.jsx +++ b/tgui/packages/tgui/interfaces/Secrets.jsx @@ -425,13 +425,13 @@ const FunTab = (props) => { /> </Stack.Item> <Stack.Item> - <NoticeBox - mb={-0.5} + <Button + icon="house" + lineHeight={lineHeightNormal} width={buttonWidthNormal} - height={lineHeightNormal} - > - Your admin button here, coder! - </NoticeBox> + content="Send Shuttle Back" + onClick={() => act('send_shuttle_back')} + /> </Stack.Item> </Stack> </Stack.Item> From 0909cb9bc7582857018412e7e78edc6cae8c1cb6 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Mon, 23 Dec 2024 05:01:27 +0000 Subject: [PATCH 084/126] Automatic changelog for PR #88521 [ci skip] --- html/changelogs/AutoChangeLog-pr-88521.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88521.yml diff --git a/html/changelogs/AutoChangeLog-pr-88521.yml b/html/changelogs/AutoChangeLog-pr-88521.yml new file mode 100644 index 0000000000000..4435358250283 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88521.yml @@ -0,0 +1,4 @@ +author: "SmArtKar" +delete-after: True +changes: + - admin: "Admins can now return the shuttle back to the station without ending the round" \ No newline at end of file From c095e295687661d30a92c134152a2f249f3fbcc8 Mon Sep 17 00:00:00 2001 From: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Date: Mon, 23 Dec 2024 22:36:22 +0300 Subject: [PATCH 085/126] Fixes showers not passively washing objects (#88666) ## About The Pull Request Closes #88643 ## Changelog :cl: fix: Fixed showers not passively washing objects /:cl: --- code/game/objects/structures/shower.dm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/code/game/objects/structures/shower.dm b/code/game/objects/structures/shower.dm index ce6c987ba10dd..26d05f6edd178 100644 --- a/code/game/objects/structures/shower.dm +++ b/code/game/objects/structures/shower.dm @@ -273,7 +273,11 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/shower, (-16)) if(!radioactive_shower) // note it is possible to have a clean_shower that is radioactive (+70% water mixed with +20% radiation) wash_flags |= CLEAN_RAD - target.wash(wash_flags) + + if (isturf(target)) + target.wash(wash_flags, TRUE) + else + target.wash(wash_flags) reagents.expose(target, (TOUCH), SHOWER_EXPOSURE_MULTIPLIER * SHOWER_SPRAY_VOLUME / max(reagents.total_volume, SHOWER_SPRAY_VOLUME)) if(!isliving(target)) @@ -344,7 +348,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/shower, (-16)) return mode == SHOWER_MODE_FOREVER ? 0 : PROCESS_KILL // Wash up. - wash_atom(loc, TRUE) + wash_atom(loc) reagents.remove_all(SHOWER_SPRAY_VOLUME) /obj/machinery/shower/on_deconstruction(disassembled = TRUE) From ca98802053621668a772179622d03ea5c8b8cea7 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Mon, 23 Dec 2024 19:36:45 +0000 Subject: [PATCH 086/126] Automatic changelog for PR #88666 [ci skip] --- html/changelogs/AutoChangeLog-pr-88666.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88666.yml diff --git a/html/changelogs/AutoChangeLog-pr-88666.yml b/html/changelogs/AutoChangeLog-pr-88666.yml new file mode 100644 index 0000000000000..28c236c8187d1 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88666.yml @@ -0,0 +1,4 @@ +author: "SmArtKar" +delete-after: True +changes: + - bugfix: "Fixed showers not passively washing objects" \ No newline at end of file From 76d80bb8a97e2584cc0acd9984be6e4ecc101fa6 Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Mon, 23 Dec 2024 16:36:51 -0300 Subject: [PATCH 087/126] Kissing while you have the ink infusion ability off cooldown gives you an ink kiss (#88556) ## About The Pull Request Kissing while you have the ink infusion ability off cooldown gives you an ink kiss. This ink kiss behaves identically to a normal kiss but also creates a ink spit projectile and calls on_hit(target) on its own on_hit (not on_harmless_hit) ## Why It's Good For The Game I think it's funny to kiss people and splat them with ink. I did not test this because apparently worktrees dont work with pressing f5 ## Changelog :cl: add: Kissing while you have the ink infusion ability off cooldown gives you an ink kiss /:cl: --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> --- code/game/objects/items/hand_items.dm | 22 ++++++++++++++++++++++ code/modules/mob/living/emote.dm | 8 ++++++++ 2 files changed, 30 insertions(+) diff --git a/code/game/objects/items/hand_items.dm b/code/game/objects/items/hand_items.dm index d5c2a58dcd822..a1ea5b1011a2e 100644 --- a/code/game/objects/items/hand_items.dm +++ b/code/game/objects/items/hand_items.dm @@ -539,6 +539,12 @@ color = COLOR_SYNDIE_RED kiss_type = /obj/projectile/kiss/syndie +/obj/item/hand_item/kisser/ink + name = "ink kiss" + desc = "Is that a blot of ink in your pocket or are you just happy to see me?" + color = COLOR_ALMOST_BLACK + kiss_type = /obj/projectile/kiss/ink + /obj/projectile/kiss name = "kiss" icon = 'icons/mob/simple/animal.dmi' @@ -639,6 +645,22 @@ var/obj/item/organ/heart/dont_go_breakin_my_heart = heartbreakee.get_organ_slot(ORGAN_SLOT_HEART) dont_go_breakin_my_heart.apply_organ_damage(999) +/obj/projectile/kiss/ink + name = "ink kiss" + color = COLOR_ALMOST_BLACK + damage = /obj/projectile/ink_spit::damage + damage_type = /obj/projectile/ink_spit::damage_type + armor_flag = /obj/projectile/ink_spit::armor_flag + armour_penetration = /obj/projectile/ink_spit::armour_penetration + impact_effect_type = /obj/projectile/ink_spit::impact_effect_type + hitsound = /obj/projectile/ink_spit::hitsound + hitsound_wall = /obj/projectile/ink_spit::hitsound_wall + +/obj/projectile/kiss/ink/on_hit(atom/target, blocked, pierce_hit) + . = ..() + var/obj/projectile/ink_spit/ink_spit = new (target) + ink_spit.on_hit(target) + // Based on energy gun characteristics /obj/projectile/kiss/syndie name = "syndie kiss" diff --git a/code/modules/mob/living/emote.dm b/code/modules/mob/living/emote.dm index a8431d790b7ca..fad518a323465 100644 --- a/code/modules/mob/living/emote.dm +++ b/code/modules/mob/living/emote.dm @@ -262,12 +262,20 @@ if(HAS_TRAIT(user, TRAIT_KISS_OF_DEATH)) kiss_type = /obj/item/hand_item/kisser/death + var/datum/action/cooldown/ink_spit/ink_action = locate() in user.actions + if(ink_action?.IsAvailable()) + kiss_type = /obj/item/hand_item/kisser/ink + ink_action.StartCooldown() + else + ink_action = null + var/obj/item/kiss_blower = new kiss_type(user) if(user.put_in_hands(kiss_blower)) to_chat(user, span_notice("You ready your kiss-blowing hand.")) else qdel(kiss_blower) to_chat(user, span_warning("You're incapable of blowing a kiss in your current state.")) + ink_action?.ResetCooldown() /datum/emote/living/laugh key = "laugh" From 8a678dd95906bac368a19a5d450b8e2dde57e1e3 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Mon, 23 Dec 2024 19:37:11 +0000 Subject: [PATCH 088/126] Automatic changelog for PR #88556 [ci skip] --- html/changelogs/AutoChangeLog-pr-88556.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88556.yml diff --git a/html/changelogs/AutoChangeLog-pr-88556.yml b/html/changelogs/AutoChangeLog-pr-88556.yml new file mode 100644 index 0000000000000..a4bffbbe12807 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88556.yml @@ -0,0 +1,4 @@ +author: "carlarctg" +delete-after: True +changes: + - rscadd: "Kissing while you have the ink infusion ability off cooldown gives you an ink kiss" \ No newline at end of file From f1cd77b70fa43388e780a849f184a8e1e06d9375 Mon Sep 17 00:00:00 2001 From: SmArtKar <44720187+SmArtKar@users.noreply.github.com> Date: Mon, 23 Dec 2024 22:52:22 +0300 Subject: [PATCH 089/126] [NO GBP] Fixes moth wing stabilization working in zero-g as long as you keep moving (#88552) ## About The Pull Request Didn't run the check in stabilization code, also fixed a forgotten comsig unreg ## Changelog :cl: fix: Fixed moth wing stabilization working in zero-g as long as you keep moving /:cl: --- code/datums/components/jetpack.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/datums/components/jetpack.dm b/code/datums/components/jetpack.dm index c7ff096029b97..5498a8a81ef85 100644 --- a/code/datums/components/jetpack.dm +++ b/code/datums/components/jetpack.dm @@ -119,7 +119,7 @@ /datum/component/jetpack/proc/deactivate(datum/source, mob/old_user) SIGNAL_HANDLER - UnregisterSignal(old_user, list(COMSIG_MOVABLE_PRE_MOVE, COMSIG_MOVABLE_MOVED, COMSIG_MOB_CLIENT_MOVE_NOGRAV, COMSIG_MOB_ATTEMPT_HALT_SPACEMOVE)) + UnregisterSignal(old_user, list(COMSIG_MOVABLE_PRE_MOVE, COMSIG_MOVABLE_MOVED, COMSIG_MOB_CLIENT_MOVE_NOGRAV, COMSIG_MOB_ATTEMPT_HALT_SPACEMOVE, COMSIG_MOVABLE_DRIFT_BLOCK_INPUT)) STOP_PROCESSING(SSnewtonian_movement, src) user = null @@ -159,7 +159,7 @@ last_stabilization_tick = world.time - if (!should_trigger(user) || !stabilize || isnull(user.drift_handler)) + if (!should_trigger(user) || !stabilize || !check_on_move.Invoke(FALSE) || isnull(user.drift_handler)) return var/max_drift_force = MOVE_DELAY_TO_DRIFT(user.cached_multiplicative_slowdown) From 668464732e302cfa3194a0da7a38ad27b49da181 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Mon, 23 Dec 2024 19:52:45 +0000 Subject: [PATCH 090/126] Automatic changelog for PR #88552 [ci skip] --- html/changelogs/AutoChangeLog-pr-88552.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88552.yml diff --git a/html/changelogs/AutoChangeLog-pr-88552.yml b/html/changelogs/AutoChangeLog-pr-88552.yml new file mode 100644 index 0000000000000..5c0d4ba83e61d --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88552.yml @@ -0,0 +1,4 @@ +author: "SmArtKar" +delete-after: True +changes: + - bugfix: "Fixed moth wing stabilization working in zero-g as long as you keep moving" \ No newline at end of file From a46523adb68553a49be819eabce6966bc130eb29 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 00:25:59 +0000 Subject: [PATCH 091/126] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-88521.yml | 4 ---- html/changelogs/AutoChangeLog-pr-88552.yml | 4 ---- html/changelogs/AutoChangeLog-pr-88556.yml | 4 ---- html/changelogs/AutoChangeLog-pr-88628.yml | 4 ---- html/changelogs/AutoChangeLog-pr-88666.yml | 4 ---- html/changelogs/archive/2024-12.yml | 11 +++++++++++ 6 files changed, 11 insertions(+), 20 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-88521.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88552.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88556.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88628.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88666.yml diff --git a/html/changelogs/AutoChangeLog-pr-88521.yml b/html/changelogs/AutoChangeLog-pr-88521.yml deleted file mode 100644 index 4435358250283..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88521.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SmArtKar" -delete-after: True -changes: - - admin: "Admins can now return the shuttle back to the station without ending the round" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88552.yml b/html/changelogs/AutoChangeLog-pr-88552.yml deleted file mode 100644 index 5c0d4ba83e61d..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88552.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SmArtKar" -delete-after: True -changes: - - bugfix: "Fixed moth wing stabilization working in zero-g as long as you keep moving" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88556.yml b/html/changelogs/AutoChangeLog-pr-88556.yml deleted file mode 100644 index a4bffbbe12807..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88556.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "carlarctg" -delete-after: True -changes: - - rscadd: "Kissing while you have the ink infusion ability off cooldown gives you an ink kiss" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88628.yml b/html/changelogs/AutoChangeLog-pr-88628.yml deleted file mode 100644 index 267a741b68ed0..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88628.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SyncIt21" -delete-after: True -changes: - - bugfix: "rolling tables can be rolled up again" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88666.yml b/html/changelogs/AutoChangeLog-pr-88666.yml deleted file mode 100644 index 28c236c8187d1..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88666.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SmArtKar" -delete-after: True -changes: - - bugfix: "Fixed showers not passively washing objects" \ No newline at end of file diff --git a/html/changelogs/archive/2024-12.yml b/html/changelogs/archive/2024-12.yml index 3a7c86e40739d..d3055633ddf57 100644 --- a/html/changelogs/archive/2024-12.yml +++ b/html/changelogs/archive/2024-12.yml @@ -573,3 +573,14 @@ grungussuss: - code_imp: removed an extra proc override in digitigrade legs preference logic code +2024-12-24: + SmArtKar: + - admin: Admins can now return the shuttle back to the station without ending the + round + - bugfix: Fixed moth wing stabilization working in zero-g as long as you keep moving + - bugfix: Fixed showers not passively washing objects + SyncIt21: + - bugfix: rolling tables can be rolled up again + carlarctg: + - rscadd: Kissing while you have the ink infusion ability off cooldown gives you + an ink kiss From a2b1aa91788495a9460bc70047318c83c5b47f22 Mon Sep 17 00:00:00 2001 From: lovegreenstuff <59631103+lovegreenstuff@users.noreply.github.com> Date: Tue, 24 Dec 2024 00:51:58 -0800 Subject: [PATCH 092/126] plumbing catalyst storag (#88404) ## About The Pull Request see title also see video https://github.com/user-attachments/assets/23e2d128-1175-4779-87cf-74a4d4e6e1c1 ## Why It's Good For The Game doing in 1 machine what was once done by 3-4 is nicer for the chemist. less materials wasted and more space available to play around in. also has the side effect of making the output slightly higher since time spent transferring catalysts can now be spent on transferring reagents that are consumed instead ## Changelog :cl: add: catalyst function for plumbing reaction chambers /:cl: --------- Co-authored-by: SyncIt21 <VLord3D@gmail.com> --- code/datums/components/plumbing/_plumbing.dm | 2 + .../components/plumbing/reaction_chamber.dm | 16 +- .../plumbing/plumbers/_plumb_machinery.dm | 114 -------- .../plumbing/plumbers/_plumb_reagents.dm | 261 ++++++++++++++++++ .../plumbing/plumbers/reaction_chamber.dm | 60 +++- tgstation.dme | 1 + .../tgui/interfaces/ChemMixingChamber.tsx | 2 +- .../tgui/interfaces/ChemReactionChamber.tsx | 71 ++++- 8 files changed, 393 insertions(+), 134 deletions(-) create mode 100644 code/modules/plumbing/plumbers/_plumb_reagents.dm diff --git a/code/datums/components/plumbing/_plumbing.dm b/code/datums/components/plumbing/_plumbing.dm index a1be66654a2c0..ed916c29edf94 100644 --- a/code/datums/components/plumbing/_plumbing.dm +++ b/code/datums/components/plumbing/_plumbing.dm @@ -121,6 +121,8 @@ ///returns TRUE when they can give the specified amount and reagent. called by process request /datum/component/plumbing/proc/can_give(amount, reagent, datum/ductnet/net) + SHOULD_BE_PURE(TRUE) + if(amount <= 0) return diff --git a/code/datums/components/plumbing/reaction_chamber.dm b/code/datums/components/plumbing/reaction_chamber.dm index d0aff2f50708c..4f2acf4710a7e 100644 --- a/code/datums/components/plumbing/reaction_chamber.dm +++ b/code/datums/components/plumbing/reaction_chamber.dm @@ -8,20 +8,25 @@ return COMPONENT_INCOMPATIBLE /datum/component/plumbing/reaction_chamber/can_give(amount, reagent, datum/ductnet/net) - . = ..() var/obj/machinery/plumbing/reaction_chamber/reaction_chamber = parent - if(!. || !reaction_chamber.emptying || reagents.is_reacting) + + //cannot give when we outselves are requesting or reacting the reagents + if(!reaction_chamber.emptying || reagents.is_reacting) return FALSE + return ..() + /datum/component/plumbing/reaction_chamber/send_request(dir) var/obj/machinery/plumbing/reaction_chamber/chamber = parent + if(chamber.emptying) return //take in reagents var/present_amount var/diff - for(var/required_reagent in chamber.required_reagents) + var/list/datum/reagent/required_reagents = chamber.catalysts | chamber.required_reagents + for(var/datum/reagent/required_reagent as anything in required_reagents) //find how much amount is already present if at all and get the reagent reference present_amount = 0 for(var/datum/reagent/present_reagent as anything in reagents.reagent_list) @@ -30,10 +35,11 @@ break //compute how much more is needed - diff = min(chamber.required_reagents[required_reagent] - present_amount, MACHINE_REAGENT_TRANSFER) + diff = min(required_reagents[required_reagent] - present_amount, MACHINE_REAGENT_TRANSFER) if(diff >= CHEMICAL_QUANTISATION_LEVEL) // the closest we can ask for so values like 0.9999 become 1 process_request(diff, required_reagent, dir) - return + if(!chamber.catalysts[required_reagent]) //only block if not a catalyst as they can come in whenever they are available + return reagents.flags &= ~NO_REACT reagents.handle_reactions() diff --git a/code/modules/plumbing/plumbers/_plumb_machinery.dm b/code/modules/plumbing/plumbers/_plumb_machinery.dm index 33c063bbfed20..f16091cc21b26 100644 --- a/code/modules/plumbing/plumbers/_plumb_machinery.dm +++ b/code/modules/plumbing/plumbers/_plumb_machinery.dm @@ -102,117 +102,3 @@ user.balloon_alert_to_viewers("finished plunging") reagents.expose(get_turf(src), TOUCH) //splash on the floor reagents.clear_reagents() - -/** - * Specialized reagent container for plumbing. Uses the round robin approach of transferring reagents - * so transfer 5 from 15 water, 15 sugar and 15 plasma becomes 10, 15, 15 instead of 13.3333, 13.3333 13.3333. Good if you hate floating point errors - */ -/datum/reagents/plumbing - -/** - * Same as the parent trans_to except only a few arguments have impact here & the rest of the arguments are discarded. - * Arguments - * - * * atom/target - the target we are transfering to - * * amount - amount to transfer - * * datum/reagent/target_id - the reagent id we want to transfer. if null everything gets transfered - * * methods - this is key for deciding between round-robin or proportional transfer. It does not mean the same as the - * parent proc. LINEAR for round robin(in this technique reagents are missing/lost/not preserved when there isn't enough space to hold them) - * NONE means everything is transfered regardless of how much space is available in the receiver in proportions - */ -/datum/reagents/plumbing/trans_to( - atom/target, - amount = 1, - multiplier = 1, //unused for plumbing - datum/reagent/target_id, - preserve_data = TRUE, //unused for plumbing - no_react = FALSE, //unused for plumbing we always want reactions - mob/transferred_by, //unused for plumbing logging is not important inside plumbing machines - remove_blacklisted = FALSE, //unused for plumbing, we don't care what reagents are inside us - methods = LINEAR, //default round robin technique for transferring reagents - show_message = TRUE, //unused for plumbing, used for logging only - ignore_stomach = FALSE //unused for plumbing, reagents flow only between machines & is not injected to mobs at any point in time -) - if(QDELETED(target) || !total_volume) - return FALSE - - if(!IS_FINITE(amount)) - stack_trace("non finite amount passed to trans_to [amount] amount of reagents") - return FALSE - - if(!isnull(target_id) && !ispath(target_id)) - stack_trace("invalid target reagent id [target_id] passed to trans_to") - return FALSE - - var/datum/reagents/target_holder - if(istype(target, /datum/reagents)) - target_holder = target - else - target_holder = target.reagents - - // Prevents small amount problems, as well as zero and below zero amounts. - amount = round(min(amount, total_volume, target_holder.maximum_volume - target_holder.total_volume), CHEMICAL_QUANTISATION_LEVEL) - if(amount <= 0) - return FALSE - - //Set up new reagents to inherit the old ongoing reactions - transfer_reactions(target_holder) - - var/list/cached_reagents = reagent_list - var/list/reagents_to_remove = list() - var/transfer_amount - var/transfered_amount - var/total_transfered_amount = 0 - - var/round_robin = methods & LINEAR - var/part - var/to_transfer - if(round_robin) - to_transfer = amount - else - part = amount / total_volume - - //first add reagents to target - for(var/datum/reagent/reagent as anything in cached_reagents) - if(round_robin && !to_transfer) - break - - if(!isnull(target_id)) - if(reagent.type == target_id) - force_stop_reagent_reacting(reagent) - transfer_amount = min(amount, reagent.volume) - else - continue - else - if(round_robin) - transfer_amount = min(to_transfer, reagent.volume) - else - transfer_amount = reagent.volume * part - - if(reagent.intercept_reagents_transfer(target_holder, amount)) - update_total() - target_holder.update_total() - continue - - transfered_amount = target_holder.add_reagent(reagent.type, transfer_amount, copy_data(reagent), chem_temp, reagent.purity, reagent.ph, no_react = TRUE, ignore_splitting = reagent.chemical_flags & REAGENT_DONOTSPLIT) //we only handle reaction after every reagent has been transferred. - if(!transfered_amount) - continue - reagents_to_remove += list(list("R" = reagent, "T" = transfer_amount)) - total_transfered_amount += transfered_amount - if(round_robin) - to_transfer -= transfered_amount - - if(!isnull(target_id)) - break - - //remove chemicals that were added above - for(var/list/data as anything in reagents_to_remove) - var/datum/reagent/reagent = data["R"] - transfer_amount = data["T"] - remove_reagent(reagent.type, transfer_amount) - - //handle reactions - target_holder.handle_reactions() - src.handle_reactions() - - return round(total_transfered_amount, CHEMICAL_VOLUME_ROUNDING) diff --git a/code/modules/plumbing/plumbers/_plumb_reagents.dm b/code/modules/plumbing/plumbers/_plumb_reagents.dm new file mode 100644 index 0000000000000..4cce127c8b822 --- /dev/null +++ b/code/modules/plumbing/plumbers/_plumb_reagents.dm @@ -0,0 +1,261 @@ + +/** + * Specialized reagent container for plumbing. Uses the round robin approach of transferring reagents + * so transfer 5 from 15 water, 15 sugar and 15 plasma becomes 10, 15, 15 instead of 13.3333, 13.3333 13.3333. Good if you hate floating point errors + */ +/datum/reagents/plumbing + +/** + * Same as the parent trans_to except only a few arguments have impact here & the rest of the arguments are discarded. + * Arguments + * + * * atom/target - the target we are transfering to + * * amount - amount to transfer + * * datum/reagent/target_id - the reagent id we want to transfer. if null everything gets transfered + * * methods - this is key for deciding between round-robin or proportional transfer. It does not mean the same as the + * parent proc. LINEAR for round robin(in this technique reagents are missing/lost/not preserved when there isn't enough space to hold them) + * NONE means everything is transfered regardless of how much space is available in the receiver in proportions + */ +/datum/reagents/plumbing/trans_to( + atom/target, + amount = 1, + multiplier = 1, //unused for plumbing + datum/reagent/target_id, + preserve_data = TRUE, //unused for plumbing + no_react = FALSE, //unused for plumbing we always want reactions + mob/transferred_by, //unused for plumbing logging is not important inside plumbing machines + remove_blacklisted = FALSE, //unused for plumbing, we don't care what reagents are inside us + methods = LINEAR, //default round robin technique for transferring reagents + show_message = TRUE, //unused for plumbing, used for logging only + ignore_stomach = FALSE //unused for plumbing, reagents flow only between machines & is not injected to mobs at any point in time +) + if(QDELETED(target) || !total_volume) + return FALSE + + if(!IS_FINITE(amount)) + stack_trace("non finite amount passed to trans_to [amount] amount of reagents") + return FALSE + + if(!isnull(target_id) && !ispath(target_id)) + stack_trace("invalid target reagent id [target_id] passed to trans_to") + return FALSE + + var/datum/reagents/target_holder + if(istype(target, /datum/reagents)) + target_holder = target + else + target_holder = target.reagents + + // Prevents small amount problems, as well as zero and below zero amounts. + amount = round(min(amount, total_volume, target_holder.maximum_volume - target_holder.total_volume), CHEMICAL_QUANTISATION_LEVEL) + if(amount <= 0) + return FALSE + + //Set up new reagents to inherit the old ongoing reactions + transfer_reactions(target_holder) + + var/list/cached_reagents = reagent_list + var/list/reagents_to_remove = list() + var/transfer_amount + var/transfered_amount + var/total_transfered_amount = 0 + + var/round_robin = methods & LINEAR + var/part + var/to_transfer + if(round_robin) + to_transfer = amount + else + part = amount / total_volume + + //first add reagents to target + for(var/datum/reagent/reagent as anything in cached_reagents) + if(round_robin && !to_transfer) + break + + if(!isnull(target_id)) + if(reagent.type == target_id) + force_stop_reagent_reacting(reagent) + transfer_amount = min(amount, reagent.volume) + else + continue + else + if(round_robin) + transfer_amount = min(to_transfer, reagent.volume) + else + transfer_amount = reagent.volume * part + + if(reagent.intercept_reagents_transfer(target_holder, amount)) + update_total() + target_holder.update_total() + continue + + transfered_amount = target_holder.add_reagent(reagent.type, transfer_amount, copy_data(reagent), chem_temp, reagent.purity, reagent.ph, no_react = TRUE, ignore_splitting = reagent.chemical_flags & REAGENT_DONOTSPLIT) //we only handle reaction after every reagent has been transferred. + if(!transfered_amount) + continue + reagents_to_remove += list(list("R" = reagent, "T" = transfer_amount)) + total_transfered_amount += transfered_amount + if(round_robin) + to_transfer -= transfered_amount + + if(!isnull(target_id)) + break + + //remove chemicals that were added above + for(var/list/data as anything in reagents_to_remove) + var/datum/reagent/reagent = data["R"] + transfer_amount = data["T"] + remove_reagent(reagent.type, transfer_amount) + + //handle reactions + target_holder.handle_reactions() + src.handle_reactions() + + return round(total_transfered_amount, CHEMICAL_VOLUME_ROUNDING) + +///Excludes catalysts during the emptying process +/datum/reagents/plumbing/reaction_chamber + +///Returns the total volume of reagents without the catalysts +/datum/reagents/plumbing/reaction_chamber/proc/get_catalyst_excluded_volume() + SHOULD_NOT_OVERRIDE(TRUE) + + . = 0 + if(!total_volume) + return + + var/obj/machinery/plumbing/reaction_chamber/reactor = my_atom + var/list/datum/reagent/catalysts = reactor.catalysts + + var/working_volume + var/catalyst_volume + var/list/cached_reagents = reagent_list + for(var/datum/reagent/reagent as anything in cached_reagents) + catalyst_volume = catalysts[reagent.type] + working_volume = reagent.volume + + //regular reagent add to total as normal + if(!catalyst_volume) + . += working_volume + continue + + //only add the excess to total as that's what will get transferred + if(working_volume > catalyst_volume) + . += working_volume - catalyst_volume + . = min(round(., CHEMICAL_VOLUME_ROUNDING), maximum_volume) + +/datum/reagents/plumbing/reaction_chamber/trans_to( + atom/target, + amount = 1, + multiplier = 1, + datum/reagent/target_id, + preserve_data = TRUE, + no_react = FALSE, + mob/transferred_by, + remove_blacklisted = FALSE, + methods = LINEAR, + show_message = TRUE, + ignore_stomach = FALSE +) + var/obj/machinery/plumbing/reaction_chamber/reactor = my_atom + var/list/datum/reagent/catalysts = reactor.catalysts + + //usual stuff + if(!catalysts.len) + return ..() + + if(QDELETED(target)) + return FALSE + + if(!IS_FINITE(amount)) + stack_trace("non finite amount passed to trans_to [amount] amount of reagents") + return FALSE + + if(!isnull(target_id) && !ispath(target_id)) + stack_trace("invalid target reagent id [target_id] passed to trans_to") + return FALSE + + var/datum/reagents/target_holder + if(istype(target, /datum/reagents)) + target_holder = target + else + target_holder = target.reagents + var/list/cached_reagents = reagent_list + + var/actual_volume = get_catalyst_excluded_volume() + + // Prevents small amount problems, as well as zero and below zero amounts. + amount = round(min(amount, actual_volume, target_holder.maximum_volume - target_holder.total_volume), CHEMICAL_QUANTISATION_LEVEL) + if(amount <= 0) + return FALSE + + //Set up new reagents to inherit the old ongoing reactions + transfer_reactions(target_holder) + + var/list/reagents_to_remove = list() + var/working_volume + var/catalyst_volume + var/transfer_amount + var/transfered_amount + var/total_transfered_amount = 0 + + var/round_robin = methods & LINEAR + var/part + var/to_transfer + if(round_robin) + to_transfer = amount + else + part = amount / actual_volume + + //first add reagents to target + for(var/datum/reagent/reagent as anything in cached_reagents) + if(round_robin && !to_transfer) + break + working_volume = reagent.volume + + catalyst_volume = catalysts[reagent.type] + if(catalyst_volume) //we have a working catalyst + if(reagent.volume <= catalyst_volume) //dont transfer since we have the required volume + continue + else + working_volume -= catalyst_volume //dump out the excess + + if(!isnull(target_id)) + if(reagent.type == target_id) + force_stop_reagent_reacting(reagent) + transfer_amount = min(amount, working_volume) + else + continue + else + if(round_robin) + transfer_amount = min(to_transfer, working_volume) + else + transfer_amount = working_volume * part + + if(reagent.intercept_reagents_transfer(target_holder, amount)) + update_total() + target_holder.update_total() + continue + + transfered_amount = target_holder.add_reagent(reagent.type, transfer_amount, copy_data(reagent), chem_temp, reagent.purity, reagent.ph, no_react = TRUE, ignore_splitting = reagent.chemical_flags & REAGENT_DONOTSPLIT) //we only handle reaction after every reagent has been transferred. + if(!transfered_amount) + continue + reagents_to_remove += list(list("R" = reagent, "T" = transfer_amount)) + total_transfered_amount += transfered_amount + if(round_robin) + to_transfer -= transfered_amount + + if(!isnull(target_id)) + break + + //remove chemicals that were added above + for(var/list/data as anything in reagents_to_remove) + var/datum/reagent/reagent = data["R"] + transfer_amount = data["T"] + remove_reagent(reagent.type, transfer_amount) + + //handle reactions + target_holder.handle_reactions() + src.handle_reactions() + + return round(total_transfered_amount, CHEMICAL_VOLUME_ROUNDING) diff --git a/code/modules/plumbing/plumbers/reaction_chamber.dm b/code/modules/plumbing/plumbers/reaction_chamber.dm index 9828c9e697f85..551b95fc0b7d7 100644 --- a/code/modules/plumbing/plumbers/reaction_chamber.dm +++ b/code/modules/plumbing/plumbers/reaction_chamber.dm @@ -9,19 +9,23 @@ icon_state = "reaction_chamber" buffer = 200 reagent_flags = TRANSPARENT | NO_REACT + reagents = /datum/reagents/plumbing/reaction_chamber /** * list of set reagents that the reaction_chamber allows in, and must all be present before mixing is enabled. * example: list(/datum/reagent/water = 20, /datum/reagent/fuel/oil = 50) */ - var/list/required_reagents = list() - + var/list/datum/reagent/required_reagents = list() + ///list of catalyst reagents to take + var/list/datum/reagent/catalysts = list() ///our reagent goal has been reached, so now we lock our inputs and start emptying var/emptying = FALSE - ///towards which temperature do we build (except during draining)? var/target_temperature = 300 +/obj/machinery/plumbing/reaction_chamber/Destroy() + return ..() + /obj/machinery/plumbing/reaction_chamber/Initialize(mapload, bolt, layer) . = ..() AddComponent(/datum/component/plumbing/reaction_chamber, bolt, layer) @@ -36,15 +40,17 @@ SIGNAL_HANDLER UnregisterSignal(reagents, list(COMSIG_REAGENTS_REM_REAGENT, COMSIG_REAGENTS_DEL_REAGENT, COMSIG_REAGENTS_CLEAR_REAGENTS, COMSIG_REAGENTS_REACTED, COMSIG_QDELETING)) + return NONE /// Handles stopping the emptying process when the chamber empties. -/obj/machinery/plumbing/reaction_chamber/proc/on_reagent_change(datum/reagents/holder, ...) +/obj/machinery/plumbing/reaction_chamber/proc/on_reagent_change(datum/reagents/plumbing/reaction_chamber/holder, ...) SIGNAL_HANDLER - if(!holder.total_volume && emptying) //we were emptying, but now we aren't + if(!holder.get_catalyst_excluded_volume() && emptying) //we were emptying, but now we aren't emptying = FALSE holder.flags |= NO_REACT + return NONE /obj/machinery/plumbing/reaction_chamber/process(seconds_per_tick) @@ -60,8 +66,15 @@ //do other stuff with final solution handle_reagents(seconds_per_tick) -///For subtypes that want to do additional reagent handling +/** + * For subtypes that want to do additional reagent handling + * Arguments + * + * * seconds_per_tick - passed down from process() + */ /obj/machinery/plumbing/reaction_chamber/proc/handle_reagents(seconds_per_tick) + PROTECTED_PROC(TRUE) + return /obj/machinery/plumbing/reaction_chamber/power_change() @@ -81,11 +94,21 @@ var/list/reagents_data = list() for(var/datum/reagent/required_reagent as anything in required_reagents) //make a list where the key is text, because that looks alot better in the ui than a typepath var/list/reagent_data = list() + if(catalysts[required_reagent]) + continue reagent_data["name"] = initial(required_reagent.name) reagent_data["volume"] = required_reagents[required_reagent] reagents_data += list(reagent_data) + var/list/catalyst_data = list() + for(var/datum/reagent/required_catalyst as anything in catalysts) + var/list/reagent_data = list() + reagent_data["name"] = initial(required_catalyst.name) + reagent_data["volume"] = catalysts[required_catalyst] + catalyst_data += list(reagent_data) + .["reagents"] = reagents_data + .["catalysts"] = catalyst_data .["emptying"] = emptying .["temperature"] = round(reagents.chem_temp, 0.1) .["targetTemp"] = target_temperature @@ -108,9 +131,9 @@ if(!input_reagent) return FALSE - if(!required_reagents.Find(input_reagent)) + if(!required_reagents[input_reagent]) var/input_amount = text2num(params["amount"]) - if(!isnull(input_amount)) + if(input_amount) required_reagents[input_reagent] = input_amount return TRUE return FALSE @@ -129,6 +152,25 @@ return TRUE return FALSE + if("catalyst") + var/reagent = get_chem_id(params["chem"]) + + if(!reagent) + return FALSE + + if(reagent && !catalysts[reagent]) + catalysts[reagent] = required_reagents[reagent] + return TRUE + else + return FALSE + + if("catremove") + var/reagent = get_chem_id(params["chem"]) + if(reagent) + catalysts -= reagent + return TRUE + return FALSE + var/result = handle_ui_act(action, params, ui, state) if(isnull(result)) result = FALSE @@ -136,6 +178,8 @@ /// For custom handling of ui actions from inside a subtype /obj/machinery/plumbing/reaction_chamber/proc/handle_ui_act(action, params, datum/tgui/ui, datum/ui_state/state) + PROTECTED_PROC(TRUE) + return null ///Chemistry version of reaction chamber that allows for acid and base buffers to be used while reacting diff --git a/tgstation.dme b/tgstation.dme index 269325a558b54..0080adde3560a 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -5529,6 +5529,7 @@ #include "code\modules\photography\photos\photo.dm" #include "code\modules\plumbing\ducts.dm" #include "code\modules\plumbing\plumbers\_plumb_machinery.dm" +#include "code\modules\plumbing\plumbers\_plumb_reagents.dm" #include "code\modules\plumbing\plumbers\acclimator.dm" #include "code\modules\plumbing\plumbers\bottler.dm" #include "code\modules\plumbing\plumbers\destroyer.dm" diff --git a/tgui/packages/tgui/interfaces/ChemMixingChamber.tsx b/tgui/packages/tgui/interfaces/ChemMixingChamber.tsx index 765862ab4b86c..2f9a9cd901630 100644 --- a/tgui/packages/tgui/interfaces/ChemMixingChamber.tsx +++ b/tgui/packages/tgui/interfaces/ChemMixingChamber.tsx @@ -13,7 +13,7 @@ import { BooleanLike } from 'tgui-core/react'; import { useBackend } from '../backend'; import { Window } from '../layouts'; -type Reagent = { +export type Reagent = { name: string; volume: number; }; diff --git a/tgui/packages/tgui/interfaces/ChemReactionChamber.tsx b/tgui/packages/tgui/interfaces/ChemReactionChamber.tsx index cdc2b6fac97b9..255e669efcf04 100644 --- a/tgui/packages/tgui/interfaces/ChemReactionChamber.tsx +++ b/tgui/packages/tgui/interfaces/ChemReactionChamber.tsx @@ -13,12 +13,13 @@ import { round, toFixed } from 'tgui-core/math'; import { useBackend } from '../backend'; import { Window } from '../layouts'; -import { MixingData } from './ChemMixingChamber'; +import { MixingData, Reagent } from './ChemMixingChamber'; type ReactingData = MixingData & { ph: number; reagentAcidic: number; reagentAlkaline: number; + catalysts: Reagent[]; }; export const ChemReactionChamber = (props) => { @@ -36,8 +37,9 @@ export const ChemReactionChamber = (props) => { reagentAlkaline, } = data; const reagents = data.reagents || []; + const catalysts = data.catalysts || []; return ( - <Window width={290} height={400}> + <Window width={290} height={520}> <Window.Content> <Stack vertical fill> <Stack.Item> @@ -130,8 +132,9 @@ export const ChemReactionChamber = (props) => { <Stack.Item grow> <Section title="Settings" - fill - scrollable + height="220px" + maxHeight="220px" + overflow="hidden" buttons={ (isReacting && ( <Box inline bold color={'purple'}> @@ -189,7 +192,6 @@ export const ChemReactionChamber = (props) => { <Stack fill> <Stack.Item grow> <Button - content="Add Reagent" color="good" icon="plus" onClick={() => @@ -197,7 +199,9 @@ export const ChemReactionChamber = (props) => { amount: reagentQuantity, }) } - /> + > + Add Reagent + </Button> </Stack.Item> <Stack.Item> <NumberInput @@ -224,6 +228,24 @@ export const ChemReactionChamber = (props) => { <Stack.Item mt={0.25} grow> {reagent.volume} </Stack.Item> + + <Stack.Item> + <Button + color="transparent" + tooltip={` + This button converts this reagent entry into a catalyst. + Catalyst reagents are not removed from the reaction chamber + on completion. Useful for certain reactions.`} + tooltipPosition="bottom-start" + onClick={() => + act('catalyst', { + chem: reagent.name, + }) + } + > + C + </Button> + </Stack.Item> <Stack.Item> <Button icon="minus" @@ -243,6 +265,43 @@ export const ChemReactionChamber = (props) => { </Stack> </Section> </Stack.Item> + <Stack.Item> + <Section + title="Catalysts" + height="150px" + maxHeight="150px" + overflow="hidden" + > + <Stack.Item> + <Stack vertical fill> + {catalysts.map((reagent) => ( + <Stack.Item key={reagent.name}> + <Stack fill> + <Stack.Item mt={0.25} textColor="label"> + {reagent.name + ':'} + </Stack.Item> + <Stack.Item mt={0.25} grow> + {reagent.volume} + </Stack.Item> + <Stack.Item> + <Button + color="bad" + onClick={() => + act('catremove', { + chem: reagent.name, + }) + } + > + C + </Button> + </Stack.Item> + </Stack> + </Stack.Item> + ))} + </Stack> + </Stack.Item> + </Section> + </Stack.Item> </Stack> </Window.Content> </Window> From 5cae186c73b4da5aa8ab0abbee92851f31bc32b6 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 08:52:17 +0000 Subject: [PATCH 093/126] Automatic changelog for PR #88404 [ci skip] --- html/changelogs/AutoChangeLog-pr-88404.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88404.yml diff --git a/html/changelogs/AutoChangeLog-pr-88404.yml b/html/changelogs/AutoChangeLog-pr-88404.yml new file mode 100644 index 0000000000000..0e26dc409bf11 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88404.yml @@ -0,0 +1,4 @@ +author: "lovegreenstuff" +delete-after: True +changes: + - rscadd: "catalyst function for plumbing reaction chambers" \ No newline at end of file From 49fcd0f11db18b28c87649f4d2eb4859978c83a8 Mon Sep 17 00:00:00 2001 From: Ghom <42542238+Ghommie@users.noreply.github.com> Date: Tue, 24 Dec 2024 17:30:44 +0100 Subject: [PATCH 094/126] [NO GBP] Fixed aquariums auto-feeding (#88660) Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> --- code/datums/components/aquarium.dm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/code/datums/components/aquarium.dm b/code/datums/components/aquarium.dm index f207ecd9f5510..69939cb67b92e 100644 --- a/code/datums/components/aquarium.dm +++ b/code/datums/components/aquarium.dm @@ -100,11 +100,12 @@ ADD_KEEP_TOGETHER(movable, AQUARIUM_TRAIT) //render the fish on the same layer of the aquarium. if(reagents_size > 0) - RegisterSignal(movable.reagents, COMSIG_REAGENTS_NEW_REAGENT, PROC_REF(start_autofeed)) if(!movable.reagents) movable.create_reagents(reagents_size, SEALED_CONTAINER) - else if(movable.reagents.total_volume) + if(movable.reagents.total_volume) start_autofeed(movable.reagents) + else + RegisterSignal(movable.reagents, COMSIG_REAGENTS_NEW_REAGENT, PROC_REF(start_autofeed)) RegisterSignal(movable, COMSIG_PLUNGER_ACT, PROC_REF(on_plunger_act)) RegisterSignal(movable, COMSIG_ATOM_ITEM_INTERACTION, PROC_REF(on_item_interaction)) @@ -240,10 +241,10 @@ return ITEM_INTERACT_SUCCESS ///Called when the feed storage is no longer empty. -/datum/component/aquarium/proc/start_autofeed(atom/movable/source, new_reagent, amount, reagtemp, data, no_react) +/datum/component/aquarium/proc/start_autofeed(datum/reagents/source, new_reagent, amount, reagtemp, data, no_react) SIGNAL_HANDLER START_PROCESSING(SSobj, src) - UnregisterSignal(source.reagents, COMSIG_REAGENTS_NEW_REAGENT) + UnregisterSignal(source, COMSIG_REAGENTS_NEW_REAGENT) ///Feed the fish at defined intervals until the feed storage is empty. /datum/component/aquarium/process(seconds_per_tick) From 73febdadae0b21d15f78b19d7ec90471591b2c5d Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 16:31:03 +0000 Subject: [PATCH 095/126] Automatic changelog for PR #88660 [ci skip] --- html/changelogs/AutoChangeLog-pr-88660.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88660.yml diff --git a/html/changelogs/AutoChangeLog-pr-88660.yml b/html/changelogs/AutoChangeLog-pr-88660.yml new file mode 100644 index 0000000000000..e8c6f88b58fca --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88660.yml @@ -0,0 +1,4 @@ +author: "Ghommie" +delete-after: True +changes: + - bugfix: "Fixed aquariums auto-feeding." \ No newline at end of file From de07fe3e25f501291df836c92beede4dd265d9d8 Mon Sep 17 00:00:00 2001 From: grungussuss <96586172+Sadboysuss@users.noreply.github.com> Date: Tue, 24 Dec 2024 20:02:01 +0300 Subject: [PATCH 096/126] Computers can act like cover and will no longer never allow projectiles to pass over them (much l like barricades) (#88646) Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com> --- code/game/machinery/computer/_computer.dm | 19 +++++++++++++++++++ .../game/machinery/computer/arcade/_arcade.dm | 1 + .../machinery/computer/records/medical.dm | 1 + .../machinery/computer/records/security.dm | 1 + code/game/machinery/computer/telescreen.dm | 1 + code/game/machinery/constructable_frame.dm | 5 +++++ 6 files changed, 28 insertions(+) diff --git a/code/game/machinery/computer/_computer.dm b/code/game/machinery/computer/_computer.dm index eb48792a523bc..d51e197a0bcdd 100644 --- a/code/game/machinery/computer/_computer.dm +++ b/code/game/machinery/computer/_computer.dm @@ -19,6 +19,8 @@ var/time_to_unscrew = 2 SECONDS /// Are we authenticated to use this? Used by things like comms console, security and medical data, and apc controller. var/authenticated = FALSE + /// Will projectiles be able to pass over this computer? + var/projectiles_pass_chance = 65 /datum/armor/machinery_computer fire = 40 @@ -28,6 +30,23 @@ . = ..() power_change() +/obj/machinery/computer/CanAllowThrough(atom/movable/mover, border_dir) // allows projectiles to fly over the computer + . = ..() + if(.) + return + if(!projectiles_pass_chance) + return FALSE + if(!isprojectile(mover)) + return FALSE + var/obj/projectile/proj = mover + if(!anchored) + return TRUE + if(proj.firer && Adjacent(proj.firer)) + return TRUE + if(prob(projectiles_pass_chance)) + return TRUE + return FALSE + /obj/machinery/computer/process() if(machine_stat & (NOPOWER|BROKEN)) return FALSE diff --git a/code/game/machinery/computer/arcade/_arcade.dm b/code/game/machinery/computer/arcade/_arcade.dm index eb91fa44f1c70..1627a3d0fe81b 100644 --- a/code/game/machinery/computer/arcade/_arcade.dm +++ b/code/game/machinery/computer/arcade/_arcade.dm @@ -7,6 +7,7 @@ icon_screen = "invaders" light_color = LIGHT_COLOR_GREEN interaction_flags_machine = INTERACT_MACHINE_ALLOW_SILICON|INTERACT_MACHINE_REQUIRES_LITERACY + projectiles_pass_chance = 0 // I guess gambling can save your life huh? ///If set, will dispense these as prizes instead of the default GLOB.arcade_prize_pool ///Like prize pool, it must be a list of the prize and the weight of being selected. diff --git a/code/game/machinery/computer/records/medical.dm b/code/game/machinery/computer/records/medical.dm index 6dd12acbdb678..c5f11ec89ca7c 100644 --- a/code/game/machinery/computer/records/medical.dm +++ b/code/game/machinery/computer/records/medical.dm @@ -18,6 +18,7 @@ icon_screen = "medlaptop" icon_keyboard = "laptop_key" pass_flags = PASSTABLE + projectiles_pass_chance = 100 /obj/machinery/computer/records/medical/attacked_by(obj/item/attacking_item, mob/living/user) . = ..() diff --git a/code/game/machinery/computer/records/security.dm b/code/game/machinery/computer/records/security.dm index 89f49cf754b8a..693bd7daa7185 100644 --- a/code/game/machinery/computer/records/security.dm +++ b/code/game/machinery/computer/records/security.dm @@ -27,6 +27,7 @@ icon_screen = "seclaptop" icon_keyboard = "laptop_key" pass_flags = PASSTABLE + projectiles_pass_chance = 100 /obj/machinery/computer/records/security/laptop/syndie desc = "A cheap, jailbroken security laptop. It functions as a security records console. It's bolted to the table." diff --git a/code/game/machinery/computer/telescreen.dm b/code/game/machinery/computer/telescreen.dm index f3a6a9879b4d1..3b96ae111fba3 100644 --- a/code/game/machinery/computer/telescreen.dm +++ b/code/game/machinery/computer/telescreen.dm @@ -12,6 +12,7 @@ light_power = 0 /// The kind of wallframe that this telescreen drops var/frame_type = /obj/item/wallframe/telescreen + projectiles_pass_chance = 100 /obj/item/wallframe/telescreen name = "telescreen frame" diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index b90302111ab7b..0a41adcac98f2 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -22,6 +22,11 @@ if(circuit) . += "It has \a [circuit] installed." +/obj/structure/frame/CanAllowThrough(atom/movable/mover, border_dir) + if(isprojectile(mover)) + return TRUE + return ..() + /obj/structure/frame/atom_deconstruct(disassembled = TRUE) var/atom/movable/drop_loc = drop_location() new /obj/item/stack/sheet/iron(drop_loc, 5) From 211a881d45e14d812c15c2824bfb486957de3e5e Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 17:02:23 +0000 Subject: [PATCH 097/126] Automatic changelog for PR #88646 [ci skip] --- html/changelogs/AutoChangeLog-pr-88646.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88646.yml diff --git a/html/changelogs/AutoChangeLog-pr-88646.yml b/html/changelogs/AutoChangeLog-pr-88646.yml new file mode 100644 index 0000000000000..cbd53fa0fe35a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88646.yml @@ -0,0 +1,5 @@ +author: "grungussuss" +delete-after: True +changes: + - balance: "computers can now be used as cover, firing a projectile over them is now possible, while they may block projectiles if you are not adjacent to them when firing." + - bugfix: "computer laptops will not block projectiles" \ No newline at end of file From eeadfda40c3ff078436fb05175538c158a66dc69 Mon Sep 17 00:00:00 2001 From: KazooBard <65713506+KazooBard@users.noreply.github.com> Date: Tue, 24 Dec 2024 18:56:59 +0100 Subject: [PATCH 098/126] Lowers cooldown on hotkey spell selection (#88503) --- code/__DEFINES/combat.dm | 1 + code/datums/actions/action.dm | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/code/__DEFINES/combat.dm b/code/__DEFINES/combat.dm index 5cb838603c98e..867d8a51d4163 100644 --- a/code/__DEFINES/combat.dm +++ b/code/__DEFINES/combat.dm @@ -98,6 +98,7 @@ DEFINE_BITFIELD(status_flags, list( #define CLICK_CD_RAPID 2 #define CLICK_CD_HYPER_RAPID 1 #define CLICK_CD_SLOW 10 +#define CLICK_CD_ACTIVATE_ABILITY 1 #define CLICK_CD_THROW 8 #define CLICK_CD_RANGE 4 diff --git a/code/datums/actions/action.dm b/code/datums/actions/action.dm index 2f297f480ae66..18525a8c04e94 100644 --- a/code/datums/actions/action.dm +++ b/code/datums/actions/action.dm @@ -435,5 +435,5 @@ if(source.next_click > world.time) return else - source.next_click = world.time + CLICK_CD_RANGE + source.next_click = world.time + CLICK_CD_ACTIVATE_ABILITY INVOKE_ASYNC(src, PROC_REF(Trigger)) From 789980cfb9b2f3c34dd4f51c32bbac4ebf8639c2 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 17:57:18 +0000 Subject: [PATCH 099/126] Automatic changelog for PR #88503 [ci skip] --- html/changelogs/AutoChangeLog-pr-88503.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88503.yml diff --git a/html/changelogs/AutoChangeLog-pr-88503.yml b/html/changelogs/AutoChangeLog-pr-88503.yml new file mode 100644 index 0000000000000..ab4287205b27a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88503.yml @@ -0,0 +1,4 @@ +author: "KazooBard" +delete-after: True +changes: + - qol: "Selecting which spells to cast with hotkeys, and using them in general is faster." \ No newline at end of file From fe5398b368ff7685a476dc98e7afb4e02950b73f Mon Sep 17 00:00:00 2001 From: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Date: Tue, 24 Dec 2024 11:57:54 -0600 Subject: [PATCH 100/126] Navigate verb now indicates areas above or below you (#88505) --- code/modules/mob/living/navigation.dm | 44 +++++++++++++++++---------- 1 file changed, 28 insertions(+), 16 deletions(-) diff --git a/code/modules/mob/living/navigation.dm b/code/modules/mob/living/navigation.dm index a18342c445616..fea7d9a787153 100644 --- a/code/modules/mob/living/navigation.dm +++ b/code/modules/mob/living/navigation.dm @@ -24,40 +24,50 @@ addtimer(CALLBACK(src, PROC_REF(create_navigation)), world.tick_lag) /mob/living/proc/create_navigation() + var/can_go_down = SSmapping.level_trait(z, ZTRAIT_DOWN) + var/can_go_up = SSmapping.level_trait(z, ZTRAIT_UP) var/list/destination_list = list() - for(var/atom/destination in GLOB.navigate_destinations) - if(!isatom(destination) || destination.z != z || get_dist(destination, src) > MAX_NAVIGATE_RANGE) + for(var/atom/destination as anything in GLOB.navigate_destinations) + if(get_dist(destination, src) > MAX_NAVIGATE_RANGE) continue var/destination_name = GLOB.navigate_destinations[destination] + if(destination.z != z && (can_go_down || can_go_up)) // up or down is just a good indicator "we're on the station", we don't need to check specifics + destination_name += ((get_dir_multiz(src, destination) & UP) ? " (Above)" : " (Below)") + destination_list[destination_name] = destination - if(!is_reserved_level(z)) //don't let us path to nearest staircase or ladder on shuttles in transit - if(z > 1) - destination_list["Nearest Way Down"] = DOWN - if(z < world.maxz) - destination_list["Nearest Way Up"] = UP + if(can_go_down) + destination_list["Nearest Way Down"] = DOWN + if(can_go_up) + destination_list["Nearest Way Up"] = UP if(!length(destination_list)) balloon_alert(src, "no navigation signals!") return var/platform_code = tgui_input_list(src, "Select a location", "Navigate", sort_list(destination_list)) - var/navigate_target = destination_list[platform_code] + var/atom/navigate_target = destination_list[platform_code] - if(isnull(navigate_target)) - return - if(incapacitated) + if(isnull(navigate_target) || incapacitated) return - COOLDOWN_START(src, navigate_cooldown, 15 SECONDS) - if(navigate_target == UP || navigate_target == DOWN) - var/new_target = find_nearest_stair_or_ladder(navigate_target) + + var/finding_zchange = FALSE + COOLDOWN_START(src, navigate_cooldown, 15 SECONDS) + if(navigate_target == UP || navigate_target == DOWN || (isatom(navigate_target) && navigate_target.z != z)) + // lowering the cooldown to 5 seconds if we're navigating to a ladder or staircase instead of a proper destination + // (so we can decide to move to another destination right off the bat, rather than needing to wait) + COOLDOWN_START(src, navigate_cooldown, 5 SECONDS) + var/direction_name = isatom(navigate_target) ? "there" : (navigate_target == UP ? "up" : "down") + var/nav_dir = isatom(navigate_target) ? (get_dir_multiz(src, navigate_target) & (UP|DOWN)) : navigate_target + var/atom/new_target = find_nearest_stair_or_ladder(nav_dir) if(!new_target) - balloon_alert(src, "can't find ladder or staircase going [navigate_target == UP ? "up" : "down"]!") + balloon_alert(src, "can't find ladder or staircase going [direction_name]!") return navigate_target = new_target + finding_zchange = TRUE if(!isatom(navigate_target)) stack_trace("Navigate target ([navigate_target]) is not an atom, somehow.") @@ -92,6 +102,8 @@ animate(path_image, 0.5 SECONDS, alpha = 150) addtimer(CALLBACK(src, PROC_REF(shine_navigation)), 0.5 SECONDS) RegisterSignal(src, COMSIG_LIVING_DEATH, PROC_REF(cut_navigation)) + if(finding_zchange) + RegisterSignal(src, COMSIG_MOVABLE_Z_CHANGED, PROC_REF(cut_navigation)) balloon_alert(src, "navigation path created") /mob/living/proc/shine_navigation() @@ -107,7 +119,7 @@ for(var/image/navigation_path in client.navigation_images) client.images -= navigation_path client.navigation_images.Cut() - UnregisterSignal(src, COMSIG_LIVING_DEATH) + UnregisterSignal(src, list(COMSIG_LIVING_DEATH, COMSIG_MOVABLE_Z_CHANGED)) /** * Finds nearest ladder or staircase either up or down. From 91ac612707b0e796522c45ab1b01eb20b92c12a5 Mon Sep 17 00:00:00 2001 From: larentoun <31931237+larentoun@users.noreply.github.com> Date: Tue, 24 Dec 2024 20:58:02 +0300 Subject: [PATCH 101/126] Renames UpdatePath script name for consistency (#88520) --- .../{repaths_a357_to_c357.txt => 88095_repaths_a357_to_c357.txt} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename tools/UpdatePaths/Scripts/{repaths_a357_to_c357.txt => 88095_repaths_a357_to_c357.txt} (100%) diff --git a/tools/UpdatePaths/Scripts/repaths_a357_to_c357.txt b/tools/UpdatePaths/Scripts/88095_repaths_a357_to_c357.txt similarity index 100% rename from tools/UpdatePaths/Scripts/repaths_a357_to_c357.txt rename to tools/UpdatePaths/Scripts/88095_repaths_a357_to_c357.txt From edf19efecde5967f7d7f69bed28e4453491af3b0 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 17:58:19 +0000 Subject: [PATCH 102/126] Automatic changelog for PR #88505 [ci skip] --- html/changelogs/AutoChangeLog-pr-88505.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88505.yml diff --git a/html/changelogs/AutoChangeLog-pr-88505.yml b/html/changelogs/AutoChangeLog-pr-88505.yml new file mode 100644 index 0000000000000..1ac4f6cb6788a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88505.yml @@ -0,0 +1,5 @@ +author: "Melbert" +delete-after: True +changes: + - qol: "Navigate verb better indicates areas on a separate level. Selecting an area on a different level will direct you to the nearest staircase (as with \"Nearest Way Up/Down\")" + - qol: "Navigating to a staircase or ladder will shorten the cooldown of navigate and clear your existing path for you upon finding it" \ No newline at end of file From 60b03d74aab79ee64dfd80a41bd8d155083b7f86 Mon Sep 17 00:00:00 2001 From: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Date: Tue, 24 Dec 2024 12:09:10 -0600 Subject: [PATCH 103/126] Lava ignores thrown mobs (#88640) --- code/game/turfs/open/lava.dm | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/code/game/turfs/open/lava.dm b/code/game/turfs/open/lava.dm index 2ec0b8e9a9c42..a71ed37f374f9 100644 --- a/code/game/turfs/open/lava.dm +++ b/code/game/turfs/open/lava.dm @@ -266,12 +266,9 @@ /turf/open/lava/proc/can_burn_stuff(atom/movable/burn_target) if(QDELETED(burn_target)) return LAVA_BE_IGNORING - if(burn_target.movement_type & MOVETYPES_NOT_TOUCHING_GROUND || !burn_target.has_gravity()) //you're flying over it. + if((burn_target.movement_type & MOVETYPES_NOT_TOUCHING_GROUND) || burn_target.throwing || !burn_target.has_gravity()) //you're flying over it. return LAVA_BE_IGNORING - if(isobj(burn_target)) - if(burn_target.throwing) // to avoid gulag prisoners easily escaping, throwing only works for objects. - return LAVA_BE_IGNORING var/obj/burn_obj = burn_target if((burn_obj.resistance_flags & immunity_resistance_flags)) return LAVA_BE_PROCESSING @@ -285,7 +282,7 @@ var/mob/living/burn_living = burn_target var/atom/movable/burn_buckled = burn_living.buckled if(burn_buckled) - if(burn_buckled.movement_type & MOVETYPES_NOT_TOUCHING_GROUND || !burn_buckled.has_gravity()) + if((burn_buckled.movement_type & MOVETYPES_NOT_TOUCHING_GROUND) || burn_buckled.throwing || !burn_buckled.has_gravity()) return LAVA_BE_PROCESSING if(isobj(burn_buckled)) var/obj/burn_buckled_obj = burn_buckled From ead9df466e700d585bcbe8274b7bedbad14598ba Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 18:09:51 +0000 Subject: [PATCH 104/126] Automatic changelog for PR #88640 [ci skip] --- html/changelogs/AutoChangeLog-pr-88640.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88640.yml diff --git a/html/changelogs/AutoChangeLog-pr-88640.yml b/html/changelogs/AutoChangeLog-pr-88640.yml new file mode 100644 index 0000000000000..ef98c0c7323af --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88640.yml @@ -0,0 +1,4 @@ +author: "Melbert" +delete-after: True +changes: + - balance: "Lava no longer burns mobs thrown over it" \ No newline at end of file From 7705cca72be4e822909ba9adfe5e77d893b223a0 Mon Sep 17 00:00:00 2001 From: araeotu <a192020688@gmail.com> Date: Wed, 25 Dec 2024 02:10:04 +0800 Subject: [PATCH 105/126] Add circuit component for slime processor (#88463) Co-authored-by: Arae <230020345@stu.vtc.edu.hk> --- .../food_and_drinks/machinery/processor.dm | 50 ++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-) diff --git a/code/modules/food_and_drinks/machinery/processor.dm b/code/modules/food_and_drinks/machinery/processor.dm index 383a7c34e2756..03c42761da379 100644 --- a/code/modules/food_and_drinks/machinery/processor.dm +++ b/code/modules/food_and_drinks/machinery/processor.dm @@ -143,10 +143,14 @@ if(!LAZYLEN(processor_contents)) to_chat(user, span_warning("[src] is empty!")) return TRUE - processing = TRUE user.visible_message(span_notice("[user] turns on [src]."), \ span_notice("You turn on [src]."), \ span_hear("You hear a food processor.")) + processing() + + +/obj/machinery/processor/proc/processing() + processing = TRUE playsound(src.loc, 'sound/machines/blender.ogg', 50, TRUE) use_energy(active_power_usage) var/total_time = 0 @@ -197,6 +201,12 @@ desc = "An industrial grinder with a sticker saying appropriated for science department. Keep hands clear of intake area while operating." circuit = /obj/item/circuitboard/machine/processor/slime +/obj/machinery/processor/slime/Initialize(mapload) + . = ..() + AddComponent(/datum/component/usb_port, list( + /obj/item/circuit_component/slime_processor, + )) + /obj/machinery/processor/slime/adjust_item_drop_location(atom/movable/atom_to_drop) var/static/list/slimecores = subtypesof(/obj/item/slime_extract) var/i = 0 @@ -249,4 +259,42 @@ SSblackbox.record_feedback("tally", "slime_core_harvested", 1, processed_slime.slime_type.colour) return ..() +/obj/item/circuit_component/slime_processor + display_name = "Slime Processor" + desc = "Allows to activate process and get the amount of processor contents." + circuit_flags = CIRCUIT_FLAG_INPUT_SIGNAL|CIRCUIT_FLAG_OUTPUT_SIGNAL + + ///Activate process + var/datum/port/input/active + ///Amount of processor contents + var/datum/port/output/amount + + var/obj/machinery/processor/slime/attached_processor + +/obj/item/circuit_component/slime_processor/populate_ports() + active = add_input_port("Activate", PORT_TYPE_SIGNAL, trigger = PROC_REF(activate)) + amount = add_output_port("Amount", PORT_TYPE_NUMBER) + +/obj/item/circuit_component/slime_processor/register_usb_parent(atom/movable/parent) + . = ..() + if(istype(parent, /obj/machinery/processor/slime)) + attached_processor = parent + +/obj/item/circuit_component/slime_processor/unregister_usb_parent(atom/movable/parent) + attached_processor = null + return ..() + +/obj/item/circuit_component/slime_processor/proc/activate() + SIGNAL_HANDLER + input_received() + if(attached_processor.processing) + return + if(!LAZYLEN(attached_processor.processor_contents)) + return + attached_processor.processing() + +/obj/item/circuit_component/slime_processor/input_received() + var/list/contents = attached_processor.processor_contents + amount.set_output(LAZYLEN(contents)) + #undef PROCESSOR_SELECT_RECIPE From a2c82670c2f3adbb211d57999684e1b1bd91ea34 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 18:17:54 +0000 Subject: [PATCH 106/126] Automatic changelog for PR #88463 [ci skip] --- html/changelogs/AutoChangeLog-pr-88463.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88463.yml diff --git a/html/changelogs/AutoChangeLog-pr-88463.yml b/html/changelogs/AutoChangeLog-pr-88463.yml new file mode 100644 index 0000000000000..09ba5ff91e503 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88463.yml @@ -0,0 +1,5 @@ +author: "araeotu" +delete-after: True +changes: + - rscadd: "slime processor now have usb port and circuit component" + - code_imp: "the process code of processor now separate from interact" \ No newline at end of file From 78bb4f44cf299b7f51f5e48c52e4b7f2152c4385 Mon Sep 17 00:00:00 2001 From: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Date: Tue, 24 Dec 2024 23:59:41 +0530 Subject: [PATCH 107/126] Fixes big manipulator manipulating laws of physics (#88677) --- code/game/machinery/big_manipulator.dm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/code/game/machinery/big_manipulator.dm b/code/game/machinery/big_manipulator.dm index 21a7de89fe619..a14a6b8531174 100644 --- a/code/game/machinery/big_manipulator.dm +++ b/code/game/machinery/big_manipulator.dm @@ -288,7 +288,12 @@ target.forceMove(drop_turf) target.dir = get_dir(get_turf(target), get_turf(src)) else - target.forceMove(where_we_drop) + var/atom/drop_target = where_we_drop + if(drop_target.atom_storage) + if(!drop_target.atom_storage.attempt_insert(target, override = TRUE, messages = FALSE)) + target.forceMove(drop_target.drop_location()) + else + target.forceMove(where_we_drop) finish_manipulation() /// 3.3 take and drop proc from [take and drop procs loop]: From 900bba2c1ba2fff8359a6678cf1757fa81dd3f0e Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 18:30:09 +0000 Subject: [PATCH 108/126] Automatic changelog for PR #88677 [ci skip] --- html/changelogs/AutoChangeLog-pr-88677.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88677.yml diff --git a/html/changelogs/AutoChangeLog-pr-88677.yml b/html/changelogs/AutoChangeLog-pr-88677.yml new file mode 100644 index 0000000000000..9489b57d3c01e --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88677.yml @@ -0,0 +1,4 @@ +author: "SyncIt21" +delete-after: True +changes: + - bugfix: "Big manipulator respects storage limits of storages when dropping stuff into them" \ No newline at end of file From 946a481c8181473e06bf8b3cc56ad369dc0eda00 Mon Sep 17 00:00:00 2001 From: Lucy <lucy@absolucy.moe> Date: Tue, 24 Dec 2024 14:31:00 -0500 Subject: [PATCH 109/126] Fix tgui chat panel z-fighting on BYOND 516 (#88663) ## About The Pull Request Port of https://github.com/ParadiseSS13/Paradise/pull/27676 and https://github.com/VOREStation/VOREStation/pull/16734 > Instead of relying on `is-disabled` and `is-visible`, which BYOND happily will automatically change for you whenever you send a client text, we now use a Child element to swap between the legacy output and browser output in separate preset panes. > > TL;DR: chat would flash white under 516, now doesn't I cleared cache before each test video below, just to be 100% sure <details> <summary>Testing Evidence: BYOND 515</summary> https://github.com/user-attachments/assets/8d661cc3-585e-4f8e-9399-76df8bc0a281 </details> <details> <summary>Testing Evidence: BYOND 516</summary> https://github.com/user-attachments/assets/c0d31fb4-6ef5-4d49-81a8-c767c5e24cc2 </details> ## Why It's Good For The Game flickering chat hurts my eyes ## Changelog :cl: Absolucy, ShadowLarkens, S34N fix: Fixed chat rapidly flickering in BYOND 516. /:cl: --- code/modules/tgui_panel/external.dm | 9 +++---- interface/skin.dmf | 42 ++++++++++++++++++++++++----- tgui/packages/tgui-panel/index.tsx | 10 ++----- 3 files changed, 41 insertions(+), 20 deletions(-) diff --git a/code/modules/tgui_panel/external.dm b/code/modules/tgui_panel/external.dm index 3e7dbc3178f2a..e48ddeb223904 100644 --- a/code/modules/tgui_panel/external.dm +++ b/code/modules/tgui_panel/external.dm @@ -19,22 +19,19 @@ // Failed to fix, using tgalert as fallback action = tgalert(src, "Did that work?", "", "Yes", "No, switch to old ui") if (action == "No, switch to old ui") - winset(src, "output", "on-show=&is-disabled=0&is-visible=1") - winset(src, "browseroutput", "is-disabled=1;is-visible=0") + winset(src, "legacy_output_selector", "left=output_legacy") log_tgui(src, "Failed to fix.", context = "verb/fix_tgui_panel") /client/proc/nuke_chat() // Catch all solution (kick the whole thing in the pants) - winset(src, "output", "on-show=&is-disabled=0&is-visible=1") - winset(src, "browseroutput", "is-disabled=1;is-visible=0") + winset(src, "legacy_output_selector", "left=output_legacy") if(!tgui_panel || !istype(tgui_panel)) log_tgui(src, "tgui_panel datum is missing", context = "verb/fix_tgui_panel") tgui_panel = new(src) tgui_panel.initialize(force = TRUE) // Force show the panel to see if there are any errors - winset(src, "output", "is-disabled=1&is-visible=0") - winset(src, "browseroutput", "is-disabled=0;is-visible=1") + winset(src, "legacy_output_selector", "left=output_browser") /client/verb/refresh_tgui() set name = "Refresh TGUI" diff --git a/interface/skin.dmf b/interface/skin.dmf index 584c88b8d5bc2..7bf5d6b58a713 100644 --- a/interface/skin.dmf +++ b/interface/skin.dmf @@ -224,7 +224,7 @@ window "infowindow" window "outputwindow" elem "outputwindow" type = MAIN - pos = 281,0 + pos = 0,0 size = 640x480 anchor1 = -1,-1 anchor2 = -1,-1 @@ -281,15 +281,26 @@ window "outputwindow" command = ".winset \"mebutton.is-checked=true ? input.command=\"!me \\\"\" : input.command=\"\"mebutton.is-checked=true ? saybutton.is-checked=false\"\"mebutton.is-checked=true ? oocbutton.is-checked=false\"" is-flat = true button-type = pushbox - elem "browseroutput" - type = BROWSER + elem "legacy_output_selector" + type = CHILD pos = 0,0 size = 640x456 anchor1 = 0,0 anchor2 = 100,100 - is-visible = false - is-disabled = true - saved-params = "" + saved-params = "splitter" + left = "output_legacy" + is-vert = false + +window "output_legacy" + elem "output_legacy" + type = MAIN + pos = 0,0 + size = 640x456 + anchor1 = -1,-1 + anchor2 = -1,-1 + background-color = none + saved-params = "pos;size;is-minimized;is-maximized" + is-pane = true elem "output" type = OUTPUT pos = 0,0 @@ -299,6 +310,25 @@ window "outputwindow" is-default = true saved-params = "" +window "output_browser" + elem "output_browser" + type = MAIN + pos = 0,0 + size = 640x456 + anchor1 = -1,-1 + anchor2 = -1,-1 + background-color = none + saved-params = "pos;size;is-minimized;is-maximized" + is-pane = true + elem "browseroutput" + type = BROWSER + pos = 0,0 + size = 640x456 + anchor1 = 0,0 + anchor2 = 100,100 + background-color = none + saved-params = "" + window "popupwindow" elem "popupwindow" type = MAIN diff --git a/tgui/packages/tgui-panel/index.tsx b/tgui/packages/tgui-panel/index.tsx index a70a53bac251e..9fccceb4d2178 100644 --- a/tgui/packages/tgui-panel/index.tsx +++ b/tgui/packages/tgui-panel/index.tsx @@ -75,14 +75,8 @@ const setupApp = () => { Byond.subscribe((type, payload) => store.dispatch({ type, payload })); // Unhide the panel - Byond.winset('output', { - 'is-visible': false, - }); - Byond.winset('browseroutput', { - 'is-visible': true, - 'is-disabled': false, - pos: '0x0', - size: '0x0', + Byond.winset('legacy_output_selector', { + left: 'output_browser', }); // Resize the panel to match the non-browser output From 7a817300fd90ea53e4a476f0e119066cf8425646 Mon Sep 17 00:00:00 2001 From: Aylong <69762909+AyIong@users.noreply.github.com> Date: Tue, 24 Dec 2024 21:32:38 +0200 Subject: [PATCH 110/126] Improve and extend `fieldset_block` and `examine_block` (#88678) ## About The Pull Request Maked `fieldset_block` and `examine_block` more stylish and neat, also `fieldset_block` no longer has a centred title. Renamed `examine_block` to `boxed_message` and adds `custom_boxed_message` which can be colored. - AdminPMs, admin tickets and vote results has been wrapped into `fieldset_block` for comfort and visibility - Health Analyzer results painted to blue - Vote notice and tips of the round wrapped to purple `custom_boxed_message` - Tooltip text border color, now uses text color, not just white ## Why It's Good For The Game Demonstration in both themes <details><summary>Dark</summary>    </details> <details><summary>Light</summary>    </details> ## Changelog :cl: qol: AdminPMs, admin tickets, vote results and started vote notification are now much more visible in the chat. qol: Boxed messages in chat (like examine), has been restyled. /:cl: --- code/__DEFINES/chat.dm | 8 +- code/__HELPERS/game.dm | 2 +- code/_onclick/hud/alert.dm | 2 +- code/controllers/subsystem/map_vote.dm | 4 +- code/controllers/subsystem/polling.dm | 2 +- code/controllers/subsystem/vote.dm | 6 +- code/datums/ai_laws/ai_laws.dm | 2 +- code/datums/components/trader/trader.dm | 4 +- code/datums/elements/slapcrafting.dm | 4 +- code/datums/elements/weapon_description.dm | 2 +- code/datums/mind/skills.dm | 2 +- code/datums/mood.dm | 2 +- code/datums/votes/_vote_datum.dm | 9 ++- .../objects/items/AI_modules/_AI_modules.dm | 2 +- code/game/objects/items/devices/flashlight.dm | 2 +- .../items/devices/scanners/gas_analyzer.dm | 2 +- .../items/devices/scanners/health_analyzer.dm | 8 +- .../items/devices/scanners/slime_scanner.dm | 2 +- code/modules/admin/topic.dm | 2 +- code/modules/admin/verbs/adminhelp.dm | 7 +- code/modules/admin/verbs/adminpm.dm | 28 ++----- code/modules/admin/verbs/mapping.dm | 2 +- code/modules/buildmode/submodes/advanced.dm | 2 +- code/modules/buildmode/submodes/area_edit.dm | 2 +- code/modules/buildmode/submodes/basic.dm | 2 +- code/modules/buildmode/submodes/boom.dm | 2 +- code/modules/buildmode/submodes/copy.dm | 2 +- code/modules/buildmode/submodes/delete.dm | 2 +- code/modules/buildmode/submodes/fill.dm | 2 +- code/modules/buildmode/submodes/map_export.dm | 2 +- code/modules/buildmode/submodes/mapgen.dm | 2 +- code/modules/buildmode/submodes/outfit.dm | 2 +- code/modules/buildmode/submodes/proccall.dm | 2 +- code/modules/buildmode/submodes/smite.dm | 2 +- code/modules/buildmode/submodes/throwing.dm | 2 +- code/modules/buildmode/submodes/tweakcomps.dm | 2 +- .../buildmode/submodes/variable_edit.dm | 2 +- code/modules/client/verbs/who.dm | 2 +- code/modules/clothing/clothing.dm | 2 +- code/modules/clothing/neck/_neck.dm | 2 +- code/modules/fishing/fishing_rod.dm | 6 +- code/modules/hydroponics/hydroitemdefines.dm | 16 ++-- code/modules/jobs/job_types/_job.dm | 2 +- code/modules/lootpanel/misc.dm | 2 +- code/modules/mob/emote.dm | 2 +- .../basic/space_fauna/revenant/_revenant.dm | 2 +- code/modules/mob/living/carbon/human/human.dm | 4 +- .../mob/living/carbon/human/human_defense.dm | 2 +- code/modules/mob/living/carbon/human/login.dm | 2 +- code/modules/mob/living/silicon/laws.dm | 2 +- code/modules/mob/mob.dm | 4 +- code/modules/reagents/chemistry/items.dm | 2 +- .../chemistry/machinery/reagentgrinder.dm | 2 +- .../research/xenobiology/xenobio_camera.dm | 2 +- .../tgui-panel/styles/tgchat/chat-dark.scss | 78 +++++++++++++++++-- .../tgui-panel/styles/tgchat/chat-light.scss | 42 ++++++++-- 56 files changed, 196 insertions(+), 114 deletions(-) diff --git a/code/__DEFINES/chat.dm b/code/__DEFINES/chat.dm index 516fe8c4e193a..80fb1a07eccf3 100644 --- a/code/__DEFINES/chat.dm +++ b/code/__DEFINES/chat.dm @@ -44,9 +44,11 @@ /// Used for debug messages to the server #define debug_world_log(msg) if (GLOB.Debug2) log_world("DEBUG: [msg]") /// Adds a generic box around whatever message you're sending in chat. Really makes things stand out. -#define examine_block(str) ("<div class='examine_block'>" + str + "</div>") -/// Makes a fieldset with a name in the middle top part. Can apply additional classes -#define fieldset_block(title, content, classes) ("<fieldset class='" + classes + "'><legend align='center' style='max-width: 95%; text-align: center;'><div style='margin: 0em 0.2em -0.4em 0.2em;' >" + title + "</div></legend>" + content + "</fieldset>") +#define boxed_message(str) ("<div class='boxed_message'>" + str + "</div>") +/// Adds a box around whatever message you're sending in chat. Can apply color and/or additional classes. Available colors: red, green, blue, purple. Use it like red_box +#define custom_boxed_message(classes, str) ("<div class='boxed_message " + classes + "'>" + str + "</div>") +/// Makes a fieldset with a neaty styled name. Can apply additional classes. +#define fieldset_block(title, content, classes) ("<fieldset class='fieldset " + classes + "'><legend class='fieldset_legend'>" + title + "</legend>" + content + "</fieldset>") /// Makes a horizontal line with text in the middle #define separator_hr(str) ("<div class='separator'>" + str + "</div>") /// Emboldens runechat messages diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index 2c285a348fac2..9b80dbfc169c4 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -349,4 +349,4 @@ message = html_encode(message) else message = copytext(message, 2) - to_chat(target, span_purple(examine_block("<span class='oocplain'><b>[source]: </b>[message]</span>"))) + to_chat(target, custom_boxed_message("purple_box", span_purple("<span class='oocplain'><b>[source]: </b>[message]</span>"))) diff --git a/code/_onclick/hud/alert.dm b/code/_onclick/hud/alert.dm index 7cab2074c5485..6b6c6bc9050ab 100644 --- a/code/_onclick/hud/alert.dm +++ b/code/_onclick/hud/alert.dm @@ -1136,7 +1136,7 @@ or shoot a gun to move around via Newton's 3rd Law of Motion." return FALSE var/list/modifiers = params2list(params) if(LAZYACCESS(modifiers, SHIFT_CLICK)) // screen objects don't do the normal Click() stuff so we'll cheat - to_chat(usr, examine_block(jointext(examine(usr), "\n"))) + to_chat(usr, boxed_message(jointext(examine(usr), "\n"))) return FALSE var/datum/our_master = master_ref?.resolve() if(our_master && click_master) diff --git a/code/controllers/subsystem/map_vote.dm b/code/controllers/subsystem/map_vote.dm index ced1e65e3a215..f57d73d773e63 100644 --- a/code/controllers/subsystem/map_vote.dm +++ b/code/controllers/subsystem/map_vote.dm @@ -53,7 +53,7 @@ SUBSYSTEM_DEF(map_vote) last_message_at = world.time var/list/messages = args.Copy() - to_chat(world, span_purple(examine_block("Map Vote\n<hr>[messages.Join("\n")]"))) + to_chat(world, span_purple(boxed_message("Map Vote\n<hr>[messages.Join("\n")]"))) /datum/controller/subsystem/map_vote/proc/finalize_map_vote(datum/vote/map_vote/map_vote) if(already_voted) @@ -170,4 +170,4 @@ SUBSYSTEM_DEF(map_vote) for(var/map_id in map_vote_cache) var/datum/map_config/map = config.maplist[map_id] data += "[map.map_name] - [map_vote_cache[map_id]]" - tally_printout = examine_block("Current Tallies\n<hr>[data.Join("\n")]") + tally_printout = boxed_message("Current Tallies\n<hr>[data.Join("\n")]") diff --git a/code/controllers/subsystem/polling.dm b/code/controllers/subsystem/polling.dm index c9c7d3ea31167..5cb81498c3df9 100644 --- a/code/controllers/subsystem/polling.dm +++ b/code/controllers/subsystem/polling.dm @@ -165,7 +165,7 @@ SUBSYSTEM_DEF(polling) else surrounding_image = image(chat_text_border_icon) surrounding_icon = icon2html(surrounding_image, candidate_mob, extra_classes = "bigicon") - var/final_message = examine_block("<span style='text-align:center;display:block'>[surrounding_icon] <span style='font-size:1.2em'>[span_ooc(question)]</span> [surrounding_icon]\n[act_jump] [act_signup] [act_never]</span>") + var/final_message = boxed_message("<span style='text-align:center;display:block'>[surrounding_icon] <span style='font-size:1.2em'>[span_ooc(question)]</span> [surrounding_icon]\n[act_jump] [act_signup] [act_never]</span>") to_chat(candidate_mob, final_message) // Start processing it so it updates visually the timer diff --git a/code/controllers/subsystem/vote.dm b/code/controllers/subsystem/vote.dm index d0e642bd3aa2d..d9d796782c2b2 100644 --- a/code/controllers/subsystem/vote.dm +++ b/code/controllers/subsystem/vote.dm @@ -119,7 +119,7 @@ SUBSYSTEM_DEF(vote) ) log_vote("vote finalized", vote_log_data) if(to_display) - to_chat(world, span_infoplain(vote_font("\n[to_display]"))) + to_chat(world, span_infoplain(vote_font("[to_display]"))) // Finally, doing any effects on vote completion current_vote.finalize_vote(final_winner) @@ -230,9 +230,9 @@ SUBSYSTEM_DEF(vote) var/to_display = current_vote.initiate_vote(vote_initiator_name, duration) log_vote(to_display) - to_chat(world, span_infoplain(vote_font("\n[span_bold(to_display)]\n\ + to_chat(world, custom_boxed_message("purple_box center", span_infoplain(vote_font("[span_bold(to_display)]<br>\ Type <b>vote</b> or click <a href='byond://winset?command=vote'>here</a> to place your votes.\n\ - You have [DisplayTimeText(duration)] to vote."))) + You have [DisplayTimeText(duration)] to vote.")))) // And now that it's going, give everyone a voter action for(var/client/new_voter as anything in GLOB.clients) diff --git a/code/datums/ai_laws/ai_laws.dm b/code/datums/ai_laws/ai_laws.dm index a0d1d629fc8d3..a25f7e694a9ad 100644 --- a/code/datums/ai_laws/ai_laws.dm +++ b/code/datums/ai_laws/ai_laws.dm @@ -442,7 +442,7 @@ GLOBAL_VAR(round_default_lawset) /datum/ai_laws/proc/show_laws(mob/to_who) var/list/printable_laws = get_law_list(include_zeroth = TRUE) - to_chat(to_who, examine_block(jointext(printable_laws, "\n"))) + to_chat(to_who, boxed_message(jointext(printable_laws, "\n"))) /datum/ai_laws/proc/associate(mob/living/silicon/M) if(owner) diff --git a/code/datums/components/trader/trader.dm b/code/datums/components/trader/trader.dm index d623a9943b893..3b2675785aec3 100644 --- a/code/datums/components/trader/trader.dm +++ b/code/datums/components/trader/trader.dm @@ -394,7 +394,7 @@ Can accept both a type path, and an instance of a datum. Type path has priority. else buy_info += span_notice("• [initial(thing.name)] for [product_info[TRADER_PRODUCT_INFO_PRICE]] [trader_data.currency_name][product_info[TRADER_PRODUCT_INFO_PRICE_MOD_DESCRIPTION]]; willing to buy [span_green("[tern_op_result]")]") - to_chat(customer, examine_block(buy_info.Join("\n"))) + to_chat(customer, boxed_message(buy_info.Join("\n"))) ///Displays to the customer what the trader is selling and how much is in stock /datum/component/trader/proc/trader_sells_what(mob/customer) @@ -413,7 +413,7 @@ Can accept both a type path, and an instance of a datum. Type path has priority. sell_info += span_notice("• [span_red("(OUT OF STOCK)")] [initial(thing.name)] for [product_info[TRADER_PRODUCT_INFO_PRICE]] [trader_data.currency_name]; [span_red("[tern_op_result]")] left in stock") else sell_info += span_notice("• [initial(thing.name)] for [product_info[TRADER_PRODUCT_INFO_PRICE]] [trader_data.currency_name]; [span_green("[tern_op_result]")] left in stock") - to_chat(customer, examine_block(sell_info.Join("\n"))) + to_chat(customer, boxed_message(sell_info.Join("\n"))) ///Sets quantity of all products to initial(quanity); this proc is currently called during initialize /datum/component/trader/proc/restock_products() diff --git a/code/datums/elements/slapcrafting.dm b/code/datums/elements/slapcrafting.dm index 4b58bddd2a0f4..925b2fd575597 100644 --- a/code/datums/elements/slapcrafting.dm +++ b/code/datums/elements/slapcrafting.dm @@ -180,7 +180,7 @@ // If we did find ingredients then add them onto the list. if(length(string_ingredient_list)) to_chat(user, span_boldnotice("Extra Ingredients:")) - to_chat(user, examine_block(span_notice(string_ingredient_list))) + to_chat(user, boxed_message(span_notice(string_ingredient_list))) var/list/tool_list = "" @@ -194,7 +194,7 @@ if(length(tool_list)) to_chat(user, span_boldnotice("Required Tools:")) - to_chat(user, examine_block(span_notice(tool_list))) + to_chat(user, boxed_message(span_notice(tool_list))) qdel(cur_recipe) diff --git a/code/datums/elements/weapon_description.dm b/code/datums/elements/weapon_description.dm index 64d044fb74a3d..110a490b5ca12 100644 --- a/code/datums/elements/weapon_description.dm +++ b/code/datums/elements/weapon_description.dm @@ -57,7 +57,7 @@ SIGNAL_HANDLER if(href_list["examine"]) - to_chat(user, span_notice(examine_block("[build_label_text(source)]"))) + to_chat(user, span_notice(boxed_message("[build_label_text(source)]"))) /** * diff --git a/code/datums/mind/skills.dm b/code/datums/mind/skills.dm index 474291d5ae0d4..80a78c3d950f2 100644 --- a/code/datums/mind/skills.dm +++ b/code/datums/mind/skills.dm @@ -75,4 +75,4 @@ var/datum/skill/the_skill = i msg += "[initial(the_skill.name)] - [get_skill_level_name(the_skill)]\n" msg += "</span>" - to_chat(user, examine_block(msg)) + to_chat(user, boxed_message(msg)) diff --git a/code/datums/mood.dm b/code/datums/mood.dm index d3f2ac70861e0..e10be827eb279 100644 --- a/code/datums/mood.dm +++ b/code/datums/mood.dm @@ -389,7 +389,7 @@ msg += span_boldnicegreen(event.description + "\n") else msg += "[span_grey("I don't have much of a reaction to anything right now.")]\n" - to_chat(user, examine_block(msg)) + to_chat(user, boxed_message(msg)) /// Updates the mob's moodies, if the area provides a mood bonus /datum/mood/proc/check_area_mood(datum/source, area/new_area) diff --git a/code/datums/votes/_vote_datum.dm b/code/datums/votes/_vote_datum.dm index 76833f73ff5b0..957160dea7d3e 100644 --- a/code/datums/votes/_vote_datum.dm +++ b/code/datums/votes/_vote_datum.dm @@ -170,13 +170,14 @@ * Return a formatted string of text to be displayed to everyone. */ /datum/vote/proc/get_result_text(list/all_winners, real_winner, list/non_voters) + var/title_text = "" var/returned_text = "" if(override_question) - returned_text += span_bold(override_question) + title_text += span_bold(override_question) else - returned_text += span_bold("[capitalize(name)] Vote") + title_text += span_bold("[capitalize(name)] Vote") - returned_text += "\nWinner Selection: " + returned_text += "Winner Selection: " switch(winner_method) if(VOTE_WINNER_METHOD_NONE) returned_text += "None" @@ -215,7 +216,7 @@ returned_text += "\n" returned_text += get_winner_text(all_winners, real_winner, non_voters) - return returned_text + return fieldset_block(title_text, returned_text, "boxed_message purple_box") /** * Gets the text that displays the winning options within the result text. diff --git a/code/game/objects/items/AI_modules/_AI_modules.dm b/code/game/objects/items/AI_modules/_AI_modules.dm index a7f8dbb1798c0..905443569b2eb 100644 --- a/code/game/objects/items/AI_modules/_AI_modules.dm +++ b/code/game/objects/items/AI_modules/_AI_modules.dm @@ -36,7 +36,7 @@ /obj/item/ai_module/attack_self(mob/user as mob) ..() - to_chat(user, examine_block(display_laws())) + to_chat(user, boxed_message(display_laws())) /// Returns a text display of the laws for the module. /obj/item/ai_module/proc/display_laws() diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index 94b7e14fe80fb..943896f29f4be 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -267,7 +267,7 @@ if(length(render_list)) //display our packaged information in an examine block for easy reading - to_chat(user, examine_block(jointext(render_list, "")), type = MESSAGE_TYPE_INFO) + to_chat(user, boxed_message(jointext(render_list, "")), type = MESSAGE_TYPE_INFO) return ITEM_INTERACT_SUCCESS return ITEM_INTERACT_BLOCKING diff --git a/code/game/objects/items/devices/scanners/gas_analyzer.dm b/code/game/objects/items/devices/scanners/gas_analyzer.dm index 112833877c4d3..8fc6ff4426bba 100644 --- a/code/game/objects/items/devices/scanners/gas_analyzer.dm +++ b/code/game/objects/items/devices/scanners/gas_analyzer.dm @@ -220,7 +220,7 @@ message += span_notice("Volume: [volume] L") // don't want to change the order volume appears in, suck it // we let the join apply newlines so we do need handholding - to_chat(user, examine_block(jointext(message, "\n")), type = MESSAGE_TYPE_INFO) + to_chat(user, boxed_message(jointext(message, "\n")), type = MESSAGE_TYPE_INFO) return TRUE /obj/item/analyzer/ranged diff --git a/code/game/objects/items/devices/scanners/health_analyzer.dm b/code/game/objects/items/devices/scanners/health_analyzer.dm index 3535bef007407..83d7df3a75a05 100644 --- a/code/game/objects/items/devices/scanners/health_analyzer.dm +++ b/code/game/objects/items/devices/scanners/health_analyzer.dm @@ -81,7 +81,7 @@ floor_text += "<span class='info ml-1'>Body temperature: [scan_turf?.return_air()?.return_temperature() || "???"]</span><br>" if(user.can_read(src) && !user.is_blind()) - to_chat(user, examine_block(floor_text)) + to_chat(user, custom_boxed_message("blue_box", floor_text)) last_scan_text = floor_text return @@ -410,7 +410,7 @@ . = jointext(render_list, "") if(tochat) - to_chat(user, examine_block(.), trailing_newline = FALSE, type = MESSAGE_TYPE_INFO) + to_chat(user, custom_boxed_message("blue_box", .), trailing_newline = FALSE, type = MESSAGE_TYPE_INFO) return . /obj/item/healthanalyzer/click_ctrl_shift(mob/user) @@ -507,7 +507,7 @@ render_list += "<span class='alert ml-2'>[allergies]</span><br>" // we handled the last <br> so we don't need handholding - to_chat(user, examine_block(jointext(render_list, "")), trailing_newline = FALSE, type = MESSAGE_TYPE_INFO) + to_chat(user, custom_boxed_message("blue_box", jointext(render_list, "")), trailing_newline = FALSE, type = MESSAGE_TYPE_INFO) /obj/item/healthanalyzer/click_alt(mob/user) if(mode == SCANNER_NO_MODE) @@ -558,7 +558,7 @@ simple_scanner.show_emotion(AID_EMOTION_HAPPY) to_chat(user, "<span class='notice ml-1'>No wounds detected in subject.</span>") else - to_chat(user, examine_block(jointext(render_list, "")), type = MESSAGE_TYPE_INFO) + to_chat(user, custom_boxed_message("blue_box", jointext(render_list, "")), type = MESSAGE_TYPE_INFO) if(simple_scan) var/obj/item/healthanalyzer/simple/simple_scanner = scanner simple_scanner.show_emotion(AID_EMOTION_WARN) diff --git a/code/game/objects/items/devices/scanners/slime_scanner.dm b/code/game/objects/items/devices/scanners/slime_scanner.dm index 79050f0a78c67..c355da8ba7d4a 100644 --- a/code/game/objects/items/devices/scanners/slime_scanner.dm +++ b/code/game/objects/items/devices/scanners/slime_scanner.dm @@ -57,4 +57,4 @@ to_render += "\n[span_notice("Core mutation in progress: [scanned_slime.crossbreed_modification]")]\ \n[span_notice("Progress in core mutation: [scanned_slime.applied_crossbreed_amount] / [SLIME_EXTRACT_CROSSING_REQUIRED]")]" - to_chat(user, examine_block(jointext(to_render,""))) + to_chat(user, boxed_message(jointext(to_render,""))) diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index f517a7a7a51cb..0ea5e67fbf71f 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -847,7 +847,7 @@ exportable_text += "[special_role_description]<br>" exportable_text += ADMIN_FULLMONTY_NONAME(subject) - to_chat(src.owner, examine_block(exportable_text), confidential = TRUE) + to_chat(src.owner, boxed_message(exportable_text), confidential = TRUE) else if(href_list["addjobslot"]) if(!check_rights(R_ADMIN)) diff --git a/code/modules/admin/verbs/adminhelp.dm b/code/modules/admin/verbs/adminhelp.dm index a389980f533fd..4ff36ec2d0130 100644 --- a/code/modules/admin/verbs/adminhelp.dm +++ b/code/modules/admin/verbs/adminhelp.dm @@ -403,7 +403,12 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) msg = sanitize(copytext_char(msg, 1, MAX_MESSAGE_LEN)) var/ref_src = "[REF(src)]" //Message to be sent to all admins - var/admin_msg = span_adminnotice(span_adminhelp("Ticket [TicketHref("#[id]", ref_src)]</span><b>: [LinkedReplyName(ref_src)] [FullMonty(ref_src)]:</b> [span_linkify(keywords_lookup(msg))]")) + var/admin_msg = fieldset_block( + span_adminhelp("Ticket [TicketHref("#[id]", ref_src)]"), + "<b>[LinkedReplyName(ref_src)]</b>\n\n\ + [span_linkify(keywords_lookup(msg))]\n\n\ + <b class='smaller'>[FullMonty(ref_src)]</b>", + "boxed_message red_box") AddInteraction("<font color='red'>[LinkedReplyName(ref_src)]: [msg]</font>", player_message = "<font color='red'>[LinkedReplyName(ref_src)]: [msg]</font>") log_admin_private("Ticket #[id]: [key_name(initiator)]: [msg]") diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index abbcbb62ab648..4b668082d4ba1 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -387,20 +387,11 @@ ADMIN_VERB(cmd_admin_pm_panel, R_NONE, "Admin PM", "Show a list of clients to PM recipient_ticket_id = recipient_ticket?.id SSblackbox.LogAhelp(recipient_ticket_id, "Ticket Opened", send_message, recipient.ckey, src.ckey) - to_chat(recipient, - type = MESSAGE_TYPE_ADMINPM, - html = "<font color='red' size='4'><b>-- Administrator private message --</b></font>", - confidential = TRUE) - recipient.receive_ahelp( link_to_us, span_linkify(send_message), ) - to_chat(recipient, - type = MESSAGE_TYPE_ADMINPM, - html = span_adminsay("<i>Click on the administrator's name to reply.</i>"), - confidential = TRUE) to_chat(src, type = MESSAGE_TYPE_ADMINPM, html = span_notice("Admin PM to-<b>[their_name_with_link]</b>: [span_linkify(send_message)]"), @@ -707,21 +698,11 @@ ADMIN_VERB(cmd_admin_pm_panel, R_NONE, "Admin PM", "Show a list of clients to PM message_admins("External message from [sender] to [recipient_name_linked] : [message]") log_admin_private("External PM: [sender] -> [recipient_name] : [message]") - to_chat(recipient, - type = MESSAGE_TYPE_ADMINPM, - html = "<font color='red' size='4'><b>-- Administrator private message --</b></font>", - confidential = TRUE) - recipient.receive_ahelp( "<a href='?priv_msg=[stealthkey]'>[adminname]</a>", message, ) - to_chat(recipient, - type = MESSAGE_TYPE_ADMINPM, - html = span_adminsay("<i>Click on the administrator's name to reply.</i>"), - confidential = TRUE) - admin_ticket_log(recipient, "<font color='purple'>PM From [tgs_tagged]: [message]</font>", log_in_blackbox = FALSE) window_flash(recipient, ignorepref = TRUE) @@ -766,8 +747,13 @@ ADMIN_VERB(cmd_admin_pm_panel, R_NONE, "Admin PM", "Show a list of clients to PM to_chat( src, type = MESSAGE_TYPE_ADMINPM, - html = "<span class='[span_class]'>Admin PM from-<b>[reply_to]</b>: [message]</span>", - confidential = TRUE, + html = fieldset_block( + span_adminhelp("Administrator private message"), + "<span class='[span_class]'>Admin PM from-<b>[reply_to]</b></span>\n\n\ + <span class='[span_class]'>[message]</span>\n\n\ + <i class='adminsay'>Click on the administrator's name to reply.</i>", + "boxed_message red_box"), + confidential = TRUE ) current_ticket?.player_replied = FALSE diff --git a/code/modules/admin/verbs/mapping.dm b/code/modules/admin/verbs/mapping.dm index 8504cd5262cab..277b7ad36d541 100644 --- a/code/modules/admin/verbs/mapping.dm +++ b/code/modules/admin/verbs/mapping.dm @@ -224,7 +224,7 @@ ADMIN_VERB(create_mapping_job_icons, R_DEBUG, "Generate job landmarks icons", "G ADMIN_VERB_VISIBILITY(debug_z_levels, ADMIN_VERB_VISIBLITY_FLAG_MAPPING_DEBUG) ADMIN_VERB(debug_z_levels, R_DEBUG, "Debug Z-Levels", "Displays a list of all z-levels and their linkages.", ADMIN_CATEGORY_MAPPING) - to_chat(user, examine_block(gather_z_level_information(append_grid = TRUE)), confidential = TRUE) + to_chat(user, boxed_message(gather_z_level_information(append_grid = TRUE)), confidential = TRUE) /// Returns all necessary z-level information. Argument `append_grid` allows the user to see a table showing all of the z-level linkages, which is only visible and useful in-game. /proc/gather_z_level_information(append_grid = FALSE) diff --git a/code/modules/buildmode/submodes/advanced.dm b/code/modules/buildmode/submodes/advanced.dm index f4ebb204d6ee0..bb08ddaf5298e 100644 --- a/code/modules/buildmode/submodes/advanced.dm +++ b/code/modules/buildmode/submodes/advanced.dm @@ -3,7 +3,7 @@ var/atom/objholder = null /datum/buildmode_mode/advanced/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Set object type")] -> Right Mouse Button on buildmode button\n\ [span_bold("Copy object type")] -> Left Mouse Button + Alt on turf/obj\n\ [span_bold("Place objects")] -> Left Mouse Button on turf/obj\n\ diff --git a/code/modules/buildmode/submodes/area_edit.dm b/code/modules/buildmode/submodes/area_edit.dm index 0d9ef8dd480bd..e91ea26be7746 100644 --- a/code/modules/buildmode/submodes/area_edit.dm +++ b/code/modules/buildmode/submodes/area_edit.dm @@ -9,7 +9,7 @@ ..() /datum/buildmode_mode/area_edit/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Select corner")] -> Left Mouse Button on obj/turf/mob\n\ [span_bold("Paint area")] -> Left Mouse Button + Alt on turf/obj/mob\n\ [span_bold("Select area to paint")] -> Right Mouse Button on obj/turf/mob\n\ diff --git a/code/modules/buildmode/submodes/basic.dm b/code/modules/buildmode/submodes/basic.dm index b0108a3a37f32..e68ccda926de7 100644 --- a/code/modules/buildmode/submodes/basic.dm +++ b/code/modules/buildmode/submodes/basic.dm @@ -2,7 +2,7 @@ key = "basic" /datum/buildmode_mode/basic/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Construct / Upgrade")] -> Left Mouse Button\n\ [span_bold("Deconstruct / Delete / Downgrade")] -> Right Mouse Button\n\ [span_bold("R-Window")] -> Left Mouse Button + Ctrl\n\ diff --git a/code/modules/buildmode/submodes/boom.dm b/code/modules/buildmode/submodes/boom.dm index 727d001f5cab4..e86d377d5d84c 100644 --- a/code/modules/buildmode/submodes/boom.dm +++ b/code/modules/buildmode/submodes/boom.dm @@ -16,7 +16,7 @@ ) /datum/buildmode_mode/boom/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Set explosion destructiveness")] -> Right Mouse Button on buildmode button\n\ [span_bold("Kaboom")] -> Mouse Button on obj\n\n\ [span_warning("NOTE:")] Using the \"Config/Launch Supplypod\" verb allows you to do this in an IC way (i.e., making a cruise missile come down from the sky and explode wherever you click!)")) diff --git a/code/modules/buildmode/submodes/copy.dm b/code/modules/buildmode/submodes/copy.dm index 88a1160a8a8fb..19dd34d3b4b52 100644 --- a/code/modules/buildmode/submodes/copy.dm +++ b/code/modules/buildmode/submodes/copy.dm @@ -7,7 +7,7 @@ return ..() /datum/buildmode_mode/copy/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Spawn a copy of selected target")] -> Left Mouse Button on obj/turf/mob\n\ [span_bold("Select target to copy")] -> Right Mouse Button on obj/mob")) ) diff --git a/code/modules/buildmode/submodes/delete.dm b/code/modules/buildmode/submodes/delete.dm index 7bb1a1472c0c5..1980375a33cd4 100644 --- a/code/modules/buildmode/submodes/delete.dm +++ b/code/modules/buildmode/submodes/delete.dm @@ -2,7 +2,7 @@ key = "delete" /datum/buildmode_mode/delete/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Delete an object")] -> Left Mouse Button on obj/turf/mob\n\ [span_bold("Delete all objects of a type")] -> Right Mouse Button on obj/turf/mob")) ) diff --git a/code/modules/buildmode/submodes/fill.dm b/code/modules/buildmode/submodes/fill.dm index e2bd3a5c16ad5..1646f6b3a0da5 100644 --- a/code/modules/buildmode/submodes/fill.dm +++ b/code/modules/buildmode/submodes/fill.dm @@ -7,7 +7,7 @@ var/atom/objholder = null /datum/buildmode_mode/fill/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Select corner")] -> Left Mouse Button on turf/obj/mob\n\ [span_bold("Delete region")] -> Left Mouse Button + Alt on turf/obj/mob\n\ [span_bold("Select object type")] -> Right Mouse Button on buildmode button")) diff --git a/code/modules/buildmode/submodes/map_export.dm b/code/modules/buildmode/submodes/map_export.dm index 19c0d57b57f73..9d59263aa47e1 100644 --- a/code/modules/buildmode/submodes/map_export.dm +++ b/code/modules/buildmode/submodes/map_export.dm @@ -22,7 +22,7 @@ to_chat(builder, span_notice("[what_to_change] is now [save_flag & options[what_to_change] ? "ENABLED" : "DISABLED"].")) /datum/buildmode_mode/map_export/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Select corner")] -> Left Mouse Button on obj/turf/mob\n\ [span_bold("Set export options")] -> Right Mouse Button on buildmode button")) ) diff --git a/code/modules/buildmode/submodes/mapgen.dm b/code/modules/buildmode/submodes/mapgen.dm index 102660425c874..d55898724490f 100644 --- a/code/modules/buildmode/submodes/mapgen.dm +++ b/code/modules/buildmode/submodes/mapgen.dm @@ -5,7 +5,7 @@ var/generator_path /datum/buildmode_mode/mapgen/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Select corner")] -> Left Mouse Button on turf/obj/mob\n\ [span_bold("Select generator")] -> Right Mouse Button on buildmode button")) ) diff --git a/code/modules/buildmode/submodes/outfit.dm b/code/modules/buildmode/submodes/outfit.dm index c3d507bf1e6c7..30b0f33cec165 100644 --- a/code/modules/buildmode/submodes/outfit.dm +++ b/code/modules/buildmode/submodes/outfit.dm @@ -7,7 +7,7 @@ return ..() /datum/buildmode_mode/outfit/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Select outfit to equip")] -> Right Mouse Button on buildmode button\n\ [span_bold("Equip the selected outfit")] -> Left Mouse Button on mob/living/carbon/human\n\ [span_bold("Strip and delete current outfit")] -> Right Mouse Button on mob/living/carbon/human")) diff --git a/code/modules/buildmode/submodes/proccall.dm b/code/modules/buildmode/submodes/proccall.dm index 3df1b8105380c..612a44cde4ca7 100644 --- a/code/modules/buildmode/submodes/proccall.dm +++ b/code/modules/buildmode/submodes/proccall.dm @@ -6,7 +6,7 @@ var/list/proc_args = null /datum/buildmode_mode/proccall/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Choose procedure and arguments")] -> Right Mouse Button on buildmode button\n\ [span_bold("Apply procedure on object")] -> Left Mouse Button on machinery")) ) diff --git a/code/modules/buildmode/submodes/smite.dm b/code/modules/buildmode/submodes/smite.dm index 1ea5f415e35f3..7e382926c5969 100644 --- a/code/modules/buildmode/submodes/smite.dm +++ b/code/modules/buildmode/submodes/smite.dm @@ -7,7 +7,7 @@ return ..() /datum/buildmode_mode/smite/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Select smite to use")] -> Right Mouse Button on buildmode button\n\ [span_bold("Smite the mob")] -> Left Mouse Button on mob/living")) ) diff --git a/code/modules/buildmode/submodes/throwing.dm b/code/modules/buildmode/submodes/throwing.dm index 587bf456e2a0c..c1bc4c2184ef3 100644 --- a/code/modules/buildmode/submodes/throwing.dm +++ b/code/modules/buildmode/submodes/throwing.dm @@ -8,7 +8,7 @@ return ..() /datum/buildmode_mode/throwing/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Select")] -> Left Mouse Button on turf/obj/mob\n\ [span_bold("Throw")] -> Right Mouse Button on turf/obj/mob")) ) diff --git a/code/modules/buildmode/submodes/tweakcomps.dm b/code/modules/buildmode/submodes/tweakcomps.dm index 89f233f9687b9..b0e41589917d3 100644 --- a/code/modules/buildmode/submodes/tweakcomps.dm +++ b/code/modules/buildmode/submodes/tweakcomps.dm @@ -4,7 +4,7 @@ var/rating = null /datum/buildmode_mode/tweakcomps/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Choose the rating of the components")] -> Right Mouse Button on buildmode button\n\ [span_bold("Sets the chosen rating of the components on the machinery")] -> Left Mouse Button on machinery")) ) diff --git a/code/modules/buildmode/submodes/variable_edit.dm b/code/modules/buildmode/submodes/variable_edit.dm index f132cd196ce71..4162af69faa43 100644 --- a/code/modules/buildmode/submodes/variable_edit.dm +++ b/code/modules/buildmode/submodes/variable_edit.dm @@ -10,7 +10,7 @@ return ..() /datum/buildmode_mode/varedit/show_help(client/builder) - to_chat(builder, span_purple(examine_block( + to_chat(builder, span_purple(boxed_message( "[span_bold("Select var(type) & value")] -> Right Mouse Button on buildmode button\n\ [span_bold("Set var(type) & value")] -> Left Mouse Button on turf/obj/mob\n\ [span_bold("Reset var's value")] -> Right Mouse Button on turf/obj/mob")) diff --git a/code/modules/client/verbs/who.dm b/code/modules/client/verbs/who.dm index bd023ede6308e..c9e500e7dbc78 100644 --- a/code/modules/client/verbs/who.dm +++ b/code/modules/client/verbs/who.dm @@ -85,7 +85,7 @@ lines += span_bold(header) lines += payload_string - var/finalized_string = examine_block(jointext(lines, "\n")) + var/finalized_string = boxed_message(jointext(lines, "\n")) to_chat(src, finalized_string) /// Proc that generates the applicable string to dispatch to the client for adminwho. diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 9f68581e3ab6f..12600338f97d1 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -456,7 +456,7 @@ readout += "No armor or durability information available." var/formatted_readout = span_notice("<b>PROTECTION CLASSES</b><hr>[jointext(readout, "\n")]") - to_chat(usr, examine_block(formatted_readout)) + to_chat(usr, boxed_message(formatted_readout)) /** * Rounds armor_value down to the nearest 10, divides it by 10 and then converts it to Roman numerals. diff --git a/code/modules/clothing/neck/_neck.dm b/code/modules/clothing/neck/_neck.dm index 6d97c116ab11a..7fe2074175d31 100644 --- a/code/modules/clothing/neck/_neck.dm +++ b/code/modules/clothing/neck/_neck.dm @@ -336,7 +336,7 @@ render_list += "<span class='notice ml-1'>[target.p_Their()] pulse is [pulse_pressure] and [heart_strength].</span>\n" //display our packaged information in an examine block for easy reading - to_chat(user, examine_block(jointext(render_list, "")), type = MESSAGE_TYPE_INFO) + to_chat(user, boxed_message(jointext(render_list, "")), type = MESSAGE_TYPE_INFO) /////////// //SCARVES// diff --git a/code/modules/fishing/fishing_rod.dm b/code/modules/fishing/fishing_rod.dm index 5fcfdd07ff350..8190b21c84c4d 100644 --- a/code/modules/fishing/fishing_rod.dm +++ b/code/modules/fishing/fishing_rod.dm @@ -150,7 +150,7 @@ block += get_stat_info(get_percent, gravity_mult, "The lure will sink", "faster", "slower", span_info = TRUE) list_clear_nulls(block) - . += examine_block(block.Join("\n")) + . += boxed_message(block.Join("\n")) if(get_percent && (material_flags & MATERIAL_EFFECTS) && length(custom_materials)) block = list() @@ -159,7 +159,7 @@ if(material.fish_weight_modifier != 1) var/heavier = material.fish_weight_modifier > 1 ? "heavier" : "lighter" block += span_info("Fish made of the same material as this rod tend to be [abs(material.fish_weight_modifier - 1) * 100]% [heavier].") - . += examine_block(block.Join("\n")) + . += boxed_message(block.Join("\n")) block = list() if(HAS_TRAIT(src, TRAIT_ROD_ATTRACT_SHINY_LOVERS)) @@ -171,7 +171,7 @@ if(HAS_TRAIT(src, TRAIT_ROD_LAVA_USABLE)) block += span_info("This fishing rod can be used to fish on lava.") if(length(block)) - . += examine_block(block.Join("\n")) + . += boxed_message(block.Join("\n")) ///Used in examine_more to reduce all the copypasta when getting more information about the various stats of the fishing rod. /obj/item/fishing_rod/proc/get_stat_info(get_percent, value, prefix, easier, harder, suffix = "with this fishing rod", span_info = FALSE, less_is_better = FALSE, offset = 1) diff --git a/code/modules/hydroponics/hydroitemdefines.dm b/code/modules/hydroponics/hydroitemdefines.dm index 0ffc337204244..216c913d79210 100644 --- a/code/modules/hydroponics/hydroitemdefines.dm +++ b/code/modules/hydroponics/hydroitemdefines.dm @@ -75,22 +75,22 @@ /obj/item/plant_analyzer/proc/do_plant_stats_scan(atom/scan_target, mob/user) if(istype(scan_target, /obj/machinery/hydroponics)) playsound(src, SFX_INDUSTRIAL_SCAN, 20, TRUE, -2, TRUE, FALSE) - to_chat(user, examine_block(scan_tray_stats(scan_target))) + to_chat(user, boxed_message(scan_tray_stats(scan_target))) return TRUE if(istype(scan_target, /obj/structure/glowshroom)) playsound(src, SFX_INDUSTRIAL_SCAN, 20, TRUE, -2, TRUE, FALSE) var/obj/structure/glowshroom/shroom_plant = scan_target - to_chat(user, examine_block(scan_plant_stats(shroom_plant.myseed))) + to_chat(user, boxed_message(scan_plant_stats(shroom_plant.myseed))) return TRUE if(istype(scan_target, /obj/item/graft)) playsound(src, SFX_INDUSTRIAL_SCAN, 20, TRUE, -2, TRUE, FALSE) - to_chat(user, examine_block(get_graft_text(scan_target))) + to_chat(user, boxed_message(get_graft_text(scan_target))) return TRUE if(isitem(scan_target)) playsound(src, SFX_INDUSTRIAL_SCAN, 20, TRUE, -2, TRUE, FALSE) var/obj/item/scanned_object = scan_target if(scanned_object.get_plant_seed() || istype(scanned_object, /obj/item/seeds)) - to_chat(user, examine_block(scan_plant_stats(scanned_object))) + to_chat(user, boxed_message(scan_plant_stats(scanned_object))) return TRUE if(isliving(scan_target)) playsound(src, SFX_INDUSTRIAL_SCAN, 20, TRUE, -2, TRUE, FALSE) @@ -112,19 +112,19 @@ */ /obj/item/plant_analyzer/proc/do_plant_chem_scan(atom/scan_target, mob/user) if(istype(scan_target, /obj/machinery/hydroponics)) - to_chat(user, examine_block(scan_tray_chems(scan_target))) + to_chat(user, boxed_message(scan_tray_chems(scan_target))) return TRUE if(istype(scan_target, /obj/structure/glowshroom)) var/obj/structure/glowshroom/shroom_plant = scan_target - to_chat(user, examine_block(scan_plant_chems(shroom_plant.myseed))) + to_chat(user, boxed_message(scan_plant_chems(shroom_plant.myseed))) return TRUE if(istype(scan_target, /obj/item/graft)) - to_chat(user, examine_block(get_graft_text(scan_target))) + to_chat(user, boxed_message(get_graft_text(scan_target))) return TRUE if(isitem(scan_target)) var/obj/item/scanned_object = scan_target if(scanned_object.get_plant_seed() || istype(scanned_object, /obj/item/seeds)) - to_chat(user, examine_block(scan_plant_chems(scanned_object))) + to_chat(user, boxed_message(scan_plant_chems(scanned_object))) return TRUE if(isliving(scan_target)) var/mob/living/L = scan_target diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm index 0646d1d1df350..0f229181b3879 100644 --- a/code/modules/jobs/job_types/_job.dm +++ b/code/modules/jobs/job_types/_job.dm @@ -299,7 +299,7 @@ /// Gets the message that shows up when spawning as this job /datum/job/proc/get_spawn_message() SHOULD_NOT_OVERRIDE(TRUE) - return examine_block(span_infoplain(jointext(get_spawn_message_information(), "\n• "))) + return boxed_message(span_infoplain(jointext(get_spawn_message_information(), "\n• "))) /// Returns a list of strings that correspond to chat messages sent to this mob when they join the round. /datum/job/proc/get_spawn_message_information() diff --git a/code/modules/lootpanel/misc.dm b/code/modules/lootpanel/misc.dm index 6e8448b820528..4fc3af2da29bf 100644 --- a/code/modules/lootpanel/misc.dm +++ b/code/modules/lootpanel/misc.dm @@ -7,7 +7,7 @@ var/build = owner.byond_build var/version = owner.byond_version if(build < 515 || (build == 515 && version < 1635)) - to_chat(owner.mob, examine_block(span_info("\ + to_chat(owner.mob, boxed_message(span_info("\ <span class='bolddanger'>Your version of Byond doesn't support fast image loading.</span>\n\ Detected: [version].[build]\n\ Required version for this feature: <b>515.1635</b> or later.\n\ diff --git a/code/modules/mob/emote.dm b/code/modules/mob/emote.dm index 924498332ecc5..d6bfa48303a67 100644 --- a/code/modules/mob/emote.dm +++ b/code/modules/mob/emote.dm @@ -72,7 +72,7 @@ message += keys.Join(", ") message += "." message = message.Join("") - to_chat(user, examine_block(message)) + to_chat(user, boxed_message(message)) /datum/emote/flip key = "flip" diff --git a/code/modules/mob/living/basic/space_fauna/revenant/_revenant.dm b/code/modules/mob/living/basic/space_fauna/revenant/_revenant.dm index 615f314bf2e4b..5ac15722a5b35 100644 --- a/code/modules/mob/living/basic/space_fauna/revenant/_revenant.dm +++ b/code/modules/mob/living/basic/space_fauna/revenant/_revenant.dm @@ -117,7 +117,7 @@ var/static/cached_string = null if(isnull(cached_string)) - cached_string = examine_block(jointext(create_login_string(), "\n")) + cached_string = boxed_message(jointext(create_login_string(), "\n")) to_chat(src, cached_string, type = MESSAGE_TYPE_INFO) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index b63195b2f5988..72afd4e107ad7 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -141,7 +141,7 @@ id_examine += "</div>" // container id_examine += "</div>" // text - to_chat(viewer, examine_block(span_info(id_examine))) + to_chat(viewer, boxed_message(span_info(id_examine))) ///////HUDs/////// if(href_list["hud"]) @@ -318,7 +318,7 @@ sec_record_message += "\n<b>Crime:</b> [crime.name]" sec_record_message += "\n<b>Details:</b> [crime.details]" sec_record_message += "\nAdded by [crime.author] at [crime.time]" - to_chat(human_or_ghost_user, examine_block(sec_record_message)) + to_chat(human_or_ghost_user, boxed_message(sec_record_message)) return if(ishuman(human_or_ghost_user)) var/mob/living/carbon/human/human_user = human_or_ghost_user diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 73f63b8bfe110..95774e8b54ef8 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -676,7 +676,7 @@ if(quirks.len) combined_msg += span_notice("You have these quirks: [get_quirk_string(FALSE, CAT_QUIRK_ALL)].") - to_chat(src, examine_block(combined_msg.Join("\n"))) + to_chat(src, boxed_message(combined_msg.Join("\n"))) /mob/living/carbon/human/damage_clothes(damage_amount, damage_type = BRUTE, damage_flag = 0, def_zone) if(damage_type != BRUTE && damage_type != BURN) diff --git a/code/modules/mob/living/carbon/human/login.dm b/code/modules/mob/living/carbon/human/login.dm index 03795be168e43..9b3e23a378672 100644 --- a/code/modules/mob/living/carbon/human/login.dm +++ b/code/modules/mob/living/carbon/human/login.dm @@ -31,5 +31,5 @@ if(LAZYLEN(afk_thefts) >= AFK_THEFT_MAX_MESSAGES) print_msg += span_warning("There may have been more, but that's all you can remember...") - to_chat(src, examine_block(print_msg.Join("\n"))) + to_chat(src, boxed_message(print_msg.Join("\n"))) LAZYNULL(afk_thefts) diff --git a/code/modules/mob/living/silicon/laws.dm b/code/modules/mob/living/silicon/laws.dm index 1754a89aa5cb9..8a1861246acba 100644 --- a/code/modules/mob/living/silicon/laws.dm +++ b/code/modules/mob/living/silicon/laws.dm @@ -2,7 +2,7 @@ laws_sanity_check() var/list/law_box = list(span_bold("Obey these laws:")) law_box += laws.get_law_list(include_zeroth = TRUE) - to_chat(src, examine_block(jointext(law_box, "\n"))) + to_chat(src, boxed_message(jointext(law_box, "\n"))) /mob/living/silicon/proc/try_sync_laws() return diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 0ff10d1f1dcd3..acc14dc7a003d 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -532,7 +532,7 @@ var/list/result = examinify.examine_more(src) if(!length(result)) result += span_notice("<i>You examine [examinify] closer, but find nothing of interest...</i>") - result_combined = examine_block(jointext(result, "<br>")) + result_combined = boxed_message(jointext(result, "<br>")) else client.recent_examines[ref_to_atom] = world.time // set to when we last normal examine'd them @@ -543,7 +543,7 @@ var/list/result = examinify.examine(src) var/atom_title = examinify.examine_title(src, thats = TRUE) SEND_SIGNAL(src, COMSIG_MOB_EXAMINING, examinify, result) - result_combined = (atom_title ? fieldset_block("[span_slightly_larger(atom_title)].", jointext(result, "<br>"), "examine_block") : examine_block(jointext(result, "<br>"))) + result_combined = (atom_title ? fieldset_block("[atom_title]", jointext(result, "<br>"), "boxed_message") : boxed_message(jointext(result, "<br>"))) to_chat(src, span_infoplain(result_combined)) SEND_SIGNAL(src, COMSIG_MOB_EXAMINATE, examinify) diff --git a/code/modules/reagents/chemistry/items.dm b/code/modules/reagents/chemistry/items.dm index 1e712db9c23ef..f7501f36fc47c 100644 --- a/code/modules/reagents/chemistry/items.dm +++ b/code/modules/reagents/chemistry/items.dm @@ -132,7 +132,7 @@ out_message += "<b>[round(reagent.volume, 0.01)]u of [reagent.name]</b>, <b>Purity:</b> [round(reagent.purity, 0.000001)*100]%, [(scanmode?"[(reagent.overdose_threshold?"<b>Overdose:</b> [reagent.overdose_threshold]u, ":"")]<b>Base pH:</b> [initial(reagent.ph)], <b>Current pH:</b> [reagent.ph].":"<b>Current pH:</b> [reagent.ph].")]\n" if(scanmode) out_message += "<b>Analysis:</b> [reagent.description]\n" - to_chat(user, examine_block(span_notice("[out_message.Join()]"))) + to_chat(user, boxed_message(span_notice("[out_message.Join()]"))) desc = "An electrode attached to a small circuit box that will display details of a solution. Can be toggled to provide a description of each of the reagents. The screen currently displays detected vol: [round(cont.volume, 0.01)] detected pH:[round(cont.reagents.ph, 0.1)]." return ITEM_INTERACT_SUCCESS diff --git a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm index a009ab35dd1f3..a6938f5dcf5ca 100644 --- a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm +++ b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm @@ -387,7 +387,7 @@ if("mix") mix(5 SECONDS, user) if("examine") - to_chat(user, examine_block(jointext(examine(user), "\n"))) + to_chat(user, boxed_message(jointext(examine(user), "\n"))) /** * Checks if the radial menu can interact with this machine diff --git a/code/modules/research/xenobiology/xenobio_camera.dm b/code/modules/research/xenobiology/xenobio_camera.dm index 66cbd4b93de5b..d98f62596ea47 100644 --- a/code/modules/research/xenobiology/xenobio_camera.dm +++ b/code/modules/research/xenobiology/xenobio_camera.dm @@ -350,7 +350,7 @@ Due to keyboard shortcuts, the second one is not necessarily the remote eye's lo render_list += "• Alt-click a slime to feed it a potion." render_list += "• Ctrl-click or a dead monkey to recycle it, or the floor to place a new monkey." - to_chat(owner, examine_block(jointext(render_list, "\n"))) + to_chat(owner, boxed_message(jointext(render_list, "\n"))) // // Alternate clicks for slime, monkey and open turf if using a xenobio console diff --git a/tgui/packages/tgui-panel/styles/tgchat/chat-dark.scss b/tgui/packages/tgui-panel/styles/tgchat/chat-dark.scss index b3cdfa6e88074..e009982f43f9f 100644 --- a/tgui/packages/tgui-panel/styles/tgchat/chat-dark.scss +++ b/tgui/packages/tgui-panel/styles/tgchat/chat-dark.scss @@ -42,6 +42,10 @@ a.popt { text-decoration: none; } +.center { + text-align: center; +} + /* POPUPS */ .popup { @@ -769,6 +773,10 @@ em { font-size: 60%; } +.smaller { + font-size: 80%; +} + .slightly_larger { font-size: 115%; } @@ -966,16 +974,70 @@ em { margin-left: 2.5em; } -.examine_block { - background: hsl(220, 5.3%, 11.2%); - border: 1px solid hsl(213.6, 37.9%, 74.1%); - margin: 0.5em; - padding: 0.5em 0.75em; -} - .tooltip { font-style: italic; - border-bottom: 1px dashed #fff; + border-bottom: 1px dashed; +} + +.fieldset_legend { + position: relative; + max-width: 95%; + font-size: 120%; + padding: 0.2em 0.5em; + background: #151515; // Chat background color + border: 1px solid; + border-color: inherit; + border-radius: 0.33em; + z-index: 1; + + // "Mask" a half of the border + // It very rough but it only possible way i see with IE compat + // Replace it with normal mask-image when 516 got stable + &:before { + content: ''; + position: absolute; + left: 0; + height: 1.15em; + width: 100%; + background: #151515; // Chat background color + transform: translateY(-50%) scaleX(1.05); + z-index: -1; + } +} + +.boxed_message { + background: hsl(220, 10%, 10%); + border: 1em * calc(1px / 12px) solid; + border-left: 1em * calc(4px / 12px) solid; + border-color: hsla(220, 40%, 75%, 0.25); + margin: 0.5em 0; + padding: 0.5em 0.75em; + border-radius: 0.33em; + + &.red_box { + background: hsl(0, 20%, 10%); + border-color: hsla(0, 100%, 50%, 0.5); + } + + &.green_box { + background: hsl(140, 20%, 10%); + border-color: hsla(120, 100%, 50%, 0.5); + } + + &.blue_box { + background: hsl(220, 20%, 10%); + border-color: hsla(225, 90%, 65%, 0.5); + } + + &.purple_box { + background: hsl(260, 25%, 12.5%); + border-color: hsla(260, 100%, 75%, 0.5); + } + + hr { + margin: 0.5em -0.75em; + border-color: inherit; + } } // Provides a horizontal bar with text in the middle diff --git a/tgui/packages/tgui-panel/styles/tgchat/chat-light.scss b/tgui/packages/tgui-panel/styles/tgchat/chat-light.scss index e46cd52d5075f..a35c927ae796e 100644 --- a/tgui/packages/tgui-panel/styles/tgchat/chat-light.scss +++ b/tgui/packages/tgui-panel/styles/tgchat/chat-light.scss @@ -984,16 +984,42 @@ h2.alert { margin-left: 3em; } -.examine_block { - background: hsl(202.5, 44.4%, 96.5%); - border: 1px solid hsl(215.5, 39.3%, 11%); - margin: 0.5em; - padding: 0.5em 0.75em; -} - .tooltip { font-style: italic; - border-bottom: 1px dashed #000; + border-bottom: 1px dashed; +} + +.fieldset_legend { + background: #ffffff; // Chat background color + + &:before { + background: #ffffff; // Chat background color + } +} + +.boxed_message { + background: hsl(220, 100%, 97.5%); + border-color: hsla(220, 75%, 25%, 0.5); + + &.red_box { + background: hsl(0, 100%, 97.5%); + border-color: hsla(0, 100%, 50%, 0.5); + } + + &.green_box { + background: hsl(140, 100%, 97.5%); + border-color: hsl(120, 100%, 33%, 0.5); + } + + &.blue_box { + background: hsl(220, 100%, 97.5%); + border-color: hsla(225, 100%, 50%, 0.5); + } + + &.purple_box { + background: hsl(260, 100%, 97.5%); + border-color: hsla(260, 100%, 50%, 0.5); + } } // Provides a horizontal bar with text in the middle From c665ea8bf83c7ec3e9f0b8951091446e28ff1414 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 19:36:13 +0000 Subject: [PATCH 111/126] Automatic changelog for PR #88663 [ci skip] --- html/changelogs/AutoChangeLog-pr-88663.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88663.yml diff --git a/html/changelogs/AutoChangeLog-pr-88663.yml b/html/changelogs/AutoChangeLog-pr-88663.yml new file mode 100644 index 0000000000000..12fa33e4de4c0 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88663.yml @@ -0,0 +1,4 @@ +author: "Absolucy, ShadowLarkens, S34N" +delete-after: True +changes: + - bugfix: "Fixed chat rapidly flickering in BYOND 516." \ No newline at end of file From 56e56ceac9b3ca221b7bf0f7f30bf0c499a75123 Mon Sep 17 00:00:00 2001 From: Aylong <69762909+AyIong@users.noreply.github.com> Date: Tue, 24 Dec 2024 21:36:25 +0200 Subject: [PATCH 112/126] Implement Edge DevTools (#88679) ## About The Pull Request Implements Edge DevTools for 516 users (coders) Thanks to [S34N](https://github.com/ParadiseSS13/Paradise/pull/25363) <details><summary>Images</summary>   </details> --------- Co-authored-by: AnturK <4047233+anturk@users.noreply.github.com> --- code/modules/admin/verbs/debug.dm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 13f1995c9ba3d..6169527b57f76 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -743,6 +743,14 @@ ADMIN_VERB(reestablish_tts_connection, R_DEBUG, "Re-establish Connection To TTS" message_admins("[key_name_admin(user)] successfully re-established the connection to the TTS HTTP server.") log_admin("[key_name(user)] successfully re-established the connection to the TTS HTTP server.") +ADMIN_VERB(allow_browser_inspect, R_DEBUG, "Allow Browser Inspect", "Allow browser debugging via inspect", ADMIN_CATEGORY_DEBUG) + if(user.byond_version < 516) + to_chat(user, span_warning("You can only use this on 516!")) + return + + to_chat(user, span_notice("You can now right click to use inspect on browsers.")) + winset(user, null, list("browser-options" = "+devtools")) + /proc/generate_timer_source_output(list/datum/timedevent/events) var/list/per_source = list() From b9019110ea69271ddabfb6dee2ba5a3be9c11019 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 19:36:48 +0000 Subject: [PATCH 113/126] Automatic changelog for PR #88678 [ci skip] --- html/changelogs/AutoChangeLog-pr-88678.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88678.yml diff --git a/html/changelogs/AutoChangeLog-pr-88678.yml b/html/changelogs/AutoChangeLog-pr-88678.yml new file mode 100644 index 0000000000000..2bd8b871336d3 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88678.yml @@ -0,0 +1,5 @@ +author: "AyIong" +delete-after: True +changes: + - qol: "AdminPMs, admin tickets, vote results and started vote notification are now much more visible in the chat." + - qol: "Boxed messages in chat (like examine), has been restyled." \ No newline at end of file From 2e4d70afe5eba8a2c50653944c2240ed6d49ce8e Mon Sep 17 00:00:00 2001 From: John Willard <53777086+JohnFulpWillard@users.noreply.github.com> Date: Tue, 24 Dec 2024 14:42:20 -0500 Subject: [PATCH 114/126] Updates href uses for 516 (#88699) ## About The Pull Request Was just scrolling through the Paradise github since they seem to have more work done for 516 to see if there's anything I can port over, found this and thought why not. Ports parts of https://github.com/ParadiseSS13/Paradise/pull/25105 Specifically, updaing all hrefs to use the internal ``byond://``, and adding it to grep. ## Why It's Good For The Game More work towards 516. ## Changelog Nothing player-facing. --- code/__DEFINES/admin.dm | 44 +++--- code/__DEFINES/say.dm | 6 +- code/__DEFINES/vv.dm | 2 +- code/__HELPERS/logging/_logging.dm | 4 +- code/__HELPERS/roundend.dm | 4 +- code/controllers/subsystem/dbcore.dm | 2 +- code/controllers/subsystem/dynamic/dynamic.dm | 20 +-- .../subsystem/dynamic/ruleset_picking.dm | 4 +- code/controllers/subsystem/lag_switch.dm | 2 +- code/controllers/subsystem/polling.dm | 6 +- code/controllers/subsystem/shuttle.dm | 2 +- code/controllers/subsystem/ticker.dm | 4 +- code/datums/browser.dm | 14 +- code/datums/elements/slapcrafting.dm | 2 +- code/datums/elements/weapon_description.dm | 2 +- code/datums/world_topic.dm | 2 +- code/game/atom/atom_vv.dm | 2 +- .../machinery/camera/camera_construction.dm | 10 +- .../game/machinery/computer/communications.dm | 2 +- code/game/machinery/computer/robot.dm | 2 +- code/game/machinery/hologram.dm | 2 +- code/game/objects/items.dm | 8 +- code/game/objects/items/charter.dm | 2 +- code/game/objects/items/devices/powersink.dm | 4 +- .../objects/items/devices/transfer_valve.dm | 2 +- code/game/objects/structures/votingbox.dm | 14 +- code/modules/admin/admin.dm | 52 +++---- code/modules/admin/antag_panel.dm | 40 +++--- code/modules/admin/check_antagonists.dm | 32 ++--- code/modules/admin/known_alts.dm | 4 +- code/modules/admin/permissionedit.dm | 30 ++-- code/modules/admin/player_panel.dm | 24 ++-- code/modules/admin/poll_management.dm | 16 +-- code/modules/admin/sound_emitter.dm | 12 +- code/modules/admin/sql_ban_system.dm | 10 +- code/modules/admin/sql_message_system.dm | 62 ++++---- code/modules/admin/stickyban.dm | 14 +- code/modules/admin/tag.dm | 6 +- code/modules/admin/team_panel.dm | 18 +-- code/modules/admin/verbs/SDQL2/SDQL_2.dm | 2 +- code/modules/admin/verbs/admin.dm | 2 +- code/modules/admin/verbs/admingame.dm | 134 +++++++++--------- code/modules/admin/verbs/adminhelp.dm | 32 ++--- code/modules/admin/verbs/adminpm.dm | 2 +- code/modules/admin/verbs/debug.dm | 4 +- .../modules/admin/verbs/individual_logging.dm | 2 +- .../admin/verbs/map_template_loadverb.dm | 4 +- code/modules/admin/verbs/mapping.dm | 2 +- .../debug_variable_appearance.dm | 2 +- .../admin/view_variables/debug_variables.dm | 14 +- .../admin/view_variables/topic_basic.dm | 2 +- .../admin/view_variables/view_variables.dm | 2 +- .../nukeop/datums/operative_team.dm | 8 +- .../antagonists/revolution/revolution.dm | 10 +- .../antagonists/traitor/datum_traitor.dm | 12 +- .../modules/asset_cache/asset_cache_client.dm | 2 +- code/modules/client/client_procs.dm | 2 +- code/modules/client/preferences_savefile.dm | 2 +- code/modules/clothing/clothing.dm | 4 +- .../deathmatch/deathmatch_controller.dm | 2 +- code/modules/error_handler/error_viewer.dm | 12 +- code/modules/events/_event.dm | 2 +- code/modules/interview/interview.dm | 2 +- code/modules/mob/dead/new_player/poll.dm | 2 +- code/modules/mob/dead/observer/observer.dm | 2 +- .../mob/living/carbon/carbon_defense.dm | 4 +- code/modules/mob/living/carbon/examine.dm | 22 +-- code/modules/mob/living/living.dm | 12 +- code/modules/mob/living/silicon/ai/ai.dm | 6 +- code/modules/mob/living/silicon/ai/ai_say.dm | 4 +- code/modules/mob/living/silicon/ai/life.dm | 2 +- code/modules/mob/living/silicon/ai/login.dm | 2 +- code/modules/mob/living/silicon/laws.dm | 2 +- .../modules/mob/living/silicon/robot/robot.dm | 4 +- code/modules/mob/living/silicon/silicon.dm | 4 +- .../modules/mob/living/silicon/silicon_say.dm | 2 +- code/modules/mob/mob_helpers.dm | 4 +- .../programs/messenger/messenger_program.dm | 2 +- code/modules/reagents/chemistry/recipes.dm | 2 +- .../shuttle_consoles/shuttle_console.dm | 2 +- code/modules/surgery/bodyparts/_bodyparts.dm | 2 +- code/modules/tgui_panel/tgui_panel.dm | 2 +- .../vehicles/mecha/mecha_ai_interaction.dm | 4 +- .../wiremod/shell/brain_computer_interface.dm | 2 +- tools/ci/check_grep.sh | 8 ++ 85 files changed, 427 insertions(+), 419 deletions(-) diff --git a/code/__DEFINES/admin.dm b/code/__DEFINES/admin.dm index 74c9120d804d4..ea5c52bf36f0f 100644 --- a/code/__DEFINES/admin.dm +++ b/code/__DEFINES/admin.dm @@ -45,40 +45,40 @@ #define R_EVERYTHING (1<<15)-1 //the sum of all other rank permissions, used for +EVERYTHING -#define ADMIN_QUE(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminmoreinfo=[REF(user)]'>?</a>)" -#define ADMIN_FLW(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservefollow=[REF(user)]'>FLW</a>)" -#define ADMIN_PP(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminplayeropts=[REF(user)]'>PP</a>)" -#define ADMIN_VV(atom) "(<a href='?_src_=vars;[HrefToken(forceGlobal = TRUE)];Vars=[REF(atom)]'>VV</a>)" -#define ADMIN_SM(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];subtlemessage=[REF(user)]'>SM</a>)" -#define ADMIN_TP(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];traitor=[REF(user)]'>TP</a>)" -#define ADMIN_SP(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];skill=[REF(user)]'>SP</a>)" -#define ADMIN_KICK(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];boot2=[REF(user)]'>KICK</a>)" -#define ADMIN_CENTCOM_REPLY(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];CentComReply=[REF(user)]'>RPLY</a>)" -#define ADMIN_SYNDICATE_REPLY(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];SyndicateReply=[REF(user)]'>RPLY</a>)" -#define ADMIN_SC(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminspawncookie=[REF(user)]'>SC</a>)" -#define ADMIN_SMITE(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminsmite=[REF(user)]'>SMITE</a>)" +#define ADMIN_QUE(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminmoreinfo=[REF(user)]'>?</a>)" +#define ADMIN_FLW(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservefollow=[REF(user)]'>FLW</a>)" +#define ADMIN_PP(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminplayeropts=[REF(user)]'>PP</a>)" +#define ADMIN_VV(atom) "(<a href='byond://?_src_=vars;[HrefToken(forceGlobal = TRUE)];Vars=[REF(atom)]'>VV</a>)" +#define ADMIN_SM(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];subtlemessage=[REF(user)]'>SM</a>)" +#define ADMIN_TP(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];traitor=[REF(user)]'>TP</a>)" +#define ADMIN_SP(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];skill=[REF(user)]'>SP</a>)" +#define ADMIN_KICK(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];boot2=[REF(user)]'>KICK</a>)" +#define ADMIN_CENTCOM_REPLY(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];CentComReply=[REF(user)]'>RPLY</a>)" +#define ADMIN_SYNDICATE_REPLY(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];SyndicateReply=[REF(user)]'>RPLY</a>)" +#define ADMIN_SC(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminspawncookie=[REF(user)]'>SC</a>)" +#define ADMIN_SMITE(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminsmite=[REF(user)]'>SMITE</a>)" #define ADMIN_LOOKUP(user) "[key_name_admin(user)][ADMIN_QUE(user)]" #define ADMIN_LOOKUPFLW(user) "[key_name_admin(user)][ADMIN_QUE(user)] [ADMIN_FLW(user)]" -#define ADMIN_SET_SD_CODE "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];set_selfdestruct_code=1'>SETCODE</a>)" +#define ADMIN_SET_SD_CODE "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];set_selfdestruct_code=1'>SETCODE</a>)" #define ADMIN_FULLMONTY_NONAME(user) "[ADMIN_QUE(user)] [ADMIN_PP(user)] [ADMIN_VV(user)] [ADMIN_SM(user)] [ADMIN_FLW(user)] [ADMIN_TP(user)] [ADMIN_INDIVIDUALLOG(user)] [ADMIN_SMITE(user)]" #define ADMIN_FULLMONTY(user) "[key_name_admin(user)] [ADMIN_FULLMONTY_NONAME(user)]" -#define ADMIN_JMP(src) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservecoodjump=1;X=[src.x];Y=[src.y];Z=[src.z]'>JMP</a>)" +#define ADMIN_JMP(src) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservecoodjump=1;X=[src.x];Y=[src.y];Z=[src.z]'>JMP</a>)" #define COORD(src) "[src ? src.Admin_Coordinates_Readable() : "nonexistent location"]" #define AREACOORD(src) "[src ? src.Admin_Coordinates_Readable(TRUE) : "nonexistent location"]" #define ADMIN_COORDJMP(src) "[src ? src.Admin_Coordinates_Readable(FALSE, TRUE) : "nonexistent location"]" #define ADMIN_VERBOSEJMP(src) "[src ? src.Admin_Coordinates_Readable(TRUE, TRUE) : "nonexistent location"]" -#define ADMIN_INDIVIDUALLOG(user) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];individuallog=[REF(user)]'>LOGS</a>)" -#define ADMIN_TAG(datum) "(<A href='?src=[REF(src)];[HrefToken(forceGlobal = TRUE)];tag_datum=[REF(datum)]'>TAG</a>)" -#define ADMIN_LUAVIEW(state) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];lua_state=[REF(state)]'>VIEW STATE</a>)" -#define ADMIN_LUAVIEW_CHUNK(state, log_index) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];lua_state=[REF(state)];log_index=[log_index]'>VIEW CODE</a>)" +#define ADMIN_INDIVIDUALLOG(user) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];individuallog=[REF(user)]'>LOGS</a>)" +#define ADMIN_TAG(datum) "(<A href='byond://?src=[REF(src)];[HrefToken(forceGlobal = TRUE)];tag_datum=[REF(datum)]'>TAG</a>)" +#define ADMIN_LUAVIEW(state) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];lua_state=[REF(state)]'>VIEW STATE</a>)" +#define ADMIN_LUAVIEW_CHUNK(state, log_index) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];lua_state=[REF(state)];log_index=[log_index]'>VIEW CODE</a>)" /// Displays "(SHOW)" in the chat, when clicked it tries to show atom(paper). First you need to set the request_state variable to TRUE for the paper. -#define ADMIN_SHOW_PAPER(atom) "(<A href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];show_paper=[REF(atom)]'>SHOW</a>)" +#define ADMIN_SHOW_PAPER(atom) "(<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];show_paper=[REF(atom)]'>SHOW</a>)" /// Displays "(PRINT)" in the chat, when clicked it will try to print the atom(paper) on the CentCom/Syndicate fax machine. -#define ADMIN_PRINT_FAX(atom, sender, destination) "(<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];print_fax=[REF(atom)];sender_name=[sender];destination=[destination]'>PRINT</a>)" +#define ADMIN_PRINT_FAX(atom, sender, destination) "(<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];print_fax=[REF(atom)];sender_name=[sender];destination=[destination]'>PRINT</a>)" /// Displays "(PLAY)" in the chat, when clicked it tries to play internet sounds from the request. -#define ADMIN_PLAY_INTERNET(text, credit) "(<A href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];play_internet=[url_encode(text)];credit=[credit]'>PLAY</a>)" +#define ADMIN_PLAY_INTERNET(text, credit) "(<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];play_internet=[url_encode(text)];credit=[credit]'>PLAY</a>)" /// Displays "(SEE Z-LEVEL LAYOUT)" in the chat, when clicked it shows the z-level layouts for the current world state. -#define ADMIN_SEE_ZLEVEL_LAYOUT "(<A href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];debug_z_levels=1'>SEE Z-LEVEL LAYOUT</a>)" +#define ADMIN_SEE_ZLEVEL_LAYOUT "(<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];debug_z_levels=1'>SEE Z-LEVEL LAYOUT</a>)" /atom/proc/Admin_Coordinates_Readable(area_name, admin_jump_ref) var/turf/turf_at_coords = Safe_COORD_Location() diff --git a/code/__DEFINES/say.dm b/code/__DEFINES/say.dm index d905129b19b74..c3bd425af0a65 100644 --- a/code/__DEFINES/say.dm +++ b/code/__DEFINES/say.dm @@ -99,9 +99,9 @@ #define MODE_RANGE_INTERCOM 1 // A link given to ghost alice to follow bob -#define FOLLOW_LINK(alice, bob) "<a href=?src=[REF(alice)];follow=[REF(bob)]>(F)</a>" -#define TURF_LINK(alice, turfy) "<a href=?src=[REF(alice)];x=[turfy.x];y=[turfy.y];z=[turfy.z]>(T)</a>" -#define FOLLOW_OR_TURF_LINK(alice, bob, turfy) "<a href=?src=[REF(alice)];follow=[REF(bob)];x=[turfy.x];y=[turfy.y];z=[turfy.z]>(F)</a>" +#define FOLLOW_LINK(alice, bob) "<a href=byond://?src=[REF(alice)];follow=[REF(bob)]>(F)</a>" +#define TURF_LINK(alice, turfy) "<a href=byond://?src=[REF(alice)];x=[turfy.x];y=[turfy.y];z=[turfy.z]>(T)</a>" +#define FOLLOW_OR_TURF_LINK(alice, bob, turfy) "<a href=byond://?src=[REF(alice)];follow=[REF(bob)];x=[turfy.x];y=[turfy.y];z=[turfy.z]>(F)</a>" //Don't set this very much higher then 1024 unless you like inviting people in to dos your server with message spam #define MAX_MESSAGE_LEN 1024 diff --git a/code/__DEFINES/vv.dm b/code/__DEFINES/vv.dm index 88f46a53fd92c..1ce2d5d46cb9c 100644 --- a/code/__DEFINES/vv.dm +++ b/code/__DEFINES/vv.dm @@ -50,7 +50,7 @@ #define GET_VV_VAR_TARGET href_list[VV_HK_VARNAME] //Helper for getting something to vv_do_topic in general -#define VV_TOPIC_LINK(datum, href_key, text) "<a href='?_src_=vars;[HrefToken()];[href_key]=TRUE;target=[REF(datum)]'>text</a>" +#define VV_TOPIC_LINK(datum, href_key, text) "<a href='byond://?_src_=vars;[HrefToken()];[href_key]=TRUE;target=[REF(datum)]'>text</a>" //Helpers for vv_get_dropdown() #define VV_DROPDOWN_OPTION(href_key, name) . += "<option value='?_src_=vars;[HrefToken()];[href_key]=TRUE;target=[REF(src)]'>[name]</option>" diff --git a/code/__HELPERS/logging/_logging.dm b/code/__HELPERS/logging/_logging.dm index bfcaded67f021..8f8f733e6ba8b 100644 --- a/code/__HELPERS/logging/_logging.dm +++ b/code/__HELPERS/logging/_logging.dm @@ -215,11 +215,11 @@ GLOBAL_LIST_INIT(testing_global_profiler, list("_PROFILE_NAME" = "Global")) if(key) if(C?.holder && C.holder.fakekey && !include_name) if(include_link) - . += "<a href='?priv_msg=[C.getStealthKey()]'>" + . += "<a href='byond://?priv_msg=[C.getStealthKey()]'>" . += "Administrator" else if(include_link) - . += "<a href='?priv_msg=[ckey]'>" + . += "<a href='byond://?priv_msg=[ckey]'>" . += key if(!C) . += "\[DC\]" diff --git a/code/__HELPERS/roundend.dm b/code/__HELPERS/roundend.dm index 292639f387682..19dec4a7fd442 100644 --- a/code/__HELPERS/roundend.dm +++ b/code/__HELPERS/roundend.dm @@ -335,7 +335,7 @@ GLOBAL_LIST_INIT(achievements_unlocked, list()) if(GLOB.round_id) var/statspage = CONFIG_GET(string/roundstatsurl) - var/info = statspage ? "<a href='?action=openLink&link=[url_encode(statspage)][GLOB.round_id]'>[GLOB.round_id]</a>" : GLOB.round_id + var/info = statspage ? "<a href='byond://?action=openLink&link=[url_encode(statspage)][GLOB.round_id]'>[GLOB.round_id]</a>" : GLOB.round_id parts += "[FOURSPACES]Round ID: <b>[info]</b>" parts += "[FOURSPACES]Shift Duration: <B>[DisplayTimeText(world.time - SSticker.round_start_time)]</B>" parts += "[FOURSPACES]Station Integrity: <B>[GLOB.station_was_nuked ? span_redtext("Destroyed") : "[popcount["station_integrity"]]%"]</B>" @@ -660,7 +660,7 @@ GLOBAL_LIST_INIT(achievements_unlocked, list()) var/datum/action/report/R = new C.player_details.player_actions += R R.Grant(C.mob) - to_chat(C,span_infoplain("<a href='?src=[REF(R)];report=1'>Show roundend report again</a>")) + to_chat(C,span_infoplain("<a href='byond://?src=[REF(R)];report=1'>Show roundend report again</a>")) /datum/action/report name = "Show roundend report" diff --git a/code/controllers/subsystem/dbcore.dm b/code/controllers/subsystem/dbcore.dm index 115250104f008..805fe419c94b7 100644 --- a/code/controllers/subsystem/dbcore.dm +++ b/code/controllers/subsystem/dbcore.dm @@ -674,7 +674,7 @@ Ignore_errors instructes mysql to continue inserting rows if some of them have e /datum/db_query/proc/slow_query_check() - message_admins("HEY! A database query timed out. Did the server just hang? <a href='?_src_=holder;[HrefToken()];slowquery=yes'>\[YES\]</a>|<a href='?_src_=holder;[HrefToken()];slowquery=no'>\[NO\]</a>") + message_admins("HEY! A database query timed out. Did the server just hang? <a href='byond://?_src_=holder;[HrefToken()];slowquery=yes'>\[YES\]</a>|<a href='byond://?_src_=holder;[HrefToken()];slowquery=no'>\[NO\]</a>") /datum/db_query/proc/NextRow(async = TRUE) Activity("NextRow") diff --git a/code/controllers/subsystem/dynamic/dynamic.dm b/code/controllers/subsystem/dynamic/dynamic.dm index 1e1a9afec4759..73109d0dccaf0 100644 --- a/code/controllers/subsystem/dynamic/dynamic.dm +++ b/code/controllers/subsystem/dynamic/dynamic.dm @@ -203,23 +203,23 @@ SUBSYSTEM_DEF(dynamic) /datum/controller/subsystem/dynamic/proc/admin_panel() var/list/dat = list("<html><head><meta http-equiv='Content-Type' content='text/html; charset=UTF-8'><title>Game Mode Panel</title></head><body><h1><B>Game Mode Panel</B></h1>") - dat += "Dynamic Mode <a href='?_src_=vars;[HrefToken()];Vars=[REF(src)]'>\[VV\]</a> <a href='?src=[text_ref(src)];[HrefToken()]'>\[Refresh\]</a><BR>" + dat += "Dynamic Mode <a href='byond://?_src_=vars;[HrefToken()];Vars=[REF(src)]'>\[VV\]</a> <a href='byond://?src=[text_ref(src)];[HrefToken()]'>\[Refresh\]</a><BR>" dat += "Threat Level: <b>[threat_level]</b><br/>" dat += "Budgets (Roundstart/Midrounds): <b>[initial_round_start_budget]/[threat_level - initial_round_start_budget]</b><br/>" - dat += "Midround budget to spend: <b>[mid_round_budget]</b> <a href='?src=[text_ref(src)];[HrefToken()];adjustthreat=1'>\[Adjust\]</A> <a href='?src=[text_ref(src)];[HrefToken()];threatlog=1'>\[View Log\]</a><br/>" + dat += "Midround budget to spend: <b>[mid_round_budget]</b> <a href='byond://?src=[text_ref(src)];[HrefToken()];adjustthreat=1'>\[Adjust\]</A> <a href='byond://?src=[text_ref(src)];[HrefToken()];threatlog=1'>\[View Log\]</a><br/>" dat += "<br/>" dat += "Parameters: centre = [threat_curve_centre] ; width = [threat_curve_width].<br/>" dat += "Split parameters: centre = [roundstart_split_curve_centre] ; width = [roundstart_split_curve_width].<br/>" dat += "<i>On average, <b>[clamp(peaceful_percentage, 1, 99)]</b>% of the rounds are more peaceful.</i><br/>" - dat += "Forced extended: <a href='?src=[text_ref(src)];[HrefToken()];forced_extended=1'><b>[GLOB.dynamic_forced_extended ? "On" : "Off"]</b></a><br/>" - dat += "No stacking (only one round-ender): <a href='?src=[text_ref(src)];[HrefToken()];no_stacking=1'><b>[GLOB.dynamic_no_stacking ? "On" : "Off"]</b></a><br/>" - dat += "Stacking limit: [GLOB.dynamic_stacking_limit] <a href='?src=[text_ref(src)];[HrefToken()];stacking_limit=1'>\[Adjust\]</A>" + dat += "Forced extended: <a href='byond://?src=[text_ref(src)];[HrefToken()];forced_extended=1'><b>[GLOB.dynamic_forced_extended ? "On" : "Off"]</b></a><br/>" + dat += "No stacking (only one round-ender): <a href='byond://?src=[text_ref(src)];[HrefToken()];no_stacking=1'><b>[GLOB.dynamic_no_stacking ? "On" : "Off"]</b></a><br/>" + dat += "Stacking limit: [GLOB.dynamic_stacking_limit] <a href='byond://?src=[text_ref(src)];[HrefToken()];stacking_limit=1'>\[Adjust\]</A>" dat += "<br/>" - dat += "<A href='?src=[text_ref(src)];[HrefToken()];force_latejoin_rule=1'>\[Force Next Latejoin Ruleset\]</A><br>" + dat += "<A href='byond://?src=[text_ref(src)];[HrefToken()];force_latejoin_rule=1'>\[Force Next Latejoin Ruleset\]</A><br>" if (forced_latejoin_rule) - dat += {"<A href='?src=[text_ref(src)];[HrefToken()];clear_forced_latejoin=1'>-> [forced_latejoin_rule.name] <-</A><br>"} - dat += "<A href='?src=[text_ref(src)];[HrefToken()];force_midround_rule=1'>\[Execute Midround Ruleset\]</A><br>" + dat += {"<A href='byond://?src=[text_ref(src)];[HrefToken()];clear_forced_latejoin=1'>-> [forced_latejoin_rule.name] <-</A><br>"} + dat += "<A href='byond://?src=[text_ref(src)];[HrefToken()];force_midround_rule=1'>\[Execute Midround Ruleset\]</A><br>" dat += "<br />" dat += "Executed rulesets: " if (executed_rules.len > 0) @@ -229,13 +229,13 @@ SUBSYSTEM_DEF(dynamic) else dat += "none.<br>" dat += "<br>Injection Timers: (<b>[get_heavy_midround_injection_chance(dry_run = TRUE)]%</b> heavy midround chance)<BR>" - dat += "Latejoin: [DisplayTimeText(latejoin_injection_cooldown-world.time)] <a href='?src=[text_ref(src)];[HrefToken()];injectlate=1'>\[Now!\]</a><BR>" + dat += "Latejoin: [DisplayTimeText(latejoin_injection_cooldown-world.time)] <a href='byond://?src=[text_ref(src)];[HrefToken()];injectlate=1'>\[Now!\]</a><BR>" var/next_injection = next_midround_injection() if (next_injection == INFINITY) dat += "All midrounds have been exhausted." else - dat += "Midround: [DisplayTimeText(next_injection - world.time)] <a href='?src=[text_ref(src)];[HrefToken()];injectmid=1'>\[Now!\]</a><BR>" + dat += "Midround: [DisplayTimeText(next_injection - world.time)] <a href='byond://?src=[text_ref(src)];[HrefToken()];injectmid=1'>\[Now!\]</a><BR>" usr << browse(dat.Join(), "window=gamemode_panel;size=500x500") diff --git a/code/controllers/subsystem/dynamic/ruleset_picking.dm b/code/controllers/subsystem/dynamic/ruleset_picking.dm index e3de3289899f7..f22ce3315740e 100644 --- a/code/controllers/subsystem/dynamic/ruleset_picking.dm +++ b/code/controllers/subsystem/dynamic/ruleset_picking.dm @@ -69,8 +69,8 @@ log_dynamic("[rule] ruleset executing...") message_admins("DYNAMIC: Executing midround ruleset [rule] in [DisplayTimeText(ADMIN_CANCEL_MIDROUND_TIME)]. \ - <a href='?src=[REF(src)];cancelmidround=[midround_injection_timer_id]'>CANCEL</a> | \ - <a href='?src=[REF(src)];differentmidround=[midround_injection_timer_id]'>SOMETHING ELSE</a>") + <a href='byond://?src=[REF(src)];cancelmidround=[midround_injection_timer_id]'>CANCEL</a> | \ + <a href='byond://?src=[REF(src)];differentmidround=[midround_injection_timer_id]'>SOMETHING ELSE</a>") return rule diff --git a/code/controllers/subsystem/lag_switch.dm b/code/controllers/subsystem/lag_switch.dm index c79db05186017..291e80fe18f1f 100644 --- a/code/controllers/subsystem/lag_switch.dm +++ b/code/controllers/subsystem/lag_switch.dm @@ -34,7 +34,7 @@ SUBSYSTEM_DEF(lag_switch) auto_switch = FALSE UnregisterSignal(SSdcs, COMSIG_GLOB_CLIENT_CONNECT) veto_timer_id = addtimer(CALLBACK(src, PROC_REF(set_all_measures), TRUE, TRUE), 20 SECONDS, TIMER_STOPPABLE) - message_admins("Lag Switch population threshold reached. Automatic activation of lag mitigation measures occuring in 20 seconds. (<a href='?_src_=holder;[HrefToken()];change_lag_switch_option=CANCEL'>CANCEL</a>)") + message_admins("Lag Switch population threshold reached. Automatic activation of lag mitigation measures occuring in 20 seconds. (<a href='byond://?_src_=holder;[HrefToken()];change_lag_switch_option=CANCEL'>CANCEL</a>)") log_admin("Lag Switch population threshold reached. Automatic activation of lag mitigation measures occuring in 20 seconds.") /// (En/Dis)able automatic triggering of switches based on client count diff --git a/code/controllers/subsystem/polling.dm b/code/controllers/subsystem/polling.dm index 5cb81498c3df9..6624c984cbb6a 100644 --- a/code/controllers/subsystem/polling.dm +++ b/code/controllers/subsystem/polling.dm @@ -148,11 +148,11 @@ SUBSYSTEM_DEF(polling) var/custom_link_style_start = "<style>a:visited{color:Crimson !important}</style>" var/custom_link_style_end = "style='color:DodgerBlue;font-weight:bold;-dm-text-outline: 1px black'" if(isatom(alert_pic) && isobserver(candidate_mob)) - act_jump = "[custom_link_style_start]<a href='?src=[REF(poll_alert_button)];jump=1'[custom_link_style_end]>\[Teleport\]</a>" - var/act_signup = "[custom_link_style_start]<a href='?src=[REF(poll_alert_button)];signup=1'[custom_link_style_end]>\[[start_signed_up ? "Opt out" : "Sign Up"]\]</a>" + act_jump = "[custom_link_style_start]<a href='byond://?src=[REF(poll_alert_button)];jump=1'[custom_link_style_end]>\[Teleport\]</a>" + var/act_signup = "[custom_link_style_start]<a href='byond://?src=[REF(poll_alert_button)];signup=1'[custom_link_style_end]>\[[start_signed_up ? "Opt out" : "Sign Up"]\]</a>" var/act_never = "" if(ignore_category) - act_never = "[custom_link_style_start]<a href='?src=[REF(poll_alert_button)];never=1'[custom_link_style_end]>\[Never For This Round\]</a>" + act_never = "[custom_link_style_start]<a href='byond://?src=[REF(poll_alert_button)];never=1'[custom_link_style_end]>\[Never For This Round\]</a>" if(!duplicate_message_check(alert_poll)) //Only notify people once. They'll notice if there are multiple and we don't want to spam people. SEND_SOUND(candidate_mob, 'sound/announcer/notice/notice2.ogg') diff --git a/code/controllers/subsystem/shuttle.dm b/code/controllers/subsystem/shuttle.dm index 4f573ee2f2224..ff19d6d4b265a 100644 --- a/code/controllers/subsystem/shuttle.dm +++ b/code/controllers/subsystem/shuttle.dm @@ -385,7 +385,7 @@ SUBSYSTEM_DEF(shuttle) SSblackbox.record_feedback("text", "shuttle_reason", 1, "[call_reason]") log_shuttle("Shuttle call reason: [call_reason]") SSticker.emergency_reason = call_reason - message_admins("[ADMIN_LOOKUPFLW(user)] has called the shuttle. (<A HREF='?_src_=holder;[HrefToken()];trigger_centcom_recall=1'>TRIGGER CENTCOM RECALL</A>)") + message_admins("[ADMIN_LOOKUPFLW(user)] has called the shuttle. (<A href='byond://?_src_=holder;[HrefToken()];trigger_centcom_recall=1'>TRIGGER CENTCOM RECALL</A>)") /// Call the emergency shuttle. /// If you are doing this on behalf of a player, use requestEvac instead. diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 03e7b6dcbd885..96cde0ef0dded 100644 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -490,7 +490,7 @@ SUBSYSTEM_DEF(ticker) if(!hard_popcap) list_clear_nulls(queued_players) for (var/mob/dead/new_player/new_player in queued_players) - to_chat(new_player, span_userdanger("The alive players limit has been released!<br><a href='?src=[REF(new_player)];late_join=override'>[html_encode(">>Join Game<<")]</a>")) + to_chat(new_player, span_userdanger("The alive players limit has been released!<br><a href='byond://?src=[REF(new_player)];late_join=override'>[html_encode(">>Join Game<<")]</a>")) SEND_SOUND(new_player, sound('sound/announcer/notice/notice1.ogg')) GLOB.latejoin_menu.ui_interact(new_player) queued_players.len = 0 @@ -505,7 +505,7 @@ SUBSYSTEM_DEF(ticker) list_clear_nulls(queued_players) if(living_player_count() < hard_popcap) if(next_in_line?.client) - to_chat(next_in_line, span_userdanger("A slot has opened! You have approximately 20 seconds to join. <a href='?src=[REF(next_in_line)];late_join=override'>\>\>Join Game\<\<</a>")) + to_chat(next_in_line, span_userdanger("A slot has opened! You have approximately 20 seconds to join. <a href='byond://?src=[REF(next_in_line)];late_join=override'>\>\>Join Game\<\<</a>")) SEND_SOUND(next_in_line, sound('sound/announcer/notice/notice1.ogg')) next_in_line.ui_interact(next_in_line) return diff --git a/code/datums/browser.dm b/code/datums/browser.dm index b9d859552389d..cf0df8dac5017 100644 --- a/code/datums/browser.dm +++ b/code/datums/browser.dm @@ -138,13 +138,13 @@ var/output = {"<center><b>[Message]</b></center><br /> <div style="text-align:center"> - <a style="font-size:large;float:[( Button2 ? "left" : "right" )]" href="?src=[REF(src)];button=1">[Button1]</a>"} + <a style="font-size:large;float:[( Button2 ? "left" : "right" )]" href='byond://?src=[REF(src)];button=1'>[Button1]</a>"} if (Button2) - output += {"<a style="font-size:large;[( Button3 ? "" : "float:right" )]" href="?src=[REF(src)];button=2">[Button2]</a>"} + output += {"<a style="font-size:large;[( Button3 ? "" : "float:right" )]" href='byond://?src=[REF(src)];button=2'>[Button2]</a>"} if (Button3) - output += {"<a style="font-size:large;float:right" href="?src=[REF(src)];button=3">[Button3]</a>"} + output += {"<a style="font-size:large;float:right" href='byond://?src=[REF(src)];button=3'>[Button3]</a>"} output += {"</div>"} @@ -356,11 +356,11 @@ var/setting = settings["mainsettings"][name] if (setting["type"] == "datum") if (setting["subtypesonly"]) - dat += "<b>[setting["desc"]]:</b> <a href='?src=[REF(src)];setting=[name];task=input;subtypesonly=1;type=datum;path=[setting["path"]]'>[setting["value"]]</a><BR>" + dat += "<b>[setting["desc"]]:</b> <a href='byond://?src=[REF(src)];setting=[name];task=input;subtypesonly=1;type=datum;path=[setting["path"]]'>[setting["value"]]</a><BR>" else - dat += "<b>[setting["desc"]]:</b> <a href='?src=[REF(src)];setting=[name];task=input;type=datum;path=[setting["path"]]'>[setting["value"]]</a><BR>" + dat += "<b>[setting["desc"]]:</b> <a href='byond://?src=[REF(src)];setting=[name];task=input;type=datum;path=[setting["path"]]'>[setting["value"]]</a><BR>" else - dat += "<b>[setting["desc"]]:</b> <a href='?src=[REF(src)];setting=[name];task=input;type=[setting["type"]]'>[setting["value"]]</a><BR>" + dat += "<b>[setting["desc"]]:</b> <a href='byond://?src=[REF(src)];setting=[name];task=input;type=[setting["type"]]'>[setting["value"]]</a><BR>" if (preview_icon) dat += "<td valign='center'>" @@ -371,7 +371,7 @@ dat += "</tr></table>" - dat += "<hr><center><a href='?src=[REF(src)];button=1'>Ok</a> " + dat += "<hr><center><a href='byond://?src=[REF(src)];button=1'>Ok</a> " dat += "</center>" diff --git a/code/datums/elements/slapcrafting.dm b/code/datums/elements/slapcrafting.dm index 925b2fd575597..046a8668a2974 100644 --- a/code/datums/elements/slapcrafting.dm +++ b/code/datums/elements/slapcrafting.dm @@ -134,7 +134,7 @@ for(var/datum/crafting_recipe/recipe as anything in slapcraft_recipes) var/atom/result = initial(recipe.result) - examine_list += "<a href='?src=[REF(source)];check_recipe=[REF(recipe)]'>See Recipe For [initial(result.name)]</a>" + examine_list += "<a href='byond://?src=[REF(source)];check_recipe=[REF(recipe)]'>See Recipe For [initial(result.name)]</a>" /datum/element/slapcrafting/proc/topic_handler(atom/source, user, href_list) SIGNAL_HANDLER diff --git a/code/datums/elements/weapon_description.dm b/code/datums/elements/weapon_description.dm index 110a490b5ca12..022318abfcf0d 100644 --- a/code/datums/elements/weapon_description.dm +++ b/code/datums/elements/weapon_description.dm @@ -39,7 +39,7 @@ SIGNAL_HANDLER if(item.force >= 5 || item.throwforce >= 5 || item.override_notes || item.offensive_notes || attached_proc) /// Only show this tag for items that could feasibly be weapons, shields, or those that have special notes - examine_texts += span_notice("<a href='?src=[REF(item)];examine=1'>See combat information.</a>") + examine_texts += span_notice("<a href='byond://?src=[REF(item)];examine=1'>See combat information.</a>") /** * diff --git a/code/datums/world_topic.dm b/code/datums/world_topic.dm index 2a4af3a781aa0..c34c018d59c65 100644 --- a/code/datums/world_topic.dm +++ b/code/datums/world_topic.dm @@ -114,7 +114,7 @@ var/message = "<b color='orange'>CROSS-SECTOR MESSAGE (INCOMING):</b> [input["sender_ckey"]] (from [input["source"]]) is about to send \ the following message (will autoapprove in [soft_filter_passed ? "[extended_time_display]" : "[normal_time_display]"]): \ - <b><a href='?src=[REF(src)];reject_cross_comms_message=[timer_id]'>REJECT</a></b><br><br>\ + <b><a href='byond://?src=[REF(src)];reject_cross_comms_message=[timer_id]'>REJECT</a></b><br><br>\ [html_encode(input["message"])]" if(soft_filter_passed) diff --git a/code/game/atom/atom_vv.dm b/code/game/atom/atom_vv.dm index 7a7dc8d3a877d..14a8b41e6e10e 100644 --- a/code/game/atom/atom_vv.dm +++ b/code/game/atom/atom_vv.dm @@ -199,7 +199,7 @@ . = ..() var/refid = REF(src) . += "[VV_HREF_TARGETREF(refid, VV_HK_AUTO_RENAME, "<b id='name'>[src]</b>")]" - . += "<br><font size='1'><a href='?_src_=vars;[HrefToken()];rotatedatum=[refid];rotatedir=left'><<</a> <a href='?_src_=vars;[HrefToken()];datumedit=[refid];varnameedit=dir' id='dir'>[dir2text(dir) || dir]</a> <a href='?_src_=vars;[HrefToken()];rotatedatum=[refid];rotatedir=right'>>></a></font>" + . += "<br><font size='1'><a href='byond://?_src_=vars;[HrefToken()];rotatedatum=[refid];rotatedir=left'><<</a> <a href='byond://?_src_=vars;[HrefToken()];datumedit=[refid];varnameedit=dir' id='dir'>[dir2text(dir) || dir]</a> <a href='byond://?_src_=vars;[HrefToken()];rotatedatum=[refid];rotatedir=right'>>></a></font>" /** * call back when a var is edited on this atom diff --git a/code/game/machinery/camera/camera_construction.dm b/code/game/machinery/camera/camera_construction.dm index b3593aad6e7e2..19d7d2a39567b 100644 --- a/code/game/machinery/camera/camera_construction.dm +++ b/code/game/machinery/camera/camera_construction.dm @@ -189,9 +189,9 @@ ai.last_tablet_note_seen = "<HTML><HEAD><TITLE>[itemname]</TITLE></HEAD><BODY><TT>[info]</TT></BODY></HTML>" if(user.name == "Unknown") - to_chat(ai, "[span_name(user)] holds <a href='?_src_=usr;show_tablet=1;'>\a [itemname]</a> up to one of your cameras ...") + to_chat(ai, "[span_name(user)] holds <a href='byond://?_src_=usr;show_tablet=1;'>\a [itemname]</a> up to one of your cameras ...") else - to_chat(ai, "<b><a href='?src=[REF(ai)];track=[html_encode(user.name)]'>[user]</a></b> holds <a href='?_src_=usr;last_shown_paper=1;'>\a [itemname]</a> up to one of your cameras ...") + to_chat(ai, "<b><a href='byond://?src=[REF(ai)];track=[html_encode(user.name)]'>[user]</a></b> holds <a href='byond://?_src_=usr;last_shown_paper=1;'>\a [itemname]</a> up to one of your cameras ...") continue if (potential_viewer.client?.eye == src) @@ -232,16 +232,16 @@ log_paper("[key_name(user)] held [last_shown_paper] up to [src], requesting [key_name(ai)] read it.") if(user.name == "Unknown") - to_chat(ai, "[span_name(user.name)] holds <a href='?_src_=usr;show_paper_note=[REF(last_shown_paper)];'>\a [item_name]</a> up to one of your cameras ...") + to_chat(ai, "[span_name(user.name)] holds <a href='byond://?_src_=usr;show_paper_note=[REF(last_shown_paper)];'>\a [item_name]</a> up to one of your cameras ...") else - to_chat(ai, "<b><a href='?src=[REF(ai)];track=[html_encode(user.name)]'>[user]</a></b> holds <a href='?_src_=usr;show_paper_note=[REF(last_shown_paper)];'>\a [item_name]</a> up to one of your cameras ...") + to_chat(ai, "<b><a href='byond://?src=[REF(ai)];track=[html_encode(user.name)]'>[user]</a></b> holds <a href='byond://?_src_=usr;show_paper_note=[REF(last_shown_paper)];'>\a [item_name]</a> up to one of your cameras ...") continue // If it's not an AI, eye if the client's eye is set to the camera. I wonder if this even works anymore with tgui camera apps and stuff? if (potential_viewer.client?.eye == src) log_paper("[key_name(user)] held [last_shown_paper] up to [src], and [key_name(potential_viewer)] may read it.") potential_viewer.log_talk(item_name, LOG_VICTIM, tag="Pressed to camera from [key_name(user)]", log_globally=FALSE) - to_chat(potential_viewer, "[span_name(user)] holds <a href='?_src_=usr;show_paper_note=[REF(last_shown_paper)];'>\a [item_name]</a> up to your camera...") + to_chat(potential_viewer, "[span_name(user)] holds <a href='byond://?_src_=usr;show_paper_note=[REF(last_shown_paper)];'>\a [item_name]</a> up to your camera...") return return ..() diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index b399223522295..7e9ef45e8f5cf 100644 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -346,7 +346,7 @@ span_adminnotice( \ "<b color='orange'>CROSS-SECTOR MESSAGE (OUTGOING):</b> [ADMIN_LOOKUPFLW(user)] is about to send \ the following message to <b>[destination]</b> (will autoapprove in [GLOB.communications_controller.soft_filtering ? DisplayTimeText(EXTENDED_CROSS_SECTOR_CANCEL_TIME) : DisplayTimeText(CROSS_SECTOR_CANCEL_TIME)]): \ - <b><a href='?src=[REF(src)];reject_cross_comms_message=1'>REJECT</a></b><br> \ + <b><a href='byond://?src=[REF(src)];reject_cross_comms_message=1'>REJECT</a></b><br> \ [html_encode(message)]" \ ) ) diff --git a/code/game/machinery/computer/robot.dm b/code/game/machinery/computer/robot.dm index 12aa1c3ce0362..228391e6bdeec 100644 --- a/code/game/machinery/computer/robot.dm +++ b/code/game/machinery/computer/robot.dm @@ -176,7 +176,7 @@ if(!isnull(console_location)) to_chat(R, span_alert("The approximate location of the console that is keeping you locked down is [console_location]")) if(R.connected_ai) - to_chat(R.connected_ai, "[!R.lockcharge ? span_notice("NOTICE - Cyborg lockdown lifted") : span_alert("ALERT - Cyborg lockdown detected")]: <a href='?src=[REF(R.connected_ai)];track=[html_encode(R.name)]'>[R.name]</a><br>") + to_chat(R.connected_ai, "[!R.lockcharge ? span_notice("NOTICE - Cyborg lockdown lifted") : span_alert("ALERT - Cyborg lockdown detected")]: <a href='byond://?src=[REF(R.connected_ai)];track=[html_encode(R.name)]'>[R.name]</a><br>") /obj/machinery/computer/robotics/proc/borg_destroyed() SIGNAL_HANDLER diff --git a/code/game/machinery/hologram.dm b/code/game/machinery/hologram.dm index a40eaf710a6be..4cb2386056cfd 100644 --- a/code/game/machinery/hologram.dm +++ b/code/game/machinery/hologram.dm @@ -327,7 +327,7 @@ Possible to do for anyone motivated enough: for(var/mob/living/silicon/ai/AI in GLOB.silicon_mobs) if(!AI.client) continue - to_chat(AI, span_info("Your presence is requested at <a href='?src=[REF(AI)];jump_to_holopad=[REF(src)]'>\the [area]</a>. <a href='?src=[REF(AI)];project_to_holopad=[REF(src)]'>Project Hologram?</a>")) + to_chat(AI, span_info("Your presence is requested at <a href='byond://?src=[REF(AI)];jump_to_holopad=[REF(src)]'>\the [area]</a>. <a href='byond://?src=[REF(AI)];project_to_holopad=[REF(src)]'>Project Hologram?</a>")) return TRUE else to_chat(usr, span_info("A request for AI presence was already sent recently.")) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index b83d9a78ac37f..01c506d6fd708 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -2042,9 +2042,9 @@ . = ..() . += {" <br><font size='1'> - DAMTYPE: <font size='1'><a href='?_src_=vars;[HrefToken()];item_to_tweak=[REF(src)];var_tweak=damtype' id='damtype'>[uppertext(damtype)]</a> - FORCE: <font size='1'><a href='?_src_=vars;[HrefToken()];item_to_tweak=[REF(src)];var_tweak=force' id='force'>[force]</a> - WOUND: <font size='1'><a href='?_src_=vars;[HrefToken()];item_to_tweak=[REF(src)];var_tweak=wound' id='wound'>[wound_bonus]</a> - BARE WOUND: <font size='1'><a href='?_src_=vars;[HrefToken()];item_to_tweak=[REF(src)];var_tweak=bare wound' id='bare wound'>[bare_wound_bonus]</a> + DAMTYPE: <font size='1'><a href='byond://?_src_=vars;[HrefToken()];item_to_tweak=[REF(src)];var_tweak=damtype' id='damtype'>[uppertext(damtype)]</a> + FORCE: <font size='1'><a href='byond://?_src_=vars;[HrefToken()];item_to_tweak=[REF(src)];var_tweak=force' id='force'>[force]</a> + WOUND: <font size='1'><a href='byond://?_src_=vars;[HrefToken()];item_to_tweak=[REF(src)];var_tweak=wound' id='wound'>[wound_bonus]</a> + BARE WOUND: <font size='1'><a href='byond://?_src_=vars;[HrefToken()];item_to_tweak=[REF(src)];var_tweak=bare wound' id='bare wound'>[bare_wound_bonus]</a> </font> "} diff --git a/code/game/objects/items/charter.dm b/code/game/objects/items/charter.dm index 69b57fe4e7323..6f8ad945621e5 100644 --- a/code/game/objects/items/charter.dm +++ b/code/game/objects/items/charter.dm @@ -58,7 +58,7 @@ // Autoapproves after a certain time response_timer_id = addtimer(CALLBACK(src, PROC_REF(rename_station), new_name, user.name, user.real_name, key_name(user)), approval_time, TIMER_STOPPABLE) to_chat(GLOB.admins, - span_adminnotice("<b><font color=orange>CUSTOM STATION RENAME:</font></b>[ADMIN_LOOKUPFLW(user)] proposes to rename the [name_type] to [new_name] (will autoapprove in [DisplayTimeText(approval_time)]). [ADMIN_SMITE(user)] (<A HREF='?_src_=holder;[HrefToken(forceGlobal = TRUE)];reject_custom_name=[REF(src)]'>REJECT</A>) [ADMIN_CENTCOM_REPLY(user)]"), + span_adminnotice("<b><font color=orange>CUSTOM STATION RENAME:</font></b>[ADMIN_LOOKUPFLW(user)] proposes to rename the [name_type] to [new_name] (will autoapprove in [DisplayTimeText(approval_time)]). [ADMIN_SMITE(user)] (<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];reject_custom_name=[REF(src)]'>REJECT</A>) [ADMIN_CENTCOM_REPLY(user)]"), type = MESSAGE_TYPE_PRAYER) for(var/client/admin_client in GLOB.admins) if(admin_client.prefs.toggles & SOUND_ADMINHELP) diff --git a/code/game/objects/items/devices/powersink.dm b/code/game/objects/items/devices/powersink.dm index 364550f062aa7..c6aa10784eeef 100644 --- a/code/game/objects/items/devices/powersink.dm +++ b/code/game/objects/items/devices/powersink.dm @@ -151,7 +151,7 @@ air_update_turf(FALSE, FALSE) if(warning_given && internal_heat < max_heat * 0.75) warning_given = FALSE - message_admins("Power sink at ([x],[y],[z] - <A HREF='?_src_=holder;[HrefToken()];adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>) has cooled down and will not explode.") + message_admins("Power sink at ([x],[y],[z] - <A href='byond://?_src_=holder;[HrefToken()];adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>) has cooled down and will not explode.") if(mode != OPERATING && internal_heat < MINIMUM_HEAT) internal_heat = 0 STOP_PROCESSING(SSobj, src) @@ -188,7 +188,7 @@ if(internal_heat > max_heat * ALERT / 100) if (!warning_given) warning_given = TRUE - message_admins("Power sink at ([x],[y],[z] - <A HREF='?_src_=holder;[HrefToken()];adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>) has reached [ALERT]% of max heat. Explosion imminent.") + message_admins("Power sink at ([x],[y],[z] - <A href='byond://?_src_=holder;[HrefToken()];adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>) has reached [ALERT]% of max heat. Explosion imminent.") notify_ghosts( "[src] is about to reach critical heat capacity!", source = src, diff --git a/code/game/objects/items/devices/transfer_valve.dm b/code/game/objects/items/devices/transfer_valve.dm index 4f0c0a84aa317..ffa172707bc7f 100644 --- a/code/game/objects/items/devices/transfer_valve.dm +++ b/code/game/objects/items/devices/transfer_valve.dm @@ -245,7 +245,7 @@ if(attached_device) if(issignaler(attached_device)) var/obj/item/assembly/signaler/attached_signaller = attached_device - attachment = "<A HREF='?_src_=holder;[HrefToken()];secrets=list_signalers'>[attached_signaller]</A>" + attachment = "<A href='byond://?_src_=holder;[HrefToken()];secrets=list_signalers'>[attached_signaller]</A>" attachment_signal_log = attached_signaller.last_receive_signal_log ? "The following log entry is the last one associated with the attached signaller<br>[attached_signaller.last_receive_signal_log]" : "There is no signal log entry." else attachment = attached_device diff --git a/code/game/objects/structures/votingbox.dm b/code/game/objects/structures/votingbox.dm index 55909978fe2f7..013556febbd52 100644 --- a/code/game/objects/structures/votingbox.dm +++ b/code/game/objects/structures/votingbox.dm @@ -44,13 +44,13 @@ dat += "<h1> Unregistered. Swipe ID card to register as voting box operator </h1>" dat += "<h1>[vote_description]</h1>" if(is_operator(user)) - dat += "Voting: <a href='?src=[REF(src)];act=toggle_vote'>[voting_active ? "Active" : "Maintenance Mode"]</a><br>" - dat += "Set Description: <a href='?src=[REF(src)];act=set_desc'>Set Description</a><br>" - dat += "One vote per ID: <a href='?src=[REF(src)];act=toggle_auth'>[id_auth ? "Yes" : "No"]</a><br>" - dat += "Reset voted ID's: <a href='?src=[REF(src)];act=reset_voted'>Reset</a><br>" - dat += "Draw random vote: <a href='?src=[REF(src)];act=raffle'>Raffle</a><br>" - dat += "Shred votes: <a href='?src=[REF(src)];act=shred'>Shred</a><br>" - dat += "Tally votes: <a href='?src=[REF(src)];act=tally'>Tally</a><br>" + dat += "Voting: <a href='byond://?src=[REF(src)];act=toggle_vote'>[voting_active ? "Active" : "Maintenance Mode"]</a><br>" + dat += "Set Description: <a href='byond://?src=[REF(src)];act=set_desc'>Set Description</a><br>" + dat += "One vote per ID: <a href='byond://?src=[REF(src)];act=toggle_auth'>[id_auth ? "Yes" : "No"]</a><br>" + dat += "Reset voted ID's: <a href='byond://?src=[REF(src)];act=reset_voted'>Reset</a><br>" + dat += "Draw random vote: <a href='byond://?src=[REF(src)];act=raffle'>Raffle</a><br>" + dat += "Shred votes: <a href='byond://?src=[REF(src)];act=shred'>Shred</a><br>" + dat += "Tally votes: <a href='byond://?src=[REF(src)];act=tally'>Tally</a><br>" var/datum/browser/popup = new(user, "votebox", "Voting Box", 300, 300) popup.set_content(dat.Join()) diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 5f40de037f4ae..10f0cd7269341 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -21,27 +21,27 @@ var/dat = "<center><B>Game Panel</B></center><hr>" if(SSticker.current_state <= GAME_STATE_PREGAME) - dat += "<A href='?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_manage=1'>(Manage Dynamic Rulesets)</A><br>" - dat += "<A href='?src=[REF(src)];[HrefToken()];f_dynamic_roundstart=1'>(Force Roundstart Rulesets)</A><br>" + dat += "<A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_manage=1'>(Manage Dynamic Rulesets)</A><br>" + dat += "<A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_roundstart=1'>(Force Roundstart Rulesets)</A><br>" if (GLOB.dynamic_forced_roundstart_ruleset.len > 0) for(var/datum/dynamic_ruleset/roundstart/rule in GLOB.dynamic_forced_roundstart_ruleset) - dat += {"<A href='?src=[REF(src)];[HrefToken()];f_dynamic_roundstart_remove=[text_ref(rule)]'>-> [rule.name] <-</A><br>"} - dat += "<A href='?src=[REF(src)];[HrefToken()];f_dynamic_roundstart_clear=1'>(Clear Rulesets)</A><br>" - dat += "<A href='?src=[REF(src)];[HrefToken()];f_dynamic_options=1'>(Dynamic mode options)</A><br>" + dat += {"<A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_roundstart_remove=[text_ref(rule)]'>-> [rule.name] <-</A><br>"} + dat += "<A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_roundstart_clear=1'>(Clear Rulesets)</A><br>" + dat += "<A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_options=1'>(Dynamic mode options)</A><br>" dat += "<hr/>" if(SSticker.IsRoundInProgress()) - dat += "<a href='?src=[REF(src)];[HrefToken()];gamemode_panel=1'>(Game Mode Panel)</a><BR>" - dat += "<A href='?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_manage=1'>(Manage Dynamic Rulesets)</A><br>" + dat += "<a href='byond://?src=[REF(src)];[HrefToken()];gamemode_panel=1'>(Game Mode Panel)</a><BR>" + dat += "<A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_manage=1'>(Manage Dynamic Rulesets)</A><br>" dat += {" <BR> - <A href='?src=[REF(src)];[HrefToken()];create_object=1'>Create Object</A><br> - <A href='?src=[REF(src)];[HrefToken()];quick_create_object=1'>Quick Create Object</A><br> - <A href='?src=[REF(src)];[HrefToken()];create_turf=1'>Create Turf</A><br> - <A href='?src=[REF(src)];[HrefToken()];create_mob=1'>Create Mob</A><br> + <A href='byond://?src=[REF(src)];[HrefToken()];create_object=1'>Create Object</A><br> + <A href='byond://?src=[REF(src)];[HrefToken()];quick_create_object=1'>Quick Create Object</A><br> + <A href='byond://?src=[REF(src)];[HrefToken()];create_turf=1'>Create Turf</A><br> + <A href='byond://?src=[REF(src)];[HrefToken()];create_mob=1'>Create Mob</A><br> "} if(marked_datum && istype(marked_datum, /atom)) - dat += "<A href='?src=[REF(src)];[HrefToken()];dupe_marked_datum=1'>Duplicate Marked Datum</A><br>" + dat += "<A href='byond://?src=[REF(src)];[HrefToken()];dupe_marked_datum=1'>Duplicate Marked Datum</A><br>" usr << browse(dat, "window=admin2;size=240x280") return @@ -110,17 +110,17 @@ ADMIN_VERB(spawn_cargo, R_SPAWN, "Spawn Cargo", "Spawn a cargo crate.", ADMIN_CA <h3>Common options</h3> <i>All these options can be changed midround.</i> <br/> <br/> - <b>Force extended:</b> - Option is <a href='?src=[REF(src)];[HrefToken()];f_dynamic_force_extended=1'> <b>[GLOB.dynamic_forced_extended ? "ON" : "OFF"]</a></b>. + <b>Force extended:</b> - Option is <a href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_force_extended=1'> <b>[GLOB.dynamic_forced_extended ? "ON" : "OFF"]</a></b>. <br/>This will force the round to be extended. No rulesets will be drafted. <br/> <br/> - <b>No stacking:</b> - Option is <a href='?src=[REF(src)];[HrefToken()];f_dynamic_no_stacking=1'> <b>[GLOB.dynamic_no_stacking ? "ON" : "OFF"]</b></a>. + <b>No stacking:</b> - Option is <a href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_no_stacking=1'> <b>[GLOB.dynamic_no_stacking ? "ON" : "OFF"]</b></a>. <br/>Unless the threat goes above [GLOB.dynamic_stacking_limit], only one "round-ender" ruleset will be drafted. <br/> <br/> - <b>Forced threat level:</b> Current value : <a href='?src=[REF(src)];[HrefToken()];f_dynamic_forced_threat=1'><b>[GLOB.dynamic_forced_threat_level]</b></a>. + <b>Forced threat level:</b> Current value : <a href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_forced_threat=1'><b>[GLOB.dynamic_forced_threat_level]</b></a>. <br/>The value threat is set to if it is higher than -1.<br/> <br/> <br/> - <b>Stacking threeshold:</b> Current value : <a href='?src=[REF(src)];[HrefToken()];f_dynamic_stacking_limit=1'><b>[GLOB.dynamic_stacking_limit]</b></a>. + <b>Stacking threeshold:</b> Current value : <a href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_stacking_limit=1'><b>[GLOB.dynamic_stacking_limit]</b></a>. <br/>The threshold at which "round-ender" rulesets will stack. A value higher than 100 ensure this never happens. <br/> "} @@ -131,9 +131,9 @@ ADMIN_VERB(spawn_cargo, R_SPAWN, "Spawn Cargo", "Spawn a cargo crate.", ADMIN_CA Change these options to forcibly enable or disable dynamic rulesets.<br/>\ Disabled rulesets will never run, even if they would otherwise be valid.<br/>\ Enabled rulesets will run even if the qualifying minimum of threat or player count is not present, this does not guarantee that they will necessarily be chosen (for example their weight may be set to 0 in config).<br/>\ - \[<A href='?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_all_on=1'>force enable all</A> / \ - <A href='?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_all_off=1'>force disable all</A> / \ - <A href='?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_all_reset=1'>reset all</A>\]" + \[<A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_all_on=1'>force enable all</A> / \ + <A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_all_off=1'>force disable all</A> / \ + <A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_all_reset=1'>reset all</A>\]" if (SSticker.current_state <= GAME_STATE_PREGAME) // Don't bother displaying after the round has started var/static/list/rulesets_by_context = list() @@ -166,9 +166,9 @@ ADMIN_VERB(spawn_cargo, R_SPAWN, "Spawn Cargo", "Spawn a cargo crate.", ADMIN_CA if (RULESET_FORCE_DISABLED) color = COLOR_RED dat += "<tr><td><b>[initial(rule.name)]</b></td><td>\[<font color=[color]>[forced]</font>\]</td><td>\[\ - <A href='?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_on=[text_ref(rule)]'>force enabled</A> /\ - <A href='?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_off=[text_ref(rule)]'>force disabled</A> /\ - <A href='?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_reset=[text_ref(rule)]'>reset</A>\]</td></tr>" + <A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_on=[text_ref(rule)]'>force enabled</A> /\ + <A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_off=[text_ref(rule)]'>force disabled</A> /\ + <A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_reset=[text_ref(rule)]'>reset</A>\]</td></tr>" dat += "</table>" return dat @@ -199,10 +199,10 @@ ADMIN_VERB(spawn_cargo, R_SPAWN, "Spawn Cargo", "Spawn a cargo crate.", ADMIN_CA dat += "<tr><td><b>[rule.name]</b></td>\ <td>\[Weight : [rule.weight]\]\ <td>\[<font color=[color]>[active][explanation]</font>\]</td><td>\[\ - <A href='?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_on=[text_ref(rule.type)]'>force enabled</A> /\ - <A href='?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_off=[text_ref(rule.type)]'>force disabled</A> /\ - <A href='?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_reset=[text_ref(rule.type)]'>reset</A>\]</td>\ - <td>\[<A href='?src=[REF(src)];[HrefToken()];f_inspect_ruleset=[text_ref(rule)]'>VV</A>\]</td></tr>" + <A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_on=[text_ref(rule.type)]'>force enabled</A> /\ + <A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_off=[text_ref(rule.type)]'>force disabled</A> /\ + <A href='byond://?src=[REF(src)];[HrefToken()];f_dynamic_ruleset_force_reset=[text_ref(rule.type)]'>reset</A>\]</td>\ + <td>\[<A href='byond://?src=[REF(src)];[HrefToken()];f_inspect_ruleset=[text_ref(rule)]'>VV</A>\]</td></tr>" dat += "</table>" return dat diff --git a/code/modules/admin/antag_panel.dm b/code/modules/admin/antag_panel.dm index e348321326473..33d12f9be22bc 100644 --- a/code/modules/admin/antag_panel.dm +++ b/code/modules/admin/antag_panel.dm @@ -30,7 +30,7 @@ GLOBAL_VAR(antag_prototypes) /datum/antagonist/proc/antag_panel() var/list/commands = list() for(var/command in get_admin_commands()) - commands += "<a href='?src=[REF(src)];command=[command]'>[command]</a>" + commands += "<a href='byond://?src=[REF(src)];command=[command]'>[command]</a>" var/command_part = commands.Join(" | ") var/data_part = antag_panel_data() var/objective_part = antag_panel_objectives() @@ -47,30 +47,30 @@ GLOBAL_VAR(antag_prototypes) var/obj_count = 1 for(var/datum/objective/objective as anything in objectives) result += "<B>[obj_count]</B>: [objective.explanation_text] \ - <a href='?src=[REF(owner)];obj_edit=[REF(objective)]'>Edit</a> \ - <a href='?src=[REF(owner)];obj_delete=[REF(objective)]'>Delete</a> \ - <a href='?src=[REF(owner)];obj_completed=[REF(objective)]'><font color=[objective.check_completion() ? "green" : "red"]>[objective.completed ? "Mark as incomplete" : "Mark as complete"]</font></a> \ + <a href='byond://?src=[REF(owner)];obj_edit=[REF(objective)]'>Edit</a> \ + <a href='byond://?src=[REF(owner)];obj_delete=[REF(objective)]'>Delete</a> \ + <a href='byond://?src=[REF(owner)];obj_completed=[REF(objective)]'><font color=[objective.check_completion() ? "green" : "red"]>[objective.completed ? "Mark as incomplete" : "Mark as complete"]</font></a> \ <br>" obj_count++ - result += "<a href='?src=[REF(owner)];obj_add=1;target_antag=[REF(src)]'>Add objective</a><br>" - result += "<a href='?src=[REF(owner)];obj_prompt_custom=1;target_antag=[REF(src)]'>Prompt custom objective entry</a><br>" - result += "<a href='?src=[REF(owner)];obj_announce=1'>Announce objectives</a><br>" + result += "<a href='byond://?src=[REF(owner)];obj_add=1;target_antag=[REF(src)]'>Add objective</a><br>" + result += "<a href='byond://?src=[REF(owner)];obj_prompt_custom=1;target_antag=[REF(src)]'>Prompt custom objective entry</a><br>" + result += "<a href='byond://?src=[REF(owner)];obj_announce=1'>Announce objectives</a><br>" return result /datum/mind/proc/get_common_admin_commands() var/common_commands = "<span>Common Commands:</span>" if(ishuman(current)) - common_commands += "<a href='?src=[REF(src)];common=undress'>undress</a>" + common_commands += "<a href='byond://?src=[REF(src)];common=undress'>undress</a>" else if(iscyborg(current)) var/mob/living/silicon/robot/R = current if(R.emagged) - common_commands += "<a href='?src=[REF(src)];silicon=Unemag'>Unemag</a>" + common_commands += "<a href='byond://?src=[REF(src)];silicon=Unemag'>Unemag</a>" else if(isAI(current)) var/mob/living/silicon/ai/A = current if (A.connected_robots.len) for (var/mob/living/silicon/robot/R in A.connected_robots) if (R.emagged) - common_commands += "<a href='?src=[REF(src)];silicon=unemagcyborgs'>Unemag slaved cyborgs</a>" + common_commands += "<a href='byond://?src=[REF(src)];silicon=unemagcyborgs'>Unemag slaved cyborgs</a>" break return common_commands @@ -99,9 +99,9 @@ GLOBAL_VAR(antag_prototypes) var/out = "<B>[name]</B>[(current && (current.real_name != name))?" (as [current.real_name])":""]<br>" out += "Mind currently owned by key: [key] [active?"(synced)":"(not synced)"]<br>" - out += "Assigned role: [assigned_role.title]. <a href='?src=[REF(src)];role_edit=1'>Edit</a><br>" + out += "Assigned role: [assigned_role.title]. <a href='byond://?src=[REF(src)];role_edit=1'>Edit</a><br>" out += "Faction and special role: <b><font color='red'>[special_role]</font></b><br>" - out += "<a href='?_src_=holder;[HrefToken()];check_teams=1'>Show Teams</a><br><br>" + out += "<a href='byond://?_src_=holder;[HrefToken()];check_teams=1'>Show Teams</a><br><br>" var/special_statuses = get_special_statuses() if(length(special_statuses)) @@ -138,7 +138,7 @@ GLOBAL_VAR(antag_prototypes) continue //Let's skip subtypes of what we already shown. else if(prototype.show_in_antagpanel) if(prototype.can_be_owned(src)) - possible_admin_antags += "<a href='?src=[REF(src)];add_antag=[prototype.type]' title='[prototype.type]'>[prototype.name]</a>" + possible_admin_antags += "<a href='byond://?src=[REF(src)];add_antag=[prototype.type]' title='[prototype.type]'>[prototype.name]</a>" else possible_admin_antags += "<a class='linkOff'>[prototype.name]</a>" else @@ -155,8 +155,8 @@ GLOBAL_VAR(antag_prototypes) else //Show removal and current one priority_sections |= antag_category antag_header_parts += span_bad("[current_antag.name]") - antag_header_parts += "<a href='?src=[REF(src)];remove_antag=[REF(current_antag)]'>Remove</a>" - antag_header_parts += "<a href='?src=[REF(src)];open_antag_vv=[REF(current_antag)]'>Open VV</a>" + antag_header_parts += "<a href='byond://?src=[REF(src)];remove_antag=[REF(current_antag)]'>Remove</a>" + antag_header_parts += "<a href='byond://?src=[REF(src)];open_antag_vv=[REF(current_antag)]'>Open VV</a>" //We aren't antag of this category, grab first prototype to check the prefs (This is pretty vague but really not sure how else to do this) @@ -196,19 +196,19 @@ GLOBAL_VAR(antag_prototypes) var/datum/component/uplink/U = find_syndicate_uplink() if(U) if(!U.uplink_handler.has_objectives) - uplink_info += "<a href='?src=[REF(src)];common=takeuplink'>take</a>" + uplink_info += "<a href='byond://?src=[REF(src)];common=takeuplink'>take</a>" if (check_rights(R_FUN, 0)) - uplink_info += ", <a href='?src=[REF(src)];common=crystals'>[U.uplink_handler.telecrystals]</a> TC" + uplink_info += ", <a href='byond://?src=[REF(src)];common=crystals'>[U.uplink_handler.telecrystals]</a> TC" if(U.uplink_handler.has_progression) - uplink_info += ", <a href='?src=[REF(src)];common=progression'>[U.uplink_handler.progression_points]</a> PR" + uplink_info += ", <a href='byond://?src=[REF(src)];common=progression'>[U.uplink_handler.progression_points]</a> PR" if(U.uplink_handler.has_objectives) - uplink_info += ", <a href='?src=[REF(src)];common=give_objective'>Force Give Objective</a>" + uplink_info += ", <a href='byond://?src=[REF(src)];common=give_objective'>Force Give Objective</a>" else uplink_info += ", [U.uplink_handler.telecrystals] TC" if(U.uplink_handler.has_progression) uplink_info += ", [U.uplink_handler.progression_points] PR" else - uplink_info += "<a href='?src=[REF(src)];common=uplink'>give</a>" + uplink_info += "<a href='byond://?src=[REF(src)];common=uplink'>give</a>" uplink_info += "." //hiel grammar out += uplink_info + "<br>" diff --git a/code/modules/admin/check_antagonists.dm b/code/modules/admin/check_antagonists.dm index 04db519ffb50a..30071504c9199 100644 --- a/code/modules/admin/check_antagonists.dm +++ b/code/modules/admin/check_antagonists.dm @@ -5,9 +5,9 @@ if(!owner) return "Unassigned" if(owner.current) - return "<a href='?_src_=holder;[HrefToken()];adminplayeropts=[REF(owner.current)]'>[owner.current.real_name]</a> " + return "<a href='byond://?_src_=holder;[HrefToken()];adminplayeropts=[REF(owner.current)]'>[owner.current.real_name]</a> " else - return "<a href='?_src_=vars;[HrefToken()];Vars=[REF(owner)]'>[owner.name]</a> " + return "<a href='byond://?_src_=vars;[HrefToken()];Vars=[REF(owner)]'>[owner.name]</a> " //Whatever interesting things happened to the antag admins should know about //Include additional information about antag in this part @@ -28,12 +28,12 @@ if(!owner) return var/list/parts = list() - parts += "<a href='?priv_msg=[ckey(owner.key)]'>PM</a>" + parts += "<a href='byond://?priv_msg=[ckey(owner.key)]'>PM</a>" if(owner.current) //There's body to follow - parts += "<a href='?_src_=holder;[HrefToken()];adminplayerobservefollow=[REF(owner.current)]'>FLW</a>" + parts += "<a href='byond://?_src_=holder;[HrefToken()];adminplayerobservefollow=[REF(owner.current)]'>FLW</a>" else parts += "" - parts += "<a href='?_src_=holder;[HrefToken()];traitor=[REF(owner)]'>Show Objective</a>" + parts += "<a href='byond://?_src_=holder;[HrefToken()];traitor=[REF(owner)]'>Show Objective</a>" return parts //Better as one cell or two/three //Builds table row for the antag @@ -95,26 +95,26 @@ tgui_alert(usr, "The game hasn't started yet!") return var/list/dat = list("<html><head><meta http-equiv='Content-Type' content='text/html; charset=UTF-8'><title>Round Status</title></head><body><h1><B>Round Status</B></h1>") - dat += "<a href='?_src_=holder;[HrefToken()];gamemode_panel=1'>Game Mode Panel</a><br>" + dat += "<a href='byond://?_src_=holder;[HrefToken()];gamemode_panel=1'>Game Mode Panel</a><br>" dat += "Round Duration: <B>[DisplayTimeText(world.time - SSticker.round_start_time)]</B><BR>" dat += "<B>Emergency shuttle</B><BR>" if(EMERGENCY_IDLE_OR_RECALLED) - dat += "<a href='?_src_=holder;[HrefToken()];call_shuttle=1'>Call Shuttle</a><br>" + dat += "<a href='byond://?_src_=holder;[HrefToken()];call_shuttle=1'>Call Shuttle</a><br>" else var/timeleft = SSshuttle.emergency.timeLeft() if(SSshuttle.emergency.mode == SHUTTLE_CALL) - dat += "ETA: <a href='?_src_=holder;[HrefToken()];edit_shuttle_time=1'>[(timeleft / 60) % 60]:[add_leading(num2text(timeleft % 60), 2, "0")]</a><BR>" - dat += "<a href='?_src_=holder;[HrefToken()];call_shuttle=2'>Send Back</a><br>" + dat += "ETA: <a href='byond://?_src_=holder;[HrefToken()];edit_shuttle_time=1'>[(timeleft / 60) % 60]:[add_leading(num2text(timeleft % 60), 2, "0")]</a><BR>" + dat += "<a href='byond://?_src_=holder;[HrefToken()];call_shuttle=2'>Send Back</a><br>" else - dat += "ETA: <a href='?_src_=holder;[HrefToken()];edit_shuttle_time=1'>[(timeleft / 60) % 60]:[add_leading(num2text(timeleft % 60), 2, "0")]</a><BR>" - dat += "<a href='?_src_=holder;[HrefToken()];end_round=[REF(usr)]'>End Round Now</a><br>" + dat += "ETA: <a href='byond://?_src_=holder;[HrefToken()];edit_shuttle_time=1'>[(timeleft / 60) % 60]:[add_leading(num2text(timeleft % 60), 2, "0")]</a><BR>" + dat += "<a href='byond://?_src_=holder;[HrefToken()];end_round=[REF(usr)]'>End Round Now</a><br>" if(SSticker.delay_end) - dat += "<a href='?_src_=holder;[HrefToken()];undelay_round_end=1'>Undelay Round End</a><br>" + dat += "<a href='byond://?_src_=holder;[HrefToken()];undelay_round_end=1'>Undelay Round End</a><br>" else - dat += "<a href='?_src_=holder;[HrefToken()];delay_round_end=1'>Delay Round End</a><br>" - dat += "<a href='?_src_=holder;[HrefToken()];ctf_toggle=1'>Enable/Disable CTF</a><br>" - dat += "<a href='?_src_=holder;[HrefToken()];rebootworld=1'>Reboot World</a><br>" - dat += "<a href='?_src_=holder;[HrefToken()];check_teams=1'>Check Teams</a>" + dat += "<a href='byond://?_src_=holder;[HrefToken()];delay_round_end=1'>Delay Round End</a><br>" + dat += "<a href='byond://?_src_=holder;[HrefToken()];ctf_toggle=1'>Enable/Disable CTF</a><br>" + dat += "<a href='byond://?_src_=holder;[HrefToken()];rebootworld=1'>Reboot World</a><br>" + dat += "<a href='byond://?_src_=holder;[HrefToken()];check_teams=1'>Check Teams</a>" var/connected_players = GLOB.clients.len var/lobby_players = 0 var/observers = 0 diff --git a/code/modules/admin/known_alts.dm b/code/modules/admin/known_alts.dm index 4105c7f4edc93..3c51ca68bdf1b 100644 --- a/code/modules/admin/known_alts.dm +++ b/code/modules/admin/known_alts.dm @@ -168,7 +168,7 @@ GLOBAL_DATUM_INIT(known_alts, /datum/known_alts, new) var/list/known_alts_html = list() for (var/known_alt in load_known_alts()) - known_alts_html += "<a href='?src=[REF(src)];[HrefToken()];action=delete;id=[known_alt[4]]'>\[-\] Delete</a> <b>[known_alt[1]]</b> is an alt of <b>[known_alt[2]]</b> (added by <b>[known_alt[3]]</b>)." + known_alts_html += "<a href='byond://?src=[REF(src)];[HrefToken()];action=delete;id=[known_alt[4]]'>\[-\] Delete</a> <b>[known_alt[1]]</b> is an alt of <b>[known_alt[2]]</b> (added by <b>[known_alt[3]]</b>)." var/html = {" <head> @@ -179,7 +179,7 @@ GLOBAL_DATUM_INIT(known_alts, /datum/known_alts, new) <p>Any two ckeys in this panel will not show in "banned connection history".</p> <p>Sometimes players switch account, and it's customary to perma-ban the old one.</p> - <h2>All Known Alts:</h2> <a href='?src=[REF(src)];[HrefToken()];action=add'>\[+\] Add</a><hr> + <h2>All Known Alts:</h2> <a href='byond://?src=[REF(src)];[HrefToken()];action=add'>\[+\] Add</a><hr> [known_alts_html.Join("<br />")] </body> diff --git a/code/modules/admin/permissionedit.dm b/code/modules/admin/permissionedit.dm index 6bd97dcaa2005..e474fcff0955d 100644 --- a/code/modules/admin/permissionedit.dm +++ b/code/modules/admin/permissionedit.dm @@ -7,11 +7,11 @@ ADMIN_VERB(edit_admin_permissions, R_PERMISSIONS, "Permissions Panel", "Edit adm return var/datum/asset/asset_cache_datum = get_asset_datum(/datum/asset/group/permissions) asset_cache_datum.send(usr) - var/list/output = list("<link rel='stylesheet' type='text/css' href='[SSassets.transport.get_asset_url("panels.css")]'><a href='?_src_=holder;[HrefToken()];editrightsbrowser=1'>\[Permissions\]</a>") + var/list/output = list("<link rel='stylesheet' type='text/css' href='[SSassets.transport.get_asset_url("panels.css")]'><a href='byond://?_src_=holder;[HrefToken()];editrightsbrowser=1'>\[Permissions\]</a>") if(action) - output += " | <a href='?_src_=holder;[HrefToken()];editrightsbrowserlog=1;editrightspage=0'>\[Log\]</a> | <a href='?_src_=holder;[HrefToken()];editrightsbrowsermanage=1'>\[Management\]</a><hr style='background:#000000; border:0; height:3px'>" + output += " | <a href='byond://?_src_=holder;[HrefToken()];editrightsbrowserlog=1;editrightspage=0'>\[Log\]</a> | <a href='byond://?_src_=holder;[HrefToken()];editrightsbrowsermanage=1'>\[Management\]</a><hr style='background:#000000; border:0; height:3px'>" else - output += "<br><a href='?_src_=holder;[HrefToken()];editrightsbrowserlog=1;editrightspage=0'>\[Log\]</a><br><a href='?_src_=holder;[HrefToken()];editrightsbrowsermanage=1'>\[Management\]</a>" + output += "<br><a href='byond://?_src_=holder;[HrefToken()];editrightsbrowserlog=1;editrightspage=0'>\[Log\]</a><br><a href='byond://?_src_=holder;[HrefToken()];editrightsbrowsermanage=1'>\[Management\]</a>" if(action == 1) var/logcount = 0 var/logssperpage = 20 @@ -30,7 +30,7 @@ ADMIN_VERB(edit_admin_permissions, R_PERMISSIONS, "Permissions Panel", "Edit adm if(logcount > logssperpage) output += "<br><b>Page: </b>" while(logcount > 0) - output += "|<a href='?_src_=holder;[HrefToken()];editrightsbrowserlog=1;editrightstarget=[target];editrightsoperation=[operation];editrightspage=[pagecount]'>[pagecount == page ? "<b>\[[pagecount]\]</b>" : "\[[pagecount]\]"]</a>" + output += "|<a href='byond://?_src_=holder;[HrefToken()];editrightsbrowserlog=1;editrightstarget=[target];editrightsoperation=[operation];editrightspage=[pagecount]'>[pagecount == page ? "<b>\[[pagecount]\]</b>" : "\[[pagecount]\]"]</a>" logcount -= logssperpage pagecount++ output += "|" @@ -69,7 +69,7 @@ ADMIN_VERB(edit_admin_permissions, R_PERMISSIONS, "Permissions Panel", "Edit adm while(query_check_admin_errors.NextRow()) var/admin_key = query_check_admin_errors.item[1] var/admin_rank = query_check_admin_errors.item[2] - output += "[admin_key] has non-existent rank [admin_rank] | <a href='?_src_=holder;[HrefToken()];editrightsbrowsermanage=1;editrightschange=[admin_key]'>\[Change Rank\]</a> | <a href='?_src_=holder;[HrefToken()];editrightsbrowsermanage=1;editrightsremove=[admin_key]'>\[Remove\]</a>" + output += "[admin_key] has non-existent rank [admin_rank] | <a href='byond://?_src_=holder;[HrefToken()];editrightsbrowsermanage=1;editrightschange=[admin_key]'>\[Change Rank\]</a> | <a href='byond://?_src_=holder;[HrefToken()];editrightsbrowsermanage=1;editrightsremove=[admin_key]'>\[Remove\]</a>" output += "<hr style='background:#000000; border:0; height:1px'>" qdel(query_check_admin_errors) output += "<h3>Unused ranks</h3>" @@ -79,7 +79,7 @@ ADMIN_VERB(edit_admin_permissions, R_PERMISSIONS, "Permissions Panel", "Edit adm return while(query_check_unused_rank.NextRow()) var/admin_rank = query_check_unused_rank.item[1] - output += {"Rank [admin_rank] is not held by any admin | <a href='?_src_=holder;[HrefToken()];editrightsbrowsermanage=1;editrightsremoverank=[admin_rank]'>\[Remove\]</a> + output += {"Rank [admin_rank] is not held by any admin | <a href='byond://?_src_=holder;[HrefToken()];editrightsbrowsermanage=1;editrightsremoverank=[admin_rank]'>\[Remove\]</a> <br>Permissions: [rights2text(text2num(query_check_unused_rank.item[2])," ")] <br>Denied: [rights2text(text2num(query_check_unused_rank.item[3])," ", "-")] <br>Allowed to edit: [rights2text(text2num(query_check_unused_rank.item[4])," ", "*")] @@ -95,7 +95,7 @@ ADMIN_VERB(edit_admin_permissions, R_PERMISSIONS, "Permissions Panel", "Edit adm <body onload='selectTextField();updateSearch();'> <div id='main'><table id='searchable' cellspacing='0'> <tr class='title'> - <th style='width:150px;'>CKEY <a class='small' href='?src=[REF(src)];[HrefToken()];editrights=add'>\[+\]</a></th> + <th style='width:150px;'>CKEY <a class='small' href='byond://?src=[REF(src)];[HrefToken()];editrights=add'>\[+\]</a></th> <th style='width:125px;'>RANK</th> <th>PERMISSIONS</th> </tr> @@ -110,18 +110,18 @@ ADMIN_VERB(edit_admin_permissions, R_PERMISSIONS, "Permissions Panel", "Edit adm if(D.owner) adm_ckey = D.owner.key if (D.deadmined) - deadminlink = " <a class='small' href='?src=[REF(src)];[HrefToken()];editrights=activate;key=[adm_ckey]'>\[RA\]</a>" + deadminlink = " <a class='small' href='byond://?src=[REF(src)];[HrefToken()];editrights=activate;key=[adm_ckey]'>\[RA\]</a>" else - deadminlink = " <a class='small' href='?src=[REF(src)];[HrefToken()];editrights=deactivate;key=[adm_ckey]'>\[DA\]</a>" + deadminlink = " <a class='small' href='byond://?src=[REF(src)];[HrefToken()];editrights=deactivate;key=[adm_ckey]'>\[DA\]</a>" var/verify_link = "" if (D.blocked_by_2fa) - verify_link += " | <a class='small' href='?src=[REF(src)];[HrefToken()];editrights=verify;key=[adm_ckey]'>\[2FA VERIFY\]</a>" + verify_link += " | <a class='small' href='byond://?src=[REF(src)];[HrefToken()];editrights=verify;key=[adm_ckey]'>\[2FA VERIFY\]</a>" output += "<tr>" - output += "<td style='text-align:center;'>[adm_ckey]<br>[deadminlink]<a class='small' href='?src=[REF(src)];[HrefToken()];editrights=remove;key=[adm_ckey]'>\[-\]</a><a class='small' href='?src=[REF(src)];[HrefToken()];editrights=sync;key=[adm_ckey]'>\[SYNC TGDB\]</a>[verify_link]</td>" - output += "<td><a href='?src=[REF(src)];[HrefToken()];editrights=rank;key=[adm_ckey]'>[D.rank_names()]</a></td>" - output += "<td><a class='small' href='?src=[REF(src)];[HrefToken()];editrights=permissions;key=[adm_ckey]'>[rights2text(D.rank_flags(), " ")]</a></td>" + output += "<td style='text-align:center;'>[adm_ckey]<br>[deadminlink]<a class='small' href='byond://?src=[REF(src)];[HrefToken()];editrights=remove;key=[adm_ckey]'>\[-\]</a><a class='small' href='byond://?src=[REF(src)];[HrefToken()];editrights=sync;key=[adm_ckey]'>\[SYNC TGDB\]</a>[verify_link]</td>" + output += "<td><a href='byond://?src=[REF(src)];[HrefToken()];editrights=rank;key=[adm_ckey]'>[D.rank_names()]</a></td>" + output += "<td><a class='small' href='byond://?src=[REF(src)];[HrefToken()];editrights=permissions;key=[adm_ckey]'>[rights2text(D.rank_flags(), " ")]</a></td>" output += "</tr>" output += "</table></div><div id='top'><b>Search:</b> <input type='text' id='filter' value='' style='width:70%;' onkeyup='updateSearch();'></div></body>" if(QDELETED(usr)) @@ -140,7 +140,7 @@ ADMIN_VERB(edit_admin_permissions, R_PERMISSIONS, "Permissions Panel", "Edit adm permissions_assets.send(usr.client) var/admin_key = href_list["key"] var/admin_ckey = ckey(admin_key) - + var/task = href_list["editrights"] var/datum/admins/target_admin_datum = GLOB.admin_datums[admin_ckey] if(!target_admin_datum) @@ -178,7 +178,7 @@ ADMIN_VERB(edit_admin_permissions, R_PERMISSIONS, "Permissions Panel", "Edit adm use_db = FALSE if(QDELETED(usr)) return - + if(target_admin_datum && (task != "sync" && task != "verify") && !check_if_greater_rights_than_holder(target_admin_datum)) message_admins("[key_name_admin(usr)] attempted to change the rank of [admin_key] without sufficient rights.") log_admin("[key_name(usr)] attempted to change the rank of [admin_key] without sufficient rights.") diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm index 31c34957544e4..ddb02b78b8acc 100644 --- a/code/modules/admin/player_panel.dm +++ b/code/modules/admin/player_panel.dm @@ -80,19 +80,19 @@ body += "</td><td align='center'>"; - body += "<a href='?_src_=holder;[HrefToken()];adminplayeropts="+ref+"'>PP</a> - " - body += "<a href='?_src_=holder;[HrefToken()];showmessageckey="+ckey+"'>N</a> - " - body += "<a href='?_src_=vars;[HrefToken()];Vars="+ref+"'>VV</a> - " - body += "<a href='?_src_=vars;[HrefToken()];skill="+ref+"'>SP</a> - " - body += "<a href='?_src_=holder;[HrefToken()];traitor="+ref+"'>TP</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];adminplayeropts="+ref+"'>PP</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];showmessageckey="+ckey+"'>N</a> - " + body += "<a href='byond://?_src_=vars;[HrefToken()];Vars="+ref+"'>VV</a> - " + body += "<a href='byond://?_src_=vars;[HrefToken()];skill="+ref+"'>SP</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];traitor="+ref+"'>TP</a> - " if (job == "Cyborg") - body += "<a href='?_src_=holder;[HrefToken()];borgpanel="+ref+"'>BP</a> - " - body += "<a href='?priv_msg="+ckey+"'>PM</a> - " - body += "<a href='?_src_=holder;[HrefToken()];subtlemessage="+ref+"'>SM</a> - " - body += "<a href='?_src_=holder;[HrefToken()];adminplayerobservefollow="+ref+"'>FLW</a> - " - body += "<a href='?_src_=holder;[HrefToken()];individuallog="+ref+"'>LOGS</a><br>" + body += "<a href='byond://?_src_=holder;[HrefToken()];borgpanel="+ref+"'>BP</a> - " + body += "<a href='byond://?priv_msg="+ckey+"'>PM</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];subtlemessage="+ref+"'>SM</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];adminplayerobservefollow="+ref+"'>FLW</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];individuallog="+ref+"'>LOGS</a><br>" if(antagonist > 0) - body += "<font size='2'><a href='?_src_=holder;[HrefToken()];check_antagonist=1'><font color='red'><b>Antagonist</b></font></a></font>"; + body += "<font size='2'><a href='byond://?_src_=holder;[HrefToken()];check_antagonist=1'><font color='red'><b>Antagonist</b></font></a></font>"; body += "</td></tr></table>"; @@ -198,7 +198,7 @@ <tr id='title_tr'> <td align='center'> <font size='5'><b>Player panel</b></font><br> - Hover over a line to see more information - <a href='?_src_=holder;[HrefToken()];check_antagonist=1'>Check antagonists</a> - Kick <a href='?_src_=holder;[HrefToken()];kick_all_from_lobby=1;afkonly=0'>everyone</a>/<a href='?_src_=holder;[HrefToken()];kick_all_from_lobby=1;afkonly=1'>AFKers</a> in lobby + Hover over a line to see more information - <a href='byond://?_src_=holder;[HrefToken()];check_antagonist=1'>Check antagonists</a> - Kick <a href='byond://?_src_=holder;[HrefToken()];kick_all_from_lobby=1;afkonly=0'>everyone</a>/<a href='byond://?_src_=holder;[HrefToken()];kick_all_from_lobby=1;afkonly=1'>AFKers</a> in lobby <p> </td> </tr> diff --git a/code/modules/admin/poll_management.dm b/code/modules/admin/poll_management.dm index 86f075d311340..88a38c90166b4 100644 --- a/code/modules/admin/poll_management.dm +++ b/code/modules/admin/poll_management.dm @@ -71,12 +71,12 @@ * */ /datum/admins/proc/poll_list_panel() - var/list/output = list("Current and future polls<br>Note when editing polls or their options changes are not saved until you press Submit Poll.<br><a href='?_src_=holder;[HrefToken()];newpoll=1'>New Poll</a><a href='?_src_=holder;[HrefToken()];reloadpolls=1'>Reload Polls</a><hr>") + var/list/output = list("Current and future polls<br>Note when editing polls or their options changes are not saved until you press Submit Poll.<br><a href='byond://?_src_=holder;[HrefToken()];newpoll=1'>New Poll</a><a href='byond://?_src_=holder;[HrefToken()];reloadpolls=1'>Reload Polls</a><hr>") for(var/p in GLOB.polls) var/datum/poll_question/poll = p output += {"[poll.question] - <a href='?_src_=holder;[HrefToken()];editpoll=[REF(poll)]'> Edit</a> - <a href='?_src_=holder;[HrefToken()];deletepoll=[REF(poll)]'> Delete</a> + <a href='byond://?_src_=holder;[HrefToken()];editpoll=[REF(poll)]'> Edit</a> + <a href='byond://?_src_=holder;[HrefToken()];deletepoll=[REF(poll)]'> Delete</a> "} if(poll.subtitle) output += "<br>[poll.subtitle]" @@ -204,20 +204,20 @@ <br> "} if(poll.poll_type == POLLTYPE_TEXT) - output += "<a href='?_src_=holder;[HrefToken()];clearpollvotes=[REF(poll)]'>Clear poll responses</a> [poll.poll_votes] players have responded" + output += "<a href='byond://?_src_=holder;[HrefToken()];clearpollvotes=[REF(poll)]'>Clear poll responses</a> [poll.poll_votes] players have responded" else - output += "<a href='?_src_=holder;[HrefToken()];clearpollvotes=[REF(poll)]'>Clear poll votes</a> [poll.poll_votes] players have voted" + output += "<a href='byond://?_src_=holder;[HrefToken()];clearpollvotes=[REF(poll)]'>Clear poll votes</a> [poll.poll_votes] players have voted" if(poll.poll_type == POLLTYPE_TEXT) output += "</div></div>" else - output += "</div></div><hr><a href='?_src_=holder;[HrefToken()];addpolloption=[REF(poll)]'>Add Option</a><br>" + output += "</div></div><hr><a href='byond://?_src_=holder;[HrefToken()];addpolloption=[REF(poll)]'>Add Option</a><br>" if(length(poll.options)) for(var/o in poll.options) var/datum/poll_option/option = o option_count++ output += {"Option [option_count] - <a href='?_src_=holder;[HrefToken()];editpolloption=[REF(option)];parentpoll=[REF(poll)]'> Edit</a> - <a href='?_src_=holder;[HrefToken()];deletepolloption=[REF(option)]'> Delete</a> + <a href='byond://?_src_=holder;[HrefToken()];editpolloption=[REF(option)];parentpoll=[REF(poll)]'> Edit</a> + <a href='byond://?_src_=holder;[HrefToken()];deletepolloption=[REF(option)]'> Delete</a> <br>[option.text] "} if(poll.poll_type == POLLTYPE_RATING) diff --git a/code/modules/admin/sound_emitter.dm b/code/modules/admin/sound_emitter.dm index 9f1d430a46c03..165b882ab46e7 100644 --- a/code/modules/admin/sound_emitter.dm +++ b/code/modules/admin/sound_emitter.dm @@ -61,16 +61,16 @@ /obj/effect/sound_emitter/proc/edit_emitter(mob/user) var/dat = "" - dat += "<b>Label:</b> <a href='?src=[text_ref(src)];edit_label=1'>[maptext ? maptext : "No label set!"]</a><br>" + dat += "<b>Label:</b> <a href='byond://?src=[text_ref(src)];edit_label=1'>[maptext ? maptext : "No label set!"]</a><br>" dat += "<br>" - dat += "<b>Sound File:</b> <a href='?src=[text_ref(src)];edit_sound_file=1'>[sound_file ? sound_file : "No file chosen!"]</a><br>" - dat += "<b>Volume:</b> <a href='?src=[text_ref(src)];edit_volume=1'>[sound_volume]%</a><br>" + dat += "<b>Sound File:</b> <a href='byond://?src=[text_ref(src)];edit_sound_file=1'>[sound_file ? sound_file : "No file chosen!"]</a><br>" + dat += "<b>Volume:</b> <a href='byond://?src=[text_ref(src)];edit_volume=1'>[sound_volume]%</a><br>" dat += "<br>" - dat += "<b>Mode:</b> <a href='?src=[text_ref(src)];edit_mode=1'>[motus_operandi]</a><br>" + dat += "<b>Mode:</b> <a href='byond://?src=[text_ref(src)];edit_mode=1'>[motus_operandi]</a><br>" if(motus_operandi != SOUND_EMITTER_LOCAL) - dat += "<b>Range:</b> <a href='?src=[text_ref(src)];edit_range=1'>[emitter_range]</a>[emitter_range == SOUND_EMITTER_RADIUS ? "<a href='?src=[text_ref(src)];edit_radius=1'>[play_radius]-tile radius</a>" : ""]<br>" + dat += "<b>Range:</b> <a href='byond://?src=[text_ref(src)];edit_range=1'>[emitter_range]</a>[emitter_range == SOUND_EMITTER_RADIUS ? "<a href='byond://?src=[text_ref(src)];edit_radius=1'>[play_radius]-tile radius</a>" : ""]<br>" dat += "<br>" - dat += "<a href='?src=[text_ref(src)];play=1'>Play Sound</a> (interrupts other sound emitter sounds)" + dat += "<a href='byond://?src=[text_ref(src)];play=1'>Play Sound</a> (interrupts other sound emitter sounds)" var/datum/browser/popup = new(user, "emitter", "", 500, 600) popup.set_content(dat) popup.open() diff --git a/code/modules/admin/sql_ban_system.dm b/code/modules/admin/sql_ban_system.dm index 74955324dffd4..a8f16e92daa11 100644 --- a/code/modules/admin/sql_ban_system.dm +++ b/code/modules/admin/sql_ban_system.dm @@ -689,7 +689,7 @@ var/pagecount = 1 var/list/pagelist = list() while(bancount > 0) - pagelist += "<a href='?_src_=holder;[HrefToken()];unbanpagecount=[pagecount - 1];unbankey=[player_key];unbanadminkey=[admin_key];unbanip=[player_ip];unbancid=[player_cid]'>[pagecount == page ? "<b>\[[pagecount]\]</b>" : "\[[pagecount]\]"]</a>" + pagelist += "<a href='byond://?_src_=holder;[HrefToken()];unbanpagecount=[pagecount - 1];unbankey=[player_key];unbanadminkey=[admin_key];unbanip=[player_ip];unbancid=[player_cid]'>[pagecount == page ? "<b>\[[pagecount]\]</b>" : "\[[pagecount]\]"]</a>" bancount -= bansperpage pagecount++ output += pagelist.Join(" | ") @@ -775,13 +775,13 @@ var/un_or_reban_href if(unban_datetime) - un_or_reban_href = "<a href='?_src_=holder;[HrefToken()];rebanid=[ban_id];applies_to_admins=[applies_to_admins];rebankey=[banned_player_key];rebanadminkey=[banning_admin_key];rebanip=[banned_player_ip];rebancid=[banned_player_cid];rebanrole=[role];rebanpage=[page]'>Reban</a>" + un_or_reban_href = "<a href='byond://?_src_=holder;[HrefToken()];rebanid=[ban_id];applies_to_admins=[applies_to_admins];rebankey=[banned_player_key];rebanadminkey=[banning_admin_key];rebanip=[banned_player_ip];rebancid=[banned_player_cid];rebanrole=[role];rebanpage=[page]'>Reban</a>" else - un_or_reban_href = "<a href='?_src_=holder;[HrefToken()];unbanid=[ban_id];unbankey=[banned_player_key];unbanadminkey=[banning_admin_key];unbanip=[banned_player_ip];unbancid=[banned_player_cid];unbanrole=[role];unbanpage=[page]'>Unban</a>" - output += "<a href='?_src_=holder;[HrefToken()];editbanid=[ban_id];editbankey=[banned_player_key];editbanip=[banned_player_ip];editbancid=[banned_player_cid];editbanrole=[role];editbanduration=[duration];editbanadmins=[applies_to_admins];editbanreason=[url_encode(reason)];editbanpage=[page];editbanadminkey=[banning_admin_key]'>Edit</a><br>[un_or_reban_href]" + un_or_reban_href = "<a href='byond://?_src_=holder;[HrefToken()];unbanid=[ban_id];unbankey=[banned_player_key];unbanadminkey=[banning_admin_key];unbanip=[banned_player_ip];unbancid=[banned_player_cid];unbanrole=[role];unbanpage=[page]'>Unban</a>" + output += "<a href='byond://?_src_=holder;[HrefToken()];editbanid=[ban_id];editbankey=[banned_player_key];editbanip=[banned_player_ip];editbancid=[banned_player_cid];editbanrole=[role];editbanduration=[duration];editbanadmins=[applies_to_admins];editbanreason=[url_encode(reason)];editbanpage=[page];editbanadminkey=[banning_admin_key]'>Edit</a><br>[un_or_reban_href]" if(edits) - output += "<br><a href='?_src_=holder;[HrefToken()];unbanlog=[ban_id]'>Edit log</a>" + output += "<br><a href='byond://?_src_=holder;[HrefToken()];unbanlog=[ban_id]'>Edit log</a>" output += "</div></div></div>" qdel(query_unban_search_bans) output += "</div>" diff --git a/code/modules/admin/sql_message_system.dm b/code/modules/admin/sql_message_system.dm index 7aab49d1c3649..f7d0023534529 100644 --- a/code/modules/admin/sql_message_system.dm +++ b/code/modules/admin/sql_message_system.dm @@ -377,10 +377,10 @@ var/list/output = list() var/ruler = "<hr style='background:#000000; border:0; height:3px'>" - var/list/navbar = list("<a href='?_src_=holder;[HrefToken()];nonalpha=1'>All</a><a href='?_src_=holder;[HrefToken()];nonalpha=2'>#</a>") + var/list/navbar = list("<a href='byond://?_src_=holder;[HrefToken()];nonalpha=1'>All</a><a href='byond://?_src_=holder;[HrefToken()];nonalpha=2'>#</a>") for(var/letter in GLOB.alphabet) - navbar += "<a href='?_src_=holder;[HrefToken()];showmessages=[letter]'>[letter]</a>" - navbar += "<a href='?_src_=holder;[HrefToken()];showmemo=1'>Memos</a><a href='?_src_=holder;[HrefToken()];showwatch=1'>Watchlist</a>" + navbar += "<a href='byond://?_src_=holder;[HrefToken()];showmessages=[letter]'>[letter]</a>" + navbar += "<a href='byond://?_src_=holder;[HrefToken()];showmemo=1'>Memos</a><a href='byond://?_src_=holder;[HrefToken()];showwatch=1'>Watchlist</a>" navbar += "<br><form method='GET' name='search' action='?'>\ <input type='hidden' name='_src_' value='holder'>\ [HrefTokenFormField()]\ @@ -391,14 +391,14 @@ if(type == "memo" || type == "watchlist entry") if(type == "memo") output += "<h2><center>Admin memos</h2>" - output += "<a href='?_src_=holder;[HrefToken()];addmemo=1'>Add memo</a></center>" + output += "<a href='byond://?_src_=holder;[HrefToken()];addmemo=1'>Add memo</a></center>" else if(type == "watchlist entry") output += "<h2><center>Watchlist entries</h2>" - output += "<a href='?_src_=holder;[HrefToken()];addwatchempty=1'>Add watchlist entry</a>" + output += "<a href='byond://?_src_=holder;[HrefToken()];addwatchempty=1'>Add watchlist entry</a>" if(filter) - output += "<a href='?_src_=holder;[HrefToken()];showwatch=1'>Unfilter clients</a></center>" + output += "<a href='byond://?_src_=holder;[HrefToken()];showwatch=1'>Unfilter clients</a></center>" else - output += "<a href='?_src_=holder;[HrefToken()];showwatchfilter=1'>Filter offline clients</a></center>" + output += "<a href='byond://?_src_=holder;[HrefToken()];showwatchfilter=1'>Filter offline clients</a></center>" output += ruler var/datum/db_query/query_get_type_messages = SSdbcore.NewQuery({" SELECT @@ -444,11 +444,11 @@ if(expire_timestamp) output += " | Expires [expire_timestamp]" output += "</b>" - output += " <a href='?_src_=holder;[HrefToken()];editmessageexpiryempty=[id]'>Change Expiry Time</a>" - output += " <a href='?_src_=holder;[HrefToken()];deletemessageempty=[id]'>Delete</a>" - output += " <a href='?_src_=holder;[HrefToken()];editmessageempty=[id]'>Edit</a>" + output += " <a href='byond://?_src_=holder;[HrefToken()];editmessageexpiryempty=[id]'>Change Expiry Time</a>" + output += " <a href='byond://?_src_=holder;[HrefToken()];deletemessageempty=[id]'>Delete</a>" + output += " <a href='byond://?_src_=holder;[HrefToken()];editmessageempty=[id]'>Edit</a>" if(editor_key) - output += " <font size='2'>Last edit by [editor_key] <a href='?_src_=holder;[HrefToken()];messageedits=[id]'>(Click here to see edit log)</a></font>" + output += " <font size='2'>Last edit by [editor_key] <a href='byond://?_src_=holder;[HrefToken()];messageedits=[id]'>(Click here to see edit log)</a></font>" output += "<br>[text]<hr style='background:#000000; border:0; height:1px'>" qdel(query_get_type_messages) if(target_ckey) @@ -524,21 +524,21 @@ if(!linkless) if(type == "note") if(severity) - data += "<a href='?_src_=holder;[HrefToken()];editmessageseverity=[id]'>[severity == "none" ? "No" : "[capitalize(severity)]"] Severity</a>" + data += "<a href='byond://?_src_=holder;[HrefToken()];editmessageseverity=[id]'>[severity == "none" ? "No" : "[capitalize(severity)]"] Severity</a>" else - data += "<a href='?_src_=holder;[HrefToken()];editmessageseverity=[id]'>N/A Severity</a>" - data += " <a href='?_src_=holder;[HrefToken()];editmessageexpiry=[id]'>Change Expiry Time</a>" - data += " <a href='?_src_=holder;[HrefToken()];deletemessage=[id]'>Delete</a>" + data += "<a href='byond://?_src_=holder;[HrefToken()];editmessageseverity=[id]'>N/A Severity</a>" + data += " <a href='byond://?_src_=holder;[HrefToken()];editmessageexpiry=[id]'>Change Expiry Time</a>" + data += " <a href='byond://?_src_=holder;[HrefToken()];deletemessage=[id]'>Delete</a>" if(type == "note") - data += " <a href='?_src_=holder;[HrefToken()];secretmessage=[id]'>[secret ? "<b>Secret</b>" : "Not secret"]</a>" + data += " <a href='byond://?_src_=holder;[HrefToken()];secretmessage=[id]'>[secret ? "<b>Secret</b>" : "Not secret"]</a>" if(type == "message sent") data += " <font size='2'>Message has been sent</font>" if(editor_key) data += "|" else - data += " <a href='?_src_=holder;[HrefToken()];editmessage=[id]'>Edit</a>" + data += " <a href='byond://?_src_=holder;[HrefToken()];editmessage=[id]'>Edit</a>" if(editor_key) - data += " <font size='2'>Last edit by [editor_key] <a href='?_src_=holder;[HrefToken()];messageedits=[id]'>(Click here to see edit log)</a></font>" + data += " <font size='2'>Last edit by [editor_key] <a href='byond://?_src_=holder;[HrefToken()];messageedits=[id]'>(Click here to see edit log)</a></font>" data += "</div></center>" data += "<p style='[alphatext]'>[text]</p><hr style='background:#000000; border:0; height:1px; [alphatext]'>" switch(type) @@ -563,12 +563,12 @@ qdel(query_get_message_key) output += "<h2><center>[target_key]</center></h2><center>" if(!linkless) - output += "<a href='?_src_=holder;[HrefToken()];addnote=[target_key]'>Add note</a>" - output += " <a href='?_src_=holder;[HrefToken()];addmessage=[target_key]'>Add message</a>" - output += " <a href='?_src_=holder;[HrefToken()];addwatch=[target_key]'>Add to watchlist</a>" - output += " <a href='?_src_=holder;[HrefToken()];showmessageckey=[target_ckey]'>Refresh page</a></center>" + output += "<a href='byond://?_src_=holder;[HrefToken()];addnote=[target_key]'>Add note</a>" + output += " <a href='byond://?_src_=holder;[HrefToken()];addmessage=[target_key]'>Add message</a>" + output += " <a href='byond://?_src_=holder;[HrefToken()];addwatch=[target_key]'>Add to watchlist</a>" + output += " <a href='byond://?_src_=holder;[HrefToken()];showmessageckey=[target_ckey]'>Refresh page</a></center>" else - output += " <a href='?_src_=holder;[HrefToken()];showmessageckeylinkless=[target_ckey]'>Refresh page</a></center>" + output += " <a href='byond://?_src_=holder;[HrefToken()];showmessageckeylinkless=[target_ckey]'>Refresh page</a></center>" output += ruler if(messagedata) output += "<h2>Messages</h2>" @@ -582,14 +582,14 @@ if(!linkless) if (agegate) if (skipped) //the first skipped message is still shown so that we can put this link over it. - output += "<center><a href='?_src_=holder;[HrefToken()];showmessageckey=[target_ckey];showall=1' style='position: relative; top: -3em;'>Show [skipped] hidden messages</a></center>" + output += "<center><a href='byond://?_src_=holder;[HrefToken()];showmessageckey=[target_ckey];showall=1' style='position: relative; top: -3em;'>Show [skipped] hidden messages</a></center>" else - output += "<center><a href='?_src_=holder;[HrefToken()];showmessageckey=[target_ckey];showall=1'>Show All</a></center>" + output += "<center><a href='byond://?_src_=holder;[HrefToken()];showmessageckey=[target_ckey];showall=1'>Show All</a></center>" else - output += "<center><a href='?_src_=holder;[HrefToken()];showmessageckey=[target_ckey]'>Hide Old</a></center>" + output += "<center><a href='byond://?_src_=holder;[HrefToken()];showmessageckey=[target_ckey]'>Hide Old</a></center>" if(index) var/search - output += "<center><a href='?_src_=holder;[HrefToken()];addmessageempty=1'>Add message</a><a href='?_src_=holder;[HrefToken()];addwatchempty=1'>Add watchlist entry</a><a href='?_src_=holder;[HrefToken()];addnoteempty=1'>Add note</a></center>" + output += "<center><a href='byond://?_src_=holder;[HrefToken()];addmessageempty=1'>Add message</a><a href='byond://?_src_=holder;[HrefToken()];addwatchempty=1'>Add watchlist entry</a><a href='byond://?_src_=holder;[HrefToken()];addnoteempty=1'>Add note</a></center>" output += ruler switch(index) if(1) @@ -619,10 +619,10 @@ var/index_key = query_list_messages.item[2] if(!index_key) index_key = index_ckey - output += "<a href='?_src_=holder;[HrefToken()];showmessageckey=[index_ckey]'>[index_key]</a><br>" + output += "<a href='byond://?_src_=holder;[HrefToken()];showmessageckey=[index_ckey]'>[index_key]</a><br>" qdel(query_list_messages) else if(!type && !target_ckey && !index) - output += "<center><a href='?_src_=holder;[HrefToken()];addmessageempty=1'>Add message</a><a href='?_src_=holder;[HrefToken()];addwatchempty=1'>Add watchlist entry</a><a href='?_src_=holder;[HrefToken()];addnoteempty=1'>Add note</a></center>" + output += "<center><a href='byond://?_src_=holder;[HrefToken()];addmessageempty=1'>Add message</a><a href='byond://?_src_=holder;[HrefToken()];addwatchempty=1'>Add watchlist entry</a><a href='byond://?_src_=holder;[HrefToken()];addnoteempty=1'>Add note</a></center>" output += ruler var/datum/browser/browser = new(usr, "Note panel", "Manage player notes", 1000, 500) notes_assets.send(usr.client) @@ -690,7 +690,7 @@ var/list/text = list() for(var/datum/admin_message/message in get_message_output("message", display_to.ckey)) text += "<font color='[COLOR_RED]' size='3'><b>Admin message left by [span_prefix("[message.admin_key]")] on [message.timestamp]</b></font>" - text += "<br><font color='[COLOR_RED]'>[message.text] <A href='?messageread=[message.id]'>(Click here to verify you have read this message)</A></font><br>" + text += "<br><font color='[COLOR_RED]'>[message.text] <A href='byond://?messageread=[message.id]'>(Click here to verify you have read this message)</A></font><br>" if(length(text)) to_chat(display_to, text.Join()) @@ -707,7 +707,7 @@ for(var/datum/admin_message/message in get_message_output("memo", display_to.ckey)) text += "[span_memo("Memo by <span class='prefix'>[message.admin_key]")] on [message.timestamp]" if(message.editor_key) - text += "<br>[span_memoedit("Last edit by [message.editor_key] <A href='?_src_=holder;[HrefToken()];messageedits=[message.id]'>(Click here to see edit log)</A>")]" + text += "<br>[span_memoedit("Last edit by [message.editor_key] <A href='byond://?_src_=holder;[HrefToken()];messageedits=[message.id]'>(Click here to see edit log)</A>")]" text += "<br>[message.text]</span><br>" if(length(text)) to_chat(display_to, text.Join()) diff --git a/code/modules/admin/stickyban.dm b/code/modules/admin/stickyban.dm index fede9724ab181..4295080c3f6ca 100644 --- a/code/modules/admin/stickyban.dm +++ b/code/modules/admin/stickyban.dm @@ -348,15 +348,15 @@ return var/timeout if (SSdbcore.Connect()) - timeout = "<a href='?_src_=holder;[HrefToken()];stickyban=[(ban["timeout"] ? "untimeout" : "timeout")]&ckey=[ckey]'>\[[(ban["timeout"] ? "untimeout" : "timeout" )]\]</a>" + timeout = "<a href='byond://?_src_=holder;[HrefToken()];stickyban=[(ban["timeout"] ? "untimeout" : "timeout")]&ckey=[ckey]'>\[[(ban["timeout"] ? "untimeout" : "timeout" )]\]</a>" else - timeout = "<a href='?_src_=holder;[HrefToken()];stickyban=revert&ckey=[ckey]'>\[revert\]</a>" + timeout = "<a href='byond://?_src_=holder;[HrefToken()];stickyban=revert&ckey=[ckey]'>\[revert\]</a>" . = list({" - <a href='?_src_=holder;[HrefToken()];stickyban=remove&ckey=[ckey]'>\[-\]</a> + <a href='byond://?_src_=holder;[HrefToken()];stickyban=remove&ckey=[ckey]'>\[-\]</a> [timeout] <b>[ckey]</b> <br />" - [ban["message"]] <b><a href='?_src_=holder;[HrefToken()];stickyban=edit&ckey=[ckey]'>\[Edit\]</a></b><br /> + [ban["message"]] <b><a href='byond://?_src_=holder;[HrefToken()];stickyban=edit&ckey=[ckey]'>\[Edit\]</a></b><br /> "}) if (ban["admin"]) . += "[ban["admin"]]<br />" @@ -366,12 +366,12 @@ for (var/key in ban["keys"]) if (ckey(key) == ckey) continue - . += "<li><a href='?_src_=holder;[HrefToken()];stickyban=remove_alt&ckey=[ckey]&alt=[ckey(key)]'>\[-\]</a>[key]<a href='?_src_=holder;[HrefToken()];stickyban=exempt&ckey=[ckey]&alt=[ckey(key)]'>\[E\]</a></li>" + . += "<li><a href='byond://?_src_=holder;[HrefToken()];stickyban=remove_alt&ckey=[ckey]&alt=[ckey(key)]'>\[-\]</a>[key]<a href='byond://?_src_=holder;[HrefToken()];stickyban=exempt&ckey=[ckey]&alt=[ckey(key)]'>\[E\]</a></li>" for (var/key in ban["whitelist"]) if (ckey(key) == ckey) continue - . += "<li><a href='?_src_=holder;[HrefToken()];stickyban=remove_alt&ckey=[ckey]&alt=[ckey(key)]'>\[-\]</a>[key]<a href='?_src_=holder;[HrefToken()];stickyban=unexempt&ckey=[ckey]&alt=[ckey(key)]'>\[UE\]</a></li>" + . += "<li><a href='byond://?_src_=holder;[HrefToken()];stickyban=remove_alt&ckey=[ckey]&alt=[ckey(key)]'>\[-\]</a>[key]<a href='byond://?_src_=holder;[HrefToken()];stickyban=unexempt&ckey=[ckey]&alt=[ckey(key)]'>\[UE\]</a></li>" . += "</ol>\n" @@ -390,7 +390,7 @@ <title>Sticky Bans</title> </head> <body> - <h2>All Sticky Bans:</h2> <a href='?_src_=holder;[HrefToken()];stickyban=add'>\[+\]</a><br> + <h2>All Sticky Bans:</h2> <a href='byond://?_src_=holder;[HrefToken()];stickyban=add'>\[+\]</a><br> [banhtml.Join("")] </body> "} diff --git a/code/modules/admin/tag.dm b/code/modules/admin/tag.dm index e52112eba1495..ec0ed3b56fa7b 100644 --- a/code/modules/admin/tag.dm +++ b/code/modules/admin/tag.dm @@ -40,8 +40,8 @@ to_chat(owner, span_warning("[target_datum] was not already tagged.")) /// Quick define for readability -#define TAG_DEL(X) "<b>(<A href='?src=[REF(src)];[HrefToken(forceGlobal = TRUE)];del_tag=[REF(X)]'>UNTAG</a>)</b>" -#define TAG_MARK(X) "<b>(<A href='?src=[REF(src)];[HrefToken(forceGlobal = TRUE)];mark_datum=[REF(X)]'>MARK</a>)</b>" +#define TAG_DEL(X) "<b>(<A href='byond://?src=[REF(src)];[HrefToken(forceGlobal = TRUE)];del_tag=[REF(X)]'>UNTAG</a>)</b>" +#define TAG_MARK(X) "<b>(<A href='byond://?src=[REF(src)];[HrefToken(forceGlobal = TRUE)];mark_datum=[REF(X)]'>MARK</a>)</b>" #define TAG_SIMPLE_HEALTH(X) "<font color='#ff0000'><b>Health: [X.health]</b></font>" #define TAG_CARBON_HEALTH(X) "<font color='#ff0000'><b>Health: [X.health]</b></font> (\ <font color='#ff3333'>[X.getBruteLoss()]</font> \ @@ -56,7 +56,7 @@ ADMIN_VERB(display_tags, R_ADMIN, "View Tags", "Display all of the tagged datums var/list/tagged_datums = user.holder.tagged_datums var/list/marked_datum = user.holder.marked_datum - dat += "<br><A href='?src=[REF(user)];[HrefToken(forceGlobal = TRUE)];show_tags=1'>Refresh</a><br>" + dat += "<br><A href='byond://?src=[REF(user)];[HrefToken(forceGlobal = TRUE)];show_tags=1'>Refresh</a><br>" if(LAZYLEN(tagged_datums)) for(var/datum/iter_datum as anything in tagged_datums) index++ diff --git a/code/modules/admin/team_panel.dm b/code/modules/admin/team_panel.dm index 30311c491e6f2..3eba8be949417 100644 --- a/code/modules/admin/team_panel.dm +++ b/code/modules/admin/team_panel.dm @@ -3,22 +3,22 @@ var/list/content = list() for(var/datum/team/T in GLOB.antagonist_teams) content += "<h3>[T.name] - [T.type]</h3>" - content += "<a href='?_src_=holder;[HrefToken()];team_command=rename_team;team=[REF(T)]'>Rename</a>" - content += "<a href='?_src_=holder;[HrefToken()];team_command=delete_team;team=[REF(T)]'>Delete</a>" - content += "<a href='?_src_=holder;[HrefToken()];team_command=communicate;team=[REF(T)]'>Communicate</a>" + content += "<a href='byond://?_src_=holder;[HrefToken()];team_command=rename_team;team=[REF(T)]'>Rename</a>" + content += "<a href='byond://?_src_=holder;[HrefToken()];team_command=delete_team;team=[REF(T)]'>Delete</a>" + content += "<a href='byond://?_src_=holder;[HrefToken()];team_command=communicate;team=[REF(T)]'>Communicate</a>" for(var/command in T.get_admin_commands()) - content += "<a href='?src=[REF(T)];command=[command]'>[command]</a>" + content += "<a href='byond://?src=[REF(T)];command=[command]'>[command]</a>" content += "<br>" content += "Objectives:<br><ol>" for(var/datum/objective/O in T.objectives) - content += "<li>[O.explanation_text] - <a href='?_src_=holder;[HrefToken()];team_command=remove_objective;team=[REF(T)];tobjective=[REF(O)]'>Remove</a></li>" - content += "</ol><a href='?_src_=holder;[HrefToken()];team_command=add_objective;team=[REF(T)]'>Add Objective</a><br>" + content += "<li>[O.explanation_text] - <a href='byond://?_src_=holder;[HrefToken()];team_command=remove_objective;team=[REF(T)];tobjective=[REF(O)]'>Remove</a></li>" + content += "</ol><a href='byond://?_src_=holder;[HrefToken()];team_command=add_objective;team=[REF(T)]'>Add Objective</a><br>" content += "Members: <br><ul>" for(var/datum/mind/M in T.members) - content += "<li>[M.name] - <a href='?_src_=holder;[HrefToken()];team_command=remove_member;team=[REF(T)];tmember=[REF(M)]'>Remove Member</a></li>" - content += "</ul><a href='?_src_=holder;[HrefToken()];team_command=add_member;team=[REF(T)]'>Add Member</a>" + content += "<li>[M.name] - <a href='byond://?_src_=holder;[HrefToken()];team_command=remove_member;team=[REF(T)];tmember=[REF(M)]'>Remove Member</a></li>" + content += "</ul><a href='byond://?_src_=holder;[HrefToken()];team_command=add_member;team=[REF(T)]'>Add Member</a>" content += "<hr>" - content += "<a href='?_src_=holder;[HrefToken()];team_command=create_team'>Create Team</a><br>" + content += "<a href='byond://?_src_=holder;[HrefToken()];team_command=create_team'>Create Team</a><br>" return content.Join() diff --git a/code/modules/admin/verbs/SDQL2/SDQL_2.dm b/code/modules/admin/verbs/SDQL2/SDQL_2.dm index 4ee2b79f04459..f74df71272106 100644 --- a/code/modules/admin/verbs/SDQL2/SDQL_2.dm +++ b/code/modules/admin/verbs/SDQL2/SDQL_2.dm @@ -722,7 +722,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/sdql2_vv_all, new(null /datum/sdql2_query/proc/SDQL_print(object, list/text_list, print_nulls = TRUE) if(isdatum(object)) - text_list += "<A HREF='?_src_=vars;[HrefToken(forceGlobal = TRUE)];Vars=[REF(object)]'>[REF(object)]</A> : [object]" + text_list += "<A href='byond://?_src_=vars;[HrefToken(forceGlobal = TRUE)];Vars=[REF(object)]'>[REF(object)]</A> : [object]" if(istype(object, /atom)) var/atom/A = object var/turf/T = A.loc diff --git a/code/modules/admin/verbs/admin.dm b/code/modules/admin/verbs/admin.dm index edd362938af58..629423e713faa 100644 --- a/code/modules/admin/verbs/admin.dm +++ b/code/modules/admin/verbs/admin.dm @@ -45,7 +45,7 @@ ADMIN_VERB(cmd_admin_check_player_exp, R_ADMIN, "Player Playtime", "View player var/list/msg = list() msg += "<html><head><meta http-equiv='Content-Type' content='text/html; charset=UTF-8'><title>Playtime Report</title></head><body>Playtime:<BR><UL>" for(var/client/client in sort_list(GLOB.clients, GLOBAL_PROC_REF(cmp_playtime_asc))) - msg += "<LI> [ADMIN_PP(client.mob)] [key_name_admin(client)]: <A href='?_src_=holder;[HrefToken()];getplaytimewindow=[REF(client.mob)]'>" + client.get_exp_living() + "</a></LI>" + msg += "<LI> [ADMIN_PP(client.mob)] [key_name_admin(client)]: <A href='byond://?_src_=holder;[HrefToken()];getplaytimewindow=[REF(client.mob)]'>" + client.get_exp_living() + "</a></LI>" msg += "</UL></BODY></HTML>" user << browse(msg.Join(), "window=Player_playtime_check") diff --git a/code/modules/admin/verbs/admingame.dm b/code/modules/admin/verbs/admingame.dm index f9a081445b8ea..8e7fd97cc1f8b 100644 --- a/code/modules/admin/verbs/admingame.dm +++ b/code/modules/admin/verbs/admingame.dm @@ -12,28 +12,28 @@ ADMIN_VERB_ONLY_CONTEXT_MENU(show_player_panel, R_ADMIN, "Show Player Panel", mo body += "<body>Options panel for <b>[player]</b>" if(player.client) body += " played by <b>[player.client]</b> " - body += "\[<A href='?_src_=holder;[HrefToken()];editrights=[(GLOB.admin_datums[player.client.ckey] || GLOB.deadmins[player.client.ckey]) ? "rank" : "add"];key=[player.key]'>[player.client.holder ? player.client.holder.rank_names() : "Player"]</A>\]" + body += "\[<A href='byond://?_src_=holder;[HrefToken()];editrights=[(GLOB.admin_datums[player.client.ckey] || GLOB.deadmins[player.client.ckey]) ? "rank" : "add"];key=[player.key]'>[player.client.holder ? player.client.holder.rank_names() : "Player"]</A>\]" if(CONFIG_GET(flag/use_exp_tracking)) - body += "\[<A href='?_src_=holder;[HrefToken()];getplaytimewindow=[REF(player)]'>" + player.client.get_exp_living(FALSE) + "</a>\]" + body += "\[<A href='byond://?_src_=holder;[HrefToken()];getplaytimewindow=[REF(player)]'>" + player.client.get_exp_living(FALSE) + "</a>\]" if(isnewplayer(player)) body += " <B>Hasn't Entered Game</B> " else - body += " \[<A href='?_src_=holder;[HrefToken()];revive=[REF(player)]'>Heal</A>\] " + body += " \[<A href='byond://?_src_=holder;[HrefToken()];revive=[REF(player)]'>Heal</A>\] " if(player.ckey) - body += "<br>\[<A href='?_src_=holder;[HrefToken()];ppbyckey=[player.ckey];ppbyckeyorigmob=[REF(player)]'>Find Updated Panel</A>\]" + body += "<br>\[<A href='byond://?_src_=holder;[HrefToken()];ppbyckey=[player.ckey];ppbyckeyorigmob=[REF(player)]'>Find Updated Panel</A>\]" if(player.client) body += "<br>\[<b>First Seen:</b> [player.client.player_join_date]\]\[<b>Byond account registered on:</b> [player.client.account_join_date]\]" body += "<br><br><b>CentCom Galactic Ban DB: </b> " if(CONFIG_GET(string/centcom_ban_db)) - body += "<a href='?_src_=holder;[HrefToken()];centcomlookup=[player.client.ckey]'>Search</a>" + body += "<a href='byond://?_src_=holder;[HrefToken()];centcomlookup=[player.client.ckey]'>Search</a>" else body += "<i>Disabled</i>" body += "<br><br><b>Show related accounts by:</b> " - body += "\[ <a href='?_src_=holder;[HrefToken()];showrelatedacc=cid;client=[REF(player.client)]'>CID</a> | " - body += "<a href='?_src_=holder;[HrefToken()];showrelatedacc=ip;client=[REF(player.client)]'>IP</a> \]" + body += "\[ <a href='byond://?_src_=holder;[HrefToken()];showrelatedacc=cid;client=[REF(player.client)]'>CID</a> | " + body += "<a href='byond://?_src_=holder;[HrefToken()];showrelatedacc=ip;client=[REF(player.client)]'>IP</a> \]" var/full_version = "Unknown" if(player.client.byond_version) full_version = "[player.client.byond_version].[player.client.byond_build ? player.client.byond_build : "xxx"]" @@ -41,24 +41,24 @@ ADMIN_VERB_ONLY_CONTEXT_MENU(show_player_panel, R_ADMIN, "Show Player Panel", mo body += "<br><br>\[ " - body += "<a href='?_src_=vars;[HrefToken()];Vars=[REF(player)]'>VV</a> - " + body += "<a href='byond://?_src_=vars;[HrefToken()];Vars=[REF(player)]'>VV</a> - " if(player.mind) - body += "<a href='?_src_=holder;[HrefToken()];traitor=[REF(player)]'>TP</a> - " - body += "<a href='?_src_=holder;[HrefToken()];skill=[REF(player)]'>SKILLS</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];traitor=[REF(player)]'>TP</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];skill=[REF(player)]'>SKILLS</a> - " else - body += "<a href='?_src_=holder;[HrefToken()];initmind=[REF(player)]'>Init Mind</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];initmind=[REF(player)]'>Init Mind</a> - " if (iscyborg(player)) - body += "<a href='?_src_=holder;[HrefToken()];borgpanel=[REF(player)]'>BP</a> - " - body += "<a href='?priv_msg=[player.ckey]'>PM</a> - " - body += "<a href='?_src_=holder;[HrefToken()];subtlemessage=[REF(player)]'>SM</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];borgpanel=[REF(player)]'>BP</a> - " + body += "<a href='byond://?priv_msg=[player.ckey]'>PM</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];subtlemessage=[REF(player)]'>SM</a> - " if (ishuman(player) && player.mind) - body += "<a href='?_src_=holder;[HrefToken()];HeadsetMessage=[REF(player)]'>HM</a> - " - body += "<a href='?_src_=holder;[HrefToken()];adminplayerobservefollow=[REF(player)]'>FLW</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];HeadsetMessage=[REF(player)]'>HM</a> - " + body += "<a href='byond://?_src_=holder;[HrefToken()];adminplayerobservefollow=[REF(player)]'>FLW</a> - " //Default to client logs if available var/source = LOGSRC_MOB if(player.ckey) source = LOGSRC_CKEY - body += "<a href='?_src_=holder;[HrefToken()];individuallog=[REF(player)];log_src=[source]'>LOGS</a>\] <br>" + body += "<a href='byond://?_src_=holder;[HrefToken()];individuallog=[REF(player)];log_src=[source]'>LOGS</a>\] <br>" body += "<b>Mob type</b> = [player.type]<br><br>" @@ -71,37 +71,37 @@ ADMIN_VERB_ONLY_CONTEXT_MENU(show_player_panel, R_ADMIN, "Show Player Panel", mo body += "<i>None?!</i>" body += "<br><br>" - body += "<A href='?_src_=holder;[HrefToken()];boot2=[REF(player)]'>Kick</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];boot2=[REF(player)]'>Kick</A> | " if(player.client) - body += "<A href='?_src_=holder;[HrefToken()];newbankey=[player.key];newbanip=[player.client.address];newbancid=[player.client.computer_id]'>Ban</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];newbankey=[player.key];newbanip=[player.client.address];newbancid=[player.client.computer_id]'>Ban</A> | " else - body += "<A href='?_src_=holder;[HrefToken()];newbankey=[player.key]'>Ban</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];newbankey=[player.key]'>Ban</A> | " - body += "<A href='?_src_=holder;[HrefToken()];showmessageckey=[player.ckey]'>Notes | Messages | Watchlist</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];showmessageckey=[player.ckey]'>Notes | Messages | Watchlist</A> | " if(player.client) - body += "| <A href='?_src_=holder;[HrefToken()];sendtoprison=[REF(player)]'>Prison</A> | " - body += "\ <A href='?_src_=holder;[HrefToken()];sendbacktolobby=[REF(player)]'>Send back to Lobby</A> | " + body += "| <A href='byond://?_src_=holder;[HrefToken()];sendtoprison=[REF(player)]'>Prison</A> | " + body += "\ <A href='byond://?_src_=holder;[HrefToken()];sendbacktolobby=[REF(player)]'>Send back to Lobby</A> | " var/muted = player.client.prefs.muted body += "<br><b>Mute: </b> " - body += "\[<A href='?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_IC]'><font color='[(muted & MUTE_IC)?"red":"blue"]'>IC</font></a> | " - body += "<A href='?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_OOC]'><font color='[(muted & MUTE_OOC)?"red":"blue"]'>OOC</font></a> | " - body += "<A href='?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_PRAY]'><font color='[(muted & MUTE_PRAY)?"red":"blue"]'>PRAY</font></a> | " - body += "<A href='?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_ADMINHELP]'><font color='[(muted & MUTE_ADMINHELP)?"red":"blue"]'>ADMINHELP</font></a> | " - body += "<A href='?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_INTERNET_REQUEST]'><font color='[(muted & MUTE_INTERNET_REQUEST)?"red":"blue"]'>WEBREQ</font></a> | " - body += "<A href='?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_DEADCHAT]'><font color='[(muted & MUTE_DEADCHAT)?"red":"blue"]'>DEADCHAT</font></a>\]" - body += "(<A href='?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_ALL]'><font color='[(muted & MUTE_ALL)?"red":"blue"]'>toggle all</font></a>)" + body += "\[<A href='byond://?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_IC]'><font color='[(muted & MUTE_IC)?"red":"blue"]'>IC</font></a> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_OOC]'><font color='[(muted & MUTE_OOC)?"red":"blue"]'>OOC</font></a> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_PRAY]'><font color='[(muted & MUTE_PRAY)?"red":"blue"]'>PRAY</font></a> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_ADMINHELP]'><font color='[(muted & MUTE_ADMINHELP)?"red":"blue"]'>ADMINHELP</font></a> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_INTERNET_REQUEST]'><font color='[(muted & MUTE_INTERNET_REQUEST)?"red":"blue"]'>WEBREQ</font></a> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_DEADCHAT]'><font color='[(muted & MUTE_DEADCHAT)?"red":"blue"]'>DEADCHAT</font></a>\]" + body += "(<A href='byond://?_src_=holder;[HrefToken()];mute=[player.ckey];mute_type=[MUTE_ALL]'><font color='[(muted & MUTE_ALL)?"red":"blue"]'>toggle all</font></a>)" body += "<br><br>" - body += "<A href='?_src_=holder;[HrefToken()];jumpto=[REF(player)]'><b>Jump to</b></A> | " - body += "<A href='?_src_=holder;[HrefToken()];getmob=[REF(player)]'>Get</A> | " - body += "<A href='?_src_=holder;[HrefToken()];sendmob=[REF(player)]'>Send To</A>" + body += "<A href='byond://?_src_=holder;[HrefToken()];jumpto=[REF(player)]'><b>Jump to</b></A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];getmob=[REF(player)]'>Get</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];sendmob=[REF(player)]'>Send To</A>" body += "<br><br>" - body += "<A href='?_src_=holder;[HrefToken()];traitor=[REF(player)]'>Traitor panel</A> | " - body += "<A href='?_src_=holder;[HrefToken()];narrateto=[REF(player)]'>Narrate to</A> | " - body += "<A href='?_src_=holder;[HrefToken()];subtlemessage=[REF(player)]'>Subtle message</A> | " - body += "<A href='?_src_=holder;[HrefToken()];playsoundto=[REF(player)]'>Play sound to</A> | " - body += "<A href='?_src_=holder;[HrefToken()];languagemenu=[REF(player)]'>Language Menu</A>" + body += "<A href='byond://?_src_=holder;[HrefToken()];traitor=[REF(player)]'>Traitor panel</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];narrateto=[REF(player)]'>Narrate to</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];subtlemessage=[REF(player)]'>Subtle message</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];playsoundto=[REF(player)]'>Play sound to</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];languagemenu=[REF(player)]'>Language Menu</A>" if(player.client) if(!isnewplayer(player)) @@ -110,39 +110,39 @@ ADMIN_VERB_ONLY_CONTEXT_MENU(show_player_panel, R_ADMIN, "Show Player Panel", mo if(isobserver(player)) body += "<b>Ghost</b> | " else - body += "<A href='?_src_=holder;[HrefToken()];simplemake=observer;mob=[REF(player)]'>Make Ghost</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];simplemake=observer;mob=[REF(player)]'>Make Ghost</A> | " if(ishuman(player) && !ismonkey(player)) body += "<b>Human</b> | " else - body += "<A href='?_src_=holder;[HrefToken()];simplemake=human;mob=[REF(player)]'>Make Human</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];simplemake=human;mob=[REF(player)]'>Make Human</A> | " if(ismonkey(player)) body += "<b>Monkey</b> | " else - body += "<A href='?_src_=holder;[HrefToken()];simplemake=monkey;mob=[REF(player)]'>Make Monkey</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];simplemake=monkey;mob=[REF(player)]'>Make Monkey</A> | " if(iscyborg(player)) body += "<b>Cyborg</b> | " else - body += "<A href='?_src_=holder;[HrefToken()];simplemake=robot;mob=[REF(player)]'>Make Cyborg</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];simplemake=robot;mob=[REF(player)]'>Make Cyborg</A> | " if(isAI(player)) body += "<b>AI</b>" else - body += "<A href='?_src_=holder;[HrefToken()];makeai=[REF(player)]'>Make AI</A>" + body += "<A href='byond://?_src_=holder;[HrefToken()];makeai=[REF(player)]'>Make AI</A>" body += "<br><br>" body += "<b>Other actions:</b>" body += "<br>" if(!isnewplayer(player)) - body += "<A href='?_src_=holder;[HrefToken()];forcespeech=[REF(player)]'>Forcesay</A> | " - body += "<A href='?_src_=holder;[HrefToken()];applyquirks=[REF(player)]'>Apply Client Quirks</A> | " - body += "<A href='?_src_=holder;[HrefToken()];tdome1=[REF(player)]'>Thunderdome 1</A> | " - body += "<A href='?_src_=holder;[HrefToken()];tdome2=[REF(player)]'>Thunderdome 2</A> | " - body += "<A href='?_src_=holder;[HrefToken()];tdomeadmin=[REF(player)]'>Thunderdome Admin</A> | " - body += "<A href='?_src_=holder;[HrefToken()];tdomeobserve=[REF(player)]'>Thunderdome Observer</A> | " - body += "<A href='?_src_=holder;[HrefToken()];admincommend=[REF(player)]'>Commend Behavior</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];forcespeech=[REF(player)]'>Forcesay</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];applyquirks=[REF(player)]'>Apply Client Quirks</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];tdome1=[REF(player)]'>Thunderdome 1</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];tdome2=[REF(player)]'>Thunderdome 2</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];tdomeadmin=[REF(player)]'>Thunderdome Admin</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];tdomeobserve=[REF(player)]'>Thunderdome Observer</A> | " + body += "<A href='byond://?_src_=holder;[HrefToken()];admincommend=[REF(player)]'>Commend Behavior</A> | " body += "<br>" body += "</body></html>" @@ -325,15 +325,15 @@ ADMIN_VERB(manage_job_slots, R_ADMIN, "Manage Job Slots", "Manage the number of dat += "</td>" dat += "<td>" if(job.total_positions >= 0) - dat += "<A href='?src=[REF(src)];[HrefToken()];customjobslot=[job.title]'>Custom</A> | " - dat += "<A href='?src=[REF(src)];[HrefToken()];addjobslot=[job.title]'>Add 1</A> | " + dat += "<A href='byond://?src=[REF(src)];[HrefToken()];customjobslot=[job.title]'>Custom</A> | " + dat += "<A href='byond://?src=[REF(src)];[HrefToken()];addjobslot=[job.title]'>Add 1</A> | " if(job.total_positions > job.current_positions) - dat += "<A href='?src=[REF(src)];[HrefToken()];removejobslot=[job.title]'>Remove</A> | " + dat += "<A href='byond://?src=[REF(src)];[HrefToken()];removejobslot=[job.title]'>Remove</A> | " else dat += "Remove | " - dat += "<A href='?src=[REF(src)];[HrefToken()];unlimitjobslot=[job.title]'>Unlimit</A></td>" + dat += "<A href='byond://?src=[REF(src)];[HrefToken()];unlimitjobslot=[job.title]'>Unlimit</A></td>" else - dat += "<A href='?src=[REF(src)];[HrefToken()];limitjobslot=[job.title]'>Limit</A></td>" + dat += "<A href='byond://?src=[REF(src)];[HrefToken()];limitjobslot=[job.title]'>Limit</A></td>" browser.height = min(100 + count * 20, 650) browser.set_content(dat.Join()) @@ -417,20 +417,20 @@ ADMIN_VERB(lag_switch_panel, R_ADMIN, "Show Lag Switches", "Display the controls to_chat(user, span_notice("The Lag Switch subsystem has not yet been initialized.")) return var/list/dat = list("<html><head><meta http-equiv='Content-Type' content='text/html; charset=UTF-8'><title>Lag Switches</title></head><body><h2><B>Lag (Reduction) Switches</B></h2>") - dat += "Automatic Trigger: <a href='?_src_=holder;[HrefToken()];change_lag_switch_option=TOGGLE_AUTO'><b>[SSlag_switch.auto_switch ? "On" : "Off"]</b></a><br/>" - dat += "Population Threshold: <a href='?_src_=holder;[HrefToken()];change_lag_switch_option=NUM'><b>[SSlag_switch.trigger_pop]</b></a><br/>" - dat += "Slowmode Cooldown (toggle On/Off below): <a href='?_src_=holder;[HrefToken()];change_lag_switch_option=SLOWCOOL'><b>[SSlag_switch.slowmode_cooldown/10] seconds</b></a><br/>" - dat += "<br/><b>SET ALL MEASURES: <a href='?_src_=holder;[HrefToken()];change_lag_switch=ALL_ON'>ON</a> | <a href='?_src_=holder;[HrefToken()];change_lag_switch=ALL_OFF'>OFF</a></b><br/>" - dat += "<br/>Disable ghosts zoom and t-ray verbs (except staff): <a href='?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_GHOST_ZOOM_TRAY]'><b>[SSlag_switch.measures[DISABLE_GHOST_ZOOM_TRAY] ? "On" : "Off"]</b></a><br/>" - dat += "Disable late joining: <a href='?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_NON_OBSJOBS]'><b>[SSlag_switch.measures[DISABLE_NON_OBSJOBS] ? "On" : "Off"]</b></a><br/>" + dat += "Automatic Trigger: <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch_option=TOGGLE_AUTO'><b>[SSlag_switch.auto_switch ? "On" : "Off"]</b></a><br/>" + dat += "Population Threshold: <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch_option=NUM'><b>[SSlag_switch.trigger_pop]</b></a><br/>" + dat += "Slowmode Cooldown (toggle On/Off below): <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch_option=SLOWCOOL'><b>[SSlag_switch.slowmode_cooldown/10] seconds</b></a><br/>" + dat += "<br/><b>SET ALL MEASURES: <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch=ALL_ON'>ON</a> | <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch=ALL_OFF'>OFF</a></b><br/>" + dat += "<br/>Disable ghosts zoom and t-ray verbs (except staff): <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_GHOST_ZOOM_TRAY]'><b>[SSlag_switch.measures[DISABLE_GHOST_ZOOM_TRAY] ? "On" : "Off"]</b></a><br/>" + dat += "Disable late joining: <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_NON_OBSJOBS]'><b>[SSlag_switch.measures[DISABLE_NON_OBSJOBS] ? "On" : "Off"]</b></a><br/>" dat += "<br/>============! MAD GHOSTS ZONE !============<br/>" - dat += "Disable deadmob keyLoop (except staff, informs dchat): <a href='?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_DEAD_KEYLOOP]'><b>[SSlag_switch.measures[DISABLE_DEAD_KEYLOOP] ? "On" : "Off"]</b></a><br/>" + dat += "Disable deadmob keyLoop (except staff, informs dchat): <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_DEAD_KEYLOOP]'><b>[SSlag_switch.measures[DISABLE_DEAD_KEYLOOP] ? "On" : "Off"]</b></a><br/>" dat += "==========================================<br/>" dat += "<br/><b>Measures below can be bypassed with a <abbr title='TRAIT_BYPASS_MEASURES'><u>special trait</u></abbr></b><br/>" - dat += "Slowmode say verb (informs world): <a href='?_src_=holder;[HrefToken()];change_lag_switch=[SLOWMODE_SAY]'><b>[SSlag_switch.measures[SLOWMODE_SAY] ? "On" : "Off"]</b></a><br/>" - dat += "Disable runechat: <a href='?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_RUNECHAT]'><b>[SSlag_switch.measures[DISABLE_RUNECHAT] ? "On" : "Off"]</b></a> - <span style='font-size:80%'>trait applies to speaker</span><br/>" - dat += "Disable examine icons: <a href='?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_USR_ICON2HTML]'><b>[SSlag_switch.measures[DISABLE_USR_ICON2HTML] ? "On" : "Off"]</b></a> - <span style='font-size:80%'>trait applies to examiner</span><br/>" - dat += "Disable parallax: <a href='?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_PARALLAX]'><b>[SSlag_switch.measures[DISABLE_PARALLAX] ? "On" : "Off"]</b></a> - <span style='font-size:80%'>trait applies to character</span><br />" - dat += "Disable footsteps: <a href='?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_FOOTSTEPS]'><b>[SSlag_switch.measures[DISABLE_FOOTSTEPS] ? "On" : "Off"]</b></a> - <span style='font-size:80%'>trait applies to character</span><br />" + dat += "Slowmode say verb (informs world): <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch=[SLOWMODE_SAY]'><b>[SSlag_switch.measures[SLOWMODE_SAY] ? "On" : "Off"]</b></a><br/>" + dat += "Disable runechat: <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_RUNECHAT]'><b>[SSlag_switch.measures[DISABLE_RUNECHAT] ? "On" : "Off"]</b></a> - <span style='font-size:80%'>trait applies to speaker</span><br/>" + dat += "Disable examine icons: <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_USR_ICON2HTML]'><b>[SSlag_switch.measures[DISABLE_USR_ICON2HTML] ? "On" : "Off"]</b></a> - <span style='font-size:80%'>trait applies to examiner</span><br/>" + dat += "Disable parallax: <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_PARALLAX]'><b>[SSlag_switch.measures[DISABLE_PARALLAX] ? "On" : "Off"]</b></a> - <span style='font-size:80%'>trait applies to character</span><br />" + dat += "Disable footsteps: <a href='byond://?_src_=holder;[HrefToken()];change_lag_switch=[DISABLE_FOOTSTEPS]'><b>[SSlag_switch.measures[DISABLE_FOOTSTEPS] ? "On" : "Off"]</b></a> - <span style='font-size:80%'>trait applies to character</span><br />" dat += "</body></html>" user << browse(dat.Join(), "window=lag_switch_panel;size=420x480") diff --git a/code/modules/admin/verbs/adminhelp.dm b/code/modules/admin/verbs/adminhelp.dm index 4ff36ec2d0130..da09e19d0debe 100644 --- a/code/modules/admin/verbs/adminhelp.dm +++ b/code/modules/admin/verbs/adminhelp.dm @@ -84,10 +84,10 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) if(!l2b) return var/list/dat = list("<html><head><meta http-equiv='Content-Type' content='text/html; charset=UTF-8'><title>[title]</title></head>") - dat += "<A href='?_src_=holder;[HrefToken()];ahelp_tickets=[state]'>Refresh</A><br><br>" + dat += "<A href='byond://?_src_=holder;[HrefToken()];ahelp_tickets=[state]'>Refresh</A><br><br>" for(var/I in l2b) var/datum/admin_help/AH = I - dat += "[span_adminnotice("[span_adminhelp("Ticket #[AH.id]")]: <A href='?_src_=holder;[HrefToken()];ahelp=[REF(AH)];ahelp_action=ticket'>[AH.initiator_key_name]: [AH.name]</A>")]<br>" + dat += "[span_adminnotice("[span_adminhelp("Ticket #[AH.id]")]: <A href='byond://?_src_=holder;[HrefToken()];ahelp=[REF(AH)];ahelp_action=ticket'>[AH.initiator_key_name]: [AH.name]</A>")]<br>" usr << browse(dat.Join(), "window=ahelp_list[state];size=600x480") @@ -370,32 +370,32 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) if(!ref_src) ref_src = "[REF(src)]" . = ADMIN_FULLMONTY_NONAME(initiator.mob) - . += " (<A href='?_src_=holder;[HrefToken()];showmessageckey=[initiator.ckey]'>NOTES</A>)" + . += " (<A href='byond://?_src_=holder;[HrefToken()];showmessageckey=[initiator.ckey]'>NOTES</A>)" if(state == AHELP_ACTIVE) if (CONFIG_GET(flag/popup_admin_pm)) - . += " (<A HREF='?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminpopup=[REF(initiator)]'>POPUP</A>)" + . += " (<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminpopup=[REF(initiator)]'>POPUP</A>)" . += ClosureLinks(ref_src) //private /datum/admin_help/proc/ClosureLinks(ref_src) if(!ref_src) ref_src = "[REF(src)]" - . = " (<A HREF='?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=reject'>REJT</A>)" - . += " (<A HREF='?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=icissue'>IC</A>)" - . += " (<A HREF='?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=close'>CLOSE</A>)" - . += " (<A HREF='?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=resolve'>RSLVE</A>)" + . = " (<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=reject'>REJT</A>)" + . += " (<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=icissue'>IC</A>)" + . += " (<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=close'>CLOSE</A>)" + . += " (<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=resolve'>RSLVE</A>)" //private /datum/admin_help/proc/LinkedReplyName(ref_src) if(!ref_src) ref_src = "[REF(src)]" - return "<A HREF='?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=reply'>[initiator_key_name]</A>" + return "<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=reply'>[initiator_key_name]</A>" //private /datum/admin_help/proc/TicketHref(msg, ref_src, action = "ticket") if(!ref_src) ref_src = "[REF(src)]" - return "<A HREF='?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=[action]'>[msg]</A>" + return "<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[ref_src];ahelp_action=[action]'>[msg]</A>" //message from the initiator without a target, all admins will see this //won't bug irc/discord @@ -580,7 +580,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) // Helper for opening directly to player ticket history dat += "<br><br><b>Player Ticket History:</b>" - dat += "[FOURSPACES]<A href='?_src_=holder;[HrefToken()];player_ticket_history=[initiator_ckey]'>Open</A>" + dat += "[FOURSPACES]<A href='byond://?_src_=holder;[HrefToken()];player_ticket_history=[initiator_ckey]'>Open</A>" // Append any tickets also opened by this user if relevant var/list/related_tickets = GLOB.ahelp_tickets.TicketsByCKey(initiator_ckey) @@ -664,7 +664,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) dat += "CLOSED</b>" else dat += "UNKNOWN</b>" - dat += "\n[FOURSPACES]<A href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];player_ticket_panel=1'>Refresh</A>" + dat += "\n[FOURSPACES]<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];player_ticket_panel=1'>Refresh</A>" dat += "<br><br>Opened at: [gameTimestamp("hh:mm:ss", opened_at)] (Approx [DisplayTimeText(world.time - opened_at)] ago)" if(closed_at) dat += "<br>Closed at: [gameTimestamp("hh:mm:ss", closed_at)] (Approx [DisplayTimeText(world.time - closed_at)] ago)" @@ -806,7 +806,7 @@ GLOBAL_DATUM_INIT(admin_help_ui_handler, /datum/admin_help_ui_handler, new) set category = "Admin" set name = "Adminhelp" GLOB.admin_help_ui_handler.ui_interact(mob) - to_chat(src, span_boldnotice("Adminhelp failing to open or work? <a href='?src=[REF(src)];tguiless_adminhelp=1'>Click here</a>")) + to_chat(src, span_boldnotice("Adminhelp failing to open or work? <a href='byond://?src=[REF(src)];tguiless_adminhelp=1'>Click here</a>")) /client/verb/view_latest_ticket() set category = "Admin" @@ -1025,7 +1025,7 @@ GLOBAL_DATUM_INIT(admin_help_ui_handler, /datum/admin_help_ui_handler, new) if(is_special_character(found)) is_antag = 1 founds += "Name: [found.name]([found.real_name]) Key: [found.key] Ckey: [found.ckey] [is_antag ? "(Antag)" : null] " - msg += "[original_word]<font size='1' color='[is_antag ? "red" : "black"]'>(<A HREF='?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminmoreinfo=[REF(found)]'>?</A>|<A HREF='?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservefollow=[REF(found)]'>F</A>)</font> " + msg += "[original_word]<font size='1' color='[is_antag ? "red" : "black"]'>(<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminmoreinfo=[REF(found)]'>?</A>|<A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservefollow=[REF(found)]'>F</A>)</font> " continue msg += "[original_word] " if(external) @@ -1108,7 +1108,7 @@ GLOBAL_DATUM_INIT(admin_help_ui_handler, /datum/admin_help_ui_handler, new) var/datum/datum_check = locate(word_with_brackets) if(!istype(datum_check)) continue - msglist[i] = "<u><a href='?_src_=vars;[HrefToken(forceGlobal = TRUE)];Vars=[word_with_brackets]'>[word]</A></u>" + msglist[i] = "<u><a href='byond://?_src_=vars;[HrefToken(forceGlobal = TRUE)];Vars=[word_with_brackets]'>[word]</A></u>" modified = TRUE if("#") // check if we're linking a ticket @@ -1129,7 +1129,7 @@ GLOBAL_DATUM_INIT(admin_help_ui_handler, /datum/admin_help_ui_handler, new) if(AHELP_RESOLVED) state_word = "Resolved" - msglist[i]= "<u><A href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[REF(ahelp_check)];ahelp_action=ticket'>[word] ([state_word] | [ahelp_check.initiator_key_name])</A></u>" + msglist[i]= "<u><A href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];ahelp=[REF(ahelp_check)];ahelp_action=ticket'>[word] ([state_word] | [ahelp_check.initiator_key_name])</A></u>" modified = TRUE if(modified) diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index 4b668082d4ba1..5d2598fc0f7d5 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -699,7 +699,7 @@ ADMIN_VERB(cmd_admin_pm_panel, R_NONE, "Admin PM", "Show a list of clients to PM log_admin_private("External PM: [sender] -> [recipient_name] : [message]") recipient.receive_ahelp( - "<a href='?priv_msg=[stealthkey]'>[adminname]</a>", + "<a href='byond://?priv_msg=[stealthkey]'>[adminname]</a>", message, ) diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 6169527b57f76..804613f3f1b36 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -480,8 +480,8 @@ ADMIN_VERB(modify_goals, R_ADMIN, "Modify Goals", "Modify the station goals for /datum/admins/proc/modify_goals() var/dat = "" for(var/datum/station_goal/goal as anything in SSstation.get_station_goals()) - dat += "[goal.name] - <a href='?src=[REF(goal)];[HrefToken()];announce=1'>Announce</a> | <a href='?src=[REF(goal)];[HrefToken()];remove=1'>Remove</a><br>" - dat += "<br><a href='?src=[REF(src)];[HrefToken()];add_station_goal=1'>Add New Goal</a>" + dat += "[goal.name] - <a href='byond://?src=[REF(goal)];[HrefToken()];announce=1'>Announce</a> | <a href='byond://?src=[REF(goal)];[HrefToken()];remove=1'>Remove</a><br>" + dat += "<br><a href='byond://?src=[REF(src)];[HrefToken()];add_station_goal=1'>Add New Goal</a>" usr << browse(dat, "window=goals;size=400x400") ADMIN_VERB(debug_mob_lists, R_DEBUG, "Debug Mob Lists", "For when you just gotta know.", ADMIN_CATEGORY_DEBUG) diff --git a/code/modules/admin/verbs/individual_logging.dm b/code/modules/admin/verbs/individual_logging.dm index d9df055ba1bb3..eb665d35f658e 100644 --- a/code/modules/admin/verbs/individual_logging.dm +++ b/code/modules/admin/verbs/individual_logging.dm @@ -75,4 +75,4 @@ slabel = "<b>\[[label]\]</b>" //This is necessary because num2text drops digits and rounds on big numbers. If more defines get added in the future it could break again. log_type = num2text(log_type, MAX_BITFLAG_DIGITS) - return "<a href='?_src_=holder;[HrefToken()];individuallog=[REF(M)];log_type=[log_type];log_src=[log_src]'>[slabel]</a>" + return "<a href='byond://?_src_=holder;[HrefToken()];individuallog=[REF(M)];log_type=[log_type];log_src=[log_src]'>[slabel]</a>" diff --git a/code/modules/admin/verbs/map_template_loadverb.dm b/code/modules/admin/verbs/map_template_loadverb.dm index a27aca0f0147b..3251e9febd27c 100644 --- a/code/modules/admin/verbs/map_template_loadverb.dm +++ b/code/modules/admin/verbs/map_template_loadverb.dm @@ -61,8 +61,8 @@ ADMIN_VERB(map_template_upload, R_DEBUG, "Map Template - Upload", "Upload a map var/report_link if(report) report.show_to(user) - report_link = " - <a href='?src=[REF(report)];[HrefToken(forceGlobal = TRUE)];show=1'>validation report</a>" - to_chat(user, span_warning("Map template '[map]' <a href='?src=[REF(report)];[HrefToken()];show=1'>failed validation</a>."), confidential = TRUE) + report_link = " - <a href='byond://?src=[REF(report)];[HrefToken(forceGlobal = TRUE)];show=1'>validation report</a>" + to_chat(user, span_warning("Map template '[map]' <a href='byond://?src=[REF(report)];[HrefToken()];show=1'>failed validation</a>."), confidential = TRUE) if(report.loadable) var/response = tgui_alert(user, "The map failed validation, would you like to load it anyways?", "Map Errors", list("Cancel", "Upload Anyways")) if(response != "Upload Anyways") diff --git a/code/modules/admin/verbs/mapping.dm b/code/modules/admin/verbs/mapping.dm index 277b7ad36d541..73196dbcdb1b6 100644 --- a/code/modules/admin/verbs/mapping.dm +++ b/code/modules/admin/verbs/mapping.dm @@ -84,7 +84,7 @@ ADMIN_VERB(show_map_reports, R_DEBUG, "Show Map Reports", "Displays a list of ma var/dat = {"<b>List of all map reports:</b><br>"} for(var/datum/map_report/report as anything in GLOB.map_reports) - dat += "[report.tag] ([report.original_path]) - <a href='?src=[REF(report)];[HrefToken()];show=1'>View</a><br>" + dat += "[report.tag] ([report.original_path]) - <a href='byond://?src=[REF(report)];[HrefToken()];show=1'>View</a><br>" user << browse(dat, "window=map_reports") diff --git a/code/modules/admin/view_variables/debug_variable_appearance.dm b/code/modules/admin/view_variables/debug_variable_appearance.dm index c5a367e83a064..537ef5e611b51 100644 --- a/code/modules/admin/view_variables/debug_variable_appearance.dm +++ b/code/modules/admin/view_variables/debug_variable_appearance.dm @@ -23,7 +23,7 @@ display_value = "[display_value]:[icon_state]" var/display_ref = get_vv_link_ref() - return "<a href='?_src_=vars;[HrefToken()];Vars=[display_ref]'>[display_name] (<span class='value'>[display_value]</span>) [display_ref]</a>" + return "<a href='byond://?_src_=vars;[HrefToken()];Vars=[display_ref]'>[display_name] (<span class='value'>[display_value]</span>) [display_ref]</a>" /// Returns the ref string to use when displaying this image in the vv menu of something else /image/proc/get_vv_link_ref() diff --git a/code/modules/admin/view_variables/debug_variables.dm b/code/modules/admin/view_variables/debug_variables.dm index 835da1a0b39cb..b776f1b5d7974 100644 --- a/code/modules/admin/view_variables/debug_variables.dm +++ b/code/modules/admin/view_variables/debug_variables.dm @@ -18,10 +18,10 @@ var/name_part = VV_HTML_ENCODE(name) if(level > 0 || islist(owner)) //handling keys in assoc lists if(istype(name,/datum)) - name_part = "<a href='?_src_=vars;[HrefToken()];Vars=[REF(name)]'>[VV_HTML_ENCODE(name)] [REF(name)]</a>" + name_part = "<a href='byond://?_src_=vars;[HrefToken()];Vars=[REF(name)]'>[VV_HTML_ENCODE(name)] [REF(name)]</a>" else if(islist(name)) var/list/list_value = name - name_part = "<a href='?_src_=vars;[HrefToken()];Vars=[REF(name)]'> /list ([length(list_value)]) [REF(name)]</a>" + name_part = "<a href='byond://?_src_=vars;[HrefToken()];Vars=[REF(name)]'> /list ([length(list_value)]) [REF(name)]</a>" . = "[.][name_part] = " @@ -85,9 +85,9 @@ items += debug_variable(key, val, level + 1, sanitize = sanitize) - return "<a href='?_src_=vars;[HrefToken()];[link_vars]'>/list ([list_value.len])</a><ul>[items.Join()]</ul>" + return "<a href='byond://?_src_=vars;[HrefToken()];[link_vars]'>/list ([list_value.len])</a><ul>[items.Join()]</ul>" else - return "<a href='?_src_=vars;[HrefToken()];[link_vars]'>/list ([list_value.len])</a>" + return "<a href='byond://?_src_=vars;[HrefToken()];[link_vars]'>/list ([list_value.len])</a>" if(name in GLOB.bitfields) var/list/flags = list() @@ -103,13 +103,13 @@ /datum/proc/debug_variable_value(name, level, datum/owner, sanitize, display_flags) if("[src]" != "[type]") // If we have a name var, let's use it. - return "<a href='?_src_=vars;[HrefToken()];Vars=[REF(src)]'>[src] [type] [REF(src)]</a>" + return "<a href='byond://?_src_=vars;[HrefToken()];Vars=[REF(src)]'>[src] [type] [REF(src)]</a>" else - return "<a href='?_src_=vars;[HrefToken()];Vars=[REF(src)]'>[type] [REF(src)]</a>" + return "<a href='byond://?_src_=vars;[HrefToken()];Vars=[REF(src)]'>[type] [REF(src)]</a>" /datum/weakref/debug_variable_value(name, level, datum/owner, sanitize, display_flags) . = ..() - return "[.] <a href='?_src_=vars;[HrefToken()];Vars=[reference]'>(Resolve)</a>" + return "[.] <a href='byond://?_src_=vars;[HrefToken()];Vars=[reference]'>(Resolve)</a>" /matrix/debug_variable_value(name, level, datum/owner, sanitize, display_flags) return {"<span class='value'> diff --git a/code/modules/admin/view_variables/topic_basic.dm b/code/modules/admin/view_variables/topic_basic.dm index 4f36365312701..52b87fda12512 100644 --- a/code/modules/admin/view_variables/topic_basic.dm +++ b/code/modules/admin/view_variables/topic_basic.dm @@ -37,7 +37,7 @@ if(!target) to_chat(usr, span_warning("The object you tried to expose to [C] no longer exists (nulled or hard-deled)"), confidential = TRUE) return - message_admins("[key_name_admin(usr)] Showed [key_name_admin(C)] a <a href='?_src_=vars;datumrefresh=[REF(target)]'>VV window</a>") + message_admins("[key_name_admin(usr)] Showed [key_name_admin(C)] a <a href='byond://?_src_=vars;datumrefresh=[REF(target)]'>VV window</a>") log_admin("Admin [key_name(usr)] Showed [key_name(C)] a VV window of a [target]") to_chat(C, "[holder.fakekey ? "an Administrator" : "[usr.client.key]"] has granted you access to view a View Variables window", confidential = TRUE) C.debug_variables(target) diff --git a/code/modules/admin/view_variables/view_variables.dm b/code/modules/admin/view_variables/view_variables.dm index 66ac70f3f62f7..fbebccd445981 100644 --- a/code/modules/admin/view_variables/view_variables.dm +++ b/code/modules/admin/view_variables/view_variables.dm @@ -257,7 +257,7 @@ ADMIN_VERB_AND_CONTEXT_MENU(debug_variables, R_NONE, "View Variables", "View the </td> <td width='50%'> <div align='center'> - <a id='refresh_link' href='?_src_=vars; + <a id='refresh_link' href='byond://?_src_=vars; datumrefresh=[refid];[HrefToken()]'>Refresh</a> <form> <select name="file" size="1" diff --git a/code/modules/antagonists/nukeop/datums/operative_team.dm b/code/modules/antagonists/nukeop/datums/operative_team.dm index b676bda303dd6..ac65a17dc2d8d 100644 --- a/code/modules/antagonists/nukeop/datums/operative_team.dm +++ b/code/modules/antagonists/nukeop/datums/operative_team.dm @@ -90,12 +90,12 @@ while(!isturf(disk_loc)) if(ismob(disk_loc)) var/mob/M = disk_loc - disk_report += "carried by <a href='?_src_=holder;[HrefToken()];adminplayeropts=[REF(M)]'>[M.real_name]</a> " + disk_report += "carried by <a href='byond://?_src_=holder;[HrefToken()];adminplayeropts=[REF(M)]'>[M.real_name]</a> " if(isobj(disk_loc)) var/obj/O = disk_loc disk_report += "in \a [O.name] " disk_loc = disk_loc.loc - disk_report += "in [disk_loc.loc] at ([disk_loc.x], [disk_loc.y], [disk_loc.z])</td><td><a href='?_src_=holder;[HrefToken()];adminplayerobservefollow=[REF(N)]'>FLW</a></td></tr>" + disk_report += "in [disk_loc.loc] at ([disk_loc.x], [disk_loc.y], [disk_loc.z])</td><td><a href='byond://?_src_=holder;[HrefToken()];adminplayerobservefollow=[REF(N)]'>FLW</a></td></tr>" disk_report += "</table>" var/post_report @@ -114,12 +114,12 @@ post_report += "<b>War not declared.</b>" var/obj/item/nuclear_challenge/war_button = war_button_ref?.resolve() if(war_button) - force_war_button = "<a href='?_src_=holder;[HrefToken()];force_war=[REF(war_button)]'>\[Force war\]</a>" + force_war_button = "<a href='byond://?_src_=holder;[HrefToken()];force_war=[REF(war_button)]'>\[Force war\]</a>" else force_war_button = "\[Cannot declare war, challenge button missing!\]" post_report += "\n[force_war_button]" - post_report += "\n<a href='?_src_=holder;[HrefToken()];give_reinforcement=[REF(src)]'>\[Send Reinforcement\]</a>" + post_report += "\n<a href='byond://?_src_=holder;[HrefToken()];give_reinforcement=[REF(src)]'>\[Send Reinforcement\]</a>" var/final_report = ..() final_report += disk_report diff --git a/code/modules/antagonists/revolution/revolution.dm b/code/modules/antagonists/revolution/revolution.dm index a339b0cc2640d..270f210f13dcd 100644 --- a/code/modules/antagonists/revolution/revolution.dm +++ b/code/modules/antagonists/revolution/revolution.dm @@ -633,14 +633,14 @@ for(var/datum/mind/N as anything in SSjob.get_living_heads()) var/mob/M = N.current if(M) - heads_report += "<tr><td><a href='?_src_=holder;[HrefToken()];adminplayeropts=[REF(M)]'>[M.real_name]</a>[M.client ? "" : " <i>(No Client)</i>"][M.stat == DEAD ? " <b><font color=red>(DEAD)</font></b>" : ""]</td>" - heads_report += "<td><A href='?priv_msg=[M.ckey]'>PM</A></td>" - heads_report += "<td><A href='?_src_=holder;[HrefToken()];adminplayerobservefollow=[REF(M)]'>FLW</a></td>" + heads_report += "<tr><td><a href='byond://?_src_=holder;[HrefToken()];adminplayeropts=[REF(M)]'>[M.real_name]</a>[M.client ? "" : " <i>(No Client)</i>"][M.stat == DEAD ? " <b><font color=red>(DEAD)</font></b>" : ""]</td>" + heads_report += "<td><A href='byond://?priv_msg=[M.ckey]'>PM</A></td>" + heads_report += "<td><A href='byond://?_src_=holder;[HrefToken()];adminplayerobservefollow=[REF(M)]'>FLW</a></td>" var/turf/mob_loc = get_turf(M) heads_report += "<td>[mob_loc.loc]</td></tr>" else - heads_report += "<tr><td><a href='?_src_=vars;[HrefToken()];Vars=[REF(N)]'>[N.name]([N.key])</a><i>Head body destroyed!</i></td>" - heads_report += "<td><A href='?priv_msg=[N.key]'>PM</A></td></tr>" + heads_report += "<tr><td><a href='byond://?_src_=vars;[HrefToken()];Vars=[REF(N)]'>[N.name]([N.key])</a><i>Head body destroyed!</i></td>" + heads_report += "<td><A href='byond://?priv_msg=[N.key]'>PM</A></td></tr>" heads_report += "</table>" return common_part + heads_report diff --git a/code/modules/antagonists/traitor/datum_traitor.dm b/code/modules/antagonists/traitor/datum_traitor.dm index 57ca4540612e4..2917a8202efd9 100644 --- a/code/modules/antagonists/traitor/datum_traitor.dm +++ b/code/modules/antagonists/traitor/datum_traitor.dm @@ -131,16 +131,16 @@ /datum/antagonist/traitor/proc/traitor_objective_to_html(datum/traitor_objective/to_display) var/string = "[to_display.name]" if(to_display.objective_state == OBJECTIVE_STATE_ACTIVE || to_display.objective_state == OBJECTIVE_STATE_INACTIVE) - string += " <a href='?src=[REF(owner)];edit_obj_tc=[REF(to_display)]'>[to_display.telecrystal_reward] TC</a>" - string += " <a href='?src=[REF(owner)];edit_obj_pr=[REF(to_display)]'>[to_display.progression_reward] PR</a>" + string += " <a href='byond://?src=[REF(owner)];edit_obj_tc=[REF(to_display)]'>[to_display.telecrystal_reward] TC</a>" + string += " <a href='byond://?src=[REF(owner)];edit_obj_pr=[REF(to_display)]'>[to_display.progression_reward] PR</a>" else string += ", [to_display.telecrystal_reward] TC" string += ", [to_display.progression_reward] PR" if(to_display.objective_state == OBJECTIVE_STATE_ACTIVE && !istype(to_display, /datum/traitor_objective/ultimate)) - string += " <a href='?src=[REF(owner)];fail_objective=[REF(to_display)]'>Fail this objective</a>" - string += " <a href='?src=[REF(owner)];succeed_objective=[REF(to_display)]'>Succeed this objective</a>" + string += " <a href='byond://?src=[REF(owner)];fail_objective=[REF(to_display)]'>Fail this objective</a>" + string += " <a href='byond://?src=[REF(owner)];succeed_objective=[REF(to_display)]'>Succeed this objective</a>" if(to_display.objective_state == OBJECTIVE_STATE_INACTIVE) - string += " <a href='?src=[REF(owner)];fail_objective=[REF(to_display)]'>Dispose of this objective</a>" + string += " <a href='byond://?src=[REF(owner)];fail_objective=[REF(to_display)]'>Dispose of this objective</a>" if(to_display.skipped) string += " - <b>Skipped</b>" @@ -173,7 +173,7 @@ result += "[traitor_objective_to_html(objective)]<br>" if(!length(uplink_handler.potential_objectives)) result += "EMPTY<br>" - result += "<a href='?src=[REF(owner)];common=give_objective'>Force add objective</a><br>" + result += "<a href='byond://?src=[REF(owner)];common=give_objective'>Force add objective</a><br>" return result /// Returns true if we're allowed to assign ourselves a new objective diff --git a/code/modules/asset_cache/asset_cache_client.dm b/code/modules/asset_cache/asset_cache_client.dm index 3cff8cb41f3e9..20835cd70d7c8 100644 --- a/code/modules/asset_cache/asset_cache_client.dm +++ b/code/modules/asset_cache/asset_cache_client.dm @@ -36,7 +36,7 @@ var/job = ++last_asset_job var/t = 0 var/timeout_time = timeout - src << browse({"<script>window.location.href="?asset_cache_confirm_arrival=[job]"</script>"}, "window=asset_cache_browser&file=asset_cache_send_verify.htm") + src << browse({"<script>window.location.href='byond://?asset_cache_confirm_arrival=[job]'</script>"}, "window=asset_cache_browser&file=asset_cache_send_verify.htm") while(!completed_asset_jobs["[job]"] && t < timeout_time) // Reception is handled in Topic() stoplag(1) // Lock up the caller until this is received. diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm index 4bd8ce5497e2d..062a402cc3f23 100644 --- a/code/modules/client/client_procs.dm +++ b/code/modules/client/client_procs.dm @@ -1086,7 +1086,7 @@ GLOBAL_LIST_INIT(blacklisted_builds, list( /client/proc/check_panel_loaded() if(stat_panel.is_ready()) return - to_chat(src, span_userdanger("Statpanel failed to load, click <a href='?src=[REF(src)];reload_statbrowser=1'>here</a> to reload the panel ")) + to_chat(src, span_userdanger("Statpanel failed to load, click <a href='byond://?src=[REF(src)];reload_statbrowser=1'>here</a> to reload the panel ")) /** * Initializes dropdown menus on client diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 8ff3dd2459622..16a263cc14f4a 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -150,7 +150,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car /datum/preferences/proc/announce_conflict(list/notadded) to_chat(parent, "<span class='warningplain'><b><u>Keybinding Conflict</u></b></span>\n\ - <span class='warningplain'><b>There are new <a href='?src=[REF(src)];open_keybindings=1'>keybindings</a> that default to keys you've already bound. The new ones will be unbound.</b></span>") + <span class='warningplain'><b>There are new <a href='byond://?src=[REF(src)];open_keybindings=1'>keybindings</a> that default to keys you've already bound. The new ones will be unbound.</b></span>") for(var/item in notadded) var/datum/keybinding/conflicted = item to_chat(parent, span_danger("[conflicted.category]: [conflicted.full_name] needs updating")) diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 12600338f97d1..1e9608abdb4c3 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -340,7 +340,7 @@ else how_cool_are_your_threads += "[src]'s storage opens when dragged to yourself.\n" if (atom_storage.can_hold?.len) // If pocket type can hold anything, vs only specific items - how_cool_are_your_threads += "[src] can store [atom_storage.max_slots] <a href='?src=[REF(src)];show_valid_pocket_items=1'>item\s</a>.\n" + how_cool_are_your_threads += "[src] can store [atom_storage.max_slots] <a href='byond://?src=[REF(src)];show_valid_pocket_items=1'>item\s</a>.\n" else how_cool_are_your_threads += "[src] can store [atom_storage.max_slots] item\s that are [weight_class_to_text(atom_storage.max_specific_storage)] or smaller.\n" if(atom_storage.quickdraw) @@ -351,7 +351,7 @@ . += how_cool_are_your_threads.Join() if(get_armor().has_any_armor() || (flags_cover & (HEADCOVERSMOUTH|PEPPERPROOF)) || (clothing_flags & STOPSPRESSUREDAMAGE) || (visor_flags & STOPSPRESSUREDAMAGE)) - . += span_notice("It has a <a href='?src=[REF(src)];list_armor=1'>tag</a> listing its protection classes.") + . += span_notice("It has a <a href='byond://?src=[REF(src)];list_armor=1'>tag</a> listing its protection classes.") /obj/item/clothing/examine_tags(mob/user) . = ..() diff --git a/code/modules/deathmatch/deathmatch_controller.dm b/code/modules/deathmatch/deathmatch_controller.dm index de5132198881a..3ae10ad51d204 100644 --- a/code/modules/deathmatch/deathmatch_controller.dm +++ b/code/modules/deathmatch/deathmatch_controller.dm @@ -23,7 +23,7 @@ /datum/deathmatch_controller/proc/create_new_lobby(mob/host) lobbies[host.ckey] = new /datum/deathmatch_lobby(host) - deadchat_broadcast(" has opened a new deathmatch lobby. <a href=?src=[REF(lobbies[host.ckey])];join=1>(Join)</a>", "<B>[host]</B>") + deadchat_broadcast(" has opened a new deathmatch lobby. <a href=byond://?src=[REF(lobbies[host.ckey])];join=1>(Join)</a>", "<B>[host]</B>") /datum/deathmatch_controller/proc/remove_lobby(ckey) var/lobby = lobbies[ckey] diff --git a/code/modules/error_handler/error_viewer.dm b/code/modules/error_handler/error_viewer.dm index fbaa0ca3faebc..8080f3005dd3c 100644 --- a/code/modules/error_handler/error_viewer.dm +++ b/code/modules/error_handler/error_viewer.dm @@ -71,7 +71,7 @@ GLOBAL_DATUM(error_cache, /datum/error_viewer/error_cache) if (linear) back_to_param += ";viewruntime_linear=1" - return "<a href='?_src_=holder;[HrefToken()];viewruntime=[REF(src)][back_to_param]'>[linktext]</a>" + return "<a href='byond://?_src_=holder;[HrefToken()];viewruntime=[REF(src)][back_to_param]'>[linktext]</a>" /datum/error_viewer/error_cache var/list/errors = list() @@ -182,12 +182,12 @@ GLOBAL_DATUM(error_cache, /datum/error_viewer/error_cache) var/html = build_header(back_to, linear) html += "[name]<div class='runtime'>[desc]</div>" if (usr_ref) - html += "<br><b>usr</b>: <a href='?_src_=vars;[HrefToken()];Vars=[usr_ref]'>VV</a>" - html += " <a href='?_src_=holder;[HrefToken()];adminplayeropts=[usr_ref]'>PP</a>" - html += " <a href='?_src_=holder;[HrefToken()];adminplayerobservefollow=[usr_ref]'>Follow</a>" + html += "<br><b>usr</b>: <a href='byond://?_src_=vars;[HrefToken()];Vars=[usr_ref]'>VV</a>" + html += " <a href='byond://?_src_=holder;[HrefToken()];adminplayeropts=[usr_ref]'>PP</a>" + html += " <a href='byond://?_src_=holder;[HrefToken()];adminplayerobservefollow=[usr_ref]'>Follow</a>" if (istype(usr_loc)) - html += "<br><b>usr.loc</b>: <a href='?_src_=vars;[HrefToken()];Vars=[REF(usr_loc)]'>VV</a>" - html += " <a href='?_src_=holder;[HrefToken()];adminplayerobservecoodjump=1;X=[usr_loc.x];Y=[usr_loc.y];Z=[usr_loc.z]'>JMP</a>" + html += "<br><b>usr.loc</b>: <a href='byond://?_src_=vars;[HrefToken()];Vars=[REF(usr_loc)]'>VV</a>" + html += " <a href='byond://?_src_=holder;[HrefToken()];adminplayerobservecoodjump=1;X=[usr_loc.x];Y=[usr_loc.y];Z=[usr_loc.z]'>JMP</a>" browse_to(user, html) diff --git a/code/modules/events/_event.dm b/code/modules/events/_event.dm index a1e8aef5b6c91..a5f8675b3b9ad 100644 --- a/code/modules/events/_event.dm +++ b/code/modules/events/_event.dm @@ -102,7 +102,7 @@ triggering = TRUE // We sleep HERE, in pre-event setup (because there's no sense doing it in run_event() since the event is already running!) for the given amount of time to make an admin has enough time to cancel an event un-fitting of the present round or at least reroll it. - message_admins("Random Event triggering in [DisplayTimeText(RANDOM_EVENT_ADMIN_INTERVENTION_TIME)]: [name]. (<a href='?src=[REF(src)];cancel=1'>CANCEL</a>) (<a href='?src=[REF(src)];different_event=1'>SOMETHING ELSE</a>)") + message_admins("Random Event triggering in [DisplayTimeText(RANDOM_EVENT_ADMIN_INTERVENTION_TIME)]: [name]. (<a href='byond://?src=[REF(src)];cancel=1'>CANCEL</a>) (<a href='byond://?src=[REF(src)];different_event=1'>SOMETHING ELSE</a>)") sleep(RANDOM_EVENT_ADMIN_INTERVENTION_TIME) var/players_amt = get_active_player_count(alive_check = TRUE, afk_check = TRUE, human_check = TRUE) if(!can_spawn_event(players_amt)) diff --git a/code/modules/interview/interview.dm b/code/modules/interview/interview.dm index a1703b9c06974..78490402e63e8 100644 --- a/code/modules/interview/interview.dm +++ b/code/modules/interview/interview.dm @@ -160,4 +160,4 @@ * Generates a clickable link to open this interview */ /datum/interview/proc/link_self() - return "<a href='?_src_=holder;[HrefToken(forceGlobal = TRUE)];interview=[REF(src)]'>Interview #[id]</a>" + return "<a href='byond://?_src_=holder;[HrefToken(forceGlobal = TRUE)];interview=[REF(src)]'>Interview #[id]</a>" diff --git a/code/modules/mob/dead/new_player/poll.dm b/code/modules/mob/dead/new_player/poll.dm index 9be971204c1e8..6ecd6f12a272a 100644 --- a/code/modules/mob/dead/new_player/poll.dm +++ b/code/modules/mob/dead/new_player/poll.dm @@ -18,7 +18,7 @@ GLOBAL_PROTECT(poll_options) var/datum/poll_question/poll = p if((poll.admin_only && !client.holder) || poll.future_poll) continue - output += "<tr bgcolor='#e2e2e2'><td><a href='?src=[rs];viewpoll=[REF(poll)]'><b>[poll.question]</b></a></td></tr>" + output += "<tr bgcolor='#e2e2e2'><td><a href='byond://?src=[rs];viewpoll=[REF(poll)]'><b>[poll.question]</b></a></td></tr>" output += "</table>" src << browse(jointext(output, ""),"window=playerpolllist;size=500x300") diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index cc03fb05a301d..820f14edebac0 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -436,7 +436,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp A.add_overlay(source) source.layer = old_layer source.plane = old_plane - to_chat(src, span_ghostalert("<a href=?src=[REF(src)];reenter=1>(Click to re-enter)</a>")) + to_chat(src, span_ghostalert("<a href=byond://?src=[REF(src)];reenter=1>(Click to re-enter)</a>")) if(sound) SEND_SOUND(src, sound(sound)) diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index b5bc0f4909edc..5113816166d16 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -425,9 +425,9 @@ visible_message(span_notice("[src] examines [p_them()]self."), \ span_notice("You check yourself for shrapnel.")) if(I.is_embed_harmless()) - to_chat(src, "\t <a href='?src=[REF(src)];embedded_object=[REF(I)];embedded_limb=[REF(LB)]' class='warning'>There is \a [I] stuck to your [LB.name]!</a>") + to_chat(src, "\t <a href='byond://?src=[REF(src)];embedded_object=[REF(I)];embedded_limb=[REF(LB)]' class='warning'>There is \a [I] stuck to your [LB.name]!</a>") else - to_chat(src, "\t <a href='?src=[REF(src)];embedded_object=[REF(I)];embedded_limb=[REF(LB)]' class='warning'>There is \a [I] embedded in your [LB.name]!</a>") + to_chat(src, "\t <a href='byond://?src=[REF(src)];embedded_object=[REF(I)];embedded_limb=[REF(LB)]' class='warning'>There is \a [I] embedded in your [LB.name]!</a>") return embeds diff --git a/code/modules/mob/living/carbon/examine.dm b/code/modules/mob/living/carbon/examine.dm index bd457503d5af0..7918820ef6033 100644 --- a/code/modules/mob/living/carbon/examine.dm +++ b/code/modules/mob/living/carbon/examine.dm @@ -455,7 +455,7 @@ if(wear_id && !(wear_id.item_flags & EXAMINE_SKIP)) var/obj/item/card/id/id = wear_id.GetID() if(id && get_dist(user, src) <= ID_EXAMINE_DISTANCE) - var/id_href = "<a href='?src=[REF(src)];see_id=1;id_ref=[REF(id)];id_name=[id.registered_name];examine_time=[world.time]'>[wear_id.examine_title(user)]</a>" + var/id_href = "<a href='byond://?src=[REF(src)];see_id=1;id_ref=[REF(id)];id_name=[id.registered_name];examine_time=[world.time]'>[wear_id.examine_title(user)]</a>" . += "[t_He] [t_is] wearing [id_href]." else @@ -495,7 +495,7 @@ var/datum/record/crew/target_record = find_record(perpname) if(target_record) . += "Rank: [target_record.rank]" - . += "<a href='?src=[REF(src)];hud=1;photo_front=1;examine_time=[world.time]'>\[Front photo\]</a><a href='?src=[REF(src)];hud=1;photo_side=1;examine_time=[world.time]'>\[Side photo\]</a>" + . += "<a href='byond://?src=[REF(src)];hud=1;photo_front=1;examine_time=[world.time]'>\[Front photo\]</a><a href='byond://?src=[REF(src)];hud=1;photo_side=1;examine_time=[world.time]'>\[Side photo\]</a>" if(HAS_TRAIT(user, TRAIT_MEDICAL_HUD) && HAS_TRAIT(user, TRAIT_SECURITY_HUD)) title = separator_hr("Medical & Security Analysis") . += get_medhud_examine_info(user, target_record) @@ -526,13 +526,13 @@ . += "<span class='notice ml-1'>Detected cybernetic modifications:</span>" . += "<span class='notice ml-2'>[english_list(cybers, and_text = ", and")]</span>" if(target_record) - . += "<a href='?src=[REF(src)];hud=m;physical_status=1;examine_time=[world.time]'>\[[target_record.physical_status]\]</a>" - . += "<a href='?src=[REF(src)];hud=m;mental_status=1;examine_time=[world.time]'>\[[target_record.mental_status]\]</a>" + . += "<a href='byond://?src=[REF(src)];hud=m;physical_status=1;examine_time=[world.time]'>\[[target_record.physical_status]\]</a>" + . += "<a href='byond://?src=[REF(src)];hud=m;mental_status=1;examine_time=[world.time]'>\[[target_record.mental_status]\]</a>" else . += "\[Record Missing\]" . += "\[Record Missing\]" - . += "<a href='?src=[REF(src)];hud=m;evaluation=1;examine_time=[world.time]'>\[Medical evaluation\]</a>" - . += "<a href='?src=[REF(src)];hud=m;quirk=1;examine_time=[world.time]'>\[See quirks\]</a>" + . += "<a href='byond://?src=[REF(src)];hud=m;evaluation=1;examine_time=[world.time]'>\[Medical evaluation\]</a>" + . += "<a href='byond://?src=[REF(src)];hud=m;quirk=1;examine_time=[world.time]'>\[See quirks\]</a>" /// Collects information displayed about src when examined by a user with a security HUD. /mob/living/carbon/proc/get_sechud_examine_info(mob/living/user, datum/record/crew/target_record) @@ -546,15 +546,15 @@ if(target_record.security_note) security_note = target_record.security_note if(ishuman(user)) - . += "Criminal status: <a href='?src=[REF(src)];hud=s;status=1;examine_time=[world.time]'>\[[wanted_status]\]</a>" + . += "Criminal status: <a href='byond://?src=[REF(src)];hud=s;status=1;examine_time=[world.time]'>\[[wanted_status]\]</a>" else . += "Criminal status: [wanted_status]" . += "Important Notes: [security_note]" - . += "Security record: <a href='?src=[REF(src)];hud=s;view=1;examine_time=[world.time]'>\[View\]</a>" + . += "Security record: <a href='byond://?src=[REF(src)];hud=s;view=1;examine_time=[world.time]'>\[View\]</a>" if(ishuman(user)) - . += "<a href='?src=[REF(src)];hud=s;add_citation=1;examine_time=[world.time]'>\[Add citation\]</a>\ - <a href='?src=[REF(src)];hud=s;add_crime=1;examine_time=[world.time]'>\[Add crime\]</a>\ - <a href='?src=[REF(src)];hud=s;add_note=1;examine_time=[world.time]'>\[Add note\]</a>" + . += "<a href='byond://?src=[REF(src)];hud=s;add_citation=1;examine_time=[world.time]'>\[Add citation\]</a>\ + <a href='byond://?src=[REF(src)];hud=s;add_crime=1;examine_time=[world.time]'>\[Add crime\]</a>\ + <a href='byond://?src=[REF(src)];hud=s;add_note=1;examine_time=[world.time]'>\[Add note\]</a>" /mob/living/carbon/human/examine_more(mob/user) . = ..() diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 094c28d84a507..3d4657b00417b 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -2093,12 +2093,12 @@ GLOBAL_LIST_EMPTY(fire_appearances) . += {" <br><font size='1'>[VV_HREF_TARGETREF(refid, VV_HK_GIVE_DIRECT_CONTROL, "[ckey || "no ckey"]")] / [VV_HREF_TARGETREF_1V(refid, VV_HK_BASIC_EDIT, "[real_name || "no real name"]", NAMEOF(src, real_name))]</font> <br><font size='1'> - BRUTE:<font size='1'><a href='?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=brute' id='brute'>[getBruteLoss()]</a> - FIRE:<font size='1'><a href='?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=fire' id='fire'>[getFireLoss()]</a> - TOXIN:<font size='1'><a href='?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=toxin' id='toxin'>[getToxLoss()]</a> - OXY:<font size='1'><a href='?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=oxygen' id='oxygen'>[getOxyLoss()]</a> - BRAIN:<font size='1'><a href='?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=brain' id='brain'>[get_organ_loss(ORGAN_SLOT_BRAIN)]</a> - STAMINA:<font size='1'><a href='?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=stamina' id='stamina'>[getStaminaLoss()]</a> + BRUTE:<font size='1'><a href='byond://?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=brute' id='brute'>[getBruteLoss()]</a> + FIRE:<font size='1'><a href='byond://?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=fire' id='fire'>[getFireLoss()]</a> + TOXIN:<font size='1'><a href='byond://?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=toxin' id='toxin'>[getToxLoss()]</a> + OXY:<font size='1'><a href='byond://?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=oxygen' id='oxygen'>[getOxyLoss()]</a> + BRAIN:<font size='1'><a href='byond://?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=brain' id='brain'>[get_organ_loss(ORGAN_SLOT_BRAIN)]</a> + STAMINA:<font size='1'><a href='byond://?_src_=vars;[HrefToken()];mobToDamage=[refid];adjustDamage=stamina' id='stamina'>[getStaminaLoss()]</a> </font> "} diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index e2a898b352642..370da48ef8dcd 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -619,12 +619,12 @@ if (length(cameras)) var/obj/machinery/camera/cam = cameras[1] if (cam.can_use()) - queueAlarm("--- [alarm_type] alarm detected in [home_name]! (<A HREF=?src=[REF(src)];switchcamera=[REF(cam)]>[cam.c_tag]</A>)", alarm_type) + queueAlarm("--- [alarm_type] alarm detected in [home_name]! (<A href=byond://?src=[REF(src)];switchcamera=[REF(cam)]>[cam.c_tag]</A>)", alarm_type) else var/first_run = FALSE var/dat2 = "" for (var/obj/machinery/camera/camera as anything in cameras) - dat2 += "[(!first_run) ? "" : " | "]<A HREF=?src=[REF(src)];switchcamera=[REF(camera)]>[camera.c_tag]</A>" + dat2 += "[(!first_run) ? "" : " | "]<A href=byond://?src=[REF(src)];switchcamera=[REF(camera)]>[camera.c_tag]</A>" first_run = TRUE queueAlarm("--- [alarm_type] alarm detected in [home_name]! ([dat2])", alarm_type) else @@ -919,7 +919,7 @@ var/list/stored_name = list(null) SEND_SIGNAL(speaker, COMSIG_MOVABLE_MESSAGE_GET_NAME_PART, stored_name, FALSE) namepart = stored_name[NAME_PART_INDEX] || "[speaker.GetVoice()]" - var/hrefpart = "<a href='?src=[REF(src)];track=[html_encode(namepart)]'>" + var/hrefpart = "<a href='byond://?src=[REF(src)];track=[html_encode(namepart)]'>" var/jobpart = "Unknown" if(!HAS_TRAIT(speaker, TRAIT_UNKNOWN)) //don't fetch the speaker's job in case they have something that conseals their identity completely diff --git a/code/modules/mob/living/silicon/ai/ai_say.dm b/code/modules/mob/living/silicon/ai/ai_say.dm index 86f62cd67dab6..0c7828a4fa5fb 100644 --- a/code/modules/mob/living/silicon/ai/ai_say.dm +++ b/code/modules/mob/living/silicon/ai/ai_say.dm @@ -1,7 +1,7 @@ /mob/living/silicon/ai/compose_track_href(atom/movable/speaker, namepart) var/mob/M = speaker.GetSource() if(M) - return "<a href='?src=[REF(src)];track=[html_encode(namepart)]'>" + return "<a href='byond://?src=[REF(src)];track=[html_encode(namepart)]'>" return "" /mob/living/silicon/ai/compose_job(atom/movable/speaker, message_langs, raw_message, radio_freq) @@ -84,7 +84,7 @@ var/index = 0 for(var/word in GLOB.vox_sounds) index++ - dat += "<A href='?src=[REF(src)];say_word=[word]'>[capitalize(word)]</A>" + dat += "<A href='byond://?src=[REF(src)];say_word=[word]'>[capitalize(word)]</A>" if(index != GLOB.vox_sounds.len) dat += " / " diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm index 4adfe057c59fb..3f86c64333e9d 100644 --- a/code/modules/mob/living/silicon/ai/life.dm +++ b/code/modules/mob/living/silicon/ai/life.dm @@ -135,7 +135,7 @@ sleep(5 SECONDS) to_chat(src, span_notice("Receiving control information from APC.")) sleep(0.2 SECONDS) - to_chat(src, "<A HREF=?src=[REF(src)];emergencyAPC=[TRUE]>APC ready for connection.</A>") + to_chat(src, "<A href=byond://?src=[REF(src)];emergencyAPC=[TRUE]>APC ready for connection.</A>") apc_override = theAPC apc_override.ui_interact(src) setAiRestorePowerRoutine(POWER_RESTORATION_APC_FOUND) diff --git a/code/modules/mob/living/silicon/ai/login.dm b/code/modules/mob/living/silicon/ai/login.dm index f36dc84c08bf8..cd909eab9f531 100644 --- a/code/modules/mob/living/silicon/ai/login.dm +++ b/code/modules/mob/living/silicon/ai/login.dm @@ -4,7 +4,7 @@ return FALSE if(stat != DEAD) if(lacks_power() && apc_override) //Placing this in Login() in case the AI doesn't have this link for whatever reason. - to_chat(usr, "[span_warning("Main power is unavailable, backup power in use. Diagnostics scan complete.")] <A HREF='?src=[REF(src)];emergencyAPC=[TRUE]'>Local APC ready for connection.</A>") + to_chat(usr, "[span_warning("Main power is unavailable, backup power in use. Diagnostics scan complete.")] <A href='byond://?src=[REF(src)];emergencyAPC=[TRUE]'>Local APC ready for connection.</A>") set_eyeobj_visible(TRUE) if(multicam_on) end_multicam() diff --git a/code/modules/mob/living/silicon/laws.dm b/code/modules/mob/living/silicon/laws.dm index 8a1861246acba..be8f5e42c383e 100644 --- a/code/modules/mob/living/silicon/laws.dm +++ b/code/modules/mob/living/silicon/laws.dm @@ -19,7 +19,7 @@ /mob/living/silicon/proc/deadchat_lawchange() var/list/the_laws = laws.get_law_list(include_zeroth = TRUE) var/lawtext = the_laws.Join("<br/>") - deadchat_broadcast("'s <b>laws were changed.</b> <a href='?src=[REF(src)]&dead=1&printlawtext=[url_encode(lawtext)]'>View</a>", span_name("[src]"), follow_target=src, message_type=DEADCHAT_LAWCHANGE) + deadchat_broadcast("'s <b>laws were changed.</b> <a href='byond://?src=[REF(src)]&dead=1&printlawtext=[url_encode(lawtext)]'>View</a>", span_name("[src]"), follow_target=src, message_type=DEADCHAT_LAWCHANGE) /mob/living/silicon/proc/post_lawchange(announce = TRUE) throw_alert(ALERT_NEW_LAW, /atom/movable/screen/alert/newlaw) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 14a920b350ae1..29e5700ba20c7 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -584,13 +584,13 @@ return switch(notifytype) if(AI_NOTIFICATION_NEW_BORG) //New Cyborg - to_chat(connected_ai, "<br><br>[span_notice("NOTICE - New cyborg connection detected: <a href='?src=[REF(connected_ai)];track=[html_encode(name)]'>[name]</a>")]<br>") + to_chat(connected_ai, "<br><br>[span_notice("NOTICE - New cyborg connection detected: <a href='byond://?src=[REF(connected_ai)];track=[html_encode(name)]'>[name]</a>")]<br>") if(AI_NOTIFICATION_NEW_MODEL) //New Model to_chat(connected_ai, "<br><br>[span_notice("NOTICE - Cyborg model change detected: [name] has loaded the [designation] model.")]<br>") if(AI_NOTIFICATION_CYBORG_RENAMED) //New Name to_chat(connected_ai, "<br><br>[span_notice("NOTICE - Cyborg reclassification detected: [oldname] is now designated as [newname].")]<br>") if(AI_NOTIFICATION_AI_SHELL) //New Shell - to_chat(connected_ai, "<br><br>[span_notice("NOTICE - New cyborg shell detected: <a href='?src=[REF(connected_ai)];track=[html_encode(name)]'>[name]</a>")]<br>") + to_chat(connected_ai, "<br><br>[span_notice("NOTICE - New cyborg shell detected: <a href='byond://?src=[REF(connected_ai)];track=[html_encode(name)]'>[name]</a>")]<br>") if(AI_NOTIFICATION_CYBORG_DISCONNECTED) //Tampering with the wires to_chat(connected_ai, "<br><br>[span_notice("NOTICE - Remote telemetry lost with [name].")]<br>") diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index 734ec24ef028c..188d104a562f9 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -154,7 +154,7 @@ for(var/alarm_type in alarm_types_show) msg += "[uppertext(alarm_type)]: [alarm_types_show[alarm_type]] alarms detected. - " - msg += "<A href=?src=[REF(src)];showalerts=1'>\[Show Alerts\]</a>" + msg += "<A href=byond://?src=[REF(src)];showalerts=1'>\[Show Alerts\]</a>" to_chat(src, msg) if(length(alarms_to_clear) < 3) @@ -167,7 +167,7 @@ for(var/alarm_type in alarm_types_clear) msg += "[uppertext(alarm_type)]: [alarm_types_clear[alarm_type]] alarms cleared. - " - msg += "<A href=?src=[REF(src)];showalerts=1'>\[Show Alerts\]</a>" + msg += "<A href=byond://?src=[REF(src)];showalerts=1'>\[Show Alerts\]</a>" to_chat(src, msg) diff --git a/code/modules/mob/living/silicon/silicon_say.dm b/code/modules/mob/living/silicon/silicon_say.dm index 824bba98dc070..3111eb07c652f 100644 --- a/code/modules/mob/living/silicon/silicon_say.dm +++ b/code/modules/mob/living/silicon/silicon_say.dm @@ -32,7 +32,7 @@ M, span_binarysay("\ Robotic Talk, \ - <a href='?src=[REF(M)];track=[html_encode(namepart)]'>[span_name("[namepart] ([designation])")]</a> \ + <a href='byond://?src=[REF(M)];track=[html_encode(namepart)]'>[span_name("[namepart] ([designation])")]</a> \ <span class='message'>[quoted_message]</span>\ "), avoid_highlighting = src == M diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index 0d232ef3b6697..006b2684c9755 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -324,8 +324,8 @@ to_chat(ghost, span_ghostalert(message)) continue - var/interact_link = click_interact ? " <a href='?src=[REF(ghost)];play=[REF(source)]'>(Play)</a>" : "" - var/view_link = " <a href='?src=[REF(ghost)];view=[REF(source)]'>(View)</a>" + var/interact_link = click_interact ? " <a href='byond://?src=[REF(ghost)];play=[REF(source)]'>(Play)</a>" : "" + var/view_link = " <a href='byond://?src=[REF(ghost)];view=[REF(source)]'>(View)</a>" to_chat(ghost, span_ghostalert("[message][custom_link][interact_link][view_link]")) diff --git a/code/modules/modular_computers/file_system/programs/messenger/messenger_program.dm b/code/modules/modular_computers/file_system/programs/messenger/messenger_program.dm index bcb79a2813e87..019083cdec97c 100644 --- a/code/modules/modular_computers/file_system/programs/messenger/messenger_program.dm +++ b/code/modules/modular_computers/file_system/programs/messenger/messenger_program.dm @@ -709,7 +709,7 @@ reply = "(<a href='byond://?src=[REF(src)];choice=[reply_href];skiprefresh=1;target=[REF(chat)]'>Reply</a>)" if (isAI(messaged_mob)) - sender_title = "<a href='?src=[REF(messaged_mob)];track=[html_encode(sender_name)]'>[sender_title]</a>" + sender_title = "<a href='byond://?src=[REF(messaged_mob)];track=[html_encode(sender_name)]'>[sender_title]</a>" var/inbound_message = "[signal.format_message()]" diff --git a/code/modules/reagents/chemistry/recipes.dm b/code/modules/reagents/chemistry/recipes.dm index acde1703668e4..105ce859ffd7a 100644 --- a/code/modules/reagents/chemistry/recipes.dm +++ b/code/modules/reagents/chemistry/recipes.dm @@ -207,7 +207,7 @@ var/atom/A = holder.my_atom var/turf/T = get_turf(A) var/message = "Mobs have been spawned in [ADMIN_VERBOSEJMP(T)] by a [reaction_name] reaction." - message += " (<A HREF='?_src_=vars;Vars=[REF(A)]'>VV</A>)" + message += " (<A href='byond://?_src_=vars;Vars=[REF(A)]'>VV</A>)" var/mob/M = get(A, /mob) if(M) diff --git a/code/modules/shuttle/shuttle_consoles/shuttle_console.dm b/code/modules/shuttle/shuttle_consoles/shuttle_console.dm index df1922ae9daab..e269e360ba4dc 100644 --- a/code/modules/shuttle/shuttle_consoles/shuttle_console.dm +++ b/code/modules/shuttle/shuttle_consoles/shuttle_console.dm @@ -217,7 +217,7 @@ return COOLDOWN_START(src, request_cooldown, 1 MINUTES) to_chat(usr, span_notice("Your request has been received by CentCom.")) - to_chat(GLOB.admins, "<b>SHUTTLE: <font color='#3d5bc3'>[ADMIN_LOOKUPFLW(usr)] (<A HREF='?_src_=holder;[HrefToken()];move_shuttle=[shuttleId]'>Move Shuttle</a>)(<A HREF='?_src_=holder;[HrefToken()];unlock_shuttle=[REF(src)]'>Lock/Unlock Shuttle</a>)</b> is requesting to move or unlock the shuttle.</font>") + to_chat(GLOB.admins, "<b>SHUTTLE: <font color='#3d5bc3'>[ADMIN_LOOKUPFLW(usr)] (<A href='byond://?_src_=holder;[HrefToken()];move_shuttle=[shuttleId]'>Move Shuttle</a>)(<A href='byond://?_src_=holder;[HrefToken()];unlock_shuttle=[REF(src)]'>Lock/Unlock Shuttle</a>)</b> is requesting to move or unlock the shuttle.</font>") return TRUE /obj/machinery/computer/shuttle/emag_act(mob/user, obj/item/card/emag/emag_card) diff --git a/code/modules/surgery/bodyparts/_bodyparts.dm b/code/modules/surgery/bodyparts/_bodyparts.dm index e6fa350728f7c..1c0718b98e90f 100644 --- a/code/modules/surgery/bodyparts/_bodyparts.dm +++ b/code/modules/surgery/bodyparts/_bodyparts.dm @@ -362,7 +362,7 @@ for(var/obj/item/embedded_thing in embedded_objects) var/stuck_word = embedded_thing.is_embed_harmless() ? "stuck" : "embedded" - check_list += "\t <a href='?src=[REF(examiner)];embedded_object=[REF(embedded_thing)];embedded_limb=[REF(src)]' class='warning'>There is \a [embedded_thing] [stuck_word] in your [name]!</a>" + check_list += "\t <a href='byond://?src=[REF(examiner)];embedded_object=[REF(embedded_thing)];embedded_limb=[REF(src)]' class='warning'>There is \a [embedded_thing] [stuck_word] in your [name]!</a>" /obj/item/bodypart/blob_act() receive_damage(max_damage, wound_bonus = CANT_WOUND) diff --git a/code/modules/tgui_panel/tgui_panel.dm b/code/modules/tgui_panel/tgui_panel.dm index a680056b0e5e7..a54f56ead0c08 100644 --- a/code/modules/tgui_panel/tgui_panel.dm +++ b/code/modules/tgui_panel/tgui_panel.dm @@ -61,7 +61,7 @@ */ /datum/tgui_panel/proc/on_initialize_timed_out() // Currently does nothing but sending a message to old chat. - SEND_TEXT(client, span_userdanger("Failed to load fancy chat, click <a href='?src=[REF(src)];reload_tguipanel=1'>HERE</a> to attempt to reload it.")) + SEND_TEXT(client, span_userdanger("Failed to load fancy chat, click <a href='byond://?src=[REF(src)];reload_tguipanel=1'>HERE</a> to attempt to reload it.")) /** * private diff --git a/code/modules/vehicles/mecha/mecha_ai_interaction.dm b/code/modules/vehicles/mecha/mecha_ai_interaction.dm index 168b2e0ea029d..4b4d92f06a268 100644 --- a/code/modules/vehicles/mecha/mecha_ai_interaction.dm +++ b/code/modules/vehicles/mecha/mecha_ai_interaction.dm @@ -9,7 +9,7 @@ to_chat(user, "[B.get_mecha_info()]") break //Nothing like a big, red link to make the player feel powerful! - to_chat(user, "<a href='?src=[REF(user)];ai_take_control=[REF(src)]'>[span_userdanger("ASSUME DIRECT CONTROL?")]</a><br>") + to_chat(user, "<a href='byond://?src=[REF(user)];ai_take_control=[REF(src)]'>[span_userdanger("ASSUME DIRECT CONTROL?")]</a><br>") return examine(user) if(length(return_occupants()) >= max_occupants) @@ -23,7 +23,7 @@ if(!can_control_mech) to_chat(user, span_warning("You cannot control exosuits without AI control beacons installed.")) return - to_chat(user, "<a href='?src=[REF(user)];ai_take_control=[REF(src)]'>[span_boldnotice("Take control of exosuit?")]</a><br>") + to_chat(user, "<a href='byond://?src=[REF(user)];ai_take_control=[REF(src)]'>[span_boldnotice("Take control of exosuit?")]</a><br>") /obj/vehicle/sealed/mecha/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/aicard/card) . = ..() diff --git a/code/modules/wiremod/shell/brain_computer_interface.dm b/code/modules/wiremod/shell/brain_computer_interface.dm index b31f3ce151bcd..1ade714552f75 100644 --- a/code/modules/wiremod/shell/brain_computer_interface.dm +++ b/code/modules/wiremod/shell/brain_computer_interface.dm @@ -208,7 +208,7 @@ SIGNAL_HANDLER if (isobserver(mob)) - examine_text += span_notice("[source.p_They()] [source.p_have()] <a href='?src=[REF(src)];open_bci=1'>\a [parent] implanted in [source.p_them()]</a>.") + examine_text += span_notice("[source.p_They()] [source.p_have()] <a href='byond://?src=[REF(src)];open_bci=1'>\a [parent] implanted in [source.p_them()]</a>.") /obj/item/circuit_component/bci_core/Topic(href, list/href_list) ..() diff --git a/tools/ci/check_grep.sh b/tools/ci/check_grep.sh index 05718cfccd885..89d803c45dc7d 100644 --- a/tools/ci/check_grep.sh +++ b/tools/ci/check_grep.sh @@ -125,6 +125,14 @@ if $grep 'allocate\(/mob/living/carbon/human[,\)]' $unit_test_files || st=1 fi; +section "516 Href Styles" +part "byond href styles" +if $grep "href[\s='\"\\\\]*\?" $code_files ; then + echo + echo -e "${RED}ERROR: BYOND requires internal href links to begin with \"byond://\".${NC}" + st=1 +fi; + section "common mistakes" part "global vars" if $grep '^/*var/' $code_files; then From 5e85e74ac85e925c4a9c2b0f48e9722641359736 Mon Sep 17 00:00:00 2001 From: LT3 <83487515+lessthnthree@users.noreply.github.com> Date: Tue, 24 Dec 2024 11:53:24 -0800 Subject: [PATCH 115/126] Fixes hugging away your own terror (#88688) --- code/datums/status_effects/debuffs/terrified.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/datums/status_effects/debuffs/terrified.dm b/code/datums/status_effects/debuffs/terrified.dm index 61a6ecd4eda3b..61c4abcea3bf4 100644 --- a/code/datums/status_effects/debuffs/terrified.dm +++ b/code/datums/status_effects/debuffs/terrified.dm @@ -96,6 +96,9 @@ /datum/status_effect/terrified/proc/comfort_owner(datum/source, mob/living/hugger) SIGNAL_HANDLER + if(hugger == owner) + return + if(isnightmare(hugger)) //hey wait a minute, that's not a comforting, friendly hug! if(check_surrounding_darkness()) addtimer(CALLBACK(src, PROC_REF(freak_out), HUG_TERROR_AMOUNT)) From 7711531f34f793fcea583e11233e2c8e7491e69d Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 19:53:43 +0000 Subject: [PATCH 116/126] Automatic changelog for PR #88688 [ci skip] --- html/changelogs/AutoChangeLog-pr-88688.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88688.yml diff --git a/html/changelogs/AutoChangeLog-pr-88688.yml b/html/changelogs/AutoChangeLog-pr-88688.yml new file mode 100644 index 0000000000000..fc3c3c65dbd83 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88688.yml @@ -0,0 +1,4 @@ +author: "LT3" +delete-after: True +changes: + - bugfix: "You can no longer hug yourself to overcome fear of the dark" \ No newline at end of file From 42d80a5963cf686fa6f553b2ca9e240b4fd2d9c8 Mon Sep 17 00:00:00 2001 From: Hatterhat <31829017+Hatterhat@users.noreply.github.com> Date: Tue, 24 Dec 2024 17:05:29 -0600 Subject: [PATCH 117/126] Fixes .357 Heartseeker not homing in on people (#88696) Co-authored-by: Hatterhat <Hatterhat@users.noreply.github.com> --- .../projectiles/ammunition/ballistic/revolver.dm | 5 +++++ code/modules/projectiles/guns/energy/dueling.dm | 15 ++++++++------- code/modules/projectiles/projectile.dm | 5 +++-- .../projectiles/projectile/bullets/revolver.dm | 1 - 4 files changed, 16 insertions(+), 10 deletions(-) diff --git a/code/modules/projectiles/ammunition/ballistic/revolver.dm b/code/modules/projectiles/ammunition/ballistic/revolver.dm index 6e0c26af7359c..ffcb3df89814e 100644 --- a/code/modules/projectiles/ammunition/ballistic/revolver.dm +++ b/code/modules/projectiles/ammunition/ballistic/revolver.dm @@ -22,6 +22,11 @@ name = ".357 heartseeker bullet casing" projectile_type = /obj/projectile/bullet/c357/heartseeker +/obj/item/ammo_casing/c357/heartseeker/ready_proj(atom/target, mob/living/user, quiet, zone_override, atom/fired_from) + . = ..() + if(!isturf(target)) + loaded_projectile.set_homing_target(target) + // 7.62x38mmR (Nagant Revolver) /obj/item/ammo_casing/n762 diff --git a/code/modules/projectiles/guns/energy/dueling.dm b/code/modules/projectiles/guns/energy/dueling.dm index 9a7fa9aa78bea..95707874e7293 100644 --- a/code/modules/projectiles/guns/energy/dueling.dm +++ b/code/modules/projectiles/guns/energy/dueling.dm @@ -298,15 +298,17 @@ /obj/item/ammo_casing/energy/duel/ready_proj(atom/target, mob/living/user, quiet, zone_override) . = ..() - var/obj/projectile/energy/duel/D = loaded_projectile - D.setting = setting - D.update_appearance() + var/obj/projectile/energy/duel/dueling_projectile = loaded_projectile + dueling_projectile.setting = setting + dueling_projectile.update_appearance() + if(!isturf(target)) + dueling_projectile.set_homing_target(target) /obj/item/ammo_casing/energy/duel/fire_casing(atom/target, mob/living/user, params, distro, quiet, zone_override, spread, atom/fired_from) . = ..() - var/obj/effect/temp_visual/dueling_chaff/C = new(get_turf(user)) - C.setting = setting - C.update_appearance() + var/obj/effect/temp_visual/dueling_chaff/chaff = new(get_turf(user)) + chaff.setting = setting + chaff.update_appearance() //Projectile @@ -314,7 +316,6 @@ name = "dueling beam" icon_state = "declone" reflectable = FALSE - homing = TRUE var/setting /obj/projectile/energy/duel/update_icon() diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index 065a4899fc728..f907682305ef5 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -169,8 +169,9 @@ var/impact_light_color_override // Homing - /// If the projectile is homing. Warning - this changes projectile's processing logic, reverting it to segmented processing instead of new raymarching logic - var/homing = FALSE + /// If the projectile is currently homing. Warning - this changes projectile's processing logic, reverting it to segmented processing instead of new raymarching logic + /// This does not actually set up the projectile to home in on a target - you need to set that up with set_homing_target() on the projectile! + VAR_FINAL/homing = FALSE /// Target the projectile is homing on var/atom/homing_target /// Angles per move segment, distance is based on SSprojectiles.pixels_per_decisecond diff --git a/code/modules/projectiles/projectile/bullets/revolver.dm b/code/modules/projectiles/projectile/bullets/revolver.dm index 6513be9cfb7c8..273a0109c5699 100644 --- a/code/modules/projectiles/projectile/bullets/revolver.dm +++ b/code/modules/projectiles/projectile/bullets/revolver.dm @@ -149,7 +149,6 @@ name = ".357 heartseeker bullet" icon_state = "gauss" damage = 50 - homing = TRUE homing_turn_speed = 120 // admin only really, for ocelot memes From f3401d40201daac1b1e90d07f87c42814af12e9f Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Tue, 24 Dec 2024 23:05:48 +0000 Subject: [PATCH 118/126] Automatic changelog for PR #88696 [ci skip] --- html/changelogs/AutoChangeLog-pr-88696.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88696.yml diff --git a/html/changelogs/AutoChangeLog-pr-88696.yml b/html/changelogs/AutoChangeLog-pr-88696.yml new file mode 100644 index 0000000000000..c60608622f2c5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88696.yml @@ -0,0 +1,4 @@ +author: "Hatterhat" +delete-after: True +changes: + - bugfix: ".357 Heartseeker homes in on people if you click on them, instead of not homing in at all." \ No newline at end of file From 06d4be99ef186acc6ee269f96ba3229bcfae100c Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Wed, 25 Dec 2024 00:25:45 +0000 Subject: [PATCH 119/126] Automatic changelog compile [ci skip] --- html/changelogs/AutoChangeLog-pr-88404.yml | 4 --- html/changelogs/AutoChangeLog-pr-88463.yml | 5 --- html/changelogs/AutoChangeLog-pr-88503.yml | 4 --- html/changelogs/AutoChangeLog-pr-88505.yml | 5 --- html/changelogs/AutoChangeLog-pr-88640.yml | 4 --- html/changelogs/AutoChangeLog-pr-88646.yml | 5 --- html/changelogs/AutoChangeLog-pr-88660.yml | 4 --- html/changelogs/AutoChangeLog-pr-88663.yml | 4 --- html/changelogs/AutoChangeLog-pr-88677.yml | 4 --- html/changelogs/AutoChangeLog-pr-88678.yml | 5 --- html/changelogs/AutoChangeLog-pr-88688.yml | 4 --- html/changelogs/AutoChangeLog-pr-88696.yml | 4 --- html/changelogs/archive/2024-12.yml | 37 ++++++++++++++++++++++ 13 files changed, 37 insertions(+), 52 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-88404.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88463.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88503.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88505.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88640.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88646.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88660.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88663.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88677.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88678.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88688.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-88696.yml diff --git a/html/changelogs/AutoChangeLog-pr-88404.yml b/html/changelogs/AutoChangeLog-pr-88404.yml deleted file mode 100644 index 0e26dc409bf11..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88404.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "lovegreenstuff" -delete-after: True -changes: - - rscadd: "catalyst function for plumbing reaction chambers" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88463.yml b/html/changelogs/AutoChangeLog-pr-88463.yml deleted file mode 100644 index 09ba5ff91e503..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88463.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "araeotu" -delete-after: True -changes: - - rscadd: "slime processor now have usb port and circuit component" - - code_imp: "the process code of processor now separate from interact" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88503.yml b/html/changelogs/AutoChangeLog-pr-88503.yml deleted file mode 100644 index ab4287205b27a..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88503.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "KazooBard" -delete-after: True -changes: - - qol: "Selecting which spells to cast with hotkeys, and using them in general is faster." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88505.yml b/html/changelogs/AutoChangeLog-pr-88505.yml deleted file mode 100644 index 1ac4f6cb6788a..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88505.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "Melbert" -delete-after: True -changes: - - qol: "Navigate verb better indicates areas on a separate level. Selecting an area on a different level will direct you to the nearest staircase (as with \"Nearest Way Up/Down\")" - - qol: "Navigating to a staircase or ladder will shorten the cooldown of navigate and clear your existing path for you upon finding it" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88640.yml b/html/changelogs/AutoChangeLog-pr-88640.yml deleted file mode 100644 index ef98c0c7323af..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88640.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Melbert" -delete-after: True -changes: - - balance: "Lava no longer burns mobs thrown over it" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88646.yml b/html/changelogs/AutoChangeLog-pr-88646.yml deleted file mode 100644 index cbd53fa0fe35a..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88646.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "grungussuss" -delete-after: True -changes: - - balance: "computers can now be used as cover, firing a projectile over them is now possible, while they may block projectiles if you are not adjacent to them when firing." - - bugfix: "computer laptops will not block projectiles" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88660.yml b/html/changelogs/AutoChangeLog-pr-88660.yml deleted file mode 100644 index e8c6f88b58fca..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88660.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Ghommie" -delete-after: True -changes: - - bugfix: "Fixed aquariums auto-feeding." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88663.yml b/html/changelogs/AutoChangeLog-pr-88663.yml deleted file mode 100644 index 12fa33e4de4c0..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88663.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Absolucy, ShadowLarkens, S34N" -delete-after: True -changes: - - bugfix: "Fixed chat rapidly flickering in BYOND 516." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88677.yml b/html/changelogs/AutoChangeLog-pr-88677.yml deleted file mode 100644 index 9489b57d3c01e..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88677.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "SyncIt21" -delete-after: True -changes: - - bugfix: "Big manipulator respects storage limits of storages when dropping stuff into them" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88678.yml b/html/changelogs/AutoChangeLog-pr-88678.yml deleted file mode 100644 index 2bd8b871336d3..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88678.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "AyIong" -delete-after: True -changes: - - qol: "AdminPMs, admin tickets, vote results and started vote notification are now much more visible in the chat." - - qol: "Boxed messages in chat (like examine), has been restyled." \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88688.yml b/html/changelogs/AutoChangeLog-pr-88688.yml deleted file mode 100644 index fc3c3c65dbd83..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88688.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "LT3" -delete-after: True -changes: - - bugfix: "You can no longer hug yourself to overcome fear of the dark" \ No newline at end of file diff --git a/html/changelogs/AutoChangeLog-pr-88696.yml b/html/changelogs/AutoChangeLog-pr-88696.yml deleted file mode 100644 index c60608622f2c5..0000000000000 --- a/html/changelogs/AutoChangeLog-pr-88696.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Hatterhat" -delete-after: True -changes: - - bugfix: ".357 Heartseeker homes in on people if you click on them, instead of not homing in at all." \ No newline at end of file diff --git a/html/changelogs/archive/2024-12.yml b/html/changelogs/archive/2024-12.yml index d3055633ddf57..f79a0fb07e5b2 100644 --- a/html/changelogs/archive/2024-12.yml +++ b/html/changelogs/archive/2024-12.yml @@ -584,3 +584,40 @@ carlarctg: - rscadd: Kissing while you have the ink infusion ability off cooldown gives you an ink kiss +2024-12-25: + Absolucy, ShadowLarkens, S34N: + - bugfix: Fixed chat rapidly flickering in BYOND 516. + AyIong: + - qol: AdminPMs, admin tickets, vote results and started vote notification are now + much more visible in the chat. + - qol: Boxed messages in chat (like examine), has been restyled. + Ghommie: + - bugfix: Fixed aquariums auto-feeding. + Hatterhat: + - bugfix: .357 Heartseeker homes in on people if you click on them, instead of not + homing in at all. + KazooBard: + - qol: Selecting which spells to cast with hotkeys, and using them in general is + faster. + LT3: + - bugfix: You can no longer hug yourself to overcome fear of the dark + Melbert: + - balance: Lava no longer burns mobs thrown over it + - qol: Navigate verb better indicates areas on a separate level. Selecting an area + on a different level will direct you to the nearest staircase (as with "Nearest + Way Up/Down") + - qol: Navigating to a staircase or ladder will shorten the cooldown of navigate + and clear your existing path for you upon finding it + SyncIt21: + - bugfix: Big manipulator respects storage limits of storages when dropping stuff + into them + araeotu: + - rscadd: slime processor now have usb port and circuit component + - code_imp: the process code of processor now separate from interact + grungussuss: + - balance: computers can now be used as cover, firing a projectile over them is + now possible, while they may block projectiles if you are not adjacent to them + when firing. + - bugfix: computer laptops will not block projectiles + lovegreenstuff: + - rscadd: catalyst function for plumbing reaction chambers From a1c5f3773bf1065fd71e02e2e14390ba6117a249 Mon Sep 17 00:00:00 2001 From: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Date: Wed, 25 Dec 2024 06:31:03 +0530 Subject: [PATCH 120/126] Fixes skull cookies being invisible (#88597) ## About The Pull Request - Fixes #88594 same fix as #80179 ## Changelog :cl: fix: skull cookies are visible again /:cl: --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> --- code/modules/events/holiday/halloween.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/modules/events/holiday/halloween.dm b/code/modules/events/holiday/halloween.dm index 833afd35bbc52..289fa20e2fb0c 100644 --- a/code/modules/events/holiday/halloween.dm +++ b/code/modules/events/holiday/halloween.dm @@ -33,6 +33,10 @@ icon_state = "skeletoncookie" crafting_complexity = FOOD_COMPLEXITY_2 +/obj/item/food/cookie/sugar/spookyskull/Initialize(mapload, seasonal_changes = FALSE) + // Changes default parameter of seasonal_changes to FALSE, pass to parent + return ..(mapload, seasonal_changes) + /obj/item/food/cookie/sugar/spookycoffin name = "coffin cookie" desc = "Spooky! It's got delicious coffee flavouring!" From 385b8cd3fe513c9f6f1c97f638cec41763ec5f7b Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Wed, 25 Dec 2024 01:01:22 +0000 Subject: [PATCH 121/126] Automatic changelog for PR #88597 [ci skip] --- html/changelogs/AutoChangeLog-pr-88597.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88597.yml diff --git a/html/changelogs/AutoChangeLog-pr-88597.yml b/html/changelogs/AutoChangeLog-pr-88597.yml new file mode 100644 index 0000000000000..1310118179f3a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88597.yml @@ -0,0 +1,4 @@ +author: "SyncIt21" +delete-after: True +changes: + - bugfix: "skull cookies are visible again" \ No newline at end of file From 8373237bbaeb1b342c3399476e59109b5572e45f Mon Sep 17 00:00:00 2001 From: Wallem <66052067+Wallemations@users.noreply.github.com> Date: Tue, 24 Dec 2024 20:27:28 -0500 Subject: [PATCH 122/126] Gives Assistants a thematic radio. (#88578) --- .../game/objects/items/devices/radio/radio.dm | 16 +++++++++++++ code/game/objects/items/weaponry.dm | 22 +++++++++++++----- icons/obj/devices/voice.dmi | Bin 2928 -> 3122 bytes 3 files changed, 32 insertions(+), 6 deletions(-) diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index f00ac8128960b..25060d23af5b2 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -120,6 +120,8 @@ if(type != /obj/item/radio) return AddElement(/datum/element/slapcrafting, string_list(list(/datum/crafting_recipe/improv_explosive))) + if(prob(check_holidays(APRIL_FOOLS) ? 50 : 0.5)) // Extremely rare chance to replace a normal radio with a toy one, because it's funny + make_silly() /obj/item/radio/Destroy() remove_radio_all(src) //Just to be sure @@ -578,6 +580,15 @@ set_on(TRUE) return TRUE +/obj/item/radio/proc/make_silly() + name = "\improper Little-Crew: Assistant's First Radio" + icon_state = "walkieian" + desc = "A Little-Crew branded toy radio in the shape of a lovable pet. After Little-Crew HQ was hit with a Donksoft Nuke, these have become collector's items!" + overlay_speaker_idle = null + overlay_speaker_active = null + overlay_mic_idle = null + overlay_mic_active = null + /////////////////////////////// //////////Borg Radios////////// /////////////////////////////// @@ -706,4 +717,9 @@ inhand_icon_state = "microphone" canhear_range = 3 +// In case you want to map it in/spawn it for some reason +/obj/item/radio/toy/Initialize(mapload) + . = ..() + make_silly() + #undef FREQ_LISTENING diff --git a/code/game/objects/items/weaponry.dm b/code/game/objects/items/weaponry.dm index 4427294aef8ec..3e03cd7709788 100644 --- a/code/game/objects/items/weaponry.dm +++ b/code/game/objects/items/weaponry.dm @@ -954,13 +954,12 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 /obj/item/melee/baseball_bat/Initialize(mapload) . = ..() - if(prob(1)) - name = "cricket bat" - icon_state = "baseball_bat_brit" - inhand_icon_state = "baseball_bat_brit" - desc = pick("You've got red on you.", "You gotta know what a crumpet is to understand cricket.") - AddElement(/datum/element/kneecapping) + // No subtypes + if(type != /obj/item/melee/baseball_bat) + return + if(prob(check_holidays(APRIL_FOOLS) ? 50 : 1)) + make_silly() /obj/item/melee/baseball_bat/attack_self(mob/user) if(!homerun_able) @@ -1048,6 +1047,12 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 target.throw_at(target_turf, get_dist(target, target_turf), datum_throw_speed + 1, user, callback = CALLBACK(src, PROC_REF(on_hit), target)) thrown_datums[target] = target.throwing +/obj/item/melee/baseball_bat/proc/make_silly() + name = "cricket bat" + icon_state = "baseball_bat_brit" + inhand_icon_state = "baseball_bat_brit" + desc = pick("You've got red on you.", "You gotta know what a crumpet is to understand cricket.") + /obj/item/melee/baseball_bat/proc/on_hit(atom/movable/target) target.remove_filter("baseball_launch") target.throwforce *= 0.5 @@ -1076,6 +1081,11 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 /obj/item/melee/baseball_bat/ablative/IsReflect()//some day this will reflect thrown items instead of lasers return TRUE +// In case you ever want to spawn it via map/admin console +/obj/item/melee/baseball_bat/british/Initialize(mapload) + . = ..() + make_silly() + /obj/item/melee/flyswatter name = "flyswatter" desc = "Useful for killing pests of all sizes." diff --git a/icons/obj/devices/voice.dmi b/icons/obj/devices/voice.dmi index 4188d7867eebdd5de30661c164990f486660a83e..807308a76180b9bedae532fdbd7ec5eee69e1291 100644 GIT binary patch delta 2676 zcmYL}XH=6}7ljivpdczAB`OT)FbvWL5r%+-&_uD)r4s}}krE*E0Ph4;80iWOJ*Ws4 zBp@}kgrP}G)KQTVg0w(FLJ0&yNj`Aaa{k=4@43&9v(GyFF3G$-mhlUiTCLOs2E1zp zFvreG0AiU$<GryUT@e;c{MkSF0R#dunM^jD{rqKpXmC6qv{JuY0*BgMw*?u`e)ZYa zlF@dKq36BPULn3gp}wd<5Gb;+E{k%v<IJIM3fDH5+msrhu~6H8=eS`7{^<D%B~N}L z>-SX_y-TVo%>9Jvf&EU~z$y>z>8s*ik8f`M+QQlZ$DZ`-tZ}4K(O)uC0-P)4_5CvQ zb!W|!j%wW(OBHYYa>6y}*WSb|%)|mUp<535r~%BB2o-Ou_KJM{`!W48(_!+Vm03>0 znfS|#CiTo}wQp9Lc8~=XZ|nADgIF}T(827dd8-j0`=cADy0hxoz|c_Mt;-ZI)p)b? zy0!o981XMl>!18*+pWGW$o_rs!Tiejk*=u;Fuae^#9uk-+h`g6DnESY`iYwDDRl&E zvq;BBD;HBxqNkPP*-TsQSQX1!0zxwm-BtvF4oqJ<Z(<i&$fBkrWg~v-S$?0gr1%S1 zR3od&-*&!9fjoHkK9KFC%s70fx%SJo64o}@+a*;p^BiN->`f7wmi*-8Dr&8b)~}=z z1Kcyfi_n>Qh&u}D5$xaA<6PMx^Yjm8HXzr4fK;4wqPkl3%)y*E#!Fp6xqGv>Mm@a! z<M9tg>$Y^OR~?OqU5f9_lT%Jx@jv-C$la`m-*q$fj~XdQ0w#$w2Wn;{m<%?X?1NE{ zB0r*QM41$nV=$Pl&CRpNS=u98qgzUDag94wrEX?fO~P-7{nw4_FWNrA(RHLZquh4| zR7bi@gvyPkDvSti8Ki~EWquNuXX}jw+dX_{LIBJ<dW3~PiR*@hC8WAiJro^ar?+JF z$MyAI7y|pZ(l>M<@@rl86YrOT)=ALlVzx^D%9yskS23WA8W5vMOA$^7O>ZoZw~r4% zwHZtcL8fL@EhKJO@**}w@Ze!rr58iE0BxTzNO;vg>-xE50af}&gZdH`R7-=s8cUQ+ zj8%3Xp$k+936rWSqA_js>E5RZN^6GpEDs8Bx?7fPZaVxXCN<<?J<*>R8Xa*TSuM43 zc>&U7Kxcd0kkPC1I#PhPE>VF(@<XgA$gWbke8%fQZ0uXoP&jN(W)3G52H7kpZHUUf zlkbnaCZiW*Q_wFYPEdcJ(JvG+T_=Pz{5%XhEfy0nL~qA8L*mTdOGS=oEEU8*ApzA| zXmKyEsae;8NP{`|)2WbXLYuMX5Oi*4Q^>ODVIyhoQ@B-2*DY*^xi|Ri_ZId#VGsC0 z9yU~|2bHowGIK@KHTzb6eyW$qBeWzP3yG4@n%=vLL_;O;#-HtP)pGSO*p^_V5zbpu zl4e-XBZ&`^y8;`C<v3t5YG>e{F2#^zO3tF=Vzp3xVw6_9uSLz`X>uq(X4n>HYG#0` z_|RqY10S_J_V7qg^`H&M8><oAiZT!kx|0|30jC1pQ3=75#>s61vNUqiv*7hBax8#j zu<}HsY9}M6)25_3(ah|r(fajDzmO0*|1+l$qkOxM!!7~}RWutTLi*r_dXwY5Yu;l9 zgw^R%hQaX$<McLTOE@H&mJ|A?>^IlIA+QYvodZYpijBC&$v&2W{hgP>07*gO91vW( z#9S;=SrFu7Q<soQU(?)o@z*d2o2gj!?P|579qZfUJ}PFCiu1gMr9D0pi~VUu0)v(8 zIyiOs0#H;w`Y~VV$UBML{M<7v<SJn{dB+;(Q!R;@>cbu49KL{)<@-z<=T<G;{1mlW z0<*xLvi5K++y~zM4MCtkI%~+3;hgm7oi98DNBcZK79HqD^o{!d_~YO{lbK}>^d};T z-f@(-U=O6WU@J>wx?ULs0)9ZdqUuO$I?=mVqu*snVR>b0_IA>k4%p9WtO@=fb?@8N z&sQzYA1N1Uqbs}h@pn)97e|usH$0!8|JZc}Re(14AC#o<+P!^!nnLFj7jrog8vU<V zI??1EizanZE9tLUYMy?@k%8bEG)Ku6z^=L4PHZm}A}rz7Bx!s}vV-C~NlU3SFg3Bp zbGD*cltD6+(}@;q3}@x5doWs>N<Ly1A(ZF4j#4x~B52U?Jxd8?=rQ|iCiP=RBC4ED z%z|9mrrfc!mMvxILhjEudw0+i0+xBFK(4&m;$EL5g<wT|Y=xULo&6ISiqU)x@3}u9 zNzsR~c){~e8K776MdAKk54{B6<=nPXm3I`{!5rmc+mNy@vld7;ZGDec;mKWevucF% z3eOEXa8IH4CUk&N9!&gWU%GI|rqg@KvtnGb0m_La{9QCSzc@JJ@s-!uIzTi3%OLHy z2n~0rOg7+j_vXv)fTfB}6`z~*DehSSYK~Ci<UM-UYr9Akv?sy>$2OJ{aB6?sMLii? zO+>yZ_LK-m1Zr|3tfy_y5@XswOe?qvX4bsd*JqG#VoD=<Grvxzwv<Mu<!u!3curF> zV`D8*ab#V<0f+x*hR^*yDt0Shh|=tP$zfs=4?t~S!%*X{*ECeeJ7@0G;AEqdF3Ro` z+4@s=Iu@k+@0@?fYqlCisahFCFE29~jGn$u%^+4ztxN@JII3g20B$<#T!^>D6Sa`H zN88S!{E?Y3=@-Xa9i80V+}+*X?7ic#4RLDJk1{U=nrR*69>bi`FA65(b|ukqDDN5I z@yuugN)vec&gP1kUj%#H$)%Yt9f=B9RBkUrX9Ob1Mk2#>rVbNN85*v~lVwL8rUx&U zOs?&)*8vMEaZw(-zNjW60~v2c!~C(S=!|GYW$@v*1C*B+6)X0vwzS3CyK7dJM#lm% z8P1ntH_MFx?l6-7%JFNg7zVgF@zK!NSL2hu6-FW#hMP7U9J){CdqLP~3UG_(eC|5X zm=37QR4QP@uxTU<I{hh`iQ9LDk(`nT?9b`1LxR&tNqg1uTL?ulyCTKGzUDL%2y(%| zX#G}5PoAhwyh|lj^simggpB<*JLOzVOjgIO_y9TtCjuXEix*`7JuY@gUtwrv+wCgB zJgVFfe~Q5)G;-dV8yZ0)<Xd0R>67Gt^S--eC%U@_1g81n@XEFpr3MX!watM3^gP_D z5PpKge=*%vBonXW={4k@x--bz?nEtdBjW9XBm21xM+F^PKfr(UUtK*&Om!(fgW%t2 zoaqQOTKFFRLZJPBKft5`;$$3Hgi6o0Q(_MVmFzS(xj%28P{kR!0u~AF_VPEVA`oG2 zm9z9NcU<I)TK3(rXMHYuRsUoUGJsbFQpY~cU-m|$YfP~wMV0>k0RaJyqO~cvdz|P~ z&bfGPJT3PDj#e`$l5bZ}6>88I+V|SuAB7rCGoG`rmk)rCJSCA-U1ZaBPoHVL{Mk^5 xCwFWt`gxQ6n~I*Dvxlp~PO+hTBl?8|fNQcg9$Zd3!rJTolKJ)Xm8Kr?{|9iRQwsn9 delta 2481 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 KQS-A`+<yR0NcpP( From c39e6a965de8845f35840acc8dafd59f99606d33 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Wed, 25 Dec 2024 01:27:47 +0000 Subject: [PATCH 123/126] Automatic changelog for PR #88578 [ci skip] --- html/changelogs/AutoChangeLog-pr-88578.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88578.yml diff --git a/html/changelogs/AutoChangeLog-pr-88578.yml b/html/changelogs/AutoChangeLog-pr-88578.yml new file mode 100644 index 0000000000000..34877c2d38dfe --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88578.yml @@ -0,0 +1,4 @@ +author: "Wallem" +delete-after: True +changes: + - rscadd: "Rare collectors radios have been reported around Nanotrasen stations!" \ No newline at end of file From fcadec240a0b1781c5a63eb6b7c76397ff8c6875 Mon Sep 17 00:00:00 2001 From: Tim <timothymtorres@gmail.com> Date: Tue, 24 Dec 2024 22:11:50 -0600 Subject: [PATCH 124/126] Fix holodeck computer using wrong power settings (#88568) ## About The Pull Request The holodeck computer has a complex power formula since it calculates the power requirements based on the choosen simulation and items inside. One apparent problem that I discovered through testing is that when the holodeck computer is idle or using the offline program it is drawing power as if it was active... This is not supposed to happen. Let's see what the code documentation says for reference: ``` //Power use /// dont use power #define NO_POWER_USE 0 /// use idle_power_usage i.e. the power needed just to keep the machine on #define IDLE_POWER_USE 1 /// use active_power_usage i.e. the power the machine consumes to perform a specific task #define ACTIVE_POWER_USE 2 ///Base global power consumption for idling machines #define BASE_MACHINE_IDLE_CONSUMPTION (100 WATTS) ///Base global power consumption for active machines. The unit is ambiguous (joules or watts) depending on the use case for dynamic users. #define BASE_MACHINE_ACTIVE_CONSUMPTION (BASE_MACHINE_IDLE_CONSUMPTION * 10) ///see code/__DEFINES/machines.dm var/use_power = IDLE_POWER_USE ///the amount of static power load this machine adds to its area's power_usage list when use_power = IDLE_POWER_USE var/idle_power_usage = BASE_MACHINE_IDLE_CONSUMPTION ///the amount of static power load this machine adds to its area's power_usage list when use_power = ACTIVE_POWER_USE var/active_power_usage = BASE_MACHINE_ACTIVE_CONSUMPTION ///the current amount of static power usage this machine is taking from its area var/static_power_usage = 0 ``` If the machine isn't in use it should be using `IDLE_POWER_USE` when it is not active. So in our case, we have it offline but it is still using `ACTIVE_POWER_USE` draining more power than it should. There was also some misc edge case where if you are near the computer and you change the simulation, it wouldn't update the power correctly since having the UI of a computer active did not allow the power to properly reset to the simulation or offline mode. Anyway here is how it looks fixed. If you are ever checking power vars, the ones you need to pay attention to are here:  CC @SmArtKar Hopefully this is a sufficient enough explanation. If you really need me to I can record a video of the before and after effects. ## Why It's Good For The Game Holodeck computer does not drain power when it is offline mode. Instead it uses the correct idle amount which is significantly reduced. This is how all machines behave. Due to holodeck having unique power calculations it was bugged. ## Changelog :cl: fix: Fix holodeck computer using wrong power settings and not updating properly /:cl: --- code/modules/holodeck/computer.dm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/code/modules/holodeck/computer.dm b/code/modules/holodeck/computer.dm index 6d80e1683fbe1..ace4fc62aa6f0 100644 --- a/code/modules/holodeck/computer.dm +++ b/code/modules/holodeck/computer.dm @@ -214,7 +214,7 @@ GLOBAL_LIST_INIT(typecache_holodeck_linked_floorcheck_ok, typecacheof(list(/turf spawning_simulation = TRUE active = (map_id != offline_program) - update_use_power(active + IDLE_POWER_USE) + update_mode_power_usage(ACTIVE_POWER_USE, initial(active_power_usage)) program = map_id clear_projection() @@ -242,6 +242,8 @@ GLOBAL_LIST_INIT(typecache_holodeck_linked_floorcheck_ok, typecacheof(list(/turf program = offline_program clear_projection() + //update_mode_power_usage(ACTIVE_POWER_USE, initial(active_power_usage)) + update_use_power(IDLE_POWER_USE) template = SSmapping.holodeck_templates[offline_program] INVOKE_ASYNC(template, TYPE_PROC_REF(/datum/map_template, load), bottom_left) //this is what actually loads the holodeck simulation into the map @@ -365,6 +367,7 @@ GLOBAL_LIST_INIT(typecache_holodeck_linked_floorcheck_ok, typecacheof(list(/turf return . = ..() if(!. || program == offline_program)//we dont need to scan the holodeck if the holodeck is offline + update_use_power(IDLE_POWER_USE) return if(!floorcheck()) //if any turfs in the floor of the holodeck are broken @@ -383,7 +386,8 @@ GLOBAL_LIST_INIT(typecache_holodeck_linked_floorcheck_ok, typecacheof(list(/turf derez(item) for(var/obj/effect/holodeck_effect/holo_effect as anything in effects) holo_effect.tick() - update_mode_power_usage(ACTIVE_POWER_USE, initial(active_power_usage) + spawned.len * 3 + effects.len * 5) + update_use_power(ACTIVE_POWER_USE) + update_mode_power_usage(ACTIVE_POWER_USE, initial(active_power_usage) + (spawned.len * 15 + effects.len * 25)) /obj/machinery/computer/holodeck/proc/toggle_power(toggleOn = FALSE) if(active == toggleOn) From 8d3e51612bd571ed06509813a57dacb56807af50 Mon Sep 17 00:00:00 2001 From: "tgstation-ci[bot]" <179393467+tgstation-ci[bot]@users.noreply.github.com> Date: Wed, 25 Dec 2024 04:12:10 +0000 Subject: [PATCH 125/126] Automatic changelog for PR #88568 [ci skip] --- html/changelogs/AutoChangeLog-pr-88568.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-88568.yml diff --git a/html/changelogs/AutoChangeLog-pr-88568.yml b/html/changelogs/AutoChangeLog-pr-88568.yml new file mode 100644 index 0000000000000..0be95af6bb764 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-88568.yml @@ -0,0 +1,4 @@ +author: "timothymtorres" +delete-after: True +changes: + - bugfix: "Fix holodeck computer using wrong power settings and not updating properly" \ No newline at end of file From 1ec46dcf740c6b0835fe64c78aec11e9a1eae3d2 Mon Sep 17 00:00:00 2001 From: "ss220app[bot]" <167440448+ss220app[bot]@users.noreply.github.com> Date: Wed, 25 Dec 2024 14:20:11 +0200 Subject: [PATCH 126/126] Automatic NanoMap Update (#909) This pull request updates the server NanoMaps. Please review the diff images before merging. Co-authored-by: NanoMap Generation <action@github.com> --- icons/_nanomaps/Cyberiad_nanomap_z2.png | Bin 2906832 -> 2905062 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/_nanomaps/Cyberiad_nanomap_z2.png b/icons/_nanomaps/Cyberiad_nanomap_z2.png index bba06e8b170b98ab9ce9f0affd597b22d2ea64a9..0e51808572d71a5a7ff2ac30e3e1644b48361cde 100644 GIT binary patch delta 404052 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%0AK+(-hTJR6Vhpgu$_R9{2l z^F`llxz6kXUNk)6mczZVix$hCy-0=<r;G`y6VOLVdMob><>6wFza44yMuiJR_9L8u z|5A>2M+%l`elSH2<*ouI*|ZXJILNy@b`wmX_y}CG1R)yOIf*R-pDaDDf-6$-!ZIx% z!bUOqAn<2!8Kxb7Qt@B*;2ku6=b{E?yn&0h7!rr-4w^mWE8Lh+aKpMQG>>!OL+NF6 zXIo|O19^cA4z=RzWj!H2mujnQzq^1}K55^USFOoo+WRN9{#xfO6Q#kevC*(dgeA2+ zL@9>6Y@O@jCB?*hnqB)5tAAkxmqyoAm6ymuMy$9QX#lUSOgVZQRCmyC<TGK+uTs?E z&WhPt)hnseC2{k;eD5VuKGlp7d8w{btM09YI{YEJfqBPj!2L29_Qt_+Loh0vLw_WG zgrA2Klc0JyE(B);!KNR&3&EnQ4D7NBgGI7~sI_P@MLieL$R&EHePhsqyTa_21o8NA zp$DIX#t=&ctkJm5qoO3y5OGB14TU{WK6<voi4S{5BF+kLz<aA3$K^xwFcFo!b3a7x zWhy~2lFVVREWPh~;+sJyefaj!d$wAWy&f;kG=N1DYX^u9y}uUp@mk%|q%&g{o>_mI z4N+@Q{IMuaDR1!ta@L|bQh0)nrD;9_=84HJa#~);(>wy!TtRWCt1n#&#v91#^_3(x zIEtwT&@Z8k8&Gm-aH-$+kzd)y&Tvoro{@b~vfT70=C_lRFIIeaWJvJs-$eiS$L%j> zkYIBJ>Uh?P)ZyT@N9vw!k`a{FQ~RL)7iS;HRk>)WIYEc}fUpClMz2~%;JT^Pz^l%z zu*eBS(hQP-|G#Q<a>2tB*Aw;+2{;c(!7lR(E&wTt83YBsbQMeH5m9H_pXC^O6?&Jd z93V4ZjoRA}JT5e?(tAOe5E(CLkd^@*A00$cD8NotsnA)Y!G!v9<}JL<ZYQvc7p%kU zInGlA@N0^WXa|<)4?R7$=KaFU6ll>4G$=Sbupu*1U}qiFdLZa~SL&k2y|vwUEuL~= zPxTrDTslj*(xRIZ-d%xVsf0Z}^7)2|Pf?T0++eK%!8nEv;+Z@F_Y+K9nzS8}<Q^zE z#Pk4tHu_w=%P2<DHC!I-aY1<^cmtt^;O#UT#az_9x40@ury=lHnv!h#5w6^$px&6O zMI<p*#{g})6r1--@)U=X%J5PJRv};C2ve_r`}er%<zQGlMbt%MD$Sw%PeSm>=LXbF zAR-{xz;TECS|01L!v&(2Q2eiuXfZS&*0JH<Y%-Ht?Y?sW^xiIUp(dPraU3|sJT$a7 zaqJ-YfY=M^8w(x2pYV=<_By&j)O8ep|Dz1f?tBD71tS2W=4lY!oucvVEUvI~e8S?| zk8O61rQKfEK7Bp9`3KJv70_{C`^g<{`GM*Og-4k-5IIbYczQa@-jRNCE_m%ghqOA? zF#wDo9JOX;Nd$tcC@uc=QCW96jb1g==ai4<FHn6!IGFbSN^OTXn648VO7N>RyiWXp zmp9AItqriEKLWW0;d)mnJE>!FOdocdlqG^s(z@P5<O9ATG7)7^=^D6lL-;kcR}n(y zO6<KIuR}Y#!O-)Bo@}}T(GDad?UhGU`&-DPNY%9Go$oy-LA@v8^}h;CeW035=|-go zy;g#-!r2cz84?XFaN%k|>yAj<m}9Rs!;{e<*e`K`hz+P{*!5)?AS#^0r&gZp$c6@r z*by|_h|!c-m<XgtYD~U#7dc}q67f_Pe{1z}_tw	`Ez&{^7tUMC%<PvWu7tg=0{u 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±_eC5N3ILp3qNR;0ND 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�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 a|8x8ZGk&`|{l^CeAn<hcb6Mw<&;$TUOIzCj delta 403837 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 OkgX(FJtD`dI`~F@`PUk{% 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