From 88b396cba9679c1f57d30ff14f0bf77411209c96 Mon Sep 17 00:00:00 2001 From: Batrachophreno Date: Fri, 15 Aug 2025 09:59:24 -0400 Subject: [PATCH] Xenologist hailing freq access (#21105) Fixes https://github.com/Aurorastation/Aurora.3/issues/21104 Grants Xenobotany/Xenobiology radios with hailing freqs like Xenoarch on spawn, provide appropriate access to similar shortwaves. Not going to be giving them all the cool stuff Xenoarch gets for solo exploration like machetes and shit, they still ought to bring escorts or else tag along with the xenoarch. Xenoarch still stuff xenobots/bios in lockers. Xenoarch stronk. --------- Signed-off-by: Batrachophreno --- code/game/jobs/job/science.dm | 22 +++++-- code/game/machinery/vending/engitech.dm | 2 +- .../items/devices/radio/encryptionkey.dm | 4 +- .../objects/items/devices/radio/headset.dm | 42 +++++++------- html/changelogs/Bat-xenohailing.yml | 58 +++++++++++++++++++ 5 files changed, 99 insertions(+), 29 deletions(-) create mode 100644 html/changelogs/Bat-xenohailing.yml diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index 95e7a4ba55c..1bef8cc3cff 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -145,11 +145,11 @@ uniform = /obj/item/clothing/under/rank/scientist/xenoarchaeologist - headset = /obj/item/device/radio/headset/headset_xenoarch - bowman = /obj/item/device/radio/headset/headset_xenoarch/alt - double_headset = /obj/item/device/radio/headset/alt/double/xenoarch - wrist_radio = /obj/item/device/radio/headset/wrist/xenoarch - clipon_radio = /obj/item/device/radio/headset/wrist/clip/xenoarch + headset = /obj/item/device/radio/headset/headset_xenology + bowman = /obj/item/device/radio/headset/headset_xenology/alt + double_headset = /obj/item/device/radio/headset/alt/double/xenology + wrist_radio = /obj/item/device/radio/headset/wrist/xenology + clipon_radio = /obj/item/device/radio/headset/wrist/clip/xenology /obj/outfit/job/scientist/anomalist name = "Anomalist" @@ -195,6 +195,12 @@ uniform = /obj/item/clothing/under/rank/scientist/xenobio + headset = /obj/item/device/radio/headset/headset_xenology + bowman = /obj/item/device/radio/headset/headset_xenology/alt + double_headset = /obj/item/device/radio/headset/alt/double/xenology + wrist_radio = /obj/item/device/radio/headset/wrist/xenology + clipon_radio = /obj/item/device/radio/headset/wrist/clip/xenology + /datum/job/xenobotanist title = "Xenobotanist" flag = XENOBOTANIST @@ -228,6 +234,12 @@ uniform = /obj/item/clothing/under/rank/scientist/botany + headset = /obj/item/device/radio/headset/headset_xenology + bowman = /obj/item/device/radio/headset/headset_xenology/alt + double_headset = /obj/item/device/radio/headset/alt/double/xenology + wrist_radio = /obj/item/device/radio/headset/wrist/xenology + clipon_radio = /obj/item/device/radio/headset/wrist/clip/xenology + /datum/job/intern_sci title = "Research Intern" flag = INTERN_SCI diff --git a/code/game/machinery/vending/engitech.dm b/code/game/machinery/vending/engitech.dm index c052db5fc27..6b2e6817a02 100644 --- a/code/game/machinery/vending/engitech.dm +++ b/code/game/machinery/vending/engitech.dm @@ -219,7 +219,7 @@ /obj/item/device/encryptionkey/headset_sec = 5, /obj/item/device/encryptionkey/headset_service = 5, /obj/item/device/encryptionkey/headset_warden = 5, - /obj/item/device/encryptionkey/headset_xenoarch = 5, + /obj/item/device/encryptionkey/headset_xenology = 5, ) /obj/item/device/vending_refill/encryption diff --git a/code/game/objects/items/devices/radio/encryptionkey.dm b/code/game/objects/items/devices/radio/encryptionkey.dm index 844c15434a1..deeee09f3ee 100644 --- a/code/game/objects/items/devices/radio/encryptionkey.dm +++ b/code/game/objects/items/devices/radio/encryptionkey.dm @@ -152,8 +152,8 @@ icon_state = "sci_cypherkey" channels = list(CHANNEL_SCIENCE = TRUE) -/obj/item/device/encryptionkey/headset_xenoarch - name = "xenoarchaeology radio encryption key" +/obj/item/device/encryptionkey/headset_xenology + name = "xenology radio encryption key" icon_state = "sci_cypherkey" channels = list(CHANNEL_SCIENCE = TRUE, CHANNEL_HAILING = TRUE) diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 556851c7380..58d92b5de9f 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -574,7 +574,7 @@ /obj/item/device/radio/headset/headset_sci name = "science radio headset" - desc = "A sciency headset. Like usual." + desc = "A science-y headset. Like usual." icon_state = "sci_headset" ks2type = /obj/item/device/encryptionkey/headset_sci @@ -601,40 +601,40 @@ item_state = "clip_sci" ks2type = /obj/item/device/encryptionkey/headset_sci -/obj/item/device/radio/headset/headset_xenoarch - name = "xenoarchaeology radio headset" - desc = "A sciency headset for Xenoarchaeologists." +/obj/item/device/radio/headset/headset_xenology + name = "xenologist radio headset" + desc = "A science-y headset for Xenologists." icon_state = "sci_headset" - ks2type = /obj/item/device/encryptionkey/headset_xenoarch + ks2type = /obj/item/device/encryptionkey/headset_xenology -/obj/item/device/radio/headset/headset_xenoarch/alt - name = "xenoarchaeology bowman headset" +/obj/item/device/radio/headset/headset_xenology/alt + name = "xenologist bowman headset" icon = 'icons/obj/item/device/radio/headset_alt.dmi' icon_state = "sci_headset_alt" -/obj/item/device/radio/headset/alt/double/xenoarch - name = "soundproof xenoarchaeology headset" +/obj/item/device/radio/headset/alt/double/xenology + name = "soundproof xenologist headset" icon_state = "earset_sci" item_state = "earset_sci" - ks2type = /obj/item/device/encryptionkey/headset_xenoarch + ks2type = /obj/item/device/encryptionkey/headset_xenology -/obj/item/device/radio/headset/wrist/xenoarch - name = "wristbound xenoarchaeology radio" +/obj/item/device/radio/headset/wrist/xenology + name = "wristbound xenologist radio" icon_state = "wristset_sci" item_state = "wristset_sci" - ks2type = /obj/item/device/encryptionkey/headset_xenoarch + ks2type = /obj/item/device/encryptionkey/headset_xenology -/obj/item/device/radio/headset/wrist/clip/xenoarch - name = "clip-on xenoarchaeology radio" +/obj/item/device/radio/headset/wrist/clip/xenology + name = "clip-on xenologist radio" icon_state = "clip_sci" item_state = "clip_sci" - ks2type = /obj/item/device/encryptionkey/headset_xenoarch + ks2type = /obj/item/device/encryptionkey/headset_xenology /obj/item/device/radio/headset/headset_anom name = "anomalist radio headset" - desc = "A sciency headset for Anomalists." + desc = "A science-y headset for Anomalists." icon_state = "sci_headset" - ks2type = /obj/item/device/encryptionkey/headset_xenoarch + ks2type = /obj/item/device/encryptionkey/headset_xenology /obj/item/device/radio/headset/headset_anom/alt name = "anomalist bowman headset" @@ -645,19 +645,19 @@ name = "soundproof anomalist headset" icon_state = "earset_sci" item_state = "earset_sci" - ks2type = /obj/item/device/encryptionkey/headset_xenoarch + ks2type = /obj/item/device/encryptionkey/headset_xenology /obj/item/device/radio/headset/wrist/anom name = "wristbound anomalist radio" icon_state = "wristset_sci" item_state = "wristset_sci" - ks2type = /obj/item/device/encryptionkey/headset_xenoarch + ks2type = /obj/item/device/encryptionkey/headset_xenology /obj/item/device/radio/headset/wrist/clip/anom name = "clip-on anomalist radio" icon_state = "clip_sci" item_state = "clip_sci" - ks2type = /obj/item/device/encryptionkey/headset_xenoarch + ks2type = /obj/item/device/encryptionkey/headset_xenology /obj/item/device/radio/headset/headset_rob name = "robotics radio headset" diff --git a/html/changelogs/Bat-xenohailing.yml b/html/changelogs/Bat-xenohailing.yml new file mode 100644 index 00000000000..6df10b7019c --- /dev/null +++ b/html/changelogs/Bat-xenohailing.yml @@ -0,0 +1,58 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# - (fixes bugs) +# wip +# - (work in progress) +# qol +# - (quality of life) +# soundadd +# - (adds a sound) +# sounddel +# - (removes a sound) +# rscadd +# - (adds a feature) +# rscdel +# - (removes a feature) +# imageadd +# - (adds an image or sprite) +# imagedel +# - (removes an image or sprite) +# spellcheck +# - (fixes spelling or grammar) +# experiment +# - (experimental change) +# balance +# - (balance changes) +# code_imp +# - (misc internal code change) +# refactor +# - (refactors code) +# config +# - (makes a change to the config files) +# admin +# - (makes changes to administrator tools) +# server +# - (miscellaneous changes to server) +################################# + +# Your name. +author: Batrachophrenoboocosmomachia + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, this gets changed to [] after reading. Just remove the brackets when you add new shit. +# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog. +changes: + - qol: "Unifies headsets of Xenoarchaeology, Xenobiology, and Xenobotany in 'Xenology Headsets' so they all share appropriate hailing access."