[MIRROR] Temporal Scarring is now per-character-slot, changelings now fake scars when disguising (#1274)

* Temporal Scarring is now per-character-slot, changelings now fake scars when disguising (#54311)

* Temporal Scarring is now per-character-slot, changelings now fake scars when disguising

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
This commit is contained in:
SkyratBot
2020-10-12 23:26:04 +02:00
committed by GitHub
co-authored by Ryll Ryll
parent 9803236f70
commit b576900a8b
9 changed files with 75 additions and 34 deletions
@@ -295,6 +295,10 @@
prof.skillchips = H.clone_skillchip_list(TRUE)
for(var/i in H.all_scars)
var/datum/scar/iter_scar = i
LAZYADD(prof.stored_scars, iter_scar.format())
var/list/slots = list("head", "wear_mask", "back", "wear_suit", "w_uniform", "shoes", "belt", "gloves", "glasses", "ears", "wear_id", "s_store")
for(var/slot in slots)
if(slot in H.vars)
@@ -529,9 +533,12 @@
var/socks
var/list/skillchips = list()
/// What scars the target had when we copied them, in string form (like persistent scars)
var/list/stored_scars
/datum/changelingprofile/Destroy()
qdel(dna)
LAZYCLEARLIST(stored_scars)
. = ..()
/datum/changelingprofile/proc/copy_profile(datum/changelingprofile/newprofile)
@@ -552,6 +559,7 @@
newprofile.worn_icon_list = worn_icon_list.Copy()
newprofile.worn_icon_state_list = worn_icon_state_list.Copy()
newprofile.skillchips = skillchips.Copy()
newprofile.stored_scars = stored_scars.Copy()
/datum/antagonist/changeling/xenobio
name = "Xenobio Changeling"
@@ -166,6 +166,10 @@
for(var/slot in GLOB.slots)
if(istype(user.vars[slot], GLOB.slot2type[slot]))
qdel(user.vars[slot])
for(var/i in user.all_scars)
var/datum/scar/iter_scar = i
if(iter_scar.fake)
qdel(iter_scar)
var/datum/changelingprofile/prof = get_dna(chosen_name)
return prof