From 8ee04f3b400105f9dedaad057ae638f0df15d592 Mon Sep 17 00:00:00 2001 From: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com> Date: Thu, 5 Aug 2021 23:01:04 +0100 Subject: [PATCH] Null character hotfix --- code/modules/client/preference/character.dm | 5 +++++ code/modules/client/preference/preferences.dm | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/code/modules/client/preference/character.dm b/code/modules/client/preference/character.dm index 7ab967ed7e0..a55b0cb0ac7 100644 --- a/code/modules/client/preference/character.dm +++ b/code/modules/client/preference/character.dm @@ -95,6 +95,11 @@ /// Character slot number, used for saves and stuff. var/slot_number = 0 +// Fuckery to prevent null characters +/datum/character_save/New() + randomise() + real_name = random_name(gender, species) + /datum/character_save/proc/save(client/C) var/organlist var/rlimblist diff --git a/code/modules/client/preference/preferences.dm b/code/modules/client/preference/preferences.dm index befa6f05c8e..dced83d93db 100644 --- a/code/modules/client/preference/preferences.dm +++ b/code/modules/client/preference/preferences.dm @@ -494,7 +494,10 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts for(var/i in 1 to length(character_saves)) var/datum/character_save/CS = character_saves[i] - name = CS.real_name || "Character [i]" + if(CS.from_db) + name = CS.real_name + else + name = "Character [i]" if(i == default_slot) name = "[name]" dat += "[name]
"