Files
Yogstation/code/__HELPERS/global_lists.dm
Redmoogle 9c046aa532 Ports IPCs from beestation (#14582)
* Switching to another computer

* half way there

* Should compile now but will be missing icons

* )

* ident

* Add 1/3 DMIs

* Fix taste

* Apply changes

* Sprites n stuff and revive delay

* add organ sprites

* More IPC Screens and Antennas

* L + Ring + Fix

* 2 New Eye Screens

* Fixes

* Fixes

* :) + :( + Reorginization

* Hand Sprites (Needs Spriters Work)

* Make the hands look much less retarted

* Ports Morpheus Cyberkinetics Chassis from Shiptest

https://github.com/shiptest-ss13/Shiptest/pull/1181

* remove debug print

* A bunch of fixes

* get out of there code

* Its not an upgrader cyberheart

* Replaces some color screens with Greyscale variants

* Update code/modules/mob/living/carbon/human/species_types/IPC.dm

Co-authored-by: Anvilman6 <54463777+Anvilman6@users.noreply.github.com>

* Jesus christ burn hits hard

* makes the head decapitable for IPCs

* Retard managed to commit a map

* NO_DEFIB trait and makes emotes work

* revive code

* Update IPC.dm

* Update objective.dm

* IPC Revival Board + Hair Fix

* Gives attach limb a return for limb reattachment

* well fuck you too then

* IPC Organs no longer decay

* Hopefully makes IPC revival work less buggily

* Custom hud icon

* Makes IPCs genderless

* fixes

* Fix starving popup

* Crit fixes and adjustments

* Adjustments & Cleanups

* Update defib.dm

* merge icons

* Update negative.dm

* should fix the rest of quirks + noblood

* FUCK

* Fixes organ duplication

* Removes hemophiliac for noblood people

* no defibbing ipcs fuck you

* moment moment

Co-authored-by: Anvilman6 <54463777+Anvilman6@users.noreply.github.com>
Co-authored-by: Jamie D <993128+JamieD1@users.noreply.github.com>
2022-08-05 13:13:10 +01:00

90 lines
4.6 KiB
Plaintext

//////////////////////////
/////Initial Building/////
//////////////////////////
/proc/make_datum_references_lists()
//hair
init_sprite_accessory_subtypes(/datum/sprite_accessory/hair, GLOB.hair_styles_list, GLOB.hair_styles_male_list, GLOB.hair_styles_female_list)
//facial hair
init_sprite_accessory_subtypes(/datum/sprite_accessory/facial_hair, GLOB.facial_hair_styles_list, GLOB.facial_hair_styles_male_list, GLOB.facial_hair_styles_female_list)
//underwear
init_sprite_accessory_subtypes(/datum/sprite_accessory/underwear, GLOB.underwear_list, GLOB.underwear_m, GLOB.underwear_f)
//undershirt
init_sprite_accessory_subtypes(/datum/sprite_accessory/undershirt, GLOB.undershirt_list, GLOB.undershirt_m, GLOB.undershirt_f)
//socks
init_sprite_accessory_subtypes(/datum/sprite_accessory/socks, GLOB.socks_list)
//bodypart accessories (blizzard intensifies)
init_sprite_accessory_subtypes(/datum/sprite_accessory/body_markings, GLOB.body_markings_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/lizard, GLOB.tails_list_lizard)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails_animated/lizard, GLOB.animated_tails_list_lizard)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/human, GLOB.tails_list_human)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails_animated/human, GLOB.animated_tails_list_human)
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/polysmorph, GLOB.tails_list_polysmorph)
init_sprite_accessory_subtypes(/datum/sprite_accessory/snouts, GLOB.snouts_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/horns,GLOB.horns_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/ears, GLOB.ears_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/wings, GLOB.wings_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/wings_open, GLOB.wings_open_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/frills, GLOB.frills_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/spines, GLOB.spines_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/spines_animated, GLOB.animated_spines_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/legs, GLOB.legs_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/wings, GLOB.r_wings_list,roundstart = TRUE)
init_sprite_accessory_subtypes(/datum/sprite_accessory/caps, GLOB.caps_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/moth_wings, GLOB.moth_wings_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/moth_wingsopen, GLOB.moth_wingsopen_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/teeth, GLOB.teeth_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/dome, GLOB.dome_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/dorsal_tubes, GLOB.dorsal_tubes_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/ethereal_mark, GLOB.ethereal_mark_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/pod_hair, GLOB.pod_hair_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/pod_flower, GLOB.pod_flower_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_screens, GLOB.ipc_screens_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_antennas, GLOB.ipc_antennas_list)
init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_chassis, GLOB.ipc_chassis_list)
//Species
for(var/spath in subtypesof(/datum/species))
var/datum/species/S = new spath()
GLOB.species_list[S.id] = spath
//Surgeries
for(var/path in subtypesof(/datum/surgery))
GLOB.surgeries_list += new path()
// Hair Gradients - Initialise all /datum/sprite_accessory/hair_gradient into an list indexed by gradient-style name
for(var/path in subtypesof(/datum/sprite_accessory/hair_gradient))
var/datum/sprite_accessory/hair_gradient/H = new path()
GLOB.hair_gradients_list[H.name] = H
GLOB.emote_list = init_emote_list()
//Skillcapes
for(var/path in subtypesof(/datum/skillcape))
var/datum/skillcape/A = new path()
if(!A.id)
continue
GLOB.skillcapes[A.id] = A
init_subtypes(/datum/crafting_recipe, GLOB.crafting_recipes)
//creates every subtype of prototype (excluding prototype) and adds it to list L.
//if no list/L is provided, one is created.
/proc/init_subtypes(prototype, list/L)
if(!istype(L))
L = list()
for(var/path in subtypesof(prototype))
L += new path()
return L
//returns a list of paths to every subtype of prototype (excluding prototype)
//if no list/L is provided, one is created.
/proc/init_paths(prototype, list/L)
if(!istype(L))
L = list()
for(var/path in subtypesof(prototype))
L+= path
return L