From 1456706760b8457d2319b392426c291c93dcb1ec Mon Sep 17 00:00:00 2001 From: ShadowLarkens Date: Sun, 1 Jun 2025 12:18:26 -0700 Subject: [PATCH] Fix new players runtiming in pai (#17771) --- .../client/preference_setup/general/07_antagonism.dm | 5 +++++ code/modules/client/preferences/types/game/sound.dm | 2 ++ .../PreferencesMenu/bay_prefs/general/SubtabSettings.tsx | 8 ++++---- .../interfaces/PreferencesMenu/bay_prefs/general/data.ts | 8 ++++---- .../PreferencesMenu/bay_prefs/occupation/data.ts | 2 +- 5 files changed, 16 insertions(+), 9 deletions(-) diff --git a/code/modules/client/preference_setup/general/07_antagonism.dm b/code/modules/client/preference_setup/general/07_antagonism.dm index 830650db7a1..7f34eaaba33 100644 --- a/code/modules/client/preference_setup/general/07_antagonism.dm +++ b/code/modules/client/preference_setup/general/07_antagonism.dm @@ -4,6 +4,10 @@ var/datum/paiCandidate/candidate +/datum/category_item/player_setup_item/general/basic_antagonism/New() + . = ..() + candidate = new() + /datum/category_item/player_setup_item/general/basic_antagonism/load_character(list/save_data) pref.exploit_record = save_data["exploit_record"] pref.antag_faction = save_data["antag_faction"] @@ -17,6 +21,7 @@ /datum/category_item/player_setup_item/general/basic_antagonism/load_preferences(datum/json_savefile/savefile) if(!candidate) candidate = new() + var/preference_mob = preference_mob() if(!preference_mob)// No preference mob - this happens when we're called from client/New() before it calls ..() (via datum/preferences/New()) spawn() diff --git a/code/modules/client/preferences/types/game/sound.dm b/code/modules/client/preferences/types/game/sound.dm index 09e87cecf92..5c8b25b2286 100644 --- a/code/modules/client/preferences/types/game/sound.dm +++ b/code/modules/client/preferences/types/game/sound.dm @@ -175,6 +175,8 @@ /datum/preference/volume_channels/is_valid(value) return islist(value) +/datum/preference/volume_channels/create_default_value() + return list() /mob/proc/get_preference_volume_channel(volume_channel) if(!client) diff --git a/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/general/SubtabSettings.tsx b/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/general/SubtabSettings.tsx index 72111d15eee..b1d724eb1b0 100644 --- a/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/general/SubtabSettings.tsx +++ b/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/general/SubtabSettings.tsx @@ -401,22 +401,22 @@ export const SubtabSettings = (props: { diff --git a/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/general/data.ts b/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/general/data.ts index ee93f7bd6f1..41c80976fc6 100644 --- a/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/general/data.ts +++ b/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/general/data.ts @@ -236,10 +236,10 @@ export type AntagonismData = { uplink_type: string; record_banned: BooleanLike; exploitable_record?: string; - pai_name: string; - pai_desc: string; - pai_role: string; - pai_comments: string; + pai_name?: string; + pai_desc?: string; + pai_role?: string; + pai_comments?: string; syndicate_ban: BooleanLike; special_roles: SpecialRole[]; }; diff --git a/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/occupation/data.ts b/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/occupation/data.ts index d793111860a..bfe5dbbbc9f 100644 --- a/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/occupation/data.ts +++ b/tgui/packages/tgui/interfaces/PreferencesMenu/bay_prefs/occupation/data.ts @@ -35,7 +35,7 @@ export type Job = { export type OccupationData = { alternate_option: AlternateOption; - jobs: Job[]; + jobs: Record; }; export type OccupationDataStatic = {};