diff --git a/.github/workflows/byond.yml b/.github/workflows/byond.yml index 84e833d4c42..c6768537d0e 100644 --- a/.github/workflows/byond.yml +++ b/.github/workflows/byond.yml @@ -12,7 +12,7 @@ on: env: MACRO_COUNT: 0 GENDER_COUNT: 6 - TO_WORLD_COUNT: 201 + TO_WORLD_COUNT: 202 TGM_CHECK: "//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE" jobs: diff --git a/code/controllers/subsystems/ticker.dm b/code/controllers/subsystems/ticker.dm index 0aaf8bb4da9..883f7c85b75 100644 --- a/code/controllers/subsystems/ticker.dm +++ b/code/controllers/subsystems/ticker.dm @@ -438,6 +438,23 @@ var/datum/controller/subsystem/ticker/SSticker to_world("Welcome to the pre-game lobby!") to_world("Please, setup your character and select ready. Game will start in [pregame_timeleft] seconds.") + + // Compute and, if available, print the ghost roles in the pre-round lobby. Begone, people who do not ready up to see what ghost roles will be available! + var/list/available_ghostroles = list() + + for(var/s in SSghostroles.spawners) + var/datum/ghostspawner/G = SSghostroles.spawners[s] + if(G.enabled && !("Antagonist" in G.tags) && !(G.loc_type == GS_LOC_ATOM && !length(G.spawn_atoms))) + available_ghostroles |= G.name + + // Special case, to list the Merchant in case it is available at roundstart + if(SSjobs.type_occupations[/datum/job/merchant].total_positions) + available_ghostroles |= SSjobs.type_occupations[/datum/job/merchant].title + + if(length(available_ghostroles)) + to_world("

" + SPAN_BOLD(SPAN_NOTICE("Ghost roles available for this round:")) + "[english_list(available_ghostroles)].
" + \ + SPAN_INFO("Please note that the actual availability depends on additional things, including your user (eg. job bans)")) + callHook("pregame_start") /datum/controller/subsystem/ticker/proc/setup() diff --git a/html/changelogs/fluffyghost-printrolesatroundstart.yml b/html/changelogs/fluffyghost-printrolesatroundstart.yml new file mode 100644 index 00000000000..969a2c9043f --- /dev/null +++ b/html/changelogs/fluffyghost-printrolesatroundstart.yml @@ -0,0 +1,41 @@ +################################ +# 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 +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: FluffyGhost + +# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Print a list of (likely) available ghost roles at roundstart."