From 090aa3dc3bfb6b173ff3b132e3ad5b2d6dcc5249 Mon Sep 17 00:00:00 2001 From: Casey Date: Thu, 7 Jul 2022 20:14:43 -0400 Subject: [PATCH] Merge pull request #13289 from Heroman3003/tgui-jobstart-fixes Fixes tgui issues and also roundstart job slots getting occupied by nothing when spawning fails --- code/controllers/subsystems/ticker.dm | 13 +++++++++---- code/modules/mob/new_player/new_player.dm | 21 ++++++++++++++------- code/modules/tgui_input/alert.dm | 4 ++-- code/modules/tgui_input/list.dm | 4 ++-- code/modules/tgui_input/number.dm | 4 ++-- code/modules/tgui_input/text.dm | 4 ++-- 6 files changed, 31 insertions(+), 19 deletions(-) diff --git a/code/controllers/subsystems/ticker.dm b/code/controllers/subsystems/ticker.dm index 20a9ffeaa4..ea8873e717 100644 --- a/code/controllers/subsystems/ticker.dm +++ b/code/controllers/subsystems/ticker.dm @@ -50,9 +50,9 @@ var/global/datum/controller/subsystem/ticker/ticker pregame_timeleft = config.pregame_time send2mainirc("Server lobby is loaded and open at byond://[config.serverurl ? config.serverurl : (config.server ? config.server : "[world.address]:[world.port]")]") SSwebhooks.send( - WEBHOOK_ROUNDPREP, + WEBHOOK_ROUNDPREP, list( - "map" = station_name(), + "map" = station_name(), "url" = get_world_url() ) ) @@ -397,14 +397,19 @@ var/global/datum/controller/subsystem/ticker/ticker if(player && player.ready && player.mind?.assigned_role) var/datum/job/J = SSjob.get_job(player.mind.assigned_role) + // Ask their new_player mob to spawn them + if(!player.spawn_checks_vr(player.mind.assigned_role)) + var/datum/job/job_datum = job_master.GetJob(J.title) + job_datum.current_positions-- + player.mind.assigned_role = null + continue //VOREStation Add + // Snowflakey AI treatment if(J?.mob_type & JOB_SILICON_AI) player.close_spawn_windows() player.AIize(move = TRUE) continue - // Ask their new_player mob to spawn them - if(!player.spawn_checks_vr(player.mind.assigned_role)) continue //VOREStation Add var/mob/living/carbon/human/new_char = player.create_character() // Created their playable character, delete their /mob/new_player diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index e0bbae95b0..c152c80b12 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -389,14 +389,21 @@ /mob/new_player/proc/IsJobAvailable(rank) var/datum/job/job = job_master.GetJob(rank) - if(!job) return 0 - if(!job.is_position_available()) return 0 - if(jobban_isbanned(src,rank)) return 0 - if(!job.player_old_enough(src.client)) return 0 + if(!job) + return 0 + if(!job.is_position_available()) + return 0 + if(jobban_isbanned(src,rank)) + return 0 + if(!job.player_old_enough(src.client)) + return 0 //VOREStation Add - if(!job.player_has_enough_playtime(src.client)) return 0 - if(!is_job_whitelisted(src,rank)) return 0 - if(!job.player_has_enough_pto(src.client)) return 0 + if(!job.player_has_enough_playtime(src.client)) + return 0 + if(!is_job_whitelisted(src,rank)) + return 0 + if(!job.player_has_enough_pto(src.client)) + return 0 //VOREStation Add End return 1 diff --git a/code/modules/tgui_input/alert.dm b/code/modules/tgui_input/alert.dm index 7c29994a02..9b658090b9 100644 --- a/code/modules/tgui_input/alert.dm +++ b/code/modules/tgui_input/alert.dm @@ -109,8 +109,8 @@ data["autofocus"] = autofocus data["buttons"] = buttons data["message"] = message - data["large_buttons"] = usr.client.prefs.tgui_large_buttons - data["swapped_buttons"] = !usr.client.prefs.tgui_swapped_buttons + data["large_buttons"] = user.client.prefs.tgui_large_buttons + data["swapped_buttons"] = !user.client.prefs.tgui_swapped_buttons data["title"] = title return data diff --git a/code/modules/tgui_input/list.dm b/code/modules/tgui_input/list.dm index e45b62d74c..c079f0be74 100644 --- a/code/modules/tgui_input/list.dm +++ b/code/modules/tgui_input/list.dm @@ -121,9 +121,9 @@ var/list/data = list() data["init_value"] = default || items[1] data["items"] = items - data["large_buttons"] = usr.client.prefs.tgui_large_buttons + data["large_buttons"] = user.client.prefs.tgui_large_buttons data["message"] = message - data["swapped_buttons"] = !usr.client.prefs.tgui_swapped_buttons + data["swapped_buttons"] = !user.client.prefs.tgui_swapped_buttons data["title"] = title return data diff --git a/code/modules/tgui_input/number.dm b/code/modules/tgui_input/number.dm index 15b10ab313..e569a440ed 100644 --- a/code/modules/tgui_input/number.dm +++ b/code/modules/tgui_input/number.dm @@ -113,11 +113,11 @@ /datum/tgui_input_number/tgui_static_data(mob/user) var/list/data = list() data["init_value"] = default // Default is a reserved keyword - data["large_buttons"] = usr.client.prefs.tgui_large_buttons + data["large_buttons"] = user.client.prefs.tgui_large_buttons data["max_value"] = max_value data["message"] = message data["min_value"] = min_value - data["swapped_buttons"] = !usr.client.prefs.tgui_swapped_buttons + data["swapped_buttons"] = !user.client.prefs.tgui_swapped_buttons data["title"] = title return data diff --git a/code/modules/tgui_input/text.dm b/code/modules/tgui_input/text.dm index 4273d3dfa6..f115fdde63 100644 --- a/code/modules/tgui_input/text.dm +++ b/code/modules/tgui_input/text.dm @@ -116,12 +116,12 @@ /datum/tgui_input_text/tgui_static_data(mob/user) var/list/data = list() - data["large_buttons"] = usr.client.prefs.tgui_large_buttons + data["large_buttons"] = user.client.prefs.tgui_large_buttons data["max_length"] = max_length data["message"] = message data["multiline"] = multiline data["placeholder"] = default // Default is a reserved keyword - data["swapped_buttons"] = !usr.client.prefs.tgui_swapped_buttons + data["swapped_buttons"] = !user.client.prefs.tgui_swapped_buttons data["title"] = title data["prevent_enter"] = prevent_enter return data