Merge pull request #16449 from AffectedArc07/client-data-loading

Refactors client data loading
This commit is contained in:
Fox McCloud
2021-09-20 15:16:55 -04:00
committed by GitHub
50 changed files with 2954 additions and 2823 deletions
+4 -3
View File
@@ -63,9 +63,10 @@
for(var/mob/thisplayer in players_to_spawn)
var/mob/living/carbon/human/H = new /mob/living/carbon/human(T)
H.name = random_name(pick(MALE,FEMALE))
var/datum/preferences/A = new() //Randomize appearance
A.real_name = H.name
A.copy_to(H)
var/datum/character_save/S = new //Randomize appearance
S.randomise()
S.real_name = H.name
S.copy_to(H)
H.dna.ready_dna(H)
H.mind_initialize()
@@ -124,9 +124,10 @@ GLOBAL_VAR_INIT(sent_syndicate_infiltration_team, 0)
var/syndicate_infiltrator_name = random_name(pick(MALE,FEMALE))
var/datum/preferences/A = new() //Randomize appearance
A.real_name = syndicate_infiltrator_name
A.copy_to(new_syndicate_infiltrator)
var/datum/character_save/S = new //Randomize appearance
S.randomise()
S.real_name = syndicate_infiltrator_name
S.copy_to(new_syndicate_infiltrator)
new_syndicate_infiltrator.dna.ready_dna(new_syndicate_infiltrator)
//Creates mind stuff.
+13 -11
View File
@@ -32,7 +32,7 @@
if(M.stat || !M.mind || M.mind.special_role || M.mind.offstation_role)
return FALSE
if(temp)
if((M.mind.assigned_role in temp.restricted_jobs) || (M.client.prefs.species in temp.protected_species))
if((M.mind.assigned_role in temp.restricted_jobs) || (M.client.prefs.active_character.species in temp.protected_species))
return FALSE
if(role) // Don't even bother evaluating if there's no role
if(player_old_enough_antag(M.client,role) && (role in M.client.prefs.be_special) && !M.client.skip_antag && (!jobban_isbanned(M, role)))
@@ -374,8 +374,8 @@
//First we spawn a dude.
var/mob/living/carbon/human/new_character = new(pick(GLOB.latejoin))//The mob being spawned.
var/datum/preferences/A = new(G_found.client)
A.copy_to(new_character)
// Then clone stuff over
G_found.client.prefs.active_character.copy_to(new_character)
new_character.dna.ready_dna(new_character)
new_character.key = G_found.key
@@ -388,13 +388,14 @@
var/syndicate_commando_rank = pick("Corporal", "Sergeant", "Staff Sergeant", "Sergeant 1st Class", "Master Sergeant", "Sergeant Major")
var/syndicate_commando_name = pick(GLOB.last_names)
var/datum/preferences/A = new()//Randomize appearance for the commando.
var/datum/character_save/S = new //Randomize appearance for the commando.
S.randomise()
if(syndicate_leader_selected)
A.real_name = "[syndicate_commando_leader_rank] [syndicate_commando_name]"
A.age = rand(35,45)
S.real_name = "[syndicate_commando_leader_rank] [syndicate_commando_name]"
S.age = rand(35, 45)
else
A.real_name = "[syndicate_commando_rank] [syndicate_commando_name]"
A.copy_to(new_syndicate_commando)
S.real_name = "[syndicate_commando_rank] [syndicate_commando_name]"
S.copy_to(new_syndicate_commando)
new_syndicate_commando.dna.ready_dna(new_syndicate_commando)//Creates DNA.
@@ -576,7 +577,8 @@
if(candidates.len)
var/teamOneMembers = 5
var/teamTwoMembers = 5
var/datum/preferences/A = new()
var/datum/character_save/S = new
S.randomise()
for(var/thing in GLOB.landmarks_list)
var/obj/effect/landmark/L = thing
if(L.name == "tdome1")
@@ -585,7 +587,7 @@
var/mob/living/carbon/human/newMember = new(L.loc)
A.copy_to(newMember)
S.copy_to(newMember)
newMember.dna.ready_dna(newMember)
@@ -607,7 +609,7 @@
var/mob/living/carbon/human/newMember = new(L.loc)
A.copy_to(newMember)
S.copy_to(newMember)
newMember.dna.ready_dna(newMember)
+3 -2
View File
@@ -11,8 +11,9 @@
continue
if(is_type_in_list(H.dna.species, incompatible_species))
H.set_species(/datum/species/human)
var/datum/preferences/A = new() // Randomize appearance
A.copy_to(H)
var/datum/character_save/S = new // Randomize appearance
S.randomise()
S.copy_to(H)
SSticker.mode.traitors += H.mind
H.mind.special_role = SPECIAL_ROLE_TRAITOR
+3 -2
View File
@@ -12,8 +12,9 @@
continue
if(is_type_in_list(H.dna.species, incompatible_species))
H.set_species(/datum/species/human)
var/datum/preferences/A = new() // Randomize appearance
A.copy_to(H)
var/datum/character_save/S = new // Randomize appearance
S.randomise()
S.copy_to(H)
for(var/obj/item/I in H)
if(istype(I, /obj/item/implant))
+5 -3
View File
@@ -396,10 +396,12 @@ Traitors and the like can also be revived with the previous role mostly intact.
new_character.age = record_found.fields["age"]
new_character.dna.blood_type = record_found.fields["blood_type"]
else
// We make a random character
new_character.change_gender(pick(MALE,FEMALE))
var/datum/preferences/A = new()
A.real_name = G_found.real_name
A.copy_to(new_character)
var/datum/character_save/S = new
S.randomise()
S.real_name = G_found.real_name
S.copy_to(new_character)
if(!new_character.real_name)
new_character.real_name = random_name(new_character.gender)
+6 -5
View File
@@ -138,13 +138,14 @@ GLOBAL_VAR_INIT(sent_strike_team, 0)
var/commando_leader_rank = pick("Lieutenant", "Captain", "Major")
var/commando_name = pick(GLOB.commando_names)
var/datum/preferences/A = new()//Randomize appearance for the commando.
var/datum/character_save/S = new //Randomize appearance for the commando.
S.randomise()
if(is_leader)
A.age = rand(35,45)
A.real_name = "[commando_leader_rank] [commando_name]"
S.age = rand(35, 45)
S.real_name = "[commando_leader_rank] [commando_name]"
else
A.real_name = "[commando_name]"
A.copy_to(new_commando)
S.real_name = "[commando_name]"
S.copy_to(new_commando)
new_commando.dna.ready_dna(new_commando)//Creates DNA.
@@ -104,13 +104,14 @@ GLOBAL_VAR_INIT(sent_syndicate_strike_team, 0)
var/syndicate_commando_rank = pick("Corporal", "Sergeant", "Staff Sergeant", "Sergeant 1st Class", "Master Sergeant", "Sergeant Major")
var/syndicate_commando_name = pick(GLOB.last_names)
var/datum/preferences/A = new()//Randomize appearance for the commando.
var/datum/character_save/S = new //Randomize appearance for the commando.
S.randomise()
if(is_leader)
A.age = rand(35,45)
A.real_name = "[syndicate_commando_leader_rank] [syndicate_commando_name]"
S.age = rand(35, 45)
S.real_name = "[syndicate_commando_leader_rank] [syndicate_commando_name]"
else
A.real_name = "[syndicate_commando_rank] [syndicate_commando_name]"
A.copy_to(new_syndicate_commando)
S.real_name = "[syndicate_commando_rank] [syndicate_commando_name]"
S.copy_to(new_syndicate_commando)
new_syndicate_commando.dna.ready_dna(new_syndicate_commando)//Creates DNA.