Quirk removal admin log + allow hermit to load custom character

This commit is contained in:
ariaworld
2024-05-02 16:37:45 +02:00
parent dbd4505372
commit 8efbd2dd26
3 changed files with 6 additions and 0 deletions
@@ -36,6 +36,8 @@ PROCESSING_SUBSYSTEM_DEF(quirks)
var/list/cut
if(job?.blacklisted_quirks)
cut = filter_quirks(my_quirks, job.blacklisted_quirks)
if(LAZYLEN(cut))
log_admin("Quirks cut from [key_name(user)] due to job blacklist: [english_list(cut)]")
for(var/V in my_quirks)
if(V in quirks)
var/datum/quirk/Q = quirks[V]
@@ -54,6 +56,8 @@ PROCESSING_SUBSYSTEM_DEF(quirks)
var/datum/species/S = H.dna.species
if(S.remove_blacklisted_quirks(H))
to_chat(to_chat_target || user, "<span class='boldwarning'>Some quirks have been cut from your character due to them conflicting with your species: [english_list(S.removed_quirks)]</span>")
if(LAZYLEN(S.removed_quirks))
log_admin("Quirks cut from [key_name(user)] due to species blacklist: [english_list(S.removed_quirks)]")
/datum/controller/subsystem/processing/quirks/proc/quirk_path_by_name(name)
return quirks[name]
@@ -4,6 +4,7 @@
var/list/cut_because_balance = check_and_cut_balance(my_quirks)
if(LAZYLEN(cut_because_balance))
to_chat(to_chat_target || user, span_boldwarning("Some quirks have been cut from your character due to invalid balance: [english_list(cut_because_balance)]"))
log_admin("Quirks cut from [key_name(user)] due to balance: [english_list(cut_because_balance)]")
/// Code to automatically reduce positive quirks until balance is even.
/datum/controller/subsystem/processing/quirks/proc/check_and_cut_balance(list/our_quirks)
@@ -41,6 +41,7 @@
short_desc = "You are a hermit abandoned by fate."
flavour_text = "You've survived weeks in this hellish place. Maybe you want to live here with ash tribe or return to civilisation. \
Only you know how you got to this planetoid, whether this place in which you woke up was one of your shelters, or you just stumbled upon it."
can_load_appearance = TRUE
/obj/effect/mob_spawn/human/wandering_hermit/Destroy()
var/obj/structure/fluff/empty_sleeper/S = new(drop_location())