[MIRROR] Nuclear operatives can now be other species. Pref toggle to always be human as operative [MDB IGNORE] (#23433)

* Nuclear operatives can now be other species. Pref toggle to always be human as operative

* remove skyrat edit

---------

Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
This commit is contained in:
SkyratBot
2023-08-31 23:27:59 +02:00
committed by GitHub
parent a868832007
commit 1edbfcd0f0
18 changed files with 135 additions and 12 deletions
@@ -198,6 +198,9 @@ GLOBAL_LIST_EMPTY(features_by_species)
**/
var/properly_gained = FALSE
///A list containing outfits that will be overridden in the species_equip_outfit proc. [Key = Typepath passed in] [Value = Typepath of outfit you want to equip for this specific species instead].
var/list/outfit_override_registry = list()
///////////
// PROCS //
///////////
@@ -405,6 +405,22 @@
return O.equip(src, visualsOnly)
///A version of equipOutfit that overrides passed in outfits with their entry on the species' outfit override registry
/mob/living/carbon/human/proc/equip_species_outfit(outfit, visualsOnly = FALSE)
var/datum/outfit/outfit_to_equip
var/override_outfit_path = dna?.species.outfit_override_registry[outfit]
if(override_outfit_path)
outfit_to_equip = new override_outfit_path
else
outfit_to_equip = new outfit
if(isnull(outfit_to_equip))
return FALSE
return outfit_to_equip.equip(src, visualsOnly)
//delete all equipment without dropping anything
/mob/living/carbon/human/proc/delete_equipment()
for(var/slot in get_all_worn_items())//order matters, dependant slots go first
@@ -51,6 +51,13 @@
ass_image = 'icons/ass/assplasma.png'
outfit_override_registry = list(
/datum/outfit/syndicate = /datum/outfit/syndicate/plasmaman,
/datum/outfit/syndicate/full = /datum/outfit/syndicate/full/plasmaman,
/datum/outfit/syndicate/leader = /datum/outfit/syndicate/leader/plasmaman,
/datum/outfit/syndicate/reinforcement = /datum/outfit/syndicate/reinforcement/plasmaman,
)
/// If the bones themselves are burning clothes won't help you much
var/internal_fire = FALSE